From 948b95f3b666045e14ff7ed9a2ea10cfa272ed94 Mon Sep 17 00:00:00 2001 From: chris erway Date: Sat, 18 Dec 2010 02:18:35 -0500 Subject: [PATCH 01/31] converting to use boost::shared_ptr (as Ptr), ran query-replace-regex '\(\(const \)?[A-Za-z:]+\)\( \)?\*\( \)?\([^/]\)' with 'Ptr<\1> \5' --- src/Arbiter.cpp | 36 ++++---- src/Arbiter.h | 26 +++--- src/Bank.h | 8 +- src/BankParameters.cpp | 8 +- src/BankParameters.h | 16 ++-- src/BankTool.cpp | 4 +- src/BankTool.h | 16 ++-- src/BankWithdrawTool.cpp | 8 +- src/BankWithdrawTool.h | 6 +- src/BuyMessage.cpp | 2 +- src/BuyMessage.h | 18 ++-- src/Buyer.cpp | 18 ++-- src/Buyer.h | 22 ++--- src/CLBlindIssuer.cpp | 8 +- src/CLBlindIssuer.h | 10 +- src/CLBlindRecipient.cpp | 6 +- src/CLBlindRecipient.h | 8 +- src/CLSignatureProver.cpp | 8 +- src/CLSignatureProver.h | 12 +-- src/CLSignatureVerifier.cpp | 8 +- src/CLSignatureVerifier.h | 8 +- src/Ciphertext.cpp | 2 +- src/Ciphertext.h | 18 ++-- src/Coin.cpp | 14 +-- src/Coin.h | 12 +-- src/FEContract.cpp | 28 +++--- src/FEContract.h | 16 ++-- src/FEInitiator.cpp | 48 +++++----- src/FEInitiator.h | 58 ++++++------ src/FEResolutionMessage.h | 10 +- src/FEResponder.cpp | 46 +++++----- src/FEResponder.h | 60 ++++++------ src/FESetupMessage.cpp | 2 +- src/FESetupMessage.h | 14 +-- src/Group.h | 2 +- src/Hash.cpp | 8 +- src/Hash.h | 8 +- src/MerkleProof.cpp | 14 +-- src/MerkleProof.h | 24 ++--- src/MerkleProver.cpp | 4 +- src/MerkleProver.h | 6 +- src/ProgramMaker.h | 2 +- src/Seller.cpp | 46 +++++----- src/Seller.h | 46 +++++----- src/Serialize.h | 2 + src/Signature.cpp | 6 +- src/Signature.h | 20 ++-- src/Test.cpp | 162 ++++++++++++++++----------------- src/UserTool.cpp | 4 +- src/UserTool.h | 46 +++++----- src/UserWithdrawTool.cpp | 20 ++-- src/UserWithdrawTool.h | 14 +-- src/VEDecrypter.cpp | 16 ++-- src/VEDecrypter.h | 18 ++-- src/VEProver.cpp | 8 +- src/VEProver.h | 6 +- src/VEVerifier.cpp | 8 +- src/VEVerifier.h | 6 +- src/Wallet.cpp | 17 ++-- src/Wallet.h | 11 +-- src/ZKP/ASTNode.cpp | 26 +++--- src/ZKP/BindGroupValues.cpp | 2 +- src/ZKP/ComputationVisitor.cpp | 2 +- src/ZKP/Environment.cpp | 2 +- src/ZKP/Environment.h | 4 +- src/ZKP/Interpreter.cpp | 2 +- src/ZKP/InterpreterProver.cpp | 4 +- src/ZKP/ZKPTest.cpp | 16 ++-- 68 files changed, 581 insertions(+), 585 deletions(-) diff --git a/src/Arbiter.cpp b/src/Arbiter.cpp index 03b050c..3c69a34 100644 --- a/src/Arbiter.cpp +++ b/src/Arbiter.cpp @@ -22,11 +22,11 @@ vector Arbiter::sellerResolveI(const ResolutionPair &keyMessagePair){ // first, store the keys keys = keyMessagePair.first; // now, unwrap and check the buyMessage, then store everything - BuyMessage* buyMessage = keyMessagePair.second; + Ptr buyMessage = keyMessagePair.second; Coin coinPrime = buyMessage->getCoinPrime(); - VECiphertext escrow = *buyMessage->getEscrow(); + Ptr escrow = buyMessage->getEscrow(); // want to store the contract as well (for stage II) - contract = *buyMessage->getContract(); + contract = buyMessage->getContract(); // check the timeout to make sure it hasn't passed if(contract.checkTimeout(timeoutTolerance)) { endorsement = verifiableDecrypter->decrypt(escrow.getCiphertext(), @@ -54,7 +54,7 @@ vector Arbiter::sellerResolveI(const ResolutionPair &keyMessagePair){ } } -vector Arbiter::sellerResolveII(const MerkleProof* proof){ +vector Arbiter::sellerResolveII(Ptr proof){ // check the proof against the keys provided in Stage I if(verifyKeys(proof)){ if(updateDB){ @@ -71,11 +71,11 @@ vector Arbiter::sellerResolveII(const MerkleProof* proof){ } } -bool Arbiter::verifyKeys(const MerkleProof* proof) { +bool Arbiter::verifyKeys(Ptr proof) { // the arbiter needs to check the encrypted blocks decrypt correctly bool validDecryption = true; - vector cTextBlocks = proof->getCTextBlocks(); - vector decryptedBlocks(cTextBlocks.size()); + vector > cTextBlocks = proof->getCTextBlocks(); + vector > decryptedBlocks(cTextBlocks.size()); vector hashedBlocks(cTextBlocks.size()); unsigned i = 0; // it checks the decryption in the following three steps: @@ -104,10 +104,10 @@ bool Arbiter::verifyKeys(const MerkleProof* proof) { } } -bool Arbiter::verifyDecryption(const MerkleProof* proof){ +bool Arbiter::verifyDecryption(Ptr proof){ bool validDecryption = true; - vector cTextBlocks = proof->getCTextBlocks(); - vector decryptedBlocks(cTextBlocks.size()); + vector > cTextBlocks = proof->getCTextBlocks(); + vector > decryptedBlocks(cTextBlocks.size()); vector hashedBlocks(cTextBlocks.size()); unsigned i = 0; do{ @@ -123,15 +123,15 @@ bool Arbiter::verifyDecryption(const MerkleProof* proof){ return (validDecryption && ctVerifier->verifyProofs(ctProof)); } -vector Arbiter::responderResolveI(const FEResolutionMessage* req) { +vector Arbiter::responderResolveI(Ptr req) { return responderResolveI(req->getKeys(), req->getMessage(), req->getSetupMessage()); } // this method sets up the resolve for a failed barter vector Arbiter::responderResolveI(const vector &ks, - const FEMessage* msg, - const FESetupMessage* setup) { + Ptr msg, + Ptr setup) { // stores keys and message keys = ks; message = msg; @@ -139,12 +139,12 @@ vector Arbiter::responderResolveI(const vector &ks, // this is the regular encryption vector sigEscrow = message->getEscrow(); // this is the verifiable encryption - VECiphertext vEscrow = *setup->getEscrow(); + VECiphertext vEscrow = setup->getEscrow(); contract = message->getContract(); - const Signature::Key* sigPK = setup->getPK(); + Ptr sigPK = setup->getPK(); // verify that the signature given in BarterMessage is correct - bool sigCorrect = Signature::verify(*sigPK, message->getSignature(), + bool sigCorrect = Signature::verify(sigPK, message->getSignature(), CommonFunctions::vecToString(sigEscrow), hashAlg); if (!sigCorrect){ @@ -183,7 +183,7 @@ vector Arbiter::responderResolveI(const vector &ks, } } -vector Arbiter::responderResolveII(const MerkleProof* proof){ +vector Arbiter::responderResolveII(Ptr proof){ if(verifyKeys(proof)){ // decrypt the signature escrow vector m = message->getEscrow(); @@ -202,7 +202,7 @@ vector Arbiter::responderResolveII(const MerkleProof* proof){ } } -vector Arbiter::responderResolveIII(const MerkleProof* proof){ +vector Arbiter::responderResolveIII(Ptr proof){ if (!verifyDecryption(proof)){ return endorsement; } else { diff --git a/src/Arbiter.h b/src/Arbiter.h index 87ebd89..8933dc5 100644 --- a/src/Arbiter.h +++ b/src/Arbiter.h @@ -10,11 +10,11 @@ /*! \brief This class is for resolving any disputes that may arise in the * course of a fair exchange protocol */ -typedef pair, BuyMessage*> ResolutionPair; +typedef pair, Ptr > ResolutionPair; class Arbiter { public: - Arbiter(const VEDecrypter* vD, const VEDecrypter* rD, + Arbiter(Ptr vD, Ptr rD, const hashalg_t &h, int t) : verifiableDecrypter(vD), regularDecrypter(rD), hashAlg(h), timeoutTolerance(t) {} @@ -32,23 +32,23 @@ class Arbiter { /*! if the proof verifies, output the buyer's endorsement and * store the seller's keys in the database (for the buyer to * retrieve at some later date) */ - vector sellerResolveII(const MerkleProof* proof); + vector sellerResolveII(Ptr proof); // the following are resolutions for the responder /*! Stage I: the responder sends a request, and the arbiter * checks the validity of the two messages and stores the keys */ - vector responderResolveI(const FEResolutionMessage* request); + vector responderResolveI(Ptr request); vector responderResolveI(const vector &keys, - const FEMessage* message, - const FESetupMessage* setupMessage); + Ptr message, + Ptr setupMessage); /*! Stage II: if the proof verifies, return the initiator's keys */ - vector responderResolveII(const MerkleProof* proof); + vector responderResolveII(Ptr proof); /*! Stage III: if the initiator's keys were incorrect, the responder * sends a proof of this. if this proof is valid the arbiter will * return the endorsement */ - vector responderResolveIII(const MerkleProof* prooof); + vector responderResolveIII(Ptr prooof); //used to test stuff void setKeys(const vector &ks){ keys = ks; } @@ -60,21 +60,21 @@ class Arbiter { void updateDatabase(const ZZ &sessionID, const string &key); /*! takes in a proof and verifies it using the stored keys */ - bool verifyKeys(const MerkleProof* proof); + bool verifyKeys(Ptr proof); /*! much like verifyKeys except it ignores plaintext proofs; this * is a helper for responderResolveIII */ - bool verifyDecryption(const MerkleProof* proof); + bool verifyDecryption(Ptr proof); - const VEDecrypter* verifiableDecrypter;//, regularDecrypter; - const VEDecrypter* regularDecrypter; + Ptr verifiableDecrypter;//, regularDecrypter; + Ptr regularDecrypter; hashalg_t hashAlg; int timeoutTolerance; boost::shared_ptr ptVerifier, ctVerifier; vector endorsement; vector keys; FEContract contract; - const FEMessage* message; + Ptr message; }; #endif diff --git a/src/Bank.h b/src/Bank.h index 791a01a..45ea722 100644 --- a/src/Bank.h +++ b/src/Bank.h @@ -8,14 +8,12 @@ class Bank { public: - Bank(const GroupPrime* grpPrime, const GroupRSA* secret) + Bank(Ptr grpPrime, Ptr secret) : groupPrime(grpPrime), secretKey(secret) {} Bank(const Bank &o) : groupPrime(o.groupPrime), secretKey(o.secretKey) {} - ~Bank() { delete groupPrime; delete secretKey; } - /*! returns a random number from prime-order group */ ZZ randomNumber(); @@ -23,8 +21,8 @@ class Bank { ZZ fullCommitment(const ZZ &part, const ZZ &bankPart); private: - const GroupPrime* groupPrime; - const GroupRSA* secretKey; + Ptr groupPrime; + Ptr secretKey; }; #endif /*_BANK_H_*/ diff --git a/src/BankParameters.cpp b/src/BankParameters.cpp index 56f8937..e8b3783 100644 --- a/src/BankParameters.cpp +++ b/src/BankParameters.cpp @@ -32,8 +32,8 @@ BankParameters::~BankParameters() { secretKeys.clear();*/ } -const GroupRSA* BankParameters::getBankKey(int denomination) const { - map::const_iterator i = denomToGroup.find(denomination); +Ptr BankParameters::getBankKey(int denomination) const { + map >::const_iterator i = denomToGroup.find(denomination); if (i == denomToGroup.end()) { throw CashException(CashException::CE_UNKNOWN_ERROR, "[BankParameters:getBankKey] Tried to find BankKey for " @@ -43,8 +43,8 @@ const GroupRSA* BankParameters::getBankKey(int denomination) const { return i->second; } -int BankParameters::getCoinDenomination(GroupRSA* group) const { - map::const_iterator i = groupToDenom.find(group); +int BankParameters::getCoinDenomination(Ptr group) const { + map ,int>::const_iterator i = groupToDenom.find(group); if (i == groupToDenom.end()) { throw CashException(CashException::CE_UNKNOWN_ERROR, "[BankParameters:getCoinDenomination] Tried to find denomination " diff --git a/src/BankParameters.h b/src/BankParameters.h index c748ebe..8f86795 100644 --- a/src/BankParameters.h +++ b/src/BankParameters.h @@ -33,11 +33,11 @@ class BankParameters { int getType() const { return type; } /*! getters */ - const GroupPrime* getCashGroup() const { return ecashGroup; } - const vector getBankKeys() const { return secretKeys; } + Ptr getCashGroup() const { return ecashGroup; } + const vector > getBankKeys() const { return secretKeys; } vector getDenominations() const { return coinDenominations; } - const GroupRSA* getBankKey(int coinDenomination) const; - int getCoinDenomination(GroupRSA* group) const; + Ptr getBankKey(int coinDenomination) const; + int getCoinDenomination(Ptr group) const; /*! clear all secrets and set type to public */ void makePublic(); @@ -45,13 +45,13 @@ class BankParameters { private: BankParameters() : ecashGroup(0), type(1) {} - GroupPrime* ecashGroup; + Ptr ecashGroup; int type; - vector secretKeys; + vector > secretKeys; // XXX: do we want this to be hardcoded? const static int stat = 80; - map groupToDenom; - map denomToGroup; + map, int> groupToDenom; + map > denomToGroup; vector coinDenominations; friend class boost::serialization::access; diff --git a/src/BankTool.cpp b/src/BankTool.cpp index eb9f80f..d38711a 100644 --- a/src/BankTool.cpp +++ b/src/BankTool.cpp @@ -50,13 +50,13 @@ BankTool::~BankTool() { delete bankParameters; } -BankWithdrawTool* BankTool::getWithdrawTool(const ZZ &userPK, int wSize, +Ptr BankTool::getWithdrawTool(const ZZ &userPK, int wSize, int coinDenom) const { return new BankWithdrawTool(bankParameters, userPK, stat, lx, wSize, coinDenom, hashAlg); } -bool BankTool::verifyIdentity(ProofMessage* idProof, const ZZ &userPK) const { +bool BankTool::verifyIdentity(Ptr idProof, const ZZ &userPK) const { // check user's PoK of sk_u such that pk_u = g^sk_u InterpreterVerifier verifier; group_map g; diff --git a/src/BankTool.h b/src/BankTool.h index 61e86be..4a04445 100644 --- a/src/BankTool.h +++ b/src/BankTool.h @@ -23,13 +23,13 @@ class BankTool { ~BankTool(); // getters - const BankParameters* getBankParameters() const + Ptr getBankParameters() const { return publicBankParameters; } - const GroupPrime* getCashGroup() const + Ptr getCashGroup() const { return publicBankParameters->getCashGroup(); } - const vector getBankPublicKeys() const + const vector > getBankPublicKeys() const { return publicBankParameters->getBankKeys(); } - const GroupRSA* getBankPublicKey(int denom) const + Ptr getBankPublicKey(int denom) const { return publicBankParameters->getBankKey(denom); } /*! Inputs: user public key, group corresponding to public key, and @@ -37,13 +37,13 @@ class BankTool { * Output: a tool for interacting with a user who wants to withdraw a * wallet. * The BWTool returned must be freed by the caller. */ - BankWithdrawTool* getWithdrawTool(const ZZ &userPK, int wSize, + Ptr getWithdrawTool(const ZZ &userPK, int wSize, int coinDenom) const; /*! Input: a non interactive sigma proof of knowledge of a user's secret * key, using the public key as a commitment to the secret key. * Ouputs: true if proof accepted, false if proof not accepted. */ - bool verifyIdentity(ProofMessage* idProof, const ZZ &userPK) const; + bool verifyIdentity(Ptr idProof, const ZZ &userPK) const; // functions for depositing at the bank /*! Returns true if a coin is formed correctly */ @@ -62,8 +62,8 @@ class BankTool { private: int stat, lx; hashalg_t hashAlg; - BankParameters* bankParameters; - BankParameters* publicBankParameters; + Ptr bankParameters; + Ptr publicBankParameters; friend class boost::serialization::access; template diff --git a/src/BankWithdrawTool.cpp b/src/BankWithdrawTool.cpp index 43d1b37..e98bebc 100644 --- a/src/BankWithdrawTool.cpp +++ b/src/BankWithdrawTool.cpp @@ -3,7 +3,7 @@ #include "CashException.h" #include "CLBlindIssuer.h" -BankWithdrawTool::BankWithdrawTool(const BankParameters *bp, const ZZ &userPK, +BankWithdrawTool::BankWithdrawTool(Ptr bp, const ZZ &userPK, int st, int l, int wSize, int denom, const hashalg_t &ha) : bankParameters(bp), userPublicKey(userPK), stat(st), lx(l), @@ -40,7 +40,7 @@ void BankWithdrawTool::computeFullCommitment(const ZZ &partialCommitment) { fullCommitment = resultA; } -ProofMessage* BankWithdrawTool::sign(ProofMessage* id, ProofMessage* cl){ +Ptr BankWithdrawTool::sign(Ptr id, Ptr cl){ // first verify ID proof, then create issuer for the CL part InterpreterVerifier verifier; group_map g; @@ -55,8 +55,8 @@ ProofMessage* BankWithdrawTool::sign(ProofMessage* id, ProofMessage* cl){ "[BankWithdrawTool::sign] Proof of ID did not verify"); } variable_map clPubs = cl->publics; - const GroupRSA* sk = bankParameters->getBankKey(coinDenom); - const GroupPrime* comGroup = bankParameters->getCashGroup(); + Ptr sk = bankParameters->getBankKey(coinDenom); + Ptr comGroup = bankParameters->getCashGroup(); vector coms; for (int i = 0; i < 3; i++) { string name = "c_"+lexical_cast(i+1); diff --git a/src/BankWithdrawTool.h b/src/BankWithdrawTool.h index 0b72147..e44ac02 100644 --- a/src/BankWithdrawTool.h +++ b/src/BankWithdrawTool.h @@ -6,7 +6,7 @@ class BankWithdrawTool { public: - BankWithdrawTool(const BankParameters *bp, const ZZ &userPK, + BankWithdrawTool(Ptr bp, const ZZ &userPK, int stat, int lx, int wSize, int denom, const hashalg_t &hashAlg); @@ -22,13 +22,13 @@ class BankWithdrawTool { // This method will return the bank's signature if the sigma proofs // are verified, and will throw exceptions if they are not verified - ProofMessage* sign(ProofMessage* id, ProofMessage* cl); + Ptr sign(Ptr id, Ptr cl); int getWalletSize() const { return walletSize; } int getDenom() const { return coinDenom; } private: - const BankParameters* bankParameters; + Ptr bankParameters; ZZ userPublicKey; int stat, lx, walletSize, coinDenom; ZZ bankContribution; diff --git a/src/BuyMessage.cpp b/src/BuyMessage.cpp index 71cf759..a9b9a2c 100644 --- a/src/BuyMessage.cpp +++ b/src/BuyMessage.cpp @@ -2,7 +2,7 @@ #include "VEVerifier.h" #include "Timer.h" -bool BuyMessage::check(const VEPublicKey* pk, const int stat, +bool BuyMessage::check(Ptr pk, const int stat, const ZZ& R) const { // check coin if (!coinPrime.verifyCoin() || coinPrime.getR() != R) diff --git a/src/BuyMessage.h b/src/BuyMessage.h index af8c263..fb965e2 100644 --- a/src/BuyMessage.h +++ b/src/BuyMessage.h @@ -16,35 +16,33 @@ class BuyMessage { /*! coinPrime represents the unendorsed coin, contract represents * the label for the verifiable encryption, and escrow represents * the verifiable escrow on the coin's endorsement */ - BuyMessage(const Coin &coinPrime, FEContract* contract, - VECiphertext* escrow) + BuyMessage(const Coin &coinPrime, Ptr contract, + Ptr escrow) : coinPrime(coinPrime), contract(contract), escrow(escrow) {} /*! copy constructor */ BuyMessage(const BuyMessage &o) : coinPrime(o.coinPrime), contract(o.contract), escrow(o.escrow) {} - ~BuyMessage() { /*delete contract;*/ delete escrow; } - - BuyMessage(const string& s, const BankParameters *params) { + BuyMessage(const string& s, Ptr params) { // need to set params for Coin contained in message loadGZString(make_nvp("BuyMessage", *this), s); coinPrime.setParameters(params); } /*! check contents (verify coin and escrow) */ - bool check(const VEPublicKey* pk, const int stat, const ZZ& R) const; + bool check(Ptr pk, const int stat, const ZZ& R) const; // getters Coin getCoinPrime() const { return coinPrime; } - FEContract* getContract() const { return contract; } - VECiphertext* getEscrow() const { return escrow; } + Ptr getContract() const { return contract; } + Ptr getEscrow() const { return escrow; } private: // XXX these should all be shared_ptr? Coin coinPrime; - FEContract* contract; - VECiphertext* escrow; + Ptr contract; + Ptr escrow; friend class boost::serialization::access; template diff --git a/src/Buyer.cpp b/src/Buyer.cpp index 897d65e..6c078f2 100644 --- a/src/Buyer.cpp +++ b/src/Buyer.cpp @@ -7,7 +7,7 @@ /*----------------------------------------------------------------------------*/ // Constructors -Buyer::Buyer(int timeoutLength, const VEPublicKey* pk, int stat) +Buyer::Buyer(int timeoutLength, Ptr pk, int stat) : timeoutLength(timeoutLength), stat(stat), pk(pk), contract(NULL), inProgress(false) { @@ -38,13 +38,13 @@ void Buyer::reset() { } /*----------------------------------------------------------------------------*/ // Buy -BuyMessage* Buyer::buy(Wallet* wallet, EncBuffer* ciphertext, +Ptr Buyer::buy(Ptr wallet, Ptr ciphertext, const hash_t& ptHash, const ZZ& R) { - return buy(wallet, CommonFunctions::vectorize(ciphertext), + return buy(wallet, CommonFunctions::vectorize >(ciphertext), CommonFunctions::vectorize(ptHash), R); } -BuyMessage* Buyer::buy(Wallet* wallet, const vector& ctext, +Ptr Buyer::buy(Ptr wallet, const vector >& ctext, const vector& ptHash, const ZZ &R) { startTimer(); makeCoin(*wallet, R); @@ -52,12 +52,12 @@ BuyMessage* Buyer::buy(Wallet* wallet, const vector& ctext, return buy(ctext, ptHash); } -BuyMessage* Buyer::buy(EncBuffer* ciphertext, const hash_t& ptHash) { - return buy(CommonFunctions::vectorize(ciphertext), +Ptr Buyer::buy(Ptr ciphertext, const hash_t& ptHash) { + return buy(CommonFunctions::vectorize >(ciphertext), CommonFunctions::vectorize(ptHash)); } -BuyMessage* Buyer::buy(const vector& ct, +Ptr Buyer::buy(const vector >& ct, const vector& ptHash) { if (inProgress) throw CashException(CashException::CE_FE_ERROR, @@ -92,7 +92,7 @@ BuyMessage* Buyer::buy(const vector& ct, startTimer(); // set up the escrow - VECiphertext* escrow = new VECiphertext(makeEscrow()); + Ptr escrow = new VECiphertext(makeEscrow()); printTimer("[Buyer::buy] created escrow"); // set inProgress @@ -153,7 +153,7 @@ bool Buyer::checkKey(const vector& keys) { for (unsigned i = 0; i < ctext.size(); i++) { // decrypt the ciphertext using key unsigned index = (keys.size() == 1) ? 0 : i; - Buffer* plaintext = ctext[i]->decrypt(keys[index], + Ptr plaintext = ctext[i]->decrypt(keys[index], contract->getEncAlgB()); ptext.push_back(plaintext); } diff --git a/src/Buyer.h b/src/Buyer.h index 8e53a55..802c3bd 100644 --- a/src/Buyer.h +++ b/src/Buyer.h @@ -12,7 +12,7 @@ class Buyer { public: /*! constructor takes in various parameters, a wallet, and the * arbiter's public key */ - Buyer(int timeoutLength, const VEPublicKey* pk, int stat); + Buyer(int timeoutLength, Ptr pk, int stat); /*! copy constructor */ Buyer(const Buyer &o); @@ -23,18 +23,18 @@ class Buyer { /*! buy the ciphertext by sending an unendorsed coin, * a verifiable escrow of the endorsement, and associated * contract */ - BuyMessage* buy(Wallet* wallet, EncBuffer* ctext, + Ptr buy(Ptr wallet, Ptr ctext, const hash_t& ptHash, const ZZ &R); /*! buy multiple files */ - BuyMessage* buy(Wallet* wallet, const vector& ctext, + Ptr buy(Ptr wallet, const vector >& ctext, const vector& ptHash, const ZZ &R); /*! assumes setCoin() has been called */ - BuyMessage* buy(EncBuffer* ctext, const hash_t& ptHash); + Ptr buy(Ptr ctext, const hash_t& ptHash); /*! assumes setCoin() has been called */ - BuyMessage* buy(const vector& ctext, + Ptr buy(const vector >& ctext, const vector& ptHash); @@ -54,7 +54,7 @@ class Buyer { /*! get the plaintext (if stored as string in Buyer) */ //string getFile() const { return *ptext; } - const vector& getPtext() const { return ptext; } + const vector >& getPtext() const { return ptext; } /*! get the endorsement (send after key is checked) */ const vector& getEndorsement() const { return endorsement; } @@ -65,7 +65,7 @@ class Buyer { void setCoin(const Coin& coin); void setTimeout() { timeout =time(NULL) + timeoutLength; } void setSecurity(const int newstat) {stat = newstat;} - void setVEPublicKey(const VEPublicKey* newpk) {pk = newpk;} + void setVEPublicKey(Ptr newpk) {pk = newpk;} void reset(); @@ -78,15 +78,15 @@ class Buyer { int timeout; int timeoutLength; int stat; - const VEPublicKey* pk; + Ptr pk; Coin coin; - FEContract* contract; + Ptr contract; // ciphertext to decrypt, received from Seller - vector ctext; + vector > ctext; // saves output of decrypt() if Buy protocol is successful - vector ptext; + vector > ptext; ZZ r; vector endorsement; diff --git a/src/CLBlindIssuer.cpp b/src/CLBlindIssuer.cpp index 011ce79..473e971 100644 --- a/src/CLBlindIssuer.cpp +++ b/src/CLBlindIssuer.cpp @@ -3,7 +3,7 @@ #include "ZKP/InterpreterProver.h" #include "Timer.h" -CLBlindIssuer::CLBlindIssuer(const GroupRSA* sk, const Group* comGroup, +CLBlindIssuer::CLBlindIssuer(Ptr sk, Ptr comGroup, int lx, const vector &coms, int numPrivates, int numPublics) : numPrivates(numPrivates), numPublics(numPublics) @@ -23,7 +23,7 @@ CLBlindIssuer::CLBlindIssuer(const GroupRSA* sk, const Group* comGroup, verifier.check("ZKP/examples/cl-obtain-ecash.txt", inputs, g); } -CLBlindIssuer::CLBlindIssuer(const GroupRSA* sk, int lx, int numPrivates, +CLBlindIssuer::CLBlindIssuer(Ptr sk, int lx, int numPrivates, int numPublics, const gen_group_map &groups, const vector &coms) : numPrivates(numPrivates), numPublics(numPublics) @@ -57,7 +57,7 @@ CLBlindIssuer::CLBlindIssuer(const CLBlindIssuer &o) { } -ProofMessage* CLBlindIssuer::getPartialSignature(const ZZ &C, +Ptr CLBlindIssuer::getPartialSignature(const ZZ &C, const vector& publics, const ProofMessage &pm, int stat, @@ -87,7 +87,7 @@ ProofMessage* CLBlindIssuer::getPartialSignature(const ZZ &C, // map for doing issue program ZZ lx = v.at("l_x"); v.clear(); - const GroupRSA* grp = (GroupRSA*) g.at("pkGroup"); + Ptr grp = (Ptr ) g.at("pkGroup"); v["l_x"] = lx; v["stat"] = grp->getStat(); v["modSize"] = grp->getModulusLength(); diff --git a/src/CLBlindIssuer.h b/src/CLBlindIssuer.h index e660c85..21064ca 100644 --- a/src/CLBlindIssuer.h +++ b/src/CLBlindIssuer.h @@ -9,10 +9,10 @@ class CLBlindIssuer { public: - CLBlindIssuer(const GroupRSA* sk, const Group* comGroup, int lx, + CLBlindIssuer(Ptr sk, Ptr comGroup, int lx, const vector &coms, int numPrivates, int numPublics); - CLBlindIssuer(const GroupRSA* sk, int lx, int numPrivates, + CLBlindIssuer(Ptr sk, int lx, int numPrivates, int numPublics, const gen_group_map &groups, const vector &coms); @@ -20,9 +20,9 @@ class CLBlindIssuer { /*! returns a variable map with the components of a partial signature * A, e, and v'' as well as a proof that it was correctly formed */ - ProofMessage* getPartialSignature(const ZZ &C, const vector& pubs, - const ProofMessage &pm, int stat, - const hashalg_t &hashAlg); + Ptr getPartialSignature(const ZZ &C, const vector& pubs, + const ProofMessage &pm, int stat, + const hashalg_t &hashAlg); private: input_map inputs; diff --git a/src/CLBlindRecipient.cpp b/src/CLBlindRecipient.cpp index 0dc03af..4e14cae 100644 --- a/src/CLBlindRecipient.cpp +++ b/src/CLBlindRecipient.cpp @@ -4,7 +4,7 @@ #include #include "Timer.h" -CLBlindRecipient::CLBlindRecipient(const GroupRSA* pk, const Group* comGroup, +CLBlindRecipient::CLBlindRecipient(Ptr pk, Ptr comGroup, int lx, const vector &coms, int numPrivates, int numPublics) : numPrivates(numPrivates), numPublics(numPublics) @@ -26,7 +26,7 @@ CLBlindRecipient::CLBlindRecipient(const GroupRSA* pk, const Group* comGroup, prover.check("ZKP/examples/cl-obtain-ecash.txt", inputs, g); } -CLBlindRecipient::CLBlindRecipient(const GroupRSA* pk, int lx, int numPrivates, +CLBlindRecipient::CLBlindRecipient(Ptr pk, int lx, int numPrivates, int numPublics, const gen_group_map &grps, const vector &coms) : numPrivates(numPrivates), numPublics(numPublics) @@ -58,7 +58,7 @@ CLBlindRecipient::CLBlindRecipient(const GroupRSA* pk, int lx, int numPrivates, prover.check(fname, inputs, g); } -ProofMessage* CLBlindRecipient::getC(const vector& privates, +Ptr CLBlindRecipient::getC(const vector& privates, const hashalg_t &hashAlg) { if((int)privates.size() != numPrivates) throw CashException(CashException::CE_SIZE_ERROR, diff --git a/src/CLBlindRecipient.h b/src/CLBlindRecipient.h index 10b7c3e..8c64376 100644 --- a/src/CLBlindRecipient.h +++ b/src/CLBlindRecipient.h @@ -12,13 +12,13 @@ class CLBlindRecipient { /*! this constructor assumes commitments are formed in e-cash group * and is passed in the number of private and public variables and * a message length parameter, as well as the private commitments */ - CLBlindRecipient(const GroupRSA* pk, const Group* comGroup, int lx, + CLBlindRecipient(Ptr pk, Ptr comGroup, int lx, const vector &coms, int numPrivates, int numPublics); /*! this constructor allows for commitments that have been formed in * groups other than the PK group */ - CLBlindRecipient(const GroupRSA* pk, int lx, int numPrivates, + CLBlindRecipient(Ptr pk, int lx, int numPrivates, int numPublics, const gen_group_map &groups, const vector &coms); @@ -27,8 +27,8 @@ class CLBlindRecipient { // it is also possible to use one that is a commitment to all at once /*! returns the product C = h^v' * g_1^x_1 * ... * g_l^x_l, as * well as a proof that it was formed correctly */ - ProofMessage* getC(const vector &privates, - const hashalg_t &hashAlg); + Ptr getC(const vector &privates, + const hashalg_t &hashAlg); /*! given a partial signature, check that it was formed * correctly (i.e. that bank's PoK of 1/e verifies) */ diff --git a/src/CLSignatureProver.cpp b/src/CLSignatureProver.cpp index e1af034..92785da 100644 --- a/src/CLSignatureProver.cpp +++ b/src/CLSignatureProver.cpp @@ -2,8 +2,8 @@ #include #include "Timer.h" -CLSignatureProver::CLSignatureProver(const GroupRSA* publicKey, - const Group* comGroup, int lx, +CLSignatureProver::CLSignatureProver(Ptr publicKey, + Ptr comGroup, int lx, const vector &coms, int numPrivates, int numPublics) :numPrivates(numPrivates), numPublics(numPublics) @@ -24,7 +24,7 @@ CLSignatureProver::CLSignatureProver(const GroupRSA* publicKey, prover.check("ZKP/examples/cl-prove-ecash.txt", inputs, g); } -CLSignatureProver::CLSignatureProver(const GroupRSA* pk, int lx, +CLSignatureProver::CLSignatureProver(Ptr pk, int lx, int numPrivates, int numPublics, const gen_group_map &grps, const vector &coms) @@ -54,7 +54,7 @@ CLSignatureProver::CLSignatureProver(const GroupRSA* pk, int lx, prover.check(fname, inputs, g); } -ProofMessage* CLSignatureProver::getProof(const vector& sig, +Ptr CLSignatureProver::getProof(const vector& sig, const vector& privates, const vector& publics, const hashalg_t &hashAlg){ diff --git a/src/CLSignatureProver.h b/src/CLSignatureProver.h index 72c3c85..b03c4b5 100644 --- a/src/CLSignatureProver.h +++ b/src/CLSignatureProver.h @@ -9,19 +9,19 @@ class CLSignatureProver { public: /*! this constructor assumes all operations take place in the same * group */ - CLSignatureProver(const GroupRSA *publicKey, const Group* comGroup, + CLSignatureProver(Ptr publicKey, Ptr comGroup, int lx, const vector &coms, int numPrivates, int numPublics); - CLSignatureProver(const GroupRSA* pk, int lx, int numPrivates, + CLSignatureProver(Ptr pk, int lx, int numPrivates, int numPublics, const gen_group_map &grps, const vector &coms); /*! returns SigmaProof of valid signature */ - ProofMessage* getProof(const vector& sig, - const vector& privates, - const vector& publics, - const hashalg_t &hashAlg); + Ptr getProof(const vector& sig, + const vector& privates, + const vector& publics, + const hashalg_t &hashAlg); private: group_map g; diff --git a/src/CLSignatureVerifier.cpp b/src/CLSignatureVerifier.cpp index 297b49c..4ff5a5b 100644 --- a/src/CLSignatureVerifier.cpp +++ b/src/CLSignatureVerifier.cpp @@ -1,7 +1,7 @@ #include "CLSignatureVerifier.h" -CLSignatureVerifier::CLSignatureVerifier(const GroupRSA* publicKey, - const Group* comGroup, int lx, +CLSignatureVerifier::CLSignatureVerifier(Ptr publicKey, + Ptr comGroup, int lx, const vector &coms, int numPrivates, int numPublics) : numPrivates(numPrivates), numPublics(numPublics) @@ -20,7 +20,7 @@ CLSignatureVerifier::CLSignatureVerifier(const GroupRSA* publicKey, verifier.check("ZKP/examples/cl-prove-ecash.txt", inputs); } -CLSignatureVerifier::CLSignatureVerifier(const GroupRSA* pk, int lx, +CLSignatureVerifier::CLSignatureVerifier(Ptr pk, int lx, int numPrivates, int numPublics, const gen_group_map &groups, const vector &coms) @@ -49,7 +49,7 @@ CLSignatureVerifier::CLSignatureVerifier(const GroupRSA* pk, int lx, verifier.check(fname, inputs); } -bool CLSignatureVerifier::verify(const ProofMessage* pm, int stat) { +bool CLSignatureVerifier::verify(Ptr pm, int stat) { SigmaProof proof = pm->proof; variable_map publics1 = pm->proof.getCommitments(); variable_map publics2 = pm->publics; diff --git a/src/CLSignatureVerifier.h b/src/CLSignatureVerifier.h index e1decf7..bd494d8 100644 --- a/src/CLSignatureVerifier.h +++ b/src/CLSignatureVerifier.h @@ -7,16 +7,16 @@ class CLSignatureVerifier { public: - CLSignatureVerifier(const GroupRSA *publicKey, - const Group* comGroup, int lx, const vector &c, + CLSignatureVerifier(Ptr publicKey, + Ptr comGroup, int lx, const vector &c, int numPrivates, int numPublics); - CLSignatureVerifier(const GroupRSA* pk, int lx, int numPrivates, + CLSignatureVerifier(Ptr pk, int lx, int numPrivates, int numPublics, const gen_group_map &groups, const vector &coms); /*! checks to see if a signature composed of A, e, and v is valid */ - bool verify(const ProofMessage* pm, int stat); + bool verify(Ptr pm, int stat); private: group_map g; diff --git a/src/Ciphertext.cpp b/src/Ciphertext.cpp index cc446c2..6b68c25 100644 --- a/src/Ciphertext.cpp +++ b/src/Ciphertext.cpp @@ -365,7 +365,7 @@ void Ciphertext::AES_counter_crypt(const unsigned char *in, unsigned char *out, } } -EncBuffer* Buffer::encrypt(const Ciphertext::cipher_t& alg, const string& k) const +Ptr Buffer::encrypt(const Ciphertext::cipher_t& alg, const string& k) const { string key = (!k.empty()) ? k : Ciphertext::generateKey(alg); size_t ctl; diff --git a/src/Ciphertext.h b/src/Ciphertext.h index 602a8b2..5676808 100644 --- a/src/Ciphertext.h +++ b/src/Ciphertext.h @@ -109,19 +109,19 @@ class Ciphertext { operator string() const { return string(buf, len); } Buffer& operator=(const string& s) { copyString(s); return *this; } - // encrypt a Buffer: returns new EncBuffer* containing key, alg - //EncBuffer* encrypt(const string& key, const Ciphertext::cipher_t& alg) const; - EncBuffer* encrypt(const Ciphertext::cipher_t& alg, const string& key = string()) const;/* { + // encrypt a Buffer: returns new Ptr containing key, alg + //Ptr encrypt(const string& key, const Ciphertext::cipher_t& alg) const; + Ptr encrypt(const Ciphertext::cipher_t& alg, const string& key = string()) const;/* { return encrypt((NULL != key) ? key : Ciphertext::generateKey(alg), alg); }*/ - EncBuffer* encrypt(const ZZ& r, const Ciphertext::cipher_t& alg) const { + Ptr encrypt(const ZZ& r, const Ciphertext::cipher_t& alg) const { return encrypt(alg, Ciphertext::generateKey(alg, r)); } - // decrypt a Buffer: returns new Buffer* - virtual Buffer* decrypt(const string& key, const Ciphertext::cipher_t& alg) const { + // decrypt a Buffer: returns new Ptr + virtual Ptr decrypt(const string& key, const Ciphertext::cipher_t& alg) const { size_t ptl; char *pt = Ciphertext::decrypt(key.data(), buf, len, alg, &ptl); - return new Buffer(pt, ptl, false); + return make_shared(pt, ptl, false); } // hash a Buffer: caches hash computation hash_t hash(const hashalg_t& halg, const string& hkey, int htype) { @@ -173,10 +173,10 @@ class Ciphertext { : Buffer(d, l, true), key(k), encAlg(a) {} EncBuffer(char* d, size_t l) : Buffer(d, l, true), key(), encAlg() {} - Buffer* decrypt(const string& key, const Ciphertext::cipher_t& alg) const { + Ptr decrypt(const string& key, const Ciphertext::cipher_t& alg) const { return Buffer::decrypt(key, alg); } - Buffer* decrypt() const { + Ptr decrypt() const { return Buffer::decrypt(key, encAlg); } void clear() { Buffer::clear(); key = string(); } diff --git a/src/Coin.cpp b/src/Coin.cpp index 361f80e..1f9cc44 100644 --- a/src/Coin.cpp +++ b/src/Coin.cpp @@ -7,7 +7,7 @@ #include "CLSignatureVerifier.h" #include "Timer.h" -Coin::Coin(const BankParameters* params, int wSize, int index, +Coin::Coin(Ptr params, int wSize, int index, const ZZ &skIn, const ZZ &sIn, const ZZ &tIn, const vector &clSig, int st, int l, const ZZ &rVal, int denom, const hashalg_t &ha) @@ -47,8 +47,8 @@ Coin::Coin(const BankParameters* params, int wSize, int index, // now need to do CL stuff // public message is the wallet size W // secret messages are sk_u, s, and t - const GroupRSA* pk = parameters->getBankKey(coinDenom); - const GroupPrime* comGroup = parameters->getCashGroup(); + Ptr pk = parameters->getBankKey(coinDenom); + Ptr comGroup = parameters->getCashGroup(); vector coms; coms.push_back(B); coms.push_back(C); @@ -62,7 +62,7 @@ Coin::Coin(const BankParameters* params, int wSize, int index, privates.push_back(make_pair(t, env.variables.at("r_D"))); vector publics; publics.push_back(walletSize); - ProofMessage* pm = clProver.getProof(signature, privates, publics, + Ptr pm = clProver.getProof(signature, privates, publics, hashAlg); printTimer("[Coin] got proof for CL"); clProof = *pm; @@ -80,7 +80,7 @@ Coin::Coin(const Coin &o) bool Coin::verifyEndorsement(const vector &endorse) { vector bases; - const GroupPrime* cashGroup = parameters->getCashGroup(); + Ptr cashGroup = parameters->getCashGroup(); ZZ mod = cashGroup->getModulus(); bases.push_back(cashGroup->getGenerator(3)); // h1 bases.push_back(cashGroup->getGenerator(4)); // h2 @@ -115,8 +115,8 @@ bool Coin::verifyCoin() const { // now do CL stuff startTimer(); - const GroupRSA* pk = parameters->getBankKey(coinDenom); - const GroupPrime* comGroup = parameters->getCashGroup(); + Ptr pk = parameters->getBankKey(coinDenom); + Ptr comGroup = parameters->getCashGroup(); vector coms; coms.push_back(B); diff --git a/src/Coin.h b/src/Coin.h index fbf76ff..6e0e2a7 100644 --- a/src/Coin.h +++ b/src/Coin.h @@ -13,16 +13,16 @@ class Coin { /*! coin stores the user's secret sk_u, s, and t, as well * as a CL signature on these values, the index within the * wallet, the coin denomination, and the R value for the coin */ - Coin(const BankParameters* params, int wSize, int index, + Coin(Ptr params, int wSize, int index, const ZZ &skIn, const ZZ &sIn, const ZZ &tIn, const vector &clSig, int st, int l, const ZZ &rVal, int denom, const hashalg_t &hashAlg); - Coin(const char *fname, const BankParameters *params) + Coin(const char *fname, Ptr params) : parameters(params) { loadFile(make_nvp("Coin", *this), fname); } - Coin(const string& s, const BankParameters *params) + Coin(const string& s, Ptr params) : parameters(params) { loadGZString(make_nvp("Coin", *this), s); } @@ -42,7 +42,7 @@ class Coin { bool endorse(const vector &e); // getters - const GroupPrime* getCashGroup() const + Ptr getCashGroup() const { return parameters->getCashGroup(); } ZZ getWalletSize() const { return walletSize; } ZZ getB() const { return B; } @@ -60,7 +60,7 @@ class Coin { ZZ getSPrime() const; ZZ getTPrime() const; - void setParameters(const BankParameters* p) { parameters = p; } + void setParameters(Ptr p) { parameters = p; } // XXX: can write debug later void debug() const; @@ -69,7 +69,7 @@ class Coin { private: int stat, lx, coinDenom; - const BankParameters *parameters; // NOT serialized + Ptr parameters; // NOT serialized int walletSize; // this is W int coinIndex; // this is J ZZ sk_u, s, t; // NOT serialized diff --git a/src/FEContract.cpp b/src/FEContract.cpp index 7dff378..0055868 100644 --- a/src/FEContract.cpp +++ b/src/FEContract.cpp @@ -20,30 +20,30 @@ bool FEContract::checkEncAlgB(const cipher_t& encAlgR) const { } -bool FEContract::checkAFiles(const vector& ptext, - const vector& ctext) const { +bool FEContract::checkAFiles(const vector >& ptext, + const vector >& ctext) const { return checkHashes(ptext, ctext, ptHashA, ctHashA); } -bool FEContract::checkBFiles(const vector& ptext, - const vector& ctext) const { +bool FEContract::checkBFiles(const vector >& ptext, + const vector >& ctext) const { return checkHashes(ptext, ctext, ptHashB, ctHashB); } -bool FEContract::checkAFile(const Buffer* ptext, - /*const*/ EncBuffer* ctext) const { - return checkAFiles(CommonFunctions::vectorize(ptext), - CommonFunctions::vectorize(ctext)); +bool FEContract::checkAFile(Ptr ptext, + /*const*/ Ptr ctext) const { + return checkAFiles(CommonFunctions::vectorize >(ptext), + CommonFunctions::vectorize >(ctext)); } -bool FEContract::checkBFile(const Buffer* ptext, - /*const*/ EncBuffer* ctext) const { - return checkBFiles(CommonFunctions::vectorize(ptext), - CommonFunctions::vectorize(ctext)); +bool FEContract::checkBFile(Ptr ptext, + /*const*/ Ptr ctext) const { + return checkBFiles(CommonFunctions::vectorize >(ptext), + CommonFunctions::vectorize >(ctext)); } -bool FEContract::checkHashes(const vector& ptext, - const vector& ctext, +bool FEContract::checkHashes(const vector >& ptext, + const vector >& ctext, const hash_t& ptHash, const hash_t& ctHash) const { if (ptext.size() != ctext.size()) throw CashException(CashException::CE_FE_ERROR, diff --git a/src/FEContract.h b/src/FEContract.h index 254f3a0..c85afb7 100644 --- a/src/FEContract.h +++ b/src/FEContract.h @@ -46,12 +46,12 @@ class FEContract { bool checkTimeout(const int timeoutTolerance) const; bool checkEncAlgB(const cipher_t& encAlgR) const; - bool checkAFiles(const vector& ptext, - const vector& ctext) const; - bool checkBFiles(const vector& ptext, - const vector& ctext) const; - bool checkAFile(const Buffer* ptext, /*const*/ EncBuffer* ctext) const; - bool checkBFile(const Buffer* ptext, /*const*/ EncBuffer* ctext) const; + bool checkAFiles(const vector >& ptext, + const vector >& ctext) const; + bool checkBFiles(const vector >& ptext, + const vector >& ctext) const; + bool checkAFile(Ptr ptext, Ptr ctext) const; + bool checkBFile(Ptr ptext, Ptr ctext) const; bool checkAHash(const hash_t& ptHash, const hash_t& ctHash) const; bool checkBHash(const hash_t& ptHash, const hash_t& ctHash) const; @@ -69,8 +69,8 @@ class FEContract { const cipher_t& getEncAlgB() const { return encAlgB; } protected: - bool checkHashes(const vector& ptext, - const vector& ctext, + bool checkHashes(const vector >& ptext, + const vector >& ctext, const hash_t& ptHash, const hash_t& ctHash) const; bool checkHash(const hash_t& hashGiven, const hash_t& hashStored) const; diff --git a/src/FEInitiator.cpp b/src/FEInitiator.cpp index 8adf487..2e1cbfa 100644 --- a/src/FEInitiator.cpp +++ b/src/FEInitiator.cpp @@ -5,9 +5,9 @@ /*----------------------------------------------------------------------------*/ // Constructors -FEInitiator::FEInitiator(const long timeoutLength, const VEPublicKey* pk, - const VEPublicKey* regularpk, const int stat, - const Signature::Key* sk) +FEInitiator::FEInitiator(const long timeoutLength, Ptr pk, + Ptr regularpk, const int stat, + Ptr sk) : timeoutLength(timeoutLength), stat(stat), verifiablePK(pk), regularPK(regularpk), contract(NULL), signKey(NULL), exchangeType(TYPE_NONE) @@ -52,13 +52,13 @@ void FEInitiator::reset() { /*----------------------------------------------------------------------------*/ // Setup -FESetupMessage* FEInitiator::setup(Wallet *wallet, const ZZ &R, +Ptr FEInitiator::setup(Ptr wallet, const ZZ &R, const string &signAlg) { makeCoin(wallet, R); return setup(signAlg); } -FESetupMessage* FEInitiator::setup(const string &signAlg) { +Ptr FEInitiator::setup(const string &signAlg) { #ifdef TIMER startTimer(); #endif @@ -78,7 +78,7 @@ startTimer(); ZZ eCom = coin.getEndorsementCom(); // the label needs to be the public key for the signature scheme // create the verifiable escrow - VECiphertext* escrow = new VECiphertext(prover.verifiableEncrypt(eCom, + Ptr escrow = new VECiphertext(prover.verifiableEncrypt(eCom, endorsement, coin.getCashGroup(), signKey->publicKeyString(), verifiablePK->hashAlg, stat)); @@ -88,7 +88,7 @@ printTimer("Verifiable escrow generation"); return new FESetupMessage(coin, escrow, *signKey); } -void FEInitiator::makeCoin(Wallet* wallet, const ZZ& R) { +void FEInitiator::makeCoin(Ptr wallet, const ZZ& R) { // get a coin #ifdef TIMER startTimer(); @@ -109,12 +109,12 @@ void FEInitiator::setCoin(const Coin& c) { /*----------------------------------------------------------------------------*/ // Buy -FEMessage* FEInitiator::buy(EncBuffer* ctextR, const hash_t& ptHashR) { - return buy(CommonFunctions::vectorize(ctextR), +Ptr FEInitiator::buy(Ptr ctextR, const hash_t& ptHashR) { + return buy(CommonFunctions::vectorize >(ctextR), CommonFunctions::vectorize(ptHashR)); } -FEMessage* FEInitiator::buy(const vector& ctextR, +Ptr FEInitiator::buy(const vector >& ctextR, const vector& ptHashR) { if (TYPE_NONE != exchangeType) throw CashException(CashException::CE_FE_ERROR, @@ -194,7 +194,7 @@ bool FEInitiator::decryptCheck(const vector& keysR) { for (unsigned i = 0; i < ctextB.size(); i++) { // decrypt the ciphertext using key unsigned index = (keysR.size() == 1) ? 0 : i; - Buffer* ptext = ctextB[i]->decrypt(keysR[index], contract->getEncAlgB()); + Ptr ptext = ctextB[i]->decrypt(keysR[index], contract->getEncAlgB()); ptextB.push_back(ptext); } @@ -211,13 +211,13 @@ bool FEInitiator::decryptCheck(const vector& keysR) { /*----------------------------------------------------------------------------*/ // Continue Round -EncBuffer* FEInitiator::continueRound(const Buffer* ptextI, +Ptr FEInitiator::continueRound(Ptr ptextI, const cipher_t& encAlgI) { - return continueRound(CommonFunctions::vectorize(ptextI), + return continueRound(CommonFunctions::vectorize >(ptextI), encAlgI)[0]; } -vector FEInitiator::continueRound(const vector& ptextI, +vector > FEInitiator::continueRound(const vector >& ptextI, const cipher_t& encAlgI) { if (TYPE_NONE != exchangeType) throw CashException(CashException::CE_FE_ERROR, @@ -234,27 +234,27 @@ vector FEInitiator::continueRound(const vector& ptext /*----------------------------------------------------------------------------*/ // Encrypt -vector FEInitiator::encrypt(const vector& ptextI, +vector > FEInitiator::encrypt(const vector >& ptextI, const cipher_t& encAlgI) const { if (ptextI.empty()) throw CashException(CashException::CE_FE_ERROR, "[FEInitiator::encrypt] No initiator plaintext given"); string key = Ciphertext::generateKey(encAlgI); - vector ctexts; + vector > ctexts; for (unsigned i = 0; i < ptextI.size(); i++) { ctexts.push_back(ptextI[i]->encrypt(encAlgI, key)); } return ctexts; } -void FEInitiator::setInitiatorFiles(const Buffer *ptextI, EncBuffer* ctextI) { - setInitiatorFiles(CommonFunctions::vectorize(ptextI), - CommonFunctions::vectorize(ctextI)); +void FEInitiator::setInitiatorFiles(Ptr ptextI, Ptr ctextI) { + setInitiatorFiles(CommonFunctions::vectorize >(ptextI), + CommonFunctions::vectorize >(ctextI)); } -void FEInitiator::setInitiatorFiles(const vector& ptextI, - const vector& ctextI) { +void FEInitiator::setInitiatorFiles(const vector >& ptextI, + const vector >& ctextI) { // store values ptextA = ptextI; ctextA = ctextI; @@ -262,14 +262,14 @@ void FEInitiator::setInitiatorFiles(const vector& ptextI, /*----------------------------------------------------------------------------*/ // Barter -FEMessage* FEInitiator::barter(EncBuffer* ctextR, const hash_t& ptHashR, +Ptr FEInitiator::barter(Ptr ctextR, const hash_t& ptHashR, const hash_t& ptHashI) { - return barter(CommonFunctions::vectorize(ctextR), + return barter(CommonFunctions::vectorize >(ctextR), CommonFunctions::vectorize(ptHashR), CommonFunctions::vectorize(ptHashI)); } -FEMessage* FEInitiator::barter(const vector& ctextR, +Ptr FEInitiator::barter(const vector >& ctextR, const vector& ptHashR, const vector& ptHashI) { if (ctextR.empty()) diff --git a/src/FEInitiator.h b/src/FEInitiator.h index 2d309f6..de5ed96 100644 --- a/src/FEInitiator.h +++ b/src/FEInitiator.h @@ -19,9 +19,9 @@ class FEInitiator { /*! constructor takes in various parameters, as well as a wallet * and the public key of the arbiter */ - FEInitiator(const long timeoutLength, const VEPublicKey* pk, - const VEPublicKey* regularpk, const int stat, - const Signature::Key* signKey = NULL); + FEInitiator(const long timeoutLength, Ptr pk, + Ptr regularpk, const int stat, + Ptr signKey = NULL); /*! copy constructor */ FEInitiator(const FEInitiator &o); @@ -33,19 +33,19 @@ class FEInitiator { * unendorsed coin, and then computes a verifiable escrow (using * the arbiter's PK) on the endorsement using the public key for * the signature scheme as a label */ - FESetupMessage* setup(Wallet *wallet, const ZZ &R, + Ptr setup(Ptr wallet, const ZZ &R, const string &signAlg); /*! assumes setCoin() has been called */ - FESetupMessage* setup(const string &signAlg); + Ptr setup(const string &signAlg); // the following functions should be used only for buy /*! receives the ciphertext and computes the contract; also outputs * a signature on the contract */ - FEMessage* buy(EncBuffer* ctextR, const hash_t& ptHashR); + Ptr buy(Ptr ctextR, const hash_t& ptHashR); - FEMessage* buy(const vector& ctextsR, + Ptr buy(const vector >& ctextsR, const vector& ptHashesR); /*! pay the seller with the endorsement (if key is correct) */ @@ -55,21 +55,21 @@ class FEInitiator { // the following functions should be used only for barter - EncBuffer* continueRound(const Buffer *ptextI, const cipher_t& encAlgI); + Ptr continueRound(Ptr ptextI, const cipher_t& encAlgI); - vector continueRound(const vector& ptextI, + vector > continueRound(const vector >& ptextI, const cipher_t& encAlgI); /*! set initiator files (only for BT client use) */ - void setInitiatorFiles(const Buffer* ptextI, EncBuffer* ctextI); + void setInitiatorFiles(Ptr ptextI, Ptr ctextI); - void setInitiatorFiles(const vector& ptextI, - const vector& ctextI); + void setInitiatorFiles(const vector >& ptextI, + const vector >& ctextI); - FEMessage* barter(EncBuffer* ctextR, const hash_t& ptHashR, + Ptr barter(Ptr ctextR, const hash_t& ptHashR, const hash_t& ptHashI); - FEMessage* barter(const vector& ctextR, + Ptr barter(const vector >& ctextR, const vector& ptHashR, const vector& ptHashI); @@ -84,7 +84,7 @@ class FEInitiator { ZZ resolve(); // get vector of decrypted plaintexts from responder - const vector& getPtextB() const { return ptextB; } + const vector >& getPtextB() const { return ptextB; } bool canAbortLocally() {return TYPE_NONE == exchangeType;}; @@ -94,42 +94,42 @@ class FEInitiator { void setTimeoutLength(const long newtimeout) {timeoutLength = newtimeout;} void setSecurity(const int newstat) {stat = newstat;} - void setVerifiablePublicKey(const VEPublicKey* newpk) + void setVerifiablePublicKey(Ptr newpk) {verifiablePK = newpk;} - void setRegularPublicKey(const VEPublicKey* newpk) {regularPK = newpk;} - void setSignatureKey(Signature::Key* newsignKey = NULL) - { delete signKey; signKey = newsignKey ? new Signature::Key(*newsignKey) : NULL; } + void setRegularPublicKey(Ptr newpk) {regularPK = newpk;} + void setSignatureKey(Ptr newsignKey = Ptr()) + { signKey = newsignKey; } void setExchangeType(int et) { exchangeType = et; } void reset(); protected: - void makeCoin(Wallet* wallet, const ZZ& R); + void makeCoin(Ptr wallet, const ZZ& R); void createContract(); string signContract() const; bool decryptCheck(const vector& keys); - vector encrypt(const vector& ptextI, + vector > encrypt(const vector >& ptextI, const cipher_t& encAlgI) const; private: long timeoutLength; int stat; - const VEPublicKey* verifiablePK; - const VEPublicKey* regularPK; + Ptr verifiablePK; + Ptr regularPK; Coin coin; - FEContract* contract; - Signature::Key* signKey; + Ptr contract; + Ptr signKey; // these correspond to the initiator's files (if doing barter) - vector ptextA; - vector ctextA; + vector > ptextA; + vector > ctextA; // these correspond to the responder/seller's files - vector ctextB; - vector ptextB; + vector > ctextB; + vector > ptextB; ZZ r; vector endorsement; diff --git a/src/FEResolutionMessage.h b/src/FEResolutionMessage.h index 1447ede..e3a66ff 100644 --- a/src/FEResolutionMessage.h +++ b/src/FEResolutionMessage.h @@ -11,20 +11,20 @@ class FEResolutionMessage { public: - FEResolutionMessage(FEMessage* m, FESetupMessage* s, + FEResolutionMessage(Ptr m, Ptr s, const vector &k) : message(m), setupMessage(s), keys(k) {} FEResolutionMessage() : message(0), setupMessage(0) {} // getters - FEMessage* getMessage() const { return message; } - FESetupMessage* getSetupMessage() const { return setupMessage; } + Ptr getMessage() const { return message; } + Ptr getSetupMessage() const { return setupMessage; } vector getKeys() const { return keys; } private: - FEMessage* message; - FESetupMessage* setupMessage; + Ptr message; + Ptr setupMessage; vector keys; friend class boost::serialization::access; diff --git a/src/FEResponder.cpp b/src/FEResponder.cpp index 9f80f04..7e66089 100644 --- a/src/FEResponder.cpp +++ b/src/FEResponder.cpp @@ -6,7 +6,7 @@ /*----------------------------------------------------------------------------*/ // Constructors FEResponder::FEResponder(const int timeoutLength, const int timeoutTolerance, - const VEPublicKey* pk, const VEPublicKey* regularpk, + Ptr pk, Ptr regularpk, const int stat) : timeoutLength(timeoutLength), timeoutTolerance(timeoutTolerance), stat(stat), verifiablePK(pk), regularPK(regularpk), contract(NULL), @@ -56,7 +56,7 @@ void FEResponder::reset() { /*----------------------------------------------------------------------------*/ // Setup -bool FEResponder::setup(const FESetupMessage *msg, const ZZ& R) { +bool FEResponder::setup(Ptr msg, const ZZ& R) { // check escrow msg->check(verifiablePK, stat, R); @@ -69,36 +69,36 @@ bool FEResponder::setup(const FESetupMessage *msg, const ZZ& R) { } /*----------------------------------------------------------------------------*/ // Start Round -EncBuffer* FEResponder::startRound(const Buffer* ptextR, +Ptr FEResponder::startRound(Ptr ptextR, const cipher_t& encAlgR) { - return startRound(CommonFunctions::vectorize(ptextR), + return startRound(CommonFunctions::vectorize >(ptextR), encAlgR)[0]; } -vector FEResponder::startRound(const vector& ptextR, +vector > FEResponder::startRound(const vector >& ptextR, const cipher_t& encAlgR) { setResponderFiles(ptextR, encrypt(ptextR,encAlgR)); return ctextB; } /*----------------------------------------------------------------------------*/ // Set Responder Files -void FEResponder::setResponderFiles(const Buffer *ptextR, EncBuffer* ctextR) { - setResponderFiles(CommonFunctions::vectorize(ptextR), - CommonFunctions::vectorize(ctextR)); +void FEResponder::setResponderFiles(Ptr ptextR, Ptr ctextR) { + setResponderFiles(CommonFunctions::vectorize >(ptextR), + CommonFunctions::vectorize >(ctextR)); } -void FEResponder::setResponderFiles(const vector& ptextR, - const vector& ctextR) { +void FEResponder::setResponderFiles(const vector >& ptextR, + const vector >& ctextR) { // store values ptextB = ptextR; ctextB = ctextR; } /*----------------------------------------------------------------------------*/ // Encryption -vector FEResponder::encrypt(const vector& ptextR, +vector > FEResponder::encrypt(const vector >& ptextR, const cipher_t& encAlgR) const { string key = Ciphertext::generateKey(encAlgR); - vector ctexts; + vector > ctexts; for (unsigned i = 0; i < ptextR.size(); i++) { ctexts.push_back(ptextR[i]->encrypt(encAlgR, key)); } @@ -175,15 +175,15 @@ bool FEResponder::endorseCoin(const vector& endorsement) { /*----------------------------------------------------------------------------*/ // Give Key vector FEResponder::giveKeys(const FEMessage& signedEscrow, - EncBuffer* ctI, const hash_t& ptI, + Ptr ctI, const hash_t& ptI, const hash_t& ptR) { - return giveKeys(signedEscrow, CommonFunctions::vectorize(ctI), + return giveKeys(signedEscrow, CommonFunctions::vectorize >(ctI), CommonFunctions::vectorize(ptI), CommonFunctions::vectorize(ptR)); } vector FEResponder::giveKeys(const FEMessage& signedEscrow, - const vector& ctextI, + const vector >& ctextI, const vector& ptHashIs, const vector& ptHashRs) { if (TYPE_NONE != exchangeType) @@ -232,7 +232,7 @@ bool FEResponder::checkKey(const vector& keysI) { for (unsigned i = 0; i < ctextA.size(); i++) { unsigned index = (keysI.size() == 1) ? 0 : i; - Buffer* ptext = ctextA[i]->decrypt(keysI[index], contract->getEncAlgA()); + Ptr ptext = ctextA[i]->decrypt(keysI[index], contract->getEncAlgA()); ptextA.push_back(ptext); } const hash_t& pt = contract->getPTHashA(); @@ -242,12 +242,12 @@ bool FEResponder::checkKey(const vector& keysI) { /*----------------------------------------------------------------------------*/ // Resolutions -FEResolutionMessage* FEResponder::resolveI(){ +Ptr FEResponder::resolveI(){ return new FEResolutionMessage(getMessage(), getSetupMessage(), getKeys()); } -MerkleProof* FEResponder::resolveII(vector &challenges){ - vector ctextBlocks; +Ptr FEResponder::resolveII(vector &challenges){ + vector > ctextBlocks; //prove the ciphertext blocks for(unsigned i = 0; i < challenges.size(); i++){ ctextBlocks.push_back(ctextB[challenges[i]]); @@ -272,7 +272,7 @@ MerkleProof* FEResponder::resolveII(vector &challenges){ } } -MerkleProof* FEResponder::resolveIII(vector &keys){ +Ptr FEResponder::resolveIII(vector &keys){ if(checkKey(keys)){ // XXX: not really sure what I should be returning if they do check // out as additional communication with the Arbiter is not needed @@ -286,7 +286,7 @@ bool FEResponder::resolveIV(vector &endorsement){ return endorseCoin(endorsement); } -MerkleProof* FEResponder::proveIncorrectKeys(const vector &keys) { +Ptr FEResponder::proveIncorrectKeys(const vector &keys) { // make sure we are in barter if (exchangeType != TYPE_BARTER) { throw CashException(CashException::CE_FE_ERROR, @@ -298,7 +298,7 @@ MerkleProof* FEResponder::proveIncorrectKeys(const vector &keys) { // if the key is wrong, this will be wrong with high probability vector challenges; challenges.push_back(0); - vector ctextBlock; + vector > ctextBlock; ctextBlock.push_back(ctextA[0]); const hash_t& ct = contract->getCTHashA(); MerkleContract ctContract(ct.key, ct.alg); @@ -318,7 +318,7 @@ MerkleProof* FEResponder::proveIncorrectKeys(const vector &keys) { } } -FESetupMessage* FEResponder::getSetupMessage() const { +Ptr FEResponder::getSetupMessage() const { return new FESetupMessage(coinPrime, escrow, *initiatorSignPK); } diff --git a/src/FEResponder.h b/src/FEResponder.h index 7fcd157..9b90575 100644 --- a/src/FEResponder.h +++ b/src/FEResponder.h @@ -19,7 +19,7 @@ class FEResponder { /*! constructor takes in various parameters and the public key of * the arbiter */ FEResponder(const int timeoutLength, const int timeoutTolerance, - const VEPublicKey* pk, const VEPublicKey* repk, + Ptr pk, Ptr repk, const int stat); /*! copy constructor */ @@ -29,18 +29,18 @@ class FEResponder { ~FEResponder(); /*! check a setup message received from FEInitiator */ - bool setup(const FESetupMessage* setup, const ZZ& R); + bool setup(Ptr setup, const ZZ& R); /*! encrypt and start the next round (including first round) */ - EncBuffer* startRound(const Buffer* ptextR, const cipher_t& encAlgR); - vector startRound(const vector& ptextR, + Ptr startRound(Ptr ptextR, const cipher_t& encAlgR); + vector > startRound(const vector >& ptextR, const cipher_t& encAlgR); /*! set responder files (only for BT client use) */ - void setResponderFiles(const Buffer* ptextR, EncBuffer* ctextR); + void setResponderFiles(Ptr ptextR, Ptr ctextR); - void setResponderFiles(const vector& ptextR, - const vector& ctextR); + void setResponderFiles(const vector >& ptextR, + const vector >& ctextR); // the following should be used for sell only /*! if the contract is formed correctly and the signature on the @@ -59,11 +59,11 @@ class FEResponder { /*! if the contract is correctly and the signature on the escrow * verifies, return the decryption key */ vector giveKeys(const FEMessage& signedEscrow, - EncBuffer* ctextI, const hash_t& ptHashI, + Ptr ctextI, const hash_t& ptHashI, const hash_t& ptHashR); vector giveKeys(const FEMessage& signedEscrow, - const vector& ctextI, + const vector >& ctextI, const vector& ptHashI, const vector& ptHashR); @@ -73,15 +73,15 @@ class FEResponder { bool checkKey(const vector& keysI); /*! Send a request to the arbiter to resolve*/ - FEResolutionMessage* resolveI(); + Ptr resolveI(); /*! Send proofs that you know the plaintext of the blocks * indicated by the challengs to the Arbiter */ - MerkleProof* resolveII(vector &challenges); + Ptr resolveII(vector &challenges); /*! Check that the keys sent by the Arbiter enable you to decrypt * the Initiator's ciphertext. If they don't, send a proof of this */ - MerkleProof* resolveIII(vector &keys); + Ptr resolveIII(vector &keys); /*! If the proof of the initiator's keys not decrypting the * ciphertext correctly is valid @@ -90,11 +90,11 @@ class FEResponder { bool resolveIV(vector &endorsement); // getters - const vector& getPtextA() const { return ptextA; } + const vector >& getPtextA() const { return ptextA; } const Coin& getCoinPrime() const { return coinPrime; } // these are only needed for testing - FESetupMessage* getSetupMessage() const; - FEMessage* getMessage() const { return message; } + Ptr getSetupMessage() const; + Ptr getMessage() const { return message; } bool canAbortLocally() {return TYPE_NONE == exchangeType;} @@ -103,15 +103,15 @@ class FEResponder { void setTimeoutTolerance(const int newtimeoutTolerance) {timeoutTolerance = newtimeoutTolerance;} void setSecurity(const int newstat) {stat = newstat;} - void setVerifiablePublicKey(const VEPublicKey* newpk) + void setVerifiablePublicKey(Ptr newpk) {verifiablePK = newpk;} - void setRegularPublicKey(const VEPublicKey* newpk) {regularPK = newpk;} + void setRegularPublicKey(Ptr newpk) {regularPK = newpk;} void reset(); protected: - vector encrypt(const vector& ptextR, - const cipher_t& encAlgR) const; + vector > encrypt(const vector >& ptextR, + const cipher_t& encAlgR) const; bool check(const FEMessage& message, const string& label, const vector& ptHashR); @@ -119,28 +119,28 @@ class FEResponder { vector getKeys() const; /*! Prove the initiator's keys are not correct for the ciphertext */ - MerkleProof* proveIncorrectKeys(const vector &keys); + Ptr proveIncorrectKeys(const vector &keys); private: int timeoutLength; int timeoutTolerance; int timeout; int stat; - const VEPublicKey* verifiablePK; - const VEPublicKey* regularPK; + Ptr verifiablePK; + Ptr regularPK; - vector ptextB; - vector ctextB; - vector ctextA; - vector ptextA; + vector > ptextB; + vector > ctextB; + vector > ctextA; // const? + vector > ptextA; Coin coinPrime; - FEContract* contract; - VECiphertext* escrow; - Signature::Key* initiatorSignPK; + Ptr contract; + Ptr escrow; + Ptr initiatorSignPK; // 0 is buy, 1 is barter int exchangeType; - FEMessage* message; + Ptr message; }; #endif /*_FERESPONDER_H_*/ diff --git a/src/FESetupMessage.cpp b/src/FESetupMessage.cpp index 9ba3bcc..8c8cedf 100644 --- a/src/FESetupMessage.cpp +++ b/src/FESetupMessage.cpp @@ -2,7 +2,7 @@ #include "FESetupMessage.h" #include "VEVerifier.h" -bool FESetupMessage::check(const VEPublicKey* pk, const int stat, +bool FESetupMessage::check(Ptr pk, const int stat, const ZZ& R) const { // check coin if (!coinPrime.verifyCoin() || coinPrime.getR() != R) diff --git a/src/FESetupMessage.h b/src/FESetupMessage.h index 8ef8757..7935358 100644 --- a/src/FESetupMessage.h +++ b/src/FESetupMessage.h @@ -17,7 +17,7 @@ class FESetupMessage { * the endorsement for the coin), and the public key * for the initiator's signature scheme (label for the * verifiable escrow) */ - FESetupMessage(const Coin &coinPrime, VECiphertext* escrow, + FESetupMessage(const Coin &coinPrime, Ptr escrow, const Signature::Key &signPK) : coinPrime(coinPrime), escrow(escrow), signPK(signPK.getPublicKey()) {} @@ -29,24 +29,24 @@ class FESetupMessage { /*! destructor */ ~FESetupMessage() { delete signPK; } - FESetupMessage(const string& s, const BankParameters *params) { + FESetupMessage(const string& s, Ptr params) { // need to set params for Coin contained in message loadGZString(make_nvp("FESetupMessage", *this), s); coinPrime.setParameters(params); } /*! check contents (verify coin and escrow) */ - bool check(const VEPublicKey* pk, const int stat, const ZZ& R) const; + bool check(Ptr pk, const int stat, const ZZ& R) const; /*! getters for coin', escrow, and signature PK */ Coin getCoinPrime() const { return coinPrime; } - VECiphertext* getEscrow() const { return escrow; } - const Signature::Key* getPK() const { return signPK; } + Ptr getEscrow() const { return escrow; } + Ptr getPK() const { return signPK; } private: Coin coinPrime; - VECiphertext* escrow; - Signature::Key* signPK; + Ptr escrow; + Ptr signPK; friend class boost::serialization::access; template diff --git a/src/Group.h b/src/Group.h index 7cb9a0b..472f381 100644 --- a/src/Group.h +++ b/src/Group.h @@ -82,7 +82,7 @@ class Group { virtual bool isGenerator(const ZZ &value) const = 0; /*! Returns a copy of the group. */ - Group* copy() const; + Ptr copy() const; /*! Debugging code. */ virtual void debug() const = 0; diff --git a/src/Hash.cpp b/src/Hash.cpp index c628db4..f47bbd8 100644 --- a/src/Hash.cpp +++ b/src/Hash.cpp @@ -214,7 +214,7 @@ hash_t HmacFunction::hash(const string& left, const string& right) const /* used by FEContract, FEInitiator, FEResponder, etc */ -hash_t Hash::hash(const vector& buf, const hashalg_t& alg, +hash_t Hash::hash(const vector >& buf, const hashalg_t& alg, const string &key, const int hashType) { vector hash; @@ -225,7 +225,7 @@ hash_t Hash::hash(const vector& buf, const hashalg_t& alg, return Hash::hash(hash, alg, key, hashType); } -hash_t Hash::hash(const vector& buf, const hashalg_t& alg, +hash_t Hash::hash(const vector >& buf, const hashalg_t& alg, const string &key, const int hashType) { vector hash; @@ -236,7 +236,7 @@ hash_t Hash::hash(const vector& buf, const hashalg_t& alg, return Hash::hash(hash, alg, key, hashType); } -hash_t Hash::hash(const vector& buf, const hashalg_t& alg, +hash_t Hash::hash(const vector >& buf, const hashalg_t& alg, const string &key, const int hashType) { vector hash; @@ -247,7 +247,7 @@ hash_t Hash::hash(const vector& buf, const hashalg_t& alg, return Hash::hash(hash, alg, key, hashType); } -hash_t Hash::hash(const vector& buf, const hashalg_t& alg, +hash_t Hash::hash(const vector >& buf, const hashalg_t& alg, const string &key, const int hashType) { vector hash; diff --git a/src/Hash.h b/src/Hash.h index cdb7fc2..caec0ab 100644 --- a/src/Hash.h +++ b/src/Hash.h @@ -108,13 +108,13 @@ class Hash { const alg_t alg, const string& key, size_t& chunksz_out); /* Used by FEContract for contract-checking */ - static hash_t hash(const vector& buf, const alg_t& alg, + static hash_t hash(const vector >& buf, const alg_t& alg, const string &key, const int hashType); - static hash_t hash(const vector& buf, const alg_t& alg, + static hash_t hash(const vector >& buf, const alg_t& alg, const string &key, const int hashType); - static hash_t hash(const vector& buf, const alg_t& alg, + static hash_t hash(const vector >& buf, const alg_t& alg, const string &key, const int hashType); - static hash_t hash(const vector& buf, const alg_t& alg, + static hash_t hash(const vector >& buf, const alg_t& alg, const string &key, const int hashType); static hash_t hash(const vector& hashes, const alg_t& alg, const string &key, const int hashType); diff --git a/src/MerkleProof.cpp b/src/MerkleProof.cpp index cacaef8..167009b 100644 --- a/src/MerkleProof.cpp +++ b/src/MerkleProof.cpp @@ -1,11 +1,11 @@ #include "MerkleProof.h" -MerkleProof::MerkleProof(const vector &ctextBlocks, +MerkleProof::MerkleProof(const vector > &ctextBlocks, const hash_matrix &ctextProof, const hash_matrix &fileProof, - MerkleContract* ctContract, - MerkleContract* ptContract) + Ptr ctContract, + Ptr ptContract) : ctextBlocks(ctextBlocks), ctextProof(ctextProof), fileProof(fileProof), ctContract(ctContract), ptContract(ptContract) { @@ -13,15 +13,15 @@ MerkleProof::MerkleProof(const vector &ctextBlocks, empty=false; } -MerkleProof::MerkleProof(const vector &ctextBlocks, +MerkleProof::MerkleProof(const vector > &ctextBlocks, const hash_matrix &ctextProof, - const string &plaintext, MerkleContract* ctContract) + const string &plaintext, Ptr ctContract) : ctextBlocks(ctextBlocks), ctextProof(ctextProof), plaintext(plaintext), ctContract(ctContract) {empty=false;} -MerkleProof::MerkleProof(const vector &ctextBlocks, +MerkleProof::MerkleProof(const vector > &ctextBlocks, const hash_matrix &ctextProof, - MerkleContract* ctContract) + Ptr ctContract) : ctextBlocks(ctextBlocks), ctextProof(ctextProof), ctContract(ctContract) { } diff --git a/src/MerkleProof.h b/src/MerkleProof.h index c973eaf..1b80c54 100644 --- a/src/MerkleProof.h +++ b/src/MerkleProof.h @@ -15,36 +15,36 @@ class MerkleProof { * of the ciphertext was formed correctly; fileProof is the proof * that the Merkle hash of the plaintext was formed correctly * the contracts store the hashalg and key */ - MerkleProof(const vector &ctextBlocks, + MerkleProof(const vector > &ctextBlocks, const hash_matrix &ctextProof, const hash_matrix &fileProof, - MerkleContract* ctContract, MerkleContract* ptContract); + Ptr ctContract, Ptr ptContract); - MerkleProof(const vector &ctextBlocks, + MerkleProof(const vector > &ctextBlocks, const hash_matrix &ctextProof, const string &plaintext, - MerkleContract* ctContract); + Ptr ctContract); - MerkleProof(const vector &ctextBlocks, - const hash_matrix &ctextProof, MerkleContract* ctContract); + MerkleProof(const vector > &ctextBlocks, + const hash_matrix &ctextProof, Ptr ctContract); MerkleProof(const MerkleProof &o); // getters - vector getCTextBlocks() const { return ctextBlocks; } + vector > getCTextBlocks() const { return ctextBlocks; } hash_matrix getCTextProof() const { return ctextProof; } hash_matrix getPTextProof() const { return fileProof; } string getPlaintext() const { return plaintext; } - MerkleContract* getPTContract() const { return ptContract; } - MerkleContract* getCTContract() const { return ctContract; } + Ptr getPTContract() const { return ptContract; } + Ptr getCTContract() const { return ctContract; } bool isEmpty() const { return empty; } private: - vector ctextBlocks; + vector > ctextBlocks; hash_matrix ctextProof; hash_matrix fileProof; string plaintext; - MerkleContract* ctContract; - MerkleContract* ptContract; + Ptr ctContract; + Ptr ptContract; bool empty; friend class boost::serialization::access; diff --git a/src/MerkleProver.cpp b/src/MerkleProver.cpp index bafd5f4..bd82586 100644 --- a/src/MerkleProver.cpp +++ b/src/MerkleProver.cpp @@ -21,7 +21,7 @@ MerkleProver::MerkleProver(const string &str, const MerkleContract &contract) init(str.data(), str.size()); } -MerkleProver::MerkleProver(const vector &encBuffs, +MerkleProver::MerkleProver(const vector > &encBuffs, const MerkleContract &contract) : contract(contract) { @@ -32,7 +32,7 @@ MerkleProver::MerkleProver(const vector &encBuffs, tree = new MerkleTree(hashBlocks, contract); } -MerkleProver::MerkleProver(const vector& buffs, +MerkleProver::MerkleProver(const vector >& buffs, const MerkleContract &contract) : contract(contract) { diff --git a/src/MerkleProver.h b/src/MerkleProver.h index de39a44..23887b3 100644 --- a/src/MerkleProver.h +++ b/src/MerkleProver.h @@ -6,10 +6,10 @@ class MerkleProver { public: - MerkleProver(const vector &encBuffs, + MerkleProver(const vector > &encBuffs, const MerkleContract &contract); - MerkleProver(const vector &buffs, + MerkleProver(const vector > &buffs, const MerkleContract &contract); MerkleProver(const string &str, const MerkleContract &contract); @@ -34,7 +34,7 @@ class MerkleProver { hash_t computeSubTree(unsigned index, vector &m_tree); MerkleContract contract; - MerkleTree* tree; + Ptr tree; }; diff --git a/src/ProgramMaker.h b/src/ProgramMaker.h index b859405..dc8e275 100644 --- a/src/ProgramMaker.h +++ b/src/ProgramMaker.h @@ -7,7 +7,7 @@ // the following are useful for CLBlindRecipient and CLSignatureProver // for groups, need access to group object and names of generators -typedef pair > group_pair; +typedef pair, vector > group_pair; typedef boost::unordered_map gen_group_map; // for commitments, we'll assume that value being committed to is called diff --git a/src/Seller.cpp b/src/Seller.cpp index 6015f84..0460743 100644 --- a/src/Seller.cpp +++ b/src/Seller.cpp @@ -8,14 +8,14 @@ /*----------------------------------------------------------------------------*/ // Constructors Seller::Seller(const int timeoutLength, const int timeoutTolerance, - const VEPublicKey* pk, const int stat) + Ptr pk, const int stat) : timeoutLength(timeoutLength), timeoutTolerance(timeoutTolerance), stat(stat), pk(pk), contract(NULL), escrow(NULL), inProgress(false) { } -Seller::Seller(EncBuffer* ct, const int timeoutLength, - const int timeoutTolerance, const VEPublicKey* pk, +Seller::Seller(Ptr ct, const int timeoutLength, + const int timeoutTolerance, Ptr pk, const int stat) : timeoutLength(timeoutLength), timeoutTolerance(timeoutTolerance), stat(stat), pk(pk), contract(NULL), escrow(NULL), inProgress(false) @@ -23,8 +23,8 @@ Seller::Seller(EncBuffer* ct, const int timeoutLength, ctext.push_back(ct); } -Seller::Seller(vector ctext, const int timeoutLength, - const int timeoutTolerance, const VEPublicKey* pk, +Seller::Seller(vector > ctext, const int timeoutLength, + const int timeoutTolerance, Ptr pk, const int stat) : timeoutLength(timeoutLength), timeoutTolerance(timeoutTolerance), stat(stat), pk(pk), ctext(ctext), contract(NULL), escrow(NULL), @@ -62,17 +62,17 @@ void Seller::reset() { /*----------------------------------------------------------------------------*/ // Encryption -EncBuffer* Seller::encrypt(const Buffer* pt, const cipher_t& encAlg, +Ptr Seller::encrypt(Ptr pt, const cipher_t& encAlg, const string& key) { ptext.push_back(pt); // now encrypt each block in fileBlocks using K - EncBuffer* ct = pt->encrypt(encAlg, key); + Ptr ct = pt->encrypt(encAlg, key); ctext.push_back(ct); // return outcome of this encryption return ct; } -vector Seller::encrypt(const vector& ptext, +vector > Seller::encrypt(const vector >& ptext, const cipher_t& encAlg) { string commonKey = Ciphertext::generateKey(encAlg); for (unsigned i = 0; i < ptext.size(); i++) { @@ -81,26 +81,26 @@ vector Seller::encrypt(const vector& ptext, return ctext; } -void Seller::setFiles(const Buffer* ptext, EncBuffer* ctext) { - setFiles(CommonFunctions::vectorize(ptext), - CommonFunctions::vectorize(ctext)); +void Seller::setFiles(Ptr ptext, Ptr ctext) { + setFiles(CommonFunctions::vectorize >(ptext), + CommonFunctions::vectorize >(ctext)); } -void Seller::setFiles(const vector& pt, - const vector& ct) { +void Seller::setFiles(const vector >& pt, + const vector >& ct) { ptext = pt; ctext = ct; } /*----------------------------------------------------------------------------*/ // Selling -vector Seller::sell(const BuyMessage* buyerInput, const ZZ& R, +vector Seller::sell(Ptr buyerInput, const ZZ& R, const hash_t& ptHash){ return sell(buyerInput, R, CommonFunctions::vectorize(ptHash)); } -vector Seller::sell(const BuyMessage* buyerInput, const ZZ& R, +vector Seller::sell(Ptr buyerInput, const ZZ& R, const vector& ptHashes) { if (inProgress) throw CashException(CashException::CE_FE_ERROR, @@ -126,7 +126,7 @@ vector Seller::sell(const BuyMessage* buyerInput, const ZZ& R, return keys; } -bool Seller::check(const BuyMessage* buyerInput, const ZZ& R, +bool Seller::check(Ptr buyerInput, const ZZ& R, const vector& ptHashes) { // check message buyerInput->check(pk, stat, R); @@ -159,16 +159,16 @@ bool Seller::check(const BuyMessage* buyerInput, const ZZ& R, // Resolution //send keys and buy message to the Arbiter so they can begin resolution -pair, BuyMessage*> Seller::resolveI() { +pair, Ptr > Seller::resolveI() { vector keys(ctext.size()); for(unsigned i = 0; i < ctext.size(); i++){ keys[i] = ctext[i]->key; } - return make_pair, BuyMessage*>(keys, getBuyMessage()); + return make_pair, Ptr >(keys, getBuyMessage()); } -MerkleProof* Seller::resolveII(vector &challenges){ - vector ctextBlocks; +Ptr Seller::resolveII(vector &challenges){ + vector > ctextBlocks; // send the required ciphertext blocks for(unsigned i = 0; i < challenges.size(); i++){ ctextBlocks.push_back(ctext[challenges[i]]); @@ -176,13 +176,13 @@ MerkleProof* Seller::resolveII(vector &challenges){ //create and send the proofs as well const hash_t& ct = contract->getCTHashB(); - MerkleContract* ctContract = new MerkleContract(ct.key, ct.alg); + Ptr ctContract = new MerkleContract(ct.key, ct.alg); MerkleProver ctProver(ctext, *ctContract); vector > ctProofs = ctProver.generateProofs(challenges); if(ct.type == Hash::TYPE_MERKLE){ const hash_t& pt = contract->getPTHashB(); - MerkleContract* ptContract = new MerkleContract(pt.key, pt.alg); + Ptr ptContract = new MerkleContract(pt.key, pt.alg); MerkleProver ptProver(ptext, *ptContract); vector > ptProofs = ptProver.generateProofs(challenges); return new MerkleProof(ctextBlocks, ctProofs, ptProofs, @@ -192,7 +192,7 @@ MerkleProof* Seller::resolveII(vector &challenges){ } } -BuyMessage* Seller::getBuyMessage() const { +Ptr Seller::getBuyMessage() const { return new BuyMessage(coinPrime, contract, escrow); } diff --git a/src/Seller.h b/src/Seller.h index 938afc9..b0d3727 100644 --- a/src/Seller.h +++ b/src/Seller.h @@ -12,16 +12,16 @@ class Seller { /*! constructor takes in various parameters and the arbiter's * public key */ Seller(const int timeoutLength, const int timeoutTolerance, - const VEPublicKey* pk, const int stat); + Ptr pk, const int stat); /*! constructor for when ctext has already been encrypted: * ctext containing key and encAlg: will be freed by Seller */ - Seller(EncBuffer* ctext, const int timeout, const int timeoutTolerance, - const VEPublicKey* pk, const int stat); + Seller(Ptr ctext, const int timeout, const int timeoutTolerance, + Ptr pk, const int stat); - Seller(vector ctext, const int timeout, - const int timeoutTolerance, const VEPublicKey* pk, + Seller(vector > ctext, const int timeout, + const int timeoutTolerance, Ptr pk, const int stat); /*! copy constructor */ @@ -31,15 +31,15 @@ class Seller { ~Seller(); /*! outputs the ciphertext of the file */ - EncBuffer* encrypt(const Buffer* ptext, const cipher_t& encAlg, + Ptr encrypt(Ptr ptext, const cipher_t& encAlg, const string& key = ""); - vector encrypt(const vector& ptext, + vector > encrypt(const vector >& ptext, const cipher_t& encAlgs); /*! For BT client use only (if encrypt is not called) */ - void setFiles(const Buffer* ptext, EncBuffer* ctext); - void setFiles(const vector& ptext, - const vector& ctext); + void setFiles(Ptr ptext, Ptr ctext); + void setFiles(const vector >& ptext, + const vector >& ctext); /*! if the message from the buyer is formed correctly, meaning * the contract is correctly formed (matches seller's knowledge), @@ -47,9 +47,9 @@ class Seller { * by the seller), * and the verifiable escrow of the endorsement verifies, * then return the decryption key */ - vector sell(const BuyMessage* buyerInput, const ZZ& R, + vector sell(Ptr buyerInput, const ZZ& R, const hash_t& ptHash); - vector sell(const BuyMessage* buyerInput, const ZZ& R, + vector sell(Ptr buyerInput, const ZZ& R, const vector& ptHashes); /*! Endorse the coin previously obtained in this exchange using @@ -58,14 +58,14 @@ class Seller { bool endorseCoin(const vector &endorsement); /*! Send the information required for resolution to the Arbiter */ - pair, BuyMessage*> resolveI(); + pair, Ptr > resolveI(); /* Prove knowledge to the Arbiter of the challenged blocks*/ - MerkleProof* resolveII(vector &challenges); + Ptr resolveII(vector &challenges); // getters - const Coin* getCoin() const { return new Coin(coinPrime); }; - BuyMessage* getBuyMessage() const; + Ptr getCoin() const { return Ptr(new Coin(coinPrime)); }; + Ptr getBuyMessage() const; // setters void setTimeoutLength(const int newLength) @@ -73,29 +73,29 @@ class Seller { void setTimeoutTolerance(const int newtimeoutTolerance) {timeoutTolerance = newtimeoutTolerance;} void setSecurity(const int newstat) {stat = newstat;} - void setVEPublicKey(const VEPublicKey* newpk) {pk = newpk;} + void setVEPublicKey(Ptr newpk) {pk = newpk;} bool canAbortLocally() const {return !inProgress;}; void reset(); protected: - bool check(const BuyMessage* buyerInput, const ZZ& R, + bool check(Ptr buyerInput, const ZZ& R, const vector& ptHashes); private: int timeoutLength; int timeoutTolerance; int stat; - const VEPublicKey* pk; + Ptr pk; // Seller has encrypted ptext and sent ctext to Buyer - vector ptext; + vector > ptext; // Seller will exchange ctext->key for Buyer's coin - vector ctext; + vector > ctext; Coin coinPrime; - FEContract* contract; - VECiphertext* escrow; + Ptr contract; + Ptr escrow; bool inProgress; }; diff --git a/src/Serialize.h b/src/Serialize.h index c9672f4..be33e68 100644 --- a/src/Serialize.h +++ b/src/Serialize.h @@ -44,6 +44,8 @@ namespace bsz = boost::serialization; namespace bar = boost::archive; namespace bio = boost::iostreams; +#define Ptr boost::shared_ptr + // save and load to string or file // Ar = boost::archive::xml_archive is more portable // Ar = boost::archive::binary_archive is more compact diff --git a/src/Signature.cpp b/src/Signature.cpp index d03c3a0..4864e18 100644 --- a/src/Signature.cpp +++ b/src/Signature.cpp @@ -73,7 +73,7 @@ bool Signature::verify(const Key& key, const string& sig, const string &data, return (err == 1); // signature OK } -Signature::Key* Signature::Key::generateDSAKey(int numbits) { +Ptr Signature::Key::generateDSAKey(int numbits) { DSA *dsa; if (numbits == SIG_NUMBITS) dsa = DSAparams_dup_wrap(DSA_PARAMS); @@ -90,7 +90,7 @@ Signature::Key* Signature::Key::generateDSAKey(int numbits) { return new Key(k, true); } -Signature::Key* Signature::Key::generateRSAKey(int modlen) { +Ptr Signature::Key::generateRSAKey(int modlen) { RSA *rsa = NULL; rsa = RSA_generate_key(modlen, RSA_F4, NULL, NULL); if (!RSA_check_key(rsa)) @@ -142,7 +142,7 @@ string Signature::Key::toDER(bool save_private_key) const { return ret; } -Signature::Key* Signature::Key::fromDER(const string& str, bool isPrivate) { +Ptr Signature::Key::fromDER(const string& str, bool isPrivate) { EVP_PKEY *k; const unsigned char *buf = (const unsigned char*)str.data(); if (isPrivate) { diff --git a/src/Signature.h b/src/Signature.h index 5627a84..ee72407 100644 --- a/src/Signature.h +++ b/src/Signature.h @@ -28,17 +28,17 @@ class Signature { Key() : _key(0), isPrivate(false) {} /// private key: can sign & verify - static Key* loadPrivateKey(const string& file, const string& passwd) { - return new Key(file, passwd, true); + static Ptr loadPrivateKey(const string& file, const string& passwd) { + return Ptr(new Key(file, passwd, true)); } /// public key: can only verify - static Key* loadPublicKey(const string& file, const string& passwd=string()) { - return new Key(file, passwd, false); + static Ptr loadPublicKey(const string& file, const string& passwd=string()) { + return Ptr(new Key(file, passwd, false)); } // generates public/private keypair - static Key* generateDSAKey(int numbits=SIG_NUMBITS); - static Key* generateRSAKey(int modlen=SIG_NUMBITS); - inline static Key* generateKey(const string& alg) { + static Ptr generateDSAKey(int numbits=SIG_NUMBITS); + static Ptr generateRSAKey(int modlen=SIG_NUMBITS); + inline static Ptr generateKey(const string& alg) { if (alg == "DSA") return generateDSAKey(); else if (alg == "RSA") return generateRSAKey(); else throw CashException(CashException::CE_UNKNOWN_ERROR, @@ -47,9 +47,9 @@ class Signature { } // get public key for this key: allocates & returns new Key - Key* getPublicKey() const { + Ptr getPublicKey() const { if (!isPrivate){ - return new Key(*this); + return Ptr(new Key(*this)); } else { // XXX convert to public key more efficiently? string d = toDER(false); return fromDER(d, false); @@ -84,7 +84,7 @@ class Signature { inline string privateKeyString() const { return toPEM(true); } // binary DER encoding string toDER(bool save_private_key=false) const; - static Key* fromDER(const string& buf, bool isPrivate=false); + static Ptr fromDER(const string& buf, bool isPrivate=false); ~Key() { EVP_PKEY_free(_key); } EVP_PKEY* _key; diff --git a/src/Test.cpp b/src/Test.cpp index 76aa924..2ae39fc 100644 --- a/src/Test.cpp +++ b/src/Test.cpp @@ -237,7 +237,7 @@ double* createParameters() { "and saved"); // save BankParams from BankTool public params - const BankParameters* bankParameters = bankTool.getBankParameters(); + Ptr bankParameters = bankTool.getBankParameters(); saveFile(make_nvp("BankParameters", *bankParameters), "bank."+sec+".params"); // save a new user @@ -265,12 +265,12 @@ double* loadParameters() { BankTool bankTool(("tool."+sec+".bank").c_str()); BankParameters bp(("bank."+sec+".params").c_str()); - const BankParameters* params = &bp; + Ptr params = &bp; cout << "Number of denominations is " << params->getDenominations().size() << endl; - const GroupPrime* cashGrp = params->getCashGroup(); + Ptr cashGrp = params->getCashGroup(); cout << "Number of generators for cash group is " << cashGrp->getGenerators().size() << endl; @@ -280,7 +280,7 @@ double* loadParameters() { } cout << "generators for bank public key for denom 512 are:" << endl; - const GroupRSA* bankPK = params->getBankKey(512); + Ptr bankPK = params->getBankKey(512); for (unsigned i = 0; i < bankPK->getGenerators().size(); i++) { cout << i+1 << "-th generator is " << bankPK->getGenerator(i) << endl; } @@ -387,8 +387,8 @@ double* testSophie() { double* testClone() { double* timers = new double[MAX_TIMERS]; istringstream iss(string("x * a ^ b_i + -2")); - ZKPLexer* lexer = new ZKPLexer(iss); - ZKPParser* parser = new ZKPParser(*lexer); + Ptr lexer = new ZKPLexer(iss); + Ptr parser = new ZKPParser(*lexer); ASTExprPtr n = parser->expr(); Printer print; @@ -403,8 +403,8 @@ double* testClone() { double* testFor() { double* timers = new double[MAX_TIMERS]; istringstream iss(string("for(i, 1:3, &&, c_i := (g^x_i) * (h^r_i))")); - ZKPLexer* lexer = new ZKPLexer(iss); - ZKPParser* parser = new ZKPParser(*lexer); + Ptr lexer = new ZKPLexer(iss); + Ptr parser = new ZKPParser(*lexer); ASTNodePtr n = parser->spec(); Printer print; @@ -431,8 +431,8 @@ double* testConstSub() { "r[1:l], vprime such that: for(i, 1:l, range: " "-(2^l_x - 1) <= x_i < 2^l_x) C = h^vprime * " "for(i, 1:l, *, c_i * h^(-r_i))")); - ZKPLexer* lexer = new ZKPLexer(iss); - ZKPParser* parser = new ZKPParser(*lexer); + Ptr lexer = new ZKPLexer(iss); + Ptr parser = new ZKPParser(*lexer); ASTNodePtr n = parser->spec(); Printer print; @@ -475,9 +475,9 @@ double* testProofInteraction() { // load up our parameters BankTool bankTool("tool.80.bank"); BankParameters bp("bank.80.params"); - const GroupPrime* cashG = bp.getCashGroup(); + Ptr cashG = bp.getCashGroup(); // just get PK for an arbitrary denomination - const GroupRSA* rangeG = bp.getBankKey(512); + Ptr rangeG = bp.getBankKey(512); group_map pgrps; variable_map pvars; @@ -616,7 +616,7 @@ double* testCLProver(){ int numPrivates = 3; //create secret key //creating group adds f as a generator - GroupRSA* sk = new GroupRSA("first", RSALength, stat); + Ptr sk = new GroupRSA("first", RSALength, stat); for (int i = 0; i < numPrivates + numPublics; i++) { sk->addNewGenerator(); } @@ -624,7 +624,7 @@ double* testCLProver(){ sk->addNewGenerator(); //create public key from copying secret key and clearing secrets - GroupRSA* pk = new GroupRSA(*sk); + Ptr pk = new GroupRSA(*sk); pk->clearSecrets(); //create random public messages @@ -634,8 +634,8 @@ double* testCLProver(){ publics.push_back(RandomBits_ZZ(lx-1)); //create random private messages and their commitments - const BankParameters* bp = new BankParameters("bank.80.params"); - const GroupPrime* comGroup = bp->getCashGroup(); + Ptr bp = new BankParameters("bank.80.params"); + Ptr comGroup = bp->getCashGroup(); startTimer(); vector > secretExps; vector coms; @@ -660,7 +660,7 @@ double* testCLProver(){ CLBlindRecipient recip(pk, comGroup, lx, coms, numPrivates, numPublics); timers[timer++] = printTimer(timer, "Created CL recipient"); startTimer(); - ProofMessage* cVprimeProof = recip.getC(secretExps, hashAlg); + Ptr cVprimeProof = recip.getC(secretExps, hashAlg); timers[timer++] = printTimer(timer, "Recipient sent proof of knowledge " "of values in commitments"); cout << "Recipient proof size: " << saveGZString(*cVprimeProof).size() <vars.at("C"); - ProofMessage* partialSigProof = issu.getPartialSignature(C, publics, + Ptr partialSigProof = issu.getPartialSignature(C, publics, *cVprimeProof, stat, hashAlg); timers[timer++] = printTimer(timer, "Issuer verified recipient's proof " @@ -707,7 +707,7 @@ double* testCLProver(){ CLSignatureProver prover(pk, comGroup, lx, coms, numPrivates, numPublics); timers[timer++] = printTimer(timer, "Created CL prover"); startTimer(); - ProofMessage* publicProof = prover.getProof(signature, secretExps, + Ptr publicProof = prover.getProof(signature, secretExps, publics, hashAlg); timers[timer++] = printTimer(timer, "Prover sent proof of possession of " "CL signature"); @@ -735,26 +735,26 @@ double* testCLGroups() { hashalg_t hashAlg = Hash::SHA1; // want to have a different group for each commitment - GroupPrime* group1 = new GroupPrime("cash", modLength, 2*stat, stat); + Ptr group1 = new GroupPrime("cash", modLength, 2*stat, stat); group1->addNewGenerator(); - GroupPrime* group2 = new GroupPrime("cash", modLength, 2*stat, stat); + Ptr group2 = new GroupPrime("cash", modLength, 2*stat, stat); group2->addNewGenerator(); - GroupPrime* group3 = new GroupPrime("cash", modLength, 2*stat, stat); + Ptr group3 = new GroupPrime("cash", modLength, 2*stat, stat); group3->addNewGenerator(); - vector grps; + vector > grps; grps.push_back(group1); grps.push_back(group2); grps.push_back(group3); // also need RSA group for CL signature stuff - GroupRSA* pk = new GroupRSA("bank", modLength, stat); // f + Ptr pk = new GroupRSA("bank", modLength, stat); // f pk->addNewGenerator(); // g_1 pk->addNewGenerator(); // g_2 pk->addNewGenerator(); // g_3 pk->addNewGenerator(); // g_4 pk->addNewGenerator(); // h - GroupRSA* sk = new GroupRSA(*pk); + Ptr sk = new GroupRSA(*pk); pk->clearSecrets(); // now set up commitments and such @@ -800,12 +800,12 @@ double* testCLGroups() { timers[timer++] = printTimer(timer, "CLBlindIssuer created"); startTimer(); - ProofMessage* initial = recipient.getC(secretExps, hashAlg); + Ptr initial = recipient.getC(secretExps, hashAlg); timers[timer++] = printTimer(timer, "Initial proof from recipient created"); ZZ C = initial->vars.at("C"); startTimer(); - ProofMessage* bankProof = issuer.getPartialSignature(C, publics, *initial, + Ptr bankProof = issuer.getPartialSignature(C, publics, *initial, stat, hashAlg); timers[timer++] = printTimer(timer, "Issuer's proof created"); @@ -830,7 +830,7 @@ double* testCLGroups() { timers[timer++] = printTimer(timer, "CL signature prover created"); startTimer(); - ProofMessage* sigProof = prover.getProof(sig, secretExps, publics, + Ptr sigProof = prover.getProof(sig, secretExps, publics, hashAlg); timers[timer++] = printTimer(timer, "Proof of knowledge of CL signature " "created"); @@ -859,14 +859,14 @@ double* testVE() { // later will just save and load, but for now make keys from scratch VEDecrypter decrypter(m, modLength, stat); - VEPublicKey* pk = decrypter.getPK(); + Ptr pk = decrypter.getPK(); // set up the prover VEProver prover(pk); // need all commitment values and such // XXX: need test where this group can be of any form - GroupRSA* rsaGroup = new GroupRSA("bank", modLength, stat); // f_3 + Ptr rsaGroup = new GroupRSA("bank", modLength, stat); // f_3 rsaGroup->addNewGenerator(); // gprime rsaGroup->addNewGenerator(); // hprime rsaGroup->addNewGenerator(); // f_1 @@ -918,7 +918,7 @@ double* testVE() { "encryption completed"); // also try it with a prime-order group - GroupPrime* primeGroup = new GroupPrime("bank", modLength, 2*stat, stat); + Ptr primeGroup = new GroupPrime("bank", modLength, 2*stat, stat); primeGroup->addNewGenerator(); primeGroup->addNewGenerator(); primeGroup->addNewGenerator(); @@ -1034,14 +1034,14 @@ double* testWithdraw() { // load bank and user from file BankTool bankTool("tool.80.bank"); - const BankParameters* params = new BankParameters("bank.80.params"); + Ptr params = new BankParameters("bank.80.params"); UserTool userTool("tool.80.user", params, "public.80.arbiter", "public.regular.80.arbiter"); /* startTimer(); BankTool bankTool(stat, lx, modLen, hashAlg, denoms); timers[timer++] = printTimer(timer, "BankTool created"); - const BankParameters *params = bankTool.getBankParameters(); + Ptr params = bankTool.getBankParameters(); // this is PK used for verifiable encryption startTimer(); @@ -1067,7 +1067,7 @@ double* testWithdraw() { // step 1: user sends bank the public key and desired wallet size ZZ userPK = userTool.getPublicKey(); // also uses tool for withdrawing - UserWithdrawTool* uwTool = userTool.getWithdrawTool(walletSize, coinDenom); + Ptr uwTool = userTool.getWithdrawTool(walletSize, coinDenom); // also sends partial commitment (in partial commitment to s') startTimer(); ZZ sPrimeCom = uwTool->createPartialCommitment(); @@ -1075,7 +1075,7 @@ double* testWithdraw() { cout << "Partial commitment size: " < bwTool = bankTool.getWithdrawTool(userPK, walletSize, coinDenom); // given commitment to s', computes full commitment to s = s' + r' startTimer(); @@ -1088,8 +1088,8 @@ double* testWithdraw() { // step 3: now, the user sends bank a proof of identity and a proof // from the CL signature protocol startTimer(); - ProofMessage* idProof = uwTool->initiateSignature(bankPart); - ProofMessage* clProof = uwTool->getCLProof(); + Ptr idProof = uwTool->initiateSignature(bankPart); + Ptr clProof = uwTool->getCLProof(); timers[timer++] = printTimer(timer, "User created proof of identity, as " "well as all commitments"); cout << "ID proof size: " << saveGZString(*idProof).size() << endl; @@ -1099,7 +1099,7 @@ double* testWithdraw() { // signature // bank also needs to send a proof of knowledge of 1/e startTimer(); - ProofMessage* pm = bwTool->sign(idProof, clProof); + Ptr pm = bwTool->sign(idProof, clProof); timers[timer++] = printTimer(timer, "Bank created PoK of 1/e and partial " "signature"); cout << "Bank proof size: " << saveGZString(*pm).size() << endl; @@ -1159,7 +1159,7 @@ double* testCoin() { startTimer(); // load bank and user from file BankTool bankTool("tool.80.bank"); - const BankParameters* params = new BankParameters("bank.80.params"); + Ptr params = new BankParameters("bank.80.params"); UserTool userTool("tool.80.user", params, "public.80.arbiter", "public.regular.80.arbiter"); // also load wallet @@ -1257,14 +1257,14 @@ double* testBuy() { hashalg_t hashAlg = Hash::SHA1; cipher_t encAlg = "aes-128-ctr"; - const BankParameters* params = new BankParameters("bank.80.params"); + Ptr params = new BankParameters("bank.80.params"); Wallet wallet("wallet.80", params); VEPublicKey vepk("public.80.arbiter"); ZZ R = RandomBits_ZZ(params->getCashGroup()->getOrderLength()); // just use random garbage for file - Buffer* ptext = new Buffer(string("randomdata01234567890123456789")); + Ptr ptext = new Buffer(string("randomdata01234567890123456789")); Hash::hash_t ptHash = ptext->hash(hashAlg, string(), Hash::TYPE_PLAIN); // create buyer and seller objects @@ -1273,13 +1273,13 @@ double* testBuy() { // step 1: seller gives ciphertext to buyer startTimer(); - EncBuffer* ctext = seller.encrypt(ptext, encAlg); + Ptr ctext = seller.encrypt(ptext, encAlg); // XXX: serializing ciphertexts doesn't really work timers[timer++] = printTimer(timer, "Seller created ciphertext"); // step 2: buyer creates contract and verifiable escrow startTimer(); - BuyMessage* buyMessage = buyer.buy(&wallet, ctext, ptHash, R); + Ptr buyMessage = buyer.buy(&wallet, ctext, ptHash, R); timers[timer++] = printTimer(timer, "Buyer created buy message"); cout << "Buy message size: " << saveGZString(*buyMessage).size() << endl; @@ -1293,7 +1293,7 @@ double* testBuy() { // test saving and loading BuyMessage string bmsg = saveGZString(*buyMessage); saveXML(make_nvp("BuyMessage", *buyMessage), "buym1.xml"); - BuyMessage* loadedBMsg = new BuyMessage(bmsg, params); + Ptr loadedBMsg = new BuyMessage(bmsg, params); saveXML(make_nvp("BuyMessage", *loadedBMsg), "buym2.xml"); cout << "Loaded Buy message size: " << saveGZString(*loadedBMsg).size() << endl; @@ -1341,7 +1341,7 @@ double* testBarter() { cipher_t encAlg = "aes-128-ctr", signAlg = "DSA"; int hashType = Hash::TYPE_PLAIN; - const BankParameters* params = new BankParameters("bank.80.params"); + Ptr params = new BankParameters("bank.80.params"); Wallet wallet("wallet.80", params); VEPublicKey vepk("public.80.arbiter"); VEPublicKey pk("public.regular.80.arbiter"); @@ -1353,14 +1353,14 @@ double* testBarter() { char bufA[1024], bufB[1024]; RAND_pseudo_bytes((unsigned char*) bufA, sizeof(bufA)); RAND_pseudo_bytes((unsigned char*) bufB, sizeof(bufB)); - Buffer* aData = new Buffer(bufA, sizeof(bufA)); - Buffer* bData = new Buffer(bufB, sizeof(bufB)); + Ptr aData = new Buffer(bufA, sizeof(bufA)); + Ptr bData = new Buffer(bufB, sizeof(bufB)); hash_t aHash = aData->hash(hashAlg, trackerHashKey, hashType); hash_t bHash = bData->hash(hashAlg, trackerHashKey, hashType); // want to generate a signing key startTimer(); - Signature::Key* signKey = Signature::Key::generateKey(signAlg); + Ptr signKey = Signature::Key::generateKey(signAlg); timers[timer++] = printTimer(timer, "Signature key generated"); // create initiator and responder objects @@ -1369,7 +1369,7 @@ double* testBarter() { // step 1: Alice sends Bob a setup message startTimer(); - FESetupMessage* setupMsg = alice.setup(&wallet, R, signAlg); + Ptr setupMsg = alice.setup(&wallet, R, signAlg); timers[timer++] = printTimer(timer, "Alice created setup message"); cout << "Setup size: " << saveGZString(*setupMsg).size() << endl; @@ -1380,21 +1380,21 @@ double* testBarter() { cout << "The setup message was valid" << endl; else cout << "Verification of the setup message failed" << endl; - EncBuffer* bCipher = bob.startRound(bData, encAlg); + Ptr bCipher = bob.startRound(bData, encAlg); timers[timer++] = printTimer(timer, "Bob checked setup message and " "sent back his ciphertext"); cout << "Bob ciphertext size: " << saveGZString(*bCipher).size() << endl; // step 3: Alice sends her ciphertext startTimer(); - EncBuffer* aCipher = alice.continueRound(aData, encAlg); + Ptr aCipher = alice.continueRound(aData, encAlg); timers[timer++] = printTimer(timer, "Alice sent back her own ciphertext"); cout << "Alice ciphertext size: " << saveGZString(*aCipher).size() << endl; // step 4: Alice continues by preparing and sending a contract and // an escrow of her key (and her signature on it) startTimer(); - FEMessage* message = alice.barter(bCipher, bHash, aHash); + Ptr message = alice.barter(bCipher, bHash, aHash); timers[timer++] = printTimer(timer, "Alice sent the contract for bartering"); cout << "Message size: " << saveGZString(*message).size() << endl; @@ -1428,21 +1428,21 @@ double* testBarter() { bob.reset(); // use new files - Buffer* aData2 = new Buffer(string("thisismysuperraddataalice00")); - Buffer* bData2 = new Buffer(string("thisismysuperraddatabob0000")); + Ptr aData2 = new Buffer(string("thisismysuperraddataalice00")); + Ptr bData2 = new Buffer(string("thisismysuperraddatabob0000")); hash_t aHash2 = aData2->hash(hashAlg, trackerHashKey, hashType); hash_t bHash2 = bData2->hash(hashAlg, trackerHashKey, hashType); startTimer(); - EncBuffer* bCipher2 = bob.startRound(bData2, encAlg); + Ptr bCipher2 = bob.startRound(bData2, encAlg); timers[timer++] = printTimer(timer, "Bob sent his second ciphertext"); startTimer(); - EncBuffer* aCipher2 = alice.continueRound(aData2, encAlg); + Ptr aCipher2 = alice.continueRound(aData2, encAlg); timers[timer++] = printTimer(timer, "Alice sent her second ciphertext"); startTimer(); - FEMessage* message2 = alice.barter(bCipher2, bHash2, aHash2); + Ptr message2 = alice.barter(bCipher2, bHash2, aHash2); timers[timer++] = printTimer(timer, "Alice sent her message for the " "second set of files"); @@ -1485,7 +1485,7 @@ double* testBuyWithSetup() { string signAlg = "DSA", encAlg = "aes-128-ctr"; int hashType = Hash::TYPE_PLAIN; - const BankParameters* params = new BankParameters("bank.80.params"); + Ptr params = new BankParameters("bank.80.params"); Wallet wallet("wallet.80", params); VEPublicKey vepk("public.80.arbiter"); VEPublicKey pk("public.regular.80.arbiter"); @@ -1496,12 +1496,12 @@ double* testBuyWithSetup() { // get random files for Alice and Bob char bufB[1024]; RAND_pseudo_bytes((unsigned char*) bufB, sizeof(bufB)); - Buffer* data = new Buffer(bufB, sizeof(bufB)); + Ptr data = new Buffer(bufB, sizeof(bufB)); hash_t hash = data->hash(hashAlg, trackerHashKey, hashType); // want to generate a signing key startTimer(); - Signature::Key* signKey = Signature::Key::generateKey(signAlg); + Ptr signKey = Signature::Key::generateKey(signAlg); timers[timer++] = printTimer(timer, "Signature key generated"); // create initiator and responder objects @@ -1510,21 +1510,21 @@ double* testBuyWithSetup() { // step 1: Alice sends Bob a setup message startTimer(); - FESetupMessage* setupMsg = alice.setup(&wallet, R, signAlg); + Ptr setupMsg = alice.setup(&wallet, R, signAlg); timers[timer++] = printTimer(timer, "Alice created setup message"); cout << "Setup size: " << saveGZString(*setupMsg).size() << endl; // step 2: Bob checks setup message and outputs his ciphertext startTimer(); bob.setup(setupMsg, R); - EncBuffer* ctext = bob.startRound(data, encAlg); + Ptr ctext = bob.startRound(data, encAlg); timers[timer++] = printTimer(timer, "Bob checked setup message and " "output ciphertext"); cout << "Ciphertext size: " << saveGZString(*ctext).size() << endl; // step 3: Alice decides to buy startTimer(); - FEMessage* msg = alice.buy(ctext, hash); + Ptr msg = alice.buy(ctext, hash); timers[timer++] = printTimer(timer, "Alice decided to buy and sent contract"); cout << "Message size: " << saveGZString(*msg).size() << endl; @@ -1572,7 +1572,7 @@ double* testBuyResolution() { VEDecrypter decrypter(&pk, &sk); BankTool bankTool("tool.80.bank"); - const BankParameters* params = new BankParameters("bank.80.params"); + Ptr params = new BankParameters("bank.80.params"); Wallet wallet("wallet.80", params); string trackerHashKey = vepk.getHashKey(); @@ -1580,7 +1580,7 @@ double* testBuyResolution() { char buf[1024]; RAND_pseudo_bytes((unsigned char*) buf, sizeof(buf)); - Buffer* ptext = new Buffer(buf, sizeof(buf)); + Ptr ptext = new Buffer(buf, sizeof(buf)); hash_t ptHash = ptext->hash(hashAlg, trackerHashKey, hashType); // now let's create our buyer and seller objects @@ -1589,12 +1589,12 @@ double* testBuyResolution() { // step 1: seller gives ciphertext to buyer startTimer(); - EncBuffer* ctext = seller.encrypt(ptext, encAlg); + Ptr ctext = seller.encrypt(ptext, encAlg); timers[timer++] = printTimer(timer, "Seller created ciphertext"); // step 2: buyer creates contract and verifiable escrow startTimer(); - BuyMessage* buyMessage = buyer.buy(&wallet, ctext, ptHash, R); + Ptr buyMessage = buyer.buy(&wallet, ctext, ptHash, R); timers[timer++] = printTimer(timer, "Buyer created buy message"); // step 3: seller checks contract and escrow, returns key(s) if valid @@ -1630,7 +1630,7 @@ double* testBuyResolution() { // step 3: the seller prepares a proof that his keys are valid startTimer(); - MerkleProof* proof = seller.resolveII(chal); + Ptr proof = seller.resolveII(chal); timers[timer++] = printTimer(timer, "The seller sent his proof back to " "the arbiter"); @@ -1662,7 +1662,7 @@ double* testBarterResolution() { cipher_t encAlg = "aes-128-ctr", signAlg = "DSA"; int hashType = Hash::TYPE_PLAIN; - const BankParameters* params = new BankParameters("bank.80.params"); + Ptr params = new BankParameters("bank.80.params"); Wallet wallet("wallet.80", params); VEPublicKey vepk("public.80.arbiter"); @@ -1680,14 +1680,14 @@ double* testBarterResolution() { char bufA[1024], bufB[1024]; RAND_pseudo_bytes((unsigned char*) bufA, sizeof(bufA)); RAND_pseudo_bytes((unsigned char*) bufB, sizeof(bufB)); - Buffer* aData = new Buffer(bufA, sizeof(bufA)); - Buffer* bData = new Buffer(bufB, sizeof(bufB)); + Ptr aData = new Buffer(bufA, sizeof(bufA)); + Ptr bData = new Buffer(bufB, sizeof(bufB)); hash_t aHash = aData->hash(hashAlg, trackerHashKey, hashType); hash_t bHash = bData->hash(hashAlg, trackerHashKey, hashType); // want to generate a signing key startTimer(); - Signature::Key* signKey = Signature::Key::generateKey(signAlg); + Ptr signKey = Signature::Key::generateKey(signAlg); timers[timer++] = printTimer(timer, "Signature key generated"); // create initiator and responder objects @@ -1696,7 +1696,7 @@ double* testBarterResolution() { // step 1: Alice sends Bob a setup message startTimer(); - FESetupMessage* setupMsg = alice.setup(&wallet, R, signAlg); + Ptr setupMsg = alice.setup(&wallet, R, signAlg); timers[timer++] = printTimer(timer, "Alice created setup message"); // step 2: Bob checks setup message and outputs his file ciphertext @@ -1706,19 +1706,19 @@ double* testBarterResolution() { cout << "The setup message was valid" << endl; else cout << "Verification of the setup message failed" << endl; - EncBuffer* bCipher = bob.startRound(bData, encAlg); + Ptr bCipher = bob.startRound(bData, encAlg); timers[timer++] = printTimer(timer, "Bob checked setup message and sent " "back his ciphertext"); // step 3: Alice sends her ciphertext startTimer(); - EncBuffer* aCipher = alice.continueRound(aData, encAlg); + Ptr aCipher = alice.continueRound(aData, encAlg); timers[timer++] = printTimer(timer, "Alice sent back her own ciphertext"); // step 4: Alice continues by preparing and sending a contract and // an escrow of her key (and her signature on it) startTimer(); - FEMessage* message = alice.barter(bCipher, bHash, aHash); + Ptr message = alice.barter(bCipher, bHash, aHash); timers[timer++] = printTimer(timer, "Alice sent the contract for bartering"); // step 5: Bob receives Alice's ciphertext and contract and checks @@ -1736,7 +1736,7 @@ double* testBarterResolution() { // step 1: responder sends request to arbiter startTimer(); - FEResolutionMessage* req = bob.resolveI(); + Ptr req = bob.resolveI(); timers[timer++] = printTimer(timer, "Bob sent resolution request to " "the arbiter"); @@ -1747,7 +1747,7 @@ double* testBarterResolution() { // step 3: Bob sends proof that his keys are valid startTimer(); - MerkleProof* proof = bob.resolveII(chal); + Ptr proof = bob.resolveII(chal); timers[timer++] = printTimer(timer, "Bob sent a proof that his keys " "were valid"); @@ -1774,7 +1774,7 @@ double* testBarterResolution() { // step 5: if Alice's key wasn't valid, Bob needs to prove this to // the arbiter startTimer(); - MerkleProof* badKeyProof = bob.resolveIII(aKey); + Ptr badKeyProof = bob.resolveIII(aKey); // step 6: finally, if Bob's proof (of Alice's bad key) is correct, // the arbiter will give him the endorsement @@ -1802,8 +1802,8 @@ double* testSerializeAbstract() { double* timers = new double[MAX_TIMERS]; // test serializing base and derived pointers istringstream iss(string("g^x")); - ZKPLexer* lexer = new ZKPLexer(iss); - ZKPParser* parser = new ZKPParser(*lexer); + Ptr lexer = new ZKPLexer(iss); + Ptr parser = new ZKPParser(*lexer); ASTExprPtr n = parser->expr(); cout << "type of expr: " << type_to_str(typeid(*n)) << endl; diff --git a/src/UserTool.cpp b/src/UserTool.cpp index 04eb82d..ba108f9 100644 --- a/src/UserTool.cpp +++ b/src/UserTool.cpp @@ -1,12 +1,12 @@ #include "UserTool.h" -UserTool::UserTool(int st, int l, const BankParameters *bp, +UserTool::UserTool(int st, int l, Ptr bp, const VEPublicKey &vPK, const VEPublicKey &rPK, const hashalg_t &ha) : stat(st), lx(l), bankParameters(new BankParameters(*bp)), vepk(vPK), pk(rPK), hashAlg(ha) { - const GroupPrime* cashGroup = bankParameters->getCashGroup(); + Ptr cashGroup = bankParameters->getCashGroup(); userSecretKey = cashGroup->randomExponent(); // now compute user public key = g^sk_u diff --git a/src/UserTool.h b/src/UserTool.h index 210832e..a684274 100644 --- a/src/UserTool.h +++ b/src/UserTool.h @@ -11,20 +11,20 @@ class UserTool { public: - UserTool(int st, int l, const BankParameters *bp, + UserTool(int st, int l, Ptr bp, const VEPublicKey &arbiterVPK, const VEPublicKey &arbiterPK, const hashalg_t &ha); UserTool(const UserTool &o) : stat(o.stat), lx(o.lx), - bankParameters(new BankParameters(*o.bankParameters)), + bankParameters(o.bankParameters), vepk(o.vepk), pk(o.pk), userSecretKey(o.userSecretKey), userPublicKey(o.userPublicKey), hashAlg(o.hashAlg), idProof(o.idProof) {} - UserTool(const char *fname, const BankParameters *bp, + UserTool(const char *fname, Ptr bp, const char *fnameVEPK, const char *fnamePK) - : bankParameters(new BankParameters(*bp)), vepk(fnameVEPK), pk(fnamePK) + : bankParameters(bp), vepk(fnameVEPK), pk(fnamePK) { loadFile(make_nvp("UserTool", *this), fname); } // XXX: this was causing a seg fault... @@ -32,35 +32,37 @@ class UserTool { // getters ZZ getPublicKey() const { return userPublicKey; } - const VEPublicKey *getVEPublicKey() const { return &vepk; } + Ptr getVEPublicKey() const { return &vepk; } SigmaProof getIdentityProof() const { return idProof; } - const BankParameters* getBankParameters() const { return bankParameters; } + Ptr getBankParameters() const { return bankParameters; } - UserWithdrawTool* getWithdrawTool(int walletSize, int coinDenom) const { - return new UserWithdrawTool(stat, lx, bankParameters, - userPublicKey, userSecretKey, - hashAlg, walletSize, coinDenom); - } + Ptr getWithdrawTool(int walletSize, int coinDenom) const { + return Ptr( + new UserWithdrawTool(stat, lx, bankParameters, + userPublicKey, userSecretKey, + hashAlg, walletSize, coinDenom) + ); + } /* Factory functions for user */ - Buyer* getBuyer(time_t timeout) const - { return new Buyer(timeout, &vepk, stat); } + Ptr getBuyer(time_t timeout) const + { return Ptr(new Buyer(timeout, &vepk, stat)); } - Seller* getSeller(time_t timeout, int timeoutTolerance) const - { return new Seller(timeout, timeoutTolerance, &vepk, stat); } + Ptr getSeller(time_t timeout, int timeoutTolerance) const + { return Ptr(new Seller(timeout, timeoutTolerance, &vepk, stat)); } - Seller* getSeller(EncBuffer* ctext, int t, int timeoutTolerance) const - { return new Seller(ctext, t, timeoutTolerance, &vepk, stat); } + Ptr getSeller(Ptr ctext, int t, int timeoutTolerance) const + { return Ptr(new Seller(ctext, t, timeoutTolerance, &vepk, stat)); } - FEInitiator* getFEInitiator(time_t timeout) const - { return new FEInitiator(timeout, &vepk, &pk, stat); } + Ptr getFEInitiator(time_t timeout) const + { return Ptr(new FEInitiator(timeout, &vepk, &pk, stat)); } - FEResponder* getFEResponder(time_t t, int tolerance) const - { return new FEResponder(t, tolerance, &vepk, &pk, stat); } + Ptr getFEResponder(time_t t, int tolerance) const + { return Ptr(new FEResponder(t, tolerance, &vepk, &pk, stat)); } private: int stat, lx; - const BankParameters *bankParameters; + Ptr bankParameters; VEPublicKey vepk; VEPublicKey pk; ZZ userSecretKey; diff --git a/src/UserWithdrawTool.cpp b/src/UserWithdrawTool.cpp index 59eb5aa..e744c4f 100644 --- a/src/UserWithdrawTool.cpp +++ b/src/UserWithdrawTool.cpp @@ -3,7 +3,7 @@ #include "MultiExp.h" #include "Timer.h" -UserWithdrawTool::UserWithdrawTool(int st, int l, const BankParameters *bp, +UserWithdrawTool::UserWithdrawTool(int st, int l, Ptr bp, const ZZ &userPK, const ZZ &userSK, const hashalg_t &ha, int ws, int denom) : stat(st), lx(l), bankParameters(bp), userSecretKey(userSK), @@ -25,7 +25,7 @@ UserWithdrawTool::~UserWithdrawTool() { } ZZ UserWithdrawTool::createPartialCommitment() { - const GroupPrime* cashGroup = bankParameters->getCashGroup(); + Ptr cashGroup = bankParameters->getCashGroup(); // pick s' and t : s' and t should be in (Z, *, primeOrder) // ie. 1 <= s', t < primeOrder // where primeOrder is the order of the primeOrder group used for wallet @@ -77,7 +77,7 @@ ZZ UserWithdrawTool::createPartialCommitment() { return sPrimeCom; } -ProofMessage* UserWithdrawTool::initiateSignature(const ZZ &bankPart) { +Ptr UserWithdrawTool::initiateSignature(const ZZ &bankPart) { bankContribution = bankPart; createSignatureRecipient(); return preSignatureProof(); @@ -92,7 +92,7 @@ vector UserWithdrawTool::getIndividualCommitments() { return privateComs; } -ProofMessage* UserWithdrawTool::getCLProof() const { +Ptr UserWithdrawTool::getCLProof() const { vector > secrets; // first sk_u, then s, then t secrets.push_back(make_pair(userSecretKey, partialCommitment[0])); @@ -101,7 +101,7 @@ ProofMessage* UserWithdrawTool::getCLProof() const { return signatureRecipient->getC(secrets, hashAlg); } -ProofMessage* UserWithdrawTool::preSignatureProof() { +Ptr UserWithdrawTool::preSignatureProof() { // need to prove that commitment to sk_u and public key contain // the same value in the exponent InterpreterProver prover; @@ -114,7 +114,7 @@ ProofMessage* UserWithdrawTool::preSignatureProof() { v["pk_u"] = userPublicKey; v["sk_u"] = userSecretKey; prover.compute(v); - return new ProofMessage(prover.getPublicVariables(), + return make_shared(prover.getPublicVariables(), prover.computeProof(hashAlg)); } @@ -126,7 +126,7 @@ void UserWithdrawTool::createSignatureRecipient() { } // compute s = s' + r' - const GroupPrime* cGroup = bankParameters->getCashGroup(); + Ptr cGroup = bankParameters->getCashGroup(); ZZ sPrime = partialCommitment[2]; ZZ s = AddMod(sPrime, bankContribution, cGroup->getOrder()); this->s = s; @@ -143,9 +143,9 @@ void UserWithdrawTool::createSignatureRecipient() { // 3 private messages: sk_u, s, t // 1 public message: walletSize - const GroupRSA* pk = bankParameters->getBankKey(coinDenom); - const GroupPrime* comGroup = bankParameters->getCashGroup(); - signatureRecipient = new CLBlindRecipient(pk, comGroup, lx, coms, 3, 1); + Ptr pk = bankParameters->getBankKey(coinDenom); + Ptr comGroup = bankParameters->getCashGroup(); + signatureRecipient = make_shared(pk, comGroup, lx, coms, 3, 1); printTimer("[UserWithdrawTool] created recipient"); } diff --git a/src/UserWithdrawTool.h b/src/UserWithdrawTool.h index 6422cf1..ccfb4a4 100644 --- a/src/UserWithdrawTool.h +++ b/src/UserWithdrawTool.h @@ -12,7 +12,7 @@ class UserWithdrawTool { public: - UserWithdrawTool(int stat, int lx, const BankParameters *bp, + UserWithdrawTool(int stat, int lx, Ptr bp, const ZZ &userPK, const ZZ &userSK, const hashalg_t &hashAlg, int walletSize, int denom); @@ -37,13 +37,13 @@ class UserWithdrawTool { /*! returns a SigmaProof that the first secret in the commitment * C (from the CLBlindRecipient) is the user's secret Key */ - ProofMessage* initiateSignature(const ZZ &bankContribution); + Ptr initiateSignature(const ZZ &bankContribution); /*! return individual commitments to private messages */ vector getIndividualCommitments(); /*! return randomized proof from signature recipient */ - ProofMessage* getCLProof() const; + Ptr getCLProof() const; /*! verifies bank's PoKoDLR of 1/e and returns signature if * it is valid */ @@ -66,12 +66,12 @@ class UserWithdrawTool { /*! returns a SigmaProof that the A_sku commitment in the partial * commitment is the user's secret Key */ - ProofMessage* preSignatureProof(); + Ptr preSignatureProof(); ZZ s; // stored so we can use it to get wallet int stat, lx; - const BankParameters *bankParameters; - const GroupPrime *userKeyGroup; + Ptr bankParameters; + Ptr userKeyGroup; ZZ userSecretKey; ZZ userPublicKey; @@ -83,7 +83,7 @@ class UserWithdrawTool { vector partialCommitment; ZZ bankContribution; - CLBlindRecipient *signatureRecipient; + Ptr signatureRecipient; // store whether or not bank's PoK of 1/e is valid bool verified; diff --git a/src/VEDecrypter.cpp b/src/VEDecrypter.cpp index c8e6e42..a346931 100644 --- a/src/VEDecrypter.cpp +++ b/src/VEDecrypter.cpp @@ -10,12 +10,12 @@ VEDecrypter::VEDecrypter(const int m, const int modLength, const int stat) { } VEDecrypter::VEDecrypter(const int m, const int modLength, const int stat, - GroupRSA* auxGroup) { + Ptr auxGroup) { setup(m, modLength, stat, auxGroup); } void VEDecrypter::setup(const int m, const int modLength, - const int stat, GroupRSA* auxGroup) { + const int stat, Ptr auxGroup) { GroupRSA group1("arbiter", modLength, stat); ZZ bigN = group1.getModulus(); ZZ bigP = group1.getP(); @@ -26,7 +26,7 @@ void VEDecrypter::setup(const int m, const int modLength, while (GCD(f0, bigNsquared) != 1) { f0 = RandomBnd(bigNsquared); } - GroupSquareMod* grp = new GroupSquareMod("arbiter", bigNsquared, stat); + Ptr grp = make_shared("arbiter", bigNsquared, stat); group_map g; variable_map v; g["RSAGroup"] = &group1; @@ -58,7 +58,7 @@ void VEDecrypter::setup(const int m, const int modLength, xs[m] = env.variables.at("y"); xs[m+1] = env.variables.at("z"); - GroupRSA *group2; + Ptr group2; // if we weren't given a group, make one if (auxGroup == 0) { group2 = createSecondGroup(m, modLength, stat); @@ -70,19 +70,19 @@ void VEDecrypter::setup(const int m, const int modLength, ZZ n = group2->getModulus(); ZZ p = group2->getP(); ZZ q = n / p; - sk = new VESecretKey(bigP, bigQ, xs, p, q); + sk = make_shared(bigP, bigQ, xs, p, q); group2->clearSecrets(); // XXX obviously this will not stay with hashKey as "" string hashKey = ""; // won't call HMAC hashalg_t hashAlg = Hash::SHA1; // XXX should be input parameter - pk = new VEPublicKey(bigN, as, b, d, e, f, *group2, hashAlg, hashKey); + pk = make_shared(bigN, as, b, d, e, f, *group2, hashAlg, hashKey); } -GroupRSA* VEDecrypter::createSecondGroup(const int m, const int modLength, +Ptr VEDecrypter::createSecondGroup(const int m, const int modLength, const int stat) { // now initialize second group - GroupRSA *group2 = new GroupRSA("arbiter", modLength, stat); + Ptr group2 = make_shared("arbiter", modLength, stat); for (int i = 0; i < m; i++) { // create m additional generators group2->addNewGenerator(); diff --git a/src/VEDecrypter.h b/src/VEDecrypter.h index 5d84158..1d0076b 100644 --- a/src/VEDecrypter.h +++ b/src/VEDecrypter.h @@ -20,11 +20,11 @@ class VEDecrypter { * appropriate RSA group will be created in the course of the setup */ VEDecrypter(const int m, const int modLength, const int stat); VEDecrypter(const int m, const int modLength, const int stat, - GroupRSA* auxGroup); + Ptr auxGroup); /*! also allow the setup to be done elsewhere and the decrypter to * just be handed the public/secret keys */ - VEDecrypter(VEPublicKey *p, VESecretKey *s) : pk(p), sk(s) {} + VEDecrypter(Ptr p, Ptr s) : pk(p), sk(s) {} /*! copy constructor */ VEDecrypter(const VEDecrypter& o) : pk(o.pk), sk(o.sk) {} @@ -38,21 +38,21 @@ class VEDecrypter { const string &label, const hashalg_t &hashAlg) const; // getters - VEPublicKey* getPK() { return pk; } - VESecretKey* getSK() { return sk; } + Ptr getPK() { return pk; } + Ptr getSK() { return sk; } private: /*! does the key generation for verifiable encryption (so sets the * public and secret keys) */ void setup(const int m, const int modLength, const int stat, - GroupRSA* auxGroup); + Ptr auxGroup); /*! creates a group with the appropriate number of generators and * modLength */ - GroupRSA* createSecondGroup(const int m, const int modLength, - const int stat); - VEPublicKey *pk; - VESecretKey *sk; + Ptr createSecondGroup(const int m, const int modLength, + const int stat); + Ptr pk; + Ptr sk; }; #endif /*VEDECRYPTER_H_*/ diff --git a/src/VEProver.cpp b/src/VEProver.cpp index eef5ef1..5b99564 100644 --- a/src/VEProver.cpp +++ b/src/VEProver.cpp @@ -11,9 +11,9 @@ vector VEProver::encrypt(const vector &messages, const string &label, Environment e; // first create and give in our group ZZ bigN = pk->getN(); - e.groups["RSAGroup"] = new GroupRSA("arbiter", bigN, stat); + e.groups["RSAGroup"] = make_shared("arbiter", bigN, stat); ZZ bigNSquared = power(bigN, 2); - e.groups["G"] = new GroupSquareMod("arbiter", bigNSquared, stat); + e.groups["G"] = make_shared("arbiter", bigNSquared, stat); // now add in elements e.variables["f"] = pk->getF(); e.variables["b"] = pk->getB(); @@ -82,14 +82,14 @@ vector VEProver::encrypt(const vector &messages, const string &label, VECiphertext VEProver::verifiableEncrypt(const ZZ &commitment, const vector &opening, - const Group* grp, const string &label, + Ptr grp, const string &label, const hashalg_t &hashAlg, int stat) { // if we run encrypt, environment will have most of the information we need vector ciphertext = encrypt(opening, label, hashAlg, stat); // now need some more group information env.groups["cashGroup"] = grp; - const GroupRSA* second = new GroupRSA(pk->getSecondGroup()); + Ptr second = make_shared(pk->getSecondGroup()); env.groups["secondGroup"] = second; env.variables["X"] = commitment; diff --git a/src/VEProver.h b/src/VEProver.h index 0513e71..f2e76b3 100644 --- a/src/VEProver.h +++ b/src/VEProver.h @@ -13,7 +13,7 @@ class VEProver { public: /*! constructor: takes in a VE public key as generated by the * arbiter (decrypter) */ - VEProver(const VEPublicKey* pk) : pk(pk) {} + VEProver(Ptr pk) : pk(pk) {} /*! copy constructor */ VEProver(const VEProver& o) : pk(o.pk) {} @@ -32,14 +32,14 @@ class VEProver { * proof that this is true. */ VECiphertext verifiableEncrypt(const ZZ &commitment, const vector &opening, - const Group* grp, const string &label, + Ptr grp, const string &label, const hashalg_t &hashAlg, int stat); vector encrypt(const vector &messages, const string &label, const hashalg_t &hashAlg, int stat); private: - const VEPublicKey* pk; + Ptr pk; Environment env; }; diff --git a/src/VEVerifier.cpp b/src/VEVerifier.cpp index ecd3046..52dd3e8 100644 --- a/src/VEVerifier.cpp +++ b/src/VEVerifier.cpp @@ -5,7 +5,7 @@ #include "Timer.h" bool VEVerifier::verify(const VECiphertext& text, const ZZ& x, - const Group *grp, const string& label, + Ptr grp, const string& label, const hashalg_t& hashAlg, int stat) { // set everything up (a lot like the prover side) Environment env; @@ -25,10 +25,10 @@ bool VEVerifier::verify(const VECiphertext& text, const ZZ& x, // set up all groups env.groups["cashGroup"] = grp; ZZ bigN = pk->getN(); - env.groups["RSAGroup"] = new GroupRSA("arbiter", bigN, stat); + env.groups["RSAGroup"] = make_shared("arbiter", bigN, stat); ZZ bigNSquared = power(bigN, 2); - env.groups["G"] = new GroupSquareMod("arbiter", bigNSquared, stat); - const GroupRSA* second = new GroupRSA(pk->getSecondGroup()); + env.groups["G"] = make_shared("arbiter", bigNSquared, stat); + Ptr second = make_shared(pk->getSecondGroup()); env.groups["secondGroup"] = second; input_map inputs; inputs["m"] = text.getCiphertext().size() - 2; diff --git a/src/VEVerifier.h b/src/VEVerifier.h index c7b77fb..a5353ea 100644 --- a/src/VEVerifier.h +++ b/src/VEVerifier.h @@ -8,7 +8,7 @@ class VEVerifier { public: /*! constructor takes in the decrypter's public key */ - VEVerifier(const VEPublicKey *pk) : pk(pk) {} + VEVerifier(Ptr pk) : pk(pk) {} /*! copy constructor */ VEVerifier(const VEVerifier &original) : pk(original.pk) {} @@ -19,11 +19,11 @@ class VEVerifier { /*! given the output of a VEProver, checks to see that it is correct * (i.e. accepts or rejects the proof that the value contained in the * ciphertext corresponds to the opening of commitment x) */ - bool verify(const VECiphertext &text, const ZZ &x, const Group* grp, + bool verify(const VECiphertext &text, const ZZ &x, Ptr grp, const string &label, const hashalg_t &hashAlg, int stat); private: - const VEPublicKey* pk; + Ptr pk; }; #endif /*_VEVERIFIER_H_*/ diff --git a/src/Wallet.cpp b/src/Wallet.cpp index e377695..d26d274 100644 --- a/src/Wallet.cpp +++ b/src/Wallet.cpp @@ -2,7 +2,7 @@ #include "Wallet.h" Wallet::Wallet(const ZZ &sk, const ZZ &sIn, const ZZ &tIn, int size, - int d, const BankParameters* bp, int st, int l, + int d, Ptr bp, int st, int l, const hashalg_t &alg, const vector &sig) : sk_u(sk), s(sIn), t(tIn), walletSize(size), coinDenom(d), numCoinsUsed(0), params(bp), stat(st), lx(l), hashAlg(alg), @@ -48,18 +48,15 @@ int Wallet::nextCoinIndex() { return spendOrder[numCoinsUsed++]; } -Coin Wallet::nextCoin(const ZZ &rValue) { +Ptr Wallet::nextCoin(const ZZ &rValue) { int i = nextCoinIndex(); - Coin* c = newCoin(rValue, i); - Coin ret(*c); - delete c; - return ret; + return newCoin(rValue, i); } -Coin* Wallet::newCoin(const ZZ &rValue, int coinIndex) { - return new Coin(params, walletSize, coinIndex, - sk_u, s, t, signature, stat, - lx, rValue, coinDenom, hashAlg); +Ptr Wallet::newCoin(const ZZ &rValue, int coinIndex) { + return make_shared(params, walletSize, coinIndex, + sk_u, s, t, signature, stat, + lx, rValue, coinDenom, hashAlg); } void Wallet::newCoin(Coin& coin, const ZZ &rValue, int coinIndex) { diff --git a/src/Wallet.h b/src/Wallet.h index b9002b9..2c1037c 100644 --- a/src/Wallet.h +++ b/src/Wallet.h @@ -5,16 +5,15 @@ #include "Coin.h" class Wallet { - public: Wallet(const ZZ &sk, const ZZ &sIn, const ZZ &tIn, int size, - int d, const BankParameters* b, int st, int l, + int d, Ptr b, int st, int l, const hashalg_t &alg, const vector &sig); Wallet(const Wallet &o); /*! constructor to load from file */ - Wallet(const char* fname, const BankParameters* bp) + Wallet(const char* fname, Ptr bp) : params(bp) { loadFile(make_nvp("Wallet", *this), fname); } @@ -23,10 +22,10 @@ class Wallet { int nextCoinIndex(); /*! returns the next coin to use */ - Coin nextCoin(const ZZ &R); + Ptr nextCoin(const ZZ &R); /*! returns a coin for a given index */ - Coin* newCoin(const ZZ &R, int coinIndex); + Ptr newCoin(const ZZ &R, int coinIndex); void newCoin(Coin& coin, const ZZ &R, int coinIndex); bool replaceCoin(ZZ &index); @@ -45,7 +44,7 @@ class Wallet { int coinDenom; int numCoinsUsed; - const BankParameters* params; + Ptr params; int stat; int lx; hashalg_t hashAlg; diff --git a/src/ZKP/ASTNode.cpp b/src/ZKP/ASTNode.cpp index 90147c5..5882454 100644 --- a/src/ZKP/ASTNode.cpp +++ b/src/ZKP/ASTNode.cpp @@ -130,9 +130,9 @@ ZZ ASTAdd::eval(Environment &env) { return lhs->eval(env) + rhs->eval(env); } else { - const Group* lGroup = env.groups.at(leftInfo.group); - const Group* rGroup = env.groups.at(rightInfo.group); - const Group* retGroup = (lGroup != 0 ? lGroup : rGroup); + Ptr lGroup = env.groups.at(leftInfo.group); + Ptr rGroup = env.groups.at(rightInfo.group); + Ptr retGroup = (lGroup != 0 ? lGroup : rGroup); assert(retGroup); ZZ mod = retGroup->getModulus(); return AddMod(lhs->eval(env), rhs->eval(env), mod); @@ -151,9 +151,9 @@ ZZ ASTSub::eval(Environment &env) { return lhs->eval(env) - rhs->eval(env); } else { - const Group* lGroup = env.groups.at(leftInfo.group); - const Group* rGroup = env.groups.at(rightInfo.group); - const Group* retGroup = (lGroup != 0 ? lGroup : rGroup); + Ptr lGroup = env.groups.at(leftInfo.group); + Ptr rGroup = env.groups.at(rightInfo.group); + Ptr retGroup = (lGroup != 0 ? lGroup : rGroup); assert(retGroup); ZZ mod = retGroup->getModulus(); return SubMod(lhs->eval(env), rhs->eval(env), mod); @@ -172,9 +172,9 @@ ZZ ASTMul::eval(Environment &env) { return lhs->eval(env) * rhs->eval(env); } else { - const Group* lGroup = env.groups.at(leftInfo.group); - const Group* rGroup = env.groups.at(rightInfo.group); - const Group* retGroup = (lGroup != 0 ? lGroup : rGroup); + Ptr lGroup = env.groups.at(leftInfo.group); + Ptr rGroup = env.groups.at(rightInfo.group); + Ptr retGroup = (lGroup != 0 ? lGroup : rGroup); assert(retGroup); ZZ mod = retGroup->getModulus(); return MulMod(lhs->eval(env), rhs->eval(env), mod); @@ -187,9 +187,9 @@ ZZ ASTDiv::eval(Environment &env) { VarInfo rightInfo = p.second; // XXX: this will cause a problem if we ever try to use // it during constant propagation/substitution - const Group* lGroup = env.groups.at(leftInfo.group); - const Group* rGroup = env.groups.at(rightInfo.group); - const Group* retGroup = (lGroup != 0 ? lGroup : rGroup); + Ptr lGroup = env.groups.at(leftInfo.group); + Ptr rGroup = env.groups.at(rightInfo.group); + Ptr retGroup = (lGroup != 0 ? lGroup : rGroup); // integers can just be divided if ((lGroup == 0 && rGroup == 0) || (leftInfo.type == VarInfo::MODULUS @@ -227,7 +227,7 @@ ZZ ASTPow::eval(Environment &env) { info = lhs->getExprType(env); else info = env.exprTypes.at(lhs->toString()); - const Group* lGroup = env.groups.at(info.group); + Ptr lGroup = env.groups.at(info.group); // if base is an exponent or integer, do it over integers if (lGroup == 0 || info.type == VarInfo::EXPONENT) { return power(lhs->eval(env), to_int(rhs->eval(env))); diff --git a/src/ZKP/BindGroupValues.cpp b/src/ZKP/BindGroupValues.cpp index 07cccbc..de2bf1d 100644 --- a/src/ZKP/BindGroupValues.cpp +++ b/src/ZKP/BindGroupValues.cpp @@ -6,7 +6,7 @@ void BindGroupValues::applyASTDeclGroup(ASTDeclGroupPtr n) { string grpname = n->getGroup()->getName(); - const Group* grp = env.groups.at(grpname); + Ptr grp = env.groups.at(grpname); ASTListDeclPtr gens = n->getItems(); // first bind modulus if it has been specified diff --git a/src/ZKP/ComputationVisitor.cpp b/src/ZKP/ComputationVisitor.cpp index 8952d33..1d6f8fe 100644 --- a/src/ZKP/ComputationVisitor.cpp +++ b/src/ZKP/ComputationVisitor.cpp @@ -5,7 +5,7 @@ void ComputationVisitor::applyASTDeclRandExponents(ASTDeclRandExponentsPtr n) { ASTListDeclPtr exps = n->getExponents(); ASTIdentifierLitPtr grpname = n->getGroup(); - const Group* grp = env.groups.at(grpname->getName()); + Ptr grp = env.groups.at(grpname->getName()); ASTDeclIdentifierSubPtr exp; ASTDeclIDRangePtr expRange; diff --git a/src/ZKP/Environment.cpp b/src/ZKP/Environment.cpp index 267c677..bda29c1 100644 --- a/src/ZKP/Environment.cpp +++ b/src/ZKP/Environment.cpp @@ -37,7 +37,7 @@ void Environment::clearPrivates() { variables.erase(p.first); } -const Group* Environment::getGroup(const string &varName) const { +Ptr Environment::getGroup(const string &varName) const { try { return groups.at(varTypes.at(varName).group); } catch (std::out_of_range& e) { diff --git a/src/ZKP/Environment.h b/src/ZKP/Environment.h index ec811bb..39de1f0 100644 --- a/src/ZKP/Environment.h +++ b/src/ZKP/Environment.h @@ -40,7 +40,7 @@ struct DecompNames { std::size_t hash_value(const ZZ& n); typedef MAP_TYPE variable_map; -typedef MAP_TYPE group_map; +typedef MAP_TYPE > group_map; typedef MAP_TYPE commitment_map; typedef MAP_TYPE dlr_map; typedef MAP_TYPE > decomp_map; @@ -131,7 +131,7 @@ class Environment { void clearPrivates(); /*! gets group object for a given variable */ - const Group* getGroup(const string &varName) const; + Ptr getGroup(const string &varName) const; /*! gets commitment description for a given committed variable * whose value has already been computed */ diff --git a/src/ZKP/Interpreter.cpp b/src/ZKP/Interpreter.cpp index 4a637a3..f77b2da 100644 --- a/src/ZKP/Interpreter.cpp +++ b/src/ZKP/Interpreter.cpp @@ -139,7 +139,7 @@ void Interpreter::cachePowers() { vector baseNames; vector baseVals; DLRepresentation rep = it->second; - const Group* g = env.groups.at(rep.group); + Ptr g = env.groups.at(rep.group); for (unsigned i = 0; i < rep.bases.size(); i++) { string name = rep.bases[i]->toString(); baseNames.push_back(name); diff --git a/src/ZKP/InterpreterProver.cpp b/src/ZKP/InterpreterProver.cpp index c23bb4c..c654553 100644 --- a/src/ZKP/InterpreterProver.cpp +++ b/src/ZKP/InterpreterProver.cpp @@ -85,7 +85,7 @@ void InterpreterProver::decompose() { void InterpreterProver::formRandomExponents() { for (unsigned i = 0; i < env.randoms.size(); i++) { - const Group* grp = env.getGroup(env.randoms[i]); + Ptr grp = env.getGroup(env.randoms[i]); ZZ val = grp->randomExponent(); env.variables[env.randoms[i]] = val; } @@ -122,7 +122,7 @@ void InterpreterProver::computeIntermediateValues() { variable_map InterpreterProver::makeRandomizedExponents() { variable_map ret; // find a group which is type RSA, if none found just use first group - const Group* groupForRandomness = env.groups.begin()->second; + Ptr groupForRandomness = env.groups.begin()->second; for (group_map::iterator it = env.groups.begin(); it != env.groups.end(); ++it) { // remember that 0 is in the map to indicate 'no group' diff --git a/src/ZKP/ZKPTest.cpp b/src/ZKP/ZKPTest.cpp index 01bbbd0..0b9c29e 100644 --- a/src/ZKP/ZKPTest.cpp +++ b/src/ZKP/ZKPTest.cpp @@ -36,13 +36,13 @@ void setupEnvironment(Environment &e, const string& fname) { // hack for known examples: set up environment if (fname.find("ecash.txt") != string::npos) { - GroupPrime* cashG = new GroupPrime("bank", 1024, stat*2, stat); // init gen is f + Ptr cashG = new GroupPrime("bank", 1024, stat*2, stat); // init gen is f cashG->addNewGenerator(); // this is g cashG->addNewGenerator(); // this is h cashG->addNewGenerator(); // this is h1 cashG->addNewGenerator(); // this is h2 - GroupRSA* rangeG = new GroupRSA("first", 1024, stat); // first gen is g1 + Ptr rangeG = new GroupRSA("first", 1024, stat); // first gen is g1 rangeG->addNewGenerator(); // second gen is g2 e.groups["rangeGroup"] = rangeG; e.groups["cashGroup"] = cashG; @@ -57,7 +57,7 @@ void setupEnvironment(Environment &e, const string& fname) { } else if (fname.find("multiplication.txt") != string::npos) { - GroupPrime* cashG = new GroupPrime("bank", 1024, 2*stat, stat); // this is g + Ptr cashG = new GroupPrime("bank", 1024, 2*stat, stat); // this is g cashG->addNewGenerator(); // this is h e.groups["G"] = cashG; // let's go ahead and give in a and b @@ -73,15 +73,15 @@ void setupEnvironment(Environment &e, const string& fname) { || fname.find("declRange.txt") != string::npos || fname.find("compute.txt") != string::npos || fname.find("modulus.txt") != string::npos) { - GroupPrime* cashG = new GroupPrime("bank", 1024, stat*2, stat); + Ptr cashG = new GroupPrime("bank", 1024, stat*2, stat); cashG->addNewGenerator(); // this is h e.groups["G"] = cashG; if (fname.find("badDLR.txt") != string::npos) e.variables["J"] = to_ZZ(51); } else if (fname.find("range.txt") != string::npos || fname.find("complicatedRange.txt") != string::npos) { - GroupRSA* cashG = new GroupRSA("bank", 1024, stat); // this is g - //GroupPrime* cashG = new GroupPrime("bank", 1024, stat*2, stat); + Ptr cashG = new GroupRSA("bank", 1024, stat); // this is g + //Ptr cashG = new GroupPrime("bank", 1024, stat*2, stat); cashG->addNewGenerator(); // this is h e.groups["G"] = cashG; e.variables["J"] = to_ZZ(51); @@ -119,8 +119,8 @@ int main(int argc, char** argv) { ifstream ifs(vm["input-file"].as().c_str()); try { - ZKPLexer* lexer = new ZKPLexer(ifs); - ZKPParser* parser = new ZKPParser(*lexer); + Ptr lexer = new ZKPLexer(ifs); + Ptr parser = new ZKPParser(*lexer); ASTSpecPtr n = parser->spec(); if (n) { From 46145d69149b635369637c273bbf0eec5c00745a Mon Sep 17 00:00:00 2001 From: chris erway Date: Sat, 18 Dec 2010 18:55:29 -0500 Subject: [PATCH 02/31] use new_ptr instead of new (query-replace-regexp 'new \([A-Za-z:_]+\)' -> 'new_ptr<\1>' in all files) --- src/Arbiter.cpp | 30 ++++++----- src/Arbiter.h | 2 +- src/BankParameters.cpp | 6 +-- src/BankTool.cpp | 10 ++-- src/BankWithdrawTool.cpp | 2 +- src/Buyer.cpp | 8 +-- src/CLBlindIssuer.cpp | 2 +- src/CLBlindRecipient.cpp | 2 +- src/CLSignatureProver.cpp | 2 +- src/Ciphertext.cpp | 2 +- src/Ciphertext.h | 2 +- src/FEInitiator.cpp | 14 ++--- src/FEResponder.cpp | 40 +++++++------- src/FESetupMessage.h | 2 +- src/MerkleProver.cpp | 8 +-- src/Seller.cpp | 14 ++--- src/Seller.h | 2 +- src/Serialize.h | 3 +- src/Signature.cpp | 6 +-- src/Signature.h | 6 +-- src/Test.cpp | 70 ++++++++++++------------ src/UserTool.cpp | 2 +- src/UserTool.h | 18 +++---- src/UserWithdrawTool.cpp | 4 +- src/VEDecrypter.cpp | 8 +-- src/VEProver.cpp | 6 +-- src/VEVerifier.cpp | 6 +-- src/Wallet.cpp | 2 +- src/ZKP/ZKPTest.cpp | 16 +++--- src/new_ptr.hpp | 108 ++++---------------------------------- 30 files changed, 156 insertions(+), 247 deletions(-) diff --git a/src/Arbiter.cpp b/src/Arbiter.cpp index 3c69a34..8780c61 100644 --- a/src/Arbiter.cpp +++ b/src/Arbiter.cpp @@ -1,8 +1,6 @@ #include "Arbiter.h" #include "VECiphertext.h" -using boost::shared_ptr; - vector Arbiter::initiatorResolve(const ZZ &r){ return buyerResolve(r); } @@ -37,12 +35,14 @@ vector Arbiter::sellerResolveI(const ResolutionPair &keyMessagePair){ // return a set of challenges hash_t ptHash = contract.getPTHashB(); hash_t ctHash = contract.getCTHashB(); - ptVerifier = shared_ptr(new MerkleVerifier(ptHash, - contract.getNumPTHashBlocksB(), - MerkleContract(ptHash.key,ptHash.alg))); - ctVerifier = shared_ptr(new MerkleVerifier(ctHash, - contract.getNumCTHashBlocksB(), - MerkleContract(ctHash.key,ctHash.alg))); + ptVerifier = new_ptr( + ptHash, + contract.getNumPTHashBlocksB(), + MerkleContract(ptHash.key,ptHash.alg)); + ctVerifier = new_ptr( + ctHash, + contract.getNumCTHashBlocksB(), + MerkleContract(ctHash.key,ctHash.alg)); return ptVerifier->getChallenges(); } else { throw CashException(CashException::CE_FE_ERROR, @@ -169,12 +169,14 @@ vector Arbiter::responderResolveI(const vector &ks, // set up merkle verifiers and return challenges hash_t ptHash = contract.getPTHashB(); hash_t ctHash = contract.getCTHashB(); - ptVerifier = boost::shared_ptr(new MerkleVerifier(ptHash, - contract.getNumPTHashBlocksB(), - MerkleContract(ptHash.key,ptHash.alg))); - ctVerifier = boost::shared_ptr(new MerkleVerifier(ctHash, - contract.getNumCTHashBlocksB(), - MerkleContract(ctHash.key,ctHash.alg))); + ptVerifier = new_ptr( + ptHash, + contract.getNumPTHashBlocksB(), + MerkleContract(ptHash.key,ptHash.alg)); + ctVerifier = new_ptr( + ctHash, + contract.getNumCTHashBlocksB(), + MerkleContract(ctHash.key,ctHash.alg)); // XXX: right now this is only returning 0 every time!! return ptVerifier->getChallenges(); } else { diff --git a/src/Arbiter.h b/src/Arbiter.h index 8933dc5..3b26348 100644 --- a/src/Arbiter.h +++ b/src/Arbiter.h @@ -70,7 +70,7 @@ class Arbiter { Ptr regularDecrypter; hashalg_t hashAlg; int timeoutTolerance; - boost::shared_ptr ptVerifier, ctVerifier; + Ptr ptVerifier, ctVerifier; vector endorsement; vector keys; FEContract contract; diff --git a/src/BankParameters.cpp b/src/BankParameters.cpp index e8b3783..c6c00e4 100644 --- a/src/BankParameters.cpp +++ b/src/BankParameters.cpp @@ -4,10 +4,10 @@ BankParameters::BankParameters(vector &secrets, GroupPrime &ecashGrp, vector &denoms) : coinDenominations(denoms) { - ecashGroup = new GroupPrime(ecashGrp); + ecashGroup = new_ptr(ecashGrp); type = BankParameters::TYPE_SECRET; for (unsigned i = 0; i < secrets.size(); i++) { - secretKeys.push_back(new GroupRSA(secrets[i])); + secretKeys.push_back(new_ptr(secrets[i])); } // set up maps that associate a given key with a denomination @@ -18,7 +18,7 @@ BankParameters::BankParameters(vector &secrets, GroupPrime &ecashGrp, } BankParameters::BankParameters(const BankParameters &o) - : ecashGroup(new GroupPrime(*o.ecashGroup)), type(o.type), + : ecashGroup(new_ptr(*o.ecashGroup)), type(o.type), secretKeys(o.secretKeys), groupToDenom(o.groupToDenom), denomToGroup(o.denomToGroup), coinDenominations(o.coinDenominations) { diff --git a/src/BankTool.cpp b/src/BankTool.cpp index d38711a..fa4099b 100644 --- a/src/BankTool.cpp +++ b/src/BankTool.cpp @@ -24,9 +24,9 @@ BankTool::BankTool(int st, int l, int modLen, const hashalg_t &ha, cashGroup.addNewGenerator(); } - bankParameters = new BankParameters(secretKeys, cashGroup, coinDenoms); + bankParameters = new_ptr(secretKeys, cashGroup, coinDenoms); - publicBankParameters = new BankParameters(secretKeys, cashGroup, + publicBankParameters = new_ptr(secretKeys, cashGroup, coinDenoms); publicBankParameters->makePublic(); } @@ -35,8 +35,8 @@ BankTool::BankTool(int st, int l, const hashalg_t &ha, BankParameters bp) : stat(st), lx(l), hashAlg(ha) { - bankParameters = new BankParameters(bp); - publicBankParameters = new BankParameters(bp); + bankParameters = new_ptr(bp); + publicBankParameters = new_ptr(bp); publicBankParameters->makePublic(); } @@ -52,7 +52,7 @@ BankTool::~BankTool() { Ptr BankTool::getWithdrawTool(const ZZ &userPK, int wSize, int coinDenom) const { - return new BankWithdrawTool(bankParameters, userPK, stat, lx, wSize, + return new_ptr(bankParameters, userPK, stat, lx, wSize, coinDenom, hashAlg); } diff --git a/src/BankWithdrawTool.cpp b/src/BankWithdrawTool.cpp index e98bebc..9ee2f88 100644 --- a/src/BankWithdrawTool.cpp +++ b/src/BankWithdrawTool.cpp @@ -21,7 +21,7 @@ BankWithdrawTool::BankWithdrawTool(Ptr bp, const ZZ &userP } BankWithdrawTool::BankWithdrawTool(const BankWithdrawTool &o) - : bankParameters(new BankParameters(*o.bankParameters)), + : bankParameters(new_ptr(*o.bankParameters)), userPublicKey(o.userPublicKey), stat(o.stat), lx(o.lx), walletSize(o.walletSize), coinDenom(o.coinDenom), bankContribution(o.bankContribution), hashAlg(o.hashAlg) diff --git a/src/Buyer.cpp b/src/Buyer.cpp index 6c078f2..d56845a 100644 --- a/src/Buyer.cpp +++ b/src/Buyer.cpp @@ -15,7 +15,7 @@ Buyer::Buyer(int timeoutLength, Ptr pk, int stat) Buyer::Buyer(const Buyer& o) : timeoutLength(o.timeoutLength), stat(o.stat), pk(o.pk), - contract(o.contract? new FEContract(*o.contract) : NULL), + contract(o.contract? new_ptr(*o.contract) : NULL), r(o.r), endorsement(o.endorsement), inProgress(o.inProgress) { } @@ -92,13 +92,13 @@ Ptr Buyer::buy(const vector >& ct, startTimer(); // set up the escrow - Ptr escrow = new VECiphertext(makeEscrow()); + Ptr escrow = new_ptr(makeEscrow()); printTimer("[Buyer::buy] created escrow"); // set inProgress inProgress = true; - return new BuyMessage(coin, contract, escrow); + return new_ptr(coin, contract, escrow); } void Buyer::createContract() { @@ -107,7 +107,7 @@ void Buyer::createContract() { ZZ id = Hash::hash(r, pk->hashAlg, pk->hashKey); // prepare timeout setTimeout(); - contract = new FEContract(timeout, id); + contract = new_ptr(timeout, id); } VECiphertext Buyer::makeEscrow() { diff --git a/src/CLBlindIssuer.cpp b/src/CLBlindIssuer.cpp index 473e971..0e6dade 100644 --- a/src/CLBlindIssuer.cpp +++ b/src/CLBlindIssuer.cpp @@ -106,7 +106,7 @@ Ptr CLBlindIssuer::getPartialSignature(const ZZ &C, variable_map p = prover.getPublicVariables(); SigmaProof pr = prover.computeProof(hashAlg); printTimer("[CLBlindIssuer] computed issuer proof"); - return new ProofMessage(partialSig, p, pr); + return new_ptr(partialSig, p, pr); } else { throw CashException(CashException::CE_PARSE_ERROR, "[CLBlindIssuer::getPartialSignature] Proof did not verify"); diff --git a/src/CLBlindRecipient.cpp b/src/CLBlindRecipient.cpp index 4e14cae..60ba28a 100644 --- a/src/CLBlindRecipient.cpp +++ b/src/CLBlindRecipient.cpp @@ -84,7 +84,7 @@ Ptr CLBlindRecipient::getC(const vector& privates, variable_map pVars = prover.getEnvironment().variables; vals["C"] = pVars.at("C"); vals["vprime"] = pVars.at("vprime"); - return new ProofMessage(vals, publics, proof); + return new_ptr(vals, publics, proof); } bool CLBlindRecipient::verifySig(const ProofMessage &pm, int stat){ diff --git a/src/CLSignatureProver.cpp b/src/CLSignatureProver.cpp index 92785da..b4413c5 100644 --- a/src/CLSignatureProver.cpp +++ b/src/CLSignatureProver.cpp @@ -85,7 +85,7 @@ Ptr CLSignatureProver::getProof(const vector& sig, startTimer(); prover.compute(v); printTimer("CL prover computed all values"); - return new ProofMessage(prover.getPublicVariables(), + return new_ptr(prover.getPublicVariables(), prover.computeProof(hashAlg)); } diff --git a/src/Ciphertext.cpp b/src/Ciphertext.cpp index 6b68c25..7078c07 100644 --- a/src/Ciphertext.cpp +++ b/src/Ciphertext.cpp @@ -370,5 +370,5 @@ Ptr Buffer::encrypt(const Ciphertext::cipher_t& alg, const string& k) string key = (!k.empty()) ? k : Ciphertext::generateKey(alg); size_t ctl; char *ct = Ciphertext::encrypt(key.data(), buf, len, alg, &ctl); - return new EncBuffer(ct, ctl, key, alg); + return new_ptr(ct, ctl, key, alg); } diff --git a/src/Ciphertext.h b/src/Ciphertext.h index 5676808..e5ae39e 100644 --- a/src/Ciphertext.h +++ b/src/Ciphertext.h @@ -121,7 +121,7 @@ class Ciphertext { virtual Ptr decrypt(const string& key, const Ciphertext::cipher_t& alg) const { size_t ptl; char *pt = Ciphertext::decrypt(key.data(), buf, len, alg, &ptl); - return make_shared(pt, ptl, false); + return new_ptr(pt, ptl, false); } // hash a Buffer: caches hash computation hash_t hash(const hashalg_t& halg, const string& hkey, int htype) { diff --git a/src/FEInitiator.cpp b/src/FEInitiator.cpp index 2e1cbfa..68e7cac 100644 --- a/src/FEInitiator.cpp +++ b/src/FEInitiator.cpp @@ -13,13 +13,13 @@ FEInitiator::FEInitiator(const long timeoutLength, Ptr pk, exchangeType(TYPE_NONE) { if (NULL != sk) - signKey = new Signature::Key(*sk); + signKey = new_ptr(*sk); } FEInitiator::FEInitiator(const FEInitiator &o) : timeoutLength(o.timeoutLength), stat(o.stat), verifiablePK(o.verifiablePK), regularPK(o.regularPK), coin(o.coin), - contract(o.contract), signKey(new Signature::Key(*o.signKey)), + contract(o.contract), signKey(new_ptr(*o.signKey)), ptextA(o.ptextA), ctextA(o.ctextA), ctextB(o.ctextB), ptextB(o.ptextB), r(o.r), endorsement(o.endorsement), exchangeType(o.exchangeType) { @@ -78,14 +78,14 @@ startTimer(); ZZ eCom = coin.getEndorsementCom(); // the label needs to be the public key for the signature scheme // create the verifiable escrow - Ptr escrow = new VECiphertext(prover.verifiableEncrypt(eCom, + Ptr escrow = new_ptr(prover.verifiableEncrypt(eCom, endorsement, coin.getCashGroup(), signKey->publicKeyString(), verifiablePK->hashAlg, stat)); #ifdef TIMER printTimer("Verifiable escrow generation"); #endif - return new FESetupMessage(coin, escrow, *signKey); + return new_ptr(coin, escrow, *signKey); } void FEInitiator::makeCoin(Ptr wallet, const ZZ& R) { @@ -154,7 +154,7 @@ Ptr FEInitiator::buy(const vector >& ctextR, contract->setCTHashBlocksB(ctextR.size()); string signature = signContract(); - return new FEMessage(signature, *contract); + return new_ptr(signature, *contract); } void FEInitiator::createContract() { @@ -163,7 +163,7 @@ void FEInitiator::createContract() { ZZ id = Hash::hash(r, verifiablePK->hashAlg, verifiablePK->hashKey); long timeout = time(NULL) + timeoutLength; - contract = new FEContract(timeout, id); + contract = new_ptr(timeout, id); } string FEInitiator::signContract() const { @@ -327,7 +327,7 @@ Ptr FEInitiator::barter(const vector >& ctextR, string sig = Signature::sign(*signKey, escrowStr, regularPK->hashAlg); // now output the escrow, signature, and contract (label) - return new FEMessage(escrow, sig, *contract); + return new_ptr(escrow, sig, *contract); } /*----------------------------------------------------------------------------*/ diff --git a/src/FEResponder.cpp b/src/FEResponder.cpp index 7e66089..1a0a34e 100644 --- a/src/FEResponder.cpp +++ b/src/FEResponder.cpp @@ -19,10 +19,10 @@ FEResponder::FEResponder(const FEResponder& o) : timeoutLength(o.timeoutLength), timeoutTolerance(o.timeoutTolerance), stat(o.stat), verifiablePK(o.verifiablePK), regularPK(o.regularPK), ptextB(o.ptextB), ctextB(o.ctextB), ctextA(o.ctextA), ptextA(o.ptextA), - contract(o.contract ? new FEContract(*o.contract) : NULL), - escrow(o.escrow ? new VECiphertext(*o.escrow) : NULL), - initiatorSignPK(o.initiatorSignPK ? new Signature::Key(*o.initiatorSignPK) : NULL), - message(o.message ? new FEMessage(*o.message) : NULL) + contract(o.contract ? new_ptr(*o.contract) : NULL), + escrow(o.escrow ? new_ptr(*o.escrow) : NULL), + initiatorSignPK(o.initiatorSignPK ? new_ptr(*o.initiatorSignPK) : NULL), + message(o.message ? new_ptr(*o.message) : NULL) { } @@ -63,7 +63,7 @@ bool FEResponder::setup(Ptr msg, const ZZ& R) { // set parameters from FESetupMessage coinPrime = msg->getCoinPrime(); escrow = msg->getEscrow(); - initiatorSignPK = new Signature::Key(*msg->getPK()); + initiatorSignPK = new_ptr(*msg->getPK()); return true; } @@ -129,8 +129,8 @@ vector FEResponder::sell(const FEMessage& message, bool FEResponder::check(const FEMessage& msg, const string& label, const vector& ptHashRs) { // save message - message = new FEMessage(msg); - contract = new FEContract(msg.getContract()); + message = new_ptr(msg); + contract = new_ptr(msg.getContract()); string sig = msg.getSignature(); // check contract @@ -243,7 +243,7 @@ bool FEResponder::checkKey(const vector& keysI) { // Resolutions Ptr FEResponder::resolveI(){ - return new FEResolutionMessage(getMessage(), getSetupMessage(), getKeys()); + return new_ptr(getMessage(), getSetupMessage(), getKeys()); } Ptr FEResponder::resolveII(vector &challenges){ @@ -263,12 +263,12 @@ Ptr FEResponder::resolveII(vector &challenges){ MerkleContract ptContract(pt.key, pt.alg); MerkleProver ptProver = MerkleProver(ptextB, ptContract); hash_matrix ptProofs = ptProver.generateProofs(challenges); - return new MerkleProof(ctextBlocks, ctProofs, ptProofs, - new MerkleContract(ctContract), - new MerkleContract(ptContract)); + return new_ptr(ctextBlocks, ctProofs, ptProofs, + new_ptr(ctContract), + new_ptr(ptContract)); } else { - return new MerkleProof(ctextBlocks, ctProofs, ptextB[0]->str(), - new MerkleContract(ctContract)); + return new_ptr(ctextBlocks, ctProofs, ptextB[0]->str(), + new_ptr(ctContract)); } } @@ -276,7 +276,7 @@ Ptr FEResponder::resolveIII(vector &keys){ if(checkKey(keys)){ // XXX: not really sure what I should be returning if they do check // out as additional communication with the Arbiter is not needed - return new MerkleProof; + return new_ptr; } else{ return proveIncorrectKeys(keys); } @@ -309,16 +309,16 @@ Ptr FEResponder::proveIncorrectKeys(const vector &keys) { MerkleContract ptContract(pt.key, pt.alg); MerkleProver ptProver = MerkleProver(ptextB, ptContract); hash_matrix ptProofs = ptProver.generateProofs(challenges); - return new MerkleProof(ctextBlock, ctProofs, ptProofs, - new MerkleContract(ctContract), - new MerkleContract(ptContract)); + return new_ptr(ctextBlock, ctProofs, ptProofs, + new_ptr(ctContract), + new_ptr(ptContract)); } else { - return new MerkleProof(ctextBlock, ctProofs, ptextB[0]->str(), - new MerkleContract(ctContract)); + return new_ptr(ctextBlock, ctProofs, ptextB[0]->str(), + new_ptr(ctContract)); } } Ptr FEResponder::getSetupMessage() const { - return new FESetupMessage(coinPrime, escrow, *initiatorSignPK); + return new_ptr(coinPrime, escrow, *initiatorSignPK); } diff --git a/src/FESetupMessage.h b/src/FESetupMessage.h index 7935358..cdc05bc 100644 --- a/src/FESetupMessage.h +++ b/src/FESetupMessage.h @@ -24,7 +24,7 @@ class FESetupMessage { /*! copy constructor */ FESetupMessage(const FESetupMessage &o) : coinPrime(o.coinPrime), escrow(o.escrow), - signPK(new Signature::Key(*o.signPK)) {} + signPK(new_ptr(*o.signPK)) {} /*! destructor */ ~FESetupMessage() { delete signPK; } diff --git a/src/MerkleProver.cpp b/src/MerkleProver.cpp index bd82586..e19c838 100644 --- a/src/MerkleProver.cpp +++ b/src/MerkleProver.cpp @@ -4,7 +4,7 @@ MerkleProver::MerkleProver(const vector &hashBlocks, const MerkleContract &contract) : contract(contract) { - tree = new MerkleTree(hashBlocks, contract); + tree = new_ptr(hashBlocks, contract); } MerkleProver::MerkleProver(const char* buff, int buffSize, @@ -29,7 +29,7 @@ MerkleProver::MerkleProver(const vector > &encBuffs, for(unsigned x=0; x(hashBlocks, contract); } MerkleProver::MerkleProver(const vector >& buffs, @@ -40,7 +40,7 @@ MerkleProver::MerkleProver(const vector >& buffs, for(unsigned x=0; x(hashBlocks, contract); } hash_matrix MerkleProver::generateProofs(const vector &challenges){ hash_matrix toReturn; @@ -97,7 +97,7 @@ hash_t MerkleProver::computeSubTree(unsigned index, vector &m_tree){ void MerkleProver::init(const char* buff, int buffSize){ - tree = new MerkleTree(buff, buffSize, contract); + tree = new_ptr(buff, buffSize, contract); } diff --git a/src/Seller.cpp b/src/Seller.cpp index 0460743..e644614 100644 --- a/src/Seller.cpp +++ b/src/Seller.cpp @@ -36,8 +36,8 @@ Seller::Seller(const Seller& o) : timeoutLength(o.timeoutLength), timeoutTolerance(o.timeoutTolerance), stat(o.stat), pk(o.pk), ptext(o.ptext), ctext(o.ctext), coinPrime(o.coinPrime), - contract(o.contract ? new FEContract(*o.contract) : NULL), - escrow(o.escrow ? new VECiphertext(*o.escrow) : NULL), + contract(o.contract ? new_ptr(*o.contract) : NULL), + escrow(o.escrow ? new_ptr(*o.escrow) : NULL), inProgress(o.inProgress) { } @@ -176,24 +176,24 @@ Ptr Seller::resolveII(vector &challenges){ //create and send the proofs as well const hash_t& ct = contract->getCTHashB(); - Ptr ctContract = new MerkleContract(ct.key, ct.alg); + Ptr ctContract = new_ptr(ct.key, ct.alg); MerkleProver ctProver(ctext, *ctContract); vector > ctProofs = ctProver.generateProofs(challenges); if(ct.type == Hash::TYPE_MERKLE){ const hash_t& pt = contract->getPTHashB(); - Ptr ptContract = new MerkleContract(pt.key, pt.alg); + Ptr ptContract = new_ptr(pt.key, pt.alg); MerkleProver ptProver(ptext, *ptContract); vector > ptProofs = ptProver.generateProofs(challenges); - return new MerkleProof(ctextBlocks, ctProofs, ptProofs, + return new_ptr(ctextBlocks, ctProofs, ptProofs, ctContract, ptContract); } else { - return new MerkleProof(ctextBlocks, ctProofs, ptext[0]->str(), ctContract); + return new_ptr(ctextBlocks, ctProofs, ptext[0]->str(), ctContract); } } Ptr Seller::getBuyMessage() const { - return new BuyMessage(coinPrime, contract, escrow); + return new_ptr(coinPrime, contract, escrow); } bool Seller::endorseCoin(const vector &endorsement) { diff --git a/src/Seller.h b/src/Seller.h index b0d3727..30df1d8 100644 --- a/src/Seller.h +++ b/src/Seller.h @@ -64,7 +64,7 @@ class Seller { Ptr resolveII(vector &challenges); // getters - Ptr getCoin() const { return Ptr(new Coin(coinPrime)); }; + Ptr getCoin() const { return new_ptr(coinPrime); }; Ptr getBuyMessage() const; // setters diff --git a/src/Serialize.h b/src/Serialize.h index be33e68..8041284 100644 --- a/src/Serialize.h +++ b/src/Serialize.h @@ -24,6 +24,7 @@ #include #include #include +#include "new_ptr.hpp" #include "Serialize_map.h" /* NVP stands for "name-value pair" and is used for naming variables @@ -44,8 +45,6 @@ namespace bsz = boost::serialization; namespace bar = boost::archive; namespace bio = boost::iostreams; -#define Ptr boost::shared_ptr - // save and load to string or file // Ar = boost::archive::xml_archive is more portable // Ar = boost::archive::binary_archive is more compact diff --git a/src/Signature.cpp b/src/Signature.cpp index 4864e18..dd11156 100644 --- a/src/Signature.cpp +++ b/src/Signature.cpp @@ -87,7 +87,7 @@ Ptr Signature::Key::generateDSAKey(int numbits) { "[Signature::Key::generateDSAKey] DSA gen key"); EVP_PKEY *k = EVP_PKEY_new(); EVP_PKEY_assign_DSA(k, dsa); // dsa now owned by k: don't need to free it - return new Key(k, true); + return new_ptr(k, true); } Ptr Signature::Key::generateRSAKey(int modlen) { @@ -98,7 +98,7 @@ Ptr Signature::Key::generateRSAKey(int modlen) { "[Signature::Key::generateRSAKey] RSA gen params"); EVP_PKEY *k = EVP_PKEY_new(); EVP_PKEY_assign_RSA(k, rsa); // rsa now owned by k: don't need to free it - return new Key(k, true); + return new_ptr(k, true); } void BIO_free_to_string(BIO *bio, string &out) { @@ -153,7 +153,7 @@ Ptr Signature::Key::fromDER(const string& str, bool isPrivate) { if (!k) throw CashException(CashException::CE_OPENSSL_ERROR, "[Signature::Key::fromDER] can't load d2i"); - return new Key(k, isPrivate); + return new_ptr(k, isPrivate); } Signature::Key::Key(const string& file, const string& passwd, bool isPrivate) diff --git a/src/Signature.h b/src/Signature.h index ee72407..d7b4a47 100644 --- a/src/Signature.h +++ b/src/Signature.h @@ -29,11 +29,11 @@ class Signature { /// private key: can sign & verify static Ptr loadPrivateKey(const string& file, const string& passwd) { - return Ptr(new Key(file, passwd, true)); + return new_ptr(file, passwd, true); } /// public key: can only verify static Ptr loadPublicKey(const string& file, const string& passwd=string()) { - return Ptr(new Key(file, passwd, false)); + return new_ptr(file, passwd, false); } // generates public/private keypair static Ptr generateDSAKey(int numbits=SIG_NUMBITS); @@ -49,7 +49,7 @@ class Signature { // get public key for this key: allocates & returns new Key Ptr getPublicKey() const { if (!isPrivate){ - return Ptr(new Key(*this)); + return new_ptr(*this); } else { // XXX convert to public key more efficiently? string d = toDER(false); return fromDER(d, false); diff --git a/src/Test.cpp b/src/Test.cpp index 2ae39fc..44ff575 100644 --- a/src/Test.cpp +++ b/src/Test.cpp @@ -387,8 +387,8 @@ double* testSophie() { double* testClone() { double* timers = new double[MAX_TIMERS]; istringstream iss(string("x * a ^ b_i + -2")); - Ptr lexer = new ZKPLexer(iss); - Ptr parser = new ZKPParser(*lexer); + Ptr lexer = new_ptr(iss); + Ptr parser = new_ptr(*lexer); ASTExprPtr n = parser->expr(); Printer print; @@ -403,8 +403,8 @@ double* testClone() { double* testFor() { double* timers = new double[MAX_TIMERS]; istringstream iss(string("for(i, 1:3, &&, c_i := (g^x_i) * (h^r_i))")); - Ptr lexer = new ZKPLexer(iss); - Ptr parser = new ZKPParser(*lexer); + Ptr lexer = new_ptr(iss); + Ptr parser = new_ptr(*lexer); ASTNodePtr n = parser->spec(); Printer print; @@ -431,8 +431,8 @@ double* testConstSub() { "r[1:l], vprime such that: for(i, 1:l, range: " "-(2^l_x - 1) <= x_i < 2^l_x) C = h^vprime * " "for(i, 1:l, *, c_i * h^(-r_i))")); - Ptr lexer = new ZKPLexer(iss); - Ptr parser = new ZKPParser(*lexer); + Ptr lexer = new_ptr(iss); + Ptr parser = new_ptr(*lexer); ASTNodePtr n = parser->spec(); Printer print; @@ -616,7 +616,7 @@ double* testCLProver(){ int numPrivates = 3; //create secret key //creating group adds f as a generator - Ptr sk = new GroupRSA("first", RSALength, stat); + Ptr sk = new_ptr("first", RSALength, stat); for (int i = 0; i < numPrivates + numPublics; i++) { sk->addNewGenerator(); } @@ -624,7 +624,7 @@ double* testCLProver(){ sk->addNewGenerator(); //create public key from copying secret key and clearing secrets - Ptr pk = new GroupRSA(*sk); + Ptr pk = new_ptr(*sk); pk->clearSecrets(); //create random public messages @@ -634,7 +634,7 @@ double* testCLProver(){ publics.push_back(RandomBits_ZZ(lx-1)); //create random private messages and their commitments - Ptr bp = new BankParameters("bank.80.params"); + Ptr bp = new_ptr("bank.80.params"); Ptr comGroup = bp->getCashGroup(); startTimer(); vector > secretExps; @@ -735,11 +735,11 @@ double* testCLGroups() { hashalg_t hashAlg = Hash::SHA1; // want to have a different group for each commitment - Ptr group1 = new GroupPrime("cash", modLength, 2*stat, stat); + Ptr group1 = new_ptr("cash", modLength, 2*stat, stat); group1->addNewGenerator(); - Ptr group2 = new GroupPrime("cash", modLength, 2*stat, stat); + Ptr group2 = new_ptr("cash", modLength, 2*stat, stat); group2->addNewGenerator(); - Ptr group3 = new GroupPrime("cash", modLength, 2*stat, stat); + Ptr group3 = new_ptr("cash", modLength, 2*stat, stat); group3->addNewGenerator(); vector > grps; grps.push_back(group1); @@ -747,14 +747,14 @@ double* testCLGroups() { grps.push_back(group3); // also need RSA group for CL signature stuff - Ptr pk = new GroupRSA("bank", modLength, stat); // f + Ptr pk = new_ptr("bank", modLength, stat); // f pk->addNewGenerator(); // g_1 pk->addNewGenerator(); // g_2 pk->addNewGenerator(); // g_3 pk->addNewGenerator(); // g_4 pk->addNewGenerator(); // h - Ptr sk = new GroupRSA(*pk); + Ptr sk = new_ptr(*pk); pk->clearSecrets(); // now set up commitments and such @@ -866,7 +866,7 @@ double* testVE() { // need all commitment values and such // XXX: need test where this group can be of any form - Ptr rsaGroup = new GroupRSA("bank", modLength, stat); // f_3 + Ptr rsaGroup = new_ptr("bank", modLength, stat); // f_3 rsaGroup->addNewGenerator(); // gprime rsaGroup->addNewGenerator(); // hprime rsaGroup->addNewGenerator(); // f_1 @@ -918,7 +918,7 @@ double* testVE() { "encryption completed"); // also try it with a prime-order group - Ptr primeGroup = new GroupPrime("bank", modLength, 2*stat, stat); + Ptr primeGroup = new_ptr("bank", modLength, 2*stat, stat); primeGroup->addNewGenerator(); primeGroup->addNewGenerator(); primeGroup->addNewGenerator(); @@ -1034,7 +1034,7 @@ double* testWithdraw() { // load bank and user from file BankTool bankTool("tool.80.bank"); - Ptr params = new BankParameters("bank.80.params"); + Ptr params = new_ptr("bank.80.params"); UserTool userTool("tool.80.user", params, "public.80.arbiter", "public.regular.80.arbiter"); /* @@ -1159,7 +1159,7 @@ double* testCoin() { startTimer(); // load bank and user from file BankTool bankTool("tool.80.bank"); - Ptr params = new BankParameters("bank.80.params"); + Ptr params = new_ptr("bank.80.params"); UserTool userTool("tool.80.user", params, "public.80.arbiter", "public.regular.80.arbiter"); // also load wallet @@ -1257,14 +1257,14 @@ double* testBuy() { hashalg_t hashAlg = Hash::SHA1; cipher_t encAlg = "aes-128-ctr"; - Ptr params = new BankParameters("bank.80.params"); + Ptr params = new_ptr("bank.80.params"); Wallet wallet("wallet.80", params); VEPublicKey vepk("public.80.arbiter"); ZZ R = RandomBits_ZZ(params->getCashGroup()->getOrderLength()); // just use random garbage for file - Ptr ptext = new Buffer(string("randomdata01234567890123456789")); + Ptr ptext = new_ptr(string("randomdata01234567890123456789")); Hash::hash_t ptHash = ptext->hash(hashAlg, string(), Hash::TYPE_PLAIN); // create buyer and seller objects @@ -1293,7 +1293,7 @@ double* testBuy() { // test saving and loading BuyMessage string bmsg = saveGZString(*buyMessage); saveXML(make_nvp("BuyMessage", *buyMessage), "buym1.xml"); - Ptr loadedBMsg = new BuyMessage(bmsg, params); + Ptr loadedBMsg = new_ptr(bmsg, params); saveXML(make_nvp("BuyMessage", *loadedBMsg), "buym2.xml"); cout << "Loaded Buy message size: " << saveGZString(*loadedBMsg).size() << endl; @@ -1341,7 +1341,7 @@ double* testBarter() { cipher_t encAlg = "aes-128-ctr", signAlg = "DSA"; int hashType = Hash::TYPE_PLAIN; - Ptr params = new BankParameters("bank.80.params"); + Ptr params = new_ptr("bank.80.params"); Wallet wallet("wallet.80", params); VEPublicKey vepk("public.80.arbiter"); VEPublicKey pk("public.regular.80.arbiter"); @@ -1353,8 +1353,8 @@ double* testBarter() { char bufA[1024], bufB[1024]; RAND_pseudo_bytes((unsigned char*) bufA, sizeof(bufA)); RAND_pseudo_bytes((unsigned char*) bufB, sizeof(bufB)); - Ptr aData = new Buffer(bufA, sizeof(bufA)); - Ptr bData = new Buffer(bufB, sizeof(bufB)); + Ptr aData = new_ptr(bufA, sizeof(bufA)); + Ptr bData = new_ptr(bufB, sizeof(bufB)); hash_t aHash = aData->hash(hashAlg, trackerHashKey, hashType); hash_t bHash = bData->hash(hashAlg, trackerHashKey, hashType); @@ -1428,8 +1428,8 @@ double* testBarter() { bob.reset(); // use new files - Ptr aData2 = new Buffer(string("thisismysuperraddataalice00")); - Ptr bData2 = new Buffer(string("thisismysuperraddatabob0000")); + Ptr aData2 = new_ptr(string("thisismysuperraddataalice00")); + Ptr bData2 = new_ptr(string("thisismysuperraddatabob0000")); hash_t aHash2 = aData2->hash(hashAlg, trackerHashKey, hashType); hash_t bHash2 = bData2->hash(hashAlg, trackerHashKey, hashType); @@ -1485,7 +1485,7 @@ double* testBuyWithSetup() { string signAlg = "DSA", encAlg = "aes-128-ctr"; int hashType = Hash::TYPE_PLAIN; - Ptr params = new BankParameters("bank.80.params"); + Ptr params = new_ptr("bank.80.params"); Wallet wallet("wallet.80", params); VEPublicKey vepk("public.80.arbiter"); VEPublicKey pk("public.regular.80.arbiter"); @@ -1496,7 +1496,7 @@ double* testBuyWithSetup() { // get random files for Alice and Bob char bufB[1024]; RAND_pseudo_bytes((unsigned char*) bufB, sizeof(bufB)); - Ptr data = new Buffer(bufB, sizeof(bufB)); + Ptr data = new_ptr(bufB, sizeof(bufB)); hash_t hash = data->hash(hashAlg, trackerHashKey, hashType); // want to generate a signing key @@ -1572,7 +1572,7 @@ double* testBuyResolution() { VEDecrypter decrypter(&pk, &sk); BankTool bankTool("tool.80.bank"); - Ptr params = new BankParameters("bank.80.params"); + Ptr params = new_ptr("bank.80.params"); Wallet wallet("wallet.80", params); string trackerHashKey = vepk.getHashKey(); @@ -1580,7 +1580,7 @@ double* testBuyResolution() { char buf[1024]; RAND_pseudo_bytes((unsigned char*) buf, sizeof(buf)); - Ptr ptext = new Buffer(buf, sizeof(buf)); + Ptr ptext = new_ptr(buf, sizeof(buf)); hash_t ptHash = ptext->hash(hashAlg, trackerHashKey, hashType); // now let's create our buyer and seller objects @@ -1662,7 +1662,7 @@ double* testBarterResolution() { cipher_t encAlg = "aes-128-ctr", signAlg = "DSA"; int hashType = Hash::TYPE_PLAIN; - Ptr params = new BankParameters("bank.80.params"); + Ptr params = new_ptr("bank.80.params"); Wallet wallet("wallet.80", params); VEPublicKey vepk("public.80.arbiter"); @@ -1680,8 +1680,8 @@ double* testBarterResolution() { char bufA[1024], bufB[1024]; RAND_pseudo_bytes((unsigned char*) bufA, sizeof(bufA)); RAND_pseudo_bytes((unsigned char*) bufB, sizeof(bufB)); - Ptr aData = new Buffer(bufA, sizeof(bufA)); - Ptr bData = new Buffer(bufB, sizeof(bufB)); + Ptr aData = new_ptr(bufA, sizeof(bufA)); + Ptr bData = new_ptr(bufB, sizeof(bufB)); hash_t aHash = aData->hash(hashAlg, trackerHashKey, hashType); hash_t bHash = bData->hash(hashAlg, trackerHashKey, hashType); @@ -1802,8 +1802,8 @@ double* testSerializeAbstract() { double* timers = new double[MAX_TIMERS]; // test serializing base and derived pointers istringstream iss(string("g^x")); - Ptr lexer = new ZKPLexer(iss); - Ptr parser = new ZKPParser(*lexer); + Ptr lexer = new_ptr(iss); + Ptr parser = new_ptr(*lexer); ASTExprPtr n = parser->expr(); cout << "type of expr: " << type_to_str(typeid(*n)) << endl; diff --git a/src/UserTool.cpp b/src/UserTool.cpp index ba108f9..19bb1f9 100644 --- a/src/UserTool.cpp +++ b/src/UserTool.cpp @@ -3,7 +3,7 @@ UserTool::UserTool(int st, int l, Ptr bp, const VEPublicKey &vPK, const VEPublicKey &rPK, const hashalg_t &ha) - : stat(st), lx(l), bankParameters(new BankParameters(*bp)), + : stat(st), lx(l), bankParameters(new_ptr(*bp)), vepk(vPK), pk(rPK), hashAlg(ha) { Ptr cashGroup = bankParameters->getCashGroup(); diff --git a/src/UserTool.h b/src/UserTool.h index a684274..6a1c20b 100644 --- a/src/UserTool.h +++ b/src/UserTool.h @@ -37,28 +37,26 @@ class UserTool { Ptr getBankParameters() const { return bankParameters; } Ptr getWithdrawTool(int walletSize, int coinDenom) const { - return Ptr( - new UserWithdrawTool(stat, lx, bankParameters, - userPublicKey, userSecretKey, - hashAlg, walletSize, coinDenom) - ); + return new_ptr(stat, lx, bankParameters, + userPublicKey, userSecretKey, + hashAlg, walletSize, coinDenom); } /* Factory functions for user */ Ptr getBuyer(time_t timeout) const - { return Ptr(new Buyer(timeout, &vepk, stat)); } + { return new_ptr(timeout, &vepk, stat); } Ptr getSeller(time_t timeout, int timeoutTolerance) const - { return Ptr(new Seller(timeout, timeoutTolerance, &vepk, stat)); } + { return new_ptr(timeout, timeoutTolerance, &vepk, stat); } Ptr getSeller(Ptr ctext, int t, int timeoutTolerance) const - { return Ptr(new Seller(ctext, t, timeoutTolerance, &vepk, stat)); } + { return new_ptr(ctext, t, timeoutTolerance, &vepk, stat); } Ptr getFEInitiator(time_t timeout) const - { return Ptr(new FEInitiator(timeout, &vepk, &pk, stat)); } + { return new_ptr(timeout, &vepk, &pk, stat); } Ptr getFEResponder(time_t t, int tolerance) const - { return Ptr(new FEResponder(t, tolerance, &vepk, &pk, stat)); } + { return new_ptr(t, tolerance, &vepk, &pk, stat); } private: int stat, lx; diff --git a/src/UserWithdrawTool.cpp b/src/UserWithdrawTool.cpp index e744c4f..39ea66b 100644 --- a/src/UserWithdrawTool.cpp +++ b/src/UserWithdrawTool.cpp @@ -114,7 +114,7 @@ Ptr UserWithdrawTool::preSignatureProof() { v["pk_u"] = userPublicKey; v["sk_u"] = userSecretKey; prover.compute(v); - return make_shared(prover.getPublicVariables(), + return new_ptr(prover.getPublicVariables(), prover.computeProof(hashAlg)); } @@ -145,7 +145,7 @@ void UserWithdrawTool::createSignatureRecipient() { // 1 public message: walletSize Ptr pk = bankParameters->getBankKey(coinDenom); Ptr comGroup = bankParameters->getCashGroup(); - signatureRecipient = make_shared(pk, comGroup, lx, coms, 3, 1); + signatureRecipient = new_ptr(pk, comGroup, lx, coms, 3, 1); printTimer("[UserWithdrawTool] created recipient"); } diff --git a/src/VEDecrypter.cpp b/src/VEDecrypter.cpp index a346931..05ab0f5 100644 --- a/src/VEDecrypter.cpp +++ b/src/VEDecrypter.cpp @@ -26,7 +26,7 @@ void VEDecrypter::setup(const int m, const int modLength, while (GCD(f0, bigNsquared) != 1) { f0 = RandomBnd(bigNsquared); } - Ptr grp = make_shared("arbiter", bigNsquared, stat); + Ptr grp = new_ptr("arbiter", bigNsquared, stat); group_map g; variable_map v; g["RSAGroup"] = &group1; @@ -70,19 +70,19 @@ void VEDecrypter::setup(const int m, const int modLength, ZZ n = group2->getModulus(); ZZ p = group2->getP(); ZZ q = n / p; - sk = make_shared(bigP, bigQ, xs, p, q); + sk = new_ptr(bigP, bigQ, xs, p, q); group2->clearSecrets(); // XXX obviously this will not stay with hashKey as "" string hashKey = ""; // won't call HMAC hashalg_t hashAlg = Hash::SHA1; // XXX should be input parameter - pk = make_shared(bigN, as, b, d, e, f, *group2, hashAlg, hashKey); + pk = new_ptr(bigN, as, b, d, e, f, *group2, hashAlg, hashKey); } Ptr VEDecrypter::createSecondGroup(const int m, const int modLength, const int stat) { // now initialize second group - Ptr group2 = make_shared("arbiter", modLength, stat); + Ptr group2 = new_ptr("arbiter", modLength, stat); for (int i = 0; i < m; i++) { // create m additional generators group2->addNewGenerator(); diff --git a/src/VEProver.cpp b/src/VEProver.cpp index 5b99564..c9da6ab 100644 --- a/src/VEProver.cpp +++ b/src/VEProver.cpp @@ -11,9 +11,9 @@ vector VEProver::encrypt(const vector &messages, const string &label, Environment e; // first create and give in our group ZZ bigN = pk->getN(); - e.groups["RSAGroup"] = make_shared("arbiter", bigN, stat); + e.groups["RSAGroup"] = new_ptr("arbiter", bigN, stat); ZZ bigNSquared = power(bigN, 2); - e.groups["G"] = make_shared("arbiter", bigNSquared, stat); + e.groups["G"] = new_ptr("arbiter", bigNSquared, stat); // now add in elements e.variables["f"] = pk->getF(); e.variables["b"] = pk->getB(); @@ -89,7 +89,7 @@ VECiphertext VEProver::verifiableEncrypt(const ZZ &commitment, // now need some more group information env.groups["cashGroup"] = grp; - Ptr second = make_shared(pk->getSecondGroup()); + Ptr second = new_ptr(pk->getSecondGroup()); env.groups["secondGroup"] = second; env.variables["X"] = commitment; diff --git a/src/VEVerifier.cpp b/src/VEVerifier.cpp index 52dd3e8..21dad15 100644 --- a/src/VEVerifier.cpp +++ b/src/VEVerifier.cpp @@ -25,10 +25,10 @@ bool VEVerifier::verify(const VECiphertext& text, const ZZ& x, // set up all groups env.groups["cashGroup"] = grp; ZZ bigN = pk->getN(); - env.groups["RSAGroup"] = make_shared("arbiter", bigN, stat); + env.groups["RSAGroup"] = new_ptr("arbiter", bigN, stat); ZZ bigNSquared = power(bigN, 2); - env.groups["G"] = make_shared("arbiter", bigNSquared, stat); - Ptr second = make_shared(pk->getSecondGroup()); + env.groups["G"] = new_ptr("arbiter", bigNSquared, stat); + Ptr second = new_ptr(pk->getSecondGroup()); env.groups["secondGroup"] = second; input_map inputs; inputs["m"] = text.getCiphertext().size() - 2; diff --git a/src/Wallet.cpp b/src/Wallet.cpp index d26d274..36b761b 100644 --- a/src/Wallet.cpp +++ b/src/Wallet.cpp @@ -54,7 +54,7 @@ Ptr Wallet::nextCoin(const ZZ &rValue) { } Ptr Wallet::newCoin(const ZZ &rValue, int coinIndex) { - return make_shared(params, walletSize, coinIndex, + return new_ptr(params, walletSize, coinIndex, sk_u, s, t, signature, stat, lx, rValue, coinDenom, hashAlg); } diff --git a/src/ZKP/ZKPTest.cpp b/src/ZKP/ZKPTest.cpp index 0b9c29e..99bc932 100644 --- a/src/ZKP/ZKPTest.cpp +++ b/src/ZKP/ZKPTest.cpp @@ -36,13 +36,13 @@ void setupEnvironment(Environment &e, const string& fname) { // hack for known examples: set up environment if (fname.find("ecash.txt") != string::npos) { - Ptr cashG = new GroupPrime("bank", 1024, stat*2, stat); // init gen is f + Ptr cashG = new_ptr("bank", 1024, stat*2, stat); // init gen is f cashG->addNewGenerator(); // this is g cashG->addNewGenerator(); // this is h cashG->addNewGenerator(); // this is h1 cashG->addNewGenerator(); // this is h2 - Ptr rangeG = new GroupRSA("first", 1024, stat); // first gen is g1 + Ptr rangeG = new_ptr("first", 1024, stat); // first gen is g1 rangeG->addNewGenerator(); // second gen is g2 e.groups["rangeGroup"] = rangeG; e.groups["cashGroup"] = cashG; @@ -57,7 +57,7 @@ void setupEnvironment(Environment &e, const string& fname) { } else if (fname.find("multiplication.txt") != string::npos) { - Ptr cashG = new GroupPrime("bank", 1024, 2*stat, stat); // this is g + Ptr cashG = new_ptr("bank", 1024, 2*stat, stat); // this is g cashG->addNewGenerator(); // this is h e.groups["G"] = cashG; // let's go ahead and give in a and b @@ -73,15 +73,15 @@ void setupEnvironment(Environment &e, const string& fname) { || fname.find("declRange.txt") != string::npos || fname.find("compute.txt") != string::npos || fname.find("modulus.txt") != string::npos) { - Ptr cashG = new GroupPrime("bank", 1024, stat*2, stat); + Ptr cashG = new_ptr("bank", 1024, stat*2, stat); cashG->addNewGenerator(); // this is h e.groups["G"] = cashG; if (fname.find("badDLR.txt") != string::npos) e.variables["J"] = to_ZZ(51); } else if (fname.find("range.txt") != string::npos || fname.find("complicatedRange.txt") != string::npos) { - Ptr cashG = new GroupRSA("bank", 1024, stat); // this is g - //Ptr cashG = new GroupPrime("bank", 1024, stat*2, stat); + Ptr cashG = new_ptr("bank", 1024, stat); // this is g + //Ptr cashG = new_ptr("bank", 1024, stat*2, stat); cashG->addNewGenerator(); // this is h e.groups["G"] = cashG; e.variables["J"] = to_ZZ(51); @@ -119,8 +119,8 @@ int main(int argc, char** argv) { ifstream ifs(vm["input-file"].as().c_str()); try { - Ptr lexer = new ZKPLexer(ifs); - Ptr parser = new ZKPParser(*lexer); + Ptr lexer = new_ptr(ifs); + Ptr parser = new_ptr(*lexer); ASTSpecPtr n = parser->spec(); if (n) { diff --git a/src/new_ptr.hpp b/src/new_ptr.hpp index 7c297bc..d369aa1 100644 --- a/src/new_ptr.hpp +++ b/src/new_ptr.hpp @@ -1,106 +1,16 @@ -/* - * new_ptr: allows you to do: - * new_ptr(args) - * where you would usually do: - * shared_ptr(new T(args)) - * - * from http://www.boostcookbook.com/Recipe:/1234950 - */ - #ifndef __NEW_PTR_HPP__ #define __NEW_PTR_HPP__ -#include -#include -#include -#include - -#ifndef NEW_PTR_MAX_PARAMS - #define NEW_PTR_MAX_PARAMS 16 -#endif // NEW_PTR_MAX_PARAMS - -#define NEW_PTR_PARAM_DECL(z, n, _) BOOST_PP_COMMA_IF(n) A ## n const & a ## n - -class new_ptr_access { - private: - template - static void destroy(T* pT) { - typedef char typeMustBeCompleteType[sizeof(T) ? 1 : -1]; - (void)sizeof(typeMustBeCompleteType); - delete pT; - } - - #define NEW_PTR_ACCESS_CREATE_FUNCTION(z, n, _) \ - template< class T BOOST_PP_ENUM_TRAILING_PARAMS(n, class A) > \ - static boost::shared_ptr create(BOOST_PP_REPEAT(n, NEW_PTR_PARAM_DECL, _)) { \ - return boost::shared_ptr(new T(BOOST_PP_ENUM_PARAMS(n, a)), destroy); \ - } \ - - - BOOST_PP_REPEAT(BOOST_PP_INC(NEW_PTR_MAX_PARAMS), NEW_PTR_ACCESS_CREATE_FUNCTION, _) - - #undef NEW_PTR_ACCESS_CREATE_FUNCTION - - #define NEW_PTR_ACCESS_FRIEND_DECL(z, n, _) \ - template \ - friend boost::shared_ptr new_ptr(BOOST_PP_REPEAT(n, NEW_PTR_PARAM_DECL, _)); \ - - - BOOST_PP_REPEAT(BOOST_PP_INC(NEW_PTR_MAX_PARAMS), NEW_PTR_ACCESS_FRIEND_DECL, _) - - #undef NEW_PTR_ACCESS_FRIEND_DECL - - private: - new_ptr_access(); -}; - -#define NEW_PTR_FUNCTION_DECL(z, n, _) \ - template< class T BOOST_PP_ENUM_TRAILING_PARAMS(n, class A)> \ - boost::shared_ptr new_ptr(BOOST_PP_REPEAT(n, NEW_PTR_PARAM_DECL, _)) { \ - return new_ptr_access::create(BOOST_PP_ENUM_PARAMS(n, a)); \ - } \ +// wrapper for shared_ptr +// +// could also use tr1::shared_ptr +// http://gcc.gnu.org/onlinedocs/libstdc++/manual/shared_ptr.html +#include +#include -BOOST_PP_REPEAT(BOOST_PP_INC(NEW_PTR_MAX_PARAMS), NEW_PTR_FUNCTION_DECL, _) -#undef NEW_PTR_FUNCTION_DECL -#undef NEW_PTR_PARAM_DECL -#undef NEW_PTR_DECL - -/* -// Example: -class foo { - private: - foo() - : name_("My Name") - { } - - foo(const std::string name) - : name_(name) - { } - - foo(int i, int j) - : name_("I & J") - { } - - ~foo() { } - - friend class new_ptr_access; - - public: - const std::string& name() const { return name_; } - - private: - std::string name_; -}; - -shared_ptr bar1 = new_ptr(); -shared_ptr bar2 = new_ptr("example"); -shared_ptr bar3 = new_ptr(1, 2); - -delete bar1.get(); // won't compile - -foo stackInstance("example"); // won't compile -foo* heapInstance = new foo("example") // won't compile +// XXX use brownie namespace +#define Ptr boost::shared_ptr +#define new_ptr boost::make_shared -*/ #endif From 797284532b0d3434f8b0c21fa5f743f16db0d028 Mon Sep 17 00:00:00 2001 From: chris erway Date: Sat, 18 Dec 2010 18:57:35 -0500 Subject: [PATCH 03/31] run in ZKP dir: sed -i.bak s/boost::shared_ptr/Ptr/g *.cpp *.h *.hpp --- src/ZKP/ASTNode.h | 94 ++++++++++++++++++++--------------------- src/ZKP/ASTVisitor.h | 88 +++++++++++++++++++------------------- src/ZKP/Environment.h | 4 +- src/ZKP/Interpreter.cpp | 2 - 4 files changed, 93 insertions(+), 95 deletions(-) diff --git a/src/ZKP/ASTNode.h b/src/ZKP/ASTNode.h index e1a89a6..081571e 100644 --- a/src/ZKP/ASTNode.h +++ b/src/ZKP/ASTNode.h @@ -45,7 +45,7 @@ struct VarInfo { class ASTNode { public: - typedef boost::shared_ptr ptr_t; + typedef Ptr ptr_t; virtual void visit(ASTVisitor& v) = 0; virtual void visitChildren(ASTVisitor& v) = 0; virtual ~ASTNode() {} @@ -68,7 +68,7 @@ class ASTIdentifierLit : public ASTNode, public boost::enable_shared_from_this { public: - typedef boost::shared_ptr ptr_t; + typedef Ptr ptr_t; /*! this class represents simple variable names, i.e. 'x' */ ASTIdentifierLit(string n, int l, int c) : name(n), line(l), column(c) {} @@ -108,7 +108,7 @@ class ASTIdentifierSub : public ASTNode, public boost::enable_shared_from_this { public: - typedef boost::shared_ptr ptr_t; + typedef Ptr ptr_t; /*! this class represents slightly more complex variable names, such * as x_1 */ ASTIdentifierSub(ASTIdentifierLitPtr b, string s) : base(b), sub(s) {} @@ -164,7 +164,7 @@ class ASTDeclIdentifierLit : public ASTDeclGeneral, public boost::enable_shared_from_this { public: - typedef boost::shared_ptr ptr_t; + typedef Ptr ptr_t; /*! this class represents a variable name such as 'x' as it is being * declared, either on the left-hand side of a declaration * (so 'x := a * b') or in a list, such as 'exponent in G: x' */ @@ -194,13 +194,13 @@ class ASTDeclIdentifierLit : public ASTDeclGeneral, } }; typedef ASTDeclIdentifierLit::ptr_t ASTDeclIdentifierLitPtr; -typedef boost::shared_ptr ASTIdentifierLitPtr; +typedef Ptr ASTIdentifierLitPtr; class ASTDeclIdentifierSub : public ASTDeclGeneral, public boost::enable_shared_from_this { public: - typedef boost::shared_ptr ptr_t; + typedef Ptr ptr_t; /*! this class represents a variable name such as 'x_1' as it is being * declared, either on the left-hand side of a declaration * (so 'x_1 := a * b') or in a list, such as 'exponent in G: x_1' */ @@ -241,7 +241,7 @@ typedef ASTDeclIdentifierSub::ptr_t ASTDeclIdentifierSubPtr; class ASTExpr : public ASTNode { public: - typedef boost::shared_ptr ptr_t; + typedef Ptr ptr_t; /*! this class represents the parent class for all our arithmetic * expressions, as well as the variables that are used in those * expressions */ @@ -257,7 +257,7 @@ class ASTExpr : public ASTNode { // clone sub-trees via a "virtual constructor", as in // http://www.parashift.com/c++-faq-lite/virtual-functions.html#faq-20.8 - virtual boost::shared_ptr clone() const = 0; + virtual Ptr clone() const = 0; private: friend class boost::serialization::access; @@ -266,14 +266,14 @@ class ASTExpr : public ASTNode { } }; typedef ASTExpr::ptr_t ASTExprPtr; -typedef boost::shared_ptr ASTExprPtr; +typedef Ptr ASTExprPtr; BOOST_SERIALIZATION_ASSUME_ABSTRACT(ASTExpr) class ASTExprInt : public ASTExpr, public boost::enable_shared_from_this { public: - typedef boost::shared_ptr ptr_t; + typedef Ptr ptr_t; /*! this class represents an integer literal such as '1' or '2' as * it is being used in an arithmetic expression */ ASTExprInt() {} @@ -307,7 +307,7 @@ class ASTExprIdentifier : public ASTExpr, public boost::enable_shared_from_this { public: - typedef boost::shared_ptr ptr_t; + typedef Ptr ptr_t; /*! this class represents a variable such as 'x' or 'x_1' as it * is being used in an arithmetic expression */ ASTExprIdentifier(ASTIdentifierSubPtr i) : id(i) {} @@ -344,7 +344,7 @@ typedef ASTExprIdentifier::ptr_t ASTExprIdentifierPtr; class ASTUnaryOp : public ASTExpr { public: - typedef boost::shared_ptr ptr_t; + typedef Ptr ptr_t; /*! this class represents an operation on one variable or expression */ ASTUnaryOp(ASTExprPtr e) : expr(e) {} @@ -372,7 +372,7 @@ class ASTNegative : public ASTUnaryOp, public boost::enable_shared_from_this { public: - typedef boost::shared_ptr ptr_t; + typedef Ptr ptr_t; /*! given a variable 'x' (or a more complex expression), this class * represents -x */ ASTNegative(ASTExprPtr expr) : ASTUnaryOp(expr) {} @@ -398,7 +398,7 @@ typedef ASTNegative::ptr_t ASTNegativePtr; class ASTBinaryOp : public ASTExpr { public: - typedef boost::shared_ptr ptr_t; + typedef Ptr ptr_t; /*! this class represents operations on two variables or expressions * and so it stores a left-hand side and a right-hand side */ ASTBinaryOp(ASTExprPtr lhs, ASTExprPtr rhs) : lhs(lhs), rhs(rhs) {} @@ -438,7 +438,7 @@ class ASTAdd : public ASTBinaryOp, public boost::enable_shared_from_this { public: - typedef boost::shared_ptr ptr_t; + typedef Ptr ptr_t; /*! this class represents the addition of its two input expressions */ ASTAdd(ASTExprPtr lhs, ASTExprPtr rhs) : ASTBinaryOp(lhs,rhs) {} ASTExprPtr clone() const { return ptr_t(new ASTAdd(*this)); } @@ -470,7 +470,7 @@ class ASTSub : public ASTBinaryOp, public boost::enable_shared_from_this { public: - typedef boost::shared_ptr ptr_t; + typedef Ptr ptr_t; /*! this class represents the subtraction of the right-hand side * from the left-hand side */ ASTSub(ASTExprPtr lhs, ASTExprPtr rhs) : ASTBinaryOp(lhs,rhs) {} @@ -503,7 +503,7 @@ class ASTMul : public ASTBinaryOp, public boost::enable_shared_from_this { public: - typedef boost::shared_ptr ptr_t; + typedef Ptr ptr_t; /*! this class represents the multiplication of its two input * expressions */ ASTMul(ASTExprPtr lhs, ASTExprPtr rhs) : ASTBinaryOp(lhs,rhs) {} @@ -536,7 +536,7 @@ class ASTDiv : public ASTBinaryOp, public boost::enable_shared_from_this { public: - typedef boost::shared_ptr ptr_t; + typedef Ptr ptr_t; /*! this class represents the division of the right-hand side from * the left-hand side */ ASTDiv(ASTExprPtr lhs, ASTExprPtr rhs) : ASTBinaryOp(lhs,rhs) {} @@ -571,7 +571,7 @@ class ASTPow : public ASTBinaryOp, public boost::enable_shared_from_this { public: - typedef boost::shared_ptr ptr_t; + typedef Ptr ptr_t; /*! this class represents raising the left-hand side to the * right-hand side */ ASTPow(ASTExprPtr base, ASTExprPtr exp) : ASTBinaryOp(base,exp) {} @@ -606,7 +606,7 @@ class ASTList : public ASTNode, public boost::enable_shared_from_this { public: - typedef boost::shared_ptr ptr_t; + typedef Ptr ptr_t; /*! this class is the parent class for any type of parameterized list */ ASTList() {} @@ -639,7 +639,7 @@ typedef ASTList::ptr_t ASTListPtr; class ASTListIdentifierLit : public ASTList { public: - typedef boost::shared_ptr ptr_t; + typedef Ptr ptr_t; /*! this class represents a list of variables 'x, y, z', etc */ ASTIdentifierLitPtr getLit(int x) { return dynamic_pointer_cast(list[x]); } @@ -658,7 +658,7 @@ typedef ASTListIdentifierLit::ptr_t ASTListIdentifierLitPtr; class ASTListIdentifierSub : public ASTList { public: - typedef boost::shared_ptr ptr_t; + typedef Ptr ptr_t; /*! this class represents a list of variables 'x_1, x_2', etc */ ASTListIdentifierSub() {} @@ -693,7 +693,7 @@ typedef ASTListIdentifierSub::ptr_t ASTListIdentifierSubPtr; class ASTListDecl : public ASTList { public: - typedef boost::shared_ptr ptr_t; + typedef Ptr ptr_t; /*! this class is used as a parent for any list of declarations */ void visit(ASTVisitor& v){ v.applyASTListDecl(dynamic_pointer_cast(shared_from_this())); } @@ -708,7 +708,7 @@ typedef ASTListDecl::ptr_t ASTListDeclPtr; class ASTListDeclIdentifierLit : public ASTListDecl { public: - typedef boost::shared_ptr ptr_t; + typedef Ptr ptr_t; /*! this represents a list of variables 'x, y, z' that are * being declared within the list */ void visit(ASTVisitor& v) { @@ -727,7 +727,7 @@ typedef ASTListDeclIdentifierLit::ptr_t ASTListDeclIdentifierLitPtr; class ASTListDeclIdentifierSub : public ASTListDecl { public: - typedef boost::shared_ptr ptr_t; + typedef Ptr ptr_t; /*! this represents a list of variables 'x_1, x_2, x_3' that are * being declared within the list */ void visit(ASTVisitor& v) { @@ -747,7 +747,7 @@ class ASTDeclIDRange : public ASTDeclGeneral, public boost::enable_shared_from_this { public: - typedef boost::shared_ptr ptr_t; + typedef Ptr ptr_t; /*! this represents a variable declaration of the form 'x[1:3]', which * is shorthand for declaring 'x_1, x_2, x_3' */ ASTDeclIDRange(ASTDeclIdentifierLitPtr b, ASTExprPtr lbound, ASTExprPtr ubound) @@ -808,7 +808,7 @@ typedef ASTDeclIDRange::ptr_t ASTDeclIDRangePtr; class ASTRelation : public ASTNode { public : - typedef boost::shared_ptr ptr_t; + typedef Ptr ptr_t; /*! this class represents the relations between variables we will * want to be proving in our zero-knowledge proof */ virtual ptr_t clone() const = 0; @@ -825,7 +825,7 @@ class ASTForRel : public ASTRelation, public boost::enable_shared_from_this { public: - typedef boost::shared_ptr ptr_t; + typedef Ptr ptr_t; /*! this class represents a line of the form * 'for(i, 1:4, c_i = g^x_i * h^r_i)' */ ASTForRel(ASTIdentifierLitPtr index, ASTExprPtr lbound, @@ -876,7 +876,7 @@ class ASTEqual : public ASTRelation, public boost::enable_shared_from_this { public: - typedef boost::shared_ptr ptr_t; + typedef Ptr ptr_t; /*! this class represents a line of the form 'id = expr' */ ASTEqual(ASTIdentifierSubPtr i, ASTExprPtr e) : id(i), expr(e) {} @@ -913,7 +913,7 @@ class ASTCommitment : public ASTRelation, public boost::enable_shared_from_this { public: - typedef boost::shared_ptr ptr_t; + typedef Ptr ptr_t; /*! this class represents a line of the form * 'commitment to x: c_x = g^x * h^r_x' */ ASTCommitment(ASTListIdentifierSubPtr c, ASTIdentifierSubPtr i, ASTExprPtr e) @@ -956,7 +956,7 @@ typedef ASTCommitment::ptr_t ASTCommitmentPtr; class ASTGiven : public ASTNode { public: - typedef boost::shared_ptr ptr_t; + typedef Ptr ptr_t; /*! this class is used to represent blocks of declarations */ ASTGiven(ASTListDeclPtr items) : items(items) {} @@ -978,7 +978,7 @@ class ASTRandomPrime : public ASTGiven, public boost::enable_shared_from_this { public: - typedef boost::shared_ptr ptr_t; + typedef Ptr ptr_t; /*! this class represents a line of the form * 'random prime(s) of length {length}: idList */ ASTRandomPrime(ASTExprPtr length, ASTListDeclPtr idList) : @@ -1012,7 +1012,7 @@ class ASTRandomBnd : public ASTGiven, public boost::enable_shared_from_this { public: - typedef boost::shared_ptr ptr_t; + typedef Ptr ptr_t; /*! this class represents a line of the form * 'random integer(s) in [lbound, ubound): idList */ ASTRandomBnd(ASTExprPtr lbound, ASTExprPtr ubound, ASTListDeclPtr idList) : @@ -1050,7 +1050,7 @@ class ASTDeclGroup : public ASTGiven, public boost::enable_shared_from_this { public: - typedef boost::shared_ptr ptr_t; + typedef Ptr ptr_t; /*! this class represents a line of the form * 'group: G = * modulus: N', where specifying both the generators and the @@ -1090,7 +1090,7 @@ class ASTDeclIntegers : public ASTGiven, public boost::enable_shared_from_this { public: - typedef boost::shared_ptr ptr_t; + typedef Ptr ptr_t; /*! this class represents a list such as 'integers: stat, m, l_x' */ ASTDeclIntegers(ASTListDeclPtr i) : ASTGiven(i) {} @@ -1112,7 +1112,7 @@ typedef ASTDeclIntegers::ptr_t ASTDeclIntegersPtr; class ASTListGiven : public ASTList { public: - typedef boost::shared_ptr ptr_t; + typedef Ptr ptr_t; /*! this class represents a list of declarations that appear in * the given block of a program */ void visit(ASTVisitor& v) { @@ -1131,7 +1131,7 @@ typedef ASTListGiven::ptr_t ASTListGivenPtr; class ASTListRandoms : public ASTList { public: - typedef boost::shared_ptr ptr_t; + typedef Ptr ptr_t; /*! this class represents a collection of random computations, * such as computing random primes, computing random integers in * a given range, and computing random exponents in a given group */ @@ -1151,7 +1151,7 @@ typedef ASTListRandoms::ptr_t ASTListRandomsPtr; class ASTListRelation : public ASTList { public: - typedef boost::shared_ptr ptr_t; + typedef Ptr ptr_t; /*! this class represents a list of relations that will appear in * the 'such that' block of the program */ void visit(ASTVisitor& v) { @@ -1171,7 +1171,7 @@ class ASTDeclElements : public ASTGiven, public boost::enable_shared_from_this { public: - typedef boost::shared_ptr ptr_t; + typedef Ptr ptr_t; /*! this class represents a declaration of group elements such as * 'elements in G: A, B, c[1:3]', with an optional area for declaring * relations (specifically for specifying the forms of commitments) */ @@ -1209,7 +1209,7 @@ class ASTDeclExponents : public ASTGiven, public boost::enable_shared_from_this { public: - typedef boost::shared_ptr ptr_t; + typedef Ptr ptr_t; /*! this class represents a list of declarations of exponents, such as * 'exponents in G: a, b, c' */ ASTDeclExponents(ASTIdentifierLitPtr g, ASTListDeclPtr e) @@ -1241,7 +1241,7 @@ class ASTDeclRandExponents : public ASTGiven, public boost::enable_shared_from_this { public: - typedef boost::shared_ptr ptr_t; + typedef Ptr ptr_t; /*! this class represents a list of declarations of random exponents * (only to be used in the compute block), such as * 'random exponents in G: r_a, r_b, r_c' */ @@ -1274,7 +1274,7 @@ class ASTDeclEqual : public ASTRelation, public boost::enable_shared_from_this { public: - typedef boost::shared_ptr ptr_t; + typedef Ptr ptr_t; /*! this class represents a line of the form 'x := a * b */ ASTDeclEqual(ASTDeclIdentifierSubPtr i, ASTExprPtr e) : id(i), expr(e) {} @@ -1313,7 +1313,7 @@ class ASTRange : public ASTRelation, public boost::enable_shared_from_this { public: - typedef boost::shared_ptr ptr_t; + typedef Ptr ptr_t; /*! this class is the parent for two types of ranges */ ASTRange(ASTIdentifierLitPtr g, ASTExprPtr l, bool ls, ASTExprPtr c, bool us, ASTExprPtr u) @@ -1371,7 +1371,7 @@ class ASTForExpr : public ASTExpr, public boost::enable_shared_from_this { public: - typedef boost::shared_ptr ptr_t; + typedef Ptr ptr_t; /*! this class represents a line of the form * 'for(i, 1:3, *, g^x_i)' */ ASTForExpr(ASTIdentifierLitPtr i, ASTExprPtr l, ASTExprPtr u, @@ -1440,7 +1440,7 @@ class ASTComputation : public ASTNode, public boost::enable_shared_from_this { public: - typedef boost::shared_ptr ptr_t; + typedef Ptr ptr_t; /*! this class represents an entire computation block, in particular * the given block, and the two parts of the compute block: the * random computations and the declEqual computations */ @@ -1479,7 +1479,7 @@ class ASTProof : public ASTNode, public boost::enable_shared_from_this { public: - typedef boost::shared_ptr ptr_t; + typedef Ptr ptr_t; /*! this class represents an entire proof block: the given block, * the 'prove knowledge of' block, and the 'such that' block */ ASTProof(ASTListGivenPtr g, ASTListGivenPtr k, ASTListRelationPtr s) @@ -1517,7 +1517,7 @@ class ASTSpec : public ASTNode, public boost::enable_shared_from_this { public: - typedef boost::shared_ptr ptr_t; + typedef Ptr ptr_t; /*! this class represents the whole program, consisting of the * computation block and the proof block (both of which are * optional) */ diff --git a/src/ZKP/ASTVisitor.h b/src/ZKP/ASTVisitor.h index 6d21ba0..dc4c1a0 100644 --- a/src/ZKP/ASTVisitor.h +++ b/src/ZKP/ASTVisitor.h @@ -52,65 +52,65 @@ class ASTVisitor { public: virtual ~ASTVisitor() {} - virtual void applyASTNode(boost::shared_ptr n) = 0; + virtual void applyASTNode(Ptr n) = 0; //Lists - virtual void applyASTList(boost::shared_ptr n) = 0; - virtual void applyASTListIdentifierLit(boost::shared_ptr n) = 0; - virtual void applyASTListIdentifierSub(boost::shared_ptr n) = 0; - virtual void applyASTListDeclIdentifierLit(boost::shared_ptr n) = 0; - virtual void applyASTListDeclIdentifierSub(boost::shared_ptr n) = 0; - virtual void applyASTListRelation(boost::shared_ptr n) = 0; - virtual void applyASTListGiven(boost::shared_ptr n) = 0; - virtual void applyASTListRandoms(boost::shared_ptr n) = 0; - virtual void applyASTListDecl(boost::shared_ptr n) = 0; - virtual void applyASTDeclIDRange(boost::shared_ptr n) = 0; + virtual void applyASTList(Ptr n) = 0; + virtual void applyASTListIdentifierLit(Ptr n) = 0; + virtual void applyASTListIdentifierSub(Ptr n) = 0; + virtual void applyASTListDeclIdentifierLit(Ptr n) = 0; + virtual void applyASTListDeclIdentifierSub(Ptr n) = 0; + virtual void applyASTListRelation(Ptr n) = 0; + virtual void applyASTListGiven(Ptr n) = 0; + virtual void applyASTListRandoms(Ptr n) = 0; + virtual void applyASTListDecl(Ptr n) = 0; + virtual void applyASTDeclIDRange(Ptr n) = 0; //Expressions - virtual void applyASTExpr(boost::shared_ptr n) = 0; - virtual void applyASTExprInt(boost::shared_ptr n) = 0; - virtual void applyASTUnaryOp(boost::shared_ptr n) = 0; - virtual void applyASTBinaryOp(boost::shared_ptr n) = 0; - virtual void applyASTNegative(boost::shared_ptr n) = 0; - virtual void applyASTExprIdentifier(boost::shared_ptr n) = 0; - virtual void applyASTPow(boost::shared_ptr n) = 0; - virtual void applyASTMul(boost::shared_ptr n) = 0; - virtual void applyASTDiv(boost::shared_ptr n) = 0; - virtual void applyASTAdd(boost::shared_ptr n) = 0; - virtual void applyASTSub(boost::shared_ptr n) = 0; + virtual void applyASTExpr(Ptr n) = 0; + virtual void applyASTExprInt(Ptr n) = 0; + virtual void applyASTUnaryOp(Ptr n) = 0; + virtual void applyASTBinaryOp(Ptr n) = 0; + virtual void applyASTNegative(Ptr n) = 0; + virtual void applyASTExprIdentifier(Ptr n) = 0; + virtual void applyASTPow(Ptr n) = 0; + virtual void applyASTMul(Ptr n) = 0; + virtual void applyASTDiv(Ptr n) = 0; + virtual void applyASTAdd(Ptr n) = 0; + virtual void applyASTSub(Ptr n) = 0; - virtual void applyASTForExpr(boost::shared_ptr n) = 0; - virtual void applyASTForRel(boost::shared_ptr n) = 0; + virtual void applyASTForExpr(Ptr n) = 0; + virtual void applyASTForRel(Ptr n) = 0; //Relations - virtual void applyASTRelation(boost::shared_ptr n) = 0; - virtual void applyASTEqual(boost::shared_ptr n) = 0; - virtual void applyASTCommitment(boost::shared_ptr n) = 0; - virtual void applyASTRange(boost::shared_ptr n) = 0; - virtual void applyASTDeclEqual(boost::shared_ptr n) = 0; - virtual void applyASTRandomBnd(boost::shared_ptr n) = 0; - virtual void applyASTRandomPrime(boost::shared_ptr n) = 0; + virtual void applyASTRelation(Ptr n) = 0; + virtual void applyASTEqual(Ptr n) = 0; + virtual void applyASTCommitment(Ptr n) = 0; + virtual void applyASTRange(Ptr n) = 0; + virtual void applyASTDeclEqual(Ptr n) = 0; + virtual void applyASTRandomBnd(Ptr n) = 0; + virtual void applyASTRandomPrime(Ptr n) = 0; //Declarations - virtual void applyASTDeclIdentifierLit(boost::shared_ptr n) = 0; - virtual void applyASTDeclIdentifierSub(boost::shared_ptr n) = 0; + virtual void applyASTDeclIdentifierLit(Ptr n) = 0; + virtual void applyASTDeclIdentifierSub(Ptr n) = 0; //"Given" Constructions - virtual void applyASTGiven(boost::shared_ptr n) = 0; - virtual void applyASTDeclElements(boost::shared_ptr n) = 0; - virtual void applyASTDeclExponents(boost::shared_ptr n) = 0; - virtual void applyASTDeclRandExponents(boost::shared_ptr n) = 0; - virtual void applyASTDeclGroup(boost::shared_ptr n) = 0; - virtual void applyASTDeclIntegers(boost::shared_ptr n) = 0; + virtual void applyASTGiven(Ptr n) = 0; + virtual void applyASTDeclElements(Ptr n) = 0; + virtual void applyASTDeclExponents(Ptr n) = 0; + virtual void applyASTDeclRandExponents(Ptr n) = 0; + virtual void applyASTDeclGroup(Ptr n) = 0; + virtual void applyASTDeclIntegers(Ptr n) = 0; //The Core Constructions - virtual void applyASTProof(boost::shared_ptr n) = 0; - virtual void applyASTComputation(boost::shared_ptr n) = 0; - virtual void applyASTSpec(boost::shared_ptr n) = 0; + virtual void applyASTProof(Ptr n) = 0; + virtual void applyASTComputation(Ptr n) = 0; + virtual void applyASTSpec(Ptr n) = 0; //Other - virtual void applyASTIdentifierLit(boost::shared_ptr n) = 0; - virtual void applyASTIdentifierSub(boost::shared_ptr n) = 0; + virtual void applyASTIdentifierLit(Ptr n) = 0; + virtual void applyASTIdentifierSub(Ptr n) = 0; }; #endif /*_ASTVISITOR_H_*/ diff --git a/src/ZKP/Environment.h b/src/ZKP/Environment.h index 39de1f0..aa515db 100644 --- a/src/ZKP/Environment.h +++ b/src/ZKP/Environment.h @@ -122,8 +122,8 @@ class Environment { * computed by verifier at runtime */ dlr_map rangeComs; /*! information for caching powers of known bases */ - boost::shared_ptr cache; - boost::shared_ptr multiCache; + Ptr cache; + Ptr multiCache; /*! clears out all the maps */ void clear(); diff --git a/src/ZKP/Interpreter.cpp b/src/ZKP/Interpreter.cpp index f77b2da..eef02b6 100644 --- a/src/ZKP/Interpreter.cpp +++ b/src/ZKP/Interpreter.cpp @@ -22,8 +22,6 @@ #define UNUSED 0 -using boost::shared_ptr; - void Interpreter::check(const string &programName, input_map inputs, group_map groups) { // first check if program has already been compiled From fdcf2ecc63b152fe526691f70339a758a281d5f9 Mon Sep 17 00:00:00 2001 From: chris erway Date: Sat, 18 Dec 2010 19:27:34 -0500 Subject: [PATCH 04/31] clarify (mini)NTL and license for ZZ.c --- src/FourSquares.cpp | 3 +++ src/NTL/ZZ.cpp | 12 ++++++++++++ src/NTL/ZZ.h | 22 ++++++++++++++-------- 3 files changed, 29 insertions(+), 8 deletions(-) diff --git a/src/FourSquares.cpp b/src/FourSquares.cpp index b74d446..fc6398f 100644 --- a/src/FourSquares.cpp +++ b/src/FourSquares.cpp @@ -21,6 +21,9 @@ CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. Change history + October 2008 Brownie Points Project (http://cs.brown.edu/research/brownie) + - Converted to C++ for use in Cashlib library. + 29-Nov-2005 Peter Schorn - Added isProbableSquare diff --git a/src/NTL/ZZ.cpp b/src/NTL/ZZ.cpp index 0392d73..8a742b9 100644 --- a/src/NTL/ZZ.cpp +++ b/src/NTL/ZZ.cpp @@ -34,6 +34,18 @@ inline long MakeOdd(ZZ& z) { return mpz_remove(MPZ(z), MPZ(z), MPZ(ZZ(2))); // XXX probably not very fast } + +/* The following code for GenPrime and GenGermainPrime was copied & + * ported from NTL g_lip_impl.h and ZZ.c, probably from version 5.4.1 + * + * Author: Victor Shoup (victor@shoup.net) + * http://www.shoup.net/ntl/ + * + * NTL is open-source software distributed under the terms of the + * GNU General Public License. + */ + + /* from NTL's g_lip_impl.h */ /* diff --git a/src/NTL/ZZ.h b/src/NTL/ZZ.h index 935b860..4248cc0 100644 --- a/src/NTL/ZZ.h +++ b/src/NTL/ZZ.h @@ -1,21 +1,29 @@ #ifndef __GMPXX_ZZ_H__ #define __GMPXX_ZZ_H__ #include +#include #include "CashException.h" #include "Serialize.h" -#define MININTL_GMPXX 1 +/* + * miniNTL: somewhat NTL-compatible ZZ and vec_ZZ classes, + * backed by mpz_class from GNU GMP C++ API (gmpxx.h). + * + * based on + * NTL http://www.shoup.net/ntl/ + * ZZ http://www.shoup.net/ntl/doc/ZZ.txt + * vec_ZZ http://www.shoup.net/ntl/doc/vec_ZZ.txt + */ #define NTL_CLIENT using std::vector; using std::string; using namespace NTL; namespace NTL { +// MININTL_GMPXX indicates ZZ's are actually mpz_class from GMP++ +#define MININTL_GMPXX 1 typedef mpz_class ZZ; - -#define to_ZZ(x) ZZ(x) - -// helpful macros for implementing mpz_ versions below -#define MPZ(x) (x).get_mpz_t() +#define MPZ(x) (x).get_mpz_t() // helpful for using mpz_ functions +#define to_ZZ(x) ZZ(x) // mpz_class constructor handles NTL::to_ZZ cases void SetSeed(const ZZ& z); void SetSeed(unsigned long int l); @@ -177,8 +185,6 @@ inline ZZ GenPrime_ZZ(long l, long err = 80) { ZZ r; GenPrime(r, l, err); return void GenGermainPrime(ZZ& n, long l, long err = 80); inline ZZ GenGermainPrime_ZZ(long l, long err = 80) { ZZ r; GenGermainPrime(r, l, err); return r; } -// XXX NOT IMPLEMENTED -#include // x = sum(p[i]*256^i, i=0..n-1). inline void ZZFromBytes(ZZ& x, const unsigned char *p, long n) { // NTL uses native byte order? (that means all our data files are little-endian?) From 3fa150e3b36cb2258cba4b1a108844c1d1a14d68 Mon Sep 17 00:00:00 2001 From: chris erway Date: Sat, 18 Dec 2010 21:29:11 -0500 Subject: [PATCH 05/31] [shared_ptr branch] got rid of deletes, unnecessary copy constructors. seems to compile.. --- src/Arbiter.cpp | 42 ++++---- src/Arbiter.h | 2 +- src/BankParameters.cpp | 28 ++---- src/BankParameters.h | 13 +-- src/BankTool.cpp | 21 ++-- src/BankTool.h | 6 +- src/BuyMessage.cpp | 2 +- src/Buyer.cpp | 31 +++--- src/Buyer.h | 15 ++- src/CLBlindIssuer.cpp | 3 +- src/CLSignatureVerifier.cpp | 9 +- src/CLSignatureVerifier.h | 2 +- src/Coin.cpp | 2 +- src/FEInitiator.cpp | 42 ++------ src/FEInitiator.h | 9 +- src/FEMessage.h | 9 +- src/FEResolutionMessage.h | 2 +- src/FEResponder.cpp | 40 ++------ src/FEResponder.h | 3 - src/FESetupMessage.h | 3 - src/GroupRSA.h | 2 +- src/MerkleContract.h | 5 + src/MerkleProof.h | 2 +- src/MerkleProver.cpp | 2 +- src/Seller.cpp | 25 +---- src/Seller.h | 3 - src/Test.cpp | 169 ++++++++++++++++---------------- src/UserTool.cpp | 12 ++- src/UserTool.h | 40 ++++---- src/UserWithdrawTool.cpp | 14 +-- src/UserWithdrawTool.h | 4 - src/VEDecrypter.cpp | 12 +-- src/VEProver.cpp | 2 +- src/Wallet.cpp | 8 +- src/ZKP/ASTVisitor.h | 1 + src/ZKP/Interpreter.cpp | 6 +- src/ZKP/InterpreterProver.cpp | 2 +- src/ZKP/InterpreterVerifier.cpp | 2 +- src/ZKP/ZKPTest.cpp | 4 +- 39 files changed, 238 insertions(+), 361 deletions(-) diff --git a/src/Arbiter.cpp b/src/Arbiter.cpp index 8780c61..1ae45bd 100644 --- a/src/Arbiter.cpp +++ b/src/Arbiter.cpp @@ -26,22 +26,22 @@ vector Arbiter::sellerResolveI(const ResolutionPair &keyMessagePair){ // want to store the contract as well (for stage II) contract = buyMessage->getContract(); // check the timeout to make sure it hasn't passed - if(contract.checkTimeout(timeoutTolerance)) { - endorsement = verifiableDecrypter->decrypt(escrow.getCiphertext(), - saveString(contract), hashAlg); + if(contract->checkTimeout(timeoutTolerance)) { + endorsement = verifiableDecrypter->decrypt(escrow->getCiphertext(), + saveString(*contract), hashAlg); // make sure the endorsement on the coin is valid if(coinPrime.verifyEndorsement(endorsement)){ // construct verifiers based on the data in the contract and // return a set of challenges - hash_t ptHash = contract.getPTHashB(); - hash_t ctHash = contract.getCTHashB(); + hash_t ptHash = contract->getPTHashB(); + hash_t ctHash = contract->getCTHashB(); ptVerifier = new_ptr( ptHash, - contract.getNumPTHashBlocksB(), + contract->getNumPTHashBlocksB(), MerkleContract(ptHash.key,ptHash.alg)); ctVerifier = new_ptr( ctHash, - contract.getNumCTHashBlocksB(), + contract->getNumCTHashBlocksB(), MerkleContract(ctHash.key,ctHash.alg)); return ptVerifier->getChallenges(); } else { @@ -59,7 +59,7 @@ vector Arbiter::sellerResolveII(Ptr proof){ if(verifyKeys(proof)){ if(updateDB){ vector rVec; - rVec.push_back(contract.getID()); + rVec.push_back(contract->getID()); // store the keys (for the buyer later) updateDB(Hash::hash(rVec,hashAlg), keys); } @@ -83,7 +83,7 @@ bool Arbiter::verifyKeys(Ptr proof) { // 1. decrypt the blocks unsigned index = (keys.size() == 1) ? 0 : i; decryptedBlocks[i] = cTextBlocks[i]->decrypt(keys[index], - contract.getEncAlgB()); + contract->getEncAlgB()); // 2. hash them hashedBlocks[i] = proof->getPTContract()->hash(decryptedBlocks[i]); // 3. check if they match the public plaintext hashes @@ -92,7 +92,7 @@ bool Arbiter::verifyKeys(Ptr proof) { } while(validDecryption && i < cTextBlocks.size()); // now finish verifying using the MerkleVerifiers - if(contract.getPTHashB().type == Hash::TYPE_MERKLE){ + if(contract->getPTHashB().type == Hash::TYPE_MERKLE){ return (validDecryption && ctVerifier->verifyProofs(proof->getCTextProof()) && ptVerifier->verifyProofs(proof->getPTextProof())); @@ -100,7 +100,7 @@ bool Arbiter::verifyKeys(Ptr proof) { hash_t ptHash = proof->getPTContract()->hash(proof->getPlaintext()); return (validDecryption && ctVerifier->verifyProofs(proof->getCTextProof()) && - (ptHash == message->getContract().getPTHashB())); + (ptHash == message->getContract()->getPTHashB())); } } @@ -113,7 +113,7 @@ bool Arbiter::verifyDecryption(Ptr proof){ do{ unsigned index = (keys.size() == 1) ? 0 : i; decryptedBlocks[i] = cTextBlocks[i]->decrypt(keys[index], - contract.getEncAlgA()); + contract->getEncAlgA()); hashedBlocks[i] = proof->getCTContract()->hash(decryptedBlocks[i]); validDecryption = hashedBlocks[i] == proof->getPTextProof()[i][0].node; i++; @@ -139,12 +139,12 @@ vector Arbiter::responderResolveI(const vector &ks, // this is the regular encryption vector sigEscrow = message->getEscrow(); // this is the verifiable encryption - VECiphertext vEscrow = setup->getEscrow(); + Ptr vEscrow = setup->getEscrow(); contract = message->getContract(); Ptr sigPK = setup->getPK(); // verify that the signature given in BarterMessage is correct - bool sigCorrect = Signature::verify(sigPK, message->getSignature(), + bool sigCorrect = Signature::verify(*sigPK, message->getSignature(), CommonFunctions::vecToString(sigEscrow), hashAlg); if (!sigCorrect){ @@ -153,12 +153,12 @@ vector Arbiter::responderResolveI(const vector &ks, } // also need to make sure the contract hasn't expired - if (!contract.checkTimeout(timeoutTolerance)){ + if (!contract->checkTimeout(timeoutTolerance)){ throw CashException(CashException::CE_FE_ERROR, "[Arbiter::responderResolveI] contract has expired"); } - vector end = verifiableDecrypter->decrypt(vEscrow.getCiphertext(), + vector end = verifiableDecrypter->decrypt(vEscrow->getCiphertext(), sigPK->publicKeyString(), hashAlg); // now verify the endorsement (and store it if it's valid) @@ -167,15 +167,15 @@ vector Arbiter::responderResolveI(const vector &ks, endorsement = end; // set up merkle verifiers and return challenges - hash_t ptHash = contract.getPTHashB(); - hash_t ctHash = contract.getCTHashB(); + hash_t ptHash = contract->getPTHashB(); + hash_t ctHash = contract->getCTHashB(); ptVerifier = new_ptr( ptHash, - contract.getNumPTHashBlocksB(), + contract->getNumPTHashBlocksB(), MerkleContract(ptHash.key,ptHash.alg)); ctVerifier = new_ptr( ctHash, - contract.getNumCTHashBlocksB(), + contract->getNumCTHashBlocksB(), MerkleContract(ctHash.key,ctHash.alg)); // XXX: right now this is only returning 0 every time!! return ptVerifier->getChallenges(); @@ -189,7 +189,7 @@ vector Arbiter::responderResolveII(Ptr proof){ if(verifyKeys(proof)){ // decrypt the signature escrow vector m = message->getEscrow(); - string label = saveString(contract); + string label = saveString(*contract); vector initiatorVals = regularDecrypter->decrypt(m, label, hashAlg); vector initiatorKeys(initiatorVals.size()); for(unsigned i = 0; i < initiatorVals.size(); i++){ diff --git a/src/Arbiter.h b/src/Arbiter.h index 3b26348..01fe374 100644 --- a/src/Arbiter.h +++ b/src/Arbiter.h @@ -73,7 +73,7 @@ class Arbiter { Ptr ptVerifier, ctVerifier; vector endorsement; vector keys; - FEContract contract; + Ptr contract; Ptr message; }; diff --git a/src/BankParameters.cpp b/src/BankParameters.cpp index c6c00e4..209a9ce 100644 --- a/src/BankParameters.cpp +++ b/src/BankParameters.cpp @@ -1,13 +1,14 @@ #include "BankParameters.h" -BankParameters::BankParameters(vector &secrets, GroupPrime &ecashGrp, - vector &denoms) - : coinDenominations(denoms) +BankParameters::BankParameters(const vector > &secrets, + Ptr ecashGrp, + const vector &denoms) + : ecashGroup(ecashGrp), + type(BankParameters::TYPE_SECRET), + coinDenominations(denoms) { - ecashGroup = new_ptr(ecashGrp); - type = BankParameters::TYPE_SECRET; for (unsigned i = 0; i < secrets.size(); i++) { - secretKeys.push_back(new_ptr(secrets[i])); + secretKeys.push_back(secrets[i]); } // set up maps that associate a given key with a denomination @@ -17,21 +18,6 @@ BankParameters::BankParameters(vector &secrets, GroupPrime &ecashGrp, } } -BankParameters::BankParameters(const BankParameters &o) - : ecashGroup(new_ptr(*o.ecashGroup)), type(o.type), - secretKeys(o.secretKeys), groupToDenom(o.groupToDenom), - denomToGroup(o.denomToGroup), coinDenominations(o.coinDenominations) -{ -} - -BankParameters::~BankParameters() { - /*delete ecashGroup; - for (unsigned i = 0 ; i < secretKeys.size() ; i++) { - delete secretKeys[i]; - } - secretKeys.clear();*/ -} - Ptr BankParameters::getBankKey(int denomination) const { map >::const_iterator i = denomToGroup.find(denomination); if (i == denomToGroup.end()) { diff --git a/src/BankParameters.h b/src/BankParameters.h index 8f86795..fa3bfd0 100644 --- a/src/BankParameters.h +++ b/src/BankParameters.h @@ -14,19 +14,14 @@ class BankParameters { public: /*! this class stores the bank's public keys, the group used * for e-cash, and a list of possible coin denominations */ - BankParameters(vector &secretKey, GroupPrime &ecash, - vector &denoms); + BankParameters(const vector >& secretKey, + Ptr ecash, + const vector& denoms); /*! constructor to load from file */ BankParameters(const char* fname) { loadFile(make_nvp("BankParameters", *this), fname); } - /*! copy constructor */ - BankParameters(const BankParameters &original); - - /*! destructor */ - ~BankParameters(); - /*! determines whether RSA groups have had secrets cleared or not */ static const int TYPE_SECRET = 1; static const int TYPE_PUBLIC = 0; @@ -43,7 +38,7 @@ class BankParameters { void makePublic(); private: - BankParameters() : ecashGroup(0), type(1) {} + BankParameters() : type(1) {} Ptr ecashGroup; int type; diff --git a/src/BankTool.cpp b/src/BankTool.cpp index fa4099b..e44fb46 100644 --- a/src/BankTool.cpp +++ b/src/BankTool.cpp @@ -6,22 +6,23 @@ BankTool::BankTool(int st, int l, int modLen, const hashalg_t &ha, vector &coinDenoms) : stat(st), lx(l), hashAlg(ha) { - vector secretKeys; + vector > secretKeys; for(unsigned i = 0; i < coinDenoms.size(); i++) { - GroupRSA g("bank", modLen, stat); + Ptr g = new_ptr("bank", modLen, stat); // initial generator is f // want to add g_1,...,g_4,h for (int j = 0; j < 5; j++) { - g.addNewGenerator(); + g->addNewGenerator(); } secretKeys.push_back(g); } // generator: f (different from RSA group) - GroupPrime cashGroup("bank", modLen, 2*stat, stat); + Ptr cashGroup = + new_ptr("bank", modLen, 2*stat, stat); // additional endorsed ecash group generators: g, h, h1, h2 for (int i = 0; i < 4; i++) { - cashGroup.addNewGenerator(); + cashGroup->addNewGenerator(); } bankParameters = new_ptr(secretKeys, cashGroup, coinDenoms); @@ -40,16 +41,6 @@ BankTool::BankTool(int st, int l, const hashalg_t &ha, publicBankParameters->makePublic(); } -BankTool::BankTool(const BankTool &o) - : stat(o.stat), lx(o.lx), hashAlg(o.hashAlg), - bankParameters(o.bankParameters) // XXX: what about public BP? -{ -} - -BankTool::~BankTool() { - delete bankParameters; -} - Ptr BankTool::getWithdrawTool(const ZZ &userPK, int wSize, int coinDenom) const { return new_ptr(bankParameters, userPK, stat, lx, wSize, diff --git a/src/BankTool.h b/src/BankTool.h index 4a04445..f2a5279 100644 --- a/src/BankTool.h +++ b/src/BankTool.h @@ -14,14 +14,10 @@ class BankTool { BankTool(int st, int l, const hashalg_t &ha, BankParameters bp); - BankTool(const BankTool &original); - BankTool(const char *fname) - : bankParameters(0), publicBankParameters(0) + : bankParameters(), publicBankParameters() { loadFile(make_nvp("BankTool", *this), fname); } - ~BankTool(); - // getters Ptr getBankParameters() const { return publicBankParameters; } diff --git a/src/BuyMessage.cpp b/src/BuyMessage.cpp index a9b9a2c..ae0c6ef 100644 --- a/src/BuyMessage.cpp +++ b/src/BuyMessage.cpp @@ -13,7 +13,7 @@ bool BuyMessage::check(Ptr pk, const int stat, startTimer(); VEVerifier verifier(pk); if (!verifier.verify(*escrow, coinPrime.getEndorsementCom(), - coinPrime.getCashGroup(), saveString(contract), + coinPrime.getCashGroup(), saveString(*contract), pk->hashAlg, stat)) throw CashException(CashException::CE_FE_ERROR, "[BuyMessage::check] Malformed escrow"); diff --git a/src/Buyer.cpp b/src/Buyer.cpp index d56845a..904da8f 100644 --- a/src/Buyer.cpp +++ b/src/Buyer.cpp @@ -9,16 +9,10 @@ // Constructors Buyer::Buyer(int timeoutLength, Ptr pk, int stat) : timeoutLength(timeoutLength), stat(stat), pk(pk), - contract(NULL), inProgress(false) + inProgress(false) { } -Buyer::Buyer(const Buyer& o) - : timeoutLength(o.timeoutLength), stat(o.stat), pk(o.pk), - contract(o.contract? new_ptr(*o.contract) : NULL), - r(o.r), endorsement(o.endorsement), inProgress(o.inProgress) -{ -} /*----------------------------------------------------------------------------*/ // Destructor Buyer::~Buyer() { @@ -27,15 +21,12 @@ Buyer::~Buyer() { void Buyer::reset() { inProgress = false; -#ifdef DELETE_BUFFERS - for (unsigned i = 0; i < ptext.size(); i++) { - delete ptext[i]; - } -#endif ptext.clear(); - delete contract; - contract = NULL; + ctext.clear(); + contract.reset(); + coin.reset(); } + /*----------------------------------------------------------------------------*/ // Buy Ptr Buyer::buy(Ptr wallet, Ptr ciphertext, @@ -98,7 +89,7 @@ Ptr Buyer::buy(const vector >& ct, // set inProgress inProgress = true; - return new_ptr(coin, contract, escrow); + return new_ptr(*coin, contract, escrow); } void Buyer::createContract() { @@ -113,8 +104,8 @@ void Buyer::createContract() { VECiphertext Buyer::makeEscrow() { // now set up the verifiable encryption VEProver prover(pk); - return prover.verifiableEncrypt(coin.getEndorsementCom(), endorsement, - coin.getCashGroup(), saveString(*contract), + return prover.verifiableEncrypt(coin->getEndorsementCom(), endorsement, + coin->getCashGroup(), saveString(*contract), pk->hashAlg, stat); } @@ -123,11 +114,11 @@ void Buyer::makeCoin(Wallet& w, const ZZ& R) { setCoin( w.nextCoin(R) ); } -void Buyer::setCoin(const Coin& c) +void Buyer::setCoin(Ptr c) { coin = c; - endorsement = coin.getEndorsement(); - coin.unendorse(); + endorsement = coin->getEndorsement(); + coin->unendorse(); } /*----------------------------------------------------------------------------*/ diff --git a/src/Buyer.h b/src/Buyer.h index 802c3bd..d832679 100644 --- a/src/Buyer.h +++ b/src/Buyer.h @@ -14,9 +14,6 @@ class Buyer { * arbiter's public key */ Buyer(int timeoutLength, Ptr pk, int stat); - /*! copy constructor */ - Buyer(const Buyer &o); - /*! destructor */ ~Buyer(); @@ -59,13 +56,13 @@ class Buyer { /*! get the endorsement (send after key is checked) */ const vector& getEndorsement() const { return endorsement; } - bool canAbortLocally() {return !inProgress; }; + bool canAbortLocally() { return !inProgress; }; // setters - void setCoin(const Coin& coin); - void setTimeout() { timeout =time(NULL) + timeoutLength; } - void setSecurity(const int newstat) {stat = newstat;} - void setVEPublicKey(Ptr newpk) {pk = newpk;} + void setCoin(Ptr coin); + void setTimeout() { timeout = time(NULL) + timeoutLength; } + void setSecurity(const int newstat) { stat = newstat; } + void setVEPublicKey(Ptr newpk) { pk = newpk; } void reset(); @@ -80,7 +77,7 @@ class Buyer { int stat; Ptr pk; - Coin coin; + Ptr coin; Ptr contract; // ciphertext to decrypt, received from Seller diff --git a/src/CLBlindIssuer.cpp b/src/CLBlindIssuer.cpp index 0e6dade..eb6771e 100644 --- a/src/CLBlindIssuer.cpp +++ b/src/CLBlindIssuer.cpp @@ -87,7 +87,8 @@ Ptr CLBlindIssuer::getPartialSignature(const ZZ &C, // map for doing issue program ZZ lx = v.at("l_x"); v.clear(); - Ptr grp = (Ptr ) g.at("pkGroup"); + Ptr grp = + dynamic_pointer_cast(g.at("pkGroup")); v["l_x"] = lx; v["stat"] = grp->getStat(); v["modSize"] = grp->getModulusLength(); diff --git a/src/CLSignatureVerifier.cpp b/src/CLSignatureVerifier.cpp index 4ff5a5b..7a23644 100644 --- a/src/CLSignatureVerifier.cpp +++ b/src/CLSignatureVerifier.cpp @@ -49,11 +49,10 @@ CLSignatureVerifier::CLSignatureVerifier(Ptr pk, int lx, verifier.check(fname, inputs); } -bool CLSignatureVerifier::verify(Ptr pm, int stat) { - SigmaProof proof = pm->proof; - variable_map publics1 = pm->proof.getCommitments(); - variable_map publics2 = pm->publics; +bool CLSignatureVerifier::verify(const ProofMessage& pm, int stat) { + variable_map publics1 = pm.proof.getCommitments(); + variable_map publics2 = pm.publics; verifier.compute(v, publics1, publics2, g); - return verifier.verify(proof, stat); + return verifier.verify(pm.proof, stat); } diff --git a/src/CLSignatureVerifier.h b/src/CLSignatureVerifier.h index bd494d8..0dfdf90 100644 --- a/src/CLSignatureVerifier.h +++ b/src/CLSignatureVerifier.h @@ -16,7 +16,7 @@ class CLSignatureVerifier { const vector &coms); /*! checks to see if a signature composed of A, e, and v is valid */ - bool verify(Ptr pm, int stat); + bool verify(const ProofMessage& pm, int stat); private: group_map g; diff --git a/src/Coin.cpp b/src/Coin.cpp index 1f9cc44..57ebb1d 100644 --- a/src/Coin.cpp +++ b/src/Coin.cpp @@ -126,7 +126,7 @@ bool Coin::verifyCoin() const { startTimer(); CLSignatureVerifier clVerifier(pk, comGroup, lx, coms, 3, 1); printTimer("[Coin] Verifier checked CL part"); - bool clVerified = clVerifier.verify(&clProof, stat); + bool clVerified = clVerifier.verify(clProof, stat); printTimer("[Coin] Verified CL possession"); return (ecashVerified && clVerified); } diff --git a/src/FEInitiator.cpp b/src/FEInitiator.cpp index 68e7cac..f881d38 100644 --- a/src/FEInitiator.cpp +++ b/src/FEInitiator.cpp @@ -7,47 +7,25 @@ // Constructors FEInitiator::FEInitiator(const long timeoutLength, Ptr pk, Ptr regularpk, const int stat, - Ptr sk) + Ptr sk) : timeoutLength(timeoutLength), stat(stat), verifiablePK(pk), - regularPK(regularpk), contract(NULL), signKey(NULL), + regularPK(regularpk), contract(), signKey(sk), exchangeType(TYPE_NONE) -{ - if (NULL != sk) - signKey = new_ptr(*sk); -} - -FEInitiator::FEInitiator(const FEInitiator &o) - : timeoutLength(o.timeoutLength), stat(o.stat), - verifiablePK(o.verifiablePK), regularPK(o.regularPK), coin(o.coin), - contract(o.contract), signKey(new_ptr(*o.signKey)), - ptextA(o.ptextA), ctextA(o.ctextA), ctextB(o.ctextB), ptextB(o.ptextB), - r(o.r), endorsement(o.endorsement), exchangeType(o.exchangeType) -{ -} +{} /*----------------------------------------------------------------------------*/ // Destructor FEInitiator::~FEInitiator() { reset(); - delete signKey; } void FEInitiator::reset() { exchangeType = TYPE_NONE; -#ifdef DELETE_BUFFERS - for (unsigned i = 0; i < ptextB.size(); i++) - delete ptextB[i]; - for (unsigned i = 0; i < ctextA.size(); i++) - delete ctextA[i]; -#endif ctextA.clear(); ctextB.clear(); ptextA.clear(); ptextB.clear(); - - delete contract; - contract = NULL; - // XXX MEMORY delete message + contract.reset(); } /*----------------------------------------------------------------------------*/ @@ -63,7 +41,7 @@ Ptr FEInitiator::setup(const string &signAlg) { startTimer(); #endif // generate signature key - if (signKey == NULL) + if (signKey.get() == NULL) signKey = Signature::Key::generateKey(signAlg); #ifdef TIMER printTimer("Signature key generation"); @@ -93,11 +71,11 @@ void FEInitiator::makeCoin(Ptr wallet, const ZZ& R) { #ifdef TIMER startTimer(); #endif - Coin coin = wallet->nextCoin(R); + Ptr coin = wallet->nextCoin(R); #ifdef TIMER printTimer("Coin generation"); #endif - setCoin(coin); + setCoin(*coin); } void FEInitiator::setCoin(const Coin& c) { @@ -143,7 +121,7 @@ Ptr FEInitiator::buy(const vector >& ctextR, Hash::TYPE_MERKLE); // create contract - if (NULL == contract) + if (NULL == contract.get()) createContract(); // set up the contract @@ -154,7 +132,7 @@ Ptr FEInitiator::buy(const vector >& ctextR, contract->setCTHashBlocksB(ctextR.size()); string signature = signContract(); - return new_ptr(signature, *contract); + return new_ptr(signature, contract); } void FEInitiator::createContract() { @@ -327,7 +305,7 @@ Ptr FEInitiator::barter(const vector >& ctextR, string sig = Signature::sign(*signKey, escrowStr, regularPK->hashAlg); // now output the escrow, signature, and contract (label) - return new_ptr(escrow, sig, *contract); + return new_ptr(escrow, sig, contract); } /*----------------------------------------------------------------------------*/ diff --git a/src/FEInitiator.h b/src/FEInitiator.h index de5ed96..c7b4a12 100644 --- a/src/FEInitiator.h +++ b/src/FEInitiator.h @@ -21,10 +21,7 @@ class FEInitiator { * and the public key of the arbiter */ FEInitiator(const long timeoutLength, Ptr pk, Ptr regularpk, const int stat, - Ptr signKey = NULL); - - /*! copy constructor */ - FEInitiator(const FEInitiator &o); + Ptr signKey = Ptr()); /*! destructor */ ~FEInitiator(); @@ -97,8 +94,8 @@ class FEInitiator { void setVerifiablePublicKey(Ptr newpk) {verifiablePK = newpk;} void setRegularPublicKey(Ptr newpk) {regularPK = newpk;} - void setSignatureKey(Ptr newsignKey = Ptr()) - { signKey = newsignKey; } + void setSignatureKey(Ptr sk=Ptr()) + { signKey = sk; } void setExchangeType(int et) { exchangeType = et; } void reset(); diff --git a/src/FEMessage.h b/src/FEMessage.h index 16ccaec..5fca266 100644 --- a/src/FEMessage.h +++ b/src/FEMessage.h @@ -12,10 +12,11 @@ class FEMessage { /*! constructor: takes in escrow (encryption of the symmetric * key), signature on this escrow, and contract (label for the * escrow) */ - FEMessage(vector &escrow, string &sig, FEContract &contract) + FEMessage(const vector &escrow, + const string &sig, Ptr contract) : escrow(escrow), signature(sig), contract(contract) {} - FEMessage(string &sig, FEContract &contract) + FEMessage(const string &sig, Ptr contract) : signature(sig), contract(contract) {} /*! copy constructor */ @@ -27,12 +28,12 @@ class FEMessage { // getters const vector& getEscrow() const { return escrow; } const string& getSignature() const { return signature; } - const FEContract& getContract() const { return contract; } + Ptr getContract() const { return contract; } private: vector escrow; string signature; - FEContract contract; + Ptr contract; friend class boost::serialization::access; template diff --git a/src/FEResolutionMessage.h b/src/FEResolutionMessage.h index e3a66ff..14eb59d 100644 --- a/src/FEResolutionMessage.h +++ b/src/FEResolutionMessage.h @@ -15,7 +15,7 @@ class FEResolutionMessage { const vector &k) : message(m), setupMessage(s), keys(k) {} - FEResolutionMessage() : message(0), setupMessage(0) {} + FEResolutionMessage() : message(), setupMessage() {} // getters Ptr getMessage() const { return message; } diff --git a/src/FEResponder.cpp b/src/FEResponder.cpp index 1a0a34e..d9a4227 100644 --- a/src/FEResponder.cpp +++ b/src/FEResponder.cpp @@ -9,49 +9,29 @@ FEResponder::FEResponder(const int timeoutLength, const int timeoutTolerance, Ptr pk, Ptr regularpk, const int stat) : timeoutLength(timeoutLength), timeoutTolerance(timeoutTolerance), - stat(stat), verifiablePK(pk), regularPK(regularpk), contract(NULL), - escrow(NULL), initiatorSignPK(NULL), exchangeType(TYPE_NONE), - message(NULL) + stat(stat), verifiablePK(pk), regularPK(regularpk), contract(), + escrow(), initiatorSignPK(), exchangeType(TYPE_NONE), + message() { } -FEResponder::FEResponder(const FEResponder& o) - : timeoutLength(o.timeoutLength), timeoutTolerance(o.timeoutTolerance), - stat(o.stat), verifiablePK(o.verifiablePK), regularPK(o.regularPK), - ptextB(o.ptextB), ctextB(o.ctextB), ctextA(o.ctextA), ptextA(o.ptextA), - contract(o.contract ? new_ptr(*o.contract) : NULL), - escrow(o.escrow ? new_ptr(*o.escrow) : NULL), - initiatorSignPK(o.initiatorSignPK ? new_ptr(*o.initiatorSignPK) : NULL), - message(o.message ? new_ptr(*o.message) : NULL) -{ -} - /*----------------------------------------------------------------------------*/ // Destructor FEResponder::~FEResponder() { reset(); - delete escrow; - delete initiatorSignPK; } void FEResponder::reset() { exchangeType = TYPE_NONE; -#ifdef DELETE_BUFFERS - for (unsigned i = 0; i < ptextA.size(); i++) { - delete ptextA[i]; - } - for (unsigned i = 0; i < ctextB.size(); i++) { - delete ctextB[i]; - } -#endif ctextB.clear(); ctextA.clear(); ptextB.clear(); ptextA.clear(); - delete contract; - // delete message; // XXX causes segfault + contract.reset(); + escrow.reset(); + message.reset(); } /*----------------------------------------------------------------------------*/ @@ -121,8 +101,8 @@ vector FEResponder::sell(const FEMessage& message, exchangeType = TYPE_BUY; // check contract and signature - FEContract contract = message.getContract(); - check(message, saveString(contract), ptHashR); + Ptr contract = message.getContract(); + check(message, saveString(*contract), ptHashR); return getKeys(); } @@ -130,7 +110,7 @@ bool FEResponder::check(const FEMessage& msg, const string& label, const vector& ptHashRs) { // save message message = new_ptr(msg); - contract = new_ptr(msg.getContract()); + contract = msg.getContract(); string sig = msg.getSignature(); // check contract @@ -276,7 +256,7 @@ Ptr FEResponder::resolveIII(vector &keys){ if(checkKey(keys)){ // XXX: not really sure what I should be returning if they do check // out as additional communication with the Arbiter is not needed - return new_ptr; + return new_ptr(); } else{ return proveIncorrectKeys(keys); } diff --git a/src/FEResponder.h b/src/FEResponder.h index 9b90575..8c240c3 100644 --- a/src/FEResponder.h +++ b/src/FEResponder.h @@ -22,9 +22,6 @@ class FEResponder { Ptr pk, Ptr repk, const int stat); - /*! copy constructor */ - FEResponder(const FEResponder &o); - /*! destructor */ ~FEResponder(); diff --git a/src/FESetupMessage.h b/src/FESetupMessage.h index cdc05bc..50ee78b 100644 --- a/src/FESetupMessage.h +++ b/src/FESetupMessage.h @@ -26,9 +26,6 @@ class FESetupMessage { : coinPrime(o.coinPrime), escrow(o.escrow), signPK(new_ptr(*o.signPK)) {} - /*! destructor */ - ~FESetupMessage() { delete signPK; } - FESetupMessage(const string& s, Ptr params) { // need to set params for Coin contained in message loadGZString(make_nvp("FESetupMessage", *this), s); diff --git a/src/GroupRSA.h b/src/GroupRSA.h index 7ca9034..a80f649 100644 --- a/src/GroupRSA.h +++ b/src/GroupRSA.h @@ -17,7 +17,7 @@ class GroupRSA : public Group { GroupRSA(const string &owner, int modulusLength, int stat); - GroupRSA(const string &owner, ZZ &modulus, int s) + GroupRSA(const string &owner, const ZZ& modulus, int s) : Group(owner, modulus), stat(s) {} GroupRSA() : Group(), p(0), q(0), stat(0) {} diff --git a/src/MerkleContract.h b/src/MerkleContract.h index 9f43240..d5e69d5 100644 --- a/src/MerkleContract.h +++ b/src/MerkleContract.h @@ -33,6 +33,11 @@ class MerkleContract { hash_t hash(T* buff) const { return hash(buff->data(), buff->size()); } + + template + hash_t hash(Ptr buff) const { + return hash(buff->data(), buff->size()); + } hash_t hash(const string& str) const { return hash(str.data(), str.size()); diff --git a/src/MerkleProof.h b/src/MerkleProof.h index 1b80c54..27e3cde 100644 --- a/src/MerkleProof.h +++ b/src/MerkleProof.h @@ -8,7 +8,7 @@ class MerkleProof { public: - MerkleProof() : ctContract(0), ptContract(0) {empty=true;} + MerkleProof() : ctContract(), ptContract() {empty=true;} /*! ctextBlocks represent the blocks of the ciphertext that we are * proving are correct; ctextProof is the proof that the Merkle hash diff --git a/src/MerkleProver.cpp b/src/MerkleProver.cpp index e19c838..d3bcea0 100644 --- a/src/MerkleProver.cpp +++ b/src/MerkleProver.cpp @@ -9,7 +9,7 @@ MerkleProver::MerkleProver(const vector &hashBlocks, MerkleProver::MerkleProver(const char* buff, int buffSize, const MerkleContract& contract) - : contract(contract), tree(0) + : contract(contract), tree() { init(buff, buffSize); } diff --git a/src/Seller.cpp b/src/Seller.cpp index e644614..eb97c94 100644 --- a/src/Seller.cpp +++ b/src/Seller.cpp @@ -10,7 +10,7 @@ Seller::Seller(const int timeoutLength, const int timeoutTolerance, Ptr pk, const int stat) : timeoutLength(timeoutLength), timeoutTolerance(timeoutTolerance), - stat(stat), pk(pk), contract(NULL), escrow(NULL), inProgress(false) + stat(stat), pk(pk), contract(), escrow(), inProgress(false) { } @@ -18,7 +18,7 @@ Seller::Seller(Ptr ct, const int timeoutLength, const int timeoutTolerance, Ptr pk, const int stat) : timeoutLength(timeoutLength), timeoutTolerance(timeoutTolerance), - stat(stat), pk(pk), contract(NULL), escrow(NULL), inProgress(false) + stat(stat), pk(pk), contract(), escrow(), inProgress(false) { ctext.push_back(ct); } @@ -27,21 +27,11 @@ Seller::Seller(vector > ctext, const int timeoutLength, const int timeoutTolerance, Ptr pk, const int stat) : timeoutLength(timeoutLength), timeoutTolerance(timeoutTolerance), - stat(stat), pk(pk), ctext(ctext), contract(NULL), escrow(NULL), + stat(stat), pk(pk), ctext(ctext), contract(), escrow(), inProgress(false) { } -Seller::Seller(const Seller& o) - : timeoutLength(o.timeoutLength), timeoutTolerance(o.timeoutTolerance), - stat(o.stat), pk(o.pk), ptext(o.ptext), ctext(o.ctext), - coinPrime(o.coinPrime), - contract(o.contract ? new_ptr(*o.contract) : NULL), - escrow(o.escrow ? new_ptr(*o.escrow) : NULL), - inProgress(o.inProgress) -{ -} - /*----------------------------------------------------------------------------*/ // Destructor Seller::~Seller() { @@ -50,14 +40,9 @@ Seller::~Seller() { void Seller::reset() { inProgress = false; - //delete escrow; -#ifdef DELETE_BUFFERS - for (unsigned i = 0; i < ctext.size(); i++) { - delete ctext[i]; - } -#endif ctext.clear(); - //delete contract; // XXX memory + escrow.reset(); + contract.reset(); } /*----------------------------------------------------------------------------*/ diff --git a/src/Seller.h b/src/Seller.h index 30df1d8..ed964ed 100644 --- a/src/Seller.h +++ b/src/Seller.h @@ -24,9 +24,6 @@ class Seller { const int timeoutTolerance, Ptr pk, const int stat); - /*! copy constructor */ - Seller(const Seller &o); - /*! destructor */ ~Seller(); diff --git a/src/Test.cpp b/src/Test.cpp index 44ff575..4ebdb8f 100644 --- a/src/Test.cpp +++ b/src/Test.cpp @@ -211,17 +211,17 @@ double* createParameters() { // loadFile(repk, "public.regular."+sec+".arbiter"); startTimer(); - VEDecrypter ve(m, rsaModLength, security); - saveFile(make_nvp("VEPublicKey", *ve.getPK()), "public."+sec+".arbiter"); - saveFile(make_nvp("VESecretKey", *ve.getSK()), "secret."+sec+".arbiter"); + Ptr ve = new_ptr(m, rsaModLength, security); + saveFile(make_nvp("VEPublicKey", *ve->getPK()), "public."+sec+".arbiter"); + saveFile(make_nvp("VESecretKey", *ve->getSK()), "secret."+sec+".arbiter"); timers[timer++] = printTimer(timer, "Arbiter public and secret keys " "created and saved"); startTimer(); m = 1024; - VEDecrypter re(m, rsaModLength, security); - saveFile(make_nvp("VEPublicKey", *re.getPK()), "public.regular."+sec+".arbiter"); - saveFile(make_nvp("VESecretKey", *re.getSK()), "secret.regular."+sec+".arbiter"); + Ptr re = new_ptr(m, rsaModLength, security); + saveFile(make_nvp("VEPublicKey", *re->getPK()), "public.regular."+sec+".arbiter"); + saveFile(make_nvp("VESecretKey", *re->getSK()), "secret.regular."+sec+".arbiter"); timers[timer++] = printTimer(timer, "Arbiter public and secret keys (for " "non-verifiable encryption) created " "and saved"); @@ -243,7 +243,7 @@ double* createParameters() { // save a new user startTimer(); UserTool userTool(security, lx, bankParameters, - *ve.getPK(), *re.getPK(), hashAlg); + ve->getPK(), re->getPK(), hashAlg); saveFile(make_nvp("UserTool",userTool), "tool."+sec+".user"); timers[timer++] = printTimer(timer, "User created and saved"); return timers; @@ -264,8 +264,8 @@ double* loadParameters() { VEPublicKey pk(("public.regular."+sec+".arbiter").c_str()); BankTool bankTool(("tool."+sec+".bank").c_str()); - BankParameters bp(("bank."+sec+".params").c_str()); - Ptr params = &bp; + Ptr params( + new BankParameters(("bank."+sec+".params").c_str())); cout << "Number of denominations is " << params->getDenominations().size() << endl; @@ -387,8 +387,8 @@ double* testSophie() { double* testClone() { double* timers = new double[MAX_TIMERS]; istringstream iss(string("x * a ^ b_i + -2")); - Ptr lexer = new_ptr(iss); - Ptr parser = new_ptr(*lexer); + Ptr lexer(new ZKPLexer(iss)); + Ptr parser(new ZKPParser(*lexer)); ASTExprPtr n = parser->expr(); Printer print; @@ -403,8 +403,8 @@ double* testClone() { double* testFor() { double* timers = new double[MAX_TIMERS]; istringstream iss(string("for(i, 1:3, &&, c_i := (g^x_i) * (h^r_i))")); - Ptr lexer = new_ptr(iss); - Ptr parser = new_ptr(*lexer); + Ptr lexer(new ZKPLexer(iss)); + Ptr parser(new ZKPParser(*lexer)); ASTNodePtr n = parser->spec(); Printer print; @@ -431,8 +431,8 @@ double* testConstSub() { "r[1:l], vprime such that: for(i, 1:l, range: " "-(2^l_x - 1) <= x_i < 2^l_x) C = h^vprime * " "for(i, 1:l, *, c_i * h^(-r_i))")); - Ptr lexer = new_ptr(iss); - Ptr parser = new_ptr(*lexer); + Ptr lexer(new ZKPLexer(iss)); + Ptr parser(new ZKPParser(*lexer)); ASTNodePtr n = parser->spec(); Printer print; @@ -718,7 +718,7 @@ double* testCLProver(){ numPublics); timers[timer++] = printTimer(timer, "Created CL verifier"); startTimer(); - bool verified = verifier.verify(publicProof, stat); + bool verified = verifier.verify(*publicProof, stat); timers[timer++] = printTimer(timer, "Verifier checked prover's proof"); if(verified){ cout<<"Proving possession of a CL signature succeeded"< pk = decrypter.getPK(); + Ptr decrypter = new_ptr(m, modLength, stat); + Ptr pk = decrypter->getPK(); // set up the prover VEProver prover(pk); @@ -1045,7 +1045,7 @@ double* testWithdraw() { // this is PK used for verifiable encryption startTimer(); - VEDecrypter decrypter(m, modLen, stat); + Ptr decrypter = new_ptr(m, modLen, stat); VEPublicKey vepk = *decrypter.getPK(); VESecretKey vesk = *decrypter.getSK(); timers[timer++] = printTimer(timer, "Arbiter public and secret keys created"); @@ -1127,11 +1127,10 @@ double* testWithdraw() { */ saveFile(make_nvp("Wallet", wallet), ("wallet."+statName).c_str()); - delete idProof; delete clProof; delete pm; + idProof.reset(); clProof.reset(); pm.reset(); - // XXX: having some seg fault issues here... - delete uwTool; - delete bwTool; + uwTool.reset(); + bwTool.reset(); // also like to make sure that coin is valid here vector contractInfo; @@ -1139,11 +1138,11 @@ double* testWithdraw() { ZZ rVal = Hash::hash(contractInfo, hashAlg); startTimer(); - Coin coin = wallet.nextCoin(rVal); + Ptr coin = wallet.nextCoin(rVal); timers[timer++] = printTimer(timer, "Got a coin from the wallet"); - coin.unendorse(); - bool coinVerified = coin.verifyCoin(); + coin->unendorse(); + bool coinVerified = coin->verifyCoin(); if (coinVerified) cout << "Coin successfully verified and we're done!" << endl; else @@ -1173,7 +1172,7 @@ double* testCoin() { ZZ rVal = Hash::hash(contractInfo, hashAlg); startTimer(); - Coin coin = wallet.nextCoin(rVal); + Coin coin = *wallet.nextCoin(rVal); timers[timer++] = printTimer(timer, "Got coin from wallet"); cout << "Coin size: " << saveGZString(coin).size() << endl; @@ -1228,7 +1227,7 @@ double* testCoin() { wallet.replaceCoin(sameIndex); startTimer(); - Coin coin2 = wallet.nextCoin(rVal2); + Coin coin2 = *wallet.nextCoin(rVal2); timers[timer++] = printTimer(timer, "Withdrew the same coin from the wallet"); startTimer(); bool isDoubleSpent = bankTool.isCoinDoubleSpent(coin, coin2); @@ -1257,9 +1256,9 @@ double* testBuy() { hashalg_t hashAlg = Hash::SHA1; cipher_t encAlg = "aes-128-ctr"; - Ptr params = new_ptr("bank.80.params"); - Wallet wallet("wallet.80", params); - VEPublicKey vepk("public.80.arbiter"); + Ptr params = new_ptr("bank.80.params"); + Ptr wallet(new Wallet("wallet.80", params)); + Ptr vepk(new VEPublicKey("public.80.arbiter")); ZZ R = RandomBits_ZZ(params->getCashGroup()->getOrderLength()); @@ -1268,8 +1267,8 @@ double* testBuy() { Hash::hash_t ptHash = ptext->hash(hashAlg, string(), Hash::TYPE_PLAIN); // create buyer and seller objects - Buyer buyer(timeoutLength, &vepk, stat); - Seller seller(timeoutLength, timeoutTolerance, &vepk, stat); + Buyer buyer(timeoutLength, vepk, stat); + Seller seller(timeoutLength, timeoutTolerance, vepk, stat); // step 1: seller gives ciphertext to buyer startTimer(); @@ -1279,7 +1278,7 @@ double* testBuy() { // step 2: buyer creates contract and verifiable escrow startTimer(); - Ptr buyMessage = buyer.buy(&wallet, ctext, ptHash, R); + Ptr buyMessage = buyer.buy(wallet, ctext, ptHash, R); timers[timer++] = printTimer(timer, "Buyer created buy message"); cout << "Buy message size: " << saveGZString(*buyMessage).size() << endl; @@ -1327,8 +1326,8 @@ double* testBuy() { else cout << "Buy protocol failed" << endl; - delete ptext; - delete buyMessage; delete loadedBMsg; + ptext.reset(); + buyMessage.reset(); loadedBMsg.reset(); return timers; } @@ -1342,11 +1341,11 @@ double* testBarter() { int hashType = Hash::TYPE_PLAIN; Ptr params = new_ptr("bank.80.params"); - Wallet wallet("wallet.80", params); - VEPublicKey vepk("public.80.arbiter"); - VEPublicKey pk("public.regular.80.arbiter"); + Ptr wallet = new_ptr("wallet.80", params); + Ptr vepk(new VEPublicKey("public.80.arbiter")); + Ptr pk(new VEPublicKey("public.regular.80.arbiter")); - string trackerHashKey = vepk.getHashKey(); + string trackerHashKey = vepk->getHashKey(); ZZ R = RandomBits_ZZ(params->getCashGroup()->getOrderLength()); // get random files for Alice and Bob @@ -1364,12 +1363,12 @@ double* testBarter() { timers[timer++] = printTimer(timer, "Signature key generated"); // create initiator and responder objects - FEInitiator alice(timeoutLength, &vepk, &pk, stat, signKey); - FEResponder bob(timeoutLength, timeoutTolerance, &vepk, &pk, stat); + FEInitiator alice(timeoutLength, vepk, pk, stat, signKey); + FEResponder bob(timeoutLength, timeoutTolerance, vepk, pk, stat); // step 1: Alice sends Bob a setup message startTimer(); - Ptr setupMsg = alice.setup(&wallet, R, signAlg); + Ptr setupMsg = alice.setup(wallet, R, signAlg); timers[timer++] = printTimer(timer, "Alice created setup message"); cout << "Setup size: " << saveGZString(*setupMsg).size() << endl; @@ -1465,14 +1464,14 @@ double* testBarter() { else cout << "Bartering on the second set of files failed" << endl; - delete aData; - delete bData; - delete setupMsg; - delete message; - delete aData2; - delete bData2; - delete signKey; - delete message2; + aData.reset(); + bData.reset(); + setupMsg.reset(); + message.reset(); + aData2.reset(); + bData2.reset(); + signKey.reset(); + message2.reset(); return timers; } @@ -1486,11 +1485,11 @@ double* testBuyWithSetup() { int hashType = Hash::TYPE_PLAIN; Ptr params = new_ptr("bank.80.params"); - Wallet wallet("wallet.80", params); - VEPublicKey vepk("public.80.arbiter"); - VEPublicKey pk("public.regular.80.arbiter"); + Ptr wallet = new_ptr("wallet.80", params); + Ptr vepk = new_ptr("public.80.arbiter"); + Ptr pk = new_ptr("public.regular.80.arbiter"); - string trackerHashKey = vepk.getHashKey(); + string trackerHashKey = vepk->getHashKey(); ZZ R = RandomBits_ZZ(params->getCashGroup()->getOrderLength()); // get random files for Alice and Bob @@ -1505,12 +1504,12 @@ double* testBuyWithSetup() { timers[timer++] = printTimer(timer, "Signature key generated"); // create initiator and responder objects - FEInitiator alice(timeoutLength, &vepk, &pk, stat, signKey); - FEResponder bob(timeoutLength, timeoutTolerance, &vepk, &pk, stat); + FEInitiator alice(timeoutLength, vepk, pk, stat, signKey); + FEResponder bob(timeoutLength, timeoutTolerance, vepk, pk, stat); // step 1: Alice sends Bob a setup message startTimer(); - Ptr setupMsg = alice.setup(&wallet, R, signAlg); + Ptr setupMsg = alice.setup(wallet, R, signAlg); timers[timer++] = printTimer(timer, "Alice created setup message"); cout << "Setup size: " << saveGZString(*setupMsg).size() << endl; @@ -1563,19 +1562,19 @@ double* testBuyResolution() { int hashType = Hash::TYPE_PLAIN; cipher_t encAlg = "aes-128-ctr"; - VEPublicKey vepk("public.80.arbiter"); - VESecretKey vesk("secret.80.arbiter"); - VEDecrypter veDecrypter(&vepk, &vesk); + Ptr vepk = new_ptr("public.80.arbiter"); + Ptr vesk = new_ptr("secret.80.arbiter"); + Ptr veDecrypter = new_ptr(vepk, vesk); - VEPublicKey pk("public.80.arbiter"); - VESecretKey sk("secret.80.arbiter"); - VEDecrypter decrypter(&pk, &sk); + Ptr pk = new_ptr("public.80.arbiter"); + Ptr sk = new_ptr("secret.80.arbiter"); + Ptr decrypter = new_ptr(pk, sk); BankTool bankTool("tool.80.bank"); Ptr params = new_ptr("bank.80.params"); - Wallet wallet("wallet.80", params); + Ptr wallet = new_ptr("wallet.80", params); - string trackerHashKey = vepk.getHashKey(); + string trackerHashKey = vepk->getHashKey(); ZZ R = RandomBits_ZZ(params->getCashGroup()->getOrderLength()); char buf[1024]; @@ -1584,8 +1583,8 @@ double* testBuyResolution() { hash_t ptHash = ptext->hash(hashAlg, trackerHashKey, hashType); // now let's create our buyer and seller objects - Buyer buyer(timeoutLength, &vepk, stat); - Seller seller(timeoutLength, timeoutTolerance, &vepk, stat); + Buyer buyer(timeoutLength, vepk, stat); + Seller seller(timeoutLength, timeoutTolerance, vepk, stat); // step 1: seller gives ciphertext to buyer startTimer(); @@ -1594,7 +1593,7 @@ double* testBuyResolution() { // step 2: buyer creates contract and verifiable escrow startTimer(); - Ptr buyMessage = buyer.buy(&wallet, ctext, ptHash, R); + Ptr buyMessage = buyer.buy(wallet, ctext, ptHash, R); timers[timer++] = printTimer(timer, "Buyer created buy message"); // step 3: seller checks contract and escrow, returns key(s) if valid @@ -1607,7 +1606,7 @@ double* testBuyResolution() { buyer.pay(key); // so let's say arbiter needs to get involved - Arbiter arbiter(&veDecrypter, &decrypter, hashAlg, timeoutTolerance); + Arbiter arbiter(veDecrypter, decrypter, hashAlg, timeoutTolerance); // step 1: seller sends over relevant info to act as request startTimer(); @@ -1663,17 +1662,17 @@ double* testBarterResolution() { int hashType = Hash::TYPE_PLAIN; Ptr params = new_ptr("bank.80.params"); - Wallet wallet("wallet.80", params); + Ptr wallet = new_ptr("wallet.80", params); - VEPublicKey vepk("public.80.arbiter"); - VESecretKey vesk("secret.80.arbiter"); - VEDecrypter veDecrypter(&vepk, &vesk); + Ptr vepk = new_ptr("public.80.arbiter"); + Ptr vesk = new_ptr("secret.80.arbiter"); + Ptr veDecrypter = new_ptr(vepk, vesk); - VEPublicKey pk("public.regular.80.arbiter"); - VESecretKey sk("secret.regular.80.arbiter"); - VEDecrypter decrypter(&vepk, &vesk); + Ptr pk = new_ptr("public.regular.80.arbiter"); + Ptr sk = new_ptr("secret.regular.80.arbiter"); + Ptr decrypter = new_ptr(vepk, vesk); - string trackerHashKey = vepk.getHashKey(); + string trackerHashKey = vepk->getHashKey(); ZZ R = RandomBits_ZZ(params->getCashGroup()->getOrderLength()); // get random files for Alice and Bob @@ -1691,12 +1690,12 @@ double* testBarterResolution() { timers[timer++] = printTimer(timer, "Signature key generated"); // create initiator and responder objects - FEInitiator alice(timeoutLength, &vepk, &pk, stat, signKey); - FEResponder bob(timeoutLength, timeoutTolerance, &vepk, &pk, stat); + FEInitiator alice(timeoutLength, vepk, pk, stat, signKey); + FEResponder bob(timeoutLength, timeoutTolerance, vepk, pk, stat); // step 1: Alice sends Bob a setup message startTimer(); - Ptr setupMsg = alice.setup(&wallet, R, signAlg); + Ptr setupMsg = alice.setup(wallet, R, signAlg); timers[timer++] = printTimer(timer, "Alice created setup message"); // step 2: Bob checks setup message and outputs his file ciphertext @@ -1732,7 +1731,7 @@ double* testBarterResolution() { alice.giveKeys(bKey); // now let's say we need to get arbiter involved - Arbiter arbiter(&veDecrypter, &decrypter, hashAlg, timeoutTolerance); + Arbiter arbiter(veDecrypter, decrypter, hashAlg, timeoutTolerance); // step 1: responder sends request to arbiter startTimer(); @@ -1802,8 +1801,8 @@ double* testSerializeAbstract() { double* timers = new double[MAX_TIMERS]; // test serializing base and derived pointers istringstream iss(string("g^x")); - Ptr lexer = new_ptr(iss); - Ptr parser = new_ptr(*lexer); + Ptr lexer(new ZKPLexer(iss)); + Ptr parser(new ZKPParser(*lexer)); ASTExprPtr n = parser->expr(); cout << "type of expr: " << type_to_str(typeid(*n)) << endl; diff --git a/src/UserTool.cpp b/src/UserTool.cpp index 19bb1f9..6b58523 100644 --- a/src/UserTool.cpp +++ b/src/UserTool.cpp @@ -1,10 +1,14 @@ #include "UserTool.h" -UserTool::UserTool(int st, int l, Ptr bp, - const VEPublicKey &vPK, const VEPublicKey &rPK, +UserTool::UserTool(int st, int l, + Ptr bp, + Ptr vPK, + Ptr rPK, const hashalg_t &ha) - : stat(st), lx(l), bankParameters(new_ptr(*bp)), - vepk(vPK), pk(rPK), hashAlg(ha) + : stat(st), lx(l), + bankParameters(bp), + vepk(vPK), pk(rPK), + hashAlg(ha) { Ptr cashGroup = bankParameters->getCashGroup(); userSecretKey = cashGroup->randomExponent(); diff --git a/src/UserTool.h b/src/UserTool.h index 6a1c20b..6719729 100644 --- a/src/UserTool.h +++ b/src/UserTool.h @@ -11,28 +11,22 @@ class UserTool { public: - UserTool(int st, int l, Ptr bp, - const VEPublicKey &arbiterVPK, const VEPublicKey &arbiterPK, + UserTool(int st, int l, + Ptr bp, + Ptr arbiterVPK, + Ptr arbiterPK, const hashalg_t &ha); - UserTool(const UserTool &o) - : stat(o.stat), lx(o.lx), - bankParameters(o.bankParameters), - vepk(o.vepk), pk(o.pk), userSecretKey(o.userSecretKey), - userPublicKey(o.userPublicKey), hashAlg(o.hashAlg), - idProof(o.idProof) {} - - UserTool(const char *fname, Ptr bp, + UserTool(const char *fname, + Ptr bp, const char *fnameVEPK, const char *fnamePK) - : bankParameters(bp), vepk(fnameVEPK), pk(fnamePK) - { loadFile(make_nvp("UserTool", *this), fname); } + : bankParameters(bp), + vepk(new_ptr(fnameVEPK)), + pk(new_ptr(fnamePK)) + { loadFile(make_nvp("UserTool", *this), fname); } - // XXX: this was causing a seg fault... - //~UserTool() { delete bankParameters; } - // getters ZZ getPublicKey() const { return userPublicKey; } - Ptr getVEPublicKey() const { return &vepk; } SigmaProof getIdentityProof() const { return idProof; } Ptr getBankParameters() const { return bankParameters; } @@ -44,25 +38,25 @@ class UserTool { /* Factory functions for user */ Ptr getBuyer(time_t timeout) const - { return new_ptr(timeout, &vepk, stat); } + { return new_ptr(timeout, vepk, stat); } Ptr getSeller(time_t timeout, int timeoutTolerance) const - { return new_ptr(timeout, timeoutTolerance, &vepk, stat); } + { return new_ptr(timeout, timeoutTolerance, vepk, stat); } Ptr getSeller(Ptr ctext, int t, int timeoutTolerance) const - { return new_ptr(ctext, t, timeoutTolerance, &vepk, stat); } + { return new_ptr(ctext, t, timeoutTolerance, vepk, stat); } Ptr getFEInitiator(time_t timeout) const - { return new_ptr(timeout, &vepk, &pk, stat); } + { return new_ptr(timeout, vepk, pk, stat); } Ptr getFEResponder(time_t t, int tolerance) const - { return new_ptr(t, tolerance, &vepk, &pk, stat); } + { return new_ptr(t, tolerance, vepk, pk, stat); } private: int stat, lx; Ptr bankParameters; - VEPublicKey vepk; - VEPublicKey pk; + Ptr vepk; + Ptr pk; ZZ userSecretKey; ZZ userPublicKey; hashalg_t hashAlg; diff --git a/src/UserWithdrawTool.cpp b/src/UserWithdrawTool.cpp index 39ea66b..4010302 100644 --- a/src/UserWithdrawTool.cpp +++ b/src/UserWithdrawTool.cpp @@ -8,22 +8,10 @@ UserWithdrawTool::UserWithdrawTool(int st, int l, Ptr bp, const hashalg_t &ha, int ws, int denom) : stat(st), lx(l), bankParameters(bp), userSecretKey(userSK), userPublicKey(userPK), hashAlg(ha), walletSize(ws), coinDenom(denom), - signatureRecipient(0), verified(false) + verified(false) { } -UserWithdrawTool::UserWithdrawTool(const UserWithdrawTool &o) - : stat(o.stat), lx(o.lx), bankParameters(o.bankParameters), - userSecretKey(o.userSecretKey), userPublicKey(o.userPublicKey), - hashAlg(o.hashAlg), walletSize(o.walletSize), - coinDenom(o.coinDenom), verified(o.verified) -{ -} - -UserWithdrawTool::~UserWithdrawTool() { - delete signatureRecipient; -} - ZZ UserWithdrawTool::createPartialCommitment() { Ptr cashGroup = bankParameters->getCashGroup(); // pick s' and t : s' and t should be in (Z, *, primeOrder) diff --git a/src/UserWithdrawTool.h b/src/UserWithdrawTool.h index ccfb4a4..e5d1d9f 100644 --- a/src/UserWithdrawTool.h +++ b/src/UserWithdrawTool.h @@ -16,10 +16,6 @@ class UserWithdrawTool { const ZZ &userPK, const ZZ &userSK, const hashalg_t &hashAlg, int walletSize, int denom); - UserWithdrawTool(const UserWithdrawTool &original); - - ~UserWithdrawTool(); - /*! stores the vector * (r_sku, A_sku, s', r_s', A_s', t, r_t, A_t) where : * r_sku = randomness in opening of commitment to user secret key diff --git a/src/VEDecrypter.cpp b/src/VEDecrypter.cpp index 05ab0f5..2c48303 100644 --- a/src/VEDecrypter.cpp +++ b/src/VEDecrypter.cpp @@ -6,7 +6,7 @@ #include "ZKP/InterpreterProver.h" VEDecrypter::VEDecrypter(const int m, const int modLength, const int stat) { - setup(m, modLength, stat, 0); + setup(m, modLength, stat, Ptr()); } VEDecrypter::VEDecrypter(const int m, const int modLength, const int stat, @@ -16,9 +16,9 @@ VEDecrypter::VEDecrypter(const int m, const int modLength, const int stat, void VEDecrypter::setup(const int m, const int modLength, const int stat, Ptr auxGroup) { - GroupRSA group1("arbiter", modLength, stat); - ZZ bigN = group1.getModulus(); - ZZ bigP = group1.getP(); + Ptr group1 = new_ptr(string("arbiter"), modLength, stat); + ZZ bigN = group1->getModulus(); + ZZ bigP = group1->getP(); ZZ bigQ = bigN / bigP; ZZ bigNsquared = power(bigN, 2); // f0 is random element of Z_{N^2}* @@ -29,7 +29,7 @@ void VEDecrypter::setup(const int m, const int modLength, Ptr grp = new_ptr("arbiter", bigNsquared, stat); group_map g; variable_map v; - g["RSAGroup"] = &group1; + g["RSAGroup"] = group1; g["G"] = grp; v["f0"] = f0; @@ -60,7 +60,7 @@ void VEDecrypter::setup(const int m, const int modLength, Ptr group2; // if we weren't given a group, make one - if (auxGroup == 0) { + if (auxGroup.get() == 0) { group2 = createSecondGroup(m, modLength, stat); } else { diff --git a/src/VEProver.cpp b/src/VEProver.cpp index c9da6ab..f941078 100644 --- a/src/VEProver.cpp +++ b/src/VEProver.cpp @@ -11,7 +11,7 @@ vector VEProver::encrypt(const vector &messages, const string &label, Environment e; // first create and give in our group ZZ bigN = pk->getN(); - e.groups["RSAGroup"] = new_ptr("arbiter", bigN, stat); + e.groups["RSAGroup"] = new_ptr(string("arbiter"), bigN, stat); ZZ bigNSquared = power(bigN, 2); e.groups["G"] = new_ptr("arbiter", bigNSquared, stat); // now add in elements diff --git a/src/Wallet.cpp b/src/Wallet.cpp index 36b761b..e444e31 100644 --- a/src/Wallet.cpp +++ b/src/Wallet.cpp @@ -54,9 +54,11 @@ Ptr Wallet::nextCoin(const ZZ &rValue) { } Ptr Wallet::newCoin(const ZZ &rValue, int coinIndex) { - return new_ptr(params, walletSize, coinIndex, - sk_u, s, t, signature, stat, - lx, rValue, coinDenom, hashAlg); + // XXX new_ptr/make_shared supports only <= 9 constructor args + Ptr ret(new Coin(params, walletSize, coinIndex, + sk_u, s, t, signature, stat, + lx, rValue, coinDenom, hashAlg)); + return ret; } void Wallet::newCoin(Coin& coin, const ZZ &rValue, int coinIndex) { diff --git a/src/ZKP/ASTVisitor.h b/src/ZKP/ASTVisitor.h index dc4c1a0..5d747f5 100644 --- a/src/ZKP/ASTVisitor.h +++ b/src/ZKP/ASTVisitor.h @@ -2,6 +2,7 @@ #define _ASTVISITOR_H_ #include +#include "new_ptr.hpp" class ASTNode; class ASTIdentifierLit; diff --git a/src/ZKP/Interpreter.cpp b/src/ZKP/Interpreter.cpp index eef02b6..1622ccd 100644 --- a/src/ZKP/Interpreter.cpp +++ b/src/ZKP/Interpreter.cpp @@ -49,8 +49,8 @@ void Interpreter::check(const string &programName, input_map inputs, ASTSpecPtr n; try { - shared_ptr lexer(new ZKPLexer(stream)); - shared_ptr parser(new ZKPParser(*lexer)); + Ptr lexer(new ZKPLexer(stream)); + Ptr parser(new ZKPParser(*lexer)); n = parser->spec(); tree = n; } catch(antlr::ANTLRException& e) { @@ -112,7 +112,7 @@ void Interpreter::check(const string &programName, input_map inputs, // powers for bases that are used multiple times if (!groups.empty()) { env.groups = groups; - env.groups[Environment::NO_GROUP] = 0; + env.groups[Environment::NO_GROUP] = Ptr(); BindGroupValues binder(env); binder.apply(n); //cachePowers(); diff --git a/src/ZKP/InterpreterProver.cpp b/src/ZKP/InterpreterProver.cpp index c654553..f4488cb 100644 --- a/src/ZKP/InterpreterProver.cpp +++ b/src/ZKP/InterpreterProver.cpp @@ -27,7 +27,7 @@ void InterpreterProver::compute(variable_map &vars, group_map grps) { // add group information if this wasn't done at compile time env.groups = grps; env.variables = vars; - env.groups[Environment::NO_GROUP] = 0; + env.groups[Environment::NO_GROUP] = Ptr(); BindGroupValues groupBinder(env); groupBinder.apply(tree); } diff --git a/src/ZKP/InterpreterVerifier.cpp b/src/ZKP/InterpreterVerifier.cpp index f99801b..a840238 100644 --- a/src/ZKP/InterpreterVerifier.cpp +++ b/src/ZKP/InterpreterVerifier.cpp @@ -9,7 +9,7 @@ void InterpreterVerifier::compute(variable_map &v, const variable_map &p, if (!g.empty()) { env.groups = g; env.variables = v; - env.groups[Environment::NO_GROUP] = 0; + env.groups[Environment::NO_GROUP] = Ptr(); // run BindGroupValues BindGroupValues binder(env); binder.apply(tree); diff --git a/src/ZKP/ZKPTest.cpp b/src/ZKP/ZKPTest.cpp index 99bc932..f8724e5 100644 --- a/src/ZKP/ZKPTest.cpp +++ b/src/ZKP/ZKPTest.cpp @@ -119,8 +119,8 @@ int main(int argc, char** argv) { ifstream ifs(vm["input-file"].as().c_str()); try { - Ptr lexer = new_ptr(ifs); - Ptr parser = new_ptr(*lexer); + Ptr lexer( new ZKPLexer(ifs) ); + Ptr parser( new ZKPParser(*lexer) ); ASTSpecPtr n = parser->spec(); if (n) { From 8108abd438d9ab63e99a774a437b44a131d9350e Mon Sep 17 00:00:00 2001 From: chris erway Date: Sat, 18 Dec 2010 22:30:49 -0500 Subject: [PATCH 06/31] running tests (not all pass), rebuilt param files --- src/bank.80.params | 1042 +++++++++-------- src/public.80.arbiter | 28 +- src/public.regular.80.arbiter | 2070 ++++++++++++++++----------------- src/secret.80.arbiter | 20 +- src/secret.regular.80.arbiter | 20 +- src/tool.80.bank | 2053 ++++++++++++++------------------ src/tool.80.user | 12 +- 7 files changed, 2494 insertions(+), 2751 deletions(-) diff --git a/src/bank.80.params b/src/bank.80.params index 9ae44cd..2273074 100644 --- a/src/bank.80.params +++ b/src/bank.80.params @@ -1,583 +1,651 @@ - + 0 - - - 1024 - - 102680714876620505251519589456529850089969700556564489253162684638539597335736793998411151385396668678457395604056076455447346438315008567850445832409559094642617108516105196798178870587832997740211486024550117558968151215813802257578385470372409470175519459389641067956632237921585676408120047405305262039181 - - 160 - - 5 - 0 - - 22923320959192453636423682385738922848216151492993760467429386172337582699603626592667966029063069617300543105850468927060751138940226489398256413607978816318065423599404211058602051331171774528282150565237472007558045410089374975467684411005456109694572501365211023547108753818220756570663968723659519304097 - - - 53945843214081887230506825685162514221944851452590973433147320105768347799035010333040104182762421540976644457898523154200390719416111152133906850059276116624692455403920555815325946146027238316284576081046322930997100925534589898400045746221732607763907326046366956881978962788748138738898197865947329746712 - - - 84070450444178810764801942593139363675201942216375234211388549548441399502573647392486982654665114331690463175765687779989817013063882187163233753732167024252613425512245014453169195391341163601305650730846456990348521068770085139213305228501503975315987245346014618040731218552889355850011776660968387243547 - - - 44698200531549202972232618323671999010830294896874839743157702137836602383560583870323823976773804259743506237545914357368122833664632525931647018821826400373691255566854594204199447306752422310463080619172699838408810456076477752430884838822369737010719356000558487625372180909172327760255616921931423991248 - - - 51872694200042776418703861731161005597647063174327775542825481250710848362720927717796283168056945768526737370976647132055902410582742570384884317599347064382929720903764261035793509472519152983496873672379499058845114238849894388800999929829175350045958631291831128454260459997110600204624172747502759593173 - - - 1 - 1 - - - 1381926471275670696491547928550620506717346803979 - - 80 - - 74302589183225406744708406598986697445626235129332961159539629660099003864681279676025057169598059221346100246653275027988998552977043535171844663879396255745429680604118860556814772359887881646573360468171271074105943974872534642719266485854337939537007792420 - - - - 11 - 0 - - + + + 1024 - - 128057967809655946190316507735155452831314572900315216081434860144597217324346737671800302572587640910078110732912465466684478941477363845874613925338791275068167816621932721309235605381772586248486970010063355049965746801462578755831359666996420724229475198439645105729191854361248312605304734475323680662913 + + 133514169406519291856741071482152092986830711653805432236049101860748679948255167015586973279637205031175362709763820655668225828023894758021880067077065504052565748905906694850545234255047042654145643283874645230503132929228035928153484073905895258887219253064882319961297665121131916709880607734650721226103 - 1024 - - 6 + 160 + + 5 0 - 60811636929475187479807521649087606074793642064167945690350627603203118950323257675713133373687111123714663109087066267073458476631246485001894677569393649603260477149691339449729864039552273625864812610179069562367245786370215607199308088083101677805342992837524421920973047652387594443568045299878715104011 - - - 71560986262474260038579847733152867125395323692136727882523150181177145526050032346646815633503819181049097447083396963116870388315714388861158191811280162852633670260478236187402519672391362381543748430716574725648848677812893437556332455280083345503039177361800148373565541695573258846852919928924249154877 + 94407493022606357864805633027122711421215663077905008263774968164035012176011572617691072943814994191148393051024993721835315521681758131064676532643252609770612176241071149702914553042913231377946461976950086431204888208745392304208963757933619019425403873801118477268077877896621571737928518011990140563529 - 5358493014159018151110306019414188401443366482533390828878588153924237270657211162207396455592545292115596564966717448066974022571552087820343845293928484045368156700279200787884399405557838594314421227423879077160333472477688129275324340290022874614042967407069455935447388415804019834527557283355835583238 + 60876396496328682724097189067742896920729147349048265034433293478584151028846489695084196248986066630031991356096243255322100960388658243651677577289640120725516441620242280434129302299332905863156247397640098201527237751017533828511235119313794130211703569638743646227046196461621665179029678407970528688409 - 9440403911953510704955609199118462522546969159294361115679964001969095067128208202978671380235142495494192920664243060842431049236464627103331285996753378993464968648353139689202039972946351834805543874912252883016750152554402795151625609573033493183190907610839726606922080056808873159110535921110839225918 + 16121046626221472427047751773363913362974048990766154828871688671127428775447979844645572385001509702306477295325242354456782158124350935269066301880960134943074997659934554179554195604220270207074654587462102008232851521149184541486088101866695754053797858201040921279096905137524685107305175160336906418452 - 34601241858178235153992489154363566911322825930412755051942961530163789553279237024169967243263931210587905323687670939702730687998131084839805896091785126613296047470576600055262500331821637746680489652121076447750079042944735474064557177506619768477733608759334395601504750316910835074596407622363931297695 + 121141365231466073732580863259433586249476061813949627712529179498916008769053166588786965207007787500705353318146531687568175831821291010939781915466584167820414666799448726753535192924031547862879268463002905040503696964624426975606423366915257680903002938806600630068207161742151292518910647295361588443118 - 103450953660312905541961327136746359534991486059040490771968614429013794227835017626759804639288113432551732347712210332460709755012800755979360542019454727242090797411218789006851073710562599252458946620552051918314153874747184637728072116094587384838416002546398982033848043597058533784377942968102172250659 + 33224314461995781736519314217203018617785247730857387776163308491747362205194443026254482638590245033389225074027255480484590167701410741184233295699962334880861393829214748659537994405489406434431530722514907615173145959919085846684149179289734587238229307522746341982285541391125592028510085508219582487692 1 - 0 + 1 -

- 0 -

- - 0 - + + 1316339470914471129151760768523498072453239604329 + 80 + + 101428371903006125064816550802147348331863457871463502755733431817197461065801788822033216731636393277352980645348510209962447083315259924556325636320920818893079058726763004376179447886097544377332981309377503984706350117896307481213330735384282162062083570438 + +
+
+ + 11 + 1 + + + + 1024 + + 117884827860446563781748820406944154868475576600056082227519892174509471939864928225082965627109723952518920653247492719570823152187792896510133067342200887708846589512704292911831151048649360382622812569691999626824883040806504671579138444829886940892254765946039569794976422303781816507549109049679998239933 + + 1024 + + 6 + 0 + + 31942355189938305852400278253491349150729688128553144232246584639541711212090413545313826597682193557038043490057947105939176590836354753386733329966113979903437456252437032911749027125960613408259246704939227078007939748329163439671977914324835146281052742998866232945211038725583265687929565458344264054347 + + + 4550021649489174116472140519929523416228107123011278739084333317553282015055539078606776876259628738087448376993801193251451673296510925225577265203286603857602536786561404759589364246308126556696956729928635529542832761098354583198224869243960094566241455964353338979039983428692851228856978392423794950949 + + + 98525615558768553523914561253376055119761542268821255250597253028346424125130350074868274485947435823641586985792345325497433954872969407934951660169794190560333173906597212226368946582250749168564730926579316927997191630230129715348247908903813833686806420864813754316389284017259958075073700483383393704799 + + + 89663797310710481585546636879600940040870845166614120702021429261401463257347897163074462334789769421900452608925911291895572355565706941920835495798437301038956908515027090193540437888963515498057343871368193272565241944254509568583688844659457132999087383206998150658836175132856858909250296732497537741490 + + + 21457799638701886404948321513754559680118192619039196726922001229633285404795091272801906087942814278147982783234165733955591079274024965234492215069316229534452749185795475149435384522743874369634225464873507029089660645472377290801538517394750755050835750498882822488302061240043291880701805970006302143093 + + + 24879191227362488219377381481381577049957493151049769929102026087396701785224290633708100552404086846452744391838304415822891188453192492898176159610061346564782016034128553619840613515194166673287601988923324419982793733683797161684438643192675577287333186394307864482202453182364510091630821947512259705046 + + + 1 + 0 + +

+ 0 +

+ + 0 + + 80 +
- - - 1024 - - 91338861134529173742636614734321283317712406433818139285229062454925111527732609262828687047423080667973258817589805005737017416371360314088086808443898371429020158735259589920882443779130428607594850787634565846387075036083051955856286100630464641033224957452092909212599715224401427904042049536509604893693 - - 1024 - - 6 - 0 - - 88481512963655310506095083872998303955363103665395614689748950761935149130592150567352051526842435768907883513122638406071951993833483039104880894260670448994086429616644971856997369229550170174238792300740232364024915015016653492885640971890845653859579668498528250516917066920672069528744730214455335881003 - - - 71420609539497237732868765033013438071208066944625734387424793864620282249588182875061993503837717471514509627177747945260865425509223920765478106067601828682271744524355493795121669193837190303641492443480194307599715826281960573836394123684702869297115710345424755375986644023739445330856168082010838417938 - - - 36213374277915021187960501154206429350509009943784937342853640962344665273661370341432812162660134104129081769292257555453657933322026058920570002011215114885632603237420344104120014493999772566832623489577942137696416594059207873047026684531831127098662368796483679106715230357303209903005563129291440998125 - - - 88784875219103004490867409187796580439336028275646934064032325734642172796350750877782655631487263690600595545185986973949637793376040039529334242727841787186152368722684829777472113434707623526142748869410906573019822447060135044716736888756586491608663760971724703067383426197232527066117239191970436021914 - - - 57669682815414213701829150785790139820922208365396385382451270040015047105011059602270677532141334599848749895445377163377797098101769663138915670832338561398070313576223809679656089041902001668549387570675942187547921753080749715443394968434937329744189522351133848627606864859717699163427995004551470140014 - - - 19430387956073665040008742545168228237366626380409449215616316415682054432029605888008345798193251163116713132110293851289775570086405711097037612492724618955613522669964620645767675728759532995017555557036656920568589220029848250912688353596366989096421783410644212433994547565209779383923475304673100010441 - - - 1 - 0 - -

- 0 -

- - 0 - - 80 + + + + 1024 + + 92435280162899905227818541573305957665639782478377037313648510745437811817555025601483783005628430969232699108353806975298468602730274201576631930706196603478050594879475102858698719560485267244320059109718904786781293125558241769432373971408541617163594457153761480240604957087650552090980962289898118336333 + + 1024 + + 6 + 0 + + 61516019093539692013889522697286036751162217165758828070676191516869766297678416976269631962539278818264514649210773243551046294938085009932344325798670899473301492122911085724309342816888922377412459516289367281872129147128430336758646855410421759958716822027587807362922711228417719722839395907964513862658 + + + 86195764223387104034899139867022229450119089616066033008791071547934482828715292874302963805552889935464649997789968881823966010789216481131065557800140492761661914684115444687908240220491740505876075546249934530273063882017882729659422081016447947600980580175537319215595989718394304054636476498268020887557 + + + 66090880709908820440926264632961239993160670449209213713065113125659161881569535642744015944108361417649865322192754854750656897747581780302210023874052123025509488799461322138861808485422246123702913641512293891767156217416260726435923437923621235163974924046349645735951219936256285520248551621357984200192 + + + 81125320860070179938880065848584819614630717544442228467872330762439573624113353518044223443413956249653250229963865332588219177607026039053375006342887614760726174965389629354184063324949460856934792129381057726723761089976497782913975637313665436807476439299644379836438720037542937274030887765022332950404 + + + 42948191024853372336781821822838469391534701059252248238922760174581267393299467364101875293266698319938587952303110295432741540429597838239579971674213937597007233804673654039095038171298200108271416407429017881551898207445919625982511569321505626555444703146552854257930612423674523893871305333301482115766 + + + 87698069206530146708416569926089359158707926074712914895677294244720457855104722936588485298177092433221658425594437337314375482226768898429874945852464258724477090828692398398144898128906117276775843354058069732745353466733091900500154881956508874379162035891509934700427671262452014036729680705529492099380 + + + 1 + 0 + +

+ 0 +

+ + 0 + + 80 +
- - - 1024 - - 171795367802537336198216850040760302817719433285673072064016704297509263294972920968862879995019333546807716681922194952612358665832924006994420672781322683935998563828829629166676961578310364216820723333284118541610355614763234524893877254301205676826968663616237843247997193664755408992255295724018758287453 - - 1024 - - 6 - 0 - - 138781939743420141798085654234587085378791442750844156618218315519623156030775014083940843628427157991650536995512183146050090364430217798889903276779395691314769341501283521555441395248293145295446229257598584303226472282606025256289516823083353133125249557574662930559464988881796972570415006594877835195261 - - - 168420371175596160385314346470541456127930556988792934601264980767954150761074401191883764002057676025574635595559453082438403114835695017344400960903147888338845250647685131378444914574667053754042483424927960459645361430078126904416924147233083786086593890435155965855696708192722757613306648217414021209339 - - - 164599507864917269230220181044130466242640054454386799153052272100119238662434506377210871322725801768535465849520862187042461522458751851837119010844326508994699806461980159073458635731317238484887665362257435016594387971946664996341942792674855452076757886270233668811767159399329679444242304826944461878356 - - - 112022954554594868430694861746706902810007259966892035372848716164773714721760248918761857377457366770462246217862095078291990529093104794681337350992919876990886726535142991553290065736768419334005963502455897767959870639353796998608846837617297713305741565185682566104560690180553705181428610482999491959762 - - - 20795710379390313360149837901235593902809611922782438280826554162582584185176550436631972790505407403299851110962435492486911884529635673218790787915570636384717044595376003628898518022547995524968409598599237503027024128328270655662334146591298270627006489949537312823974893037600566816074625503584300399503 - - - 4461068203835146920397273122878996496925951644023334909782795888195924230363311467297500231054245083629066539839024032350563196843805187870921285704555947110972472049763739700924273806542377974583744547273338787688284998293736197541473212310650426901783545952048410414287416361433915264087521382790658628498 - - - 1 - 0 - -

- 0 -

- - 0 - - 80 + + + + 1024 + + 120242265353891692554300045922047481873580412081814852312316278622610012412349699141085216431251446316868063073124296564519534495060068779191495303283627533326627116847544544804997593350195611118016048754703736074548349446801901360185268478166518784640348397414405147608143291973682476695126277116966216169181 + + 1024 + + 6 + 0 + + 90258808835373211266855694770655044928868185145409526443615154154191997944839992853769564627311147578697876919149739812953847181213933287549862005241929231372257096606500152342587674117722279312186256165834197309493940159973417538085035126055798524687669587894223403279211403653760632211817983476637894304079 + + + 95635760315469768841556933363272102346560676094633536874989656401813066226987733867860013275552737427738418730187137928849636066572005798639578189573626173484609652276380254298282553868702479356631031823069006860356338776077617044925000861133490081420034654499982624171571752176555774509704693342254549319854 + + + 90809018349256846647085079930808746464320966250951060891589388261560943833410922406369114896370501540909240081233789871643257253089156607856732076276514044636902151971445366184364318741027669227160232321267327121969454955011265415575482275183909976122110710181814691280753616147233693076187996032716203387686 + + + 112132297991559111282309568934986106372227545332776511795209348369586562428716345400127899442176291678476205959109869119623540619046127607537731277578177859025918559240273126067892577156097899600362383247721738309891854219841641551677630501223221768927686994784480299553651383548009458572445476844510419444688 + + + 5789538500428997302152053765650149031024869665962513738258606889955438829279876194740040809078811031990471347239725229280802228731211608783856103005519400004691433538942100949165453901328015475435322021383557989188105222750099545067041611616030258483633056143002925555086488519819730112780351452167807906751 + + + 103528436909609892521762337424623938814102752421274507158451483493684724861097190831700506383121848310049592559612821637042177463512802670355983232078856256022574919435935414921922732720648430254040655899791362394520080079567135623369841064679602672188076510258361308829687727029943321584418119828221246053484 + + + 1 + 0 + +

+ 0 +

+ + 0 + + 80 +
- - - 1024 - - 107678493864345648666726963381598843005045134906745773568855127179729298765945796229988935480734186762723475076589458553114861073591179889992284613957887798550444135071834300620151269193028269405467525155137973905598460168964059816679287733081423902287277428322195154969572934367847409309681954541961841211929 - - 1024 - - 6 - 0 - - 34780567649645587652662047318280460216197594322629290659397343806640717111602043777551795972363990570490561518129361133754971748815062877457811980871870613895746761204692874944262181605786891503668206019069701677551111685254064897625906904673396799614054762342291638726110702862138766341205373553864835127477 - - - 76770578985664099191449798911850613016440202975139749844785468106943538467941487623782662375335620379715667015148235397661770125559100524256505138827952950374296533996410404476470347577736554558794350087928716157046782489969073300743386412321573188949782078100848155826141059164451205262811577282438487833155 - - - 19375132007991059652876546182462672768720429677050803522934111565324016495763732172744623907045335493048740541182304274405106110493850369225158004210873483104238595711350247509966292622988932139561490663242014148110393502548086758118819001913181597386000596861820476450726333113377798106479230138706277155435 - - - 60332745111136671951489671083751897003291069716229419557442175701860610038139875996851654495020782497922916125497030526867835842055895873784260108184155213565134969114645958871640895775675472360543614497922018081777590790520072701770098022598964534954182431602697737796983390272144688966305745888541862833949 - - - 33206030625501357397902828493305862279894195856045523813806319914644617357371406587381751252409214237464923457683937662308696252667537129026830911327626477920950026367523422037741403916073653057335758700270326029776865721695045422550695292453931419295319756838382198216938790815705554550670037002167896435708 - - - 33699591887245320183352886957374795158953603724548326397696125237452265579267587282433792785552885615789973016310923276732538075279246287329477093697179355796742915804057038950601496710139911151519055346593812515824483642829165138763105492040862107512334441962031341198253373030460133402288720613467576919651 - - - 1 - 0 - -

- 0 -

- - 0 - - 80 + + + + 1024 + + 113974307390270829704595349578913310066722675531921575347137523148981703426268705549020835166781529161701493646571840430557158177891602008370788878183990720643046884785630470230010981532651847891407035655981145786954186376179864063254465988631797188768347843073277670841142392732297237312085416165057383775689 + + 1024 + + 6 + 0 + + 6143898232765286145077892477541836045632297291014786325302713400992132298271213296221332308996378104555543752783908808080870783020716085260639775842626416308448085260622406024209346821632861627259504519975501548599876346806760533975070027843440034675089073283329862593112803470393290357751556498842796719860 + + + 45047482677736838274299288716528407647175537765347948824711027643041704760288870740282898402913040978889979962245541990130335022898385886574447509499743699981594370456407584374111495111435806897457488183267190020187277576068699128913434781769902021871890426617208889662327838109855812184713851004924404598526 + + + 82795697583534266367376842511520190853446581226742226985762912111941208390541590347878324548963363215104083195843496963031072570334386362588214202064108457053405651153780670929192329770227149165245609972443851221676045774787349013613321978666414216036883233557120172098965309143739178407520621356057220556901 + + + 25880229906355987417048443339662745683496025929307390603325798098758557774630310189948529708618013477536719327095324879057805823082814710910504642840272322506338772144746395730377654904280294077049515958084088262251276481705776256600484578926821230685483486549704470274617768442869210622846367240329758009381 + + + 36744980390861858983016817581565444641560245335842609931402378876909295379769553524692397442661219757977701813033692377191780367467046935305316012100496956922085951918230841441997581526084427034406129464810799799799593083126824682509812576708954752699947843008307672414478391229642727756912714571481107882237 + + + 93931746498890597103118733257782712061507278165609115823000161580218749262918351236671005232490390488711179832465561874334923731589555445823082537357787848231793992771931809400771008819473644215961618693484941638519012030342118706580926098868741184821463506056147426825693726869982947485920885661024914645550 + + + 1 + 0 + +

+ 0 +

+ + 0 + + 80 +
- - - 1024 - - 123460587970465722399480599701446111042791049424678164510782348298178989524706869827218072757318065802572872977206189692439610889543998303448261820274781115343738147716328254096174904353808537339736300386924394267507766388682907861666597761952802807474810395363126049870826035575374238638068965983199376357813 - - 1024 - - 6 - 0 - - 117318302352368229229163809607702479318456428030157262995598611780776136494163450278418011369672196225024705223924157260734348678181103931116903595932563324645629923260513068155684589997607606713365161836567403767936006638718885167253192939940642824452024816730744123545240701916149057716603434108694989710429 - - - 79166656374368484214654356495255053395213742590584206280310930719755653489957925930346542517512620192097650425359579247070837443830862748231859562053718573394014868991678211219437490529223024342458612272327848652593110612340785752785585712120010687405752536405399684337596148008796260805479427829450136814686 - - - 40871868938993875410426205996751811587721008167871813439166564189762055623031521920195950886062485740929198925966775524584648439881883879228755988003547754790287586711275993853306093079373185290320968524077798129432974504079981251722944994855192019937284992580655570885903256271403090577186422692725459831875 - - - 89892620900640290140283566392805476442834511036692916092709883776370123872836264775868321860590685970283545083118729182759253902758383167687729739268452078465233562037688700620432639773342196188561501129246210605848453748122752153274263445164184465697547705606339433632142128437959746969173608800415728397931 - - - 121709777035471737364513670422914240357059445755508125094002474776054087244214559702633254647901247822895427221568520569724729995389163298559564480170015494003587855303221851200035414262844476231232261394773812801023837394666069091883472673028207084029985001140015089782123008327089253959339518752984564005371 - - - 118368291349285147157585550327202423335817645258822478079337019930721123815468331635525068128544253736950377216631099734999157547924851998471340790034858629390897530180532960195293567558086925678406847565038276833217752653830262850771875793504960255927890257698780412927440166594709334246027496966288743344300 - - - 1 - 0 - -

- 0 -

- - 0 - - 80 + + + + 1024 + + 98807423102492429930268745630975757312710442265987489391626974722444583414454367047761528660033504216704156558226635445104894448714152726863223308098442320251156137488156682811350460534966144962169777948722446229012470785374308691808247430118092391490829696229412962154174967136729426052883542780187389840317 + + 1024 + + 6 + 0 + + 64549827282573569661223821683778433142336875611542593274904848250938069885911249987175542946946869658654282518380184975606622371835551768003315199613988394666484889185955670078231084737208632907726374304014481300575717327888290179385195747538532425373380009611168886639127584368747545237913900986215352505640 + + + 73636250453944878341096432696334200702698206531871285264430397543104072874763632445610561788692826208691030515907933400338408612798517044523261111179649288751848730442741693053895368332285597955086557305203862706452223373741422033959305849205040367245396977521877380037962376194077376744163370557253796629545 + + + 90047699371842887045795925098160727351604892636180734457001718284143134011696968894946980166755598291233833586774200056899638788187572346966643153567962585437259829811315743909634908909082662481035546710725615427445514230073864976224268279022603497482873805177426913822874578427060538362292293084071476767061 + + + 9115882300533110533320125402430271883728240251993668377826596639411369393262321640454776088641577536813664997052927197442219365129684692546950544551008194436381949150276163843112366070082676673254884778299152128272748494200409822832169555332974121225603697420301650511304992668583600108610303388286957045975 + + + 64290257130120726933698021141152470681302465088538506851346181746788653877595161786119540130822567920477312949950982718070648964511867563833771395006562083493221576148599839934618407836746231775029691749613004808232713345896320469909812943026675413252169526568723297467597805871308793216708661264167033142319 + + + 26845809112830748951213424348778157379493334928631845602203489071032159000331814254666954321270335392941976157317373195459864559584016635745815797217483247587359120905027502821188835036257799309335618326919938054255712160946337422482063900351741886195278935583707209842416244504622114437222075089838837886709 + + + 1 + 0 + +

+ 0 +

+ + 0 + + 80 +
- - - 1024 - - 115193322549187017758632085674974727024742715278872315780926012027804032179761766503288065034565716892785818153660349164554433828067796365626741896969380114418490544104123599167386238983295022270967054328089602503480562145153230657099035975059011144762714926206594556617956114445259820923651026107726741377073 - - 1024 - - 6 - 0 - - 24958892788118393840566891402925212894261112686881756396217607457946596306978104211815943994414797105011718075194617345672726305027536665064724927900756862036945765691966423524893153682261745384165128816990435797199717205467355245097126693946214610135412865735012562961328364927779026079460708512689938357459 - - - 24288255554756812624762197103340158750190223778765519768405807403357684268583138358422886605098116268755079717463816662298139317595939687753107981126116196500860143071528623840509966635777831057754249172610936632021767758934196939105040316041127363794901161035243044698624148907282589708017305528332080549401 - - - 98573529002331715221466911082616318301300017750678680593832916072820765087229700809543111818625003499979817183312145679122909425246500434114287363675204505267732119319754784623466080567913652584576116756111506044251229410873182774035682045895464671545948436513530383740487677985431898275771829011975467387636 - - - 15353985435509734717647205939924424374297140311254436480413662376519872061599819892959995176175891437756042491481998969903341756892089428475760114248462830393435227191729623914880110584220456903870872511626091038462298582250901312945423814102221099309496784542055234964849111850334835617876760601457927418206 - - - 17455735070449738054682884370746228687686045089020396998083887583650988955042976829464912841928464950070337180970573621151968757420751546020224392735386909098113189353739054276774294071884697288831510878855213838041505870499205405393921909645992766577060606810395305981595413168173038810933707942671713337798 - - - 99078282433460334122518009685435268135390495565166370788375980674406524442600154170383521782130678737146346515697587435130336220692226983416874121180076768315197607852814628471856417469605509753709709939138595158453850817740160745949448738764045233343710173080910805476352529406131342795794391893459845853249 - - - 1 - 0 - -

- 0 -

- - 0 - - 80 + + + + 1024 + + 101508066458492758073831514391925207728099012205679652123307354514934932734195822482169528209118418236549720855145624504946315772713373263971122898931978448309382517459432566431767420930512398053933909962008429517559844882055507365161791227718388693079346988835714646724856579563155533056841840764923482911741 + + 1024 + + 6 + 0 + + 18094966270666600341757615203803958899771441588807403731653637889633185672846680622295925722601058367035900949809123968437072145633871030146419062724323629362621422178964934836125666825322583977098750643218772327199992871774885105970723817310453460139848128595957114499840166274261548332434662918275912562326 + + + 14519911411498662202350190289153079450960998218836862510262716271183656169763576646798026314706174683373201052543945420646503458773715132775635944615831483316942230235827414686195242147536461207965078368457369405716788284400327552776573272826443021111242598213194457713242796289163855980809869567692435243061 + + + 100829822604118715123148536176722814436072482852093886315881279658513551790405251018005350575582092689997344944250083661855004161854646534370764614148220116518252981194897290980503650663034332261761867902281915726459650291968214075577051702923706567392314103476661712678735115666275518472786274656847904898857 + + + 36758619800988867408554878881417837105069663192880003669872796599022231882132182770823159932605886945571779971084253648386944001078974922999576213946881031655276217832482121846933216754595936270608288445584519714020183665843778047016075233874031641473851910344486972578252635123798061401162697925291763818124 + + + 98954422490737878802687577073751348339761851462939759356912069691530214107182670740567414245254063263249264911730535276239211847311355135218241999853903438057185589465587228360001065925880392474421677199678509409007188573134169996457141436012554787080165773882777594876976452953008534605307630575224450701816 + + + 94651555423243727925284836770595215446033632966373930842930348982337095973921116325578222087213892295955414708791768767604608023678940852466452458914636595705401909589557837187572153271612758886005290729697645320266548149309389746386152913646486076746529707125841746516540210381399967115662271604255517413799 + + + 1 + 0 + +

+ 0 +

+ + 0 + + 80 +
- - - 1024 - - 153256019031673973848391853908671616024035351852333113222956212092935054851555144537037154882131071118335109565772920677334385665987953763710322752551766091084637014937633351768184250877579165516584609222393690507834529036303945036774013832353124798268158248184389671641362425541416312746250270416649359548041 - - 1024 - - 6 - 0 - - 15220542722079887934163021578416557040815588753014948049895358680874401987354756483638187693890778200226187944576153001580318905767308325025251868319513838639170229388887094978609944368236261084829465326382756814026047924860100572370509240911903760108844191920274365232194821110327754051188671927504786123847 - - - 143004036495287445500008244565089775614807488065311228319771443644042556939728810959906482515000410036341359319395672341423672298834030730662358936098971678898328809479500096931876973317120818472883465991015596717523641856810286626439287667681040066261020458108584755098587931772918575340120380122391279580630 - - - 25677830626343122473800267766987258667661454338633409925057452295050792502934635228012969731952432090824067546127184820674269109763072029928071755085679552707171555102523382002859000834013865264250888579699016146722510456747010192496630995123022435395781861793364259724814673958020662700602026307416209911222 - - - 62246636121089263731371807945897520167051837454698735241698439734694730001470335211863614247823007078485077900778766898167190790567301408855375740484748340320700390073275392868823940948653806683445411202776990790067823595294042946536030310357110325099679964532575421698733314704640641895828452919877756100011 - - - 109179195904717079139512297958344482754488860947001124419866306632211947700557001412569449694611680557227002345132253379015047209028361122554436255825724641792181226048045416132300441370043533054296640636019094847912470011225895961907747561407131402046285049780521232862899425601689434905370686341564422790289 - - - 72256199900300051197332501127222934244256559778006179914521739477500706464599171904600643790797361089413358501039731833363101680832368594873645195342133343135647784788351460716476460798313313942000048638227363109185805859595520325671335898545619147866290785844770980165710956429961244551737499380764677597447 - - - 1 - 0 - -

- 0 -

- - 0 - - 80 + + + + 1024 + + 115905442434334203435132030544363120268524352413227438005896621348074275338040717306850044416905034343632867520965599747469172782203400980983630741823323943057580839927465570558565483424088928521501290827464658510566828325445473358000628142454989523014953064689031322340286882493752816338186368925981219432469 + + 1024 + + 6 + 0 + + 103143446315737471829082018856156260406954006844151030128697141592050942723618091433391809283342209458536672169365730057120090346793397152165987123553892129060449489457979013897620539685162986136801165135141937188268214662182715789151398082138968131043082929543088462857916821829536740403295702055175095598126 + + + 21093465283395374439124846403749798935063364734560099156636978868310227496863538821086544738303350518658093170146346808049259906216185082462855222489769641277255000407021891287322265304591178496166873893520819194979043135142624917331665674639130067796039052804092101272103572693044811271392604926388251703731 + + + 105151249446495986005765875051158158755947238850758463317422621112390878337383240153148379880370092346800008824264379404671662956855814974133259278244329840344446075991005107496919710989594420384704764989485250758107128357896269609463718710814344737596073369019327376455733926447818113105507625453962069909607 + + + 61283933228608684419290795465645764344828540004925936906714687714555336357892232894989249781579179024102093894785668325502689663735762444771431173254788111349508550746367454027076673709606263161971293566586615407282583327678882950530025384283758978476202435841309787228243218133194418332399507845652872341542 + + + 49930744498336662181889151989204055105279236092828545858836893186940055185938177721837847596120377695235132423481308807995549601244142648702684428675952371139939449031842925865964588468162060345934576026669553663079853709071934669626745050547661854436198831062735632699655522347568180307658967101565763493932 + + + 44829684898021575993286660294598884158901788951731868330942301576440477841143427209536779165651036231914133684408695168475861763616827163141782429368799554964942252555412245179755130594670036342985806080785698319091152870648452879512582177672829292309817942236855923963950699629201136751220460749324252717791 + + + 1 + 0 + +

+ 0 +

+ + 0 + + 80 +
- - - 1024 - - 135358305767271858027595880716111530935123928737890043873187024055476620530906467130993033452699358704424795550755169128359841746123492797756886097936671355386621176058979935393331413499392989299082084359031846630046001377108741347076252627789379769344457517235001038532356319713316214499718115421425871569433 - - 1024 - - 6 - 0 - - 54594747011594798877885888974944176740233826058214590608446121481719016646101845365461669609593284564003581366359995275781810124519910313811380876256508679688339828939491429288889804388749815124253867496416627880709040603044538402764027705232404679640769755327219879688706197760711345784098387646185164981152 - - - 132783808999394318707408962088834983207010415125168788915872658758155889296838532193150695880199623917302322850691457856799843846471181568246727469377964494204689790089312937443605415487457400789095132034217110410411016988079403293808537223974569707930874192773033393470383855778863425429691879481694667628909 - - - 9473430635930700050486617160141204494342095550189134899476751191276019107931129114087093973056080555668662930307913633328246702572209665502366737090850431132340577394193612418080423291630390780237790223606432359088325373896719506291987815760514899446327539193574576164858114835145863147018536204496364575294 - - - 90024838355001075777783195974135066596911088933953254044502969121509346778938214241043930641227033089129624800092043075809246544470625613932569785625492513957934084324845138958744207292453298491639912468882105563813341034734148686353752495183156303339463108993280522860556963638419864094636988429994370751743 - - - 45914980508142788475969536593414423447529386876252836641757988714678457126161180788769040893130014877283087923780361131128613703067760746100124401445607902733176021029401905908890233576832489405771907746137014120822037941005000384307118527309121044551993381248785336586579186345829608419256901639247803554604 - - - 32911404065014905616571735182748738235851543040766582724263411775153690607184929086994340376410140178669625764641435927432683863591301353627927154715686151567872995056710033783341401210111884942070839872351093132272880604910175334910646752963148483903851675232134333338877843861382949858872798355076941765109 - - - 1 - 0 - -

- 0 -

- - 0 - - 80 + + + + 1024 + + 93324302492808199130140038489542321888348853071302806650239414385244723974211537483002520341183837059316506964556579623620186543669899937696064920977911668256597669280463423116955319717917019567307329889476298137481841952456027055233366000222074063733100318307941039564854618790300804147830985687325329262549 + + 1024 + + 6 + 0 + + 42518891212784696725875858055650600604108246670012265276077895513552577725321677717588029878060259738949894497402002060357228400555391259209731917943432365444873826285643244113485444162188406783343509644219109678872983469142088638641874489401990559140873264641726808645962550714591319523042987950285592368824 + + + 75291549751536791992105257420743345182482577809046353784700594093704881364358216074711299705488101138734376783695106693695251538471182399552271475151254734544700337045526308828125956898392019280265133388132621200543975423058804645856787811148851522717906121145694781740895433259432498460659911075052464607143 + + + 50978175916447700088518240216053667684870673847420036235002792619092589262136497544266464200349207480546365928164339934414367595072612018614325531165268369051297212383456749468294457604921766282135927832621122626928487667454146002755546119901194327747621462854007838543528858175885057609806673983395026231342 + + + 45639252938396072705778302104880130705153407772406002471321793384411905992500567210171883135004287934787044232716973226648803660269945284537097639427885903326635965087238403327182838075317269650299400949646770303956474277388670860553468893703708785465699418684174038665570413912436960118383352524822143726731 + + + 38013186874210547666062861075258166760615109425952150905181518861143222559954119912199951265061172878298238833639914869507920009913414182196010461381624209332240497098198012120091419433781364518831155899265689531191334639603576651285598143897328961102301057307254274334431610639636216634019801125227946348709 + + + 85049252916548353233861447384935486895006861567202700674588370555757614508798103563404758820605122800698832233699934570829491701014686369240227289569232647169872898587084339236738875298924166128821057679454903543115766248069551533282505816819884277101573939884857407325991499258590780403494195166284580087207 + + + 1 + 0 + +

+ 0 +

+ + 0 + + 80 +
- - - 1024 - - 154218268867696507002031865996832738977246724680896068886617497685938467688459935868916544652628785991317792030286811386804084216509428288684761196875989322260388889257097276677216400072227578520525641529006704269719639306215286673007408730828431211470630255070235631883821820735534893283207489831811866541573 - - 1024 - - 6 - 0 - - 27428799928169371477008314260818876148937722875877046040065001415256050285544612261240610068898749426541489168818274025311879557094462504325465143718226701031270459513481171715674711056192203762896591318737473272520615104809732143483277690473125331986133481516425478801944037361281857855867037438256343773679 - - - 105450822515849266246824784593332752863996144824625198279966526580096181889146860866466836912483527896334247490301097916546476481609859267630501968068493335890437763132841945935390933265030348476193713724966585347250648751479602155322327667705579310128424156557476020295924929348119910434857695122123769715348 - - - 17917586169419969792153843627847724624582303970451816452874219660498616008632452910042480347537075057133325092544315346979734775101435525533629606020738633039620963234297245636824119587829479049303232294479234284130684993231299911772911374146097317218619653947965414360245657311825149559284315208240541584049 - - - 83614794643827277304010494713733702635853026857962232621115526420680432673836574945397242148810823271595098760695291447287587902753143969200514260996554707598388279117974226336910323931721647138761776637137666044994683003226962992826724806567215542394880283109239037221417111570642218445097975627548527092539 - - - 98025334882817542595051261918088236466491396073054003041122381828466061599594157519317917789905097080123705591326984935802933433391754654298972150414662017901502818342450898330664054579806253102093229112778500389727696035428993861323041972409204375141288230032727654233984733937127115582284964721572192907628 - - - 103461867044654386108007921528414895482662948754475387341985070060736686576950492180848716520576397704988373242928703953709705994705234961029080392502757613196202086877221834313994327801773914413507546181585432001324248533541087174089562102726527826866350806480335498036140946354815641124317115290718066663234 - - - 1 - 0 - -

- 0 -

- - 0 - - 80 + + + + 1024 + + 96947677654641129432053692801590282848867445537697451493922736175932291779820071272672626959724413690236039490294379429939123866825860419240206384732740627914281920798370575149622345956768221264142334426239991826383023910494298980445754886848334676015820676920651561493284042469908663704880008961798734003457 + + 1024 + + 6 + 0 + + 93749302618648808070217897839932241759814415997415916946749411987545856635461536614952884256460594397007965222927679175539693559402752396538067995516788344068508116895475192183259651494693509551606332501288659599202246155185544645331923459679475888979221040142045149331365734109627405766434268339318300158731 + + + 88591976259173129145635694202044266099805031201434247443121595993691017165775654441584946313634153970992495586909998094664721713372347775101011059850875572354717680369332688950128197230872808349269309706809734510460321403576514431412365323583804364538511077443962739519476627485839118989389915056902685823558 + + + 42575950840114286718689661351970111621686309493145709681590708158718759438529792314889983671083215003326041806393612339006301068034992931241850342792545649841897953309666223399999914234439350528155564258900577268951586989099519930473331582145218329466694762252396903587607667346075594592830912128475741773066 + + + 43064496291705458504524336076225049346473054921477695649886760113387187082672578485621759269622589065305002049069497915413893351575042650143454495938325980146518181479040258392048864545346376346585971672448094055650954566712096872329823465436163567068615396750693796350283840033257854477203383297630587368938 + + + 81900749380819745213546459754756719091332758119155758830804852008037016512803399844299304649149941960381423540431141486712755371132899745008359589903830860830434478987247676636962895590526179977137867362906973481166910794944997738649236165802384325814575656461706345495588898502027050522613609818469969609015 + + + 73333627947886430331559491955680856474978748460266600669037694456728286563389073586185721800259632662405592201658385016537795533052015985764876784938717609438086082631886977403727912391035896539429294934105757813712263919387011949889257183319012131022883624273967219415795768809726875302581528242985914413533 + + + 1 + 0 + +

+ 0 +

+ + 0 + + 80 +
- - - 1024 - - 120098847776259535343644334068493409247155794818213113642226621008837548248809756144435391881962615325304472487122528549774300242072619974184058684501061116769021957277559333567971936578385761656133295119311274656165996325688816719676095627842254071860445539705183362636859341285726107647847880667038640384469 - - 1024 - - 6 - 0 - - 78341596191867165364462798149613513767187976045933270925524314074332359105916239984156112944388741605555584315673330918240662669972383036695380216369645786077675668119525313091263106903931060310783249892173696572488213764160500898695655888234795022024571259931035380458667979043363731060752523060256425326493 - - - 92197697267850835637041615816893083978440979223485010849369520091954329556817022954840969220750091574955501530801737742911131398158522167774789346516688492204741057116830688290864687904235809951324327245011263476463848478977798273152839939981363192465690825435376744018481972214855855772912890637337396617871 - - - 4748293030592378955093724566571489011651125070696427417853949295886768378111152102495476227775576523833542397763054262265966439448479602453489588304595952626064095178127493676309959239982750742094802606536171334162655130645407695836907472484934442915849957480725551564249920896993846998541219569493436633204 - - - 104584900904542556799078527703080866806316560026256596079705108220072609345471701770134318641946110143937813605502326970885364040335672893811516334052832715982398959853556119074396097391674101956889279124105778371957287930683941038772719876857983940733827806167120908159325650830304989434548687189098427086091 - - - 91477000374004348014105246188180409651649243135776551322813142142044628230484208001614477763449794744746082101984365227478095962810916246503069968738835364911647338508489896420278550004430041982623071421860079472688566117689119362544066175205618057687399701666608286724650867268340276001512993623664623275609 - - - 27335022029071511973872915368479831202151720242800820669365572158467591925687227633305136848793235934543162969534704442560517668695149887836214069200974132339079102773406068766037767764420212459478276529948373667413279044542607587605142289772231063326758841771162863193523221664294299814482921047353670436699 - - - 1 - 0 - -

- 0 -

- - 0 - - 80 + + + + 1024 + + 167727354177575283296235069997706944355353371402089918180577267057334678418188810520847166932310275524601433320415852610631142842447656986744375591938652455411091898712330522049939659059253815074066643588980422099815823821431425085733238494031338015875267847707383566217173126797858012105681092131354068669933 + + 1024 + + 6 + 0 + + 55212528739765004956720425923944299817655186482742196153935612638315971089606710371791470971887300374978844183586506653486075371900381182898430539066219084106652951743708316804834474071492387692170605664852204193872958998318760673106406411891449815553933844588162513102725642256312542518804750070757616604443 + + + 125521134130018008881051161583842438871352764638574693694804582800910273289734389525646179331302084640744732360170705515742155640895254805301554658063613366304840857712092749922337120635191634218375909427765307324094526971694236979991076690133107301520235674510926743255560077520910623929468465293282770246345 + + + 27303183713310647270239430513109683240286173819802954448123370716826579313726560171659538820140717874966904907786980144568651508762043982373023040473117328625610211903440801516265401761189709812839322672290141710111675811234378045537265033060794014611679093546390659077026035074869442774684438338813479119618 + + + 20517582242241300162739877859035007047878076436157927684042252369814854182910736051330481835470387047390838383944925852375538128360809392771407702990039516320549241146543080697815027348163425712152993328929677268692798986107555590893251957475287165017431351063386066168339776732974946091902042063287264280620 + + + 125835559924500361026951681300241222847765186627319590560094438352472863980544039143615177234020520882988338756341863707312405580760526056693953575468465964827542336485315943814807501888912677108769795118067849939434629344637352963175567421289586227655302796471491914750593107108792591241163338619713760565646 + + + 39455839416613969853839100198709761408356671979111856804339072840007840765670719865497340923297196652474258832084384211032896876448437811056389073015037846251382190261051583382825547944914289815592218399755293578703245716253260448083550156430721377021938994781258611779235943999768121074336608266875538728464 + + + 1 + 0 + +

+ 0 +

+ + 0 + + 80 +
- - - 1024 - - 167849747908102684615783031952151303487318618058226134276355868669627336908402995742916429082816062902544246840315676375600682020395918653886440543549039685487527686497944229453172069154889512786032054308546997135806844060341575216655718028005098196791080486235476250761566643135320439910817103719665970114189 - - 1024 - - 6 - 0 - - 124697971864257013069199803276420735672381775609467161633368671004811398338592994292357677388507254846498502768389738866111523924342131234320910182832156897093603904400854292861082845611922732284956492433793209240106822872232125951145778177387397679039918621121927819973078906987741480262525622005602565399227 - - - 108887781890361525299548949264309573612532412215054221866945026350960909252554790687820537292488822159239096136095460817189450475839784419203908369203805504902414189148576907397548005367318289848718165066768409808513010231990171238509327686404013042691377114557387525251911427307934702480124889546002434153883 - - - 99965937256071531833352267584518740705187568678398481975025487900445929854870225696845831801035897840798993192645749908958835960887390699965754669201895122689762609842067032782947025374191336414827383420980245403487860703320619493841364508653990560873053561052051848165272882782658715485304580849894447481984 - - - 135464487014068006350241183417277199933512080629319393539084556152088647569462879342427336794694607292779308330281931121306851709112290516904611886868248721653328973827011082831762202172003407136709090048796766379233700381954200275601566017619852103033202510881086909114257203408422383001855075728038739087666 - - - 116087460929649477650719239236850579624411409915463138669472799334909075618371332653913172377800254417621211492605964716808216033497729198457377469580439281611985552152638264761588841398460105860435413320874653840732276755863584448068058447432518834882323032920701627821579231087160538498920135097072056339130 - - - 87022481899114200452477329439521478334907267121400160768484310083510672665816499561166856734334611173826744984646636728146751086237799447687536072677043559995690196109619136304467129246411278102278767648846219215263506982413472377610126752110280476180152080765605425555155921191279654185124388043571147181327 - - - 1 - 0 - -

- 0 -

- - 0 - - 80 + + + + 1024 + + 149156752675457829484492338921857926395681371289126433584047116593076369987747241360787492801209497129390401289011665250581771280217972173170615740750310394068113974975250202470798361382772362253952464329096594868484705113979621434446377598628246250036954003709660905146740293851838116686170958097567892794609 + + 1024 + + 6 + 0 + + 11352908387747846374372382544228049271726588897582672087730260980437542587303031785369398769863666016131812336180790399373380928834263083455154052747498583106051460044488432536118827569329724006374986945162805013925839836495643941497350480016011233155251229927856315435525160642066187837424075704643901546975 + + + 5924580563988316371103504749836805976866443182621838060168972348147805336044130858428361533207561584380432240890820748952337209665476242473843453104633480324663638050418289377486524710747064211208972874942925445061968821377185536287994789022308227017184318180048755277868646206644875967439434398651548324609 + + + 83860846070653179149971826330632184013457318647561735410747487053401978313658858920025339960888588834770910085631773586928930125338075262176791867769023543921197219909615115600759359245696576488172992510798761693224064657506266221986536956797341772968085239357580496615776718932269765843251044263512436015136 + + + 89144604640946879518870372719545566701496234805285239542316606982530333628450626702450928058204589715273784804359866235259218654233659016527471314878440750019724734697724739198635890891822991381467431972117399010037996038726427898442538884429809140658590531970908625826945108365768468397326164790721051678234 + + + 102820865676316346957912018152813405266463198626305524734449245075212023016341056381052983510125315953429184981187357888235332912350574250059015810340837866406426404037716528557357317424782799396883279997347840149250126073547177628090959516190544390191869883221552750620613996888907802058011003802412315246930 + + + 56343229955516400442946814456064441447178515408962047510610551463883512547127372526397886490097437294364011273783512771407939447206290009393075915985489490489534298740530908251463050477206993005369528943662202499020792507060230580415898683720172996453846014541031314731050938341036493335244923473917023102041 + + + 1 + 0 + +

+ 0 +

+ + 0 + + 80 +
- + 11 0 - - - 1024 + + + + + 4 - + + + 1 - - 2 + + + + 512 - - 4 + + + + 64 - - 8 + + + + 128 - - 16 + + + + 8 - + + + 32 - - 64 + + + + 2 - - 128 + + + + 16 - + + + 256 - - 512 + + + + 1024 - + 11 0 - + 1 - + + + 2 - + + + 4 - + + + 8 - + + + 16 - + + + 32 - + + + 64 - + + + 128 - + + + 256 - + + + 512 - + + + 1024 - + + + diff --git a/src/public.80.arbiter b/src/public.80.arbiter index f176128..fa7db9c 100644 --- a/src/public.80.arbiter +++ b/src/public.80.arbiter @@ -1,28 +1,28 @@ - + 1024 - 107700103880419692328367116189192966476991676044247270066988388682573412093995268127675329714869524882503283365433153067855777886711347755822415223285014370367907204226030855736100505094124667563432075907093753495448179510420086019113880211206042464143856137333804828018569350350077616346808261528042365211577 + 98489526095537812671914672260560018090217057611668596989734022603435812585254092706327837234715721379812467460348503624859923588931194279750863019313503365130101344590210271036704425132951100630442196621965564484847520331219407694863168963366341549385095269303854889749985679191302089648444817261901537794733 1024 4 0 - 49811239464878860274132453853118165567665132210498504237556572205909237528328968498933157656819613038620525455717236154422037318811347718104464880183252784002775465873092109328767022450835336038160313127256576724501524692907461024498436304787113822855161241721807247837541332450629698681312954571290009537051 + 42374133222974968210028057215852158566636786932475909507782388540803724724844743018911235437443112261642654306808448508093869539365604056801924834100864945989117146560971481644627931428383148822444032525058463440490553247719639204336971588909832619078836226528973706924887750703136957958287945111431792187961 - 17027168056076136391244849220951406305025813907508505982424809616929763646484280951528565172757897527053158579076495409131598179754969112120098885067744704657427753131869192016296254510901103944346847132094870989107467130103758421548956090998324832190968916423862712013007538578966963387587264785458280703622 + 8334913204900919161541498482369483107725954920388715464140314375937204875041044923369980704904553157522183582654737483910021357149434591738078332164194247132245817213079683236963565549821471398746150133301533771366475500803178858553507155213628645822804243592196421503784430289698365910154426158025995360859 - 42098709706440231891911748316231304841709350817768399579904282560957213554536386217901333587362029920885504180001839385889984845992260847425081760408769181946074519190294064905186606469192775053518087508245771765781558881708990486421009836756982229253107658121862326056529457376882972066640895392475655180497 + 48475321241872660784252352796143437053865803452281634602901314567823439433570437059783067556871053235096532299944017122324229831127184220516016170315153374259709705797263610084297604423004649805314241629985783879531502467350783807667224553546888112509886513382549631529365707475524801261191495676653497813729 - 27269494522790090735140959017359712614909438372077400292428155977842585299426100566659205458117020850798869425566533595495660629106252948862453459224252401830860280837157699181944673145121322079771187566123199358313444080388463054343347767294799630662050886709742907169795252338316105781197007706038593065838 + 56086066421787991575615487534011085146976787816892699254990312292011344787432608707305484818422983163754884106272433742510567250141007922509450455680707061522300675631080918728325451343287917022838187451362567049326660756517061711716096349020868314991477341054817286496284245487324983177664193151961310067925 1 @@ -37,32 +37,32 @@ 80 - 157460659574917351903369831024682175861597550158671163721833850074414895158604236530506554842287380041099667143154867046310050936379396147526924595991190388023049746134418297422151991403446948124736499697681419850182522464548659344906515520430666954119044562241871279705915585957813296923491903613099059216881 + 118112606556135514693761378392898456814759166524210259310909152732550595038156852144910545358665116801300982265524409531329381247033762555506391501421265666324474106939410586935716990775403541685690580765936082151124197047973727303794077266659824937187858669631769746655961710436258884028579298446063909996297 3 0 - 11067118663010135296825619533583648316963784982800157913323680145939789427861210464656192171540359819691399019074826112071701662334944814753088826371806595727517417884634884177279029951631584592818224553798280996290345970642584493295920258952083453101143840363110566262628203047938988764866723563029285378933270306548039327751799434665394724779395183778018527642180905673305470196129102073647921409217113690218859394396380683463026560691784469672569799690284703401782299091452848252938314873203599160258404973950778456209077938143908694778803223397448244608033662442251623160531516052447842935834946186706593746365710 + 13327906542229756699987077168111000112213773751885995496490807499398210662947954350700189731736366368311136220104869078354757344358846234769688167483187203821476462017838372843973437435065604878633156795741043467100437669980075301257403950822931372947179483294314168588340228927082641898491248544858526109554783003128578006815579454252932171395408412398061590410125952980069901247111396819269179316678244068595435810404148544751944254043432337733077193802802387975285761323156643380476292397735566425428836065452632350775985786751940439897881829755780786007026468140871352272433738876292071167871371248149415361452132 - 16142411064787572582402712991822708008440904611000549124982011635934782759183243976092352168298545334830263696515225974760161375664542096683114491428285696613863250591013580262107096123895664621603880058142056573759358128749891689824226109424246215238780682189657232579312460661149169529371978742213355186353868008613716259803866452524343963828902729508888535859917733801171404986642820520029255269968872112935449965444202333911259523419568480026592307589711498096241673266337911998084564534655849090434500980859390579383826874758960993074503326135445518699147339596284180781816936460336171765561266397187072034860360 + 1654165017749398908327059947978584259773039176134711394086297778303451659552401709302975069017642903366001798602362606883080756951795985818282370007462273387133894935053575783509477445026722040319472709935385673890397172628405250993078757566098543309918215779052481636001834999160681250950916460734843744393052356653846179241901499347959534228010532140740550645266400318387012286713353834405504243690720008114955903377199645747521496843591036928906924447696291620526705180747973091627316811880933423690536490318301686277536697025655408614468783809481096887886411591729436558056830081944722416920384798508312618094487 - 21734791425473334528982709475692823122610665879921574652954906635597705292253499482704361502719926324213592867725042985003764162823843798891627328776144515056149609188796069222828234328241795776901244039962098712542008775131517086747471893470000694763152058194866973876674119639133039282871481817552345284845547043910563229775411878908627783538065669269975974019564013736077054916038446796617730143701554504692776941699173638262672611562364284300715761900012926344475686775028021477133128114344138004356540767501472336542888800684334732252341880557675234676057226715622177772904897420535624879927402839031825542901290 + 4093868577394065302501380165785647966095625977084857067204996598920159759640249638574809632367638302050285173093517403742696155998907234477289746134586563378062873857074413933187998663380528179627889378117095926026337270200819518552770094363152513979938404329089457313962476327463426988058481085835095931245511642519601111720273105965448906905956398898316852614013140997921874986490414784577198985499445926659319960686206958067134620333299195615000995808920641844063268201751514198867599670754926541093077818825158587510752510979092368893920340182714512813931608764740042749247822795879820884938767273925097962015056 - 157460659574917351903369831024682175861597550158671163721833850074414895158604236530506554842287380041099667143154867046310050936379396147526924595991190388023049746134418297422151991403446948124736499697681419850182522464548659344906515520430666954119044562241871279705915585957813296923491903613099059216882 + 118112606556135514693761378392898456814759166524210259310909152732550595038156852144910545358665116801300982265524409531329381247033762555506391501421265666324474106939410586935716990775403541685690580765936082151124197047973727303794077266659824937187858669631769746655961710436258884028579298446063909996298 - 9641942891476563589217261538484918854990974580794528153732670387705786929936678402614481870862494718802796228074622677383651612896631855399866334138844542063264266274408006966341520123665131820124846307201692061179918953903257645409414586349197295665838027185670434370790311026971084955699605318610800281504594587652936179566972590561485856364469624734305908964633168724692041482113246295823772221670247584658138141036064853144219886478203024977770468009490348195931060424415228011959660739896586266424580892013266094375734947778562662712879029151968655887317889704813707693815227446976882589110010744282841648595233 + 10615202007145193391995695743045153359999302417007810898621357706965863845426337856323728177777375714388603130640127055835310274546499961400338921005602261654004903668493393789299518848539000846085715699723394027158152703495601396957938985571983480307035352436239338768024775373542325769602783700016458501634390517494877264110899939197785344441932941859381543122631165289024396606419189105451706496468030780787714124274641468713240575261597714958804899582001429718385778037020602776320322493434232055753498603051783928558408307055189492100796202975028087481572827056408714107748937988027454906532109688419032294750315 - 22543213951839230687308595083155844134840987857765008968524760881474103072657980357672437508895495474256585743773182287060615200802673359124129549644998575931955281835043570985388000252097330649917218150828912124614225506322213387355061345852894754476841012617301213305311654288602667713533522035353052143029290199340266400806589662518193757328194937473416895431563034637475978602839452170977002409620956744637774954554161327924033375106469974827129122791481179130884548002656596097609157598351335529636451395125730417175755007951777966600850324517557749023562997395128202354022727616564382075218451186168864254960450 + 9294252346504423686020855561536435214727430574801358400239663096697391094768891170689103806643128323742606808952061616702551502338367396063830406285046741965628798508801748766019314617834735141194369548953753258238284994489066383093367190215485160416307404900502291994480678279175788473778203996694007209284005706680688566363906183483733963086088039824497387716218574338278522507911928702480290576233300336598336393947372208324139102536480421878343533262767727704623749933975174822258331359877747730942450837012780968565312765686913759428973764064681097821479921283285467825695645643201219650226743962920627006642808 - 16007126132335876296358530597585430668989383123512222504951907430189157595935200594489042448702835422933998848981064638305589551075875746673848577507980797228243724317600217360314181993056200836552057047962300075482540048514702268474315911666963796510402707215680162558424230157686502673031715075423100813779740170990903612111095246884075603475966218624374397662701403896492835672835403014275752741826594459849398988413852036094784856296261380809521230991241670141007070552065727531399542077489688765118197856596892056504182847437654763318575990493801734767349298809594541650702120954829706069313104468398535370731785 + 2906032157069603336566873259323301250661912058218657920015256483359423538605832660225494458591261095547044143917088414118090798593905763414319162375306201346135727437040570781699227932028564014364700067873070986604438730739768527481638739221002172180248578968080702000441144425670759469482145984488771103175813621377444085718717332637851865278885235562084539161040859331482416361341079578426695516376654266093778872473274658150898568000864261747333413365480241547323427366411947404338365194123448514556079424129674960168731465500994330553105772723019439372603330494940862561715568646995828533502717491918100831939173 0 diff --git a/src/public.regular.80.arbiter b/src/public.regular.80.arbiter index 1aa0b16..2024fc7 100644 --- a/src/public.regular.80.arbiter +++ b/src/public.regular.80.arbiter @@ -1,3091 +1,3091 @@ - + 1024 - 94836384803892638824117995789132634482195952270868994215826748984908869153793901088860747241224696418115703108674302399630637671188782893273657113184864662690443068160796842996671189834880158003941516805722263619284432858611075971537413772136662438909421338578041148782336924983435268250343719081886964959801 + 100330587879240643601194719709184181335011626680068504026777062753970084772298212283340591872326237701463522637098147730445620335179990581964227914349043990250212381971463845457330076943726930123827054060650981352932672131926501755391779820522171592983436323464354175593060535829109263868308676001214142536221 1024 1025 0 - 28628690555576767636749697774290185491940279513676706241306422890293703923061800503953138037347144087401922827665221638014945985342847864551153541925981426256309942606336716126401392680335920838438810065126576356377975697801204103582696059784982593810421090414224431668947405969548050595750335080989525167984 + 13193117905084548527263347762186116420288188516310097265858702726255392664155870075791914740219311014212595321106321761692773036287865062500900443459678158295272670469090740174662526472534878133444188697868365238350091399908990272046467280966937835707228621969489480693642307672532248823659672097398829073625 - 12704571413260033462061464754451074580382114173014224139014431276115694168827187805293997125113272343311324278099547730111636857343918161732729826829503095721079360301154347778598146984393353743303710301736898535862952817982088561340251050785007953162129111657805716500514120319695870467007573825409063699688 + 9607081437298923455968530857721834360303397916731407361640299786683385647161788118549878059299205581231610224979465710490227690046126777092238245568451624404512652507499363073102390591928643439366730700009294462282490266100143844591289618905633145895179005389352943223066212241447787744961927125474615447370 - 45227515007551577556218807394554795639782554114786566240816377599870659820546368006941208474813254386199493094911687799734757970217693820511125139219183723465993685585973309515639497431094006986068540552860410906344200121814156940685114842748826666215388232186681874215905068908372768496150840584696553675722 + 63222052956157032287707248172271929389900812085370748808404194366855505198500284714718891333844834747851131246963730619516012765496939913651967212941640196183798235452114995219674384402577336140337331260330720223634686921848006163981848406630554700629421865992965772688226261818633638380123146354231432907562 - 86492925491879434163914498450911657748150417249957478758084086162563205664026800151265448125596380943442372439272136227989925642200754633983103587916679081758035690802079500865977773110094907466835700423213457655121075772534776196297203229657104751498578084275940964029360375798869141451210851988376278109718 + 79915625601429218839549587901214307201165307986780834271930842661330406032231976710591451583389538545888093689290087573995162703431027793991118358029291014199531244010364846181855172314561525366554704657346963676344480580500147615488700960978318340286888719325428131669047485381833949424731804768353716892560 - 34169033322761192018370276424948631996199772331518271559243992239356341910132742770283049384839569694666972361644863718702825173681793296884351860361980094070307601790674146336993970437100512350349702810418222458602675266977562851793778848360775113646088196648287899814441069730802356606940617848817039500637 + 47701016665755849568612073566947987366879933214816917915268299953950412601700597127694469815543152076142271171711752583900087646289305387695179529483658057543596846160397140199383442494977266099630254524539790977060119208210570044319858165960177041648164257226301853376613163460916869223010199043653878720105 - 23617033310059654252479867777809752627544228003099634204116368399648674949222872702184711948816864198585783888739684164688625995476136090851512108845578157641229762272914787372776781293843183599428892883531459766238361726217665263839978835741638943885270164923600171930484244266394605033117999707136140523924 + 24850759097191950163143664591758381688826696320425274979749851903957046300796977298973543004363262594641140584386297479785806697869794733976791958187401130497226409771795061744681224136934303847190441593620202399768372095136918184735321735664603611144575788489557448727406447397803811473360877918759259831955 - 76178823264498322872026689457428571290276029860221063151039075897883830520156452493341335999154306366898316956903981992758809289493898717701729765994959254737106638982631012562834649725117228827909757771040101702706971237450667764212367417208733132928866149829798703383858416218714316107959063435139647797474 + 76193316006566705164547479404507434672303142743152232705658408410526978068383629979301280468158866041200868987905576789112521232473814827261509929878160505625768306411365136558267871439565016344376470950009820893648063480032276458882969686496128164261557683377210063868226373163371778431451711084026189812012 - 5638557982272521525189167512579455915021874798158896342885355199621907065483735899043984276974386970485059384872870484358944507706508882965643581920025879129518569034602972023621135730019835192511245731231515787424568467104605292785348797328103204493245834783555930592238776822953619374400709002986414501829 + 18205554957105399733761515002588283830469684098915553069676548155248800679421068674414561899843206768429286603009583589839433006990981521943233509779580120676512858605049482527492878490313173179308945123449206801588524890984371297255359345614005893009790126733460410017156161034863950715626017535054047246981 - 27480357729131502436767756665644955679853077993052325031138498519526165314625672915710347010850690518666383024609720232474399583066580200962081230950834133097595539593474609988589630560662293551254129039981028709780868682077806473609246482917392276176403914626605057356963162132690807940191107107726099548856 + 68804282224902341654532912356268845689984630622839027239152427939901001643685487911618104772931880751655011280307591422014171436352018478640602699746623291094834916778497262188221203180042304113509639106826930787829278831313048808708848247767229466915908483372288809262235061807355551935910463272245557784595 - 81806262851964456317711834014755776755356920296696004611648966526162434237725491703327615945855511507408095073269288498873361391540724755443913316968029706162380509788381394222544068022801297063909482203133029231461606026525117582407807023968949029541939572335382341656940489991762359806363948292889697571910 + 14710431759599955740591605813321984190038997598517105773484164041803549705417678554800768750042359395750990109487516864594413694904913886355372807277343229267591814802152696267291478810551625018428388267027648179050495058034408535421981603261563194488085656649671062271212513576449806049992674234192030777574 - 21355512868834606251992797328324414480054758010899398627061213705993340685290586987473873677178850523791712379743214662323580443534520266725491966348236567037202326214584423131366143717888276408085715981466588760396791984486952540781326827628144001879710643124410128036812807721668622219667809364696705210826 + 97335949731609236144316663640062514016851025541642839324533796090627959674938345579897468218460449654276452674757200265949125811999728574524889662446316375812810202041470260073999631862279833814369268555190075592375221980642563702670906125471734192930166695415063178530194617942068897622096539265080108559824 - 81660394535628823503892435093479102450629283684673527514364826992550962747113264059243386352290773413740471240591142165398754169138444103081865843549746034865234385392073641186701977361775527784839594001512361756410820717835615670847734053472945975428823636672357334192351065772823196105914902710856491933306 + 72068279995642290705968683473722682972437944412128786938029662878471449546935335004699626489552472509674789920868776551068184049092929010137921315602263556252534269487163254116463543732902075230217932375433334218193433624096963779560756193027301909089341626620553978382128137460344082797314447936004572457040 - 93443232343594221280116228685334986547320053798028799833920740940115107372631529652567009057048540447064087482464786372999140967311472891288811816116675694019255857206445130981965995851326320292615637190280200552347680131930564198239840424735085657760574337415826881269773051246406482015670407479427971247627 + 43261503997482822927354102954103224600610028567994671216449906044795600617287092428772161187394375144871951545888073613954037852564512971778323398568107467013996480258025726076449984719240410205358385835869647485743161788059731128097759642300321909861321582795004849833985872154749945682328197021360521753067 - 665457753462978321958066826133699345746877456158588620987637303190348021782228758129424552337789919840915809196362559635925074949969247448712224096416225490789807892698469361515538348896789400348306427502466976131467900408842165776492299599591866647501587145010110759124967847959274247283855576734021311255 + 11402996270831833056473333336195335217533292594932562589196171486037167068173623799188025017024507830243824157572678705890902882684126083466348423106251087313356213063112549802638788736744323372287146095539294801646431234807726481010426239145849808815012719431562929467277886683551091656869306841073006745584 - 87529552450044278171665673267168074518421775113755070076521444611934885487531844560650922788448839723986150001942529112077708402321635785197160575103073847689711454353305862439342464700271469704892185123982614298336173720945839998932284887028635203441153300114916201733371937265080280298178707023929366577144 + 26359053607170210363454332277816533081802270843974401786370944902714235985807127990902784181549947368166552433849434105756951336341606274643676940549651205519256275699400078597279077240964454669109967466430598307202660808744954008500655743241990054061626360796889932689259393139269437576357248455405931765898 - 46733134918332451822552461854768825469343265193931530101433280709527275715312590197162014516313880636995837687605499173972701076546820711699154326458999534818187481927255346245276546799162148010363338346620923542716944756976539233240344520945377392843314813462014157492564247997153200806905918815307212595200 + 96693544075252471440932077842431572501195898457811067386994861095427855669870802109848762460206346686847556538757853565233857968422390425651657283661522144817184992209175488341051755531709624434742513168671292004331587200183163525462581462555928693466050355263305703674435155547132637482234553751327383571765 - 12013709506346771852456177841053755601665741539562110091026384367294360537639778209075406205367160747736832561115008651566012049235766050442587021489952341183905561440090994775681745848616571811926564632064730679821253191531882600101381383971345689823272231552532266937458794232494271070442345355001359312572 + 60566385978298246362721837533290129745446948089070160766818814734860833213962587104742793842540758569841433582292214730604065074621132276996095320298525059682890761847683618695862394340972779068355346375751349935143637077344456944663878189923046693393543835521693948149200806501971117330064969905734155294177 - 34238996215210005673344992798622722522666913078442948193692709132286641592176947669015425539971581021871048377514923213443736740730506734786714747186703971537962660411201620756192890401314069347973609755132641866318018348179059884667992269253371972872850660369921415186688033221185169189546660422117754594687 + 17650049001047146826779927584533684191702018291615678330484244326749254365968410042018677125780745220023233964358728232947388463260321283616174826660873919708461559291622733589929816458292173934427315960906738236172663032959945552851357495410908059528726082063633983777569339270390459183344415820689796622996 - 70701289571536034505801552101766551157603637727319266012843079614112040967312277536130829722546500858617347890055441421374083266267321224231143599611417475916435970971049236340049754006261198694129562167759298477179694324773038550281271729056432913160625017605344086304416115979734180077456811896749721596052 + 94258919315510200669888561882313471797171047875523457445876765612391756166498289389093834651721098474511286465077494611763798413493236132750720844143274780422227502109237242105314067663827853292353627399196772901165764173670709400169601661654757178802194277645807561940879382633043336389731405156482875183050 - 50863697030073298733047607127396119023981100928545980598284157265072623857852289488246574201586953453820278646511521621037397743649271728577924818919827320673688332267392767860934572270631871355899663858316347956042312720476642459693883050648195789347630752166209094573931739290220063151503122252538382724849 + 81200044176264144068840451699319115897828985771860829791180035039846499846321778629497296834271518773925929718351307333633598296794782912459391670886112594505194395057592406478095599749307715551975159997433091300129145979385671904373989234748366147066364481989424143883907221407512297092483264089387098868171 - 88233092790171925307800819173305883091086435485076482146451117747744223815427840845940230430532749085835875160052759856167595057651183816668457030318440853329655350638199367531525005544390688410665409004643070687049953762146060828686525312598479691959856022057136638298642742832263775364257770929572822722286 + 25339194664193546979180718239644835459754771499336665710754293368930895591140475815612525630473309186004745247448658642603371688246814817780823666584747690512308474363048362085579375549987488941791035310583526812246571702975524642845811573551255281280133006363797457608777115702210145616204012131170055542344 - 20184259913213495031798491142252332760244638612666711744243868210182512105548371052223551606590888964166483590503734468457528381586171417923793589503442357186901875654743449889269167246060124761202000215963980853684312316212537419636288268480351261161273258098032552093928821051705628969362153071398853906503 + 41300523741053492629150434661625999746560913490690418429532902983897211778681016857047588024335047889162640824774424393416316936418022622709001119603404403990086859345450717837579752435957160590017064313335886904293753255608764520419416804899749175080773534997313037378420492265963766649736709262064589714409 - 69672732770109565573907729447446493763627189163481302906102808544915612747650358807583059347235092783897369685509361069535378710152591806590797562906591778983830882737505423973278003706867627240778518331523150949098959828365891152390572317437528382751121397890032903718698336991709522586569399861629652549297 + 3584515281141995569337255965436531695218123945218129584570499539528522665718837302347199724240561496793575144706704600266391369572626191496352665252924623915913234081400357111360821549698503926323191727150012005014359853222778338281898790505843398409686500145947057255586971503933173939069904685357342613306 - 23670196265160624947999169825087657430137286570066023620883321217793936983380889801784331346265490280975373355471713777299395352380314855078665225902611706323824457313746661412271695660211488909083821397447176882861454357619826883302184275598218846797861075888380811309625616207819088428276520369615853266868 + 20090969453467919404122390473356385630380330357311463845930876142809500717881724204262199412405587739654414770878564486085221177446522225635161899655571150943597384470379865883810431654152424227009019453340009046775141634086806272846924558522718506423614855558152558722046517697476292632173486567111392412098 - 85303266658324976455164516022007243890303808654748830878294469179152517345883905298310033221106800519384158052623054029043059135101638448825116730258282728096918672540655914196206764311914948589233530462829380642912189878285275672050910955052321564802571009338932064789362977800672849035696485787851386554083 + 57217422500964513331954980096008791231817222929476508599504136961337093550097404314202176182728643437906872846039617199564464749452811742325038235097362882947400254238049138673536789043612130306114621547654311670178769385280738238139932144933734357202407929206846032651661075216504909236544097334487840779226 - 84796394576424542413729348436703721036214167053071723433322831222039957379970758058518269556965319319986007987462741279902064888673827118002154927844697639139055212481814632825855504924282415544390162223409402504016492398974578883550814121912672790432260121978324424788619352683919259950804998646876782479352 + 13084308931052847600778250772715981080177184926668076570169061505335070284679848517089829161533895158116519163545683492109094242825354902150896290040810813230488399862043395340349178438589910733390539081533184521436805552259099194751928643309984880195429076212675163833615433490252456213849652613987785053574 - 23616774294167275764647430758317451023245466185550945532784149905259093867930231522181654116468800134882517133931250881081763606833152562122728354373859869768336188692596226580742005487449590032024257601488560665647183935366249364771345129751818726774896463595116882382130706081828810416481815656801293850540 + 40227090235273238118661097675501312033794692279156977945846758938370670316810689171305096463582979757439891746245006633492183962214328010387297579060458308829128671771437227592177190984203857495581717094227742441429000413938310568839635310000082339083840038283234892331990948579164269138059808815646315420671 - 43916849052270350847038558919951665010406087736387840118622629011434610934374611562680888662269831255905902472055380953693253871521960168728180960237456558725526686756933229331418554444582502143902921635825500623301591219251482239350287164952172384621226293304748605598460439681928237109494818626826251176427 + 21988466266196270578296365771698908030511716053291987506174402585748597092689754062528587667943320056787564869598109053863894456090570047755034757366827730962801169891307021694732062603574742503884388826060431930548366128019694755455839430609091267609521267289354526936307819042749017859537157058754962077335 - 9368999096796726498691530612091162854589713740628130275556581685818761383699189842084457551228306229454470306942790235115381212721607106877934541876468844996182948597186993703289358865781340455993925286966759266480650025333894168086829276400328352051488226716716157118927177866124656000487550684188153880902 + 89520120916193296805113071385337961513002436095676128973353460440128435404457739020924019430622587357948821488748246088898295934524908584068851435286217212830415169528212807010850982914171808128230251728361752889314477679269449337819137623488248691840196251403818401540801459183671089622934871766895094821065 - 6887526574030259126024913722215263145181631713489492377309359198805113616788189017758145837849774368159782668364727902571107907014225408099708503370076876697954430801538554765497788966242422677254927413622423228872864441747656081361055581228658275166501065107591279257187204970172958178725990268230995305286 + 5830647467433894114922965984239346925937071864097086633303281990246038982706584154333397373146031212318761749960398286250679370099713036360387130990445154978019868703158805705925467200976280146445815379251747003309206282688860460402805985660537073265255267932986882072072823449223069676194198004834390571792 - 90786202798865243325192491837884422679654157508048309818545353502817898646503562575644564593092963759174158824974539981797729061139363158661506644136669725222274521375756670943678074697345462386175206873247638506057935773747921854282423480951307379388031376891828987660423748900399518762097339027587666985111 + 37869639613896612053242238986560657772065126476359279330051340595148339032651527914692132650840742092755237509638386204840232619206255361281482452323265722997198920496587338402000028906704744458123297592907504340930575372063629908035891438333412245442273783415540269508954509663411428495235313989821573215712 - 45907139005242770658750347453123540315324737298330603271730335734026559487308352947819768850942557673095363050701053454589466768996885521746954560882387817819371815745859770014909633165847187067736081253828862185388670040800213330572544828859023342030905801149155194083141245549834491234436191364856725800870 + 61066736467344505727254434297107922441817606556492617567498347353134524506496560572011332253284109555828484806554899080057140688769070402883073819456942859750783841139834030683427372387136975303353618973278676684115368090301365810722734390009729746399473326395090143135905301951964598117980090793693975431140 - 74862712438940341391062729169880372804073347434493020180387962928647067240812503202681503807901122363679632999315638690723715585121233876375989780699457185065014490823087070666473443171181910904467014473131553818977406868855491854537919927217363492783591772636012535278070523727565658912903473019463167021437 + 73182148380549623984358439030820830718300926178635938834758803262176443081313613883822000216795974262590432065631606380547981193333502156502786523947163411754354957489568066351078556540668316657944113007725640894825135318254342802166664845037798239866834356509377681148107448671259313703199775793654842304362 - 16861494762481731393576446363981015666956561065806396907041576810801692286312403186519979527021520232294250044311394513768181186205923109392629139818447558289687304746884145313174923486680778884344892807086973051578344337317279233924903381040670112416065857953450094647077985029159484220645240446816515323275 + 39795340678038286568651669578659579301310056725619859124127430112888692465169476106380944591126976064024660327140814514895715727682252076385597009074981460189934927312468026066935983603907528121922572159694423393634690091508842134650342912626123672390099613821421316799525009680399842565273259242993386381850 - 71718097705939183936173398020212141859209059182303458921163158788703281151652713816325797184227108927136592324935489544131261965248699318570977917413228085466668556959512162096761051537933806230797518863633060807472690998667737874939282238057581159644193739651472476027965797158233817810024248472736412487030 + 79003878229605523425366684974212389013267207623724202031437030510601042349911933135962843729136571247756675857187230324841466891818894384217005223865055163879891901381899772040456423152014801299634924999338637013322575410310985723052595815990428893742255504511636027138919484490359404573190047011904866062387 - 78514820501846800750141281153173892001011587692826714038000932858772778559170458289003961777247337179937462362926604914978202105659759768215574865501241990106320926438625978213740963914252662267302946307528987652608915361848107054570879605801218191178622756707182567328840248692539433038977399875382493506845 + 19783920845806808135094225674035498483264004244734106127526560301099239498624800609385100913025652086573576377748132452595986998081621052464735521621134022009281344495242804021686468869088564374604042941489366982371149381207435116197017892957654984432452583884728968574466327824855459552205846587631657841350 - 9276186047531389200565502752558090046462596134925557171151054393867960770500802490459574125030504680254696384146608658619218084369561636744051821982501422935216642611828879333641958106811441908074572229022049638499972014170828490876530956719235149863392906235629286693817590893325449241972140345489514700746 + 8958467346544092935724174910692776655289809462241077898358897692217843206677864136919261300734081551974498849748693105960639660883706487532423264269474055527880800398926754798390837526535237839824672754370624554288553158556141786283055001199564213687498788019412604672369005427761893033789190883556804752322 - 62114054418180345888654853511453628038127632394870753592190341861211478716585601691498167407149865811421854785665780497191835381779014379326633643281782948330423801335658266298919492833413033682201824075076002356260353039812744041751828371619428669909244959299991653758413584848277263042991939957476333623838 + 39543715779571450237728793932964218848088590023060900315853574070248436879990827825694808872489002369894884087816671813117124155010750368918159908493842108316439085787469164674779700452512175157756672074435616722939196409495821619997607486275896569363380815674851196098748203103174021221502910395678244076868 - 36996356366933261471757474458454642576013535147695333450538934129447837353348159516148911077864083876943696079126236600757851741370021315076104549330572850487835194618880857596552874325421062537328152928603012714595527711422163823708132521434858022750882990617144882095357647453873601218156526078200885440576 + 85406627365695207032642728687305602145039436786515281103251891322487241930091847417407556049145743835097165895235799095595294843556790827009927835854766982612470425050992546589983469323514777696099921614760078085913493795066408189834664455176321459025331075556531601654896057332319670354995934521604820186863 - 35474667562374970636469338483949819381598248687726889659705371349617535414039688381803457379089659936970505055555159558911289566024033336092845863072370408653808751103139188427793624910572550558696442789490586641095584705633021126216623563995996179668619445675657885397327498388938901544013637149921015319994 + 77050762692328172558451160063944205755149316818986826314265110356879838279660811765179849697056365304743180077910968267625848610919987126598666692760801425365059960503014785645084147592689816037958938237397324261550093338718400709699005691202633845476251584728746255340805576262292256111976201128205077316868 - 40205604502211155622177776415604168845092345265363311670684684365042995270203368190838555994825332648531663345137097139055118594505801105832781254549012597161895703402494046128362291748205526840441976837379234248647321955582313618343709302146158701756426501799569792609338466973396572121639456732381602125391 + 32877704486080051435543765129862245265036616035041136540859434366584951137497418155024658808336190085699765202462292002743983358023376349174993858274608325619406776655302278107651701439893480482579354390553573367450169325741962709863282673721911055355642256594486146669873686201225310144290157034744758539273 - 39470190120430232879097805958271657168996971614017856055399722186278832153094912215441140540580818620127299103282846565034506888843771296500548199366110610689539562119001611140909295138521797909080383507911795843590860442792467575624677101515574356398911117611529312741134763244077770042684575386177793213440 + 83874133817297694843139673561037406157773513813954596648100659485132547213242114709650166512934983070249026318116033961199983147196219165416137348397200185129159223686362202144638690270328368526009939942757248763741328563587015084727923321793699356114834158544519464808933692273491456537525760086302100116654 - 67294791522037614298777628495706890884055876288715513943252770451668862536271420414843206990843257381394218473983279484523164281574098825154408697230540769856119237573988350985971720771244102679940167927852443032413891286376861570535970074635349386134207083793622732232848627027136461106581470503119728111060 + 17436192052976721936688075999202712422601943989341462714229018713769564441822825009575705027265674971219007609035324162560101751024969152907870342270417538429749790595551835132461511953454246757684617427829651030687654319152171010662847599324127471466321620591474429407871083053180530598964169967719948838298 - 65112856409705376447879589016418324386222508615208976196623771834819345605644940998162927906152958245018985555005003333956014119394638108669323200877656400623802397871568700895951386101114169823432370753434713213600462382913862245820375418803676020007771297946594332356459302486520260588047557680354333856124 + 82098446255692563850225336685451202353355883341302860947559836475427009031365939152849527318090023482017883249965910972796491344452948334012923657222434166192394548059356687101487940823309744705889830576902168518286062926306822280140164473961043932034032045297339836769682079993576941830248021668241083951747 - 22225621149469427167143522590441907638451161812079202129823552203973004877283814029163060922373004232923846312683647690645254655380005162914952968515420093772429940352675551083936142566929770714699874764766786788246969509155338212980171531176064437959973390827142448487122482959396448317385938881498134612697 + 38379118396831830799752886112008362625628986571139042525241254972495939307391790351271071136439839866169152779401572065032106025465254347857031493553703992805561789837592267307901022342767681559645136751316390267766920035889402260338894303878391078709316720663754739131499759152152459191430871620949388368758 - 42936425140928274141630691796462930917499300729065315255228396763291531226802651156304296638705959969783478212051762953465445664470589418887836846032005717017304800217780592931156154164374799545125261471751145122164850656638213095907957471859957455289481959992710100105808588362092812305819734578549612957130 + 66337505651846779052596725756255483915812129718127735477375525147857148507923121774214722130494106493321503310714446952413098269825977733449213128764762410001427124578347188720813052947128349133894493413594616627317926220478220768980540994600752695226594037271705236922080241681457786411097946780250195378698 - 3789873568162012345137664722249935366121726491751407090473319964311034209919349184606705830687292893325666450313078654783875661127123773601094637689966968399689943869882601758523070782123301224103173756517514633211877191445278619824987183081431792984326465357004957321093729556389788539757857292387167767527 + 67064877063169266563653744824967019572535770266124662010700970500457615482994312933170635815991684192151600273881746395090049436756336445912211467294982740636842875048817162317314085883861429373419160780339360946218220208936373450330861945535233022490480781817734555275199307470352640610512997509808407032960 - 18181162042165840859358544068083384139490654811872416119173177906130130492299230719930999765204784932847107541778741910967119982779061453589176048342103131595428587724771284384320784256827664517797775265818500955903871650142617662396112195758731073698437952003199186801128911818311564903152910530320703706068 + 85545935687863553548641838517081193360398842132078493680762125918252644618425982286405871358737520245318027198045321108232363040257240553322055631641600238372415796892645582989207700866040938769602241173680051595686757241084111476900297830880831336836224680032606224002321119455962807301034604469906447202672 - 40309060869128243458783473796447229484372078442203848514395048391112265393595954505765016952825874859855051157873330354005290949256367539656739141773371107334758762625082105590550743944275577662296509552999433331156777018635812428572525918615424485367573673225731548239814075953647568936029864224037858823689 + 9905169045003028218061327564726634714173321814684411683163178397002983252224078514611603481232058509517230352689418952001881047217674985131057740812367119756890865641818579963066409567987512807083376818926123948665313969847736981484469224104643527550323892355172109219021887786719598545593956832434519741145 - 73289404862745886286447172893442243102793327449558037167172703318501322208375440306863533041408777951144111687108821112008378158449892288017925377743605933235996600365219660246908352877873056410168946422535974723771051977168412647548510428603719781305338067217113423533587949810357459813026122008895188696152 + 86485430179543666785212724745110777746215003485866978444039717852339484866698559916416540651595442829553519191989920746988895566208437128693539244667352718343819228130772456995142430929048634117914096482849030848717558209273609356582309621443638414382314754243313138364672811387855656448723554363172225192430 - 80235971462673911301545685057667105926129492405417849229758466298978811639586641255774574962611745623306163289159330653081849211520116231959418524604695567607023044339619290999722996505742790402227154686209157737905389278278573549158210044348603031961532048800791654975078820843934672746239257981604847205391 + 71971138151385014458713842769848568203694245456704015067986193203238269849185002393843053298435883657205118929548135276469806040282804802625855339382128603062503963269401976019966855238067504327464528529976273234022101584047803160395226227064935894779235291531286154695111182646559763745142262268587103086877 - 42295188574234621979563799610494192587680661104600398088716313122178205413805343353431700845143543443586169738917236527958046087938314773562788570188023884517427675621834215174920701257798202976003582644320312958005631541589194335692516113708755464952532539616429244391057471767614567680928922233961246762082 + 40977945807548060290623814385060776932004865682050764553616869185171809295155942138782255320871035553247855230097152600404631650765079675900331800293215106364531507238880404626337520981093139768773669724547139321861225355695673789611173894500919026045804024157344579743737317956493339914515020346532696773320 - 23183812362991593058756422708016576275872360796423086806962787257478787949934630818847548304385127060800728082291010805480650350458225291838717730825276439730942613562416560516255532207929022306394774471542099651244780625663565962164628748159012770176568212525282826936636214700139100439899443783108568523066 + 97054919743646020812018091293114060344997941654106789754670378742823949180428827140463852010800361872279801496591648439745871582828307773295153247644571495913051406884262824138547868582717621899691988176592585222382438070057129099423628635968124600539005274852884729049309179040504614260203377022961398246293 - 4520487780712146224034198137360767232316658190678356833543363165481055594664896460683497892694013315075284724690053757347161898791306257597442442476992376910642725561109759594468046919148369590500984828765550082594038800050460761379194625492085519219989410548173153674548434794305940028053501548008394455531 + 71811204310918179962874320284578094882906945704957668978300978373763587133628929200500153372029781563530594496336161322222509487423913878347331172551545943150276211692955943315544811577516651390016612077120530711581324260410354986422403353154192925154809702675400823677909927957735551020148817627904520044113 - 41437625178975638994817188070666873871076166772909690432771276069430050934766966765840058401538773581072952115188263785807417475407620243472721593524544329587148199980311705761955499178358243991872149079047137929594470278884140234236448103884933093863707810382951676490197040377177871139973038628091378618855 + 50581888809575925005089980282567850698968911065600855810515452279271919435140405155832063743996414093275218121176764510896977120212614306305648293098789136431917738769491562217121225244774681479120986715315690196134618777718091502708523094079688161975232942135924723821279638434074743343898986953558639668286 - 73905427275118980061241189205045485337795830038376087184832578163473528687831127995628877306043562576510541487244576408442581838331911998776598657709353126126732495895244913168202941356033192385506515949918912437740253726410434083850595216984397618745764314214020924159895894945098961719455208109115069647229 + 93984565025009846109658649809455328893966163214376240558867756478127341033488195289131880220322031103973181253751253831368831922805672749281105132092523515792798581113720717441146021569456391942069858203179154971467699858891564169319865957853979440172689463433623441195899214393199213167615600511262319019921 - 41702098463282329190927382687279560107717794527958597433601924964094726479207379279349661578685901904992889411963095646026097230087668448325381220762248914332747865522634970546262400776052310529542872026875804520120838877476803734347636103681851941710027800255999208501110011820486749337132628711448491233463 + 99958201602061957118791428507671210123434734492501306913086085542771465947045876942287563989821164897232642885836248426349069809634558630895064202918307724206933910344208434270898661752315798481306969985172746608749740373028748848947961797634563598976845023416624197236984035504219837236311918280528243679689 - 41744323840040391609879486662267268518450701685162883674701760663494212645392370102444595091058220928770380019784262295668396498430606433238996977885086054573232403584609143274037849466832112016730748076152756320112372990283732166066961328446204999362610478917840336234674989707239455740507987409114899292572 + 56906756425291887175152945919886966417006085428177426276831235366871416769184764799717608644573996080747556207685899961377394471936237398014023868294336956428776939774448414257805435030514664249888312424964091797826531544959733285493892320589032848963908849821644311338353490167028189358782402221376380298294 - 65273463246824186047841498819348002378422341004577826960693540334516589182332746579568412153396016675543019033148329619142740064171897130271698783719287249823500526961895914754782900027795220936935953682420074921398563404003514724132632228276607091779714611810025691523768774215299875727726897290080565687964 + 95698036935195230820826421811736973186488896698911985287737042913879606028035640617275140518021637211540141865801745210219363451445622807908523601212569220619605445092263668961341236913144324168257703503255320797017808982822418955444822535310454208627563666850087255960317613582932003626053681388178202490254 - 63970861601905990469228888594605758772509799815307577533058543620630733765479870010849517699792861097166390317890696114966661468942186296749489295742740179587244143749941785834443423979321618578076964554383117407326539591696433996602004639894337499453393340492390003923387413075385694567041679035750533050987 + 36906345366574319077040611480082240979984610841548165233598836693287840508209756726305599979367922376046937430776957025889021599501394212484743187847498164477333347823597812138525028818053759396544776342441037792454615338608342084074896964880108789548747172692836303620767290691755675974440331617287240034808 - 20589921674333082911024075377507634344739161868616109382546398781085067483278545810549669943734896717843860285362428464899928967159057918962127476976908184736062628525359840677701848729974534297205341183893496000975680236265437196536638253437630062853764795140432484518464686331323335743533518400897442785367 + 18172042657336061284582386630623371922856885687608708848422104687183092241703946264329748482807774192784055443145392123868977080327657019988033579597606203112259425462952002521479539255087736974616479755125404193796149620095455620966780112796251774500372021930104454147006367090190546043200655633920466060861 - 21479620527508850685050048675053757265333297248883899719723344315473360278769954867714258778127582934276189721844725220231988955935788855901429436306451374244624353352573919961769148115227767801490818425078230735050266256303515172596098061235489996188502200551944566851609268434460947964590394249489297338383 + 72969247403052650622417012926355358600570004690476646184804812590076968306143096493303468200181867637226419062729503046314831350498391474627876878611252002512569951757027188144187068967820639198108006642646656080767669519907799615507981229096846455012674511378433856492841154727032831229411171333574676666195 - 22305198624427608038773343978273503501058453922509577519145454721230619559024604362611540549835556727207244127969376560996743920559323624017053731657447509319132159914005483464219636040139414856179602722240086471905650995713525667010927663109874963831344342185815443800328562966670325097985317890901105582807 + 10933698290771760348549288902999613519237906283154931485117623077926584838038603118758623647109995822270439823445315712744659730458607097408561163694654579937650331469354050060025963851383117571860450211286898513735435558586666562391278621516275465348600748291148512722965889529792843944913485258787560383454 - 60348084862683674946933550810824379535805327850433930485027075519981836343775050427589693786513392910228882049590917684059464700172518452052202644345518716727475043810483629957668575056966356679840182944618813659745999079411893733278789628547372980839551595021266822108238528459247504188440331831887194712986 + 73593366071606639589441618745872576316245257981295451453266858168696020893910990044123486940968472668404111852240632711320338536980722544272485637778358644651319305474839215552576157098624163220785460050838940449402101390490339957316448687862079103525791946644280295640470748877919974298149978814877393547033 - 14935333725823795521791735252810625272217402719359913358702922008468300311320263007094135279598170168766494362878548893762504099910087047244262150617288836395167231608582611197105639360388460947512721759699190919137557946859880436315557797239893249379151461302531193104245702115442044633264180294736419983151 + 34291199680766648693838952229880747854601956230666011639094850900683686260406401625727546121737660620362673624275574428270050716376976950292303182464137211138708397814536026467059121405096840912489858970983242038854552491779619853068241785570707737223012890348357390803704610158001641256070769064190949630482 - 82268640343611946532455392407585906418885115934751932554481502918658247754669351048645800743163123144190374586649068979598180777265336811935263660976866264771097977721779790504304300649041133657192122423830729824517174953926498550252568418249157309830636585958216231891718915720836711460959270362264356721793 + 32085258175904088791219650128523475662802370203625694588716249328174338920030217454750016240979093416112028734504323714341221458482376226938005257348510788895471288182093423628070245371948924993106284611196882244018417291908543802023173242425052857577895477011484203827855763803541241070250248287683557001321 - 66990883153710736647035574099315653808246505338903713348900297364771329857308641057186850702809510200186423783872953358776816958112467247052635498307953362458995511390682650301019732253903323351269146892207189871401626513671131008624367733124487754644468941803685288170359831038405468932652332413382949210596 + 49881748262533577976775571800324665318552990470496667542259971870836790968025710542519223093641256773482381575157240553573025922570601501199232081512905594745534445390276634676901625361527707303732497491791393422705088436112986376499357579837267820078022471354155128772723805299197218383018761193839115774989 - 80711151728202721457061246725853177780029238676825785661586765293615891096184265845723736430936688221417814995126070215214958741996224609976015193921652204076710013038828061898389281985024459695713272921761051119961674363934086701012789358593592004396497525667218901835280320275250105946541388255105319933819 + 52620180479081168434169172512178434004205020939107835665986082191025105821691274040250928789778540058825343427751529251373937141440378475371379150616246483319862716522011811327136447955766637107626027112672663040261395277947666224038571416334953238665878236149998515814533305530600852352343117530126825149889 - 24460024382193543921958635250450992920416924243178725146374081150108791257309010258809226423872896677829583944174534999810936718523010267049871600939266083817696800657106173906431774785650545009716742002932396154725498441397293944676566802110593471755400209504440128244084752501894974126226412732139194402871 + 82459464492031946806286929280503353751723321608518036066716662152672403836242969394672015102907630441617360942821682740898048861545377304358562282234887114244043235309222369956800499813007006167741009711403410039098945088134631500534674671798955326316194702703008839724237319083237390438462786111527500438742 - 61388793202732571805680312221229788420869772247189839896601292407973837835400345064294018736485114203756318522323336841258422712598998869817230963887733693558451475637960432121166544284177234089633533905820834742005248445151566620571441950440888107063575473465117559007655290348089102012195016619440692278519 + 55136510452570542710241410970837650933895566394354371780358882022163785658598846118839247749568885028609170013465758171261258122060103920192250752227642930065327971656354065286516622141799496596504781938543699523185359243926051234127395216788854374016454576979939120158184462787900817811774138885605388071320 - 30299463845484729003565219948448865634126457905300730521563529713498985291599796476855795413662493456751554984199647085165998705457399816216372540487750165891811055728536747992438664673496957435206270884631492312384606935796178432972810646899230042385507568621761124064297435180256032336472805422416348841630 + 10353977973135577150820897799455801706009172586127687407442005595222486772279193214164125208948125543455968841878614127634474242671815766430960991736624678243791758378147023147992618205286799132108476222662821722318168373694318300953734227094607303650859891056443209528533787276850725261960198621383895481211 - 86081826666035350091324082380880303667099160385154714458334324208406113521517616385428694394483324308303392571693512494915026799952286035760288267857233048864987011535930564884355380845363305550241706771888340398307540584451188836146718724364091476428079932333220015181219229795778467112852616089664216148480 + 48220001351777182076791614608431471513720655929300919160851694202489593977155246766095620225435137034839849928175660180414167225664843132650109373466628104663753056832285291705351176379769472105134597327295288741709918040488933117343128580945324159250988113706577541240885992150100789655755171944566505860953 - 79155609060509208722946020570024747228680640821125926888984184858068809818443486174473664805999167054296281010873624547313092582425195186339525056947392318256166739755625013651537361671837356617239340502407497136734800672922779433070568293860612189781239999457663876719772438967778174855503645553729928884499 + 66096915506403043035081869873657467295043635389302188476850027327841574799135469476779103173133633809514710149285496928960866388966772161062755449501395210638325425049897456698375030218462945671916011435135850554237884758377630865293892831302636325509242023027158429039420887121995276264623535426483362816351 - 31606651145401895163077652272353513312569794658659116973524847526174006775167651078649075626563804995905999526330714695977923522114454560421316385999954969495962052581499127896993360816368258614981590828289408661133840509427819350817735630105762020112027941680317635824870106718919632563057802114018764921295 + 23073126498860605856452479579571168396920621158092448965365292232793555676633738094871449486382880230650049159564401764136855405786502362733070548217914110030981281827666011767513061644908560642818948524718399123924062914161845117563389083285551891668296749633221794000628914680015566960025135684002653603790 - 33521841058097367141241833469331149086914030007411221129120585888059022268167845120757872294531412820665567260864892199150027242608694873926478672373902639707679345044525260152511165819143872993974959859753612629474469793962526272780484163682118908739534825697221219440039676031917333396786220966800593563988 + 83466416335546921285940782794380595632498955848532362124101833546455959020765274887471053546548388790971937989128428166632205697445195430079176946427621577767417061866866734635625210352143336286821950044612348186442190849537505148709496754051560588151334847093483659590946581343866570572527542945209965924498 - 12476392491830016603847794631805485444579535827613972065798585645729099504637450663065971361827241277522824612309115493352843550484163948536377160254965643029277636840536484427962498978267973824080760920116024856722858052221699354408629807747750858097835509631226188996203525446050467173237608527903247582639 + 38266472651708030035078148362330408140716592838021510684285268611214140309776314580608423573787465736268865436280544199986334430887482775901323355140354952104002796807908566693334312916093621009759248065102284893802770604337580360076886109856857158914468616619850233000314890524375900967788896335403026171198 - 6342278374410790888698181013861884973771840209806475374561601569412154533297660723453466895384193985714926759988023744089935108430795936344161688545052014208757937824486013440677954424143747619112079278657589644047793895709274371087771756013782782160091580347519095988446120246719500262878931222793376936703 + 23426939489765924669806095577501231815198109538873237950525700930354150666122701248550202734261097890577885237637626864497353220454738512826542306880417342342946046688765966892305831624183899912392524023064679072712284397552478029024772558257179580263907006934402420792973824174832037138785448168292204954626 - 61230617172379066503842536975123948944572992865424357824134830509573924367023147840774958235957272234730658838916619782406606010901128616082997584276153132968272565332115343591066016306164166819294873320693232540468289677323567570031189658110123481087679631556528092057737744380544255450280912885487829875329 + 93823942320536653066000614795502239465465790549779382643750948433173015329864468721408934535444382660046486414623583619136726363711582234381140902725423757149824227555700798595013464497939918504650250437726037527634415922309557834293412436660120777537805544571846457258918769374277314848064177497340112099441 - 36690399337630720580390806423535811195101537596491768534382559527753129466839050344345893205579177742425130693207405363790805241637746501401243073891173670192148863894873870258037495990082271106274226879597143765867205971046877970920642854451133882097747486361542282149026970956902281677206579777278733214242 + 73830266818738670230024429184683819206079941858933684938701428933940772572225760981766975949400654975098911096765257030811800304923433343645728642386676206215693250518102422549201978035170667114440036485559178059126840824413763386291547431284468554227034671750007415594125073361207727006815369636525210236904 - 74732234795876365086459418036167119775920118065951310846221739149167985110925434815138558953306772554660798709750331818869704915367715572344998663228694910170434833893947513132242521795773999102450175405583060783477290467683392685589915211551121628792193200394659296602505171219510635368752253543415481161309 + 92748408974022713464892680267423727330395291346928993959049635416584114074435436957016073958260678715749598316718581989282734295671855480545043769709796387139335226245625280532158800950655180982615108577239172662449453161519008629222678912773813419794895195880762828363020912533542913257460017883319877948211 - 78923844363050913046094853527930844717943242049416845053461415648138520019399284866146046020691193938466350194491511805325228992419762780562994816982659032987688371586730800491424341063901705278214641726010792125995407284639796951899189683525872504660395363823138406389575829834422311227788989584743654351203 + 13440968298887993940565592553670640829963535881668969321602026586290394756735272565810999195640713260941586554872357209551989721990168487032795597989205408945948490781327841620144015662312059434966290236304464582338781167838375744112467905887825584310685275241253277010334746496198438910146150868486345053303 - 81108706355671191372244538635313067818765299079572560576876609504792221491837336292156100617003624692427917746685336672793183226852293972668411370350547229379737817549040891729247500076040037688097044014978940776691448633283909432061222312968103934769500885402320199064460966235266669800348972995195776538857 + 57113493773898812438094864726624001918717007159679627050685708229983446830001488193496479662475021593116644305229079918293497481296105687876431256698263591131630702473534577909536802742579279252181456348652578318138724128069430507041009201855866622682103267637557395072663924162289685538695029674513797701738 - 68241545436168845669035637423666851470519919449185590076928878981988202960433829835769222601414196770763810863461679075698715076478428326601962585992256959439578582214198990661171888904353424425983674980531896211935680718801858633086354097674772248908398773381267491021006249441315511898094387843724636701547 + 73997094764000571395503743088023947423032925768510297693473648994579519455889308326837758082591337108764064405659558334769716018730082989338003363244044369401257065426661301501133357786279270181290467577350554512530064420278394013923180364317580349999743749352862950723894680890844524498968604807010815592717 - 27107317781554603714601458657064737851139301260023056769699028183609512014952555670607698337956587375918465156218172588672770963446398445276978065691478998182476134198825442116961118403210269960257908463169959321019382931676623565391738202735091583250960924204339254036187635404361608430982646728437118934515 + 67955823323582948117753642446982881881332930305588536969649251022210502062866021983387801068053700799384491893108260198769746890884878809343147763768779652654615204346320813035867920078429203507320771479130022883608244356300382963718001749119960394530282389972614649658276276774982316845680371511965749489689 - 82061430676977449397509618688228957283210782489479445577445061417942428707775839274148068564041617289098059490573178140684525706669109949385670323183344697574727537985658179243587136474250392823733351078872172399883690841943646593222234732775620748552712464091267594907874760889632594558469619768422719393095 + 74111218399535261973999851058395783023224455755417348246755114889056467745295334734219283818480824016266492011344415299351313716455931922317711704399556742086514760158779524419157479067445957139443723877836088518584263011359924426487904644405982926030792023560302518303839155090059050388029044899158642008366 - 39980315422569478092998763341860572206333819948724438319418919411000622726432367031261884689166903812311765079062444169820473236939279431927440622185761421999096556208324786372822663816226443053424392121498985957354496909532487597517900840140757202853668977833434493367510892298430806307115676220868345618839 + 62006593056685463007825791236052046478952397803478361530647423289910560282386826773926941909586875474866749044555540543849184740755856808129276676028542195197945141275147517742044682510065218948296781257120325602036639557982981587457069592454877522895780207945877750823456537365582509894072756750473088691636 - 58915338796417672089303619481246392165623662447699479079227293351918342153374069111948758103880110909947749497290101470897780161680606389449200816796567867094433172936340808735204966982831403153187989192553308876440312982156967870428064609561647697411486913737416230826884973545054861724041255181403945156151 + 59005161271661767440558755956402769732177833381094584868133655532152666676196142183928294584345491794007261826096649849648298069037806684077560878941932761063816468086125228708536791428072911153418189214937924580753531333639594061328431191530082504394594053447707427562597291392942867037556113940915731795476 - 59213913470705052150273110684413895819164254944535707879307181130481716024381585928650150283329878518354189321422652694063080088083714106972273295760534863381436329860091905407378275235739729522050230338420852744770327028936955668525214851394545997343402075890665737729886434715665828983673432756931135289025 + 73688698906546622032648684164976381241323035295353534089117018484040646975558298395333197670342656557700813070669033631508499855382786152410275480887874714801003242967429305474260744292806429346387296618728370125638984742144060469765008282895432575407800393943917381711964668457906972564893779339698608329128 - 28829363002351673802387505342998209558295752985290164203442705081817145985607588417310395105363303816035640734348332615458621592714646388620656744878899403723534351040098661027997469659678205077660554922263772363552781869978865365330431155055568557208170332039313738533663483825588903793104593773723450099586 + 68604899581408193562257132295877330291220687111851538606679273973966794401677264390910482222299736125454501076671378448171138009905020097267232547265773187153508155385993068751281125263267283075311254317473831768409227360851106630005157186077759174376119588564432137829374325852309543943331344344994145017477 - 38292207546184963763355498149852626119524275409872574876419208216383295318028455528084801079415025978422591550377315602356189351009927427713673761775482938472938154996163183534040848629819457625957084109534683248765540936086552526601462441306287128451226361769165992824573071663313201771835711089133032939549 + 35421958570320863471028548866271466127981635132487157952972297676567849561367371512218013971034558906074675042560598582416174442225759362569094985863349432203916362981829481180024209313858455960924234272532682679050448013046689295581681628796143971065790828502374883977623834016656575760004753624388753873950 - 13255123594119975159489955260476008707116194851777416308519310223093121207956252671512495759471028439877969434929846020801692081530253129090006444069563628891591550796441429087389504233046839872342417382037448013385528574149064555050371518555210302267426838146495252970579709932821637188987546038502193234022 + 45200448446263931870242012485263741519889815500242813631423881184135174017771062722830404380735491501173587966932204113814467019588388835628035263470439752756691171846170196665536104589842653692463854924286037435078296738849148428060403104206749183648390674193779700460290182656389959774955425102558054372539 - 84786604443798035327269381251838565365546901038022125572297980303952395962608242314772251943528140387798238732257274009868529805879279796184428362850297043075084189333551609015418916730313413718861178809265565509264000374970242493243531942113590362986589655347182008935726596679968654941730988841849281898001 + 30330314075646826591159289692058617110535431573394518191004391185565380559018183097962657783681641753103692357908326801345167083869553010761728439150059357118774966181651974412358912516660550587166353892764212362977779297028083936769385816795372071403038418034286682753896031886894044996533838237587953633586 - 44366978928663146892704223482165234526004691051739567065642669815314558274474920074203822303483453957240269201671072278858370667855921705697204191535103441974270496581384711051842727361946720151664882503515645035159161310513944943792785260769790540596551977849567184595989784209557384166289895905622822131452 + 81263854056663836576158121896856052239803671901685071681419444606099235320613817545506028660876299818564213220823141537475785587008536014907698536544184784536787284244900665847776381895002476929144374924127687180063155372860136291495175320915738467850741779047871826819590788195638695928570214944593749345782 - 69240036233814009965004938318469073937603352614202987493920332597441423983192660633584857443740006916789652901539515087484117185937671156519988859921287245234896744679230165687654546224906362260891385155041484414383800093373465515376063646347694765212745389098158523275895562524923091609979423256472082362319 + 23676683577778963686436457658634322626779608078990794696240950741919188537971689639693130180787351375298912566430544111179358708067257104315659282971167237460011328098510396224161116698026548240639131424921961748966464449049679399416097784729481485970684386596934526465935994329166587343269600098584390673315 - 71040234183182089984481762597620903132486343751113924645294863928391481600507772557716145970990663724469330319628127940553027008828682240755363495179156200269677937837852968462057240313575779907877648733027594158083962701597381365644103904357028956849518354084327326700052232490711331782802678257688673080002 + 50980257623794776906058536127353042929513473029089975207965118667344741449068411774054230895087213261670089069490749328947163955439974026783074707508862815320924440831866029005578532847575748696708230488559849957929549146389068797309656795716529514454226143750674311394827830620397090394780207634277209788777 - 66443991340518719221201910143886104948253558469788461555685539832193706179445173519325432629827506830225801154652811735769658438647700223087223727833446008124196838270346719061411984646627950278230574931529032743402029947234506234080525163279882223572604006098094713696399089323265605179962251070997334272951 + 40453484993664868974721146597570078062682916849744731743881817030790122660487458799321783157721085975175829245774618572108799172212852398289565955544993144933961872127887430086354197370073331287256614573822725722322505922159332042980817494114807999707215121834732464881427421583558886449624400727653584127049 - 16398048369876836128931403099323085186599631953504881442305542606731903231582578171257440043977893027571822537012016106046856102943713293031225919493907569370196734938876367726587946181982950734745549792291701981473194990599841045336687295671809782301685162300342293430916482526913869891021477413851934212035 + 13510385118182409932992775992766353910977120378241229557817051903062037692545586679104722778367113461679563114484734137658060652540553249510325839775588032581582592948707913504070148483308911463276896136504769723674338601446484219877654107185046571398095679485932837847028607184551447098871446849644349144744 - 61948715309022469313510292119649547852354304789231985551487181260270174869202559696070387281221409084949761424536544119990009828904772333691483766575627234557442862727259856497486348766083194839252429311619758094052663399005139215130714887968854527534222992285953486721983051333688494986334395251155322495335 + 38008718655926838571330360157436408958160500331194892305265455272387144889551598200272121847250096547950937906876173528488890100088762461699229273460245161080283752547443159725312127990530575795495707929712334316441350726189650726112986640587972679379087228258497656320773798698098400117098376905514419301558 - 52908225374872307594290100180149782989364285919983306843028090986453041997525464736843134597667414831268151561461019371895542195059452702851944778681923846136737965648131978706619449900110169879152507636304766522937032818790010125874146706769626086570558409338146126593521016259457979155755994058201592714816 + 89555425815170353866803494028832655526955974319586854970834459746022685205743972570132786567946341437021877484502708903427415892350377940770950660024293694454227158973212562330758883811718465239712926199145461106979245686699522829982756358527909468653401675906766780635276412210683876941844860027958612976488 - 1432815735138128457451417740456676736636984976853513563543502403966876408815565494104263781289444321491527984459305603163320147576440066898500630760758601687990209876788247657389875941866364144672127343762992493584320589969615861631916710109691569502955650591707353839324767315914721074711002270261604344734 + 15756453603553850228450558537146390874915622617506430156675932458698331372674201993252105635250400087668788727081846663201633056950303025549381408726534163949451488560932059983796405089817285302878492702376022679294203162904401563482979645693350997328822105635105390309847060246742088026443664940424223693430 - 31072394813931732840083028052230440579172525398083456166857257644819470412448623014900081680205835010940728828293282168623009256694808794669090662477025869371978882924120368089056868959656331942778621764758274689487733247598971172791072791779840172160120504520233367262341633668960444167207612743976732241351 + 17287495487734199024319475206920224162768224242979931470949084983886467340080790083079705366855454078627043926125982629505229168355938611262735468569436002429206948757719729765688880802929462766938625339983307452259230440128215941989519260586362664282182852468708316407677281585478873153443187163578743828174 - 15261810346858654595578228962231115528194667174703770176529936771343719771005875345887911260657871935676670087178533403450209741888185939030130180411900892571565403353009076967490831840052442657731886252249821186842263132772401986911050235801267971281150602132518918066355512722067496806903460036708680857353 + 57724752771163856025260734459162785774008872286289599369608259940298064008264576110051119797058274865721491725177873373943501743694980648242177493444509390634443744285695904902804997399154148574264673784586779469330785187521789354384192320513422435875967755206901681741156676279451080248357712534411054729094 - 73133311657393667355430029150664632397906681727984867728313472622257033368404714500772513011374048109755505376137042841802361736145781064190838543229793924268668859322325227244102899458818740310452592315141300628159819301184358888891923082899885056126735327860966362366140294928835837083155543086053293156399 + 84819541634669912843638571264657976240601968633333633678371369789619242418496835160740696200596435661568810450410357050066139410863150015378696329991412717435912072493082571495120560103351423669320116776310234545883114263312119350959933828196319744362057691426891475612443104895095281492912381742388465990028 - 58636507738197750692510990913952200426370443265945809921321688096276269510824835222905973382372381421727248286806047843627625802102654042535523302813913650553864837258374575481400612489352181835676012705062304449323168135685322683446429697583921542241443194632065686657901235169524945118943331611835542126469 + 54545565976669077273296584459907924453039817676469564605599114656714368105901725439907695237505347472389528423078812957563150593030104788571002585961031969548193048048870304539788137489348950071964269418834338856874302479388198045362949063981737845728312162446203918024964839497425022450125218800541873116315 - 45324435296620060826561171306531872966372905398503611567061313005410594543589776117799807191688868633602280032760243849324341786399417646008446958924047237664461308334017442827688958523295679790500847010390710344653894094720596883607808904039916103780662129693055909104597540312237777612961458935609785496912 + 60381163866337596003406087770096331469524133614857955582830429700349974405120958084201619874567476888885722745267922761422508502942469230087520881451783823682838734014479445032775941584764626090239338757860842848961491090214179145846124737310997205254879414042322123564725909402605777883018727826134461484030 - 1124993673920257340156032143561836934100257905730820287340660949370838326530810692418450767035842589008338222030239879752490864038936803977617687296298438385676595140097937048818852018947870484168791981854668277813161137771848303542892583871524493762132501407362849945409634499370533056056180716838676500239 + 33450258124759827129506220470779990302456152214046894190441269964325884772626148454663356011249919142580917322751013520191443876577600170093435067061965780961824365176039472555639200053844140863028435689377205862188884560175114167048277986127229422210898974799988369521936758685993441590385372368769561726446 - 32721811575324073474689467274591953899337514489826493077353767906572909956301210065572858806930599024402572058462786188042880822198039635350569898757364228379082599309399636354682311052082556213883629864501466530635944405892000999388340927315181266599967798564379840635227980756620474608029079627640182657136 + 48659480690345384839351847540856255853303166804634164091675634927950587319592356973359815502651852714315296508317019112755266773511787445426193156222560963482280070559620982594441738631178623211177294928535321721291086654357777252899434962607772418090211637800986740732706128726024378726001294212798317938094 - 60524988380247205160591848547341024472052540108811808203869710912192344798007764838008070580249450736646859999782620502083366779243586325743447414866726773868614489659968508209491346165116962591157320698130129085420722768067437568363509441318349930817426169458455366799297371373363975456817884942871988293525 + 53427621544225762404945649989265259861827443760274926566789912593178718494415945809189279880490263932753149234797964904807135013514173484102190841943493870443119237355232652214371189588300892737934557515498732697198349742475613030080647196605286736940389784042538122924848838230111805026588933825437032326555 - 47914865297902126092970000193212731763168804736997456213447179688947611769991304816399850525039001886404947731501172869756444918001877519853934264230131705332185804378793115099752902325350492725097920955037345203742368289847994850969857832906183829547510868957970308968334920279393129173454448761610841501053 + 1754577145127258367195692712573458619262347072171341407144197960559012312314250618883835433692941606104043599816755002974312899842113277077507775477341439216624261341003931694350950793586416117500843862952823912704219411237921303668232083265735420808362436350488749738120004840706179274977984668155162509762 - 2582588756541517775251377137162785967552702044712297447870768274589055565219263490461604430454318894651698716483011628323680241330214138072206027801346188788567052280600034742425307357034958483384152433480617370924408607603880448069993100177279837862770331696151838026879883046371662181510656615198696166586 + 29006034414605917753396993289752759682901806260399962905767941032926218646290520384559073877568540642075989396714872560315820661762700663093471722440474884575778529867261196623169439501008890772936563772333613917741079058981561880313228324069059351504945730729130346472648107899507732517898458825059588656890 - 26402751970843946198826414427600596452062939731662073118961917226041329349459999434374052119032579874547222522253903323356548774871560320785772570163127791956889246236267956358253477578319707801512855911461646720935673286741900635059510308300080790591242080603278132926247860998656562668400223904154133301057 + 58207882544079823673501460155663136263915510658279860446907059532486614658312087446213584590014703368083814263741436766159504811314884572891801962816180566109207512915504127170254340510713826700665961875203961822165081982556811797905043464526007994935824223254754437048821914557476943777986047646672034217840 - 82460358654789950880830824273439428244472194972702823493970498713383116224227636369693193593315338787733800948414637388374658235570390014740324250138937638386035934573192636335845192074954573186933356176504120220842147274431777029075578219445207175921379663357364818999096332248755841469572151389219159345989 + 26497906272962660073380152329016119343380607032391353347721109675516402547291005865194511595225194582890293434889526666579405059610006858980291609232134219465703507863005324501681493425969530173518282619178754929018206138443084194850157374049511237843250592498879044571744970675611428022348520001092513750334 - 63820550927757789571718442438473133664068026750310507501034231612335006913751452510332121834021672212052220152728227879820980865701017904416703769044265625634030354382867608584355461341280886596288520095865975264533776652032642020011240652288262738029704669743656779202210188268571237092513466415801140322855 + 39874364250830282949210989456404371986548259778009478866560806048663939553282604755452309263087499936654082367376302210293058587125117929629543148539462203264747376299947847892560262699868731347465496453176663656022683421203223067485114489453912880496046833152908841438280300760583424868731858937354296527751 - 20338566389586008283863277834591595288137913999283306547030317546081741963988306736552570597874385842637338016880901919470956429343703274134496918494706103815988201233782652965337333825393251095346941564134881199974301612928664994966003251671713987851982257886918194898598181669546431263669657591445200040770 + 16826424600603191479570416103851936067812901087922637213186419837435955329508541409064399427421635879054664622760378294039364383169763182155973417948048590679804007496698772122472281946939236488979445252274178573824885926812843867379363759353968766534812802992023536369362239408759584551281258100702045293934 - 24193698716504379197251960586172762741914444741375365269242567099479141373908432173565138035932620402155109652764796533296532747118129720120348828011766053358492458431638444442033741243983909734213346519640126078875080129421051441097940667243057690617034138724383803262356458967306196589383934562046094623055 + 52397541998777364493946146761333859173547838272823879194370770642631571446440260813933176399322146771918456599637794849035457661937020894169362542567734814708959104383381962489136776587342716447631446975395501308333258598525049668526904591079646531143597350042496900369948686104575891290126016156696061264714 - 69491731018856181420309595518753711580540960615704830003753573483918988972729084682732649426516364423243233259576752708641215669847207204197155659393957835079575981289652343359148249417738965140033176444334203132629442262009609571496350428678443664073989225914989042769712999546280527933419334473188852958107 + 36398525097762690966595089257691158164149592592800697927363774690650020884771949221553097093338331085396651885796095203279170881697086503926314420574871607489717220825681792706407947841627463129374844668470486643803121455778442997473355885411380656105910440623124639493450962054684196004900952946154118252204 - 7127627652861325422336080475597923023205520899979725263262343612606998343015061635089458685056979284865382077776073796343255543698806218055435767913304607935166129703418243983302011895185089637036986913970566841747677429062211819793339364716654376610414703402798641935660632742156696430581127905660489013811 + 73181601638325693986405453984632154621228982948630274619297393107154848161532109781969795395068169143000434314108741530319282585225106602334988765347859831682697374896751264238335623708410507591931342604676428217181735354453672820611234438916948427581215027168911913660786798249755043517525320687184681593244 - 17698062121321767315336850796547821064898614793996025794973901207050378634601402664642952534550654187600900044170522743626346905728651402036226326744905259078901589641539624933088231478516393602516006640688876250418198784684380021652289160049798511615064328156072162312434172929162882814863619302226498986642 + 58382482249356297729147797489724271624511271911886705164416089557696049972643408868235042300930232405277089012550414482891683711453425339863079725935354402771154458911362188203544195798223490950850755268921322661047219330888621154177133566446853826973712175749290173478368487010699935786206995200945315512065 - 87620594525997878015454083196970727216562916393785474935217541231350845059355063224810051113755869260918781882392731724982435805034282605907889556053013564692309789168494452737400722935497745518061934058895280223427200638152764439569326740665201699394038414577146763764010850199789878737916539513700142248274 + 31152030790442314589027317279090743086590186179029655872286169034914511045658356292265482196748060781926773521077864137739498383084680126633500930877184325329903652167609378774787243591713087103222207147371288318891212200454400990377265810801081780347815152183928416725825999722496555459235669683063892492739 - 38850374867619746863562963731297082932827459518124969716799289307162512005554679907551909998628521689121561615312112574842693439789528514367949841499297396544319543029564987103441807408686497902095708110612072252679700953139580339371719527605675735731553919063767529352742145678776433254793441236670261332935 + 21606828890886920636549279981599088380343076080504302726266577260572699829034959759712844434093688877592930975112151126803437349333913330356267459771288334579737525327494435217910734949338641551704731854380115634350014804935099941178965878917788754920495763390007795027863783579981761173319717167852465220497 - 2216801435771536450460392347538064994111908347041393607609726435004315414340398262162789645456031578056692488778230094916447692972668165927711153053159886071130469518179815430887775854636188647958820972497545386020674218739129439414292979219998048801629658604234953799110644045719753258059177801516345255804 + 16117740684482448517399108451392877898422792706650503545129977509530499513165339375917769461497523406848497786812172064243333454696561420730142008317718039655981546515349606421103068780829074467137267617166121328294686352505271247247561782448677140015824567894458336461753325991058862902733120956025130440673 - 40245524590817476388355390991904205640570393871351262682924719611920864948077824628666254791722679436596277972381344492532725523644007317350017955654825051496287712008087754114436930099028796980717434713646011997494422145309651407733849986110096826026782641388842722577336097896267760076010199501168052910324 + 49769989618559355077999961934400692722754788566189915767234559402414149177965042115966823889614782581770574371331778050850931265305431710586256122858429876613324178412521184129287897125354018586771779085094078947063135799731191890466186137962430947851440729590617460173457404150068343221818292415179462098202 - 13415359441333813109996585211954457380267229524891317855964314300888995191284994428505324651855967091709208057281022044381490881437373767305406270958261347840791794841855419821028184429300480256308844864690743692825722500549920610439191771122602886448083708659984884363490699600531817324080665470027121382557 + 9892898841459270355246445892340817726759971807589326596602636886597889995273836156349823902730448091722873921199287191100677461553306335819992918216180915052853510071924526058450134503819158728315183535608253349124324055507261173315974127786908222437618834274471258225119891328457947926570830202998104738178 - 36487937231618946440581662996511882733321744283175315061904594280874361952228344750621996173354362620130243490750428975579507805503174150656999484931763288225631061354135564391847321211337054839286943205126552581548787035124778612039226061406439345959332801856734356682506207869433770871030257627292362986425 + 20078654056600717165256215402516060720495551587964540694682004436089635658412985211912202201588728570094879908950686321222505552006624402175503408377933940644539140131666254936275571161496984949407465246662859194174565026539293329791403647220657395007760642464392251812894180274399972270127503529728072090032 - 10428926283172141456372404563325302991813897349605006902076932825388880596923101392846794068039036365160719251697065435927595147957655041880999886868432802234336427947325365404479679134739804313953982000575016224158364891976063170527898016021797046753341288953042899920904972379495692166347587474195974435643 + 29749172899354566892761712753686341584146612393295683351583375510796692333991530503346935877366755308722104369478861215940229885349560352705489155247224421882723758183165212238406708191626020277443641061114172765625156913260949864360024435938831166535443215636135615963784793380694824559465965679907112731630 - 89013431087608151233382751708157812354341365545834880180877606193180740004910938413440490392972768559821064723063360824397157665081949436787476034585302218073663796390579545391496219828497860900527894910242731688902839535079701761018414954017546876954261996220780619507784464736331512715856487326003445117305 + 33592960485607436171365961839155852340100570939248434785395883098026049108189035589826846990682486821817238463156626315526589273186192376721732455503109751084552893013875266710370680323313800871701299512428333225380872278758899884548305775567370792293385686565549334096063184684226756528557047421750978981711 - 56657861798739262888148758750832208685699872502247360213405945790141859907747482887814177555883032942454097327054014167532033812090452316605313804589543463875147055723033674183321242632820444150882326981189170718169485511573753987117084765088460248043136690594951632999572030064125088857081024425313658280856 + 53236584965725463581362724933366650718608313261712812476669302172230344492946469004978801300186922451998854462359691963351195797961543801994318455165631373161166767993435418081094233078497315776540614267241414652822440069444530648558012984949412589338359084981209113215755233618712953269536463799111695381240 - 26640257049195891514373729100606625923152330043152501470129238935236290874620444115309995833543654174648041046907951647833265080668924858625566205368874749029062262862949918720877133803292627837960922045086995912855777349728039946348863998558533915601136538183706218606769752343801658088712493115598711688108 + 26068445857976645767276522437206665572526258731958943654781250514856797955606971583950538126666375513849699233850275279386254217400147016849358101522749127259704927650344080105005626175005049248375484765997814179360092485450558033736175456766539285264971170095278148481325784991173710068945478954953167010176 - 89315485915756721812720904516790301398916176167321068932570021394345975872413352694178320929826053334220125471270779441245414955948228797267150574764792610446407506275352982263215770242687066489986502348787098723860844635398007134289275847313502681869295373956930038653616847875660965820725707575384769321603 + 82960556902458192658002700465668305141051917613260197552034750042985663610379932462046182023671172511244663906524061419660495120657148799900638940903368751358356532119223359024680799676782796075909950794724275592742802650543475100804361985470890286001685248711181894151094697239516732469629629206978103486328 - 85788983024651375330412425236117256750265726496667620029587149704117319086113599076551769144675917549362177967648298914260877061045422921800050350934346480841265781151685483346491303637260478069174946718457243436189211794248772722015250826482664402502487602090567878932178610029049208519050452119800798590095 + 90611339744204316761096559509717875217969771846989185774842959192338654876965720711145313908340471262271430442265400642330755133956656880902603130310358801821020558138511308142745126431277571117323952097847290871908512544333895702823296401365089449716042674583698480661116306983004097127195427103804585169212 - 72558441806729709159531880600222108306652398787952226348316184551382481431764209245385528602477952232106634438070610545466008388176262062617331498206457443279791819583198953712551299372051870420518867020475059673622504705917575214797292674581517236222388615233377176605699584781594985516736042377231750347103 + 35423933786144116221101077487494000734235149011034999497069983072193524761879134216611760787065300287827370403915176093260078022782611969757091701886192814457924684028364295488520794349853242004421688869923694881143313674721146326604144126822888567260963868216687682958286568988353339709262627090713978716634 - 82066353905179774576826663035615202893157098455153879484683477179224541814192413700028155090258256429721421437440200630717597232318978071315058635325554680093207621096692565501303092895473596516964017573029126219905028164332631343720011660362366117163809539281720992521965164194684874012707450519157392863834 + 83088365241284447763837636130134016627629123341057296900341263398203569897687579794693342184686672155452022047112933908220424178079498333911906769327288040595472348585325736758545693572530088005274982048354436057228226468884839657426008035777313250775263292753164836592633973396192075395467807028730104854089 - 26390406316621784994183711610697291186244370038352488989059964145088549875661111619245442938400762022569001281717548131236032422034848393063934837704803394012423185824627961731620039086296504475678162662679679870907710889722942174081815292159029768003071257529735341577556777256583969706358648387996045920000 + 74909644975673891796205202241745235229254652327698941130271051986834362115329129873257861241714524099181362881041596764758000215507993337690689968937597674133652847987326643829732292406842888852094985011905875428720583487872578017406349225090165624277487883464347967200588434232450765813343371996648316858624 - 80371057000266525375525500202728917959314635378787029142800198194478091209904440925225787131115697021759668692773498131876317814601235866697869967017076806919234238714167788415726924552847057118467045227163014473200180490818970150451467327144714399542238353619001562879311123589010660345475815350865324634005 + 47214513844421608704671014064491861235005949893663617269329436334044373706918659945681191896885361230666336200570942006188470874126351854883049925489144857607575363062786487310931900795047960255077546240858360519264414965275345130301522609560874650654572463896863583373251956994149934795326420245349670578415 - 23043443991327142453263452806063740250430665592385905072100667246517993680316442907115637214163463654535912996258877883881976590714914818126057801564089392157530490569316401525537371433595738484056504668930445604861304550164768793851695620663206040087039790672463657172622542003420786107510881905094402209133 + 81560715334209569302273635267732935308344761563002541448203509037564199169415845229185796564458400530205521920901153889434240413835768906573213787362665364270670589679815028035289044883762528179263535368651423781274963622803178554588727646901711666469917588211521216489778811432670478282740692027774308087635 - 60100765384470328170393502763376738711150248605956946860454075166043397939308664518059784472773037564441153045955339457674421595857118123537225080994759659143947221581018812867023591741302594594109341859575479458169867399344917539952696561800642319103438705394196956850706095518835195760241517908815697763607 + 33812648445188762373358039976430406493350888384782078493435008258356960450293664096185564762355463361837484573789643315237037929230563612428724077369816874441033033069866844312344047071652008016861583196828150713094500969849549435812167641803615324386894399829893261495804763381489367889522994810379619623194 - 21875792644444037547999096302336617003572471984935193334898511088529408875612950395684101615558542453605808892275140384852909604375135631139016854013738087090929666212279071017282606170080694717969555993523452833403775551480948067000417914492012104611173191920666632048199482669746090010250902316083272179919 + 62818993292565219191504242839633314769713998664814631841910339772484340215012988230750916668322600271537837064036943149021430348581894287568349371792549855777298922887186062493299262408398261602302358375838316235616318195426761828963436933016278773728724297488226652264291928176899523606702883337928297519470 - 69221580374817508823834010261393693725905768407719442275279221309270429261502483486209575232162447361848251292729896321417428681300898843854426851076647731221241965021672195226902065810246076006489897263261605825894536509574901066985296566758927266956348938126558882574201163034833933505453932150263671501194 + 63502167361127176320508231307091780421562670197436675131533875685735930579402984538100812450702528125631517151462847828959830107181815131294871091140670424083736791414705802727344627169915302626641941519812829077448151119438321700037185485221981276173672154238625366510075748522773031001043437451776357093035 - 56149108947151870724679239533463063486805175892509858344893726182817359285051538346124908121940736943759079828763311281499249839853565443309984356366816734977856676627750801493020693156323632257369457853852642671764129598322983602020085045625947767905055652314907726009946319248442721871439586734987053410711 + 26615034931618431324478581982624714015191335648535641465943802227639903621813277209932963145076569489355749188385887908966162787009807475549104926354830421401985609810552750538166993265598832227175297637159908766646099463365073971755285742214500542690212134266438459430423013149882690762326819677055311469179 - 55380125268263733891146722496502232061823772703416575190764711033163844741308287762920330918705834431766831064271878747860614415418938101997532543139169727383389035387056852674466828330277784196257070796972930443693535974803213160318821930190955827278802529116098552556317197286108743567075244263831431513341 + 44523772125827694893030938490769512175997490072445382926237851821157901697496734054969265468777002247888921227957700462124155740663283362828432412484412445065623475446415464286234735131706697389356343265911612076739272275696381090096056666925257289137596368720885198762853751542082602256480232532050356486694 - 40725100506085721940511334054415960913419449808756547846495037748044517660824898421514889820194468045945867349524783635291741327883482319765694523715160283216473753351897243111942987360716602761311354894974528180231999762093817172513742706898612399493651127211291341918193030895169460362992213918374917187373 + 70243481497516755269252957864654924260588378045286966012522941740484681378313319072220042143223476635101691590393764702591815891579375586329218519162284805012049714236946940999172003919411004078833858401954533530753617035949601790452685104756360933978567019267863606363768760011848551101594626289400545182134 - 29629645493928548093165808517398690833885220081753851962634719576151155012479273452103024104435369432011425012411523223568216696666289833008613571199299240002724454654344257669396057094398117398765951728121292682836374667108770102464145066229391102433051496358623373218030504926273986017040603923127731650811 + 92743380289728569332863286808894236370464007204251444631498276695594695195015038488360014550849543284271782629804895046652124485277424410297820723982491645155951822940968233594841209008344916304530779174375064569005828210266812443979045985367341959276050132955540491784145349764789503640179766331197647608970 - 31189054850147300385131742598346544919453991032534321590936283233955891934534445454793205859172809599496278452587107959806875225314674117777266838172308569472224520930579102383299184288721960373634454788552128619894326289949062212956838620503891962068601247979007938925333090962451709106403318563479202809373 + 93657210917702894324915176962040866661508895601427917073813932412502837257208739962719906213400856809530770754037443203471641297581282164722406837931071677970791952141272709621970145473454827590066345692165527066327671503994882700251797750412402662562168703732450802978858939394009397988871597068206443308350 - 13151291071199339090695741518270753225186910407326714405573839315403396406333032242719388957429440818209676632796111404934678987688339557413352820486908680509032853997410770051942653008608597874787355862366731677212141766081357441645196008406827394979683496386018029928330821455879715586289428926511023666581 + 90970009377576429181644532099355027592717753115377194959767024234486175637083499339271881192845319815861976431990334103261564134350329073388985266617098330214786327472369161800126961979780448983863312333044214486745837434161514727900444245752687761353434634240233485603078783343735791185867591736298053787105 - 82103874557165605885709122142183192866418280845306319540525900699414432323902549204102155265804344097662274195776701032296181638581845491549004440399793719947753855586988998818321825268352136312118000766861604555462864445598654720069826238177252266547988497105667445824000602098131531508561219067635876203721 + 84550318526386206847937816379004903869672215466169796067646137842606282459045706503569089851584359386713429185142320783299313825987961583710026480358706792639751213927729082815269987079898474357995550310738041871622384813819699983832340326898988349716153464127366741087063078263436369076233774350634188074176 - 80244066089045578678607679578917934608128624310272690439884876783257665890848445955280029197058721659398522491484136298839440944937258191909140416959296000505524765451363236359370301918055965831843946912980495316331889591766662884301781514447014538650045681062463717559147502049859240607455141325959426525081 + 81700309296936865893444004400489882727147024224635686322943469766587117606160576416660298814925051738326006913021809912024361129738869907914938659496503047842659524542217440748344195106856808439647200304194465901153428039298021125907244416196411224602184087093986406817866215839415927479909272440680034584696 - 37646707771143617441225205447307991841408821043350242678929189086832282556365627591050712427002828813220863929702804273119778175405633702771628411514019495175531836740386000315692791181248327384372621359832240583426235494862553037876112606408441991869034017483114715033901683235226045036375463090046725344641 + 60504635512747011585602243633252888352785959494939422417717415423196675588310815008800936491124202385086696179386298806712087886156122440100914474474602699599101201675764591397165231625642277867894019334130863809110127290680132753584800227142442885654945018336599932605146027304549405827524645343723388452116 - 36827195527179085275503013915392082646352850927167949237757216035752639561111172587907888853401558707169362259398341129414044500801097306078530141079372399055088425823402770211757203292548752171862702063228085655273936190489083632501347302554478049912564978025137496252113362763832915954502493503545088503308 + 5954009290625740144953373314281071371716092466088403496530267089070545904034199023874679389814057926737703866116294420003704828899354307306236563124009553587127087747487925684102127982213245604379162396081733284286080877762766701917471746554816677184710866344504817842366738314832112329510232338762026712483 - 28017477570152836018102032367250301647055890703829391940185969090867160127241221261278353764026373059313045525391385323705870376023320152542098095911255192317447757242708368230279787445413963751724877198044991885824142515994547070977050822918895139306979785195451824761772693005840375418044933131979599273577 + 48884919903374105292346649849463322491085272483147421021218934520879958357009506069697187514652492643920230735615275579369224660390062611555452026146606257073498551937335039318200439947244679638227217687072052644249419191904224069353745058422006647007279636048224677996782360179553959826474917048571993499751 - 51476886764477291646170862584856674679972700707904905882304406645315795424498867057633713776336883988216495793546926040372691925073744098269858968257036504429126569931704905407635411734794969248662340103176150456555835159176288264467389706760723830742402652226474074899070677464115540238302493083348877433340 + 95441374908013316660791957296603195798377015480393067779131837113124304539469438623844774704370917571221144540551854061347605824654713694651437491496002506691941063055581047608400217606117415390255164667525333862669823264536436189731481131069904074421653633969236813759860768803989300649553538279747553255436 - 37523275146310993949878183191756364194362828595099673441531043178299090396350826088324451349223008779570080150092246181177729671073730441500810765705848562425299503405140007190530082296455875407207377551835284333159611626106740565297255421961353706988289525972590582318363916064469272224326918023126607660099 + 28396366317413904906805825998288122607979281501187328962007989060917827920385931336118435559705270845440171784340673144365979310123083816002141334171369275797720562699567876459200512974266298581278387024239989981018160338363352662657536072601939170738069893148062498564839934983665037203855572275631515363699 - 76747842175089064057815931921333903797424937853533709987121678050384014837514910414240080011238593976275520009506761376043037542991469836610628382582740552455220324142940721551509358249940124774632109419407791223264379397119670120233966815293645440044334655462733421014495054399298993155325267007028367837533 + 32529334749501915629239275059780756568112319388427354134642306955834771074790571672816171893328997000776174903342078678188165009102813089651263639837709115800579371704135104375696412911248367564101976178817175449528583617028259840794305493030929720109472431389964340930400451635759717796591489186183913880748 - 88773001772032623751511622152995446885753082870594526011423477091516998382827834451327548819803882516749698938069700432447868803149038190246171070779847538443209396765087930820808801762481297916651633667116816898401823863787491239515010379723787533909841393770580304401144612430307881366923159729772858025956 + 43485339807485330421034033168909274664319771049882895860726946126425393971810923774960590259841205704573879756532426826087437446567496041193275991654223304755602976286978319859040500103387997355855963452912827995092027911553996915216863954615199013216376148248156196860708818568114469347394219164279263516161 - 94402428353389281971609741621824217035162281138272012209734421822872748757006990318086683477038761148976702738004618011296412220782724348640829487777503820952080585580890860610106377104018524646396810838081456514640851352265150718700856075198372754920037366984327958385435485897694097892837268846562499144287 + 40235246650577701470453728298935951880294180569235458119997786569960677867284724889351203436738193665122369286957744192796991787072870858003022514173647895856505450940563542047454561635500686015514436545902151536658696520455230874663285922020933659559929742279141244601568221357031504998973716260885478495894 - 65640239668708698702583953785658566170015967096257661508661209527730006107613214046146504513725091673350107698700181561231975310632259186045874359779092131841963340499906506811557396520059895346121858731795782638601519127318452405210330561664506302239090664964510892577861850330666419284122172916101453689967 + 99555302021292272874423687472961081538335871902679266318420924493744210654882084812618773953319648338863280940337659783211422984839227164544968050008178054825812765250638556497088223933239980178541444589265565382367267254319482586016726746587795860670952475660412597682960630977941451454058384313822012325564 - 57935512332376439857924773070817972343800587219421759275916051413362674526549137184678163653758642058640659417146510277505436763030578246643443167926151533560791415005892748090710580728174549962141461794062766046287608022743734526299601759249210873148214149031924294883720824061870523712152457432417510607661 + 19505641502275956664898584622072553893235085645300193522339258981670957471806294721544943151815397681330483965747292063347866785767195566475498693078845820556257750526269367261229183323289079066630046447534444813707867775677994168671417926076849288168008318425854326045990212740538324390906940107107376987284 - 28608894992927828437597662277776359320674661193674092256154628287827861478012752975533166923945659742173384219471283408992643034399813147741852844232665853619558056009563789442845744451036991042305647660584680204657084181164531009326423105089185393391211670178271105416028906903144624251159819063739954948858 + 22994028810133153652206441824444834281391352509496018964836258546244705775582863371098093740621282102043295850190645727383274493981825286520311213393809590130419780592992396095683376765798770484637108499001923380329329896935163070352573170131843256602779643630355724155935480411580322414412074419844578914624 - 22416674759077391541502469617182140121621521020236851628366198609929688482689141975836330885770279247373130833175321943716688915705139742659194215278636319401916678045729931968331793779004119813118570346224779375684014357232533677053863927520053406461551679568780236685310749806913281704387219695340249994703 + 35966091745214733414078385044098634704733705992995554608150642825972844346343206522285163408984612014788669092373943741944655776059837369889791973114914202885337001526051055475000123342099615557480716856573921386827086411540515070340215938560178241052983481532015921154609316570066674812622391987877879293854 - 16766373882297762755355466054440358684125114908131791498924629084619128726399205351967784304771086736877948728451037535660540892839057000051059672376898880918857947343759411426812450476325099107612741656821646687529676907661640207578363820913315305713375981348454350484605807667278927458202840655129235746334 + 40330577962571155786238042459266516083212920082345770885881255985403124387758568731691590521452444994029107058165850549748424193181589126239063797985651816431566962620555670132562776773459300544376056007247822210456153814979833943520100431493081038073276673562955930963473545667627689680440081621641454366897 - 88593942846707470725131269832338308683641219354769811978580124803550910982662013803948933165857710078600665579306120099739486028850268903039665943072117055989076815897636844853534271338217438427178915189811875027052517611167123993061922184955764759498719916900914903587230868393928450519319843660313009449765 + 6131907742241912576550631446982813557752584538792462548946182392151709022692681870625540065010565631535192822999338564541587726130760973990067991661444593712512505823711832515685120573959296746108756191572851670791797443335754496770231019342592622581019160632841636320368837395923185702558105109606541303977 - 23026199313101917764071589526453415443239307951724031941779687585446570684627227606430588092104852571139628885272917718455504627708882817047308185042828017936698106487050173510675012250317909492821011529530232449452502964417228265661624103283664329245543181414637905737358513635181787272930286023367932254843 + 12752790743995246317074534227341120029311565097714957497317569611132710276109363130946237276761628450133107925021944766131298998813599700359138133227674240979011108417015787537929951151549995961594555227229561496927246082808729871013224940091104363843657673051122000391933353965172163213647018964011557568644 - 65394285083018952200956959608927429105807141523438896051419662400168872847814838460017889981990642808174892186581275192178828835836684433286028065410457378057904711729208043858170056388579110835836590828382552230115632337375312442141425187671576860761141743169393472728351899625359889199225111275300325130894 + 2429430826737186773992704525301298768862408858372301167870044914155617825015900243319752349510246868929568036096434821032955431029017508162909197730918244725479721545167298349735105105560218346372258560946350958761765126847661292171869494149325957821188352581304202705646464324440858212827234509077508878035 - 88540591212205686106270602834314361825151166937243996068287313915707407544529883412569136622780001045816650506244930233660589049374824607867238346701680500830484845365845955829243364036941254979702081404089680596092950817353695699466874949748576026826390019263738162209765431176373259319067477943540231832878 + 46122378501876406813114745733740132610962030263639554748137841231047375106304234773564421057596540431458640467269392123240034338333072908630912825013055437439145961530806283604610740830966907509474431093457260050293232694358335520893575698366158313686621796720127282079033703256049634804284890014646329412140 - 60716925354480761984668113947366268505954012461881685723870953452260537293340192741250347901459706209325281605352902128747713845124809640042870302916547677786510481458070548789723937979094328520700306817428015672163507513341555109049367716210359688843542894513344589375402160490088876721941888511198847077053 + 3732271825286983366416287269299813952028882861956816610239556676041198080157990175982691112287310211615083563217446872050200157879853537910222549905329635219513843216529026977047406966752297272324134581941073656261795941303748631516662403027148342895004562156018075164115426746352532474527657844188489129799 - 39966195588595712663706591708914970055292781649240598413587989080742693036577116441136985171474886306714341190873094211702145168648135575019911735160176916381577630501764918297421896727282251089816895682158039653054422878368755490243909748350156398184634484023934374989366704253920176920694723627144947571351 + 56258778530033400615000980032240450615449790121550192729099454572216947668177473887960757437007551709455975350203846501012456417445371804452931963963501386369997622254519372391534556187212525405077486722919289592752625923423004046260187345157559704491472334600748633656888386811210323014975169944931328957537 - 61732884339146495785710466099668267080543711024526511031686747018549645451266399633267990480577161368541382043578785647345530278866189761340068391215647462430686597232748761565622029536681707681768964814293755744283954344159005543605048217981674058359363800690889916478551413453024939302829571278727379999549 + 93103080657881227954112729351970493541078115928778657701591408932575118324107282787524183751999279348777664209711124522288236821787327613876778997843260803896987745931313594813462540135248640244969546658983222321101444296984241952637154941171155043844839169379143752700727993149030049298282363471025338408144 - 57818676989680228177780317101861327914349972331818120267294129331559063637024043977264976611224771719685751854053514836628809137173849092448308598705781382086833844314714304290356818103865112266462827640313728277688519414093244528149185164128383832706764988885705506313658179600644712916819702892292453338129 + 4161858807071523892042728682853760249947823166421480949236572883622955252145098386936861624449773754117787379598299685369161049233848815225553511415892033543386542587631874144782970317955336220389847752442751176266386167923770657394952361920034120263878548310604564096949922612356618781652640387489662536549 - 69562791104654108367093211357328066234953204805372309896539947903011957093344573057234859978551379792195983219884393709500841396628871471955678490742216103292578517361593055854539186743847302370461258495554231191930496497939853527635173641626664584031783145730992375174744970105873057937756904344648107475216 + 39523874463273315964914841257501473458939802723743800398411124713573102696023054812321795398520686503334045810373868604386129373426226185224128432878864242361107829828441375916629331901286412818103054050499794109703444424945113137832728035866796366913854613762892133694764340515035486901329680471215900039888 - 88778316088328687779646559486450782501795911375914861897112233346583547807135570329519114478618542297387215351769782996772598659617568974856068452121394446594382416737443950366568480723014247292808832658150157151966742288780886961092341304900275521800976882061055547783691996332142653668469582298574526735319 + 37964647358068838130948483793261979670238241093543841960341814097041724893665570157124796452557291574384631003341639008011211621216157938740690348301994237110838992966029914674779657534541845456136442673632952502998739421548971503954002837255888721805730443913964971967794259028224747896587528709999082002721 - 77447621610133639990411370648947617993697914754382934606446837295794636793702560849043624575817385154884018616549969875806173713873993163896625669209096930451250200567207576182737117614143961518068910519113962618920552783319004516587478665606413926546447972936313485134980381125546626054168465788887252926169 + 90234726605149649897736278023048559432209159656275881412799516385281895925989619936934653113555563137134727953194225030210335295720190531198227003131608674802833268309845856574457068165913438986599814836931257803816250659828615466606571286136169751383517286158501295136753310231199175282587930917068282735084 - 48026064666960347249530904461979418573451490890902659735345509972851540854668029012439782291019783850382659053612890676657106948259238341936913006842697770337819431821712854885430559829303393514876125585213619293901100890257030514880193241750275803605170537567404696134983203240568758637060783651600720826920 + 20229238880760321527171788833230078230743350136926883892894298314262119815995409403143971465286710000228306829954394203888427702504650754304998286020141977402945483257266964294444635540286502088598209833116372362904507288422189506591696248897746196568652018616068031243632404315104188143075640045160425631295 - 3755156195134516615444014270629774753930070456123963076992109232616275549374999532999341981453813246977124900602833590914705913542502549203102460222969252130839168914718482224309904743015955415525366548220490605192113652161243332483360332754230945438702064437705329013202006460330048083010346770091922950213 + 49426320167192333842435835634001195112186605926352245310511694660850261664595270158175235080918735815773200063384845564981082177066906137282482124673080745489258557319473631377710887517040151719973325433975359459495268079021480705878707826525187203957045682611807680094732082156537125907105590709553760314957 - 41296827888776783636276163737070005288042186168863740522048008592984735106886407113130958190548977970577095776704420650697756689495246498855823317185240280487096626854636042194278955385632023193617003375452398935819724085921244216528158775292181828289969825147945318555288354759510059719867290318504726063749 + 88263177975644578890149321918549938346896135594535725140309003527013372074837924643225443631045441552326143825340773114081912580330274977354218810036192452724431924177599573952901646232826379110867965821436255157346304540961195302219654314791320589857336170352776204002390887313358908908201484864146359604412 - 91054201932021582179835659880295201872374922128677892101414909173169286404558153467287983355049457264222424711013266315220951807337863105391483449949059068913001616162506253660197517537044902090301980490950962869428186795704854707442734774386600320368201634807918595063046976313768944092709560055935951304206 + 20311423565507774843415289562359522787819520950451071706745314969511151083885894078149148958568326106976170390741322719008154149587811855232875503383298926489401583310123982895115191398138466623445312537007652244830240778536644404551226873170875119735349054009376677087077719868636631459211579648609363881296 - 22081282422094915139513681061092624942637657296405187551446476698043205792747840053638914962696063527262734711621522778972907001274227902018528848614752878692187459575918263685192639568941451592971399810577022923173651493691614319798331083653600230513050632027125618174112189636690164177881957286201501886112 + 60356183852123554840636026425558474965194970131760265236857068155493669199479564361238105875152385307649266278546007114925370055961389769019622424826794439602505778227403705879137620017354143571376998352794721984401227887262970400081246867002563502591273041345719232278277049262737363566119982962034934020681 - 31010551979628177573029458686284193813063546478526562314959040372964426058046477842477646711358050516049248718449291251419474125529285924100664375344610380167647111346707521193390613960738718207101046100878441788966013855399729223865321539863866551536916979371765463421886990643576796004362355661345492240292 + 3984517813031333869053894664719866284034698885450768797600946770288697341757913076919091382421286384681201795598224036890769316591325420602824329523977555672464216656847191549808929463511829831332810666237743786780567937996150837837718093259960590011380838357699056471541171269487990856215902379898460432172 - 67079534017535970595842352502939397785371375899006257928089722017665352520071445394313450779574449699318237580935874735975498986240627423709145540941537545052057200403401064378279584945391555726167026067444201187717316284605123249628181057585360711065311183044659500922029358985237038349176187736258521751098 + 3765600437209686153093334688869309220514453550435101775220118053479502268318141628170191733236386969435977029798099911851597551721449892908464762780665496932827438345106150877369514766697436267254397453311306174826523628347086910028467550850507755437769632483053654309354484312271337608144175409010196609830 - 57714578114794529296629169891575250127717126610626382480740270510054129042890728974497798365385081584276154148631892864612884033499938568496797861085692700942560308986586984875564462431132781275934533198891761530328357277317233589831008113435031106938145605382913745324823380441443221419046116752628356724254 + 4780361891306199647162555192942440285993967994743457366384035059336681115944505135597081603306241470670436811358542490950030765315856672826496613929116460673043487280463640314866177819304749508460659614955923897383957474680065640858623359743077204285192529908732587631786126145425370282176036323100453931926 - 2540405647369625682757267377038723364906635366175841511460876222420035057561822254762969890004077559329330729899208550054327057583703975931510915294360367593682028017879521278469591823163492291974677245999235719415946683233653373310684919973105690322149128126221622026586344138463035827030574080909649496085 + 96208260729611615781121583392945563184817289300493127556350915320203871951544631634387946939935185779520615674751215548069814156967122368819415778976980850194987540006700036099508807811198675117667638712432192555730423424891655374299481874988678875677665711386381655583408496050927757355369318512272716971447 - 49802708769267438758962881883102721408716241450067892120255789579370613124340644668619326515187223220284921336226935237236536878999292046449698656495436430465016021925841688215919790661506275697334284241435562868614100111609985856644316813073457819194122778144903037129942889905044739838735073696913586870969 + 73788507138955607538364588353455875508216956209335630218220968386109148180239571688277121872062892948562173523850024912803062504639938150662043928946788324389343985223254898977859048124918419939747190949938764588430345211295772155583143614714539837832828218270556360308569766862756597050182534488127037419440 - 62609028913821918197854568698297664708721575733047296981155706837516305897945112229126645846398094338385935189316892604246012430671687465237207063408256376458618860599672116170256841083641819058317519925982949752240115057113258744463704670165947831795340247114803729858874334626428097040488989320276514719951 + 33897584709514711673580360829512793407564434842961069077696679487359692936837278476630800603752718470631890013611945319268400892511188930594231884274755474710058125539680159511893503620027195153032182372719394957378505740396114866198231183330008229183811029701859787411967498216776685787765475838827117103576 - 59850942282025464943720809651981202068427491556007896134580154274340456730589416977351444005401734765627818068385734976650546157097300208681158487824411571577253948281152986570521632977341290962244287969468401151085574482480064408709660511625557113785537831718957243040943880487304822349268632355883130665624 + 9751528178939097820195835250206712445110180209139420584945433763300179861284483937677844390811921242535042649716050793205153510781992512228157040846789873414362936530749399964020661513517474498768196385396697175850891042225926755029611087414653836094796642541587351342724200504913581105530973663211251642344 - 15235844073123843644189440501004435729007287838423762537976017479501261069736981258868146953196603806838796632340254902940211603527615800779302926485139435624956596279670538833877342208142715070323362552423269870112829821684159295088709584866515360268432776920200629928200656753191484796136524723805764086829 + 19660816786276940722277947080451174048491991879334845155309864015933849213421447100177639598439304282316499916893541088684436293120921011105865588568419638767086514734618388762845582948296105212250830315095216319535339618704694869072000652555659999168640079536565855205035504034391908429230777287622488801519 - 92615465833703907395172029799779124533171714869161239142507611390195790843250324296043855240402287213798805347347591961365458238707597390314171331618961128501608779982946900489871630162145232321499350869037278637701233503547244727629988308625343046522718478909646725411299458704116443958575594000816042549839 + 44171383283593434881819217335408563415942541018488011376341928077352337164119216214328122190220450253302640898178101222508536720868805997065745658230168491524340155473585129364864092568121560258904040210153471782776901356685015019497682999989836493896853343436733384007636252668969593670761466552168484014999 - 89911015375225434386420720316747663807978647129870282735209299854303366618618313164909266900088926896237993292435652687237383748612071182577632072088388772765627844437580034494594252717786882465660058862359984752028353914357794081677285583718745782895976599591016093627753735687989096370959183668981616252033 + 64676928021111143172542708453698403417738659529077483019507121573028359937500136063354403486425699857894294698111777305335637345920074397309959814064632804368303550234978492923018881959833985438894971323345685679690796092096734105780539619446456679547096464432911246331762829401031683897496947518334580722315 - 52434059409248781980180483448085756116012610079849624039157948131881977802540180881592907048858764139211254530568616690226491761190291454733242010560540952685905149153389780512524248801835836672944117199039597342056806843717884385417919624154872764010577135697340722978713545367387763208942555137519747028524 + 48298521172524457645683945738476974490737235663321959960529260512989660648493196786881996544897434413725681524046649556379480369667399401791762456743805249991396434864875324621321883518094086866648235862013116721158508369565118348292054140083559333730734825637632057190077269673168700052141617112235263096801 - 61020356471426442602461542664114752213698844623447676156295816583097903825787670924948892895486157500641696731111119637064515399233471169416580504103735913490341268448951257460805591872218343543319936761061472173925918344589602104360989590999681253703148665529170949763335197776548461018033295555182252132340 + 68306476666999422869991220853908385946320800831586837072079193948481687786921138451010614417157293270351707397120207554008488025510844258627535467823677310035877993639857370941544349821897294044247797592397608473758931462237907705514301088780643028009807309215637918661224215364376336227855376890933025513912 - 70911292203634081123627339907008179954945353960106711730604294952007619759186171401240092721768401948540852747699168495043351479938810937240270813760502437596693182982425235446446712981683522891223914571643728239344877516198820928271538087416776079730677746823745459531101530514993057260627892465553502159111 + 59966919658956050668627675028151918908533384507906936394360947124450789445725124948757825355166004988105260065253479777749654837713786211737516500822133641275764633898954502080407868877500735898195026814196530466771147000079449846715966586193871740457770307932750224734079198362375832461156863148210937263432 - 40116967953020664319341043434761974592188439683288744102206622684842364103866746699635383392913693710023686136090108420140056863453979882577195895323616435474942165859069091665852746146144596225676884809051006223033610142179402576723458181449026411994411883586928835178002378243729695967265738810319152169034 + 65579516661221486358836263814079993240805924597754177137392897664358689268202717628956599492319679122686733221413397421810380525463726742815029654609500025822850788312311007678275473510190040173370330046432585319643358486063934085694461038087616813521595753177908929462819970610600609664857469598230539461045 - 82525091411636843174184647539693521689123798145693295478737539961955306060361170772408217546668894967642742106281518212543048033657471611263908177887862727460784981590481248850722315715806483401799063816700748894665414557559409775776167985924706219831290001764946338623211247140431839122054667779017550726715 + 87483020657784559554057127384387960228456297362550204306745327470755798634894852969202493842862135744134165529455390325699795753844277517907922028065684201111117821541150164310040822966858548514896218598984677051520741519215727217356812772539440618139259210492643420611212229459406633224585830772416052871712 - 78646187733217441386914806192097256620164699169306873343850712595089863452909662837591699855179100072510276445526801620114089059237392227293517083185084605772889221292382648889866362096647978553834412561671366856928379817661628921718968910988524738327087769895610126021100373328414834988538256172693619163232 + 11848018057088995335765047999638239393318843550587465576289682661489832301459458493684351081346511152097283845242483723267074239003410404283359183990325164329210385430614146878128066701750995070627215856684199723585764278071937918165229224153745316716798033023021542809792180664083665314307221566673847105636 - 32524820262536325472999105799640842651031046507937586989361236635442114328813925284439458172106071334732821336927025023464723453783968390820386014552849590214851020215282582075796025847083854556378982623197667091190633680443284544758316092606293903464532259161378905363261114219720409901637316126307306762770 + 66874458598872035741578162964793360186571675145309920865178658386303365858145567452957932504270644731823711188791246186041107521582070004750956371288109788025747613899484355447408057646839703818815644929386672548687203567414043297173386091184543200952871577501413885482766590131816790465705092909326680907593 - 23833886442124538309867825188597660757090514080900471045401929903045275321605265407542550470370213826531862724500567542141613018181531923107943899461404776247305251151617397040218976038807708256252603928691993897130437013519731757562075271938112115471822761317205149232665365039224561084966854782163020320141 + 28177482549552929270495410585034921296728325520194848064074412285154832650065759045273543693258714348903146280827590577018411971365446181445099196411221784898754659351134785917777089193421853459690002796560961026354185980015291001302873748560409514132776922721398333100555413103077934900988127978278169179939 - 51771152707305586397556107753550837184522243896745151286967724685884135331577468245309999793861338962322781385809200780502443974220604098450395386981315931591489695546782898805040097382872990474735988975088507058202690818633380359002081634222056289505822736130291239011438079551844983778287307018635917675824 + 55198133654834077332426037649666818307435495281258200582346304360321441356393473606421978587340823774137038196923739273321898761435664668814472509783468382414287607852738485409875472764954755936650587534016332615096382913284335434822991340147432397312638504403360656535260018633806497043750096109017598913641 - 74551839470287934070330911461118447569492381109717098173687808338564989755789713813254444778096624688102658002395705936214843429251873432568126612081071796956645110071348760348487213062825825147534842514325193264417698973586443975965444726043491740562882864006402128727362026218358707924075337278782241295615 + 2634954409012992712975344067576441180240081307400757823405316323937625798693568791191049338377535293040842905765300755266200823658783258271348732812327739586119618710684284273201952511605573695727150097432482671722790342436000610901465908512240425828366427901028667127436361280990728979372762653988903022309 - 89948421007989562417165267048356100468399200250256479883273011550970703196907172668421496560121252626833011190493486123637948858174547226080010645109580883049583039340832928104237261127291186502170740176861441053110700206466302403895846849297718945721020859340142392736278219205270152061942484188675321724355 + 8278421736061717253037682806378063437163963149170994998126337598245066077824256857602333184044866793797640634045622331333479493015225791911453774908512277183216582112432987889863576705863080394377199628991130580104890927634730619326381152622503036240859468760063717108409224434439699738960151855433293262743 - 12449796973193067504957369207872097854621930722229599942526804262407400221340110264628640856679873941979010332654652299133770669902953162858241357162473981092741408951838303378066595732757024713224206657282786664661400487164244825784726070401858813752025258956630630528989060514353545665526327804484527602132 + 68463044694507116534979632645386300388668455745454420941955257545218583081987533761423662890470860210815202947932117271971659890921756739711461926500317607539451808705446958612628341420477619741314284368154694533969496859347800015526184957681406235626320514183576856378523951417190351378880680806125771638442 - 81150963548487351473879268417972900586778470179076335770951262010325602191327303977578520465731435406516342480397787466173511682173253618338834142637396346324046755871356138308520223949462603368224330562300070135600817621445123158338526001798271483587392342698854770720639003663429551430169694624018397817734 + 60167000313105696067983775551569798823241811662681215531591262962278299937263758515010053593968481139332355337500535614075027701490357366786670716241889070407225162865164631650006557817154150111333615678972992612157130127143143591141190749484829324126305891243704608455822061603582275643991203789256342589210 - 25765654759714161861456650822848058369455766635346535788736458576413184073426323852456805655472920381975073187212633635694645408455832090488760205486020233181572545742191825690645121082585775775958030313301042815681973958677132313665915973494502928675662828713359204950955521680552143233703318277166354356574 + 89490507393805865809913617311510253370854581106974142288177302345485332991524800243284436671682244149220266767291916641503628041710450356747856450310559221209600130268432452400457623915986700740036520169119820459947304487577106730776375928317102762346860987273972579067453683992820210671184649995204955187674 - 68159252411121443106658373108079473828487605786049995280165837701247587355351621453430736317362853399666063855831751306293867765741964431591145421316337749882671732327656210086212742771592540769417350197800722853922086328766604512614211512434656332735538913667299489603026066984280484866501938028940881687332 + 98956479899273460567567398953033617115107214375051713345264638121478852054563135154007532393273311491402704944464470905153380095673545045317561833873044351675330004315879248350929106424563583426062887550831157108940914249895901344612574439080096271491618265903555415201110637936759900201743142101916747184929 - 55590010338077859483648450202541245060812942717766413152403022638214487592464298547312979945966722880696391131142602865457701825814774004904075075757253254566493932889652184903168464699382419871512658070508160388867507709756010924098879882192438157728046617044765853270102306949273396574922324571118101689436 + 39882429247847056269136477267122872342208629279852330693891507027566082309044556544012667228162722383874277438017436526052431853624187806959733294798682167432178513600087789171262144076162799526534926624660394050443645530009399051921542413728314136087185614939132411214801024593899495549474747163641337663559 - 17672700637961486457352760611712293613752049984555640123938012237710559513828927684563898805065397912238576615672335709516700949788085547017200529807388806553764240347959855828052901224816523317897922565126939538476319474910570249134720891753495834265095401099491915324297030516232165310572536619165237354675 + 78417918378266376465715041803203745198610662066246991643736222202458343350762166781170351347999028136445854920489275409967328606802973212539284368250598605964190401507727509512030020004443223472903184260094022283811398605974642639109266895964995077354467914493881643629638634804222332888002579358463988153177 - 27727213449979998208202685185704493392245280753632376406867617090092539048900263885763179055490684709024257047462448831812031428077269378345645772090690224068110883089161902329257753035498325708417149199207045699069371098538704427318266824271685799380441141756906415581666226965712789373201251795517818993621 + 90803227327957612660398748491282559787711938273567496718532595324654552330333919918840579268227866725640316831825766299737376023305180686577934619678031282267891766168550521877337082871605250288236001615099404253592830292603538150502700135523093093320178120471309238045314527669747846310519907573903900033341 - 3462420777539156015487337011978615101937122268919066540928614560354943255303124709223978560698070750703386896440139496078893626083068738437237689490965587963112700162539828667872050191438993434419840232396351698761012220463707072283194483760723122906777098690582500688037442623092536988188391955250265687916 + 34615813687647571661726605907634471985498543989253110104944354872082231209019555467618157769393984178607346374203797664919164380331710732763340689620904224613718047864146710923114562967273735002877091974821393463789650799241763505293807405626356038317893366275775730654710728468683619936788103946145623532269 - 92971622671774225451743092887537806591882305508073384897437453692815973916658838339272106959545130550854009244982561456160361847794090300909911268803982441771223951241775689336582586105261243616100924348213998699210809295485141924906819403934234501585422589161454693257383170447000002909979574863066979477879 + 48212752080231679524775936729120482599587777815610139800705827485764009981054453089813789126244665198480417725449301584893572431670195833793892352682083170119735016201034066500768020279964201623998714825421772888794727533544109311997345487977556862867685052555189794599463977751624282282590450506056070343311 - 40206873115630397758232408517710891223982100443768270354792469255121629359093248496272232943416128020978743639099335465323884333878833992631760016870756526710135172693877866272915841240510996757917731234077470107980285432201325116408685794011441974545103537065766719924059822799408232930990368567148915282109 + 22756215370683756426809997395321101447773435845576428593219755903192253476733068310312966180326646162814210372460962077710415553055560736533208786187621348961920848858118745633476413487580843568260955348731904718550495697788913695625982512802680985139240942522456921060040959170783190622935667772270732687493 - 86021129123100982324892213430143273226958539139680498274771605361364382850382343481433791803419331940063139306843727410658657937978393095812357035458246221035530637103709429374979739834511625054211942740102304921551227125300413909125754335208887402570224447779494254512279882274825179824376335900392612869327 + 77055295032314024822143653823383454476438172370021095354455071126821747670492920003169657393543367254571695113260596332758328289799608621049684114573610003674770070293820565628181090795935215923733381340019671677129880443256161625698158129010435821736196836121327801263915503348873049237087376217344952467659 - 30629499088707154548371379438857007203483641826800359181525368130221358702150084711185895844466860622026660995352724393949486450344127533718676261392759568549985539789377968427573731393080635607206023727128069169553300944153195149947478811671216025422303191543678188420155443126691302307767102837067530523505 + 36565357460481369425259565068912871677679012211288815453497964739069344082852517804991301531670435830260241802376183900557918661245079566605565003684510681155380583945714076753840209810262717503806591404425459841104576291304972208740919878284952876695581211823853731114122627360241871226326375920226934846642 - 54277125195505621388752975728826340887997720773469969407989648983786852693139685560034447800267048286549954477221606398160551188749873914783420459212527526178645837858670920038849094997453656906711970333777487992737865481570723931937316155889672911286983266135115552320279438920409614085413083309658030262332 + 18029235025252649467023294364493467135223458250890069836254308174017668165002506784115786527091369500089225653255353063179006641041782655872623773237644554219437612776614923017658113728647072927669270073911205281325159720019193147975631925463711871811688838273356038951991920081814499000554551393201637154753 - 23310314954331484926851225105514591664138829983598215185333286532336881578504070820654792388668441527869807023759746690276681312363299592215205158151080570307236717287179462761678812911723339305579524652177796018537654875016417898096294794226425360339840801595912062632724815936388403459049236328954240225854 + 49860020155690479231196104572413014261213526849720880180325653637223342156319352957277186345462937858825166707359360364007682797007429925544232505433085089409559691744934936343247930082619860688071598704041962596262972986678433943568587651758165882988736748880853607933955073541098733642770991315502583494101 - 17989293080125209865468415322295988242730244577631642150919389224367241714879928197595099325759372868119630819437351991895592444894657817900117149344063787052528381171440383793843453802930295037506928892819214622088103121163998475043661453249731057308767772870790347469165761441676509561455712947360504520475 + 1156118812008085465247187784315573683611150119856388423046715990608644829130908338585395377810590802091588518902590354058648181303955021131532175724851795938041115355456101359002107603992317372484717338347393497667594624655193776331475258502955196324407628022997860695494600229171864913854139685441637708623 - 8787235743183616094636099160299879830934015582112048592236257211697203046326013200132114834360810677674965792395283056480532451864200282555036907893598302396309138861437136821152772420259909415497246589659333792383116256708863660996235037659991843402475311732948797571825017189025863798319151132565500820558 + 87519853494826525465835194403197244200326958549605102650816008752563202003871354446436228576172130299583756888240359641371653097376434682579796239665127505946854311727167233447646865389054151027898858837730544740360551108197198566501943231683567750447308434030246190238382340882588355589494150433671939435191 - 33110462923626600931738487114169066760038785953740371223071041053150056708087761631389733712606824192614976488042859780369778169521414109532750491273242894339282788538855230297221861344639871780981514492635773426209460450837690005588099098932090553204992550404284359442901518116694005133142557805175240003319 + 57206765925329398829529021379845439680606216611455613461559115367316589222910402109803976341078377869955228107460321249930000331744914936659093319529263307646020212776721659159813561860735559234076501583942393234112055948055594008917718332712361139639461445493120559662534990481404998231350326795821608910684 - 18981749031283484306693067988106309321368985393658563650447318642887245771460404826126233268387723249105057065796655001107342912731867975366266558006915836777818247947160482880820984795792551699965069937347867865819047382564943646972006940332554553453192380607780734972887089226723465344680838993389692835338 + 8032074170638956475455910031500711683613614160643220366840443297068691957094961063712184062660438925533876955020967177807585415415046551913831153540045665133065272000888242136789557945843492314474430958224304100121317569529021509761740783070622132728204102212200967490333920500702351964311270793638376963812 - 13785139449013325174097578169547001518753235677973526525755823833642048616848029443671559575875515291081255260162915863792417945589115620797555393043936095673925388075814432971529724957585021416303769361295504487906045822720033194480253254078700742482871629495568412331793194087719288829122764223336902595768 + 51339773296269704666637971022821024540829948258805044486325430398959242763090786068954611995199988237435061593526871397387386739078118566743011753318092400533288779044272598277706996175137762694762201020592621867295495025531550021954399731933255652953941390565872174929315568868242633563496616278257608754691 - 1295622942595184269083509751729297244191474738634027735825210836320384497097013413048799542100610944068063065703848981016945923049863742084088969748112842966594535851437108691451279265210539534566253334887241670901529579268290469052902554081953382096901721138516528961078863250092781508092078951629855010441 + 50182438726732438693245717684826176744634087909015849917053880318979360350587208952260192193558904845874582969781004807533823114630295668199749803459111479958559496464384648064864848069857788533379430315969314173825868306827545550415681902881337841535400928878234657003251168241831912843555439975333647202733 - 2320144322845215910790986271462070005391989257481843729949951881297946737536074962448382019429826265304722675459560192864076804710352740898004386925213740252182373414792299174898915254241476142807307223412338894791564378967930437658298291166923928330955582858136792752629707225483887889726267173700435153198 + 52501668921558721286824144122673740345875296540364265742285792664249529156134561458786671121905878570076140452041793726608471477683150269866553586759959417342737912684517155796868015761312236438923937476263106906488719186712413691544639396899319193785804011608424872359716562955510194820809203891441272066127 - 64608323508910087871658098427959665117792136064242362101632056138748764140039076928505187237522872597128646831952255979000643367811578605377952638451615510481415080227992245132888206106141168137089642467402907673001555926530107028346646635409666467823985251967629120284322315718935433167896293919729250301541 + 94922934978309121958559791871561587023942024571759319557711402448925961339849708362541308787460404196603032861055332699586988554113442293777402041916707016561845198148390403810583114918648356445734106380754522329483556054120602554287137264343252321330038746120909513928841814494671980505841237825917900298689 - 4259686864111518841333764642271093463770613402483128551587668318832271770897019099148722023510595541575225496857916088303790761346242926511435253367418162532397555670286529618946601025796956785883404853619192145254176852432087492957343957706027658609111213264076193336357552815423963155750751567924236284427 + 46681887839759699102289404064556696030541218508208368684829830759354411656181418751087976977396625487222215418594912219317200062533596441298447992763970389252161366275681583340326597854864329865327994969701060008806109795173712390379831466895905826112386925389295766393165475939125463975593728360725359872957 - 73666999916079758059564745239259401325210888817478347637329284430233756847046053117159910334173949823900983458490854092886464115222165788399878245721704364072878522971340255776029752870370829074260721358629460985079615390993472523741719342257052073092392161449043840805917297229957538408073912615306116589543 + 39788914854921057578131120262501067159302006387779093125989575441140169660966997655143599575378409554417616089229806377956482213469274619851337707081283376014801578476969362817979535141357569735413350645217915815821285066139908091133654038338929855272595269292182950170923828060052353153112052176586801813328 - 52273797688126387708938359030293977880809864541333037699382488411661534387423078734902438123034812454115603767158764343277548141600119351015444934455435294133163002024608045389816145074448774080800493176308345546779629623117918506321234597885240361271323223748218470222507898044442142462808040498052885092144 + 67330692844962461034421345195524337154716122261371390913296452047290830428704136866465383131889403784510307055419865328276142822708103122773135946637639340337005453931252123593665429252108313438531217263561161087501284215898207123934190658712437075891591218891571459820695372829366344273208579698673328444303 - 38165852501438940843423917229012175987902379386692972046031565694884498576394195850372351369159442645662514387464127023583398385935986851768132182974223032187387077371535299246744089301082590018066222136110059974302461117669985132799597497473229879529754785455580522073296755097627409073521269007682743592852 + 6335234610066880832744775251454893164769364483694435216304695913329555913669886492264632597063275588900712081422413802466502157772623026252358930671965785363498059064176256312993786239596099698708065612873697627542922022188608910719666826305606103404806857101461953500894019912607554943591684260031233226547 - 25287943372272007312274284816666896930381511086649345100675328092803051507836491740439559974098902326790180799757917864032492540071066898428629981905995492027815452078561606320418814469873439610623804781754009144618115279691820759987884929040760637166154933589946289073085460527593275775171180127803145288916 + 26792524795990164610400947564771429186139610824151708422818475182820571768734475553696278611364126062693595229599997799543697397937598834815070452051480155236212357060266336229657474562273031182733734402701163847735072176375118037965201670119273318469529407634125750108921003127942091784106768296844130459777 - 58758217518307603633500546607417839914515111595680596118301008624278554582869774638611199090939662961465243159060410183151003135185078903845459775439051482994995628910361482518459036281213165560137138348682838659750402466702683508788166803254769533422274814586602147597582046852327535863334879744606062576815 + 53915331455896882841429883800318912671030560876955756818252157059522059903209935338480737150608730658075655118701237701757297076673157737550098975021158261558601130897881253185270790660670863110221435234344727633997192212990375873169201181242189216874293535880178498123070071491767706937436826984181831387232 - 80102594781486480507353602397232544504319177544070940258116271508067587959367193586759737356862117569192852730155044854867230740396591020003013294826590754037031696475599272452501319460702859663685900774428782269167959065521220886344597838125179465283072984546393889331279776094615974937454506599604822847879 + 1532829115773247855236920423121878046082174807413723337357622719053347920124000553751013573672809147862647687339855589128113115192538473680707673992328173402213875905821204315535794884311798135129100111675018864161816083306385770937046687670975404331374254127987145237594122079703516930786739151474398768154 - 32949614997982179072993810934089293383224288780273769101234709530132558033363451890107451264890118378360680515591420538750351645681219986975879706495756907159244804519019349165549880322890189047359462435246444173771193711431751368262221428910843257840247623194623019474909864108046637157333468990899165995374 + 27955077568450835821918343956489280638679354805076524349976946199940045922916348819141663923633205351005506090921015797781211237244146642483536827026739026370494141338345091926631799204244593749506371062913084861049708178205075644289977984985218864327654145510532508558911048524695202752975025586458916199910 - 94725540649082262121958209814551084630567819130440806087048886417460790204900468738466167168540902465688218167201062452886685139166121275159739039918588254360902532281507539555961400246292101993356589992674550411085878125180985300807570180574865383315833931736606620162835114986251333567834506752523043449180 + 36620250943768588199193639246119293349522788422578584239850195580714783211831169958398539672464674224414344249605926063117729831050931933699385987955180908267291631519431477623661662495106171022040410221582651320554367391216383837260677725473503025884701897012105870386933704920213330836889110791497199119085 - 92930304077939281857312355796621891265343960928256823528357628670040460140150105744029980468070547506411740435641263809844090326715810135089989065220781226319476169168823943705553701231639144050053914641406488706598491816262346576332112673959770597659200711273570602587352223997760050650668358835654368125110 + 97506260588454047029809129448640049019420638542331218264940178388634928027033442853593660009716026428203660108956975555766883262080858663993541040240655231233021059618013446833647311894301419714235010198808024651909308519897156974643244689675235474670215084473166413892664702946378381455876024161609811059419 - 63179936909330251127161814782119477653922731507365936293439014089563525909234812322853715526299670621261353082997951356799116623820728099427581722120976805285789315919610221028843155666992088462440701887414972931270230694032690895937588606413191153698922860674536957927107917372170895128713222683391212162424 + 98651216096740003575632190157935215424068285899911798938969073593555594475124529500113521943724964353951336196128197861320820374239096766990975245358937561111392187577329043282906692338588204744697926573518265976034283993810643788422170905394399476507029104193443573772466591278179680916767887488140340531984 - 27958028388417517923531031020545455025108524428454762614670893231225059051049989153788316426506586975657602286668711083746290610851368932615943765392541930229992714005344518055692876646899458093158002843794130586658034413743088255232343634031152741015649004907039787838364967520443327450948035166850927368353 + 89824271251307772719746459687635143798271938332389982960764084071895318089409310028130908172351088775341888125535555180887920527105758344126962706929226985874900749056065668313611727624245049895565524237493656435665889956957791495416160394589171015342326906780967327004981992343804667074947439244843766031346 - 62890479836510057564648180776795579698962495615107094118812347481615356475916365061028062777866819589515712783082389639018980598546053837391921802089118893767017659926420512589093076261139574614799598760388791475637824942087667883815224980651929740098325099384457940427216079642753757684714597309895425322002 + 61258214872390619367542402463095444835262511326380381550620761930346736438649697799053341842560700785521521790923005640955871171165884587336824622501078226030506328759920075703339024046158316558127128759374855889036822746956340973548341248049809119263691823325738085621785646627510899685351947309048207430110 - 35994553990493108103982245652832268373864532207578954702116882101373505399263975444755270547918829229034092302482375728258573460566271478649572901752983166548948157187802786992707774912074044340861087945541960690844299717009046410158618476230133852511515213872463564825521554909323800064004521094935168748264 + 19925108123349266558799701317201230987153381326989790147107964251237109731042200811232610837583445648527202560975034827990794329020499881031828118301865506515892954344226304947142322189104975818008448517819830534722538155096119824997437293144986604457670005067000424471637405643801345954068083608595176709783 - 62059694344751843788562319602606585300215494035037145541623605939209880490038632346322773976252371462599384841723525916928441241981525374093121632694889541109865748465936996594513775139020713528411648938269303172108231073966147572305629829424757202616847244444868353243717595239834197019035494164468749860931 + 42169676405270668223355288286134236728484048912443141821530062640908019457895828717513784461376245944968387249537687085867749934358280060371979808678308645573473192733407344471543251613312338480555220776604305176516158390273251475354256346556471880259618530962104450212445227681313219616807714473298323395334 - 20350945229899262837492845498219622780374197654575284482638994536653715513268358768795337606736528584383804440179407391804821745707854547313240806628001890755997419558434713891069723829252360841925668932021718975747941125000853165945106390322212237948793177603400595162352793145832798752500071301348099057482 + 68336184237997630456122621548404240084466794394936377469669467629678344264644436583336586864955591922396697357302796934290487261215426647057391834697072273049264529664362101521624438912292920790558974157421837118217797351200974622583676590340132712155599389134969980574797563301934040477413966214550233742901 - 25010101030125323572132471544940370607691419958769826500803126665513025913038659443464846293770287299228205942433356682334658528465213269597422573637114645636187318537347120026263650738188179639051772483886907596035649240898517247607289971514364250407445320944174959447258408277913663290626780513646740197686 + 69859175369109790954427771105317991692470784765124980645422278742609462728271746915962494562288061406545768699611106615859994082142348272823025751440370787768506709759788932567700740436824773896383740728310675606764187666648749512283312014798735625529827947218112796496586241841386766802985229444064430200878 - 24872877361807859268467930008855532426402880462176709452352264110631878151209632355437414603558006619452023491311354865149397392864377227221142637500032860842903272478654574139842403663820790073510393196206506783892408617658612420610074756685380082468420428688779866008215107845426084964281021610360286309952 + 62740945917966505510240839968465099372726158606554730194157319348601974085369400963917317698470501674892185284888912845400167032094425343422266539823481739870615610698284070995970889577235234661549039957197282752654446656324901776749421877515882849208308202268388479659651608879174371412281753803571550443909 - 91808233460125179992324555623776233445099543236172112668029173367320092659900296788790538821574480275518805562368290136379898719428315565692556318328512636239176782650592725656024991293617327951046115102837518450864283108888015075719452070211843986102416613654236210049175708880600997024992437732944718122637 + 75415620671446900477671214887011483112542219411457277072082448627305979441328778081936691622706326873339879268119536613885556939427157751444150114086060641690704488448577325133226963300715326148550381008292550256298742171805297147413131103725874018066314754832058864007068509372050954248286705313913278262641 - 68909059960152632110116721058064146268794785819522157928052161410965865790067115008773167958705592971045030828469178976671838584119289179481901877697161389986098603105893339258593084785314752674685366508536195049567923926572462226498648260615354575555462430640604858031099533132281251253435660105037898171394 + 23791016932497373915270531114903629698887176470331085991826837011556637950415557439061832749297581249655079422469306839539176022960655053301251736987209625250483319413575448924993398331405740668311773954526522592010121097050498417928797882645762602276034041180350380880648709073725430217112072886480965221054 - 29890505913957751907132842405618979854283574602640732894036490638090243146253550189345447179054475646564836533380567437622398621484260024972831863629690060033168375532450903322273996716384836090657669415823967283291773438338088475566494412898169569982638475702823249578715206063862651434352302964697105640618 + 57816578711617868066375020095457294923811779118150149662500821362273720787612669147145298878278689631872426794434970763280446097905873456384357806640269860495469042792610743722681314512304359325281834245238061265286298688663772240977024448509012422237587750804441581474119681087874112388266140745253356086364 - 29345911718851136302495671420021172701425314718486979678071595367858244334433445848826990251412973034499653958316674668484536521100420520082691566286290891349052231042288593343879678162255392488938778818033069970214873038921456644317723908928310272194859921494698990793001982977246644539940338884737869273624 + 86261456474288769983190528772178245605490510346071889037775388390289855014341551618967134607747853864385543479011976535103634884642310976371768525025326048470167440514581083695432097791910474134319489779776185099547100681685211523097853205190771607160670635862898267717171057084612929058542845463346166690827 - 37257977592298620128800785325069293761048180791532356505704991569674890253759346307555278860950832118234047254535971169959320268729996896582465334083553748545334794762526748105917818118456681640374842689077980842482760830089015793153958269080551996503363799178700030075676253837103009581087341944219262888461 + 89114616896438286550316539922746655800918093138647224201646325479276895349009248015153497885947627853566256013503721637452658405990866047528599809091388536924230334887763778715842043482714847870841356276681570338177575456770531476042756824685415176702250787669046162093092234421127017605311583785141048928561 - 38118536570648949490949237140652966800867041803283578161124533678829207656052499103663460569134862073013669090607592685566119395232561634777359227843200885453575666528284125912918452323153227900614404878491433229152674203256678918530171157444569115272324812451691505714829096083647880152846330371789099276454 + 77857608435921189103154056407096754776410414488578564603087326339522380450873889558219295069430184222405578334794584260135595765864047605726691566938913000797297995760780545890065113524965073761846515552494381064434946359316038897606692845508751677581350904411455105040146834995333323232081545501885112605811 - 79690015774009574113761277359405908286102274075139800668990431692718398215328085284268802265615621913069565787397454935231226587022571646734056580508484409216591269426195391182124232189533945317465839898545932472579071435402701880742545311889245084134113188934021261743249843640653823892446472851930535482587 + 99290214420279913687174701315207674233739754144385611545422205204246770001548084549388771701102396231037507439763240786302803378225243883943043102630581020428641161432448384521400224890390244500224670675512425925340055732651444019050423235773912592344049067881004728165127532746485417684319401623447670689398 - 56579572947094592535808528554654429303208460221080048409126362363063110899803758531747292664163317776726424293653392371579091456980660118448123271283324077775114060640793175652213187679916363999193689052437302872529504642779798458926305293679491150120977477851823063019976562320564537970556732083865326015841 + 52232173876289558327386884515207430657055405891678630350405920749562783970916494792208379061776375354591921811217955092845479620862200787686736467460635201744714246123416963264681214817822433545437084714904778563269818996459393332955959603550882810914064755847177830324590042616119288663093124803981029855002 - 60959157804029762199386484971573196180455405497226247752368470674344922734607185971599112767079092428396542169876236214317282003182226534370969227888865475165396635457833684190509066380867133660128397927764076324037948130548327200592147169999542143303058169666339242923595227943165991370402877136282021431733 + 56920193629155605329322050737313527483343851914065841024258959646470221423118528390352126456653936807125283455945223610630453241910809773020621064755965733954506163587347014749160071325491373742504671945363480047272471017381913709674226959466531256556248035449411828861175901919504792800434373566177430890339 - 30386402215918794733169970308283778272740409638846948731775070139351464809749206683917715807223540096081114192048344185849821954693977008256619036844022536821196393141283801971840403744460114017460155514650873791473596262489313076544822142730288324885704456605012439585409920946511114572001442700329432234243 + 95981313413021842608827194971097496070321450100623343713262057581801544671147375065460892178014244636722420389887176356254666003012795380853898069622520793522916160560756944192691141640947413409659586744656332654522246791579392672121431560554467420763128954584838549563927218329370051467586463252137696374534 - 77939194066691042002572406970640835527519680914942925652346717666551291763538641954601773455023640893776551708553610295891081619989102585748588220398087756733618209994312792821359393135810449984212361976303056653207402093494626986344394094846587529654860358327586546405903214865739099162938491758868702547755 + 52089833046568419673762640823245621329220414409115019669644097621115413980629290411144964878760245894786272147048116733070008787807631502129507395280674404785427227012548988322801365308136293196686238941595497974398163332034520748323700226729847660842529736115551950666541223275327546662759980647858021000503 - 58653409841934328718983197995116387285782801231210258309045969092900601924198156211642330161178295961094855500124801971772901898820326939904500439939231850229967158851479977632646461545413800751453972684409827926000218815881903901645252192197956313561862498858136051347699574850253093199646960100013610851278 + 83714059028475772058848203681919901688638330013485660019636122910166886716705665865652621587735156519882090199580611166261473962021639931628962198275927447078782522624365008092352660109971560593718119037458876974615784273911851114253208917712685403041484492613894053740106316296161575209306964263298940129520 - 71781219289786532349364200708005378526343865677185157252507686092173179880273475020779292365911138018596735965313105690767018239294879078386004606059944599034404758877139535134239155183656461772893337313288367509045955706978661320082714502861263957651547768425175404945872190891135172812953678733005812295424 + 9264989361334833463825543487206889067395190533985764224079675520410805549872201156623582442483493847988709058405468957423680163337596501994131880709867227093401490837727007440232624304490800449561160800407360301139915987691798656842856642930097294836188560265575965243232480156085273610615519377827952892556 - 60553053145767853554802612236485996683011524472947727291251814167884473818059433101547720499155265911716590756054853551737786690552601106566239364098226315941213605091692325333298973103716580902896793474931063539534403736921377950962508102443853705548877555818156898485135592104904475064427334564073888276606 + 95015886498986001624820938425805035545068694624269653715508746490589794079719068119602934957672331977109937266821077596400190951544404176680354205345588176119661822481206782664491819267476449725130397675472350597183863015088761354675450229394095563154596224867314477515524225698586534080188868528148707927556 - 62670964658929702818415270781042131686035476710693035613346673942339338744428040989539539835751057990504459773159386409188969761187019314636675547119866820866435605330246615350336836539374846630003274556852951968247866786250694012076691171217159625403552176704424909785286159968471267163019128658172612131317 + 1114103790634112923517454782196147155700698085255107393324076344903859460920982631116541120395926479649285340151579675760037322007949943344338708781485952169228181740664397448661064060597032166795756547667311330341474672767717813199279238537056785668197446254253263064889734634521244505976829897725240064299 - 93067415559960188456665187566674161630188428302572053383791744815482497132210740448105523026350445317574554956594812428326148343339722097337834570816441162083507982372315425532253076371297206091082586224816336910715673201544081936479355186478041696034562894028420289514533646910360072209760618021589307545333 + 34899970006786694384344824032648589925126324524601482651861620743157242015953069522725165415683143999743687293475249745603927932376600911518739466105796435272711263862046263427138912683475230107322761979958261170538415376634478295059252825067201506217039986577953525273226226075098484483043494320133329070753 - 81484780782245767981509165809861309600068151527283492136075245392225723145604946799001200580222504250062430388376399311229645390703295475907176296999303972098272069651920347720085290233901941958880703935003166402784900105458598497802163596917690963276401924413291247976421001641480128594413516127306317668476 + 91306003193522190257824576876616542209969975767294205617365070848529550954592310264945785162507143211996717329652654856365858867007717284003238858326292876407832684599777990632076361787756577819591989643355161973760738284131343932928225879531449551855903543749491642541453817680396283566948169414050428454662 - 6780685354472841875846988817253963533428534889185434277506819204247094735566105358031837944343575624848414747309958425021572342509142861021892004290402536223003883554621337421180165581168040094492547053723337255242872425900561814541330018346806295821669408584208311191125545252080620930950525181704449787601 + 70512783840306497539930190143356613806013978142335077967899653500231720349265801563447983265076894761963671860703265875365954004764009631097860271715343568025308027791023940079074983579429919397438160025458021914249084145001417616093568538716821228489148370439644855321342550126191014296847987519508846807041 - 66339742824877819916036821437181797916554565663266653493416163241747171307650351016076729299768394063662043957727767213276002046424240345718522404468938798494268999449676923583959060689167383987445077540823551894581488916892009774759797769242483851658886828362826320975976798722961213106354925446549964919997 + 16935087673416421504521578284962601732394206825583338968048172066867910686645514774464498002873890327378966772064462064343521537877175981793639674283560049681459525877319744887148783855458885435261542706782593731523924429889159113504618605551288342315803722896461985400206251867601535725452047588788689257718 - 56128336581820256169270808810576837804372405550721009335138622471339970633989972396195787012103837252215463333851233587418537639670217125952277021097178821168943924734020991521146114146266317765487140402737150882650473223067927951323308989017826968305900766060775331117183465406987835210786433634285495299236 + 13368446961928366861356813724167190781169177499389931298706744333307056908818961967466958598935889616797092886431244712888105475092862701461369241195583410976909303491476465583335790506829998001235382647799898570775951959555533790014876972718908186125264752497888526968510511165561413846338184786227380126715 - 7680884592759509530602929629489209022046537012344822070709986772384438244262813076652481004610224156356449923097940695233018099586315565666889460107543940009416298099089089956941557664385653654599643937280862484348197491384263225489252115080087029843695774052230482712661333949607967163341425376934368241101 + 75009733922623167916530983893835265220557221718653295016957948392972448684452864945683886401933384046390537191682681840801947887098502948661023400026842129729599188979299018946064951502979860357038272665711827699725600058784146900394808369431304621601141287024668795716986405843098738994522216558388260179733 - 63500528023019741208343054429674504317414890259699298912326420887224277257484209654674741267031589361435693110622621558423375057509043440552137867757174899712543330635986925195800369858743196862187733877367018722919222676596524306297273655720721992212429379792289903313205148354537051818011478037325976014704 + 38223202309739114123210160330335409048512172274387690589975453877213692018538871033322127372487129007737339411103636738893774280291438791542446557606557099157145297694078243756306744662652088441791260570158805752051716484615579365252244269824711162076215114525827071541571223200891980028874446999091787382651 - 93840869161494417661859404247945393080465483430870324348683598750215404104404211057476723294863283540226629333375969359022296898720190281131731546105227763111776046259715000666382708795984806146599562223742142077477377739551482403127571996048256454140066791519571253424923211132063444595707192954216763161896 + 11241633518684288098740163064243995658367088285236142685375809595935677723694165639270360672464270192210679222309387578107351922584996983793708842123708420175255841993056824501504269214721364247625712760014923377569602245233957257150977322093106989179529232312441740563818491865500872030693945850478845570135 - 28972484088393245734758575389789726276836541562348371895269805377395772769334501133777945538012359180442155472521078459474006198957545854289641718850954979367474186454994039502759485222967420870878843107929381049886001075489522581527336040067843751260877172292064477226135404637877414671933781598580923136771 + 100320006923990000923434786261712635863585886807865847950084918641447318232111403834047518426475225286009226560347956327951101680076714902593324261641296593395029233307963225133786772084014963167530486100018582248039281756656242049528374012678043277181892330734711571768607024962012385489320414970184203046862 - 38396387040922244892235710299090199709704484458634544697936302960119441121103352260283093078384318668366085706736430171768722771233689798886912923939845175826039316623585794993949096827695420687121008232159732031439846037698935567790689317533953030497025634681691991206806030522113570871429102073820480443945 + 21160226496435638082596917210056796554398827754465999520724848325573789300373873304427479625791405073229741024375155772851937198726633816575797881002770320084061006810221517637077148710920999031270918375070674200791170289774646084857420847482136043541012267029032354361320958713186242923498698749049457838230 - 18568980123229192556832092048644210853115903475003886252628724079194882681169577081415110785431475787746129018252760109027355813075576562234031398834928543337950227126228657075368144677624623505377286720871645789345840909126233783071529897327150420443228695599714054273238985390329222796604013180147540059760 + 16436934931319940798876329133959262990250401886833712514449102101201102295287345922153058995288728178252713844556643459426046377721723875296314141913388240474712696438331355166065326218526981653488490181699088994989230810485776754073385660102889831474512433771595215173463737863964836504236958677056108471916 - 92431976839323109193606798074885128354245307542509369458165354937166874483507027877880306301472391897233142521102317269355778476486763795934298163849283073739146708177841098935246963642792541061930159997965113954689385574245352959555533045596624370854879605240266623890540780892391674610128788990483576370308 + 51147960183268558736099722744500989680043755314965248752561776756931477345040729790856786011491599660781720377961134804091493752469484953848180614912828810129525471087757573512723553876635271640209244926512307169489459959771186770932965775245908462013310045346289617996984205304052164670126147069918086669795 - 4379881052397803085449279395487237539433333167385257536988491495110323972896177201620348230116639975898114628434087594365598884704010057767365158488083801177234181335216995142957234380709253245283499621036432111641029216141961785479320454282736726491142490239375630437067013646352245005244502420047464660620 + 51272636307517580450256300551031658416804708272075221981078647701795168589974203799959850534783268038461454810948433044742218055190331460417830045131901625497687263447243481355063875507113256685173304247494743133559516130149483164656009999220302253785946632048963021733471081079829225008175295210811933660254 - 91922330397490958790890483173412098721085967404258327244005886809709545318043949204579028787593735911100941975314647583477825729643746751693327881356596352191649780458014810889178957009484857143025102040137448502063061117960810303585723615154671726917242800184604568535045582422123093185975127801958904934947 + 36311694224217209962144088198150724361001885104997221461511914854379370292716575683319244552916787469269907891360869426675165161688690009338443948595127160861087573610081400885845778131233063210883293484042847915195618037455637917982114959599234124541140129720232670390331752830209632072833831740856330055641 - 43404109378723709832604037303701705915747107301331210950537790007402607930443327677416872358634484283586276826711599089610281673284766032857438242400073448319015477622391805872941369870444491222575946482266857219675574748439821305647392150750870090688005683376101400860396320767391684565523262971056066391793 + 53323715303680055584924871049815600790360797262831356029861735558253111208500457336129385215222276328445460874985484085539258268499225670649283294675793054149607579917065339096009817771144775495810692723672364319933096649297129906589785245456669305496148067992349697200334063085977121012937841846875026355511 - 75344575359644259570244624116971796292288442352964224989693162097230760623510626681843473676451144789584867054102434008627124737348917357674544948325978216662831657795842873553941297062957794880895254397761760375305138531148059886550217194700312329304422574697677091120798273480058925779941065706505839076613 + 18394580665154303606897244399422173572156815800111454802214465201575350532885512617703428654320729266141055583422011608808321490554355658679295752690758932104137610387527926861229030356061786053222477049690265812404232210449615306416383715169669754690479159066011443459474697751100965868507059460605280465230 - 37938537248211579066014873923588039106173929162675387994955754734699854807720696568564501955968250515400564498630255469193134873518689629554159722646526612432701694623307303312443263660674072090579213316470105799001911269218484949797875790816705822633042709546819757324448967727638109975532571157925403674284 + 95686152602949063584008456193978131319940528680015102422078194526530263363893676699545136154027190693267845356981463079367131006058586909888208108968693250284429127718405535853708681720397095177863063764443668761431523196448309290012326167732060546836644553692300196039837954232459701699423904285615935765510 - 91783158209760065641550972689561160594137950316863441979723745088183230014782703942306662219913824625043152092393767115632386260834397139364817179698712931470273649253838876870930855015690412226629370963270773416276242068020403684678825362512957536396484786754227689991379605685708559633388344607662573921390 + 33229303800833621177378515293812463218503334287694945474302266731096239726621579579437141577485455150220936927695053535912085901077258283882526718556265217400697793578638043963562729501760129024674620210005382332793278569809237255588328072519790677472281801625599873438188683776048264967075398184820687088336 - 56052820536517623550046811297008395650590365483280612294189320282813622107247105061207542479271344730473157938580291405432943594395186432693056199123779062877726398479475109141482931986812681007766626965842161652551594840809014602528372126271608063262144714899968128314152447187565974889498740842764631676091 + 2012734978969215170779818979939208865122155841059515732711750960584145740164335336290202537189159907526616344491516589627329415627761275582524612859681383070641506666276400814949006590462288410847797659735749224359622877571955430056489239322587871578344535972159813993205825421161372033763297376599958336009 - 22388339167905430483085249742592282048440681015330696243077834037767144789109591616584418052140814094568823080961884914151802863705615508795296248764941035063831923302324940248843635953690775836594704828609651016758371712985431641827526504484644561673618210249787189926765800712457233223507816000391407802897 + 87576423796779468956143320148538021345225479684240149450827821657267104859815735257779872585983613269445857746998623043194333787290634519708840555465702443701182176290397386940747147835878636837196605128919493707717563088396973204857042990963432337334298874264641854265768525018609596646140039773579595672 - 45879007145653026899646790024947973870325856993533877287895715333012280155765053060156562771985680318911034590425674121690068223706749259805090685838344996337455755673601967660536347662570393434573273539159020403050422038044360550881702118555505136512903380892186306833607004971052855816742337645919621655455 + 52933787053754718466536345398233654069352714688245160521885969869086292103327195161832280159107162775160998439178978628595637981896566137181217363081465548164152040951914892956440120459277501526252464482630041464125646381927967250047723585244083282645060636602996841785456791152292747095262664174371336041633 - 61819453850338239238241059679359509001452955425096277897191774104657127244871830046097603306070360973141089157281736722824217819089993890547963301199269114620668070622078272652425771859362891476463529712572621186754273277791110445174710939527721327681812981023752066793690019655559435626354140872007090661151 + 12286774300179914808053460714921509417175134127586064452377557297893498367820618722352541096676495683667655975864271505988472844760489027460981473385686643047477713892642603755669164053601426096332953143130731466709013328802317664931600606997291334158873973690875970845050861145173871511991825675251842543747 - 63973785640578087603672493252437607868370313223201519718411361086593897481619868792054257918180845368902353817831669883489214472154268212042529640936353206431737346083201001593943029444312089479331677166772397854266587943289964196689754992645672328059171654576036332777745439673505160146636679521795789424323 + 23024036113859040766209647137919841701982638470779136704203119466825694913245401023177787047760673191729610763814954086537063398823347595996602227623904183648334749551196201349654493227839978842535503783947762943358331370341382281203012562862267865586902118759964381163374140065504668946172332599788718736932 - 72593258294128703654686209931014531949236579693284274329881362291896689562579086664085011840616372824470344088233506590232303578833603871352657229344170117259395769238926602390352582313479556224403556244567686425404533686537534557247591550978064936090751571490603099598733252502230189490273658630492724928302 + 9382617132306671182518945923552845469542479512416024367884091047108471363323314017169380081186503026467363756330857194702410937339437994529850936568224363770790639783143427047264131443404197655796772638340611982664107606608342962087788871941344311101368641132011962148850149154912532813457717367375102293544 - 62809956951548016289062981700633929135411300135202381881733337603146497552018726179455561924230625060815319516675428290749456591536947244101265187859845213718512963508819345661948322917846132177606980242830403943186695162489040219701841349059561462814756535100111479806305837886881558088070690454514062869260 + 87239282803070187859713761089044416068391028394562581913573300014831933310413797137658399809289204604807491551557214887336443042691421938622918197238608959401403589719340386936876593347336794507243758581049389143935208050938409364686861841202817227976753541940163582037242548461835847824641317028193404720328 - 14177202335140429872479448752219555121317544277476425528406712587996339264103413855882383315134800257125521968531209807482399980741002841548722290635542208564874246718712912376235682722198538976883745683976821897805257618358812594697224150811861489682888066014191699243912466280142953938249599873277199474970 + 57829062485810337372164169630014683556559009111178918090449507865686916703246009020898696239374955031083366632915694530162144571714542611403549215661530276059588227365838137309630968904099354335176049474298990729231606111415592284562572236677237826731249959152711150480153510074209698411059121729105407294917 - 20568852275610186478503774907838459342874837960891684366640488238391705454824928887056132684644533444668367465747676968492024529294466635519524959351529125506068927258359801719951818253747685508068976786531510862202449809302189992106998417980707206353909956466842029941107913159900025097798848123273143429892 + 29579286543479525399946041039527345882786809375400637958563807189502803238316590393799862160626130486725976559084063361318526487173256779404190377692479897066522112690340255445604160507984544259087860523979149460143823718947812940624064404640481373898217975970862282099303206018900405754216372826222569636772 - 36139863578910284026725915724952188348030544825341408646888804873881698074078122732671974935700347803226376935361247567155403767046458616852111252807173945415192079378822264779485578441434294912976099779392344885427230833718618457252873349877991084909632514076381264174786997908205126259322778226916228210030 + 43497544662344813620344746103212973822476954869886819113686314396669312723083509777089052613696193891456649993820537671830668616990595692548736048313713044957087224516416165990621141561109737761401784947884202315114631959153667804125069967522681889192449546361137248607044483391732253524957172649145673939858 - 3768353098946078220394160822531990901172551124518413787866628577108407412954911420423105734474698026320353522654126877460988011341765622068025631340056839433980728071181377944298963335441021211078755692144565387484030916050141842532661221493185232119705623056594976744309592537984340956057121691962831601936 + 9626519181362312963515744203981102312959262669067472375470977331937122304869865390423361210253920640450552667252657835046776792645923715455865479661441408883885126835316334264739518584605633589319816477251061452161968513104856221406448306353229275060774424344382904508324506477924375324648509898968975195029 - 94547850602571092900433592099054794941946474841464542866463215093214364776110982023439677246704422616228954819609965552386064878642058051002880927333819751785199908992334134452448605543664355889337446311059876784045798366219954957686456483905099633215479107191727516393749745116864840474710545102885260611480 + 18307615203715993770028771537138096357798480073099221531027679932735379676978409247499781922014820816477694548503253788270453932167262192358215641818973965798004714601815504886899101382629917339569236122465067461952421455922956945284472071603047971549210268492835235567236276900448828952871098169520978379780 - 23182790883031749005333031843977868468378613078367238644852090620745657498261578318165781585399572106244572191715955857855150548583958829295969100134496975362580285825989488384533293961915455314205350636723041628288515478358633095924008491947189762228402732582605925768573295555098061973280816681148225170607 + 32676792823688415910231487734883359587311736759803064532972509229880229448339982600464046159162365463625119691662293645477488096804441180651725062027580286569980967534290983926402696551793854999873488253360206080410992879154660959887721089898498218315836410763472159741045794011878404740011298208380251983812 - 82067869670391547359618783931755426622078318083204892762605667026519846040256057849341829287655564324204102383798412755640007654458171670287046936798138616663751354904499964279811562782348418684717696480095780260356469759927145834355792852007344387946544291712818600652221522309796383112146614905230739087032 + 46630703077326097980842548980870756039112598854264556931104961642402755737756021443595826777098765316305890783497734327280243571624547208891215953662248953184043611152940987351250417764906840111495695447552660504061307199775149928945719568641110889089324758973803795223955732129180562280075762990308009770132 - 94665053152876035693771729470678859609944470792575957508514498146673534580652142218885418755904861292363529277737379344768827820582484657936904676442755461591178259437977374963332097892779437076761036937399573896266864062654753973272363893539323897716812589017535254093601241108956029146246369193406136508658 + 76139064109232959465648744603122563583531890961839706557011033672589625212683592116246288498014900777040994039289886988875509018844909963371997512523617604053875939142262538030355574366828202522198330879654415964696251587319870980998581508391775476798896738997181360961300544673030477410253836507064597389292 - 58817502425828958406394945196546258211094509187150967650764086735044073913082938391777834708254647750100232737825703322685895209405108257043343439885585344866623318251654541997117125531527884464765838633182541999332008252211666925786431610908430633892395149664446835726048044806526202245736241037939113275278 + 64083090802031795161049720009170398874749654888386864434261856929509884394841813328926503363714533232336188860507671609876537434980175808384254920846607283210706556213599974332879587952883901407534889289583999629575716323316240876426490375319850408250930268589790004716023247442228146338989167304174087191049 - 37745047291170159939481470077435906653192523788363408909941823496659368298941862460632702752178953441885942688717353544141345331235694073582518425445494278550999566840900929527111501650968782705645591288053204586132182776070614656776672778087272099772937023827617633864329816772977247256412200051554475660730 + 74653705706318446463864337727991020311607007903852112562935860167196741085992192729089603170953721545517941889722666262532026079101378510657743827926762570166234110644906400727990197762034219741411771335515257715341237828305152678560907672732657274940962504263054823281218248278983059853879890042162656215080 - 19846016312797738731211136140981693594311089126868873619032237858369813184700562117256006292984983687306963053312177122080670879760649925215434762368825651478832523449539762281457627405707270975360850636783612341023465212119967049049626030577222694953939069076173826695980041212230758350566732200327820113265 + 62762533840968310691663192112197286968566162636775920141711586932634791386543560757701072800254204416414750499465771941684678880679370703050806623109125869563604393431339348109260331596272318509065533674549908896574541797064670173635054996322228262518023498585283313687318813368258722437847007034107157952230 - 2783690563248958312571265315106235583095580776979334485725916847320177872992744719728986534366224657431907891583207108564903794434987883774779492633759159354114418029616221712733825828896235540552978569759738267951641186607261660704975243339820618546434886377140625751450379507666924407671630677935655869872 + 32437296992393766570108760520278447650847761328634564845867248665443001591367070768275455891194142313649902692789673428889479175882305211300713193718154825548330392730272733725379376599003634106531944373599943647593028977925113905995319631847295839416751103389152433383392255184396896395742680981894410586014 - 67068918214002977558815050973866242448059308332824455898252268459696010810905615036310056379596903803514529431881065023711193327212190606167810306149718525468600580683745229978183321074988548966005653689780905742511143100649115160397902870524356284600829604605061500800118410358027515681319225376002422493683 + 26567090200370491374751220506865430096955691081240476365785747889323344588473681095087165539368466737760413066631267557999737974970264302336655400699634913565199699385974197773148368010097792092469296528536714915682672604096003802729267098698851479429316421391272075647084933712926857947119963603618133705326 - 84771511224883070161547283107760584334664039333665578721123725724037231769616832559273662405089828528348902685355228809519072271976319690074059523935158266781825933027921681666426853405916651795507944358108082643942524415320548394059830534923297722781421186056081174838998744775444102746127020548684876331407 + 57557338813553234804483195080826449371064201209071343343082490106909384330712347336512909548511791204481321519025415186663539541430553837415906716753560550890919863710329956943694532402900545842914299813547333146587837118792959389217317040119069792290542638692960362683521492273457977659266064830549484424232 - 69561949677329563991978846295773763871461814331346542958393346158756268692733023318018207438776579203009553569974488896053349496746121608193258597892028401092867450514090124855767364765357492997001220877877664272740154292669069704260652792750047399990547798377191901777528722207673214692191858921579313356470 + 13117094606471506852721360013639523870067766037030406379694171790440106608088431344732929563254693763778473137937750616565989648879392546769754117740406743236757251489400400653818727798640747821273743457117975633797469051330964939566546667282810348461487441896066179490854326120964701869126617387530674077950 - 84701936082090735694047690301295850903053250944708308185929424273427998289226119996888016146920383679847229889074091152610147143791955237376531176432222571669258828111680412852462473380658396671154184942040568777770036357681719177745702989843812573920884442162752406912125403170876752194660520760352348570290 + 46708344998779627196855740268773341604708308032348839007819128089028501816266066653588018234826861659166051222029154556995001897752718485376573371432839637324334135790471518193678369315822051415705995983977238564024631880506175974971974222743395413525850143976997367988276731583808411744552019146131477439097 - 2312230876198278139553587277237449583496926646874730069566577616872447463689680939799856651882979079291260842762291834688460807419207617887873153907764000811409813033277935924669494037253953371945437818292225822137378526856574299014613604333026413847759301222491805880690494464114151013429779999484430124983 + 682034666727289788524464245119876890666033839794925812946701193637672807959638173239523216754911903576519169369838555274685349812763368640002930734182959728938246235857147820429672711180424124592926332912638352900718761781757935020412186188704788947026472488328064489671786330325841297779364749589212794668 - 70371979293890841536749410515340561444883518014589570113860624494182003173909553336412475270148479505325650185431490229050674924015304830073661718506559321070497618931869526391861891794091136521194997068124855336916772808735302587827791142342532519204473345169001881954306019843510179989636986529246234334280 + 62148988355548983041953258736052005177418132897632718140554815203424640210128420667410576957577532401536494887958734109182854868935059887035109286385855012836583129090688545486968003065644339738976453062543975558037344679479394606058150311979125776914343178357632825895909745630138917757591626407968401161625 - 82605229903148128580586814679798853107977480966745419306842995355376844334570348936171901956799609152518278291428898452802966882995858380471145125327199654958715048896404463878077856460574771100316202366189923086594093895797227104245482014828992181908891346432366951766234379117512023391983804354740636815582 + 74968448496605072657741706535485084652167402254265812954685421039278060237843175861439760882294430622459945965609666168685857164350382200878974539561481819979460762370491163983561220355725224043574257452375520359505946415833559127788678260249270708457085880820338401010587252868205702828584585441652194620996 - 38020522091845885545916238610430714338026712548213296838698114195552800203811407221774576750908882744559344263702166428559656141680708524732752800754480913325681550326741298379001341173374756146805998188517092288514660537770620097230309520847839690138238494100910791095129848598284951877247628469245092353926 + 65384944595069068131436799862468192398065005708964958641077475967034104090943886847182260728507278100980278291167898449800963696258988428431443137686487745502205612269512948447152159373507506411910548103547748102070304305008334276453406800186065921826614152700517231468322667252434335221722236436874917528095 - 77977304484877525342053273740556783776260443457677011598087070714227203831631305049542799377120204137470061344731660738135427559130053253505162999571504204648110377548526623311764860031746131573886429123863029963082655701390273029507629281731678692185467729424226785203844926244644678278890162991357743683834 + 62067668632438709523649366169680328866138912404373624602870126212004102592878015629509753179941814672300265450175843811859301315069383891778762665329862812761695307395146067632249232323616198709831423582603401998016817935104093389565703034930296800861946169511918621503623045857367738999302440790005492816762 - 54259479197985590522935319816120357998026009986608723714699095453023555677588563791526427529788474421561093194817028424802666475847067374184732059438163285947017098947212441698950714263724534381365727955009444760733290599650546294679635804438758851619247144677389393834458971049857636704486268786590869255510 + 56534093460581007688326549775120910451790788166266799022405131523498889057974052662291869766992661643013406273526605538485816409020037556990442549481684669068057739296201965595981416073609512728228761214688298780754783152017516707287709316029495248365902666531064939622047818039815385454799348641843214453614 - 51487464672004219167397380159203764885670657972767167491536445317442486109221833275797869102932198744387522057049731861864413501190353661431134539881799980531196652361711222832516699163324355208865573731977383673956478779793235680869087650920024793874322322897261634486404260402666259327242844734475839246777 + 27960568976971644583362397323955745897796424814461089272547720419623024098833292974140951567936853967446123615504443969097043097472126696209452452371124490891082933279257750312659077252170116306898534400508999123938606280904606125241463658451061743206244989538241142397316479511501523640917446185136152959830 - 23891652283987568260979600708514562405654164077542422842465552355728671217919896537044805672196470750021346969207401642223017852855402070092317892803430466133949407915381475078472569488582279613040745295021285115366798891886629778846395595788735291347192912172379600980898405668091214372020909974279058166759 + 79142498313185716246068362753394418051254435899173136933301497659232813674514122325525530044522438675627669805802366826449116931862526827479357540774512105332809813784270148554052931069981692183456753577992950385420573359238457239567626945504193725258870903484508234761100192964775282949043712426268934053545 - 52110546933329236705773894456570141991541908856520325128915814026717822969965438085992140659855757897093796201453983608470080538130609302770192702811327060111972194923512754145396731482687932121059809725390783560403585809316797016532233152483665804547202864982641440009812987642222581160068230243956136424470 + 15250744106355799093924737180374030758587425171652691505763629042359561264047362737794570913647413844120577623471609213537958908497354092371796175053787969850262108893669852264764542950032420932437095236333125773091042488387233443539641755330925732083320486568110193579161959025921623522275480485673008719796 - 44622100117435802892653716080735092851641239410243658383506231986344388692061909130299453808279329943503675941890664533405605865431067444034104978885649804714090407621655449028777049839649966757947337270524073640481403245815237119074320375333798082866450524745816140329871105384080079725755836690957731049576 + 3521774424756034528221038943568303752651962036911981522967776677313221278034740947419019990685113943676861022373545283368833561283679756011700530288865975847024712581193719726989466146841096177348450104745183082076519600593269013768757904345925000490418208019890585862460552895092576539747300966809305620874 - 82558822848573300470724696410791205946112476867365037951660070046641882753592477687549394203610785672262662384382725033246905066204547465418879066650432416293938683069538711261770216966107189710318131558996495646905608202349636214008048156926149674402260919051646637718031228397317178938178923690653774307481 + 70976002543370810365886938011658399185606126035886839647112470954835433991954425744729022137779770516829941784943351792986190477860195537823954848153345523769618173268856995611691840673806345684847862231673282386723533982400523167451633483094629699777394852571789355123237126006588257341729892992231821894616 - 73897632420417481304393157698910842467232232693472064393563046224094693240343911735397699015533976989558388804722225470961297340752120871781536913760689451543260172527904763187874977393661016106694625892333307693434682332135100544980234797753290465492241903725089975419670744141296371376414925953672375379081 + 21354792530022704023662548588211397912122128431037073512953283664197251885901806462518721526676774826216506145596842055686569964028525281716768252313483003070131303238171195528340162116458003343847219647868991180552391538223499169826614947712440516608233739853553370844441132437007545337934021967502772271144 - 61464114868871124599786950025859868162871637726212811157551840348963635763534004247680694662167253193334911039757022064012473074399018668466073122594299136075216430478121185423785842392849057381965641245824478037510846018059045395404958009668458240159712270419396829997597707201343497393807177817315941745233 + 46441267571798537984935813214051039074285367086742594422091088239392505520666285857406899009511407027183718878357093626979191947921987301667466525257254122071728654375212502065639881998340201706655382569707347675640119710920643328037898351689681103883712730564999240152579681014026388198988289809491247657981 - 82987254729900465883906796538103939015387748736770331946472650123168061996862638355512950072164538380760959712200552671912629545435124099372763956055471336399025502973363565554281115078633269063952051405592896406747001059701784558993978004898434438169580212672338445055245344324072691724366450695194992598693 + 96875668581306694661729032827891106828580836829703519004072861720568350631033660118847692017999163130439493359255628731991620875524198960149957493510419932765328245385469908260410999308644740583104803191051744111002886262442870978227962234785524467888471999918245199665780698169224066597355562436352881086130 - 29948829865539118963410172506684811479459672185613159209418908732929219043628427249790742468071937634770967541111612570315540199410290058252452519997156676156385004080593331942569738450805617600994904207802395195200101707436517656099511129913312283507841496946252517472085211191864170199632238051545804026048 + 61342853004840242298308686200850034749557891864747437992476989478847612359127317384484131800753796398783144488213073847682268914640487428121425801693473059998426881687887164556389837476975824872109762332808384988674710754085863670096211082107284915445741639861406982484062393516450696414008347120351576187097 - 12124870479154312772353436301890081025651988035529747864338620334293513100796001860146858133191801943081295319877792084426306668537520477275539723925587423270146656622742859391946632743093834061266602214899824871260380066444857886792751566590343297657694157195754787013843577450039503290253739282996688026638 + 2030264011544825449605996568443156914184453375930219780211472855678596001018782003516926997330711421269149585214899911729757951801695611304461497735695121753803470806149263713484234488834101702952132283041791206225689132315478267744747901624053071423327453300309471152231442530914362956677246672671001516512 - 92434681152430848671671236238621488729438799226223923040300592669863869170801267406827058115782062746500850988824350102606773493807222992148668580025710564757981642316889830190234085144945096284305241177143877289431245692938623094831369428568856239716275501290595990040949507985021811838671912697641806546689 + 85801631979756511240333964957157343079809539800775193842542918149726368624802750193978906236262689281148350289637527082711065701310714773129506995743735057137237058633564087639133024339191996431043284945023763117320752714135591931607118092209889554159881455081209010028018775590216307333949391610045162674533 - 75540881807425088097198579093361123953171722054384633412655389824641728550394208657976011149529520888805723198391002191158514181607453438779867796623821469218200844378808333037920560824668560366602199527957669046921033823395785754796274187952145245821503055893714865085015506585780034046897602472859794134384 + 24384958748608836570670347900348484825532399796119382334465527352670574781417643275939567221797815224426611066361767920782776747936742530027281868682346430742269497505715759067265087196885192848869326246780442579506355692014466809807248858260170116666000134110342060049057848184964215032541199736767980399816 - 5129342463401582783159341280339403180665661367157028112526066743774809930258427908184974224567114837648772711789304468211027727781076826363207529941703901433719650612113142480840313152050067787820381712567977542957301840481259652410910623707639868123028060340722851250138504397839143931799241210776136184504 + 10961626692034526102259283210451566974396601292692050782199017721187768849657354707503095285114719891931376658541413474161037186902173111007578126467651162437501847458054623322857654037154799014809058108089259025055847066635982979737910282382264073921782375742886892507968431780771536817879251089080120000577 - 18939759269823365690379401855689990905861363473377363232092949767065798547695842643171683502314494197376954751231241619396698976144713240846872256526027488219593060283607788051776705813924748097332150604832130099067883064111978832717029623032585441317567028708162674590956829105171448333344467781227583020533 + 22858963911885166224059395632198681982428014144762350252906159081306238137683358016019243802323604098442335592892429789423435782673025712464644589859920751143815094010993947950659196310445479945277431296536952414201128790501038123595875473063733805898330688790571241416249628668418496774167650812120198520786 - 58293709024263061937199493519852315382779342954379989702094570528539238261400682802736007025614835466621799377920418650668726936222894309200616030784901069631013904923932692101671519609808692217859246763845000931740872214152633486229699291272324678426747940552289374971347603144925949178310482080617745567271 + 27122262440006539192102747249818962384640909839165414014290348369548204292783383692075313831172621577231805320614353707295141182204658313729295533697797656296783307617266036890993954371837277551311609120471871061199155827050487292532129321724240401627698269277159630482300931583788400097854466099695157375566 - 76915086027679700408777330412500518769298947803187363022514029127782100015894067980969903089011513398448140405051057575280060790722941993202706155747972588482746827218246024600139306396667954611454729813127148896395730765992228824633279960377667498091661510340134988993718476016401256458232083854457724594703 + 47193721207228795059110847180421646537085667132839048502205691989167091757664657451151014683363877752717702425855225672583198028188273730642421886072870090409365361363225796807659339109481937938210502587601694381448303498417085423531838518091466217391576296291443736015555493608566463322483218047670240252193 - 58088856560436875526469206424441398148413179492624223546370040175524111771410849883777962952963654255671041549041344887271723887535719648237062587801392310190635901381436965047333357802789276649742901124891149750059812905221121564019744725319586006988059151505560048270755138039094229209343997264904655954845 + 47916777430098366445279074889272711432590258415463356118444124955095145855219689059557297771585615058542350042770687982342503959681878250170924458160846085659445028732287670899358236212428807827294586408387272780265414846126246229544188098773677361259581782212033183472688862546172726404368941874125744143062 - 56716021252420646209983821445512215640561841410984442091035894159849934068338386371262582497522730555723182231090539472204808726789635767070544610652470859979479826974880734201112427699948550629382297424059255895479643039722015324357437510232769972077978216636556834046313809989043782998240568786084013065678 + 58997381729124888082616464152767953261802808994251296771949285040984897502893644835427230732518726814572520143133615441947901754732234157644285297495749620339664655590532746989250107908050778762781337863233732942476207355463524312282460972971793287398908982597170448999793556212998831380306129977458721500641 - 4540186635519475774794317225271010411072752052252193650839681377660718651402012717645562291415602437733057008950086527729511861449460645408602156406761793719320956564883342872626536480597094466623690158909090792394762918454444380859694303025938917945654317792521667180962715338136896100559930127856395348146 + 23798826764222664604695894129872149544605598190152329945258114766906430404000947531989657317940470701125462296422697431795992434291081872632883112337371545828917022449875228018019175002157669668035707792048381844592954219676947588201200426132512591240588167761143897820721944162417120507632010002425576344541 - 54115649270092464787357255339342907995124374393480176331545883558571581064996366747668592872306074169667073720845971869740423502598157720902667715899822156521971888707545997809389564587376917503341732692443586955071374125868178759177812858054620114938250762589905252883853421197974509139034583368318412566432 + 65913838679258011235526677115447926459151122207485164179915875174146788557712981016174036802188571628106717532473916955925422432681436614783507213237221299441130451743174131349475431728447984530931649668318325325807498334987824687859522895088751259622603985342629116815245921504976147790615418661991241156563 - 4181108905556690331624582562817879161988364716821467658731945926799950714093431169742457649794163627813333201530539849916793295801580156092691589179490434488247049005264110165285331081606448264654901725479032283154080817358749919402675095080774597088398373423398570114138396879531371642409213866255404596565 + 68591097533767506799394988611971819185102062725220063597224256764320196140342493522699183955965653311727922692738246927704540476842561228595854897007692313258196962106188693435482731411241940418807816342406578576590015101239727172847899145190634327055747785095511209735254397565697280800010346087935833108582 - 45631081626302531307168652868374267347765981778243475210789911362425093938229321798984319625053479931372267718517934716630086789938611336216989012159808659797581354946461982352760942732825256962813427996001121693266157603023840797455792570326300584309919590206591239627918517142922887531129331324603496683171 + 46115465501406632962934697466580603749721560137395979148108032938098159856141146507506520333978325910638054435174962734727613644203662164787482200393700000126904900024918606280545698495009494253168182334658925641192440964862109587422706173145791727518841206212360581305065515979620651528055950944853137365645 - 40936471243068624461735318393865650309459061803916364079583555982229736852197214176727116093950414759030814885601364589453596996391550113374496015303863934885276482291536939388582031924030517401889086611354938680360997067469382067034893378853954601433044931180510538333543907010325554199042153290952762949927 + 68674934401795946014393981757936573324400260120867189005806601260031715512727326883435750586100758772703159264640845738305582721693482512746098290285513959967256381645730273245713122638580390119680306855037216083022379673557141686954003274901199098658327462523058995958666981839796480327666017945384612980591 - 89778205305954837308093101331258781876759407143705961086612013373455480100289875405667063485568345262891328877594764108163054229999717425186337082023077059620110122441881137782004001477715835150541941718312007367234865671571370488494045684471602487505870280117058572319305627913950971529586598787753129536822 + 63621786833109026296801322245997873868717430560525798260538849976441364826213686123192316416669123468498265597797251934292405525851482164090661839960318252957516727246399000948764726602513742871914847386896035798096892990455981512397133704220976332915260798773346277312172188294778868293384106924527510460429 - 1295161226513504167867643681131543192872306135825010759857856197180218740348590677566310107602662315248859540491212164595051195095175294389336316967561353746305152386508569649653313730374414834062491532077177754788629483859130972049117106833121601183579631906344247920546590814722384842981504144117519885930 + 36079676726265235393866618864748656128690702391532858420204887891741288749379656349061192682626421702411141878149500728517792613339292805065164845735468705259180962756238244607203044786181586280658039512808488253530681808772456933187757821138164365869590940769925506936385134268289058385358927346890793047864 - 34752675208523410864212501706295011490234935728835133925514119139791495324749420085676212272498133382529765888688333346385516136615338242288113273789780701477640153182919661032448484771564381345121126239441392580395059900119754919034267098523798620864712078023062872277321463926902462427397895708904225042928 + 72043628152799566487358522254092613056412953019663953547299153092454383764506451099281972879571219930436220139768735537957155191225264222555866089711843230328597597675239566451979274538059504399933793216551330052581892016609933567328872207392746831532128275948114443376564116570151788686264308239635898417575 - 65638280954216880332998839339252498240344751941626202620659246099839945762624659088692178634338271721541041579401205168148462014214403772704581703231153957241053469513355053328789029738704753314242349068682059488594284121888694331532652526737460872161109520092712341526512909532689056861448171619433888795627 + 61074205641346128310654150350506350415486525051125880512721723853105261334278133475977148006035482144437052814741697053025137140393514499870862972767354656619210797465436085017136723292639376388399878098752883398548543268780814227014500244887556761749583458149474271312649220880112430789159366602018970150042 - 25546326887869416196305571397436496954112306204679487707048013317650977940305017095401817796951485874125485185489979718646093344610768651998594773454469228933700774673786195454397961200632097112442736090291567219739392946602823204572522082408172908958207757947824647399279622893963406407541660265363506196591 + 53372410070076524798950710089694289916733276062877648156867433918124238320704597221129210504159496787446654576262543947699915509305447985300064576581403126071087052350060390300370729874135031405417964343514149639925636080875189665184746465704936559165739896433608893210168101157616262499320482168461957289667 - 30422803383970205758377987417218462089461583337863453824840575641453067612611842548141963200326309833846820113891902135240624289950265433593972625979580916576801108253132355009636696971228899048297095029355052692965710016352000386427528741721082316447177822962571637721138723569936216621043134038875753574382 + 71787940778595582537278956784825836657928255205813888139815587009348734108421962183159725116136938715861193274969205080578195575641020286211327010183525430228290973700669438138937323889086856469474485965118699691671295853855646011482897731501678190322239150889457435493820860610173114429059768188208956174019 - 68588774418846824026075347074701520165177807217642669445383888222185702764812385739972132856502842926525866902531526512381859508484027983555727244796607946708334007846660418718718902488052816278672382346124129777753620336520285362609303072557343054616215122712449573523551828858709889989221393164026568690397 + 26904510719197106384891223721870387633022388846476992653652285927508843345175956939882022542492413581848158723900676489746528027246013891821220227661172926170102644802435968736540655585261609301228761093584570693065679798377281519904345674947823221361589871588907982576200868592237848484030041742079130414801 - 14583012578230579919212651098878718289185414426839270534677253856992089558448004913221113780032489389336404104060497449483455661568835260780472145848780437525107760742686850621585273515673116908760009199985762345649409075826088927289872260507897314658887553597047156556807237866457737561706803083313717105914 + 58248199425080325185568644504439776615282400784662466000536546398868275015343050834726494875181721083860800014927228366596112450886957434179625506835860077202061232907245136998895650892151126814122830938353847106235253316136119432319405049457663636077308426188227514767927231166563322725771604310168873340154 - 87072789976862077590260629123343008996647517325518842779241265200284308557372191510097929798002478161718869369587507584738631193924696337227149745988547271098801114579845872672146461536736946960181312036433053890558478780114941158921137697998339399824390361388041699235417154835263047174659835463720710831616 + 45626971347283962987435838767623496006479852691674799455766304653926003566752721478768149746085745453927737170334259903234930067037492436824772496187691224253859265326103080743265465035201397356958018636515445889350558274727431513236885529096613726409851788456977742179402008179565700410374379192505782298500 - 74592401327237348205132503246590270557551499937523811457398159299621433073061836945092364178303351291606709287884184680532272868939784285008148920359873235456166966958897835906977455951169993249934270433478995852846853365483858006698512515330522783264019614382564059660659067434270575101239224953994859173356 + 97324082930804152639845572473743009845813875955927422546196808071300372096397628349701725836488975103948055501837545296810662980950296312830272189649106120053469150351770636142850008830867628641895928192833683094143250533412692605626547524175688652050357194087726494378467747879469510843502345282370295588859 - 2258051368382920966139781937640995075390142010181207901689696701855976965997508313055657062261606845071990697112536367765269166257264697176361820143407781847830855279948778082022405663702564425631919180038467726813235460488581113048639399368112079533469721122352983709293621313284795302250914487561872306501 + 25831291121538818753924177200816713436142768221040280240568010448608407785308507850991309075853333217596156537365326293182927202081220271182297680514415436690640244544305861872402348274676361025801850715781742366791347659925674640277143991309141248320559021735088556452883715696842555268478702952478245686399 - 47294427191262196213508589588915163397902040021560114982313477584554595115511591712501144985436982821479742945471129356788597110939028650902314805674397463104080758790745734205786162405115220925337771253688900219995781867222178937495182923511247958583576454292008763434571765213812941607539913201436717469871 + 50790332244327127831537753770194583499210412418713580658118713508597345151104967384257732485645274844585369767785272842835356066155244426279011167141893267159144961246934568525443104105934457746472822440386593347608415367686671925012261985570774335803691068207011554342195120120822343185738962515389882803650 - 87576073209609613397431769565376117076174321294168323091691140834422391524663875554138805501985638317750284398829768203941231082128360738063763435223369818422301971098952471816536405779650920322184455577733247923447571874511794894304383969341403744049474703033251609334913790114459090187503442986021139228104 + 18249835660392462139784186635069528508612321948088795236048809183556808089708824404120858615496430515692596011084879327487640443115515871432633128953425170793977532916672961104456365558898192189536511191876776650702664601247842059910835338120652914981626322440700576286977345360504328721197758116874687285101 - 53532972276394338052944028132892839903236060114682364640857973612992368138655227811085737458006971801390382834695833581634781907549555828978362904903420846737058469090640673375895488284368353258933201014829664710614302258574877334477194164869704816211959981682871005565309849734569362667542567218727040020223 + 80669067118112857721270237674920518192502090719394570218541248413008160982359380010874135700486656236387457926645079316905625980736108176209310512979268256930411205300955808183677230447618760345078077034028994304812689171491709027661451557984773838052103057787216729391554608568600815810747400043258554854941 - 65588478325995530726906881381076036056309800992689552347224093108156791620749013924832861095173729140059501755184544863447335555862130904626003015647435114844830320805104309051461360690056659399097990227576615411253200431564410784087351315242243183177325303776402373716798906596887057433836113532792818980492 + 64645721313540941103100921557328219056977556419942808131249243469898554600829440121234572322660633271603618314028814831280063349479695651719281079531597126937363144982811297705537063080997156491332757072619407005508058283793367561132648111499051319185447606601848535401242425231347724221358083091181220529696 - 33498552547994991046629946974263835733696882413935740043616859115857157044315031089814063139363292495759659813396174724984399951009451295571123676124599092209055409250585658128347445096394579358423709692532651828262352464810980849133962556965427757221370606569728650670881819833496720455107115660145403791286 + 90202686630887141001230655350474612054083283988455598328629640556103104283446010774444659773118158143540233781623311336751065359999023477354743920912562451040055531977867008936620007627436701983512363280332430559616213472825625867270387033154429330916419710406057119547948119762684384216302157388244548591944 - 7238306595712503789470327794049507816665807341124616917695511670748136720725483287741446477305317001432110508917469529994977574047452252573709920524790473657730691046085793093247586768962798951220291813133061883459049177766247193213667357936145175533818161804252846484505668657451702113538009970673606628011 + 3199594930618815620696519536396210677685122716030262735224572376002723015933909704188342017639935730394853769720469563610722415722905255191886229889330514096442611101015942374994552303308759796289081739948678889095229263116751099074485948416022003395025387773950653770636862543594870965787073023330979113336 - 65007593333037846153319952181301230292937445839079704461326983993141210480458594257544922890167804495702299649692446303125955359368403296225475400933832378236512981912858526593101080718758512549355559511986154901323662342388966534817680690089679746263161183231020912589243271034981129943180584117551671014689 + 15597500579286709373820738717133539036163880839376751957111258022626478060211149308469831738502918710215715076152531183053660341024731263280035522442099581854558667116870545666102979386435230593572150225780762340112981087667935475225505386859920333326709891296020762597139932383358478203318636569341920137757 - 91438752332522240353149026054003137955992504531297608620075439584159528344634636777153154074886368388812929983317598577312720989971864917295716581425471392100515641438552944823560523075903164643886475042563632525999757715063613293720704210696278445235189134274229310393595892381771006667293074903042411643042 + 61599989789463908571184523086912544477986831281639441461162069859295186261909852074550568245271825759152149958766243864449891780793529441506286742421067759963251304503341606899658101579788442913186059901298898745563243680409583813633817756251111789941733734787621687523032418082335039197749359101825051477717 - 36025174577980922530781780396743216630727929407399389228894590875349388028157526302251043427904711108049263388253481052959659871623550534494333854479413156130122407244438984198694875220505448345281708953651265152601009347917011621412119732176872507387242819945384645319296448512998156522508589121438115918127 + 72463432699121975079392595160566607070786161205552991241933185639045905935146591523555283904473822201451379637659648110274597289217459388020537080925156394519467502647234583099050162981077325609969974677250278083679386491193911402072526342642470177182619218139839931509783651365068239509832675494450460831737 - 74166709318762873271863256266713147715760822024093896900477255997615149633022474068855376185237871755627516816027340277669283935144639464851573582505258380095030625559151201195142453809756446961289750243791271558509814279553260418092996414505480596651776946877469356137891894724341551031898996985635676396484 + 29652490227498983783000364904485389985498947089934312968833908314410665922691882614608327981370175363451995864008461060570736361206103968779635501941463699180299160548462312200764384570839866696586147154641528214110971381378987443706329097139080740580023194060285597721460209988348554944534424988082258548228 - 69695032529161810012109932928916558814370574767557113911623302492000900258538771749758152912760453581449855068235401788899797025271712580467524531857487106750024444895369766947162335305901624424068969608492122396355851190827360973815472014276255107797278902834519087847065445429643687873248024406916735085404 + 75342090053000923363032912259700397696413447346118260870839764193835559590756961985956899300727144214447122651870697194991089876225828977856934962953547136760132198296249078412489713922100754169526860360207554459738751265775294027121077616967037742172476744584626886785271587258531997088708888838468191720948 - 7916072094984906847639775164491947163029583393452997815169476477264976670166952764377394755709054254685211849196852277437812825346148783856049109816020620645155001442015467801908376310992323825279881082097957356644543394332266818772710561519457340921839132880909511116505667225871094621570792437090487579223 + 71068842102957134338216743957888304454898858971022467214263297260878667674601131242666262027921446081957300593766124853691137104409007936843124960464324746528867858874122555092054974469830239276386333273106594885051067538564655663960303437022641216999554342234181545813636928277582462957119632201013659873965 - 27109872432244750806398799745245359325388098723143686126349557374422328918645735588676377353571705855191789680709216803282049592248395958919574168887040893097405715939709124080728471208884237315856987520437250140267577570424833093831784405506447858163742137352756225179572783199233139690364840886251522606328 + 823617127528994455476029902729921190299697939263584439050893973142363809164776972127326171283019646040024352238274219438053701427148955955457499556370760513497885521363506840548728307424253294938972831511650339104763567829417676484024204978300637896676949973158314385305583113136123206754562660299392296044 - 74833350827704654354599377281948751499720468578197082285671889298981598328106655010037485961256707381342366462415723508650229310438246491711033721976999051919363182398553688151447366503589574814675994987639389916090320692615833927375496771316379646169800947521649225611920544648172558448475511918861917823675 + 5490324876514091461690775973624442003045775058392232176499411030452645366967644641721292461941606410573269977583405748610474921252503306936105067029172461310325543340478554069712393963927742153598088352646366780549143560244936288175501041688000011115945451235502505014044975014263860980176306715224100318961 - 34566441076190455997568327495011378468480972085724655678675485675511611967987263742463787959086546718827749423084731931759155100792416849502405472746703397936089153541334343499649031151169090234545382393529636252727280583254002898518274268840831708306299709593996129705022323802298832216411338492015818686492 + 97283995859459539665939641839787433905197309709598403683842557176270961195238559381894023676930699112409510164318843669004066590706384118318421720750138144634923038377407382054443377371062603597845862873647995250823756494182160343149716046317782262915436621810122287713863210109326450725583694800776341858047 - 62152725425367653742845721706553152474035057137924682139341382879955754382243374362969262798369778987368103520176237520820865966267523167351237919895601007132783085680209101171625110867200937027966289346659010275258659689571267665819143831632927011743588126908028848435115965914435248319302869054036981289014 + 22032505290286482574215729140601433233239357670152263820104354377511426406413064304287753922085298804210572343015698599343782595519065774213912705794682605561763938059936786078684051890363742723515627982778430472429558461462811312447582341651709000002115529753992350072151594497451705421882919262132755863396 - 34418121628023466613666366556177508541118243582609790990449109301563307768012969858298355832810629606651308120676300449301419431190759540962708879029943839408476554882923887535462334917282827768484692688313360151571563677194565779204827004407690427258587120499932270901605840476035275626257033480440098281566 + 28419118993859704713192669406764375477989782612706560083371343214076402835532281263440315182165679655848665893520333829713832609647375231612290340855505177383733427205411879764344736967110073709480102544691739512570559482644552666742982433007043256405012531748457353047287187037951764266193985891537016333645 - 85682676785526507552519589916479800144115195762506104141730383409108359914137864764362551515857416095347987286449265105888437469143409352013238348569953185186598677497917384467899189099925712732271550808162490694035023650560520492197271709874940181738576103460642910246245045931690630603888911549136516617646 + 27303582953936009898143217022384834661545100723329778579681699442972922568698202574640892005834750312315045637582613922180590420745674465006199481394900326248257362845847312199774185351027430341381483450585389656042055323067494603121011325623953661507248748489001251295874198192573120065680473244714818117865 - 2050990117429515027682929230489674861617650270927413536748786201272463130280186538623512612979180210898995565234940214498764315510705568349682324826127580528998485329885046890357461782105323936408846148748226843170000967042626461046526171217109791762070234203351230081574990934608399534249473710308040701537 + 56959425106387899678516929145491708083867232614687629148466185827902579500969268643408719508279862914567267325235487899756079026816218738906264913165473708135965105961431059613224628055020672828721675957563451171802071718009271922426508293468253306299192164213762662609410405919708349371592245024228707374851 - 33093535271994325216103803676401607638233204738973636895592832292839620879410140808309829247074563419000659581369920586460424272713236455339454979881038705607946660139811304149293439023738770737039765948449495244796796936520401063403889406203127321789862715496204795763097485203413794319722811398557454729245 + 64878997863718219464673723220045407674561275222396308317324333740195712191817824981300062383705044400522487156131061376809583226694418562085364906203571084328722723382531292586953969871214756311747499192288304632142804428973242592329740448874473262205355770291281108396505079033798866633231801478678730721062 - 6040110782940977154794674617333401370376324032997658763318770208423025676921716324522723025107180165424035958120558248999444603992581384513849095100581204957114585365355336317880984134162882685009594422969831043675596746749204997204646954648239837027356807891777838064920002061954438875675043630329379686281 + 36895865935257938957577761428007808968579639133224485329696246285767131095700081712454660389099159983139023456136537832900665612160275476474007895776557564008434676865954416518126359978895630828129675216688110228851754685114694010072985915348918678216083301459193611453503979772201970586740995889492879237994 - 45118058848538899539514831520787092197472894647762932502320313410123298184872236691739115721636170522900404344278225606357632798989526224062106336576036772491284668359316650283530408597415531733756607758640544554061095997722501994827240492509821119700827256323424759850801841230929913517999579531290919347661 + 64589834826765623951220584830551046230008725546369391774076267354712431240117467328509123955308201703098029393701605054982344987552523245782335244192746089049229757555449310401045658041238986294655447804389122864877218228853132032699518154775050138773106748194559678754058787957808594763881237239645931744826 - 81487344073213948844190900042381627112789161612926255699306051387625069924845450921551828054778879783703262478100504319187717633204690639413249647752558160056288692616996610725853027105042878302394660721051148481025370033625866315806308077537164504721289646045302269108273422064664948478317175244183970209357 + 16039255549603912334575269193873526930968411452972931159191055147455178138374042043650413456691766420392296013185096119579520096888802198581101072765470689401586001814391328314991496259494992341665260335757365720739089088185081353796826499616045288124758368578876686150255703472150004081883969423988331867681 - 57037764864069767413406458071743494336957859049090940277651661686255511368666733116049436343694538963767467835753860647815985252627675614772244183123313687567691964903330863257915716409089739295210557520022537926153321464598277512866195119614727662752310306260220142566922516017960540889400118008610856600634 + 46118146835011208876603078407260058809316437852884300352389571637283571703007662668516272080643695799520686690439388759198161478139762534722355927133669652892098010616987312152583225424357699519422944556448268397281430789710742635588782287199415989041293395599312743087263667377423096692516212092192978265270 - 39056664908292191442682533131261062485292980392450051260376079352047402893066955065905811181695655253810765676975452262753628905460265669105854040204828455552274045521972953961883858830396908372125035304439847689543841994076212898591568346766875537031830621068365066016815915457439462511398378802717827163930 + 92902001715961611592605123517462548617030038243323708976838545642224452457124967197613585367839216576521449575528297761372560747574260441282058856092955661102673347108341831474145154951024605512719340877155175622572367695422288478592875503979735827091576662728061902042618021810505058411303233495686060330958 - 90503030597905445445674308856040898487061161203013943782248483411758458018557693462211450832369595291925804527385956238749949732368335692725530165710731931150029407803426208911317132574502680456018032926188807438066447205889326497201358209209966048900047794242347734941455778288799899378557037038496350017434 + 64800382679356787327312582041318041802883346870634013486067227280614441252910771087576404314428154004002013146777245644124216423193088416644138689061968997596969234328682248466957539129613059597974994211144794512729467664151467816750258568678106271851870721111349831264747706742730683645267285621743850546043 - 2572775843215978868116531658288761079394205198039722591243687440021840432761184081707677500189970633238343189283791100011428916321827120822442025568992159260366398656588080927342816321180059622150692654143504011600920084836731977321577951197121695462208949699433586880500806083035261424705056715145571630979 + 52241655404667079221761450411875062301864442811176474060867344138875682963609679696757430398557377051077036663103512267306981579822128925748532215365799479914050563391596875978692957727883526622241984163749482634789722828346522034541667432034035952290647030466390681674976973184333729312586204507330144837196 - 48059213836354425781916967577606157901690862274174406276736875374040506963423911194719282865770662262116778308430984128780392068259832147264251085196833907781723097163776089742911388842648833204069618752790615152281349081220597379970121418600312064346212560834138487981060407097822558802956653108834159773603 + 96832517589555504106689757063053022847161128947151229511250661312911365389855704203623638590986280853818979194783682692678046413814614810477384929489901705808505298222318691397507312458483070599287962566471781791930144372813776889793659742004177940197821018116623735269463538172126048233315106601214144949810 - 79590294479535497582160087445872588538858994968343709037390904709015488435860011751732352100621000431054184286776384213028424680120710179763421260648636848447094963209608240954346575459229522299573854449138194905408336546710329803183364957012965561578216380974669844906497640491411109834314778103962822568119 + 21203704781048285621474591239833404176234937361574724670720341564926422594161854402502694888605851954222412139393066319339860863674888877657286880738428354370076527683386527578967459691668519078011750488820203990413469222149816039676497821536601765466413557937352715822742998010799193299932095983969522866125 - 5580928087748377109592052170957061000297523380274443493382233524157209147916488847418498185795266529063725604788255820741994627008731988603640506865198762589684232236543311457163958476828794597126382696890115870407842261714197471099737815120052721429710073868612707643366162680446811562884028540125989534721 + 12454806076146852860091301609746129999715668573371501472810837937391210170068583099572477329467033134304348442651043832283435111667707751286541371970559886561936867931168472253166298698394399205265043882706653966388767747889321221908534960488719467134239902989014225661426400693598235320609899932814931940500 - 38729596840827068864626305358505968594606962714369340519218103281765292727289552811861391468106692838273330785068388104555128235026121488168426958062081784975637304538976469084186425096779994171966838622731435064406555820149179220623520592904350264815573186057977696269598773009347682993630132851543869498924 + 3375160568295910055428435329391721448009551099275894473845762006966146511067852118541974817590108502257478300673090465253694291398186718720422512987351179414115568675112748458003940721509524123051611647174048789120759003501592401850160175331035419140293273181346058478913652612808968910729113698016494058594 - 73140890969050195895127675865893668336233182712320138420813670166004644820535818688183152296005432888936241943023314756549181711591525626740252190203668627992715389038923388347982406659419523164446623509054763930386099428361397812851463504219217061608545494649983391468930153104634317599255954602726746740222 + 34677399637555220717034619462688167515608938115814444772860960592226827886816152556116882731396989135846672960675741517420507410157439345398350571295690792383802443718662869350321173692741432049961098389319511069028990515824544842022010240606707097922471697698514605389379215126404084179005374441035064990086 - 57552413766771738983539716273207054096119792139604188623121840789130953151634759434518727049814769356648711892589557266090642972724648376166699477215737404715055023573060467090917067128362001432520519161659872811847549552813636342053118727041693689739355193131522416492441925668407317611051985751109621497408 + 74188742711238340402526256996996849712957221808534735227888516605580397801158778073819713896736910436381399144897091134723013680044081675489614181407366924992817579553544630085247048584015783745492393302765287415658301094386775583533811374620250731674008682584405318472907695276756332845560896699662531266687 - 23154187139219802567072210595828810001303178702504618130578515848820245657567929320364780755718616309954997537435482533608511839502510143662592759385186393831300887108660649530848255278850532036967965649879012825957161220318267866991048170998947459505358114435514496080485910815470029794698185248332391087990 + 53895386207022836626854646215712775444948885946868348329573967034085637890496755987218035644185827069967423236295730082368013226613892327881287189353970196273026353770992862344327599941916526243630349807786029275793236297446824813374151112346716133154746713567781360287088019547216516791981209117598756423158 - 81898602515005203619649127626034871073369862007540253079038591594060555181404393365902890868615782823524026803435041302531522195978414637001437206146006597947245168082989145052529436778546795206973004575307190141185485223064200989851555141589988426951715202088184844403111504626781011508453126066059226188141 + 96286791563127318586770867601076037021305851540233298687285568964905932094854525578972381874188623030718558942599517298773045895091166130572717462516815397337069277199110434471323920332153357569175085269126553840288755612137930291001690781970596834762871159175353408765070288567041732543185062549099472856130 - 33117630075189782807087051115967037092452180132389542486741435183763098175627785947329470225570844445862252902836568646429741573139592734604028389168292169485602422243947217539341875475339743279434828125229981707580012503741140172012177152703499010155581130483585875966188981607346221295916053684750228136332 + 20533752463846882439528968410202433363844957638375558323647612736296822544122530377848884029919498182042358963667980431945480477119901469786622204776365009694260760815968846938802608152885786637605236947065781384658949449293522171417146556171285416422258192903021514373688008979490020017937484675788165093009 - 36786989091614124874477160957203310671418664893738195999790669199135537996375000600125645966625917494427536366086344649547638536156371582688104680635450820798303124785973546341160039792208506920349942730120284814130717096145070099171622406126924416112393748290554878509661498007820834292303482269683424534424 + 48490242000748797499900220667904888523156158199804978119859082364881621674162423835736167713967689483129085217259730819475655523313046858038543467544944962697390217091055238594830725563938751184084293702686834144547638568684273179648891211539139430271593969100207057494303653220441649336497952081580535802728 - 28438204697765299010512766956461104233424639457002587267574242975136104350083275136685780640054224372382583699776891050728553018348686927803977988943016817736211404703740897754272111072221511587189579173637883479845597806272116717925538947124357580537598793585269438494731955977767705661463108180592737066908 + 14348162964055881689312842779378285519587766329501691640158098912032601784964222720677474033197268617050134735446268240766313922530455601816562459294934715432025171169059885297913397473694564491731863903315913195804679412946956975562869879335859655881578655611132750079758024847334791002204066232135377347911 - 30180185130069543104127474147805003155626593365470178636298021672368206964823118034190268512184306387990315981485281883465356534457007780704270482427666652740138216799714751556772926657894607541700862426810957370699922883561186849918053610888372501304704529935760785171293737260293489780878112608105462593138 + 38962863384416218112607219049871803143299734363225947077979521888886179078430873925835637886464793086747742029631493635917853013131298323819889771691656916607254639208054485811746440970437792185298559146173745332475919662590938329191590963856513279846358406032641700286447073575720618472580069676868561968120 - 60986317875660574162030605849456513099359320236691339352682150374676749261441580744020628308495626851226954615287753897269328548643155861533676267564127677552945410632403046077867780086552489184847570610185456445371762179364968395532058943299877097800265037142132309016002265166135245039866533188566111210203 + 46403459851534639603865138032120616128588985321395532304063652026123454502407128366684633977514700683704419098716429604066558777741411476578408330341733904100875031291037989555579980467140039932676688816078190544736581163013173989202635962701610437553408359129120172006233725222392533037045584053031949680205 - 42548816541693090381081951529753422006131648804352543682647691495534714407428799483388808101303896599820785440284018589812367173740238180098682153082448798537413280164911575867992607517407234191283905424827594592430213071278572923146299569959042686653083394986828522045126585968408401981293779615807358921953 + 54006301318125024389734351654138266800812247763943342751450141275585027260707642332101064452536786065493232987021538589244165611487968321664976037365107178522691088434945870996414068313584421985985877620026042902035247412935163178272890698543999390595700894255599983717456281961502766401757904174411419416110 - 73203367310719329709422296355746714429710184464075874865262860580015191021378864234916578290763434602511573684961904930694388357669423574644572945951889217089798847720619499820421555429145167183949505110110046626079324361992323235801594421657577112671972569073965855297430428024373883586897687193911275541390 + 94721215451608954041122355473704010440053313649127995956727958189148883694347317242688911875460874213962598539174675248695917144041911266802589148563527935172507632645309176558519310595405646129763937699244817259713422475809525401231181151238389019830861914621080773395099244232742147723444966356795972128312 - 11057980914519421682751317895864397431469007047749825470470538169439169679636121850048258791803267097446215614301514513420886783553743382426021467517045004483597291007376534528942767313520647905331600106614617719152672224641281262416298194085141905458116091752741292447546044866118781390619488597740647768205 + 58666724309372233331539105203246386665889420491991110181448801863204486242375652027615576985163837953112762563037742765193393339999686888144174307647273114702757475202371738057781960119696999697023607968216791413973832254239167610955854501564840907120527840560688539926006497125470196601834466051365151652180 - 3654735115672741713912386129375561904157952076712922598338000487942059990365234910798424197946948369587928689126844429534084119247108134049625917415789630828307042072200676956927421659765951327959154874229810032282678444610781736128588599061580511231012176736566137004335867149719767192188599868592918496841 + 99914660439713302314210685524033659683859110551783784154137745476285087724691506999024315511427671323093709837689422886896356645359911608447370378996299584205100905952993299041562167536968065077884500580249425192397310249532376779217261505659702091098157897772298458691180653016530336222882105850575245195132 - 4850237685677481043740857913951453497496011564644052857990511403448134812765227446780406883502349555243795195798782869265237226520226959070901615474825260872777368456355430717427672756620923472578414861231012919762012179394209235060669126172908972010215137778955855923735082790670054257367383410280452268363 + 5096184135819790504486529782351855956038685654630437782194186270873069636465393114927680694839306152851369889296353602220122561176167109708798736101617980476850005693279908147641466056231960094984338190564363109142602178284537148329442407367891870440486405960953234334083323893139044546861730912909532385769 - 8281287639579301315467182179030120303009476407881549601870888717342368316795093785610701510974405903959602699470937735569377836732165796322108337575822135216734170962638931471908650027761407683913065190254042320270422415975674295815454282517702111970594337754015121108164502210172145287211531888037240594694 + 33990297635551341172740317948067844758358968209209625192795956344315713091592980470344541094136747461667800615022981588435283060942989956713634476183295884454572653202350520049852816276332310239318201035720270237187352179957353531882899093683078049807912720520499216998882061716179855105223320550665353947485 - 45983701394974003457931123189576545244393080539813950870294750642495136866928044420197583133383552436712734612583029170895995888562524440150270668512238216848710825317929597646248811358541587576884551688710632144178721829486824255020748870992012772111467258152638622053719310667742353701327905201740456736763 + 40136629614730201793623175676087197076073157576219780608407593489019295133884949788235411166181863541177646292842175705796299955657083583637733253393875218413891651493214514474386159589865649354368130520762642300576178671682040372926354554362247156680658027215482455246756379740047208287334448029867865013559 - 24630833937846861349428766580116730149554459755033834583599080643874311785465177111739716976219246727073825670033746575523635096700044427506238469902521750391822521580966793190213214329638957861865564673105980001702871203152708482941293017195025899767423950107754027945640001741207838750152509255284619452993 + 61485286603553321366124255587924648490084067246208313626818467294360323260848230527060195276601635474607089649605746897577579465348746482475526557061312175989673400001754265218358482136774888401143628691545469842305124820867186942470943309431694105283740414993803216013490117953997299058939681506029841584401 - 15439934051680094313325546606699020116046198177550011986522491544856021903378968378155155555364041892499847140333742718757365165210422968884441227972068348168838949191505949869569209743286235973755650900425167284367986615010176013842720901652760134931954210690550308532751343657822488595924707429515683382149 + 60886815824140251819312679072190736765201207795017104434663771063451107269348277533992243611399682636902064325744575619594991321646335133095671641465728776542416599591834018064639154605137305127828436664058785239662716470238406480125824886233875453806275555303176386710599323790647330064675903383541481449659 - 32146990916804471274665530785818129466990992866477221770060727480076003875707831879268011152571804579515832023538728790497313147480073985476436146824325002767099562877654409246499378327373762992536128608259156357715829995017076693680334756335507536397071210566351477095043978201156074639945922915452253352769 + 47823467578315391753256680632787373356948597051249116658504629406905779330191935519145357921184126375154305776586693208859593271871605465301571219523648634865726325504791066232086331680344787820662508306721866371686064452298233763735714527744494563237766621564809777036206710473674753862885945510473377558662 - 29364374316862869118323980876212879966434947004819191020191527173293789323658293742542592798751417087661920290749282674495447369715674674654992043084533610462563891457231943065781272644741884544964971733532236429423436897230811076296617961345408587569151670418052551107262704014166880812943042064035585458267 + 40268362601644646352139497373895071325298521666986756169455767629211898730911639951996196750616570962172033792520887988610402954921163677300770058763187014059708385997675330268300513789453719968291322815861968743958278192132567938401159721652907675167990374009759579845052290611832777657807065292025511364830 - 74732180157556758916669400163826622177544615158030427929749079717966852577841038087674737203393464254316499756821506193951285515346710772764306905412476959912805364017828229928184277441543775701945466544692299772735859769675806209371366640427700415178471349803311562703818327682777877495836497107525263034035 + 60705755711570743503755140705332232578444908785742085394679733343302228603263240945194270344314158121554275377605794979350892823060143278259482302481965469620087998136320102857264403754650070260732865134152440660299664033881788429369847996900751904543533604908639242651807844967787961553142373539291514420236 - 24619443726052325544136855846057682898073314033282198360775752510846577889770042734335294794836978337099666686430255547519131708725694780501601468251338143550309772879363160394662386693168935896525594078325443344103472456504823950070666599998039928995761616424111708225614938216565073961454235284203430617105 + 73318601457893872353051834500425007413155346688313715701575375198783227610991771476963617002496714030468550436028301701528598199388313265256884554327076231397139263656885521949145680192788887494432787098693981025718041050505877113507604999046647670685238578151100097681944760196748942279485203494507559119929 - 11226334949627016347109864381824875004431617748456787692432137671347532593630785494901800184710743310934295170825967447191237792187939608151177896225409300464250146258735042170733827172851174796784900067817966916420086698643813226248960292133081532872004323420921756241395731071838214294573758045659570503531 + 38843982722513123723403961199212633441787391997575180743157085091093619570921297474065626586474381612822324825426501983875083754201820520908723089494402752674961963626043506924936518136559402650019943256523697922285675003855247591513131125440339188661141642221936770772476152454874228728024707804357526947177 - 41151672148001452051689252994086048457315358996596198171050210527217053980309605820755695465270501140415663249145197979639732642325020349234848000387195860437586763201234811559109789545718300765361372063294504383058788305168809435070186244472593972467199853990050622344041220828269268645696725535850142774179 + 29120199283845053494819312015585533809557031349974691084187673966978451737995283490031634732417753853224955609919002983343807450204916764828900719986488740474370365287977691139173575033760574479934946001261433634700559340186752285333398314217315844661772811828994610679682907656332754127860867708443517360006 - 406001281493352899013830299588215363430680515876959081968430815865080858473064619934350338431326239321537550103242415888261318716046577946037513151634829748608780163392822300022018924063162180115050872359470119120740366460730416829334110670556474300702959386553030392092658288659857371209194648136884826207 + 33930553095586201106984625064200481697071454126445277369122197382503573747622385010702697758101990880295043854182445749723179561425684804494383640060257148720332176590917764815274942692309723812182596604587988941300406512890289298442595580761697697637302795598107418747012231068148875383905356507658734547063 - 78192834355567090189553285743843982291682149843351541832615939718627538164690406399137564857019666646106658902379961279534987197127710915959259684033305694683385833912104612680260309137129857238569128835295523604345710718255775073857829923254776545116712685139101355839270083062122291645330208913339721114028 + 39626357879684921968509287746101556344303822307956880946312542745133647760127389142855706475186682981864891995921521727978300754526252618549858874726737816770095845710458737856742706012422229070586411430406826699673632860288576040544532122435508211790011397898985278354849600536026504274492042662320462644662 - 38941240975625137672651999806690305613293849971293024350341735206101930199546493947733095041050706744054229364250599516009864950551957408068455213976059058429435168611994392305123871563767173534248424231079697056799201921489717146680693186177432389720723600597127584972585402399094320799817042901201474320069 + 23256996114691442539462023368912222493344769206793416902922927838094366130100922921735991664535944076328984177798253161498035899870534498153723329133963247449793090074338338839288129746285506955063961134020994511181176627594704722910747156242337433115643552571272458117470479518574890512535629868522793859812 - 62317474821345599735846844399317050677546684083503082867117544672975282933106582906519962761836277157557383706274672644712712084162312097794791854797280300696851896303097655106464300180215272755688183114466737094008454593045146169819884353604049741454828051114740987813860210540436978409688432876902194366954 + 57992485608841092706062979485281511765591686848195596433848681731380009048116175721496882514185549732455211556443017088036110020703473694372036302215484354470610851554086490455266403187700702658800531537719572396549037332206049786009936703356294718972739280829923039340501968217822924829377648180918126793003 - 28258715645018084214419386863135177147780186063657165745398510216007008213245399417187527736615924523609586394368093363266321472825356548281640944621459123825503526521430754608942069405279455584547039872279579565570655986120667785753397185075538647714386767215422868627648673996193197813607056771144270145664 + 24596332381919838346567442806363139540325950156144217955262524194237044088496236392745455527532414396603830941189057109487532769957940547783780732081705025579541984902903801193668680062345061009552685511568457828786279742215036871773386225460483323422121272862741669020232424496516724844469993092914764157840 - 77038589441318496863778840233926415393787087675088733946976845041929331641042289384338682082333215350599294064228864510864134194369677267141919132763422750395483442661434897761386452270232349045649385891606879269935956613023396155075555106421040639486519414517378517361254013765748119633984550666987135043434 + 22328496431600908119155829977166495911112844853720340197111580694799226783986878424323591063654219753100855327531542525529057050901631165507877384664382106058535717542976606408109935077198940311815642750403735922200446839566224424599211362546817261929316623395511172146318436547331669231608207223531747686256 - 7981145171045268973428886914002297721334167254094071433513960909830425715823830498747561349524797547388352186710090004575339328567443542705322533600650833798738553995584721018907701608860706902391738324337930291483908007502934089611198115277173202387124087508786839149735935015689262245917186387359619226839 + 44444018777164449670092176943232274513478736838370355891843556469498959783532488207996975717776843299035538855382937000169906634326525829580520288789777297478203379250071339422850488161720611250260833453458179641099152966977362792968297664328105035989407853522324325278858694268164539053206764180461918465793 - 8826958580710969409571526057995335626546438558875320835678193987976004645325728722360719664144767961319930302671813619834982816595692769922919475899267025484668408070190783908421488117001303703863985687414482166998401325531620536696264916222274239264787559315981183839610437198178475761574492382454263699086 + 37037432741853642387233761254097028114323877848272422214935472503813257897749727679414672210913968963361326881420810608278109873470832324487942810368525462998557918372273967297680692033127038617822032251694259331939326203575984018609040240216589752246603596217365946447544739133789671498672718402790762134223 - 43443661044010770752723015920663656179364108371562619862318159739262047700915757053217982568796934934084667791689445604222135938175293010217950100864180054539470914578221657227617812082634679781321107516068795682510218218558639984823776381096980936903262456979349710087286681322798287121364193888350362026014 + 16751580886781148953747920724819330819661323135574269437654476230567134987097108171406798162190752666810619826286418316800415951193870206752362738287054407218185195952061718281570583933053745833350235711059555210811080066919390873636559891689424598356268193924914988160156085891090582077538585593986733943876 - 82039830811312043114038534043282400126365995337242720606253449677465999841155825029425299882260378064722566654189478796491216048848561119367464048205846831321681633445348640815062492751711741790317039014727409626025998759489983292180422214312904253680640404679747317853641937372805837461671687207945646350150 + 37381967094133799118991718794219229997779340676742220709436726583648904591225488168903713770438152444022227911030935542641850224696680072517197596610110320752645611697497351188151625523193101827071854881810961702845653549363233956491074043111214777537387968878076630923286030874755025483900001504950810477248 - 76225686103491014243437240833699337874367082043836500572899503111699329308988320255986302861677423489790251197572753864469234257270546587104488194483732444366966920436062141425431909566508054894609302200292664986043430419875858072809638917963594501272884054306370414718958162144933503086284502433191019961495 + 13495728324355931022348166075111408074261810086897043576412202994311114919256941702336935828065568301216911964728887536317608264667871077977737041651655234804542815723529352756261073580263653313386421004855613860736060032928820167955837138897219387047408989573196099646429812440805621355633745711963496681343 - 91937010648210026611177901529318692953821525986843419677943541677466790031341311352837505651500109099860423102529209058782461054963030627296480548759715812085986895585455446326755939690758140501528676863467600043503352651114150597989775026486316400860049357306167508789444825168300696732743263896872074866215 + 6566231893197106172999242266245183097182802950866452277911079938522434117294916787365467080576114941018028324228748086581673825236050599340179029817661002103935090534667254967233772074979662203935506067722201998388962025018574193127178060300934174238814313843728627784073810232237859425038685922873752222599 - 44796027644629983670252995626168665132574901118429267717492068761633052500311510091210773351794475133893302020887666595076005618044464040069552996467887351197596145331623138356639540552411313967566245845372145306227668296042592186053533914037665198180843904600644884515413174385588993272618112684351154314210 + 90849415848791509082772365190889704701663563132713785114457317446786508884588390005095600041745853716912855431098389945833053421258974271300396025153028941928049274541044840894389589561177790278029590956020962257114272655106482458571801177852092381565846133701707856812667843763757517172365057331004246705527 - 67299923817157528273262171248091740981916110619597121905741353537820285389572837494978583862825425323044880511408705308445581950035173958644740882753195478219040088416668841358700213355465574792871180069415575628064309040329649553925195889296881147975453397221919585366934043363761794420198043721805708272582 + 69426607460648419680841362729655501247387985509380041898828936575624783924175241849471930331571400867819985246879923742448661560846415635806906767538526051234931632413693195300977122143560714947121768777687426212556714294602488468818042474212929623938860354274282121964633493796387494881312025618780299537003 - 956041908142377511836860714108984747188515966741698193762764866724670727187689187145594801832789534900833073991039600279078331327436954087451953679561299272259612238565764635484463701653507643965276029371033072473702940318414722095170216250822784234059947879797424833878834881075199502733591916100753503928 + 56575749112766675680700306647345293986150769327199872708467567036179681730195452961880303111946907477143099538329945765824736691408693885135402996258444536147644926583239055108329131391558545622310323443993317777972315051875433319856983523831675012760114587991010146157106864816483994250461624279554713526315 - 89278350703547179621199686646713855742414843580733841177048650313651707969026486277559415921947950884914944266159974951913321275819977405578579239128710289303610876900044139759238300061460213764547798607265603381456892707734456160150409238340442719264679371101019239145932619402809009468575773101632085881285 + 55531414344888271414135907417820309025304371172744847343442808286807990554129203054936080478576644543437851249660265722588514574984490856792561716482396685635256642574746881313654241812522283883279414013212903093597624552022138621112885624068149139303332746397407025742266060899280126690826716774308014600903 - 6931097358615680062050182587095022047624681619008010321654111906095538315472079989550025986450330696755752846815056391748913704444600817752431151019065434229874566919384308031150863089845775798500828351120995255853163540165402606096910618441584925835990144842497273189367478489943872341100871176761880888864 + 29893522269018862338048541466739945615584822484173573316474945858745616356867969060685493112929589209702881342789684956148442554681191291858188134668107889246841306903268115455713380806750704988713532751828666699606708847474102774365744800741236776644115448056274906078487340451567163837110514417432866157270 - 38510590796507314323544894686267528987119173549403085865574488258729111522587696685557314404548279543978805987216331509621176750623825935740751079731347475860584912282335379631532823424859794069111939906080871541462302555198182758048353733617018422572113885114613049303225627269082486301842773052919295385359 + 98512985311925282480305902482060667587075186057672538317290422329133558627138633982026229638019364264372515520622211359772410319547655348647408614623541295033128313145241652554600779278219756470785022466923445960102964540170361386197654275571323180180781446173665311120518092695128028018328502094917936608324 - 17589922629593351053995923108659555807152617581942346387789885957628704212854197332329447429477824883535898597234792492948107547938470117294796624632440652236954960430580372546184441046119891307738378340847301080888499111857048700934953665535071940229091542931867405768477361630186854349034061222393769683869 + 1679273604549544470749016283328974255395271174432564960805793349261268491400099723329098081687992865894912834027128769946069419335801225899043196911386740829722811023774818676306364121726081015910583529561476042250230391600270404340698011730866200294330685950239570738784402453991128350993399874057209385254 - 42106352592641707790864098657813835934835952389586203229118756563889136564989985606435371543925666804883038642906850238710718119371899985182860547231318346931524352876992349804556698983015713954124145993647284385715946052940388084254231782066745488074562523373235079376537265733072697654611330522992085861538 + 69123787138542247846456356100479603088527870333668792743223380393924984708029375423947933443392014721836990995098914372322467897727860292766237387985043856296126855875639400018084303978970507453135817399199756263807353561944007721369110032840906696175644735256319909661542534545583982982458626410137158126369 - 24576874630568840824243575587010019718219869288460757820205160849946992466449737334768290070397003736103936216152245345364529810545356916223612020044168883741360936186163814101923803079223748339363382787831985704151941641449219363507272238785000198124842786717564962845679487361524055136360151258791472366484 + 39086919360037836544509042194887797375406789378240539557900198436630479169987187829087259857384688117802364325911677682071511853530844979621249729414485108487571762666908216051865335723771520320315938863137912037711775431725168463458327429091850385192568903011535367153629317410001826406372697496807432082874 - 8938410734935308711366704825150385078772702789959702008412364487737692892507358292381247185470814393900786673687898489472585838633334799056690320723516076941012183452401375602999962294754465424276052692732874397591001501021137142800055035213213880065865540632156263257941813616100527344637033896721209507682 + 90016211099870796539304205360895044117234774212103820404830832017667221934007024171066006625873187224581846067152388351012430820404761771490669700249413764342582322601340300084707864340946708145830452480179794171823398403509199202989081463030260607801533048622337666510810214736596291439178134817131382764820 - 20545498474894153934195887064940927002316999767712619119458713936030162707189764188598885698036680289378011064133634121398061889721269817320056583619916030721426718301821387126916868264997561819757974141700242018507626968307922388731470451366740856124341597478690484861920785507953876507341737558840014828248 + 72108695516776569336297213534518584010059281772289108702994455872143254661443099229541388172042456408169480085848489548550069746155667357473512103798131268548109501628543759284740436095269319994320555372642048372567118567110062516273248437214460247819709049512043896446252942088730084425324672405544887507198 - 28954558562183246673547459056524894342786814333766054847868848461212333176734111283154470739563823930518354518025025699731343756816511617085721578526100808031064425766783144925648549331616580657406648426030899452818530410120273316421198648321504179969991704970029682387894480540264445105657908453650158954109 + 62839431867281115065318730405454777948066170231833797109604338587044167557492160850155089599475782311721877060202602486298897181557684015526131771820652057013562543232327480585303792881013886551437866617745422647975541930200065504710844812066522629240617865005721915875952759216519927600315295053089420492961 - 40108852345262112044865037643205160713930459058512906289206810794597899567367282953135486429600151329846701004923375000524885034939001970908098450829326697257289014370624201936960446402340539588722380206667862005989136282419916842698075611342018891707095302220945495551026635609807464709910497629183795924159 + 16334201528446064884397060540248892664378049764902530657984233879947364079200546538937445527443544642441123450666575149671730233970335194578385108672528784153606135808589265138230681831360761677562611569027348554102647122874739400562826573897102128641148362502002927719903481079176679365512712188088569523234 - 92154255077124138019523415830891969499017624241819812982944990440136997243977467620056430563838739523083674791658267524001291410563408294362018945474622726396121873654795461940798900774156824503972115115532556750509620327867334214989188740942697519265865104017930585168742921815939706334256628969695038646570 + 94180083668873019203693082207064000495945752258355626258426388121720752508652513442675171603094376079766460718117544300214746321906528957133004692053864446864013859144519879290725880715028192482089872443929769294309559781942030843989311664260219276921174001937027605350798445555859615621351144638226433754261 - 25418194448041914317114034410068878767496038314388396445156663877478048303481991826899893383836551620119022684958924543870682891403861371442760482790855607055574984883717098560155929248869066982177301313809823096792037059694364590316414934627135217391603253124382622590426538032293543696645344169424634977576 + 82730114004607106200499587924264129789810132903137933281952066696010181812327827015632076947232364632680085575056630214312397102267813585418891254705301889404064242015101907218179403866046020209081689088332865082458442474835008703503970578674186419500629727523279254642458230615322938863181312862616967029218 - 6220958945894018765682369436588369604913345072037058572655892162573161880509650071120835187623177569800056848029844849171148331228443496398065482530552032702135953429042034727010205900051194137848477059359056093067783444983202504455832522618765356959926413874014898313741293959850003905233298225966528535772 + 91547039045568403149966774872454684100414645937506831106525567960013906184667983573961814002429293269817730557521586519629718734613977965971386820475894167155348768093888990730643296492299265333457494205191538810375726078730113687487501955353002847321016589214201235211923668565717614256959786601593735725345 - 13768575571670830843975043623393132708013474273521307423815470686668370828185783586296258403796985275060790114612276791648137798002555217219635787038188850410255078140485978505768072252097645423282225318976559280009390278804387670941893522757869953109377238597013683892893176413497278076098892163502362423358 + 90178774530851231756683753474430706923802654991959552520932392094402006795635854088132136579412617817662083645554490634190763626940860099219803590953827996048115482302743344117436031762064957603430750500359542766181360075704392147204974735790485908729682119750107592951459809134389183046587433144900888664955 - 13124826531070454522854555611512478262405502388762977158492770477056349448653649876615801916551935791090786135258772418385986523033479717970348120665352763847022781453112561196504056508837339624992655923437083211214823637876474252760188173674270113359047643154385357278299801226505009347143926852826255100042 + 84856153985214073252546856167558870788898433481206278057006202878788450960006693160534767040761446682368604448683027854273578557937009403088969274316420179514234965783603315017424146410315662511649595752516909672665530668395683159946770718223536717191615555294273861925735409924292356348679882108487779756481 - 37069201038583791856310178248775388058115867077851183656165334281709623653726584674031902911827582112289934150923975011843236558930568285494450537688523553653377637806109046010646925830174957223485844287050146415211263323889253962335835245519221485209616243884733136916431883381940730767668886229062021651089 + 61624395765918059798629243223223612028744387970960396967400796042290677527151675975254946967400319145134382790561664607567740290417176605514337463307700170924709879574566291575931079788688122228771742858937301210594090015905244138744661839634867875891934155711949245556973305675983080565156049894933287646958 - 38069736402459247173549796015441160059914267598346823652077573791185569751347359054033757513884150030267836900729020847811849250802729455126585962895973854819543501698396372940393830662166536910088456349513592277716397565511270561227497079188719150851843414161859803192662983377679222908110931319501913258883 + 8013405165158671220640528116306178476828228937597899181753832875890429720363850415864851200300545150989861790247172847078129181265297020208081379449670948680089996244984697406861546961349726262349052948806836683918559315858423085351104752039071082755254278020811117915350108211353970123284682497796195260258 - 57844591178332064561901137940354242628876767832060085082435293189287536169746601211961805685935505236377470265417171204677182211253077807194434862957836218235659376128339278334848567211699426490495114195733228558252305491938823939507689743096997421512107154507184031258105796602235223202592557139180340744506 + 61599992051731661890441539889580053343867988447791256757918442833917430042828174149974093829225975743555355229632318207573928011978210774099488340159355458438846545619811184942711496236142931089770185015065899695226637486989547642577197372297693712467231676662095795940405092519554322421396481473739213457996 - 42847147489513944805618907070768337524744952754709879020118573223687221879533587382528880650039160609073893146697459507879036184783196385786857457471559375342162035339205195451126984907810364013906051220761529087911371617657855878203096306240142981259713338687111109643261324850831626925533342832970732216889 + 27066432701620308832697138752998660015825425727288295578809472354428109043692745588510717500069772763877373293073348004427372226852667612702234834855262077050137777253881275442331512346620524649101867506717916338890144359667713722476947365167402331991145920285097973390280612399347701227415879828067192375647 - 79067627351248114631657933794530036129462363023608152807868151357250866096895513479876516613631553847878244046062581987114234236135028665552956931443928964088778138554941691142410792899237478516824567594401779462952671479592919258602515567656748213553900073187935644009054386439491651922236752829133377422961 + 39328935256679707394618376004424473497685177623491401537221052301856148482923979837738036731836776537653815375286020321643731478839406364958395224680596656611722968371825942250171519262577000595520027459036921829725833569060624342954106243343381256836409088712033130628539647838976678710800438385180284579218 - 39292026464787052480493333202837840439501335075811664722044918935638445186924450778798433413849347316625402813977539407963780820923619307305327793252191412144824428879788421973688422862086709153960137744508327348304942670916309304971724319716116678474955957889143353234405675130293393218075961661209907560816 + 50233689126599496159313216596566316172272493067903420923315921370119144155374342528457832890188981846226614009819059984030350697717761264772520662958677008655196927497688902859204024547875941142948967814854396030959185913151463468793209234089502927730923705729320181445831776749344215039060093003893346943394 - 72500340109902378531262234171394841845018552627777833327591769287280684782918949978679513726726132555368344524929359594338840398070032353224915550700666900057014230467050186299945864000627125186381320675825913809116246491198056974763736276195783674072178123316481050142879924717733725479001196434062467960668 + 50938974485139688069395521207097153235548555443922064757927142276149508569606448276344847577933838458395886633877979934077325271788901749636307008401422111852710635534355497845210743737692111700664117075438174780170811461983399382557145110832043035123725966539780547702089439041320420413699060370471844170466 - 268606780992020495942300895237784108698679978983832633052861357863769176838615710930830789384653772349275060638832209556286158656983028649722345399219749764304100708432674855336177124236523812989509358674090358837149739842251957654361286598371791507977599685162031831028839321122905960151254989596166925444 + 43020260117203300707100718506487538673539973683565131679101514845310906022468876351955958310408717845332950631956959379549310388100880549022608079882964961440066832556952320873403659269603913042635849972476266339955507855827904540342228535816560038621228697407862482010405200098977848783859554633255586414033 - 65373375734215346537478086839937025847169079036025790918490674907310107192564176025776533250138766127291939841631389124477655982688808189181285410637715431984871573046497384868825725668758722791800476966812705616043201918091608264632213159543718157312249192480346198226157134389413182487227244181240441166322 + 76055910099429130560076180564332749004982139571856888091435059341734035257113204507060787451234929798756178738569892427929436577137653035622282902318813403529491487775368752925931973920748914539077709630931976830623341905151204615723321482573570540871481629893297427879649829801307496577310195417882842909693 - 24743956540865999470790566102291470527199690459106706794280915844838423753120797927963503524882445397664994860594226451504121123538072746189632052356103998223723400409487953002186649471159930796202103897740846418188731255739466998101254612599039661261380553641766939854687112227655792688997149356390735807990 + 54346165056565786537462908955245188697044964093883872360116448307110969144808149765282526355276791000838311858071205600747404296388529669269833798226184480486329900074652585105140007939325233234424860569852444728652004069419640102801797697867930069722303374124844377134003499991065414747493538333063172018768 - 6300504978385376686627098643954614221970781564000953358510758009592550732835266669586669528505637938868759275242826219568264160208287515959001873377158538224935466809182684231052762212495215999893526510051639020709770363294607968803530365446082157706893129536863091003742598901805777983614241355217901638838 + 52412350707242377056859116210766030772215102871611239951830996942446370728224491402875843175282625688139540160978947600157735772936148866777238626392194799575376901693446444749463467812985052193090384863080398158459504910397266239254130468132170791522375710168744003754004036604748942639353221187539037058362 - 43529831464068775461181134931050781281582750932628303594336617687889579702871969510501922307871074020214903399079258265468865934874717620399799610758587813914227787987941312724023447367956963337951747096307480965405159644778072019361973745204877788150171347919320908363216849723697326181143382111015976683062 + 82007558789644395554321981476722854898748374545291389182826616188973940462971894537920463521493331203365064729549737806271526556501161761090350488099777410937478421372335799555856388234446552780111569561797198680841724804744195326134977333670766895341023884373038543705509620736797111840951542577129389531253 - 80666519466592513667106518668619801086277012957685084427821147109302179534394467644124333202963443829567803327490852736644067354315299910460918596791211451215487946668133039446261914845657834398082037141022191345080559740805429349098729152940655636615057547594237945988409408939468084176995767317955549630005 + 53091399781059483789888858592092445576961999449419679677975689333090827760674405856116574754133894191377783050317543607336640118887855770961424331021682712969176326605015018254399591234179675843529331052027800769239752289002100185959420802187654468214170519301600650102898390177763156633340678552107617558668 - 42345934495020746338345969720738244608673658288060887295920723527496783413615788288976099939649399682928390251798403444195539553401647619826161489984703135123935122515734786842096161051861055218884846220019681925567838462925970537163890756339158537259548089329056269527106687093448909982194302023158443998228 + 73323452746879324934609575150392181076815196022393027488039876457641975778913680254950338016524501297538421861241895797701247749476948558679279510777845172508765300369346474953248159859585503731246963665049787393729970284461334584310781060231574452196099613849932050971331018689366599353376748012887553458121 - 25326506854652866860647054039062144728568322365598678190495616897390371644216956023001868219961090451484338731296238416366810425555554245523323203146314236078626733538114212319505107894020087514993748977723631370426054483382046427740321087374635210659444939902434720345051276008553462351338543956028377652001 + 48094639840446528322098901453105684947108588827608594698308614934189877299966355877868147410592356702804352031129249252328508097972923878664049051605879605076175385059577016314279273694367022850107416020005282480306975933761918045854193031689973590415787329553085730496617213076870466941901248211457025321770 - 24377426778530488540753061226395172258092668082252918813543780847557083568663821378117249174719787963322522027133714752226618611944120171800538914084256226260011646987086562665853103991021197290462771130439944039284601458420532267171085553765671953794922797297585263977752008226450893531914175390259553691017 + 16310162932019781117444738334867671795318222685198606690798935452673926566121690508338999503629266981628206772626064889835074985631692928246529495764649391421415967335155795336312874616310661452304744755625979288267117306707512365283679669574540752778135093084200543168227772100176289403479289059211770181086 - 69730658216686608002284122143937735901431928659131777457841075832864988410022866898433875378108924559230845507307718080824347239383940072695379022945049385399089282826583479950675189789705909616484522748199830968290721744082193162778543254987830707382286193288957561983562556730163564427682700785102085560960 + 34275951742699535303692013095668766147526121961435159711443582019194876936959131483780296652085431537696245467627408824180670966522056668841684924011600789143668682812760232766984594520019377557112580311352813759283717672273361500717235812137837667507652986647813611451671277691689101240401743490884299508217 - 22307093185885482694794118694719014739280053635464234649598736080795032606323730183356590786179621402625243663964439508244507602649760898691762671956630169518351857943270741119965531510831320660835672786865600827826503359400267087280853803434005416084991332713066687018356076432098907863384235703221251453054 + 85140911001435846984280362106780570660067033236006678211833299930756762077481848481684438974862131622831651239682360966271914949875188455827892408616225945663485235874567781404143303438343874951643536891277045301668166481793396283385333628105982500729722559950868600885629167252986921156393747992529151267595 - 63878361339054898317279422561220497358118243863385809369722234212925948027902383706244788818190584696689684597649219540399449537299360251475241502106031488430771815383374824965863192652573370166579130174905803743700535527568908598391890838972384244850770073804730185454015414864950437094840213368504360500243 + 68711197279700079198841314875901643666015654341170000348176459567685168214786049669612453580166157696362085258726166090194583818428985128751300636815708764253010786643487152904477406140076713884939055937386788410015493938596665864862974212686745574245863561290931157239846157569290405003080609896866071664509 - 94250067832550916889344733466812473179131149377656268769516282228289121104774983649432005047520256214474069262873296930890874383256101192089525904113396687691828327951622642056151552631792858639407059111283557067953103897272277194769973039920736040707204424874729197042851919822641739711381253034553828026472 + 76339396283209013987225804573974474721805051732992465079143331185156529173860048064030403710306330376245144863713974356918444324407144141627755307008893426835592637901922305625491154314723535987477117676308124054621269867855154807849488269607788724023519893359367800913854389325702680417913131881979395728769 - 13536500927146485488942121854450963604898540530514917592657618214540337670271112531721746067723325427878352163679546415783885128163112909779779096498013723308586062206657004520173361874467767086082996786146931557256658350159684206007380686697729465445283865140654134659754599554478712824020573789159008625801 + 50202344686339221667306974694751696360046224530974414111383653205890541593703196001331770411068628106861384660893839954429138323852618931183002670111981645535208296242560554224060664825513716356852687263698577580125973841391299723601621084750473047177119027464263508379946471645272323882197047516801112292863 - 8498409932798183665024405669175792568790259904897849198428066459559883234050043793820327803110013636017304018507595807019837268806942791328826793335917296981627978837949178706884976132800416381373623657621711219711411337541631175966702231892347643231906677137706099296356957950491250059658502883067089672315 + 81105579322058627482941098222882532159553149104638433764561441777872658469516986046023465170058486552303650561375957142580774231214627292341539465709744872759153563843666520271305180865321953555035189451008168555350735894174489775873779725382517578004826371356406273086980871908576100673631881244267208775193 - 16499428440697010147803485636853616407034420061912645750604884207461516711872462949055784499716241855682749933420579308136368218845565471978471177538456152576550528114922163765846777314248059748388109730466491827088983175897998298213364308134810776654726630371033524530703679285109991513398862519919425405753 + 33770514993433922957150754678407316300211376894412207517863243989275539781785346781348405130325377189555028260722979787565332027088012700384922142242342480750582574042561340983124457197391561240323092036574357557184256198111062580427988036769936088395051326666016636701074666462278121689815884306246657555302 - 46758806336274850848507965560881592881952328031661847471450802622000941247762811244368378985287326314924197604876350230377702615489586301726478173099488307668614118750508029872665865971680042571273494629021635464100051869097845846655589945181009131648448749533894655561518209650511644669236459873960761310051 + 66944820931465118402006534106033125396619367602889326890443132419656689792605597868035488655579509730593309199837122722614047794527900305813857382769189239467070510369694152866033049516695075444201628722435761198809166122105454018236235758066132374180226567685429713367353352670716096999245510871431285783128 - 62031409344738661369908116188412402719501195104489442238607336920369768235500692203706120176397071894204913411330180041554880041241407504824122430871689579009302652783028088749979575356342682776218738793419567024022567841404145088684568532820869795344672437626787223015033907742554128216603617952099068143036 + 81079439920381786304999235366219349307855340154012425471299322010447233924464041298658429643471055774501941304575210636768392093837427838719325680158940132754391373458486640159475109279186145973694794386475579281173528465564585799172014251790799877129355106564425592826719935580425721733419755265311213112679 - 1037398863648368743647396526855103687166683863055684130653755697992727845475919368803122950673542755510216067889188403838172933433772641393817114551509925465790797410405481707110310670355211475941093825769069230119547719022847877386606963400229237014124160904885480993198856421102945815092062390580530011571 + 78707888628869655970205842085930224763420609164535822034871677683696066885554657760956296003983998789594412911314385205857753994681862896615928498336481832609484955313290290163774396847268188919756000012443921256666806633094458607167955715437449372836648314617589582571284399156047302779556167043832375411405 - 71857533396754796341687783556342814978018694207596643307046526573898751623657220612500661860480881335023260530020207041247463058481584745449891412590048261836324287366159267722851692658436579936788339250261157905584306555730708726492785869879620441232666819275209334329311075831060738722842186661475498165416 + 72943543202681890249507912524374581827948300591880459571924948827228063282761401529394735371045807240457280813617877530758188092985672865173390725969407017198695812963943902058882965348151967348006899898031116301614078160712400854537168231850829855755801825676419016549173351937548899478327104005883110835543 - 34712738542293901317211900304159333344899618239614713702001181917496497374644675246315358749842855301423670093713590757729672452265278531102261036435838938227282468766528040172360720382304408339991391844314683322357283652635886956263354084630244898798255162567326369972092809435762916480906713555438013520047 + 62374334848525256910792754022151398800890197920718638445679307859199856269377861733179753323812647676978164071549854827007334807391573089989413865716195293741885005995388303470329221570341198965683263040959426515582308751619884013792059791383820342208825971730966080256863770579165135575795594906014563821179 - 17190083267588146349507043999754604654794612083132809947032835165766580456354209221298929675260859258134346405331706514381010381487076045495673193871125438365411659848352414737357541268752816717351235186291070424081228020073039736150146339902231359026562051470542748164094838508798639025772515302572586002436 + 73293520802024184309543280287422320929287945676505728745996479227704562457230739859495512391996995176881408206333750776356169794438603336548340029031276721070092623574028648312265069748492830144833960434277478683427614536357005684441902744928483529408270810747913788039154840217058495973636466863209930700237 - 80539511768194322784650718363908571893529561124027868685078162116679520141675063212839154556614788726425863667327208215268241632288774682001088559321454745140378048082671337610638941805884287615142801611717254008842995770588299015207480944180097298388280098386379829591665824584840513584162955731765475362414 + 39905476248748184352181598614350436186410983949014387870584876128707029156910956631431281294903101989805929457219759771497117314348646853513484668206420400102643856801590594345355810783713057650110778825077801303541549765505978685029391507059359808712880672154529751667422560499755178371895895677525049941155 - 6408518610355417698161397938948591077312591003504017032565171408978182647816714077659951457322738415288536233809366195218998886649437923223074120286017873895749104573542721609736313765170004948941131381833040032316616149405289459480593582418708857608511563288747300468855154924864841229575243620442409287938 + 78118341373196786833421172476461692603363086004777743601860736804902119072507312877581649725832265426274283866115410629832765646684459213096826161836585074885730191761909968838325471597313741024182449476568148306397604033846723441864147019113140573139639461064478429155253788914541413142482992805077086516656 - 28480561070843517391979097765750990445183995081596011906242662598691317114990842113127557730398442262497724305950987909766980591650321420365083952380443915384773644640571454292607950516984407010390226380415133256330691709282065344886544111023546114035431702316026582900154221417519340706609413606434537150100 + 100320785395488891959731809216760822113431071556980449725913116091185596376610990117629755422003272663040218588397818074015457111881979769694468321805716986104840200614942295525335477647260530998779310830989446144979051621825484569839065654380780235872350038838067532417568450729446143613866334529457088768366 - 69530700547799267463248262370838122361228441903516564148417462439051068911764350575556095698610844521459863902730697559162797233753232387832299727803711910593046693898617532234523102349830682983420702794991127808527661158075154731496086873027941340919416855924553747177796069906113859686531606390135092667600 + 21953189505008653155613584421262366904738614300011512902374213917218781789221330215796335659591260602030852438436263255248297895178005462444478497416705230763696976402751326991554373501858624858462641033902398472018435057511039639629616612672401959612861133007003161855054551128831701055996681632671872145238 - 73591106574717740966291750116901348841222117283411007126908965503224770566007026428427002644856337374895239982064705301802110447341304823376818011537368698865100761520941835166807941654399218116125312738589921461740142096734536858931237085543710635790591204042683743913739581943573383125121540638102145451472 + 3861940201147895954504931890063880339591295888854061358558569354938456177885281770719887141578721870640859039980165502645146473259291072541684473532733901602486419738229650918058403600291205088470668779928308205017939297053299791094152383678043204330423190536504813893762714158357391189740008237685390199031 - 35423060069012236191511443176307084530902626058131473022553628148654324149802994145991067070213211946280070352304668667631137259208853907422540359109091283053282519650055052456871847388819824738705761122259388761418491261725069407890926434171573133110650760647291172623691209652306073836039471573447237365599 + 47050773185141801910892299273423358364432301931439308977402709426978170624607721282160779383351437567031253814616860186553950322159378085611678249900624584744782683292849858860229904604874481207131990382585071585995315751292424003522536309700889425680003939531351648387342166439521456785228750704062774042982 - 41355634080303433952323358159339961338101335033649441540538110433255456660884210746504072627141858975515715835928655361959326163258078158567667250611367432742011084825327748484665409164169872181845906041846312537097351930619908204568634162247601366857021737439841263860821326065829131517021589096461477558798 + 86738660871505248537332968131362053729368443345673654161796976382286320870020118741075624740289446074859820315406177501728150650123217147212981657017835855622680092367063490361072356825777434229311007838400267286005930116387340356540939452781056107332098033270840998349317454964931604466518934803789273438164 - 62783351700496028071971430961298480057357868845135546940407225907686118299865192327801578276307673212311951746065710304333438708983466363149918026879590983988664824400935747070413175460355182323109500240886091628332591175490192325993583250525050802627693973383814415770316926028803788769807239131272027002279 + 30829124676157450868624180459959478247054692170229558592062848256158416405233182519314527749198477539133879258923591220223324614460686222475638893122650948660274766768796766209055639968583361191625556320305566995247945671211805194044896093090391391442190528214612318691510091719325500116477909048005001131007 - 48532645031046831619822034867373612007129663540994152949238922711890936512706223416420321215706064670654025007203342728753628737460339798214328255765107223532769753212225960890190148508643672868702106799207392120342604204162439335799938179782885495664203862853667750798317009451065682064722254422102528028011 + 33502705118111704161506374952258821454392284164655920593396524168018120450123464056719836688175467347157865049031261317339930584551386631079383611398279881638370047806494865926737383782372857938541464052475321505528691818064416766693126775241189575711145428929991722147316083887704544516824865851843481311339 - 73974697342759307432421737539588948142653279776515587953240346011511832149851921096775847156456598783807872810345677686232745791002968250834482399151306305674494136568588211081723351585630882506750584570539078892226247381141543759868611797458171334996794545380850332621996103994678837873595887198355438517684 + 63789014119728751106445501713930469091902780337437810058763136381008851354179175874034260247034309724741642322017950634382691494261159161036745757696296687903486260284865247824971626343827644546578000581794482786222024468978829726211610947485959043377074902909578113818086608471907594288495529409944886792452 - 69752571928965435549285328752609526345045203555808306356143749877336428881893527186509196519134840800650109932838063828210854746230299107185850760164793844443290481361722859982603326214719511835969694479246423209392413331390363917218372148665329816035652374668434942196358112174019720162594580072480546143945 + 859115907943400976856064840231360111696210581604227219063367672196813315335496416326538424473946119376620661065336515944319325381951160039248676506414292798776734456736599115441799680128033715004427243001309743236779340916635813283562920206527553730102456405599697981136010104741882518286473313902985731618 - 93866045786067114157145419968989678140622481834448338246090943764283422061961583866478371582603637165555413531167713407308735004280481151743093179425395343140668371634928692852532096192659352303671027619492255242520605896333587475900687631456461497762937675231894825844259737690934902827660258631043102057658 + 95674146963278967662009782908604179451380094028519607433055705988792675814723117058790504112251511875897304903193749542131974482976725304139273690089386731208542232526928534718580575135878141105877600436876741572069341110204574258009295681414640021883459362350985817220697186541578310344175404429485511871960 - 72220188790806141199478625623098619892425695063767778790658172269330308421902940002962867053231106806236961065584725733574350277236502478954386174928915399469718287516128554340895462254226233651375901221908384369372530881059445395759553930575088976788494473657507526565615096981035287206469064363611387679390 + 80711500105939291755055388995274298783784129009345547210705501277454996695026826927275426247452964952995440902017578077809690119317226204665654200933431221485631258236815795688765955466230115290836395839103380490840130537022347906231157085879440874905122573095018779316472168952580754333123028797050289702710 - 20946704095305540973435470941855952605998339972797875752477603945797993804608922451111666168400138753509003094508816852268168498221420557393625776787301005671516860717809872751268444210572416264186965293469645824768001802270312856539554184285352746599846385653723127327700272062388452242615127906658203992794 + 65262359443653594325200561626151168958364237573348192984814777035788814906933749743359247123807736295968236528422233552353031471691744013005934042659744004091402770786356231716163535993213520945832071908646909111993459572211659315759568633739670075719470199796374596893226335106176241451888376643875444957930 - 77125268902553173138504643409579295226400434849095636488327606195138652774680656171443229281546341803238676960339159890919068698153160948887616040083191139105819703594938577433422632392583516097262767350861225910594316611561758495435674811191647684653146751347377701876348062262814044967910934222052274961914 + 33903173013918623054058614496423606270829779571462740491844657437659473579117870190253741337116382400573119483335693750297731288921653290965028687614715447571913417591961079529755091238159986449763623842796878863523721393730233184347942495419088107887054442668629095937002907517503455512675270841380144728369 - 15086317383556199463243593287762157355613723781687114969201631636443115576516348781012035010465356338961856964395169199265668248456755502012086271428721597362163977726221004846010756198467776810091922380267409235617244003359754434032081644296292288468321535208077961361626283445860179432981931771094218197174 + 35711697627136557250912202364752170194649347326280091292527987787652210884241988779278250788417358476567775148688821135519680876313954775932687780919240843783777390222903328866489510285263114142545444761126649299343574258494371633216579357817102979078738892414244426036300285458104190915756550671099460858382 - 6277705936296912679869275315334933033775659559968596626259933048187087146500708452335092886630152743484184967602611582744263703971860945746845241642755880974246806260283684331487915054854834323365308840895992973499384584488773696842007667920344383160992280399851963362804869622901722804374643468173341754595 + 87548743253646253892706216440613131291491287776205695911195362070829789131346907465262613045827812974294568080596730817475972322866660971546850833483501285795208383748839502341440732204462909175704932648317605215830163362493250651234859436237734221646976276762528349683314413721748628863077746729576803835773 - 10912710732713598926306052551820252808655344337229143413198858836282650813397688543432287504827007687129837317484356847873974390504921912153504447414589279245949665947578119445320395901561272568462636284361169377172916101200611413887887650992740149394148631565473794928471456427149477829103552185234161036785 + 66322984005449808556374141337904562328142210399841568159582874197972631142749698588035706539566526760323428179199565427430941084134055645279205960041311219804693288683848849821524217053169995441087204770338497438920677019080139556089061629627388625377320880047762378976670709766264520226106457966948213565517 - 81011327902217368365291562858927216563858630696702699374279378756269521366723287379018085125724607243247585887402753795353085771509447997848246066480258926629354424352199712607191758464166541154969858003195013753045814390915108939271909830842521805909874881896809141551091085275004920348536458813196793711295 + 30198639798466547862757763674219211831661989195425096342356648866263163584184294852470437929753114265793122118333186254284186774274131761823986996521364798217594908878581687621041377380768942827060137644927721051600455420243468535423766917597648938484837328875262925116129529953321398969245426173491198907558 - 58441242130092566017841669089243352611220978650747192490853033153753169910067335734535378504138037385696700672019410402591972410907494180109098288105385620389416948666273220289852387169268941264952905757518391748782134424615336147381587140490035720510901703857889136518424156953582480460861472104330318296503 + 59678665902868158296553903747850227857189510851733093452038742393595561927888755963655935129190228360925820080690017544393009311613795667964277221377470742307744756535515141192656483683782539724677991264879519284112078425556943965243232600130683842504685797699966457998678338826765128659412684448976602059450 - 94315320208242381329917578325971629893959106514386439394908727833833255315012114783354790524806811442196875870394536171433408090475555540053062418547142048833756662410393485226018311201021009167489378477103935376135952603557664441497547483398969250492760405728553182735200684684132981234139848580689307544445 + 68922551548065820974272189242791873717093686115072386311238787716946364731815528482231364716264695221681901417540423683037173031507977570844215730419144929731029363299237385766967075598868190226421047277237365941734561180411488210059012809436354898899145552072832905835108200580152581219012393846418667589018 - 1366357445755651836624781840598697263888142767861876494140101675416338671256050697264497028889309041155792293494904254122782992036253195149023347523637444742455495705209855519114445660095326126440375346988848925368831946528809854522938097112962857655210599182568251146800693635758917925175936122183590847638 + 49275281175782462743642580479821225713568132074166153594199124649814398521110407533004611104178622268684731422878369194898206615831704930761729449089952089793702121236159748412664346518345025709848284740129028798145246853548715542502720975708896955380440132465194412997320841914119133376669903281602716875871 - 89503594000945212340706440438526344066503675430253353663390658117304945041581822599799368062299800689987403226939628898657672282401344243622006726539450677346987912727677110081683583755585611184578763711987087894822466854055724284001891405116305655797693615618262677246947112365350131533424110626632368520962 + 51314359005594402300471011383724406894023192498314368375749934349481953779035691872806577219757956802085389307768277662693231568442446914952789341747570595019108564278117413267843425816130101257562939254619145346500730540269518698690431412765052726723715627586726058340866151233976822421026688233340461163115 - 46682101065173181456183551267599787544096167942605687106990777313969170668220875149749626412384335869677007251110928680953633150038381618173084544432193257056739864425932127484963925524527891529580331431790458146463962022821182142942276921535682595573954695443739440138307766454333343582520481524524661314933 + 82779991237291567492876056267497902329505749722590019272530970828267580543299089732072771035573991553042886151872782862933867623140649421810929825430730901371312109494318599970308804888516523919292550183239992253584578325326847525704034211560522144711368911856722146213398118405767828057510943130124751777973 - 17601480565872246900079872863398475944849798082755191344239949720051568231817992039043338522362744499534156572651251636843545868178237949030577291773616994581384285679473510400092787607063756030320450888477827605434056254718811065597555012619702999343541305452700340177806564161865449041156086843251752300545 + 95643996039704935755392368748493101242716218949536798895845629751402478336180561445836527253652784229606871938058136816041538125291905003957810967865119945134282486121612357957663832780624977575917487892775900926449951281212024871648048947470174116055135745691895390455899471359691591320966953998458457494183 - 13631490988510225424889007746942499684976088012835429798743913309304539712486622918506531785946525832268358943163525174467299507791177529344780284117603141556593757957444931130375913726920589771739528732846510289588442006431979557925946854723710062957634997988706606997643734493041716443653748431247667998003 + 1290150784330494026826697959212954309422299068882187095362426273346511120872614697205054819245075128267500931461545502768030101200202368092967084428454051840313790703244023314824145618326671855268787298466385812510824122213682045636190402872822672909369558618769693525390825377948137745736030400441416136254 - 61311495155398515119548451603794989562996411711071337383646530377885219157062947856965121225099005329056001179029603507499574949600556446953357094743502322558548460546469802672017294616340090781860381201814146193024724881892712679271112507881673785159920718327138777484452611623654011157916829868990556189712 + 4547130437923555927172831597397680862753778555558951451743846753232347651587216847530175658391079484928245305098415128984908101740754559780961878721334351882634977156322917062043849801195309306257559686300290898055567708958585095611836380159932917377907725952256918624999491242156836739337404373681955451272 - 139572319287690075198221148700823975493618877207369590665087870618655022696926519438286371975269356408951055262941863986127356785800870868930543091432364078202650535642461679691384582204587741004913329943364163412395539597557132690048225947672159650545903116302078459602674018000232836738578930079263672743 + 67242807567200405733535563494381958375662629411102741821479891858186614873843832088207133651329781810044583781497864536350909170249196323927640585198694276755687259326334360987897783181537661902347276505834672872660768459397730807544888728620246928577206498781654329648464945435793630343823013766187367511904 - 73675528657684733961404066457977096612493027369168061931372366895964318578377092255016253976476696755494888263326292576133692239776246392642772363364502840225307944396321802230672100504854118208262331995083390503486213662859164067750456130161824714734786987349392802730013243449359620309627690783684103441197 + 36315923836303394881456536048122624163405769100437443351244342923866184663853453103268180626919882708905945723428324738642746041734172621318094432453245838096322065636660726125727955140180437047150519909052734759184385152486779914623311398977904584084283407658044817521787698528689870815011793662900961137954 - 28617270889835635517517806866703593694406349786870351359305429453847974650555581545287926211358616565343738889124902419574312788118093858474000040100293564987271965582247358996525613763898387565399811896811497546675732344100729362839880661053501298319175594781502220085807828524800743657940484578837703783601 + 66313436242666642440137005573625425398121391532913256348813860535436490262893954161322146602212993287323085875722297035683293939899635080880048432564272768226635164295895315627341158595676222230424537168203916753982733611289700101987773154089071386774343412811052257567694714254661598003789953861197587029116 - 14597049986458379784628629144819361191954473630698843776218125328413792743280642371612126173134054103589630330250696064004424775988417713732584739777264715763425832056307347368003103731924266713383516982863710789413997082566197545013091499940466396988937286192600213106361795235873841565976395304719164782660 + 24420692566126140044392406382644662095884142181101310512247657740293006490824651819931899645162838294638481287809912570438146695049296793511248215624603134392805026529953718468731758659592254136786797378807010765425448654809206850639128189953370185394165209993525097515522180498352530289054467452940897357057 - 8286137006903391366417332983658159001987613674453418824779061643247224343144251784284209856930478203381909507334299514169931907875736691605477328353373607966124621761561403489212308076125859533139234375381816795471095944103748835608999111074858108001665318762643751921519644129912619661787245183929315406744 + 92156778164544782127337716386569355577831332018863318115706167735909061804484807534742388894514134181026864112554813169081920400337908711800011693912901302473996707162481198561455240598493106378965881739015064626593094435242605692242479252276242377935489639851888853913451649050854936098717068571336936238420 - 54942790266454033971220170667387291096463663436366624196454229512773515903043448861648418038271211934042433639559928844120327054504809106109077875963062229416885812554678554697394118681455100717503416120980978581548376312862923496455677962021076020378189774418609765397625783960350219740993753900774707118122 + 16729760753036727554666284689959178999612008938295677429029356272084860726493799274267414215910522515847927881357073081494399188913132729290421617592554152394921983229562481656633380814491177709121212962101452092307392064847641173550001961970373139240174429967380840666131119880921354830820534011965024179983 - 13740455029944911629252053846082042511465538348924719097591364046560687886784635071674508103269456429351799119173442855933188343898113622754264829545725585141454128727630684844679246255720413281630609432707108773935021685297924970370821387455516914110036318358315894111538386771122419907807560621985806652008 + 47361482111731147369575948588742957162884676727275012603749928736802417218985512529300833448098761563280509393651497457968774621291802231363920750966071395459033218762570131496273785247916587751547765560232409731004979021406508098197251405731707140206607403326780233209189181480809048991759051793236629670874 - 8141442923651996509806032970157813969357289468582972759899415325098951143579424651495471870306219234580286608707050261096273918400450203643645429712934371130562686258448616979870649102370139882359854273445318702173836791451695790835019790288236636841254341352144484703213715546566078164372431187827776679220 + 2716242036703486235882663055732300007861217226625079287616787308670440801344175251153508445434049303634699963826737859070297739702803672410566510111228935380213938046382519393583863503439417440246816375893742834892865682768074981430339238744828652000809398703506182059078874462038443592440830600533161570521 - 40603145758338945553166068713623639847797133877510553372355531144712237496018191143318944758161119234480837543907076391345204163488514205980982917790587367257477029447744552706184826549483552825393901235534919409167710296744467786206039911076227707984359644254677334607296480091484780280203745744912976014907 + 17399968236156715937057782909467269746004004646692304817336374081065367079938550630597815363533097039368543668804020403447304375177590620675250200633014145935070709674817867834296373890900107638983629647866330522184343375901956014916928513680412816336599240905759459340986100859610524145357175469842510577656 - 90548927610898945424358433578424924162172588178405735577681817635679690391826584177996283546311389669989348292418823906505658409667225512394456057458935065476904723652099626216877485402988560577870962621366123689355451559982231571457045776940299164513159892955354597547825497864931998008358490498048766541881 + 92766903201696687630905811191440008409611561650811996602744545851765418994556601427005405412490174618306462332366873087476174196618624596949598567137970105267572259802086413938202434621499754489260069510451258107477229862399546384692722792220572325427719017378552538440966125943511181188886930512655316518960 - 80309588728185282313286027674238906214354811553310842645253373899097419600825481392437252674738572996943265594174181838737343142604073095709388887635253705610551755909077165629893160604796864083526695307523796994914428248511770656751838248477035323063442925095811767526566687848698348234550416502630765919276 + 41287257038379949688324995042147654420048919102534437291324159590547691034420656538624941200490855998336836413250529876244784513986086775360033735520263469699983495320156325773259624710798358659215327191270446278937444429950494151392911199381022368245381131981472100353303241221824977906655180206168755007753 - 53153242948027376792395497743792899554191381423433522062090497133687093325517613094285058757266506938326718273394438494858036018132314376235286613529207409274211560694992626287721299942883995812613175170369175154910026372836366752582754269286569638234997867726623284398207322889061923372570853099076857215553 + 40219907854112345753414725292791333002213265293927481397038235528918578434361021527129577323352532087389836386003213776797642933286886278704962523211140928331597320542352481123030390283266719489464609938116451696303319213428235944962970511759891920749800611639947784112943780628987172170623391581851626395266 - 61147204809926210065883392306795787144201138985849908716703636511309981914413780243666466590302967911032368984137611672054411272402062396000775647210806974266455335022338525056892474539324845806760439292177610860848514767572967202716068155819587281527597844421909108336794074092510599672951120413887248208395 + 92932595280860959060588189737054780052896315287206285906717033058572232245695995861066073978221864160217632480927709125762368203877991321065793959034158401346952008749043309837377773782162744401369879322109108254410030405853352191254796443843579703864101020189111718447196559315724923111138802654433451578100 - 56475603349011316852935135883079843337638101665675225139313982230098392210314477570808174714310252832876349823202376456346397232449795543626222901238481575683884818663457576869008023303961851398681775731752694030830703029045961871719934706134672487552245092420558968976179797962032001795174556625940526388735 + 71330475810751002640713559472874171422799047779694249214738379399447638340067566121202898892867655318829616117366966631669299334077952607035591922559425052102619200450853045018108645687730121420161083489757903916689680532840117213729554124518279933219836737109894559819926084800176817124385287680698918578320 - 74321064321741264661667868781505393429727122912761075457532177507550389276391293158530350865755599730751765174306414435223724198482173488443472089574704313931012714008518061082877516404106721282382635937478162356380876868381642472084523349617333196584828165277273936295578638438558570981199882839191672811061 + 91423182165512395173423825957853261385564172109647655371213582363543692679081523456210978229323873944626084637903650822447872839512180539574130136058974974821695873706283013799289751361326325409307159273224983140699933495473243632349400703066982621825667495650030836932866501049974513218354218747721470190328 - 6772056490951017718597033099386797283649390019431730600768014626521450004314725980777543518574891445852456521930807967732039848324384691999374160009288284166630951154375937035217333196989929319228407886808320824714627428639720144874858844867277587949347167524510834386165931370620428782011054268092786760078 + 7355108970895299746241440085160756230115592678721179610426767869671726478990232175990162870111931005115527283024161395700348837129556560099875204073129510897932122181982036524905317219276002675915162239084313956045692875791092669431007036703409006578252058451674105817992264058635290134260618308529877169161 - 22797779627723986743400193163802793114810424268816373907760051999839387224499119607054621509446955019847365916396357880917415089493092485088387817093897863001624575618960055662042523868876603685779388808828680568738010243928380728125947479062401265327671316461435860801230691045026730254094979189354050548865 + 95906322152146130274103072786242501392714051450782747900332099701779347541781759579635212797676256332672857045145615508988872346161341427133729312648589384211205885399664618185657313776368994558118084988603808151894807573673581959580542466432518019218823215869630611166776002173992757366021007354683442022016 - 6255303532810880593721255506368743045146060234968862228849343438049558340010077379152463620103654895019495358609196857823035167566532112124223048359181023109488245387400715273451974691676481942050656746143354055831698212713436451887500480763592778555845288872955416321200645331262749174916422613576144868912 + 62032251802071786299931555534919192616509815004350078525943290780545389799753338071244803778766840222017694860647892597996154305764806072634029622947262539617451642631904686869877248827259570536563298469277159615488408085174532626903012857363896764701507761216472226408882088320799707587135365579349838398574 - 76261415517739115948818589247063606830248751321266208052582795213425694670653585079929016686928888467775558109380004228492290884782512333740935724078313478004554966799218119794270780886769172980018410036457288481935502802734990104803147972491769955521194836897614302686116150256576573048149780095863690819318 + 26239637954855686355094945179352432480878405674410713984941462615461626307296740797722284284903539814940826965044186959093410083437847040665895096029616080058564757461894326039292422940940464068270714790483954549879531277105441813989132415091480391774313865619813976509567945472090675158107521839541843867666 - 91252695437251005803668582782331206009247005675673084758581272114443635663342368584599917743983850238146344681036885704998744594455816094065940098575459890222859478710950066499787587377740220251018379473968509718151587371816050198190798773976644797637044482179665385759436375410411452631984346009708869058403 + 79343216164833428699475679013026225734444767802365411382572595799066386139428418755115550758530454499186644223237098048292700640394924435591472098451564156458673365475689085204897882443941804560363987206850881333709454835787755457806185139032931844178325888529950217625254254982120858301180462497341526282286 - 42427031876935977333178576551249963275764905406904453983008732785835544921416997240268023584067342734414246135249989632389723962220225288527876677250286390804053197637781960915640018021455164238614381858312851935500248662343722522195356752861508883966765402862290291071906486788962918849470729544555779848933 + 99244899993302936738651997650246170344673390784062509052039456653973744951213098901606924883116561399253666499684857526726927683835266551713266505526328451372811293654166531622574313159617082163397795379885229172942951209198259734169740865540081299139268251813849880254856052920917795354758171480903374146903 - 68691558978714843640171070347507010300175376312136258011859628980975461897314144875642293201853741595984138067021813766850919198003475611430864047272725180318654447179807909858228047588117567172304883789616565188946787613856746458010179601883212589636872555748355362548773256393139974031868890394997400427330 + 4787629095892537488964835383981708835663149080496276505269798306242690086100436505754211295196568225535736593593800053991609851978037717388461905928431016580358796815923028223404012524221012363656654432497076258900623444855497575413797680920121240256550192902624222652949600151508663421533955313220687353971 - 92408918702503992974729142602528890352869495653918567213319544782141626210194431137175452803996308774171534708325460854921497007736562620331900607251321765286858339153831518005824488755526728654678745159585350938825980865987347954350151092855036405474335206806699282986799025279520355598396487109001754069191 + 87785366921024068863754989034283125436292213357559057511585855941085381580148815180918925217259960466561089127507982120017678269099297470986522898899144322210025374657948122233023520157532792225184965948799852873595019101055845800849924718850698797084562976135454196321352414198677760650458591379281345286648 - 31552761013143234503605274798348514909395954858727591780741751626353812981517805737735009211802063628607287391353804467726351868828294511937088359539021799561234977556780213343723030879343537413798030675183108810050773030415383974137733840702265405293237819922569535840982001494474213468885498073735966355321 + 74054099433005225418586791265539957226116416070678658705900552470920317407740504033942625931500111375525273468932096717592432012596326414664249321355201889046912587898769408280169782823699053457604318548363748547035733035858870225474848147964370694786893397875611629430595672838581360809409718291532857131870 - 21068373519955248559964412211441098935365143778867000985232968600182585886494833173599334697203638487029288704635591249715579134618152342321150966934438114865606794352492936935267062115847880875770046448524098189951544497223991200227306339175522881760486928620667915764225950126101223676498359055777475620595 + 33515682993416261781326928359484749388170116065365246047010891420049221392467587999761558762889225567940542030969122428033952930767336926119869747005510254118230708454610503170802168042332235886362833097285401175775831802025916783109065999324857344620079492606203896739365451721220957969150442286024927648410 - 26863923371374482940791431170124012066007128572360474957642603084589142791557782201326544741310555082406157115587403998705995188087366513553597343851612333079764765832239954093870457182406248816533092646986210689129249051511239978029511176094510328307701117619903119941176063448172090112310420160548434202478 + 49850356529629476379226215875100521128445915870022311372775299952637568457651031067779230969830667552269195385963047402895563758320374950609688938066802086757385000673031854552426280691782426903861853557441222736594210310232124077348567299575899619246456067753613390994434789192410581432058163605598431230656 - 35139201356027905505910438006887875198593016953058386326790550897146579643335517835330494262764139714170313783921100356252733247655122583269796673064323915862290184146663734279101684198246652828645395777580602757673140626642656795447349628782475139724687075642750963662918873312145830963046059824990830193698 + 83937283288170743811477336515006836532860327603054574294154218042634544162653626087027059003215058205755285915031143406823787397095208604351657048281247284277511688400795392949469451717599403633095777144165391598875271615976398550150583009978158330302058226734720106029360834938098870925447462714671152980269 - 16910207859280815144050741567795477159876276068820175617916162760722464707778686022948216238066563585522198312369794763514322011267274184151392911907733675215944744743420458035722753074989697382192799667139751237001159135459597775765634562336279389760836312218096628683304501947451990617682068840638469839668 + 75663995920493097039472730685119074207301200734719799349685345270612209454270737332505829470539079330268718785883834357382791784901331962391823992124024335335918283090949514791038612067982544821654416502145942469656382378335696297296738746222867672578305044929295462887471047356747256097332833988232827746207 - 77126980519068303420507890880796175950950394723160284091163514971998602956716949287716703928993813880068375441928010580111425406266914729888361435989323036482646874809512424851657992332399082113703821616048766828704289000437741057245190900559357556363148259433302050876403391374556119761479330455096343004953 + 74770473292078972078652086050550821879928698820525669876711619066498844255527237390958190379454063177772207164208127732589116499362066956417596102652253624587182726616941905249896483209919489543220300704060983522774175995071916074389335476583524764775524090154744004105064134153939600580900750387880134113003 - 51964341811268989079298551812602420599497444568792520630377964292081351775821570829485815014978960404978218251842731555582567673381592702568868922309030710257795670350579501445202020069147062547229157344127184466123949586179827253080979317575521955459694095194670985752339563367983419271088951936543692858794 + 18024988810479451683530651492756288729787466712669781110150898367980405130258351791936884392623378105811520824086889785208756119707554596809788805112237190154811967676200868581535256717226244759340505354452933616745812810871437670663514879607821215358167943997703096251202355254545793428954329051204193863672 - 66899783641545701537348748934245528676634420643732557959566515598685602629081140423290931178706771355074423934339352448028755408606849036590861215763403443583651419017870768632796972080867231185995580944424690534918282823770228255230048913131964210115218340716779750347226095358056243131054584914925786191694 + 21180255652930644321516601798274750721639196232076018789039802320558810163200650201745139530970501665548481542052076816731081548896008431522022594684103171200008144083879227662975149244971573070463825042105143775580613305996814830703285107529876016808774905854402598011637189088029025272477762922336937356328 - 43396367688307396644095771661346950776133214657734456199803898729649141267162926145792718427033598943545726101281794725960853767365973046307258232872835288121128045818458190091755460954109647578379977159912644700601332038404355905636886440669050774311741104166577789127376114052614877778885473864616469571581 + 68398943344826994817196638391423921334511480671819618982491753879803368048235105158826989029829860679336475833480204319384542974621165107080100375671727122242836136652986377823580451278073178002797868527542317344928587644893348077342066627117865617258525522736809110403793887776133306479755386376895531452168 - 34468718364962979210657106067743005249305242605869224219678696443769257243607314926713142768987608802787125684021250773153148084974704532797335834328352254691250386516445762592983036052817106834079081153449212820335081833752401686196263685125359155905398217425090556960076230832964826438925175276251368678772 + 60630211489787602152017239433759096468015984195512960078594287564168646004542853748186151897951144837338909001527430182496737441714270987233064973243923614776942630495607517003068521835736535175946032733995999553206590724066598280132055710280061294173121814327190205972291569539114379620801912818531660790303 - 2706617968196876816903469734035539518044357534601027752769966230312049811661913788240885642530861454554136027469131111090076173663933058964592883958969346027214961556421564153976230993526281115335731817672585299796625628691448525848452977100786545823466712948763986882719710708277110703799645470622004436221 + 85682656110562766543156006136307970987957874551591094048642751145795464133776121797478241627914762380371068757812740326356067595643033236635612942323439287900934133620247150793920918178666774407402472480052795601068867853915768295006476090106235063029058525015964472514665887447441557424899332173640524654938 - 8319970813792189637882883805365796784246393591985355633120513206833521270961158381518816099920769548189213751358738230764984947762900832261290306231905746186706639234549299446726697985421440925695752944546678674601541103265334506235354622079095943328533230728401441224642008037177667696691134685442723731391 + 65253178691994243057792711467539714913842143313679982529066414559619217577708254084171787222118560927107214368752124094915282399401517678770525470591098528364446341510991038023525877558487431254062438217591324353059136301002645222666798296097002975256105756704441980301912245482364321277077431155569351981911 - 68958131084245424923095654766255717351019082242957400653393193169834902780076155134615879300018758961628591028271459735792613430730355886678875990908099338522052523378623837310285727680253521929477652995160671262970164187077253782688464150409523487035088280877111665307038586168815884304541891157572286086304 + 90224917254632551163278043555258157265434032486261203748225179422546361369141448068730725223006266694904226405609371701322644784909030895740087946118793437808912359698044536042855469448519533165862706647834459130577397821299540350372677124551004289411978719437421033721496855404537629062888137440419006693063 - 29421956307589128125679981622833050029884333762737607965819381305953795746505262085398414437496967794264635971691498818087195527068163977140773882426422553444480305303142731666985068795709136510985355045442469343217559024156739646718730307278594433400700312958195320417540789130304310220478078321943689804023 + 72275043541550880159962225630118205960950875865374407457603460628350101642787220935411810711329482205739081043758305464244470088174831508982844601492623514627513635748665560891609425415935445832954495306349804325079306366914140736213322377687349825080990046989168263674101442367090409225288022463597907690813 - 9633143018036631208425217604217349710676455751266198110239138297318445791620294154652702799824963274055768231361898798247827305687914741105174750247553489239248081293949709787561787615025231436512460915253180294962192003059293647902110050855099455890072022798422684618469622623107432873383018474078492972287 + 21537820910564176696996384831702808471002107815004736974983962524042425853788289868450979977735922202746508599289947562841477774371404198841391872097285003414834882832228393730014216626575022069894942504279340357472193449152472833078766353326056645361214473849400461918933366923450234866509472587755522322972 - 24662378243588875106170195151176286356586277089365020471991273459156794340017916029615586776810905352800129336317791481260989018036794730631078962146735581735888760293437043598863907694587888288230966735907811330911350120504835781902200186482490587228692680271596254329343049670821032778524698872002935151570 + 44906285210225346018537274537095354943616619773633486500346502148041058913549198141877957394467562370873566935782453801447825019161753262045086580227773655241863170908597761391010185206560655181812241921808054517527186321355213371008419973442256649415756071012240297221079116506831647582739698705291118353681 - 123191571096687328302437733387433515209152290308384996043061964298607595191869322500889849148097832256376091278813074360408168408139155586240891340197053623614432481924332775729539581907012471884735586782704500932994620476591829609317576250963757461555535660416912113555745982315862060436390739553477943375 + 54109328473486920096427337915351646657773835230583053533429793583047923778240031670408537963336157935289429147702408696515413419199428152412940492550984676589875716890732640908561124287619320295301832188772988473529733467420635704079651903534694360993714315106225031114557027849425658968699037793631655197428 - 75468899443779638731628890258120258531586230147228943861037252059470366971009106771074137599511385950892393117881605743417334385862873443281521976291653111575217287992987970207878241737612776831111624948956763649171301013339759409353271653535432911577801300400121039361062821804318654115291495191397109289091 + 5579698550447041553714642552773952287597393684395108244882055380676956866213752422474667612374872995900030842286692824926553144963836819027950980684596400128620826403052756148833870005357996535536113984949339026774937766158984484322859168015769209679174755351594884302156290801730259133862210282161943005725 - 37546463630938841531902717946466527922000165685082890037393584843351205346652758845079137133494309002305572190356433553088442553961527940659942323706431555610040939955922606415280247446998314681537679305113891773374281887697853787943365476094203073597172843778396648968370974854022700186152964974312530898080 + 88654381580406084946155284384840383180480353881996946570283935213838230807186258405488774065550373251203734809053392512894559558710016428213574824896318292197476664494032058324937011909140879111587718949124591869978430245416360714439579556605842488654368861436689838769105179293091613438092042085069811491050 - 22563627428962192165595424026540695323005443196051377526619846999674088011870689205911912453021620981757136802245478286265466589637775722334015743375071458537003215987309859016860531095053891990433881408978949199958698209827390831647411712380436261732128843353558522413985345424376602092607202553311185831746 + 64119198275219855968105476161100911403668428488253172483124579363658940865589683527418059312551955706131187079305576015454467864699687869396036024191721295578574416984925070335178047835923427491963211661270773491171821801140099391516982724149554183434097241579206180548675453355164735470587480774845017942273 - 45048586219430677179073429643421097448171323857298142511278912161373831850780343417082249308174402154016659074959753639995990617984301849224682424939782391181900533033899938028649556575899408942845019248865967595236317277443804488109123130057732719037497130951472323947857615728671005071184337350900420014477 + 12191611569639974173167096589666635441661398988201151847257683624000497065795928683487973800387984925170329022735103648551099841393556279681684387943439105514323732417694503711176179544181447017241907037823840318569128311397030631823637646857825575765453616786697397010874012361227736225175742303421075725590 - 8482510597810083375603793526276326659011286686568832712490608559073817992410166566744561059194862262561671928407044880106498138424675336014935560743655734043387695851248847432473141012033453053944077132319821161204559575572428349300981624114048906140503383901667996454762108077525676814819389489134957866014 + 18117341411042721148111532896686971314456550441532000286847431994625393914475721739110048004979282158194779377888420176731189220173936140526876805464147336581415661247577865697585709526788096006688691539178351813772477885762498216319245826226895149585914254253823454562273669519877124469463438208733525980508 - 92874965654627527625683559470855845638686783200234892869009634303894327080707029037041548242762667536594548411850992408240075710273279047102106658824721510174854881420532478901364083386340156399804366944929974140689493500754551541151364883042673260166340507903413471866739868655640362563907124797710846781253 + 50552558491118568076648492657305739799114541908759891359603190885536900351246393565269595065144703215835993701598129985947207271854476051992550934368282993638807130135150684548526150245080200127863303304526766736126566601983136270131406073615693980539610340429952404057501060334405073650869192012436638345798 - 34245510096563907773434404002990018934781580041567472668067843009539093700886381485911663480264587530868534600648492718291059288809244382146447229352942900395456436757419067427646964770218285441264067108877433984110261803466817108310077299707905482912669782270362249155183469865574266986137489998084759617548 + 74404723408280613305757689820863751485470152159871951407305331931184439467871029411709198012493774755587152918864735832434499842629857142114782386655073322924531289814208416645729268310771753829669123308170404372423426581389143185690043719540634079900961880462666902148621512514947098268089398501332355411793 - 40978370805524189823234559610092536126557858132164084633731732270132204888780227294389129022177644016061958439940477535315031874146320902780176545238046660614695022988945742831127552548593029928894108648555021660759890659012371073711742616171023196424466823006081292624690752759077297736693636457606804685851 + 21175351219777266591950816829201954176000465598630471053746213035788601201047007151624788604696786814173011291147320993873149156376669174726686359897086044055226567780462495121547441619811099620731245024709986438486190218133745777769489629458327736848374233472307114958678137285695231642621957655754950613667 - 64813875500260853124858379377038212338472012147709788042362193203005022479061912106602525946840359660357597407743104365224535043335976000865539732930923720333855805583015662208249266471712043666675063809371719711903638084881027525662653931750996696968648780839001958074515843659929353246258108889965797911523 + 27121099380395711101046209201126859111399080865693982244486375872227893562639869768209334911597173149719743020074078042550681187817164518345251877915206934222541985378976731698878585860113827898069318149856200932280461529461900852865485112281228231235572312951818342069257895769532091076285071341541742292020 - 6602008530285954907065050918481291162569954616754309266051329394840896820584389770070447422843237953603568605321782660265008745228791432930062688788217709743828362709323462976023052195994933191086419999965254248001197957966697932044715221485990782912442681453253131424685082857099897514056642209062736211829 + 16361695072300374533487934822495281928514852132505877399113692841146903757489770155187246012298898965970447004280337842228203777045352304100274036529848453267931853729259065689634266152397182828288267645426748911910744626777094564930529561844062945972906519831210089327640172274113812787641410878937701988877 - 37588338592012433793645390959514206563523884699301763153776656279036822886681296510570967515296540228306712031282823646706789241928473358348764259657178858834796358428874943022565008860010869270484779788472162159070370938540443999331244183808153111036678418771740350363133345097594821499426256492987430104049 + 6684016449165670223950677374682559966125328607122066955983966369858131340487753787760326527334502349776062347620668209826791220791921167108006297410229814549451856694408079582936452742540294519360839621941890438399519188094368922840389445376382666419455624947667202813185718587677706384103799778812747463509 - 23875092705711405607679623258094002282247882848884679171908017331396184334881541226039008157699392725910376338514884702555163275694933920849228536860502303735224029816756016454495733006649137181690478052186118737544014839016396910609992000654606225875559196311529325549105822869343106820658437327019007910511 + 13052614416616843877120913221662657279301822337947295072776829958550689778267816557952910253292540000764509193927794776995129085258862631482433636514832748378404376075023454090032086630097635985576699737591087661987817584620570356142260418350113855580252654556489725906287485907467013460299846058642631013 - 78822801699170239888529712108527628851571334891061532233822803306729929416564579895651198242059123674592562421853747895966020329733376535340633745300204447652337119565744848944992250053146957032469695862990271301102493364745481665311510531906379493587959009050364667892241891090145892745379983075952781669106 + 49755412756358617456494413570316200754276208486114142734897171227455546013971399136438407357599948730794933067858442429708016794122391790080283568450372535690340280444077991985368513688659713308486081593408537840517444817052165416724164650414186162392927210863423913479024947539615888934532401047872625163318 - 45108221616316340093113650138383340443794331108894896493277130137622984905437159686445672704468444531785444147267810562965518507434602709831125065588986018843742050137736963023961857855788766666359453809139611512676704972897647128590863410572991306762916253002264354887968539835020039006773643868816604284437 + 92376200356569538660638633694297591530220798232509148182673503741459355345370816357064784194514575195308707811056599774101862868581040451342775460483096930138293048184300056162409309741659238867320011835328033040748568806580520236720850648631482552456883655887436194645397477179270152384318143935424219166107 - 40890961788101846588661049010633971361338934240093638047895833351775456840969628327083296893016061476557379573431258827604674192577950661123352883081152385669154695577876117968846324553742046115903647064178366557665583241513435669995165410740695491461448049454589596902941566978761432444173579955693394397931 + 63592863718243278936506428034335462778920519453855161144035395108531495932500061722704071397393459396175293391384850111894346687401093126982583443165268266556395943414656621426196287578684665666142022736276639146332089886016979667972250928194051760682089969371079090907619911937523557403396369554712301248735 - 84907889767304013924018171014775168067295512308466969585330816201688761176757940216770810860899537346929793457410994844869286146259814476975622817594489977430035633672299695264757861184146723397453355618082546748401116530210516059505923926297734479785243266914380092847029590823224920632391084520941339741946 + 23789680190946463377812878580266026468980296090596896776512357406685563183800866392136398996660160021243336255840699348813797473877608792015222218763301124531498446653407259088492387518777426507782179874379650177615738345811277281040874401551912793699337621810943528243718507640269256764480326520644564475053 - 70922074010810330483626698984320197278798989360753724078124984861642131528838419308001242424870266418489226288405512663924910861139212744547919419981467648505528390290224409643703477639465433156605164199614359573502017731039565248727787842815424515435560243417509488133325216911802238467040819482336461028109 + 51692618451725788561880730238920409785282740451710621959878052849420342006177864684372667482852621766263490428180052498956492675930825927807522392270932954794928495235974144157647512807159198375223811142632580753183119958426379587798110691342776610423279208636876480072954717910747628833547209799178484297204 - 43853692518303299117570838252270591355961362477874538310506582340134291153039974760386430324526789991527609845317914997818390052680806785142109424805324891090383145217253283639705603275632323935695595115460529858013060843387419829966691636121137269642697729681861854076081499609296778475211400298674606058115 + 2813351483358697640766074358907875654789901126124292592231138899837374568270648369080335914403833512845259541007480189004574917302905823687871156658443419071961520926650877863489525613763094788861458056234480218632318861126165652611792161489161382036217401128720609890003497096883840935458741736114408015758 - 80481737107092392601986009159758391354874116621950672503739982241659402920273781350059807187242852793148058114140525100805276506182142135285855044539263292862571336865667362002702143795286765187045551861075867695101173742332264165262654926617276017239728371457168568956607460326813322432122427231919064882510 + 38101729664801843201057935962839676511217416086731014378517228130001994526165225603162825124075989361011195694635367078045053412584692783174072399384146361331153956311140739275470454937791096083951911180817773433814758297937110636636806665627398142380994788315709918856167804636280598090783764299925850693211 - 15713358107547866334219384086943006902673194121308887342198381819766584585460360441154566643262514615605989308328752528035962548163722376564778557312315225532595678200423566712251680070204265292345724697377968536770280545009428590412607504614926230260870780987662150679821725290551515069387403318756373607684 + 68117825343927853637232458476673585572370414181251136237215318736571872544263324792893381676471973546822534583188510607544085340769071221348109258216237586806743150764736202193144535114327119962336442054940322129363713573477842159535700335338972368576824714388244630670523828509954966367587162705532307612716 - 22926198274632567000610580166932156742122123996892549208694531739738603816948821524005324100584291350190035334830417138755320365983053312757479149061520076162057615766520458069958751564607037060528092498800509160916888203504243081973981179584654050653480167885800186888927862800361888880180825903195429254621 + 42222873819147392441660188782398332746146777002604581110491809455930259861920723458601832169789609292336004907439939797888855099598476087097197072074763361203618786852993079477943047384015998415562336934347324481734564004012593049601128667257338328410952719640266398788846674999639422242883205792438564670585 - 80153124406588881694522155026789225527082628657350435318251246476042276679809483368844134216302279216199320761582563549740126847192986419379171515404208303686947906530258617048282433126270900422427761381299652314921636409074095630026845278989298534893535435219845077739742982452067776515260783218858136568059 + 55947455981705609565364363925692808196164908674539214336069148537181655632279530356431637698065452645995425396109650578130614039906416196171589812330377759147200961807527200507730322048187072806009616696134161408689255296373448560682242571968548047713762832886666408902133096801523007930785690413660934817900 - 89898722240757048087739994434212189855000788322502641204606541214747045864415587667338420712773726569522473573515212385731173571005778586760374794975689505737434591591832291621107283350195100628229280529383058117345893440748496075173185837057978556312033987838071254046162347808070513031169254721304592472340 + 85886229039393006968041747743349030129344641229645405538426302795768401178465728662731135612680898023306190955332688734046321054327382470140661115123645337109271201459269363626667304400456314252952609180273879491201017817502415982803596675916252767542695223111468881558738910311004251061568849434710271842490 - 79668706198632521419183214510237328094511735898813629739252119989737933905611791812667919786128621890326606783413180136027061540212823671572357343664055741624110432021497990183002329195010073964113444674417686826849886739773177267841431327251963108153982847465719273176037415383228139697159198414601906429272 + 3605118228054580789774687404309112759157046282603933245912645857746983017661064786190261000528088056839300292450233913022662421656863401340724375788948738583021030175148891524624493727584605200272329502596721875878814357150568891042741235121551620405853932117853782829631840344599109765887683119673419734222 - 72513300080738593572102530356371346940180314526630529212571091160114875015161853360658929897015248816459029240024780034818066531488298344566756210929253227754493883638956371920888278168052474314726113312110669215882515712088432088669878794940839395869561270078666210662101675300285027028714385511661108981715 + 83620974811733662973779393487968121821842502582666358469365982399568225935677374240044884084395074673194975746492436990376713667935780027843780801946033107967492183936657535634486879884252048851506121379740885692584252524202095371871639507006759539461017580728508057551815258359075944269501392613275576252860 - 10940928037764381164448101232691898340647155166909305118329530931140608891606863489743984453149263234060266418777397881088992917020364348045480688914170017086335508537243177586898216779264324016094544904901019679128979676420962707223462401917146408671715368554527611508144724090811510848850811303941646799472 + 53446670678715789492279624195137625236207027204194811867430342556730264654549539135149605994358670360219096038244121854872107835389973197598794485829645466555669349730403918493394435674660920900355394092194749883001610348052631573021074098672478798167540666773617555451640613276208337354860872950315519397574 - 42243325540285565276666729193604325948845983921893963739016788837218949518075791225553480077134874188922268060216014797245082442804843762207654597503474039672275131923234272236169843629503703723376980639630906268617129107747464558533683224267643469272553980944734702480210416594188324525781883122375165402180 + 43842763126235626121060882843558885594106982912995639508656206415020180977417710290852787209735083117732969769073822493637572548439997974042555501440099473778386014250591302432572114423169603239108289221323372445579823133952902556752375362321521771404886103841159401344471977993535456319951023925715975663312 - 27347426897496787510339953048974219869195383124009394136754210738461648755109344244053256552758104929958336434913332632404115193505914609637111765370629755485978504466393582530633722549827013314517751280278991515091042478641601405935707520150239882023151684076733797035205185437443861819100390970167487678752 + 23308994817519057758400437517996705565412262795192663891109154120850771322732511915252212870760406346035371643392116581340369622378741763457279880125235486644326369680470982368371104188315858285551973586890478659283568946339264200091519453182562997636414599398013501566157380199487122731122537036025202714431 - 55540728648160336314340873322487421670122955808324179282460802158807951122276435100400151284282175123720602606578740140004721021463568522869957994157653597730045540483190341368795249174607619098795064263477378481810519326816317983212808316523427422189525213364823377207238018644282329546145398909862676557342 + 70546695818523826532620354326316395788128468589815410551294118421084216643153640029363790002519422037069310306985649592434867383448236448668174925623379480030492167336882477126702869815640799887847925223183104580923754122443199295358351097268607034116619550024699817992816295937117373865230628935243853533027 - 54694052833061177982401595360526956001231549978223405696013628417477744660371616064989813862668763124311761836910032879356015724374330843517258646380376315576766486093875951998036696197970888392744013406002426546955368607577535753168264345059291174126355587670028087840459767083901633205949446165411224007106 + 66671908282400875436570502712913189578264390882645427736723395603681488352445324932238673504118168155226019505023613527967821550637623101710524003944214446537541455903632047490287715897574818607429272525805192466781507727034115496067787087097067648167234704917721131507073467442123507758527462683662846530792 - 62553797710794643978170056251173887897470393770824646587606484622746392261293916589464041788864548194481190342760912005922455017159466421037685750128604481587540852408006045917127268853646746008273542873795706330044261175253637360247865925417438740644805242749942020749019168819690804649056700597506930462990 + 37722751565240771440941785580942939461473694887162081764098417414796723029455076967799368303998289115021543075390888616460556539660011346088155230828313960665277581787356268962549250324405766573666959729185233465749867405631709771805263485654326549072956858635697494976249887179110417553487539144610508136353 - 25000680487372559757985069395751144996742236213077923396100896535821314945387296050231900685059493500909045763390056224544326547591309292031400564078210128362792354634840776691482732549958124539545821670655969676880093630682919983921792297608587198078331108240030288340697466898318710148096099266009981262477 + 12757722249083233105119393530989371536338670000702559598691465584550624225221303621139439690542574276707961371669652775196419771184511045137020703088051315752654087859114083778149668624667090748508202392050823313900118540357288294533921268907769800168625848140134944286753901049547025126995945763659075297095 - 16196827066645111356261328806577165494246848381916232731862235199834247595219154122427271725916133184173036403591004151982678699558375470535924893326019226916232495314155643458271195827050415548735282561461539839057348412631890316489119582908162784710525845259136253200429471177455578021080199301319149563023 + 82620625999052255399612129658581581125373826140425153915714200727487226956825687431602049609701709280300206716365635363781709031084623295342687835103861978440874716722960430884539299539735332848478014671505075311458683055620097496385889945605240950212662639206330748987755746951761770024301179414888546990569 - 12109220625305474879460127282721183631220376088064375334470436544498465738734107138264287452673803754857116911187434610699765223064898802706814930626944423683501923255397692416010142635936333047622119769938619689409313968247797661448050441093900160664546214289318420628272625846871364883025218123715881228525 + 52474522356246591613655456993333035257345898215888066116204370729862287995970985591249785723683490249107600105191874354033239185504298925504127525578929757851252360124251566063645443454526291923855172719791963824630009721431525769771344826714322427809854100314951635236943232393150559297008100754853806526653 - 52856864095263082816677687507245399123160649699547077409827747172836325677991804262575272481421251758471505581934558505400950068934738779092941826820791087615686537640376404831837179470462016901028097854761586195301424101043939730580154712021856846937256430151211914546993593132479457160251145675164622844434 + 85087875764403727913984419828801013566375429949356884932895318210988784459967676794291867947152735638321961090897987651733991768551082446400273266381136027296390104127736849201201161096543771479893820083465089505021604689103275904337656323743752460611172649414445311190961718812266118479414700646863606343397 - 58400484111211746350213309061390073587387699424558743208728844151927467619711214438649500942906125526361278865864123935758731807817772900106145925677637840821303069704749591530326693931534816870929752551862416014980799374448723737116305712572265956114291710668509663138986902791640488512797788268863431636056 + 99208391328094979429163706542221271357268829589148792262892382468317482301027904693613532825006337774964066295546947304415130660782296610803950046978438944068248285747458744084250997906540125533078600424668715139330720744426908959262866343501186009022423109720672161904638612033655441479936880997047502801180 - 83147970818289622974576156129608842964872280673835868446270287403857176167044028393110569625060114816697870184552044639397187070566905130837434423754238563716770850523792503317658398801194333562279033658429514456431739714318185571571557847472536139588958846828108286916971234448870805058369452935546420120386 + 54045931330669000174091852702501808459516734050099867022032930141277467174938861354840014476560829527478172338629513286548041942947870711670764965248304823716238858425413755278631925391003104893914920557925149936541965843861251365179245767807361009605212100235455018066595389746822980990354403603580106620128 - 22817884487555480141937274912994024942420955503630803769074966385266925114378260648416143175502381730474619475610837469870528707846692777879120001470098396133490204307159103078468808271899600824009287351143413982335765028101570035324235173112899775213896824334058450172893582075665831968111688798124668997122 + 70554697813123944612682497211206092856490963212398122867501237645305266207181755085220242922981617216092034254216648402113575995739439754787074423382087292188742987957489828291228916465758951197447275943339662477256280227745079860985038531469841046825200178848837571995993891081850384929136889129084922507968 - 33446050044747370075798193002456289687875134871830584490115764909939131261764993684098634326784491450198896692109051093217801299494094721332546720762031368213278361982797369517042792021858497839307630079129471445395712502700287013001422961171878702821570578903271598432409064807159119235304153652494556103482 + 74594941657552759388473381140373384712491521636736974164559027932236242150570507161040395837242291793499175211308827912233134343650866925589552550450031357940089743552297424841289684299881981945545296917458815445484199476749366545219646148225200239754638237039184896380712289100315878648104303645801787876691 - 17399871470507777563312504838117153938524639629198697216828311364624229919975804487241820940421064086104028226779471434608257517404515282490701894695452625338755004461046325637812917212806095883879665702489541554818933100662578309176086136971320700607213826212498338830565221960551746239664063397698811876746 + 1662939225509592522197933791350398108690505783035609692584630614655705996175949198766681281135853318154406171827058577552627323391519525681680713646256855648661907834966365950216129354776574362252712698225809043598327317726948511196630174142243510028164622101443038293380180887909067664479739642564544914252 - 75994442165105073364906236500655513111225831682304109591641277012383914565502524853724923690161884372002301025739880694281789428298521357874345710219785216904455965114938248780273356356713464189756975425397185396915933780373890613653412189495873251810378329662943121211869964445025817160531036387680796081045 + 72368970747724933155887377349845584479955191785604499873174278738265202090922138500615169713816321003120442460570376368948408286741651213888538996281614895857491597132892133822358040783890781302398339427020814332247959533236635714063596169097296865110833674822814032634793715923451366437285287593523247101743 - 70832548747131395852163931009989373681111031161647940992636673464355229172997126966909634034877621407037576217293510986941331015573391949118685642133054823005360004362688147664206808309549106519479293445102937239623436800380109905579071213682850171915696137027990486417828054936714983106787223342633141287982 + 95916907583165503164089878962617720072803007198098471368537640873517970691356117925312494417685508578676220986742089878132832868493269105758891989069913660792732575875181144253958072634921990804901028381323129709661141404342346945119763864505420220892900543342371822557305823735253845823115403123195860953395 - 59831959943105630085367428812248346753467605442316692157676045956774990274651533982791425671858577391487857660790794703022907255844401450446113468244727143174179302848308471628294371085501678859274472657325898821102617785419541744905428642369011974421932461303447741703442292631677232770012629381587861458027 + 12735916648850155373477367574083272888857601209564245211348471716832762016775540172056133427434451889540634911272763987323862303202367386166046321224058795863143440220679228669172157068815227390693398048344218146090977508207018880268065627560211127178684739116277807621926203608638097311020827488724432979704 - 83997658556826434569207862292869522104591204008098700499396408045857711951622448106462727494334685535601950773161964519472851366044971568605483704978997381799793054438849292975775434001461343740523215885803235114765631902665380385618763275862007926771887738936779748350588852466940004862247978939660856565275 + 96119927309200662354315926375814995867592655674584672776275338856325179341820994432712661667368363000907122140622169157027868153917275028633260461356314655055286953214411475077029736787464341586057796518773541435742670426314909194551453311544283086078295306141813264963099108839364309283036432122817656729287 - 33813811292927582166361023457019740209495864706577234402456453783804159554550301722783417170139273138094384318828281741980630340740808037394878771480626644246188568716248706478896060278106177395397560793963208598803177164007500209426353498421390264994961914734692721835028333285354096282196939436391430359895 + 28656086562123289403458781281040278354041713414094381187681862171902906435053945219056839513983771229098683052554734844113120176591150523618730286172752615906145553429742801749763582097118062679949868702729185282374233636131534640872473332014974318510984841685188271002933261262501246953878911094748357663629 - 16085302182363717143677056693582950208590592683824138244204793215091260338548567407732672825358314828351891136323810541454718647856617201153666991976070882956506708763619594440184711410739764952704426991101492789856975244300867031073761598811663321047662637495133739892957778821008829149265572344064160645237 + 52531594131398854733049778264692504741081408437903660760940113324902065703890589851175965837994019851191115486672913718691610478912639171173379875169065376121393994465562546446209531692760282736501168417018306966034800667088821579492388366048186945045802046858429147678956508462339279972925816591315029589647 - 60545065121645771749500231628631454054343157523465728634063855463109174453553225671529888801658651959923429339638098884658799612277959821087424843961964937705365985365555260009237950854625146727837725764206332993450838879202273184677291391147920879712222968287755952482955090717906448759329429914236160297934 + 38036573440621842717889325514946217024326913829373246871593111593231483781894987590125343891856433249008668908736923071885514838467295320629252329236343945141570261247465568934176899032990596639550938808239590166265505938523618745532394682322278924334905151190184693831853383948270050813665268775149650820444 - 43157722024943799522985579567732106493333274234485726087958110025747173115580757162810740446135799907731621968578072460822438075931802492387697043034859840257357820076512124043322142306450610562286519430303392387925901452113657997962325548342810483019523009712908353911119683083836068022000464655385415572246 + 30517705857210819700879157536941929761176638487330813774287117889674416200811344920299544008220189653710554589305260222961033087606426287979653504179298975076804403029466440872903849002814924544683506542555325284106456437226651428319484538742878592661254107470969259158786656299819181424477255795673471865852 - 21958872329643944470989520826901797595395020035319437811819605045654554928127682595485291379915592718177141588294675219038612807267574606574469120985115550816791824917581871315683463885902428784426024084335597272995645020289563121781849539254247561329463406240654336761915322679927561697572567042716979308311 + 97119750377088283142619114899412910985224937912510071022420302426315038677186432739695861377496895189700153067100026956174458549204039996438908657200900063869557649083245117537693702082273938372642447602024620192076773316658120440380216924546682291100672948523902802017321443306507464936769080253321265151416 - 59056165954943254792992935611663886544903787860610326686409428242745398536084094918683543152223340727802574614239976369602107709756019995523227170223762957650998514149044577626302151647059395294512223064652775826816435779231031645397416043139744679832691012515123844910529716562938458282729373024979093423415 + 42965240031804943737574929510900188670898304424703727465416884734571728543481059379018812819959263006307536299424589743029536359834445488923406447975262771578819479899530159172949354119973989877849002358608145759526819281661361721622815417184657719684915363936943438141707307259993488435434497053339303576361 - 15575014778425352563546386214447233224952078602592134396172448731846017286687199780894282345216318019962113327819228443129390076392451694401534448519877525032554526353625826091350169058947359930306610240330614509653962446260791392233650691944969681698499235045700521542508108709023782773037170507023292061613 + 68913079292403429172778961248274441425785457657957980671655732999494383450207524587654751645523207844403926006130612072413048342709026846429297838264752573605275773668090027708000510737207503426425944133277205135347054574299997666898222196552299892928759419459519215668703922472551807750394170030145846635508 - 12077907963330326129695852235405487482432763676975423256864063143968218051739204834890613584781122903802844800273648757850020366748642169897652815595491804608200976617254750148873333139030082881295316862624549514612331675787248888001209487090574659427852897703825492485881776081802765388046781853559516658576 + 71142111086943867865853331029580959331371836327694005348594906754019725079430150676544516538931877071733075534969208731975972965622802312922585114291783557036019062225661618465699817971600325831423724122763302723474531520048321684291120115324851217790521395307931614824922694897683624020423417078372768871771 - 20384954196315309347982257969624095238156103562888488263938575665713990322185992433933034971652064257653539475688092860706496279105487625079693709422711271645594951848450803213687252810090141622797329636527505364137808833747493540295371455320317241587691740867646642574130704068091353545192480248666143382039 + 37972611441192017278911419583135931553704740533317736250796594493035504853893102423673100701491902465716389023453119891617251446863286621882888723579345759740522086540060624983683753246239314854940033481497181569251804110219195232006300269836666699820573057027924199935964377408323308934591438165666966177415 - 31244481052134034050044931951325698959500382325191147022787687607432432310820192884951550133132656945728229969103092387639133472842668871962424098958007065781860346279734297993565096599078293078001348321103626974221290167968970000021448854207568001768946445019738372563941759086395984547272051740172111519473 + 70695982319941418125494259232694766701483834362304479316545167553116532200068005218387473490561892321988264989497935586828051583089709132824499163037555906825107285463099381119663817851573567865929064172562661632728346170565028692347596117310351872002935686062596100138879254619498725217584122212719382045292 - 48369237230461208378111290246959762050319598369701481878564591938667686163679656295709391620718088090704874098881339708241186048639924396620927299014868624543817382876809231087297328225345344036488562336760283441979357670021922846010612619991078644716204118032460905725778383782911841438665407236911963074074 + 77978847338448059133852940509739491557417527056782838238552735949901427584398339560219942335784533427542529904896360481252676297407326007549091715828468283082417029103813258363480712030159766532041631626169770389151617506393615967466030353248839334551652428711422077347168185422610936838689521383721650046863 - 33489191579513625108801232132015868118954341209076010257139268392270416487705908784388561402734341968922168986463489887578906427093007957166977762955433975235396183276117754773637488058983964521515462277512636005757901370679961678351527625905535512475955566977408289886839371734689797624069947995988621557174 + 42699524122718989528140726940852697352755739249890073549700350332284595971334040580408332698033691737985442808883297121038172926346350219406481214965120142134423105136387673108941136402769697172422858501655745493051153984216501021366395618304834822107103719071065272013783784392008277366174770454114938586405 - 64823477925749965376372984469875338155539342917668762745002277737807822464771279157284313578036488568685727887839208495779542987975667420237842212833527439865388815039480835851793703144112093192741737092869606442937373232871983759492150545358240175105713124804245503121683408593659526389518604324867839923274 + 18455301523486065910286763347411092836162717373227267218319188434859183704952152164049833781713459736618998954097378266702013949719232832248008415034175065662366440213226287330502381753273000019292285939106118101085863874203241775958497313935862690238382827107780119032354959273231216094249909667003939260811 - 79934207235136734067857754306220573822029449826707039060783592206881059167950690254091999852096231820782847154279809716997772302761602668382957828900396788716441640772298732465678396396750586249442428035653724464754339314574347403541180042083193028915939158359220988556534932186703982240975862206888426319680 + 95914689485003472584704509526953735033419467113987338891826657170867606721066384092714140268763636386958733194395235588923376394841665579042223820140322410237514180099645245171275171439737734731991775545629991495364815295666543985178872658600797355838246405031840351697135028054875111784764593250122665106860 - 56783020141800563050625520055518621735130301658841863546749848445689929080185030198183899436011569438720715902655010961581663565087292590753086935866572639212912963385158843291512481731772848843497693857242645637428994373948122399193344094631821395412792633090552748200572819675500755660854989173246852718172 + 68906848738005105801442100185365751235443897156458148395340318281319187098028938890271579637498537593758462417483788405674647655640102509692103724255120485201202338715157821715554996953161899765932054344990702701641354304453932277891805108657244485254119410688833460929567759916145934937302087448582179666467 - 13248900762657152048006535455280019155915254891346156855695505844397145129070264905901917279759469443387549199626041523035289173434379192884482034697964127368530362606856384551192939805508994907173383539916256005464386115897405467729413482396445201579089192386953428541701184171681551813351881034414785820448 + 74279862203437450137355795404397708316409093810134144766880069848382092913505260018141766147295008036912070597963426722482360530265091339568962913126649652024113688163518908802579620272665398565032997602657743519246038909440202251636777275048470604079395266331150231916416005111550133914484702405067201380672 - 41675218218341940222406378233284273445117798263847904944458910295301668853374554828541853791017952868119954995089444792695388502833734813794007528535555072133134059363569190707578344452298047369451583390939738318196988989224362198521256608375697870311615009511307946022267190503547465860368489662423722444367 + 49073437972905724155678101995478176290598425675917949396774899062004137134269337545373510247449485651863540458469077379417029027218772763948437602858407623659121345235293461048177049660072649684592922604921283039299306270925669888576687660457804847945810106906758833178505619477097012738657352790382743694496 - 29419121828024712006951666964941880378315738924463516104582162451149779739374037447914707339831626050472368230093893338171430074865399767545548046661882100241076816607485764344682620014663387945084319603153090882420695161796682509919230179772894200383151806478592240028077918540236072406229692821885571221294 + 51635421421245747491367291499996092315706696983272846878821576274753262123574463661476546878078298205468526801399120192314007099319646447027550958566039230722401848987374769375670758328490316417232584002112059899392005671959019001473794559358507678115035560110900057907922522602799038687241742244689216125497 - 32445200608597512541625822542561607749298405960599415964731503666823125348147700549901034166088724464826157148323441232252562970247371624320716811316365527789666568695746122045235022229170506597755390811453316716912090506405933927923359851119654924342369280254012145895438301052097034498086011112377442778610 + 15285273775638506075165753005905369355723865222177161266534961343587485666487198476179431773636269593777162995833320352842336479363574164179884178805130349281124970757317203260780359477958897246132282519092528354009724717914047038233050413369060995283256145431104653970154310611468305777916357313564764502880 - 20864968555291294310464334938981760380475336725985423598057411881613072562298676849239819869423056006426399637529306857586938458997112543115118689919267981906916817703830702409159100409525739653428432418616395789034681153078768601909247826758470392173520979563780891965306143193797278724533819859687489258293 + 66482961504170387053653547704581821836335318171942907414767033767900973437523147500996849484398512728694297508610718670439707978079451068439270989305785174616680458730028433031365613450327832597772340510825273969873248712459722512813755650240291138242110838912856075290237043771548410230961296622996720008241 - 63597988482370912341678828158499211217941223575515020818178911830370711718892957261234222140058387440698798184332455123146645217945699514213691152307792238522064475183582421825591357852450539464165501811692708494982697603284879879714421876759313554845595966077098092226134671314864945996931765128158345482329 + 64834221012587152698523073791737277392610933808035617859525776181939324221892123183392981270852035075781909487207042181156994604373651490111663633140827618579785244165781496295868152606220747496191727790476614556022801662788147522508386597249552001773379458746886779082472401365686143125072212068279254519145 - 31779679509404648265160067781148114886311931657219414381724335850209078394669711518689413469835153961217482359680477142835297188267863204371945361144459323869484893929614998571944962106990415459709930207333472101084985883849535625758382904338436256140320350558537444908416919181132927898174770674174792941150 + 41534456794071993595355066548929526740083232895084550050973152966520703016706101525420568822422287843187709638675651306738173304442423571008044504428203952784659611869078667226806372654409228130940951272655917709255393405639826006445434337335502840687462014871275397997958475898685228492867742480947294268703 - 67184034295804727324689307543825470384779319834470595962504138672462945216279788934309700217349709103271296918267785576297259310544083006687587923229848010716931640927408355239121148994045390437989127575387845379883694729698758029469131690199821978046498853191743286366196073875471718528574841756164887528948 + 12059729101106610681640971729516860894780748913138794440650496185448976469959307788179637775873673094417632289467000931939917719115676840498901995424612933953632373010390660947107643461488805033783414416425084508667681283021177372201502889189781425378988348481269181122477188407192389568186943845875714173408 - 7605763691859382147529552750691515725025442294097874898268656995475791940522797563281215162468988911433984859563122138280971138227761930254335097057833411220600259341980242235683556081069043099370802880673627022770217073852457613203449910963417560210896091089752648075880705473264769671055256159830679059043 + 26717647471024148775036498838587757935841007875304077074842481316051765628971957263498488322988291799119799509894445984084645367834434632995141561790716437608733302531681385712575485200175806439183239546080095496820864536097379704095464746798069888100890596228511546750626576999282362296110126095542090904633 - 82589838129638462171265837143978775132587416079396596369762003901791321578147509040102580360240986979181421656069249770557630843646852354016869275837887231733857385024240464127957533033328454414689763813021512771662454607803083476912152830376448450164182829469940860840395852723728991369583347528679372196815 + 100062713244635467019237201221979239593240062560102585563797759366696617036240689520834022659357900136802270691299437086865451005263400504948931975957912679226597631602393551987634405777999578933667609352489151951868683593269511115742697529903330941708002865509324508176679390351537483173485044183178457947730 - 43019489624517506600209763395565636905897524515863995279584893585332302500430800834653240009011260925977836606905818879177979496111661064321830144253493088424058829867167175329202347579506412919616744818423774992789321138667788565598844065528133292389698613441135772869650864164366440489285074640473108699296 + 33039311262146530815190529076040440832350563459183225135120176877171254657743834724596189392294951105182468111375039881755350470130622620531969246213922890243694255170044808802075723151739887516056714120976820680267585927048568247679939380517984196440261830077918235625084895506326217836826571404662398258033 - 33022215193339415953040447805384227234149799921854667592738519549339149097685404500073743584043458198796648636928793456579447992873202337925497069350623042538595260189459621439866918702080766732374754377649292910157391226695614141618283606797285522155918227901168797607019925175523412568761408449155170556288 + 48186140641902204831027636848598157205137506500198040417131315299865744167878371330493428881954725164426289104337294379841861013506565982584020273901735682424633454165054941259406834032978804590593165734659119457120251804132418440421093517933508432450619886811507732311410934755728099754257738706443309620677 - 30415062082001326881913861142791866423452798341515864183441599983577327812322894493594396288449397528145913494217772442810203815252506588527472909663121934782764850002388563634894171521054262305767412419763203645486657968590897673177255786273284523042412651071696406608024199522468177712708075235205376891665 + 93970800703197879764026785497881657287104074714886545092130360325319561766453264446042115207155285470524637925855368228367132800001306300814946880683305859145723233200840841071995198195184940330887981140120732654647535994560836414753033529134264716121313416900548941258294862509786467628592078765632017605803 - 94423065392854181613307528880155017734482482524854307738599947724573791679851769975029449005789546590893587146625638434453028955999884596492005777418357865364176106965683586943661773153925519493189693450787159869396736353530255913476919181305943433394506649094093787755766312229554400436807479908026234212666 + 8551188856668064399442831844364476893044630678324173977236848713413575032620836691356697457243808344488111816044112757584834239059115776006898679397699463970693974995231912225933393502749596336118801328158470339471005621400647259355840993818525423098184113036364672241311459888775746638634798286387902478320 - 20974185296534059484304084724697007568998964166903951606913640323673502795643269053072463819725092146979255694036179875147785113465044573015589769190455422448640373192342616163561143998286811958421392380060236772467613042666393489097869136049248417557814475428331739938553182878379497800432598144092382874715 + 32830123618615517851497305840997960550778373055678410594078450697130614086259162578956995725199134529554286191839001757677812963935048747978615923968594181673075048535033804416779422757574935662038806794021524548488626098032844713591295213210097875146810595139002635442691642215942366807247151994366910149069 - 40003546318218467082596406501437066140661053373063169699584091563029818587125367062553934140602361575882220982614131659434918705070012063676406791812482638513745369211971774032658564186213344272780209355312804828805017389023510566582130614072503998377019579294271804595991733549453595346643445802053268972972 + 41246119716141728891513762818565792395102180318293586222025626673219357658515083872471941714107107550388465828132045102933864343101941240646005063878269537587276216521433841787603051020421874258121747567524823713975567927831679989036856908966779496937494151429344411903700144125540415107554245718987385129107 - 53370126917509652574310985015309370273560213784453920877320971564301429668764486755128727308654575613384623739691017808993816773099495214568936842018123781278527345733138859569511641014734968280835500599347168351450037730349596169552844391370361989731302775616818296950942240410987698052763148007998331158035 + 67934529954363153966993583647478071928978885200570356568048249688124264414883539211908851143447160975332674540914563871665572768848999929104444554133127544918764475166053876804455531894975087035828870912406227639789915801105811115537513028249533529307029829617695401269875507784849800855189320383059874796769 - 53982513846121527173884165379714145124930573892405573648448488659457853128974779206702799300040917959826206112035530482918606812373323220381521105121072444441865134801783134180174822799228612477140497634353235949416886003533519681177384900182982306911718848359558459456465417752313218605580463855900054628155 + 81594501993216264081643155159941398458704780318653002221817011042347406218004092354007847556532225939821167611740173933863282817471922447241109422229913546310881878820460349072935613938085051287149711100365794219939747347360150293217187674131121215057538534241320946706217367767544062586539939083030281091155 - 76315760310792609630053866873354683148460181705928138590962003855080769144871885829615091053657115193822608250163334110824494868647406803116184596302825786390167588661007056877304012787427919058376299813458194925359514624625283690968471969473728312028137686063488373110827581344190632080579401613334745377884 + 98844046105855645309281822867430125071725747982815352018379349888122934639761093053857058459596343177229650648426588372824899928940207945695117272948272946529393640076784416246936726606351497065177791938246219596582874724471985783972257665549758959068447874418165664857043552238332133780435680194144153638478 - 77797489313413062454944879607373173196629742338032584841207788830982255821292113840294073913775863923904704645959422130990776241773698586515793659827839908482169209787215729582545808754979523361119965991907052071916505690857290949834221611188364386372250867644790920696477787400077700644209348030160696276728 + 96779281604224218368133692006026302318303014224673883542426824188885166904097305037446603015831917645794905393905143644445779562991702166936023356538972022329648679367922079148973914627837839994440949912075786886698811288592820190294426556715816875931436356657984024278207067569124190079461257549205109071944 - 8488673186677444499679139090916579127491401714751373224370878915805812210516409378094624116129127592772579888022251034806207804133359654421904780759673265326665730399217752634802373175023899272510114789806978329317596517169116099639001559322504901310095590452506604190257802415466844592735400687420566814865 + 70201474607147698039070366194346666539803162118430361682602440054443120108114540488091030077775395022777784251106060842936540017145957268725433897116756803608928505702984950900782023809482284031247666603527651199089329391375589931421028054460519721217295005484686602210731724577206867247417723529985543665186 - 3764865971335754845697711017056213687778570067612135279115945661501174010735048247529307974552462534473735918541601443983680527628383295032915155783936225201032807325819920835025012752381797077203020527553140266500583848270620414224546844517021873342624370042962508423180976909954933658349794039605385444079 + 10879272028076957334569518560920923451140355042495253298807919210601819988803776255443102734907741445319911836895969283582124434299089881114186758509641012622962307556182576982547629762803905042482830537634746418419579299263035363054252486332737719137255541058663962140112786197305720743660013366577227650221 - 19884264903790082767881475052266806086392098251397315653384530698861680546748257038089938267044408588487998325858021221378219457500889510027427622214978377198116763798118066318212497514385542784707412838912207904564412690977556884320780452094532538727400396470697629954164579095548003647480332259432140582559 + 55967613145493640632354761935100884805193956413523375736569265280875574672631708437315283013312986811305049949763945788725976305072803301029937538300206538500646132220559851476199118786726882657513335020756707335876799967648391804916473177974495541477332619333398576656585880140717413735743074611183903551983 - 91434509428525734743681154744274419715400340994038412176633715695319815315131564930324358099047375610047192200047248588543072142895055921156261289468322469354716216875438904303786156641792276589396654081634737515337928965155547394969922045950794323130401246411920465834256282346947978938464606382625704583651 + 59051755867171439770407580986102601204172782251815464358691147518199123052391064811840031388381572690814486743095970293265509099704764158091982865187280430727930174977586313350918893301084768037992501596823972414896439809124642672351470434833298248236163563707318368853439966247519663193451819365668747696396 - 69214666080189108428417482729139653422253342701876036961088886350499942618017862435924275699226322586794926998481646608990413664546368805617002591035891308511677058688716760571378871646556133256684422056129057724580678751726961680259571516786196882507230052531134542483938359521387678941270529227066570787820 + 72035166970761502751967315393679162252068395391886614422604447415356949512443704247125329935179740893725656022652748121422872128488167355653644327734509456095870196557297786236911170167347832353511009317128756699393170222417677872913837750800741576815273099329426249054657917923138521878882828691071206371497 - 73534345245038096201147512210111760953975797615544775647007605643615797317841513147753113139720688768943026581390712432859929646427105442915129708192940436339004394826612607089830145658388283820018617794518473248684359065540160909540885159443301714531722167185315953700704119333247410008951516914478179729450 + 59544072527501866234196086503824972282678518278720368609558207784103303370580050798905703635965524676167781262666461732884227915286943693428326756322004144604330541843566676205359907911671397192874204452318044038629855793356529809354322168161301585589259898550027731800515339590035538503648247026908399251649 - 78516670075791096328690157975111848261502634377514802645685956456643177276000694888694216760084272916134866592167310311879803810298790019442190096832519730084026073562371796661014895985048505280882179694248862121491851282698708321617655299145507254100815894395332158066943918900999929740208372940659955629515 + 98175592374309406850889850252973557646315072733241807678917287113175659017530718401015969921732213408230884259114699981964146059214922379389615199939299319817805714302437985974870707907829162759960767892623337442343255505652752090966597244788716493418180107577919747193029798271353094557233675636457567611624 - 54522060221646067910321642741884554112358702652937414121086269675281068497771863019784460478334039115436784119592175824008736939112900738090350342615736032111474382195211641036296879568960775993409314190742334516908322729321874611905510589977123928479459130775628079577928795893698143340225796349567312103958 + 45294028118119991290876808950650152123224470808138507198636138282642079795466639825477752677584659218237138494091029944163988893674781410341845243935637725426893735819986685178339799274899414318270927622521562556650477816138270034503298436618503122597191339818629415111604543131090905146585966471369389415014 - 92205674274975012098419869064643232770538047035881361679145806465400407912000688600415299672176089150484178703595449260325143895479632940931474178597669374330886322254426232739302909066252037219269672327752464890259390090453397248092519916708870120291401577012348012369863334324357992475061041451990459072921 + 55836156173281279616488061397173367375080331840914357784847989346411631657741376112685610534810857761055675632425213259475131435586265149016398927960932041573304895844677055900031339574521727556203089154515545089758806697341914977663437028852726476068157542870202656415596828589386661822396195355687706486601 - 57655754976845789896973098763401915416916819450081506007966655738097667621703461027947502088531762344923974706109655563620950907509341010940096570568441406539246163312053294473005406148803759688411462814229337163466685377916405570826930162894146833233924023096519131604576668352729392984629502925767797994364 + 19377245884454004259889457560825142980868526256516946353656049464676859500104454105391566284014953580676492486339377683398393717456002715334404991821240639338577514264251072034570208085939141277522541241895993522359026235827744546735108349384228385771280341725947515730053201983592392090504209607484043229805 - 30736938676441148279967400982417766787296827666016663948398422299413688725583774250655819974524303121452738990280000737525005444618066246385664579209417816097659680313057714671025281364099227755336544844395347925399779382504709885049961879041947397326993401895831742516584805472313302655069845383538023802585 + 61604543575638049233500312568823870283188555918132231752484414552876709710560456131682341736839116758190015879317019454211897399916530963808176663476683449714714305410221004284381278209650022527129608483232007601449315999942042868643574822439935865460586423838676524711724381953304453091202265936113389124889 - 72838715557927278911523518291257342869243833664340207916127368681670153293449973791358776012194979730561235776072405109615421258427620527523481657318737879932768566994976954048764291288135341779984992293965126174963733792576219146512410662630464264457446869970451992589834784890954561591480008947156162941793 + 25842571216302091516040869094703740913661682693640339766337337051857273244294272845442317181537656872577460550800186360330151946858263372425735823549868041832255647067747432937296983778517513709818877683433839092482112454301504245768565977158047399278854347687620808901738846828619186179478398341766303161695 - 49257393260520773044899586946604838051629572146729572421546023844660797991028690505527112388818529052054367884796117000615494031500194443639408826085664760614964969773503713410176514966390498086407962774108347267154669543596499964389846727706644633682530913797417090002509341092637217613907079073134677416931 + 96855304075095734044097265705618058277915537146303001067208361335708606085614679687576762552099257124545676495775813444560586050771541135711962667521483789266099655571401670410173442661200729023589790605741871124155427101085094215493016973009735753759593976893557043305169560150461770598839836300827935136858 - 51042583466180353937851298194490638154780497214214953890955148849554725582894437344095515357258317567748508559192622136284042450402236293439236887272107949344382061070301320209026724265976356541712621410751352415859422396094024621195019181962947311033706449047342500291450042120027234618672938523810181520961 + 34646034442378489183115633440281704387977137793198894499801460836906007283125810429886853539896158223493550551370015799625390057938824454010761238048942174073666295587095998547205447727677558463407419685157754742641749774734052610136873378399698187725330702081445912436202436315186323322048945502972361335454 - 22662205291442206857501442006391768671949650622156625201981637064982995187425564979892045413619930537553411732467746860123967576711629849234879032625872274278134220903633077238038719506115601289865532092647990528689042008435743568374811562316188614874269949454816578384504561824420883763027636511495497622517 + 32655672117916281561153247374692410737048125251255067296346085066553160430011297334638510541872786235377090340878482652835553284131936991202223649141172683952960469676483886326787776295273815735562368398355935119148827820190577411596090050700041933327914175005021918685125462913828876491276831595239672374689 - 52710716752883998185465671092301881591669140246139105141308575672154218391756323414446212538823081422374806870505735849373554018538779144133844817023029668900113869350602950196890825124213328367776452180532219937542520472182592509806512273246638222767988485372920671133742520571224962314000974831873399413989 + 18896627834557742300986313598437238486672668158811614618630770612397778810709131622552216960946477430155282248723267379684045658769064257233981223178353840862103774184644244346165717619984682617385377996853797561023089146891284007449093396337474353018633224150389150192027654513747338112905473762142714001548 - 28340638879274170076160681468215053777989923274642965806830359670458226018632970197988213071142282286374509335952773199463383397747074308958743187937002298996411051678311153291833252074001673196336694829045524685979065444662883170117618174849096743160621079379623992447976389074678405429042331965284563368111 + 22026796702667186967622316805555635764102419670132734356502673158494429898810292973161559184158247517145109530312915170866521857920252541861551878373176779793075649366182939640618591255474014380357629550907185822619388744922646532550295129344111346437563705801703320620582108587611159066044463365829938932904 - 37059379326247411916391332406072371400715423335333861201180086790502780865447018799806140766706462821150028042291838842002368998943457397595063251665843093337735324235430094794197097166245052201615537819625381131750710738085384728712100062664524546664110021110923645562011031401887794996111648703832754800686 + 47983912565097522496529031936703851825337639115797646097472334092228329134140275114529302555062929534353847708396909420380619692922906932372112476298317661619941398975203703508324009256851747601019757480178352711645735312996993746796713879820052240360111321277777709209829448320420744533519903153303292655020 - 75898235832178031150598505323058710679208727178894767443459782474711651357137682173116045637504237713263338634837523098961528129554827834145260062607112293804525850952089727999443385861777322458911136831081979491447920158132536082744072525202763043739607583747671848958600190802449631020737068780459268620672 + 99737334552629640902233332182823608858110332588099839133213710227806782771015783867521459275919987007525508281769627426148654351200432951974021724305477899720825652701184738936317723839758238455394141535182292476973584491977926592345842409103745198021349722977385398272416633235067596638116598775275221085059 - 78132519321266695739472793669040626210544564802625362358170168088172990780607749377430792695371741900951775133639139639250255831145803890293968080133554821623768064784461462878161185920749083569363523932233264633197911368112817528804784223252624054755169739059407461518668015796100982339837987901024094730185 + 37736397331301299724842207218366035366048765488922101294680866452359208408311896886258276424532892813792378893669399940453443204091227790281602117357674522980821297375229007494031499857353038146789593196807444228282505822737001563809237440360261729703506230881363431500510794443942077434758644667089892872963 - 80651843119103707906689412686835082419427472369033227119071206354342913518507925525466512135010602491329167055079282645351856666279243410712238933999848724134737041629922913537436725137245043845839781583979275938342702841598567773031384755467772127215197303155279483601988790857896940322431403138235518980950 + 2075699682232389469296073187891335012819661869671915339511461692149024410532873959816723344511063345970471034046740138971638687217833478731865508274018932448368733733025005549500094382714292377027388136813696048277008017641355555654407152849722423850816711948455033935653022375510220649024962781450063031931 - 24388194232867989144476802686056271620867363645033742780602031426475691332001904451808105050614220527495468117685561322030955418774297300543608459964488975545870306717777406522265405642905796229295315303553714611260494836230008240632558701714082972603137082483392701185996080405198171192687551257137045097646 + 2069419182489937016113853618364839734281225353994218548911654538625568559716640411368566405937708343630451453070851489094271661239683462736465621414859013408534499090563450032971148660608924359681542047903831535974496638998187337598832416201342366911111558514905733580036548020339671537831214810740565911778 - 25653269506897119822903120239839038929433725413880761335836670697204296096409119835634322663841049415155768428176914600425300798005283854028023391947115705930796874144996875210990584004627942867631534645409841666639565835450809717973927575583266280203137565183465657418332574924494549373121703253780769652784 + 65687359023764588383040935417856898799095404737053841831055881407599590512544394464861179850588454655257987776557074854500734599879206551857897502587821179508145989114541680167116493654557482254282212701635379847102693117612282721305833342684226199270534931091595067617013755334944256255559647036749343272626 - 31904516142547884937642780479061607647084113254620756283181035666002565311413463540084124613910697891625874866565149080760855480344256135819379777218675507539572950062459139465900492384806165773950303664157206017816459129670405456950335069599080189953841421639174375256505024250201189364958306026532990886279 + 22762671810269900775036680711264493796121917605145510621838331086300137032316926129064099598345468318203227523348233831952380067841277175756159673595737957874566083345349495679909096487217064522299708806739193436989805884345146320433179044849202339544782686982186127268447516877318309418498579213366646305422 - 34341956827709230700431990400561547315453964602586528250366193873218722632882603141749666058214608104295146348986909046457902156468835931548712707257126365344872764034357571525111567800727846597491299346776515322579053868694079759795946356971166541187720002874382966770159490298107774112345758735347775675266 + 73437374684090998522834090695698294602490390699257774931885414362579864176689572167092973624122683011175410046555482326895593636592550977298026318389068774963482998404157955986523874519792924345062345548286198448425256633659059129153952406377936164088752985424210165380802891681347551543530045190433822458032 - 2681173939047571624027179407917481111086737922348205540757474656696911071778197368134013157339068997523264857580458813942277889818227902759819348171655199063201214007778035250512709870246468662013638153246108041012178967130978578425046684662476936546041133553176758821040627698974646187405980335924688395585 + 73494115623877110299759335343549880488322681549058085879786640604096531267275536716447625086775539167680568470764775045723924040901188474392422980380999178642958643224583526902335754546016811217704080827055800275562111393356809876093295998469466466022807661310181141257024960608712152617405712125705816623195 - 59879455852539151246592842130965676712376300660972378132890142164806299984798984820116709665379878800524184984108461341247458119493536912934032895305900973565478487895747519044807667182160450359923383275725582436686259029090633391498279727902832583319653190446457350003580023328018263609344566312802511819531 + 82201424319382858763006779625775746241735620925561653592621397757164253080142242464908141516051102739334572753502153266910049145701613147286238163661601201716103397334883999151209694734940029142967392136558366438726286737179457106699114906687936654562316061839451047737007911158523355074644953272547801734136 - 56654084112573417020346292957231324429042275926184968894607411753671140944550098601682241215165289193650470398070548183287888475320016778469456014303225716161406815733203718827119162637679874806369427010408489675479320604326050476550086381903368099941202047627918053120356650291240430643914227623178854575987 + 85397041126727957875199535376670734518146058393209735835940057716870795651940124501349526307710298494265275215268356740587463690534441860793615096010962834739777540139370782820512398275696305806822579497748764562468979137696942024664671498445029741290972360452635187763144934885303054298927175393186740922438 - 8892019968034185277738936287178619173748107355785631421210441776746483943460041812072616086664023737770140996151986192392485409402389001660893699790447416221134625406044747104800123228677562761533946884845659084525801788061878171102077313420930688809573261099578941731119875040093934721737053599786119357214 + 73743514224366170688878382718868882146183242205539720989296142160996952829834198518075950132979439020925509683451931873958122466984549419387178373731799731293609740929238665565212098517534222296317032188773755377772892660536696074026743003129449159668288061071361881565167586259126093987504970560743656124300 - 32406033762838089102764031293533729241214621857358335491113474535154231061883772252198362047788864438371159122112697342158178925533680986019986073478654783051084494035451660067374899746661547021864859806275986709466746494793434349869925380243321562554098995824186805597577355130639048529513397299146453182016 + 50125162539054742153556564468882308971723953491553073962013822408659130367023526170205922721408021210622646243096912100563307304112759367158660810158250951823525858825178295924771775255154895911058440578157888846325804072139537721377244368351727588273849605628667020678495194418882107017882704760955258312948 - 57627518460183402412653996403396770904700062434506466847730502031703017712051018031574542711529840480954249822230440570421630017919165155330999753932311847608082451953225780803462035908309083191846279277790792193825033984218011556365224083476681288410556077854026355074981765273497703187034122565735545736624 + 78869711429004262161164898276539286672606217565139661595758821660891963353833292579854470168683856942421671236005780510562299314046184345407030212378785910886398222672280913206767518153029625141618509275014531743659847670955527466013532328043713761777795163744607563577750405455831592090573309807167060379788 - 73442237581307386305380264442444257934574255859180423743174861177945273626294008644982479129697489362331816404753641754734469528558603879667775962388766435058570158361156278452396334134133354429322821996302948836045892079684836612502931189976769308099016632140527610861160776563966755245790733912967808331840 + 71865431099432367241409800351443458199958630515379348556271133274844019009477657584127743943734738374044538963308804291663541256685794660619416329903836712915081416992103683322487339839492518610841222192427182267457626484334814286161007726886529540769134451657594737022565754815898062247428288388744477370527 - 46297846647428547455334466239513877908307239454854837887204554313706411538168820376719417781756808895069750481134097566824180202889920615621910906230603284873528432389533198471361502200982604218894235571351424873377711601583205289892055499071316225013455178650438351476734606158099757771075881239300351134311 + 77901303745968896221140941053138462993281202734835558033186713137717409176006301431229312107827838386539573745616711357678828238977304270445059544569861212000756613189986035455523304411479345417742493278746196596382817386340630065092864493009904889830390173534398165514022027644966706365739246606418558256508 - 53407342754893210309574819707001648801888640077008098098331315619727385618563819027991345316569740574874438563838251586243583829256160166630274270976969764041190546496118488620729711535553698075307097319465705769995663264013560160381585691949235083517110662447050749122598545866085958589088376291031744532494 + 67601210529470834886666616461757502459811634436568312869868108782104435993712337829725705305894987676708556912171955541189559476082745637809283667107812658775572162573343167254999949936346163800229002284474936235542392230376553586063730691826777733567760802265146161400152807958031893036595288859650815391158 - 37574446275206938621706328700156034483010795331357414033074917613812910729994669263542630853255719014790733168632233026545668784682303213488173323966655934067733326820863892820699733043080986957586175823567166337048273994897702373167630449236863560164862689352082416946142811156687480694385099795650650339255 + 1980184948125243681780523812534536827650315582334476363100113665131849259012046000327291085838924754930192258679685064538174501721007984813916733141718669838044706218000957721709245647458245666607935796203324600927727428250230003208280113682059579692896881415807578103608252432039986617057786066769953376583 - 77605080278681907103214276380000998693373464947327599503936548062338700804576889089917698107441115193537040394084792362617374540650110263076367867094335606749707526992910319664909105533363940981531139625706714494637349167324156782442482068213030054111634457952474889753720298363628109991053692794919898192249 + 89708118562388551385151346070572975448010820156054133295545832576284851438050462888261758325038620959686085315906729186492624352130983398821660953215964781092803712232613294256826996185243426345875647271621344435806561789431923084736480820488906410086508061743003708612784850423224852257893812864152092006067 - 27610111722835394937841960687706476278212591000386038778832659623803189324171522861580060509742804533693538308849278259140758080137259286941792342014647851613035432402888653883118025307907644602627967154079679887637936043689465815043294035003245006034658943400013684287095582235239620761567787133972424379458 + 6529471887964083231881338637777581427266725903353592764209032199825003457128255506233615558303279808690813038346338377244949833352877163398907049558272168518577354808859887944284284940043845734897091469984740804112459134882270925333427230737205419116239171854460930924986506929202186999036718390583244855681 - 124542007191783429774626564155316862699028715781424452396708336407157022337846290283975960870783476122428168148265579540650971416907541459990913278451727489332911548865799696385093716917184003066283707407020739306247798411150873883122619293711138582276018084163111306905220460950370296584909965804185822717 + 64101539374364110416671523564949980696919441277958752509917037551735237148427229049835717152694169645031292864515247335763978038221534798029898759085389693815049461611245401455070739794749756681430330030600087176847117173884929693722132533377628412906613917102458399116942074721931948029274539597500712900451 - 94077242702905440172652598471177622173519903484129389366228766947630134416054585205319063670544899574406697312143274453031373313010299692672417504472021386334352559249378479840730433930177188642141788696465837244901881491977093099688284897201201024197802179367727968105735367530493831620267998171747289140903 + 12844229700559216236667422512860061844164570916092382814054482843128191187849414042915925820576777335050497821349343940162314627274802114131348560985367836124980401684819912972932566101779465662584106494002420837428228570861200145469580791934042032697965852299337565324330565741224424793763332889536854169223 - 53879646861695633009153111150993902598337502784722070425671775540954905280991582050410418552375522604267494073675433878518332607056568849485606981042789542431334374593148174382695047993771708350195378485037161286657013328070873725321301622959839134477881015857727391631327205392285247916580125739408541295170 + 25179356630415149813049129586966689442115786252406012062687934919286814269776485976238282851774155129003833284866175678644575535831935093615047045290164304191773220227960594304869240643863908420044704917220512278845774684750306761658135281568582481044505325101213307082640363293348457695240587032249689869616 - 53403629039848107895199890896022320895050999021045398692420685390385243633993620788136066575092741312075383924855350368087043765163447427668357153503813251639043293670072339541308798604891524917348948191820580253329760889019359879332141870127587394185848517483322459829944264231079973735918617306247080708758 + 23811552810448429734694142494799216297884420764743257969319534171539530523104563079937340006781175976992890829780866672576675680796130933171099002171840772716804550407601606099504491727525990671128300046286080223771808281093514925626287465522652052563204998036964050173731646772974583898405277086276629033978 - 28318673531819163489442121656497851404506770262807812685115516052098737394548144922850851847744821385857477260791421520996779920816596997206078580318447646616596650329214871293041104886332381595871197041403975396276652261267774068149822904555196718486671931216445693773591032839613018638603697172897575243083 + 91772351512594806417053830688338562701134201246096303584338994112622396253148282146876511669793069673370323194783894332085912322209492785173135396430759374351257631526894748871549980759905138906873688147710199519313823633796136710741564587919982346576246312720030089747460704821430029984360545387441017066414 - 89048184466038834873351581999548977571429400875010221909748338572438000096838141345168737077553256438551157331005836389895587894079939327083148023696439127547176952419919273169931461662978041723149226533200377660099762418422669414236501017815737000939067693320958396795216450623543150183658668055647411633584 + 8665218586286284845538386201425836076127030556296155716954619847555926758705383466772667775491728165597544533029371312723576400621049689203458379472655713945276159035995366055891665334913585496522362580008334489664240513534132460965323010953267067308531167347316186846993853942565716449901600639914863955504 - 78911936041780885052407396454250988198192544206186883840596632138462041591386475402926866860048709550727270148788408368779649554648572675300975245663448325190718166575350997254520051050939468261987203113543682331871275825485794397238864585049793472799691121438302237036828857077705259254888949160274142217168 + 39659118931715582497106112500178506979084424594725089393631461077460326909885551684524699724467945198444715985917318640483180596701322273631535339793976545794321554403433568294908618238619309403496000058267553830363278787032464586198461320622579187410083735305944708318571808515464625754894332588005972623226 - 6067450842380073140283155078964452600243905637166452931883338443257440503899055668123308228196275879542244602535344319171572381240508464973907972270754755164992906388388643548345525942715288042444133039614562226900503782916123308449016292762894343447057252344905467706202078111459015266330435009082066478663 + 86774672238801756409707438547924739817317634745897241993407464489078472448679862627280719730133084934527953698855738619276047918849969847949409623753886424738376840208467321396098628809956998258673079121677267534963013768921858544117181457359476018303809338185762785688301061301016141154567672434139584149472 - 22452711672719778178550120349216786804305477020922915564307802386954655370165593832479882499467553691742304540216710885497853049875662807981380009369468281538879663402861794643204374581033740646090696734134404592121832948483013604142303101878095013707408450837143297193798796104132697803091934885480647085202 + 100117403605460785733498322316053640879190595850175148326980418848791455197934745079292413609986296142572579885190464070135831981668582985041157009041443288366919330976008485783822505266779801504983579360086789283548595740365837929410283562599534838797395591363755618570198755721665363702239571213161638432619 - 34404204576980763695714815405613489713290843159290204990509760058532073073189547959528680523921299126269776329637335260126850820589670546511635535255613195729991474408926711093887737706795802452479862062089560479577878732455000892673478133077065158599481883697831053463776980508570960820672436359591741259505 + 2158683112243925363853619354635004400370104560560068040647696512315434196247591889942878579544382651084100090434245072297944970607007443318182747406330140812069805676089976348938160692339818248559836182369288262946498519342891789235776959095271226312358911579122345858716598890331039007903518862642728197335 - 76475943189117631326972548246236156633701086843426596007525233955225445402432124193937687079973972512886458606063540280573551123190876253504344899342896150830852799851731824929768217397755528338652573918919720048962447601132292219472149315808871573519784765386243380726591796717804001456125999386181979002241 + 17691245070798568852361017144205857145814531105761516607635456103242770753299156354767945182061020816504321155598021761400759465931358038972273106924049333883502848574858775408417257471546417340753923063241283697460913986115937290199554900850809089276211366616561090913734627856741508925054781313975223698062 - 17995634593471994520444109918161630604569474023299144430104570974910265891147675258806453732147958484176282878328337246693519374823137621144406425447546298691999206961172857760708828392061842338498379864453716102617799654017773670457250752679415694164788912771526432135248397819055545582376605616842588753198 + 37461520743963477246589052372186351117236827661056577781846477803434966807494275767730709228583120633856399183973605454983120294153014417995654131293228201558705338040699574808995733711803215470707792216541323965364131302379620707617501801392884110925001538959678491635121799553609716298632506492066154822072 - 23930287341953673685225319747520711983776543207965685598094286236202623972063104912825759552473011853028496861479193333597213710985876491785505437282127702003017556078579192897481825273046763029445653069280829221993826362978058933266521140653584950822221058760336654199240130089166896631200916687587716146138 + 98764330103971439114905599840976519156096409151740276652974637676640894114146274418933675046419845836325529142630156208326881138269833654717575941376335124506462654081104222832023753262815123187645571654856477648693318209782512993107445584397664414647007035147158127752066963204577235940289486425010465090060 - 42369743251592110526097625950572803882825056372273150724168112448410439807978120479321478338705614703782058488091618616081810014229620570886189732785758807917012302585506492247030129960663416029979427756741117187240158348238413900553681922556606773053818073917913801395393816877544240129307510149394577023337 + 39311499785578244016801673513138483126752532732967463016408474965782043420044746357557251652620457899698667609560050860868156200607557882720626407792307706410539480031100514324022549667509834702706696157469594224598758748549266370567048033606364513061571299763682496748933781705916637854390243920301349597318 - 6745165718277949736910134886011957767420829502130829324446905007977470314834629308899605968723024095877055816492512032882691353151883407155171368461094113558094877739933048571095885843802158780567079506293621904848121245012016207735618408009158113089234220409985443473562956570552120250685505004852246437047 + 57682670659837676229521774247497382132945660850354663420896212027628956408972205797195242488801386272318102704309858183686757723276312418983295408525094327095569502258795397425777222840825908062672791875370467838147773284776152033283657772690099317587769893958343701482127053661184038381883438426339272697593 - 79674362236495930739088252263898228779359229149644602049941468355537068470700897020776473691881355648025469055074824278847451865744446129054947377350219092464198953878870973207983253667460481067612778153463332561552147753736406628192949318068763913191812307299979579967380006447161387355995023097113161953785 + 14109456498285905112339177094204514806949665293033741481346508785369939783221431998222853817141141814796188904774698696153353413715634082957089540532779466427338904266785473423473596447739341078027413267002833989722642050230436289774113016819105297791471767478615365759526931368060361421408310682447466741660 - 79350972131624538384817384753644213531770174556547762312573255329325780329656776533345132405389953674932702100121809128154131492110992694458869333766736867860463543282299235787608467914708841149550963330060824866917787253631573521999880868594894860987977540699490759665402548764875663192761990509282698899821 + 49368627543210012469275028362631240608768576186875242928777235949975576250443514577849457806197845829247429682746503862411390674501793584799088521954672936592537286863761493604871752595581423036430134961119405855979459193558192960088061844221379974643919427335575042277345917987326530674061586945880575607785 - 92273877394520843231917918799580405323929121374131785700804542679213004517473626256030821368848756738666044588527923052574702666564684532730599673894652353124575513650415130163945252775188539598039419627178082070399771957890992641607638236934036784132526392750552536025580283298825771813444572392248293288756 + 16338444739611039755971028168658885755843505928537415714213798094360591711818843342410129238969053805164380288618015368257022358736715069937228226834987700814453585671789859740520305478410492314713077714383564418043063462160981839097920256422914655141247252616201930055619414781408805231878345584270807955238 - 92240284461203313377531832127351134149584645228397354658945526765084295664646336119684927163232998638215088736835189546140142840617152696119534335000554451434557551854670360173766912944398118569204165933199393178136308119319729993638711812858448696702073771827736698814016952885167330078540810107134809787476 + 38338167157766138005865443256236555500540938531418352648556002197717423996417005165914512962945878713190692947251845728950304135596705839055815288096431914462400869187699968562590025527168856509587566177937757106619076786869970383284701935860320045887275275294552537641761890397113286425498678930918728266392 - 25997147402557995496814495964338728023337868543818815801330942244251141903345310259966683699355179986428570798766100556913277585716967363540643589903825220549189443668721619241367690573123931600340953659155249875930408044420095456889540028662197246770188802662505919857913635077055126761251075191386645900547 + 90257335575028735095465000357011342336736499681719571524946473308667204347194375022194785933565085376107865407247869444644269264119033778495982844611738326665838587879948273023272115624104562400942662036748611305149492270333199675848012601103817191211331547251601419640874346812785166642586676645575928510369 - 50433359482668499506365161654083961627397181496232989844833032712297141399084357991781943759574965188255790383567822688786496597417432803326428933383965087118098678650433167970801029320938261697649147966666962784439430197729676593454332228048202449244013428051356594193840581094873055163229225405147057907929 + 45584061933999921868666105510388285984791919471933721460223391085123110665412658482995880293098548157602842066913046272653659439899655469776385703794599892196610000851199579628265231482277865870091197426180926502331810361339648203432784908105378580905260266576274053287539341099246861351875734662604325879845 - 15583299479321342079017310397196160876546200707195037866717959039036027066308013527343899268274811420790953862617585485441951744701001454559951224879152263585346762702287518623461807680781832683405975207074901100137466336225538497550257986006734397534579119835787814233777793757320522520964858248419527417479 + 90337042081487332464768089474971587289400594711527019101372308327473123967966251867937994964326712852155347171987618006806498923041462059575495289605216127857528382631636297350273074564723075248109349545366914713303025316249328232245099230656812274322142045234290106399658653698192665944474936373576942826278 - 86581336854045884994223855222399955494853899885077393739184652790322689784387227688499256839954483779701982069810123440242992736272912323504470824058701162592026067463665650929507214730388109239617308662579643359339294487363741563799194137390914103788762973127701614865824420266443447123339477923927049029629 + 62903544043152381486119774318338305228665254301081429178122660112957643078692509861933396089440431207298667422651296277828183542349437916272129090174250419055899207916283683992478450569699856584257469876994085998333627696297173393074465987332353681228245568140292209407039183271268901544653114911210269416197 - 94059760839974719962462063658480722364776517551968642711628708287500902298646582325832346909711286906065922739560673573610796431395093248744118277106379500255616851708662823096899351610103774559080902570823944804799264015878261501919595715951520312203058122600581761060991852449604195742320790200132528468697 + 71583848161092404612179728440446175187540350451065129405363587666449530186723994700433150250572611073663165113701280105476267501606271043421688622954343415622307343913978781366485066015757659472978277757554743076952613666108733526793290810552051876145534305617345889938386913275670021723050211237067320755309 - 55649219294716240880577031453869356987402762921984025091264103203907350438827748644852680458649830553651655243821716094856352678407997786543804747291909173538227338005408424395719215996432701277037344919798036172672800411518156468885475715226983872920556174319759452859007450842504384024361699215598518138605 + 7824982255574810520248028280237264243438773105110886722762888484977780937622073422192066710414844877701167021077342888636906451428858167314662124900042973633318209335907358930254861156266948684790790471267202378360713287945087567926602412634229451779954506680026319071351399395628298806355098878001854815197 - 1238376337788796953147498765205287937188722996917250507533407669402768127645615888501628977845673728412833956000298934226744766965769902197996270726484435831492233431061493189766978949792620348437994048558371857087857862584043385434494551595268170155171761116608671872493625006234114598766824401565707277054 + 31901590453569312803354104437121143149138606403896615531690111586793173695821658692501681853966563681196689370902397433299018522407108518094901813674519584769124329726481392840316963480825976883261236572203793012104425118350694265169600319952883741422459472224915842590804813875939015497485227177494648361516 - 59873227743391003801002734415396801833521743799513728790147698765556082031977818414097215254844420390587866705381343240370013033899802531040323203981507898261783670107681874954867811875617894356528745665154726656679082989046632531720496532272234223965145345241580159249032698068642349181028519375120295574516 + 27395744389723458526223999176503103350090750027291253028610808181341620755257612107320343104260441655768793215240458576368884715527997651928202075365140803350646081717320114662236995734117495763536032525559668621430646517209570473600138679811518736797217005763988374369719164676622142892155376437853952363126 - 53253901348655581180120838256486479621594799404050990357985535571086966194716263286948799098007829073106061365126465260104851440423111656361247387967964978256218115968796024500767380988602183835771292503391107687838047825676770508030346384780458936819614980287731081291940099620612592293934119849590979527327 + 66100296905307054956619421681575447455054835537656099914123369029397361766758163174908799217733292267293780359117685651376733139001736825232294094223082805607580732429085382758002698482582803594915062212817833758836077798819030429583212732749449045230694092001492805985801324289374595708249457477219682686165 - 24586745738290830333222330349204119195559937236114530619461937981438783406452769059705065496069562008553438745954865895979840032174095688984229702382440366706141458345145437802236593625871005277243690681286840714869266577536131452506238419360033486482902662961057788460003811220707742196135155658653026830862 + 71522139718279845333957702463931504635196383929437918273040812745324606789997117374680396251194625400492702646960251782017347118754667125094791177518017697398518528175797661747423022869750020207111665791419183889802101862647661026708775831343094704877599910706602194087598962047126922842697482485303943232612 - 77682937193936808720966112935070110575483345287729623816825274329195942335560104016098666476685666335715055440690808940814092042072446137563852587858840632401756235197989212522657083421800940559863849159557756910967746338115179312769237718202744746950205188056983541468457263826666068612068557762109840477101 + 21930843311668491866792877164452718934977654324339018120208241097543213427026056425192800488622233206101988794200533950533043373069328821504692997626818418203539437879118134140095181420926925252765634363529728829712492708551193708222443666903830910784947878199725685942614858922098011270799364012255979588656 - 47245997654562232181921478354915832108723465754510177995095628778111894102271455579548404797198971322213619229694249882489214809057301727656615372094638743808437897937034752667318734979200830889937369228470894264949945174745623719447282438776376284972071186068391287964605813894659197140337670601442075110874 + 100085864073937863396448324123490539640704808782002161925831523226384482692010341234671810729386867300331010742305061799854857076723871984390540985359010224016352831131039730602321855123639153964643789675662346212458438350474482190257089194007667479676188927552155990329325697219856181353621511715461289477003 - 18369575120146745534240111278023894464253098237468996970923562777169415311482763290640420016743088176922120725703870811588881083489372879548782689544217454999374009860574573179301778390320581937397647884557702389613589017018910491889260121215022350958877097956898323981084042254909816579613309819774782650951 + 44865107567611098216203732945876290396688311592940106820987845042376881212645882134456950196141155535152497099245066613032061134371616612305900026357915037939611183078229347618799979173258366560970906239845143439424227696765479229536740864334693080465160565832270328502297235354244678453244268065419333238232 - 42287316824261159892021153391060578577059988106872938412358798058451730981245976682179341313823822142931534963589601400526482576216798094380423992426705776819249237602033891660967790551737310220189330354387355029337921533333642518333151229949747513454440297556262406230927768693892987958715434458861114125901 + 12637799244720127749082365015028390649305003362549843460133762226863001132096891910678033801099880380962435828664455224070218183001754790792071075040164476546854923570531293466715334694584723127979599286916210013497980086653861482448286070287970647424156470379323347208832701078363176539748556420721984948062 - 61348893069895079361158059361002820656921144616089338936800545811487736615948967849541350170006376779483883844354287587675824690277918870490919551820001756338612377321628955187690665951956010997355240482553261431948171154794832447890000793761756810328628413574298213367076283894467785921230865131193573499185 + 85270916694153733265943927069274412332833246459548964116586742207216831197707397039643452139374965104861913472708674225650461432846134313649531373171434662019257556677094714575561793065379924949852275761844771610814103376128944634852798019546630351124366642719297310023849236122539698105444503337387420526318 - 28323815483648687508987696778130213147507814019327611236806955157707439941808891622628863057113098350056025203085751217970012558067581399645889853754840752139574958408850421374749882839441603815087087296197528269918971160986158268659839443436823414070024426368133887378784278930521297175187600010584378350756 + 66758406454862410844610624984769224199784557456228087828124111810290613008355200012594537951475491452395340131005537643028286588187713614576727540902952285540308306105177343281712066434180117464864122120842220272173353257091750331249597262033085698814259154660368151773304686242364831879420816108903477549756 - 55118689684894428221706111949358325892648548106475714696906761251389360725540022189098640415980464515444447690734462867838588840677582152286323653120610546929696732890300786954730867771868414477362354534980371137960900260907470515817060382491172606650385064616224966170514119615007907261543468778255686681539 + 32571960299374536178920792486411133316059880768731833776516649028515109862915058438562225770313968037107047036612115855753021098472775016657700583194222093053487322034975987592792192833085565583047640400005723081644543345269004430787495870584636820197963854602319866144367507713346589803021742112100464836395 - 26952091020831903770504245704055074596347640926474213272834672544371215546842443097978479207933272418054106150626595988991903784986075165816447134585251009511075952361557531940395034726080601401687277232902358501989981036786238987599821394185394019480791632699330964240973925834046264917082886136666486431421 + 33115179011098046987777779132522147424486600660715090516382813081839070235519651904750380355021200642299238599306646974336603985214079978587649943556037120777168085198552850968180853503190670835893237505169714334895902334727305089596053985979565794957137840970016385882161635216035390317335138382505738915611 - 80255469933742397070251469706321183003819269248162923068302019223603222402080080532951424680192836147907073442165177400363996391685197058071647817960042459161181847525076376663630661647308791422547846357424880970032294376826838969447512607715575728626344238476635456064578001397499264334237994643421951098851 + 33231913646810747027198088390281455118268399647169910548252832548717762342748817750400938983371701129525970446742655085127877654422194305488146563409185386018310587369665266226005033806972510259820025498813487473635873707228982772719992364328113943068534748394048385006671135799812636543457858807318215241203 - 53997422916388816154447725845573700332662509532607665838295613609882712833028031518278976401228276601933129459902516174883434507356701417857054110887772737534588450067102570879386121313738171619421826503179266899135620695040109332426776359412793456042791994037974899454951540105777993896423563027635034975919 + 87962006994871847855576737245584646990466736009607039865521185411096702230669275503943381529864433146129589163556514438465278058673712093162972564124005833360691077793702140835155360465113323919108960997014057434509511225556233899277491915893741957659810587272560161897732430658573470015954025654998063872593 - 91444367944275938128157388591878125582697800227509645246195448050633774492399474284220187311145880361641328148193476743958989958577806784109576693468119454601369619137900741120736128017054057668683193613407059848309843216493197542735302502534257658878015818529051593555924720652037198196689900119093361936927 + 76344914524832467213854387707850572398921277920723856443611844542121489988014289026178050533939184192729119333391489442905524041583521212610484203831141285405013639597600020945663828907812571706798314455504089958241954159137932676344149264974681825269795269578436965846489649421212194272394110265729935001406 - 35063301049815227433657492151610934676144784165424075062642627918803593314369217716643514541222798799170526357800211738228107972088196515612820019502477550259320142262084955519319699825350088275834875304607509908854949462125578162369261963307618483094503999050089510472413848231279648536429376048714930875593 + 44813080762924735001685816601851890755463140927118879975171342267548673299744223609863886475798854665309543243966845697218501048569334733871949211930369628938865915552954911127683684235325305883427585607978005576062388000948847986794434305445724939398361196046702189033630908949556712275589699018308204745387 - 15001837370043676566637847760443337412803994323526032411369323913401251178970877074974752875973869383209637733679409426207823716908902973152613919253015570200376784309906656370896024912783126466057427790204923975249873916708867107554369011766965524738950036956751473353947599128467663847738650265387719793382 + 91310037463677189011357803499134587489363087015510030640976972158168254965845764545018382461475353524047420882329162809117785231086453451358304484269467751212916921148476248770443172390267072628415339434059848153192651460432707238396576658968150842909430630551204501490236740691115335054895485995584291084223 - 71401303854684979607248849908624787579193992507426704148329767074244609248021537728100777313409370842132089522421731647204588943585444184924414324971071585613027607696658263441170985223033463076293536455834462677484920440126049010049406191175576572929686278069138060334689707793045914386553677385306266299606 + 56699706730353547433423787786970466519454449081706492230996858370866384734520677651865119833751314417540260518415170390766037498511777462125314916369078435471772204502287545769366777952714910357174956023234697532653952101826810642416892464208308753852179150849959797515452050127714108915395112515702130105242 - 55006245356789124163402602837928830048281923333920745174549902838376565480319406926694503204260843151919769733617416973115796078933327261038267629366349624501953746973429508679611524696007247826266112653397925076385534692086186958544351149205361927959923255987936134935211207774003173526853845238940634721341 + 87196231263552015986829293539011283536967643207713305509076850928425101046793870704487489214789046764351656360142163172880037232602135116331977129228920221833479496426614947308936547527939452510004423725580834317483085498008570256080993747101303094398375365531264586104575883339061740588870306684988588554081 - 68308866603593543023292090124952154436783011473664571211905341277879542318338855824584369978925843506921735925557805861600909905205309141213553443667675921571364702723297289123328557493176063099201688758862147701188273344618635856483599859685755777540227394270297305378016715008383145701124713712096292532834 + 25203165105426014412114177122026661721481493508334947022863584233559776981870268781888402893152880205364935413777870729304654208736214891515789927076940188923079252119250506420797995554197151199061812026708056038876547476533769345836782130970245120213738324594311763148310727438290411944885546395333567918555 - 66169244807741001544902200229807745647506824362848008109118641444008631641839572524463328401603804844324944277574499222611718416214640845049600064742720420763824809090989077363254935392913960594474063634651756241241586169302422058075156352989518110383448054822932076167190585090617668975122730554892836095400 + 29194029144197873050891506841095611827235564831924072238620686945192836026004033498100658096176617517052840146598907131087433008962398341450275925465281425595253465788133567341098243251968989269695177823544520763204025009542966993237413757830962572988107904791931081634888419134709288843224821271146378543923 - 79914029162765570577196425027362569598639888119557056178383043304895855808978099656546440711554362316742835517366574832063020923939054670480762287491607643317989157633019543045973053242846399772608857517932431973525594512140755559586541476278948671347191076481690491291632208274169237955139267142796993985098 + 23381827231482577070074723815580786703993370387016653136038895616016529238431302570654323656968032902009063769890669784640688157262446597266826827464293711542545349053249643470267242941879308259392316740325865081775221938363221068087302117008501682095721000507860768484294066144948394016102690472006423256141 - 53484496901167451695848473454190607420588476489094119345982749053708627428293533322962771654855019469908355610829372143062196712836982926079788455504047024544961854239504883114690948892726923233955954636272813112803793305463252263311774924615973729231980860022862242423760204754620179842090033345185560436865 + 87796209180391612419957812095306747380801205359004962146417375024777785508050731897684318060361339375903880023800674325021158893993698068444421624115872931852800704877163409521824012268958480242678086546588009841379085602021575379624669237811194214493263134128653101534420725782998806239634607500418977344771 - 74009883240158280938771294619541823115424985298862230091551058988622847475145405864327704948712361313133996558780015269539228010999618315083523798192338148213042383205245547710055071080708185870627158916556574118588564565574900965820201097809814642033633669783423361380602952546010472773976236305928667595674 + 62834791119222094564479737264823592651911229946276827216643215479116923902249305352935798065904754909585466480836969318787471578346506316365412105555999082717731642847886472208050639987174012017228185911065596898427085182812529002630777131475835843888698524837720962171314656638776524302861230940770058414418 - 34496442663850579388217176318713147246756120210830783638301465448730181223158108387989794012307921152022046832055714310669788858360042786626143575270500309332140682389020539660820135333021698331046636879280142530454524626425767961963875657791064679116264052251226873397455570313845806512949372566521308665334 + 94666356966533049222792416678231174949740489622457690596603441202728559638744221918211455045030602074464021321682614858545800041213303507050581713789128562022333464334892980965027145259953274813571713171362898176333200454440686216777322357022533891293795480563494688131575714917593312700162673641402656587807 - 92374762245237709517936185961794788687853368011392309322927839766427147850866330101708504211061044963207997052240194081457741366741367506692286548757728243159436826588293803843775946105322962054686286945877659038833637424575609525821717857054247313409035530345435945758297007589346465536514237722110198698868 + 50413531580147795783694517328304255514847421031865131891831666295796825657412793357767007402057099884679615342380291597980325841597764558929100572927458104921704443953951298742099067752847061432757501391126814035619739330692254542320621438834381057673496810332605412509296724802379509981598739813831885629932 - 1996143004129506449682879727858751262041928727127923707255865937617760422157296687057674409032556530421592321006146340716212208390859677829928303949252016410757528560579060965417045033464482478616634319768249744854743677166072042292919229211892872190412967723918492580586604695648968437427435183063220083489 + 20805186111220867761766595922617207831823406659797224172234233918205202138477913439136700437468261924623418344623241167923563532011598851853901395581447149998307823250429207208081115086393179649605462140514566215647868305848512148684276450797320702687481457456037209216574299269129279429962084838213505212323 - 31778029863039921729940173030193276090863081710438091204711741328281683963991257929975274310730123702873225778997149366398155870626561011443828018836920592037434088154335060146420216211159606493169322867076604642642284463009283006987337649645096356692238040887850139893701568213378887514874948354168346213239 + 11681677863956086587739319742107445563921888381533264228385440253564206773527103159945440790284978250497499081400117544116569642145655429103814972531944654184142958723038372406750113648357142263575515643475263256028018820945129602504096455502630297448014901446820220994839735604472176745988892463229529673432 - 50385697164572611960716829787837006393220362250732007279920706137938779616603582748341627605481133938169463659238130229428859771952380702821118517207039936858190305821994995097484382185234102633953671173656233322183478330342915188294633454264325737018035748854054932871386638743681343205569837285748242190381 + 49574258784431810536432764102892163568045751540813541940859062442898159369429063563630511050111460906770335281242912904835710797783333645331007794971921593761129811717181897483453339716254461506790175199357386208161492976468548430079224308681919713683177813515890804066590422988716446370776790633564222176871 - 4686878594144988402214046843568670781842282541888493905639963840174777530356581241953943614506259775919722707385225620956778853955145886528510045468982101038149322164126602826455212721731053221287017466053723841186016420651558906645309446294444001109529244397322865269952222420385023342500909299294842841164 + 23374976213121895592704886433609112818944073710421794505555937745809588849564904187773995872437805236907799007681842144648343887058526235901283698580261693285252421662972932409291355599532319794620622480173594035242329735833590999905158021615908446929531903154087685019253078679484510623831549284971593949600 - 87197635499961892603276593094940997526116426341991323618696996370464746074270161029942965066587493341149148139010170086393480536058042910798983093518591553968665096914756034207893191518848945125934165745685117805702411169836204265633935205544150879132907938453792363859373187137912821738000357973515122077843 + 72372372535709560921165395055118787515365648096910801773560644626154706583961075159647892570216048492311999739357539868171150189974785741499965271071587182228398559572135769505485821190788905087344667643575347029742815478753301383235946211832737362868533375389059240394756901311061992283713030634870435385177 - 40445819054327358573600232475507935432363163535844527750003889781663311162744162768295615379981832305166154201500533205645688005717030891103457730276526120030864983261570969156260535196856542961719584143559031268624844451227902592904210551810156760432377874894841037974752870362262000703110208973826556481564 + 56856222773219420315448020754292758362265077844510142599214556845753424440835052933821275302171143724845206986531760493085288513532943353522628446925621478789498390804356585390800658810430752406789820551938477204984203700521247645617622731545734702794449829143955239854865945185806845995862463572509652214458 - 12493791196607082987325697544176633565535165498129082362184455817544628018705152736537619831441899687219213084430151089968006611307673941509679365617038890639274960188933483327087531503456953804901340071484841687210589200404391920994920921696836973541290032079786322447723272199766747363152629572899169384721 + 99017929116837240637825786685565185509858697678662139097414650493086743901443246848032236200007536557558189173604786272056523545637019522990497590880716135968143073465352144217819185528502107022021029951719867858278244647109317004183307903510076322948470442549878996797979474195197134703077326760828272872767 - 30116360348374074084751074813733053108218455794427082859378878872632600763837437464984828539021620684090328655253388115982256173701798476964293879570218779538074517178269569055746234821593867339411201898687550590890812985102959120597643912311254069895016750841709579639114375642076945119912284689670383432526 + 2074140155260939574149583714330013053357920262395371392261631646689281105862684636059007575299382499134725397837475658031312937835875519779487919466766321875067718815138033542083594502581063111810300949840567728537388623141948459348730540287454263705004355630535967704272820834229798679862285715827371911570 - 33758064568299582923880841577584148186752499969724764078764220460696966275406629077707046747881498001846034123252627238003076708688454877019298255735188488910232077391385703573154067802405582020508174407558392274449675639592574786657181910585959429411091232539939178374083841166525017389200706895793763457265 + 74377221426200659933952502145943864196984581314413349191842905151918889859249776234466063141139965202158496548616231421394574202881582046514342743240031638079114735441126715259138463088482377561930762922732550746617797583450423481923272984976070382525295819452231995959034137042760882955742322001068603546566 - 25003157018086513119362016929485672028324594088489483852366962067337591073267387483932824611411289982228673278626224657439854806102609086587083524637420926203514372122953877281889712896101325904674486555922961416364253663845416719583328807962982118554550119536194237873890300985324943604256061658131376318719 + 90501198951315663043957135067772010683020592874563720593290414435971487572883869613182289425715427981162190429619462875967861361862326352038955928192791562153184985108416341039549469675879552754259367133579864157769462248037697406498985431198560702716731139092870031543416751804653249325334659051184811174892 - 72046363884909551295948056970745024536488442610126415841208650542013214226711125737374726378826915132769501006125180931081832463211071626668530605568086264250432763755969346109736080863217161457708624355814152723956223001063208377181089613098619362408043353926877017694425759609065941936755610810012864148248 + 62136629836998933703010217333944111560452440125147547961531497671779977754567799523401629767647590530583825734815546588990923130965725684274045276145202830198228074817396947227122134909182904500125142972227475079379318699993549072447782430162313529540310583254989835230255528584096386648725391195615493804561 - 14788640789998637897108124391277007289564484824516573826401213926227416108546615060247688920491010646660702209564330389675791672200089351011832685270355682516429003448604138115646496135233447479119759181197460770489939712043776442892633344637818047277465573515239704656013465597392032168568469327056746717230 + 24073319637596568296505542257962824481598858878822525648725162107606086517373195773509072040864616818466698389332105428428691240805015770183749214006054061595440164714177584324032803546276121505006417143130850643291295832713817626955658585703238906663926396966593058042112688216877311627250833418098512735973 - 91512275769496626159291271965825570590226198747124438675866301016257130401529670439182158372269724694577440904773324771825823360163935070998669176501962304736165930625770676905572280252641991374663670281503429483743236955097701288052525969594307945142153094409994021016463579794180295299295546202534365274386 + 7502825674870373341747420116086273067471454004583967747269637425984479192891075661484905074606517656489299418219351416717255363232427240968107664601077764669135263862271998529813909228715075601417169247547429479224213344993179874084745906458771337513593281575811249757546513622580420752412524235876986929082 - 60980672084576192628511644967001357041383673415313201934182934190080144651741647569784949693451177561743598533155341864493123041261462482974884893224285127668901911442332128249097682587357461505195532946074015242004599184836578466267369491382722815339211203623490233858751876806417440026409823987288440601043 + 14349260579098784970215476671462976883023317786281813650800579789233510906165487229191686870496294788784142358962737609273639045280990724170056133718312988798254564069457759240827258573374048379546912640475936241030815605366893244069818586788120019581086051554868823706646919625073085961024729954693122202553 - 29940464906277479324853088926183012855325295499971992029441257566603608969413456518361653623170216765386867698373165768756424514104242841200665244607098496624900158578589432010920436164918008194478103275515240227502135372620535288056985864723385426774216752001630254034761144233743337303970661973242628493749 + 72393116453230353985868142760955630045367587386593075934020362552904692292436911466362813556238656740006403209733712953631867514622925599904721701683396406668990892105233109496734588910455620070610535547876751459009484922349799955629795781026617244230255813725718014912835218985417228301256887840745098913793 - 91050677575867876733738461632268477445766546115858004036948594127305052624521927448751837054109923616857088274263462807577637261942016702893053786585263794725005170871821920696922271069405233244795740455449924127006816129016944284141287988612665710104600451558416325024612995169634499376331736378817009425090 + 77079213151895023862950933416769619739537017042665584815864129319016505682358100594455993514768579614444522398851989280914053091717524567596770461363038929638140383832704734818784170373840026691076569690946218046278846599200888222727700167155897344285672822035937688932379244520834986296435201553753293884509 - 15458481251793268080269101861437438478546438501996695561808068735698208611444144154584591716224535910371102718390291830294733322189400525878933747751764715103494378368333466880616289818644041318917562025404747922170569931059852108277986900936493746135717614338518796585028894787178747045836080785550298855103 + 96107979313001518548139937481317424657187267482592604319363833425714701341073690237662700981328824749116666240583375983849584193581373286653472103950767682988037318071440682209657747379408804074409732987367787992635066169904837362561356937253860738245198355913165161902777637047357514913024896371374051324008 - 43752105241979940744435266661847166914813008426839634165514069686304656711063774907887306838616538907131325695756725156429480814994159854613057059755719958307000775012582705314725278000241555876334093507339643406658912278757290817879268707043428112279467327211395595482520624084072633879907507003040025669948 + 50999693478633731259020612662548743530453554899983514852931512490478727902720177945757627351109868418100179453666423897623287454096936926081921937305206013089264907340081291181518879591328734192737152635564559829035360550128136607784370116890254475323060303424868723398025154455734383888645460025543123341067 - 53094670354988930190078167619746528519783812352443382578709028525570654709289937977967852274006651114549716981676874388656027128931159760471072905958930372886729237465859499223723422122848148087007201586377644892352522762412571896450953696671334893564293248590364879289491602726022958769134752473132751042143 + 48740999646010115035578053231815694103361947648301259683046459837701674709772291711718215662451980236829840085862285294339136506762416768072201208125691447141068648284416318150561866735946756506499295457633855134339306955797309908478583724632191171015297301350093398390455032237133423077069064382026419573281 - 36703154577454982882218654911401914279480505509627347493770599704676667342003247427421578506302492179898359211933857479180439092822622090459011927291396031417838904694440738990822732922454191736835629331504158356839737882504629674598862094381794135279327702776139584664233836697115781944449980421915741114485 + 62868460823137502838733883335625406828346349534432451137380965103127427435361285457425511701215566332518723582288980131231545132998619616189226921919387957668088572925966791238037603607942110731499865806627424571247395292684505422650465212382840457993456665866678386597704545161441795689554252604812605959077 - 77625816871134309297788840624360411214503630348416802188471829704216696629899412819280971191123504582660261848142640464582463422294834886191718165161610243176348042909391426863399840913049104431590122507848377750732459928035134374113521770090235697594444197018815713061058861522250887714223079392686030615006 + 22396694479576290959324269624716286811184422692492100179122839790722217916224085527532127924657165524171769324492072654207546591739228886096852409167068299178230374652653754536500452877598011338570658585370631174801102367247852467949896958328151218908006442743232851657983214750069984949596477389384669820352 - 14319997295794758083646521024987308220438301813654239220508684117702625495946084958005995689431435238620968149991548166507554983552284793288837549892383667264167079289868969312736676044870877207512468744528258588539003943303400743648617368382779120740281727317124670552556664302395994790944640923257580783874 + 99395495946179673807440568016396815024143695637548543047445983191646325977573756761517969841201436870259955752701044196350507420129903315335581066320598140717894827508036141983028961056959005133015622674709349251927160202847733069456255007880783923384320537324564009290347750593536667081921706061229271326560 - 30445459440984131505381295973991795446365895148741964066644024521979904760853001241161890036388705147746903999297000832498821147956493139756276928749492433488047719330564636851832674816025235365761581216114576518978464807194226829988449438308995337610355727660795924347580167476160288265968804833748181222521 + 51194034302505024450251534066169923727065994211515469921313106241937643558416190747194270707015064802629117525549518981839531015896470450842605634020537559578136872070233416663818772341706860417319486751259144318765588803767000028186620733797764515730857406468172885964920785897960126317513115688809612281221 - 51522578982810130175332305137655817598895213623276308642384323566641451978498221157580681322708944653998368946549162499819650650563440571355048447189374108087980059029544465822025881073918532399692577543282468829593019471645980097770436170310500681672456943033454311451832603815916449974289081644188588549954 + 37733806935209204116254640956337642430021768089271242037335141922236788581662316098723831118383876927776324283633765708426589713496930828076190172086937814020519196098134584313812254671831999557889156768883985673773261210221834794771572921212112568903087296824510154729513585424588904376944040167950671425250 - 88506053729696137603491670913693337926753553614960728227116523113749302740836268513768287714700263778708932278226256411582003073906884087620908996132505438142834538993156548308212129621567307934363626864022305214067515945814541790723491971555218341893183818446185777529119513993359041754714516273676325927332 + 42164343552215811799034643001384398191281130521305278053759917738174312385253079027321858455922099458862122329094158985451489252641158775593444392530771831942292217020534901670875807499561541543327149634060025449484537786168837602533509476553826778234187413193783362067610337758929557649887471768921201774662 - 36043463635152271865950544072267087139028043681798270147102936853839708674339871318973076135836612719241405133137186046186412727891965511481364861519666621397992293174816773860984635789065285529090125084589748356063489812484851516902003070117196491791261024526044157690791613136813804111624956429854587045542 + 57146612267600124795805113904466063206387335515782552148393327419621108615507738107697536181820703998565119903228486669840331732262055474141853427393285380244211209064759118617023032260327741407381440244516558036156729437456607492385589786936645265623473128906940114125244798818298243582188345186001669440994 - 10707884958485376687440877711788021586603765439405534362940081945223677974977958704676987491406025894911071480427248239250162018742659782235589910332074826197055225549730547608776953554560501446791942761366207336152755509121893427804709259728542245084282327663165508215266764882788555249987353952061150286735 + 85327160593538698881105170169772250262141183086171825138813839824789868210904657179734322265661203021412051108564998810700800952216938423146651108440577641274725019613890673714642847260470491135675710434089131113990106766367736283336837388158186570772410829628773729311436696829815437258282560275974532153870 - 61912745129968124093670488654681926629364340111352575130508130899445851014055599598160880872169423685269783749188718604010590961318222770575214137301180364918642437638234432320337262353155054265901674204645177040102834072894024092503778932881094095457373892936967168601766977657508451812298673963295206092950 + 32625087000389939805212872692858900039161198318142913596516886379703833581322702577995013413262329043172607649922675021656036098973796456247163869111202020385943549922491184698802097344397691060194639969124990254802960573001443510355698139846546441873162908583468979153305901939927879306345129080094473969180 - 68672931664560081162058111420739936361234764718745505712419704147153194636256858011887538142749176911992139320605069014432040374429811700571100945627545770783180806716745012471013922456611258729903780850231876440596030091358800467693358143034479689995830681646385072997335678193825070177866899869073850950933 + 92299352364244723452839612426458399639826375164677700906823946145788164434095179785653007941182600629130449677452791667963274372983925654438540093551485162702221462982866069756766041453318404134766912065725407111263618898978419079462650187059785363254162825971927461572304038806006711215091169504564571595373 - 58716606881737333963291219285848400346523447340428358576993068506435308985796670337479501463336959061832975977218393571522808220336977302494528366658283885454479456423871175286338052617487902680579872533840433593171131690803590339149129367106516850118432052327021007252326873951578740129656636907752802660288 + 98049008169304190435814419867607290774447384622912621695498322112385350891514063717373544837281647605807440439405090885175280990039937876356012066879229889114705626188490617720212445556142326212612759701115889148192491587743527848420679316101397781898491965528471701077191987528450396012316814650991497381269 - 58929178872981281046586827919303600629809671105877281669907576261877388617748377653144135608679620456687044682806963490868230524509621808338868900445000783214666281228246469835921001580281109462826789356890302721300434341866058730351499147192965898495501910577770549499835265782389751387666542232328783931152 + 38024390062381985027374378834182793655228247990555319597139237522197465253440857554230943081131352749339493924527131506362967145608441811338654365084220950268247471453614094381182500184405574992667066942308367557956653263015520974944413537051098605608805104396637791140971522504968812909206122546506072543566 - 80575131492071101216718839855504217544553977199219860934283874030750005466840206062314692676007912379599192002016331203630129061669588218065629649154039392998500340912234202187151307549217554455367883676929562902828804002620359250675693186579060476455913376407900500431358316495944583674487961063604885043687 + 58175410040497731339740180948594253049328195240854727533046750114218398697468471458388303216129368894007557587589160141856864628846042038805874361697811687510459889215495541646561299658754577461281794743302518190001988561642086822619904206041248309864718810708672065820468655692968355589922941753739891443470 - 29817377894490068998340600145339161966034539428372621979843467911338622366522467569863872412068657255543566213591599203522986315672005545768464975247427309439923856338313021754425804717888286476523319427339724185948286727990984536947837449309031912483991151683560430818316469619636744849119707044829827169325 + 79852403637119199310052794241899971448917473176710066087837174704780844583379032556698072254917491709992255043956154897627507508278241058851617001540208224409797768886961977238024025107505879809316760508925717529860258606159739578373294221433507569906693830285130395693385529499896817633797798583195458743407 - 65070480242056853159693379748197473584513882606525163982838725985275106567376077670156830249089233151118670714811330020902202174944318808235219855191099719058435535734789442524916887446791893489615503361732410226431703978271889848858220062167142266241887740443994179746859617440843433478155392992907429912605 + 88044515526171790555545988988892884263793805433663738746686147914831836415583736374376801958912216268732480188496102301120830826376822328649977236902829743821838008338927800323516646441356752388978712955344915597840544313953631008035072840245386206873335407232015628899750406622209600413572788646686119251944 - 17325207366473400399182842480532144403125737011523371469150337069550264269153597513538485681552646326980976500710983580291909389018417917217563254807955649660213646404524285499555748253172733611669474098141315273613265748450616783112592611593745306921863865511659746530009999339628154502449731692826053070696 + 71932389476339481052013308800344910815314147178754275624109537698692590880287718118818810783261057804391970403770752324749955480325643980504728390959453670372604252459064844032239561135064431464628378920775570210579002282597947041125331146519049397471823606946873109833962696647577551202814813256037675574076 - 42684392841162406448291305301522618447015015573237651580468933000645284258791361375024046750134262044699335675803598077730568703336397129146536792066635815586354889250073875839778614343268626900464564787779254363316362933159598083864742189162867227373070854525855665643656243550044623588844556529538529080324 + 54442060692272477588778066422105690430552819698525211269479239915172904272203641496141685306738250579052848237993039530579758224030944385536749497311943324157034303040112242143939229899587949828413299795243917209243193715103245272003758864339073341966769726539054927567585415181053042293076060369613351697664 - 91005772286375990317592144489413712058598111147202612571875722993400254444176727263257751801663742556914603244103813618333174300778800455656116211787181856876682697884118087628471099587476671481071351524073356868797360009753388377502191547603626963147857664272599017309165997760584592516925375549266362063665 + 4840899021714536312394843737599577006470411043541677144652306970547750917322085605045048113579949042752987386968610539254601252720162330240413640246377397807500779697080792894978741228047743026829779678291465498774628881231264216670452717220773421271406518364270811995378993772893148467360208425635273556605 - 92232532318477928728763901583599639564580666331880742322212510260435257082584012869508110881785535802052018704842668555664522853155563251767835802002127771665532317802445427659118345403624510773411286318200849926090801688367238629886388840941891256040495598222085485029007684263121342683702069972501343117999 + 49766415201204431987350296871387302506418074683595733146740519292873095924821693887991246166954604373797929285859890382739119482059158520683440660591249015517313159489467286308466884652963789156571492566157755447648219816026716329538796868416278995263266424410540171472718081327517029883129351667695879897524 - 84122269146786451605870952112682344738184642163923498837763805075183421603505808528874324108304179441280833623516670232550945078000882678677849188426678676655148717925002939646760518026025074833914806067742144073039113497656800010615374865312462670176960037350214195329367416920591574111077120860837536706896 + 99993420719165057568257030540981407185307317916855225268198973187533150070871160302294154235389844702548769213794074442022034230885632353998733118376897215530400810780862623567626058352813818262824139528730166882846857164880617199030179956893249586512609082059629607628570642411461226318104798887078795791874 - 2590572152853772438834775906657728553512394679333958875653814108870172091038081397080831356137228227987179885904806396760204820903675622261937434843739220374220768001302443002202728409272790870447570136466375609992991451246291174478614848012679967984625557019332916052777999595490467453049021639553935844410 + 40083591041769580829175170361236706842969730756143382785332939372246370940693476827842281341975662408920943815438254694814481794701845125155191571093509737979071547533662281318211426762300071411440226387287452572445182704112900307864190787588943059488599091233230718460333256237475284178816040130459413791547 - 41416903769497232863319083057206894509450179015053897020400465255967768433499212093965124458994546326225742152182068899603973565677682737208433609667954533332596878536978199674786847423331778628488474244737796709935948040664832640953698953737328999405214494968252170917547589623909119544569045445898903541008 + 80288001069133171668660846335169413830916656929153749208397592877207143564282946117387431645555168918895774129628655182639938640091661781374133332607381424312997279115379773346697094635884405762824484230890341955321213197525832247842111870949861025407470066257618636710085540657425045447900674907319850890165 - 92332659561420745304184249168218534281964118052974214351890257632734699599205756752521092151455998066683018845857691588487956109444006454969034754188731800329289216250862610800073664646587536979400872395479980175609323879603236837147865130926197668031960999561400861706406182020775286972386507737063616713577 + 63873996273671085666376677433483345708408817639618539944377324921463084198211448289583140320714775747220365299872766861559640565621379337706705828799243276740737926035038051105164136693568002645794920849460746349109305033766672892719915934043429399063837651268804942793824061995021575799061151164378142805485 - 5860065414874221645347003726202425232745608516315534424823692614532777432724515010304121147307335014752348657370282725501950286816020126238391032324113425333518732798983147548398259020975592025544775284896731857291542448060399080112741188399152322991101527586341929126617562006707565045329278132851237397588 + 57556018744561036722729920328982823954358745817448602056005287979482839222621212179727224143593196717702639276635692615203911433476803311702578566826394362499505757217241266567707840340999945740141033108556360115455139348899496865831615388755583542849313002682291066281275545771727233846686073172727618025283 - 39706612449689286177846972325854676836251029674869597078963938951743644604861274467558468841237669267000008837782328462379328128170955295781220139850006433438188461504097895295975797202257584962057145953670115310700433816193083528857513535910358654211869394862397767992119016231155744922989119549086550729974 + 86626760779012568233671987426871609505812691060003556511617847671711968373405172428433898877374574324031700930805317167085996177112897695298869306826306490998274715783270387705741595631886040191773098475329533853444394136479009139025438817767771405203867525152112456274564199327686970665146456477866431367807 - 12296329121571460186537397103024223524973164450599877411075120753481785347011889377670070705504729559180075609054432779739311126398232883198502663298907842230267505419280558000528463936512581605103943345097471515957447356760782991828624632597824490698195819694154990148161108835566429111170076359553097448858 + 5146507240868403593467332315517638863698614573506085176095013703339939696195439480533745421927347100910563193023800649913716190057548492482739851309926448819356237742276240873130726426251887450324593591690861534610359211020070053344407987492962547650597601967005393357624630884636540201164923370942755115868 - 80563229235955997019050860455945356774785905529600049373373270381072714294669544377315562653714035892544148533437862881460121125115655779618725342678357206538828857499039493870133743891548517422640874449225528987514028265231026636943125564852834796981733091247817112333775887003976460265982707002090840712190 + 11129143204657845893122024163500377699724931986857925725378866603658506811143389979509140949390796988644505456418800723468190440283534535278917749436892453986175988796304740452468774681960183100991456093186107567120071276291888651031188189983911877933641023468763696824068924150310829954718212992965214427341 - 33647427175250429370810322713384893444786204065277441730503265180200739031022320693179575182319723336456569852708186423133068786743373282345333117975652578583755497600605063483267746392824975665963734761531609346954725631975056435822237836946165266811016814636996712036468149940952472980776021576370926235437 + 81027740012572031709059228744427481773443739181353858590720522521449457492323506019291994468866033280120696580040526908899320514674237447474320386149277303306191781697106865042248559239461140425265748704491254766070794573290064681142426853426310095360137827501299795972789849563111777433706150709871251777146 - 27504322609505199921865439774705710832115336873247562974097492969912325453361189382378690713906709193320255642408039490626573023068563941124644215370254588770626552087600801517396116212732789035649195496371694867811243890864602252691365338936055155402867524175849581232261315715595588300452226391422449735116 + 54254616559695506230504148493134352276986300566733813614086146755702607524129725396131111718219797438105883387959770298958333840736971460022686559457327421357703057312563216671477374975718937359109989761596399104973432357619174446971637701330461348474731072070959951453367141766151394240334550644748064715523 - 59584956076943809688491769141152598000118192587265608475613515028271923768605599086631424562449587071264550213158789273409225734223080338254711755393160419851798409416263204192781602563212281510078769124268393998589993621532500610066185778414541282584641889271309917253011939468391867677529557328439183188266 + 93107474795645303785169067677858818700083790423785827191085960562246437379939300018986529018667663008568802736227906427631710528933786782679784475123442228976813443617607368142898841045177959371228547541202095170799080541704301259722489566413421364707729366357186058141763407996535773548432041083370284970368 - 24327879121116101131569137500735329030797273235043287657081938355252770199828840472913220345497872649652992704934104356601653253960456798400940508148166692548672651904491240782911800769882121832224238389535333743379561050388845214062337250402047988267169945273434569943300968979773241093322117059829875691602 + 32371732437044361702348836407070350430372780947982313315159023948045700463271933901441773520555033355644748553088227735121490331522954363307358149165719042798536375842844714449212930138121752740715032972512639816013527257520960780059375340759592718668930926562683427322831070219621454553162822753371611958423 - 3410462344353081284079381065232270720159013783824056979047479322748624076963242100229827899686630492210844574767143570966744065481012207656987983982488028657356596087065034027160947109795523320104412770466552781648188568069251678541007833220813371492648638081612697569810534021958188897084955138031043092050 + 59894575667789478797441052588097291895925344393439081792297093296720133245020056073561413935446023490870162110999441387226537411338046023218521973915689576489831972657465967342469752599174112451163072020762781083957277601387382855638573048588289527045047991377357426552607025982006897300004905338273770054339 - 67471637242609192227511124905444880162264789459426027200480296192330712715937260337323579017134345636159914122779080904343311061406312936596537431887400988416420791945699808480969953647104719093033610635766892303431625760524878711229536310230054535465030363106937178885055383375991929700090599364825645379875 + 68944476463240589818290705865278257785594210002885543304372282116782337114104486012301371114682743605782882840526262346013674644397282787251222458801814432672221887142160561984835533629553922604979938960433775893948783834578638495334065518087474168929618995630049338622066754191540905957154580834711997452929 - 80421163486307066861677358773082587515093609967686450780616866798930708981355292980725254725425352954248846380169219307287778266900135977375067512554487748191656548419733731283979799175971850929325706231070711433571689293974832236997449160968332016545276756859947288311548036037388616688981239116422182492539 + 1113443744209246416054224831681688349816855935225712431929022744478389494640995597721114567966961480146507671977349406121069616782961763782784255488166141461436012601522850851479249797006455121961423511492617665715603972627259441653993753934118588522025764983904585121771799541663736035058531122077695556090 - 87396304863053784695320764538252180355543302519862120045686523777908165665391977155417293762948441106781346199170373376871942871702294264733335113941598521387660929076163798559494977833444112794067063991062501276491244687574578744557141440068747812406407600932338632516803356602493608581971468079193688524800 + 12601658698099462322042548481391227559525485686838221329789150891286572317232855555194786693222050655180033945624117076680035431887395735887013348639610140826528728268871566104806556860691931925151545917864030848286325260463898196357752113008720908361642162776836985141424894894722044735377715338020679236642 - 42734519896902931869315766158972719776464368369234228394811844581637074762773965665053038454247265994166734068030433826915293245748970870323993096403592575110257699898684888826345670067149196079508069670337999586218552847054764428582997692622255474583397459396994813131094751385320560655087166526588376674604 + 53026230486081177533159864441928046899351928361454969076866719273363705757333005816288604304756317678181172470582455273495088609928765445350832727977260601887481541972987191402424662533978440051340901041588075250527676306143241593900340482245625014658285415395612039993119448164964850669954363799953330963144 - 25500785878799354103092044755052035208556564701438303873917048839678424750209427526742555391442328438093284731338947806050487179690669652114591863054669040586695343430469286478917851891509033333474411252181012029463589923322404142909636917917784059404409580908279051921510012018511287436244071381531021084757 + 38812465840700798607280752412647915883516954009046760153919283148265016292461530966179435889162829843087490831130344582030180522112581935172658070899658833532938551687674945261398139634125005504811448995984228033775796918492024867318915172176822272668237687497567638650510574775235923124122386540585344854916 - 64716897089950655051294002935332705035697696009299352011971402260410584464483304712832856197494682414236070763456445215400547876055238723781137300200017564354363892360838905161276085548632680586830278941360348481243672102530299702390768343488558623904430559723167334676312558303703199607625032311840897475303 + 74112142481915814049894271908370979625274459729141946779480912714778424202286307160922000076623246626518325391688743620088452077851535727660620451203055627240262100943722977790180434909022816062340480651676029077252696597629539137270430244312282823259077545018542282849904083641759454574493048682510773867099 - 11661821983467927391463792432866807960388584399677991866512787033083901537061067394131011188113793005731906829937483370738606378970018591176054688384542767694770651965398946121765984572753514641440436459018436880795180848258154213005073727139065756544451333749167441376904801431017885739929073985047148362606 + 70892847011208177736880850206837928744747864913290526912364079577644850601239945504984063738354523118225576495617414191076977381965726894305812056760692770884860922946780520260499812374864760662594799842257412933550338767112325304096999070008129311581001866308354888628789621551434748075808379528350558603255 - 94691764582257983839923644007155383694174217518936148143909395670706401320245347669235618582877720133295078875786414917859881976900167886573476835019545961252473163141712566422908036959587522982189390106587252004730686066202567463366257856859314447106068656024623374805772065686454258218676067741499969424729 + 23666939607680120437236025485966491519843205054317241835595307494934591143085273449159493828188138378669740602883406341679432484720708125886840948336471859941873689208607151127484541064060382591066618844505875226860009847723959056559578285591860245935913537042932901557571212078896555097788006694381993954524 - 60131588698087055020499660125609944433985589624376226666507487083092352125601950661577407292431429576051815203238415497762401259858229767272287404187620872557202133381377274678262451422792015953083458154653652303174415089433652090592292357058043178861059076529856188949570914223428225971240246824034250789522 + 27860680145490834010992984522882657166025116957509509502350961654162143908688939053649126298747260654632557629527649128558771795803510633571325550619833653389447684503818462985531869205103612284804850629104450642697575021926499395614566781082602622800622342602367436541729852083897974772666488151437048326365 - 72062137011388767555925954670102618334301366080882098928820506044895795194550295408069515316719866905358273390683472238910342363825866872344633314805543031957038943372230869951163590330637443643367135756956532569984405701346905794615391410197289751928623655591347677563687000149369369480072670040059005570207 + 40674919155941918360640859096634605946831547390550762382990577961889322858291956750126540676424656458791810148015873307389471035798100988071004188898943372552062970057860874724266320250175950679573756085999660222350258446826341821140551507768131252164129634029277721597389317710160529881063909384941905920821 - 75814983625630500852576699533366871637838766512595298786970203148886727146847317109425148045659665062805554696964571285522679504145294050321101671219543639422762608831794009548364154000730356585978539977270946870120674458019844761804679923216196688196646450366668963612096147732079608469908497448483590372200 + 10275032504071895783320488479896687880118253192764146512104254944127626351573935407472490979174305419523839908393760964465502803110131460624106193184125317617764509989987032136517735618153509743373410030646683511412385220478667885604629274495459234249822306198645906469773566228945693303268006562378437154281 - 26496903718893623051010066479194123472801314345910806381070883108042556718089481634394941411696390445473365985023837477217435740246198109596809274832965069681362704664162364360585812007662632044935510735937099852458324975996560500178313345811823783662133915186156420099133690047560275918260008863110499725736 + 96825166108213415046197576922276470165193375007240838586571701830933992117808096858406694920016380987297895345794399192228528912517952198220139213479382077717508420476232233171935761399037027864377886824293044857345579614134717131549933815513189656864578705384928427191579152976620470870360218182110759807008 - 32672047070366985928791198661444755141392465744777057904542505581929445885618277949671762976530239627478401620798976392572403377213712103630298992412990507639215785370669735557663681694981259543543914014346661716450001457963236071497806450456712468695731015504802622188211343633520520806142967491685403697475 + 6614435170483163167280318395753671855599755890504182505298389734303027065450520515739546305495174023562165374309296143748566878701314947387561419761091213704358307141523569677879649430795567730130977274584602675426804741799119604146875296904319838651907704180479327813430484057333046507376570815951436146545 - 15810451674526045909739019898276058024403068740315802326566525638840465244539755840932704412500316970625047036796549190860534716107009964939320857896100956771462880647602144895029817848445567110532514633425460723486992641767127515803981723980990189727774778083767280575880149890753548828965934217864464090070 + 6823245995736061732463873735213325709273980814280147890169385058687828189709128175179563365691481910370804804464634450298942477523015265485187789053997169313650749513160558182656687144096431161826666147120023494088116482985939865742307952550889280430213304523363150039540132050358564294761130910736371811910 - 146148585524251724400220224806046013103412101875142120399428982332226131597549397312981911060022303976718519019804654037243992542838079984288764735854449896608760255122627362075723006953859689222961779042111566086744353405885698780179084655275859924227253212690587997565475151624895132707429242542317971955 + 75865081751708335750284442202281498757756599502706303303285653508237010019896703732890716509789608460627284631612175755321919236548178468546161057338944474006873351947354715695111622477531239675327233727372400453593340154817371395696779856276327066377421017833211269187046719517059547352989085837870102165368 - 56248001788243110299858573420666823408421506551162853192240352546899010917898287399870279943742020346737755886440841383115409788959709603357846396886018950800339788310654822558560134178440787579295087131085670708355096446016269302346087364500869543669962457356640338363512116487379552990738731490830669512177 + 1017882501184029551149232676563828524538211959052159450081976429576124965926520866202587578905923767343839733728924569627979335376421776013546952177293165571009621429810748216587292549996532911383658757550671865904353128111357994753369882763475416082577223874208171778469921479745021227196873130242298311018 - 50244908385552333458036264534431416305586888009828370096179365169977156456152301080915938805706634941256385180424025450300133792956677620707680864794656502045466468886169794522324546207713759874024049860640269313051590787552800410787159268297174296198951320334688427747668273697492462929406794688394708999448 + 56034150164034902296057719313447119825358645756213191091253585831775292733521710104967487076962937228973357557914732567160216730457778245202751035635176456295005833464265473307141924017406756296188199779527472761938749760370878690701579863272984909203865127627045126442063729198969105460915951495977766287377 - 19985394147107664362465036751122966260814081028077033300453894218296525608599813743680919874802198898343177391685638313343037254877496070325706522693057817569532511630582410315927497398244810619245365791297983265676801474034208245097619978517116533742096132124985896946173536942900899245389650498806633323162 + 13063434313157938581034286206178423402215901776278941740313026213554604207973564627384726424815425910376110995575226334539738282302813779639846247691798042577228282155604827287253478990339771852506050113270263358186720003840041226400065269624217442541472541067085528085429980889860193711690202078978809599037 - 41689918728271725469314352136066112098232474785222905750530882100392962085510657705865207798631217718341294146296500373988331362892669122910903121097611422637466947742528706185630394797151948868314197435328039081822223553408726136350730920972811644754653980230725859454286365364356241796740007578398279549901 + 81925447104305938329695922848379060634504774375892918195727714300072833811583889315942942679717788873796371871925715654629847458263262113668825026349508718443929217145013782636910724461549241443442674347160626389161155983235834505962973298118476734889464963501344635411342437483915805789694067247089908626185 - 65823582279088226222157165836147573267810949252047986523009637132472259268280625821849248569218147068985715758390481563255807983702633134657645136159825560845126791665518257208865151458289494010642363254782472056601653060503349972937216804589290334800033389762330008721931560267944530722467501672433314459647 + 14745914979672163351704168487796956105050896698331920661023498183804611279455719152524007036444261701361292986365059418146961662387899874688584058728803632281773302621742840884357977107501208485209143958450682375849684478402228870760871606768514482382379311013625104886746544440316800527284603152625041087019 - 71723493536912758504779803093187682291615513021205329329582093419159308380477091141564206568467973480578433534019635248940933489791888278705666354237951087126224595991249920933244004554889081631879904126813286608166328412965946883255967238256458259417944004913825021190764631501841201029412133533414485349267 + 15112674637224145642536071790727380087459441667611171107730224771253780538476354451266956294994329140501585348925979561905071692496412978537096283472805911951218947349022028699047705429133990576504259567753811089527121307928522732389067894130476900023748931542044610096439439690767190004707516609444509749036 - 88491008559242039072821919619077307934553589362265680749296483686150708609308559212246278024575496692920276382714258402338765494742393513980119990020967063484059975265088229600954320026813647302269641159546095969610819566165586555981580653367550493180049549824629761319032367966322310154249898058446932099030 + 71751863911776444206527025641997905837824233964756963349408762721723984842092278297018985523416129618620400820576739363482148922268098958909162599749970448701611137471445732809090546301077414976658263998701842889204343928856203957921995736237969003302095742998733750725839570753420050018733365191396594088744 - 3143227541893145331511140439650802429595415859746923778464532167628424168651052141009275529645429234264080094991993726154884625243231744822773414654893228535449473690348669294124152648640671308041443574765908816949353717242234761506132471569007494343528865404007323996434308903865382935372379979106240199920 + 63239991832057752097114645718487052099490768686874761899051325946891020932423905595467878452822501557725943051130929407306260209290555934142015675895653007437023656665829790086436287876966512391117291664082716134426109971726072853861041762734521557048475401028759584600506087500507783712444748551647383877509 - 3719051998406234976812389048415851365041438573181819218746544422001650782871627523106633359255734976636320989956295170783805246586625096479667879039294367097824951870981423583513484805455690557471267121104254116479276733396924183066813402003040010309706109719785086793725627909353332435878413055380747355148 + 31312842018338952220188089801953558269926182417268764928179033955855924320849665014209754451195412440929520000276708784862153923677828472263789146016987834193587399909157864912840343152678778625693592298602510102346981154770086047928869108219016346161943862939923785214735868153263962872898205319912984353782 - 21445189399165113757859743582383840733715158921291316556619803410473638500569988221545237527226015689232322569612356325573889665933643430681632220550877525331485908639548933948196068216214063283075599114821182581514419108520469179451130056022378553340526756369392100602679984024810868446320570472122976283899 + 49262091226812579723980042827648524594735748878296337722584324410213385608014462043224559873506578505575168515910971512237567052685134445242991466564813867673769650783479986402674943780430755632401120899036647965709347022838414635763131132574784987532706984841055603486124147203156893929159788601961280854504 - 16494010742405683513470417799808346656439259360500512036568698177199381245006195042636827781496986078894681557004499666493207688040860367048244462450411700986492672496700947124217067503440300986512728310438169751483723791080561894908773892229100806089568679157237846883140648822853182690188606835528747114 + 13401522674721374254414473505953592382531052755322715985403893011032613262574309946738237053516800190344809808573739661218026186982987391645246999475325387675589487378134604174055639122164422111937840365263597961087098332085281483283414188359929187949095992139576197245116995377894524691185522222141160364622 - 42048961145875899005039298804351554489756827707873216945428815956702170197503856413955839943360010368415129180648253729873283722881535478873160859242686224700415008034068823463774722650923167479072700033946700415251159439563451438133191841717027452151265687044945194049353132141979165222025554502986517877105 + 50792835377743078571745659682038542482089571863050022016759405199861794695998353458230004605759439731544587009601525640479073084844997210568659416140500884948668089766261479564127492210600257783161984699368406445966809455435690098445968820300054392725726334332931001213455699993525956016013389941108400459399 - 68253835766576631537205516172297918269010241694120181560864664326686790130245776972719832669519443904816126071073892332296487120774815250507456042943565097770318393535473024001279506341727440869540872596525203020112308607098561563693266718918127148659839600576809846211001618472075817619735617932966760190672 + 27039994189554624601995718608129700206866807348726770550601029001611953818920475618308101139661510795193371449196667208492870748296538706337905142324608735103308466403730992354221312052658462865312919907059823300457865025667900842001829368769922020716573661704094844766223332644068045224733671677916246325475 - 24453100228355734098159111408588556675968247814702489970568955663686235887672994382537074395672457985366685849702205923926688718292088046215336620254598375367148610122311831222734123698873606143212908378324970702243200572204383258493613905651626923502781884443169523890571826319631539844872409593233373033790 + 34845219318010131889189256118091728614702158760855671321965474812960293159288287559821064604559172550795168582365712262230643719569173954582539463650453546139484137519505736845771351074916678225734793030170247374010003109094298378965992848381452659047686684730939522272456104934769454792435046499142244967741 - 10472751506767403408870507886655692369639950940012314255263905610810321037384313959529694999568925691651110139280284752979225379831704553140590849134327843418314127860643497945561608362820564090593908889851543873860611141539898804389101867941478417236231726467485232821086090880007804879733443563483749710815 + 56747420620525878253646022147247116873647610886474674537453218054937753993957646037604219187263942731853315238763783559402956055330056322043248177773096627799567331074072624748458670930072194972901818979804630857833286838922049992642279483442630401562101045488552056133238609152928856994463241570731822490536 - 59131951354333904701206520877371432275418831365658597903321307732584756480984466274000197468027292206736815542333078049957424341439280425320530720596617000422454670555874760544723681650139564512257876835260186232591546145083006176254656543517619120958273684161564177672267905885853052210347197933571958093463 + 42235060931649031226470251397004367781305704193499943628041817613621247504849687504422066520339047913060443484921950412953402657814570390787113997128383326740744070267053937700720073310676463705249208437587073610952874699430476232912750274579036777950989208368162120740180924538045264081303394348872065709904 - 24472662212730325739445423157117823080451516544900956586911105642297745503837170451564740594367529450197056878711232561494205675746099080405604491965422164005296001208993043958221370605719952917573617593310820201251387344752373333601580734440579385832137805738695564713538337741207226334755548438641596383886 + 44389533657039350316877222738695803983018764777057497099088802967341730473394408338930053440280285252669718069792254643891646045703965128766657446577748976062398762495357277255459841358390897407124349654882878683009617462317484343564951516253425947819681492947304328198928451553379673647433326778174767896292 - 79134119915954340298148039307343467594632430888598467126732966575133246670842433296607213723127922524352408028168319845628332723415134678374482990926042402810183304856273578949269096233621559442995714547436462954744641270479148480698283501141497298632046355517077793649719321542448539800576656091306822945679 + 28218684573470281179979386061436888342739457903638912572900203442023729962439459074252805131032816804037760179540654196389055228516480096433556328017854133328098432600653597500468816458708132098196581874381050135362916738074366247565866505959355425595534282055649843116070698332561196874057853194523661748465 - 82389145879804255590242111987400536459142803839593136248448202057544725718349723879876656774492590536047973555869355212659571936420132696150816618172776569995977508141618624688257300166271564359474199269348042796062818989639892129952418392378426326855988237622033937233561632510218651073961879768198106729679 + 15184552330382545664226557822256506114528481433263420013612266453015640716226431107158288208522586104132394503613587163864820058555694247397228883975803369772955638778945206879970029978714146550270443393311528800371773505617641162246868592065903433786212554630245937793009945519639490701706565175789076992967 - 65861019438271792329006057129015578319361125975183533068680372519917556823900742722511507471693454767600582792167161421459379224107020171163540109461481404154578593136975165016159677151176535550469655376131577107689031570081019149497837075178118063884749646200898466912195089915451983897600190262926964312692 + 63541013999303794876734209557387670581631564529355515953780541184398593442676473925377490437170278674769572758206023091280528589720019218888406760666420225546090081970308564294036591722850102894132231700877212613841989853604468746511419607710101920182439090288342554109691846196156492879327166364492950865008 - 91694889001914615136114738023504658630609044778005243096992739666058469833481931851063314079188803554784485204042793834308181837018659094859375679168669740325363352329239925822954582762585335479137289441181348925462199754505528791162240976876359814687858836895214402943471912260919073915126390258634527662716 + 17152016594949575069103353862553337151220371202785866140345572592211749922548814761613855963529619647408240864315656819460185555490171746189705487635260885802788318593883836098084749363644818028405575638951058183359286124825189888380732605075603532108811098787517023535937358837803241997443757669050531634109 - 61581011702276453743563004189363641321540067149923348585002869467259924488128205367738316160940586124342327080895593033375233946781717518787760871257173057618483569162144197107967408860739360507905831535545984116308681055134018503048859558463274343186124686275553656913456323009489210982636335546065761596496 + 14247160623281148314481445274581016257995695503131882947052072160557433765552404753223353527546420179968633595434657420873538007632944064277372758750062831114537023550268523685578201424559659308956410262096202527820737955355014184427632514638559276779078802612040495520183315094963345067869069110105293526088 - 66252898475608344407417414051801207668893879174800605944194777889233886322338695219143687500368279822338880712761455785119808850016739222089933877018283659389997075192306987298517362828459239784607789934491511381583650705276572986044838901797138220878699470877197355152507732118997280715828739996109536660209 + 48318742722084061005726599504116212861964199009738198290174332586460125930243468519942630041445981571588655163602299156622891755535916333010884153239935466350140433384393498297122298142707540643381833257031472597548686107223410597723823370238960382138246444184873991451981841605721563634980095150644360187620 - 30721638906247405315797871148844997982086406544151119579606406832330788977350098741785999909404679032965285330938235162269769463725147376371024004754539053726655233719093087883000118143506929047432001038626397427578688620772775846723605079104087447569131129055547637976698410373362318203371459530136278476812 + 60137702653831402153332442012458013210365061560968593762938786577073157021369501503597344051274466139655509936526917043619005766570748601019936894554583924734767304622725721359828933407356276779707103469263836200280985149464840038057924611022595351172076635913684166806481033221488326748205875619523793127872 - 88821295825113727873065335535290376381132978259864061061163964603775468037352087367469481222726449639092880179440877049975267536579353801499882347145280106125657424754454985887469011256002038147915562909986457032955999576150186467436269377712581518011715870834483747760520580721258421621211300471267441121947 + 87034703940467196706987177868657258098665928169544825758008817783332611739973592972953472143847828573365368899531945605164276572083772248564184482494737417657854818013653984530934304932118140756361691198736916666457780026840907190014888853857388415234334128736167102620462457458749050409318829630117335992000 - 35310514003873703436692395670081709958208958805107686448735266754213412214283043870367069866993142536691060256777413824078315681333912669372381005389738820841128720911788634468127129064369325112072586775460008391505633706581168439448951811756066871796825229005632755596660591249716814342507279506442110410202 + 77783966505654383577226209901000717150100892015796561596826597080521283507126612649752046902800974967881916641727558500942412781841119032977126864303989061303194522372778663523220925792105046252486717256485066162585523024591236992126713557035811110339294830742281515100143442538042641197333547257809372376064 - 79409778082508924842841670511572601738619756109518021896951748242307115255778670677000239229808800082527788748909711731676026662077636012903300452541806607055750077672681793571845503011200286772702048892500717987453393959424633193606213531417907247925204509591226154645662377790217787526879391625756734729 + 47829152652117729225993425708746521680859854832338878838797566913894675333948343570298788601660333598468371548574173942757878032785616299493725790824409164930510175323207399412452942776391064003219366982628802294420170869916290226489757611902618238480115776121865439594104524491145202991100905986183711367007 - 67104828737920783803486881479291144953325837936301299804499868152320629988249133301672140185506600993140310564838622486983355951609456344546237978710251338126951231488888070046508370026215053998259783638015654434924600953083108029650916151999153143003747096529179888628377389664322625664472660507469168175440 + 13680835324609088560148200809921436204683870159020825746005409071499766344143360843188286230667557542236905701304109323740234068147725443487282402811306170511196013004411701422724929308451064595217730993910549747780138423924669505956657164003547233172613190744501189416020118636455482111183528515011237167006 - 15547966079903138563122124161090004610868294978514537277982547260968175157072681801991352724527086683773570896050007519983621173637705104084413905968462333619052105217824227985499377301815901657313232226204846642523760067825718824066080847929980196104989794787138988423974497485739114667417433575246653731039 + 50951616289601639791775820301066100771588850495483334080948419444093517431755872062700156675560985093072891462737267968519505011553745246166048993906106685421648133926819081307881573333624785726754408277341323098926739849595478336362456530405178885808309400244695910274793520196853573192329652522853570000214 - 34925584303003361784917150369204722628717406632035371241728414302240674629617574486351581896689900902217412608080108347471324660584404503218347272184040280017550666600479914446552579723054729749040163841106127040856324030308144979847367763227629907445550215713693931682510697646578211791757295372799886077640 + 86607579735651737386335303819559555711504620823921033875516123865544888882959475546698350256441801677014210054554765480528034680281748834344708917140472426255990499822666404212765163416426833470746410694984296886804308468827120969308367397038595960361211981244415383392398780971135289397098863286468508185679 - 10212478139957280522743402352182017086009011704733942556097994200407977298498886261815154093085747359827497377885959708275117717718097260190259246759930747906230375924644751729433831001467313331737448974422329896948229520108011382136770999385928045382724892057288488786002878752724790725338569520356521001375 + 48836039693997698975580778785989534575757473708418257822227062902324950540807537841484979625108678937955219835330152228809979154673218345365461850343601181761335460435113596373576373829762266702892652811093563108883727613790280677656917171219789610956406521437634686654949657806003620097300243094966431496498 - 64454936884266722759001382828458127765027405877800320413173628384635525783570342826179766604389347130175077095275364073429045918787802425495047757696273636815826199770061994671976058136400322528050194847918946955498837619887493627447008668065748969374260043072965148795078372433240573632727721761933558506808 + 6081213546060107443135847997940372114309952562412648774119800567710741378786955357693106888405861225176574919883750690769971727686260337537571176657000632000447282958966763523268949739093400614275552686965892521451569978466616031062099201386255484510314074218214878115363846772673024160523960265365176793519 - 68647405460548968981257204756983848710437676455421519834469324616276215189060911233802039388890495075314023505781153675242539099719458501691692998408458685530376158707310911974276157672709988256318174526017009035627170482448454443303882805030085174421984812090768971335412226066903664947384028632284235422245 + 70946245854742272525625532680423706909008842235496897056927594587635683000341053703071067417776706941886596228068897452795430523236411200127437232557535509313961907765709275657276740708323620863671375895144985673725097684410677316215070953498565297330714484707968719480292851749914682504972405357520803483826 - 9150233076599206474613707029081873027296425530825275948435575138139031478859541266632567921092553957801829985620464178804013172267035896576669462967271414879908925417573243648959456351105560053027033509655484475686922775152192292944724931971587050364440182549946146935951491763022830850566497174551190651942 + 21752913927482228504070975673404022333750652327010542477272588617205066835487085752728084369763146780680723344361012692307585001899059838194939549220175662263598173261063177319600259147698881092217441513030080413665824940729552128969790432911824529811485029564280202708907425604097840217332738288125058225537 - 41453466086690907344914047328973186297868494241443550517650186374870686714451226851148188793026866313246192978643551730080484904413748450713136476204794113105187187915834938299154126244706598669793840741063638383575268359328785757403016316995769279880835554872743126663617112689880672510918185198772702246741 + 59808370157207607035487269099526124260050848755328528348079807307444718128671357561660351131884627961306571739513664103006617528284219503995804356802205087498735370280141629755755173391162848315857858360886233228002090007085898534186210552833190827905889127175668931878464635702959936671910107439455526888970 - 13117680333682071271438667046191166187811717049159103211733979420228704628882809990242291178870236095207521012283534416292002845860291280671140454829438208845007827813456478990016245621638827664466338389316432941254736448699516456359875832178580790799341717002854105552867805263374070335651624836393350753142 + 92107282126407417017294038694499830529472669411632505288747635843864818357406558220923273349806945451639238115313103188264289097261519238374311185713870422546968972567815992194684176584490321202431634987452420582899100234068792906624150662291279607322329159763071614128064378570206673020243321324246930164684 - 53563758606107570867095109245168092762125892020156275111815227200823949373383313393094743771150244077922893944441062716737590917437681055164063517146076858830749030663913168785897230500035148318018258792997332117571854272508640212459875923883382307825810678291902818308050817097097556226457919399692307696015 + 30588545825091627556852590245254292361627664028167594293763808192323584570964902164227927959995753206551639061723970828233361712127584012173972920442131742864714088814653635263293281321291635454102038815463969785710516651614295780030953132610299322923624587344077273763842560712925883884864948749976102440962 - 45381865539281714907956555839888900756204992984276778786939911018753447432440211006894120821825567931276302082109501982497169264482984887295882341007538157684859420382087150174441872086660994886404742582648383605293576883539526882115606025428339997571583229503769916745646428292854889538587332535159621252431 + 31788543341884301509601180513503573277524847188016480096315100855691173062750613784484370084236671691781602938817286745702157894769255085044997245010289330292759250969428064062653490349359718631375211480352950869794152373117894083770601592432232898784649866353978092621135688222042336807459047272741055207355 - 80155500830656666214680709660411174803208145797001607379854800303223648213133030432830517125836564446639945913380063673018346700438835327022445494628079734603924763629002199347107401685745089240043334642484851062317555165126432337255026284950794839259207739459918324762057246540253566887375900958840196445979 + 16072439472477439738801493797984329263888240820375545196665992402748805674956336468951575514026403753730509418546236270386608143364671929890048565509343529326441037129940804344456617621215662194412974556184307394646622429397002148461919387557173611524461403889448417597178844112370087243444962332486614480818 - 47184464227381908135963839180960670142613958501369814431244651405824991647375684488384017583254584134583182521853163379110583975345138414171602230857198557870293690596352395144313882557635265997222754352311398595460580891654880595100196476171753277280264500473951696711708198419849820208393210830935763608199 + 4861307412317590794083600343416914311436089495397274825471084692210898131649588530967129902516419503464431511613468389770332671753072411135206397734456454307609825753069852340993464370636791136906079097723308251262056641181857191791316014514497915226515202859163432672912148648396149575021162508475499906349 - 69402131287898715535191702908763025254414380288053729201001089939153335010864891233773761537742023935203704567908477275730315878769392560628528242905164497141084496064049898040655462442967016203985650936856310554232787300869012910591609106295453278425779729198339244946763806645230198966622332106644878104425 + 67431254817909310974016674253397792122807250552223669311433004845513945198985923082361738792159698003962608012765166145366337836715799838716086946195194434905760829222086473157558131790538611076230280753007771001441342209477501146538747440722604529647134370072875711393311362285218934529596980855290341282817 - 5584590139380558584062485459042111826852567751296964889200466521673315193877413726265397305169526089226485615397081080464416179556086695621456082502717503404804729218953234347090157888731188648858110054340213196233451992914754363360141406455192644438980741671636902163639439380258840137424909858564357751550 + 5165397061293054333607642398786153764795806878726869534218013756761707294165261034749615451436163062986081221536756207453861720510083397496415993409918462646089767783293805225256778201599115503726361603288750005651084964577865973624204635730642261376340597813944752405416020724727046229348976778711480801763 - 1377519924039468356755904648443680567963953868378535225061179532141545101035009276152814727302313313110004272431292317058131696291663953649902382022747561186761309078556022884027976047226952496261959597291846360737927720872082426258902443020433840481444313248581172789797945905081669724364649257767141245703 + 57918161734610776060576247530522198613456644405176608974936143795440406948435455706036259882087238205094703280252188631451709915797842624664258104796914816903091552818802834070069213916922122911813374584134530259835951153121174055719878661975332571105270976340355002297699202068124825697787983207516859630943 - 62512753772470595507216284188456877587200976537565162110159370894818362081815977310591864732075081848793092069580476296709548780922264450858407047615569135360268771468464345349106369835116037347468079365120281625512428817616773355884440403935218357579918981788090788487950209807338478187193190663409484871159 + 31071517848141001912827181936507703692738375277061837814856269865251639726429425834446839126218505096961806035232969869272703110674802548379892675770204690874512205454999814241247388244026608173853418004339647427127383717443719437970101523048407613539022937434914150709755365169926248332038876438736343836191 - 8161108308496634861068883696969300854196405472270198997098153707206863947574973429727015793170342445847706139115713319809167545820209710508271804876000513020774962123296429282296195454144440596327672631553152569261808518217995855081264612125199071795839885592448644021589729800855493277567417306558460113863 + 40697015545150856033081084207008513840590966916524966480107005187685747518681782904576249710162318466498742177199592214744771388821223230106215589948463599308648524232250650094044104273660596683964695780301856078018121986174472853890090442249310149608202585880274472917444478764188827239929511403067633590997 - 73533204111791113727743664402816577282619640370140189143335783412907597145103634067116657786963745880778691896249403144029090277551061364124601248286201132029687043013803599990669393750661508209366751430634654887009447197788001651886279055206169664055163294638615357416534989933022015035891609060440100799574 + 15219948169476630321142281360653644527112758470421462469677953602501016091277251562860890373129727062714952349402172663554912067803824600604939655348055866951564920565245730344045073518736313309618144037196607623490504837245994732551982015404298286367639557614494488147683619696160409571992720320169948317935 - 88899529755181789931583009344928006592009619150111448566231096439902406065260923988017457632265084710786307711696185920292305244832990731189393349540640698996725714064716654066882175366225652267753266975434168984914897141986062622986144357620236537385355846158410238820783272939077281770585521276302761496157 + 83305421699175181087255688848903073776414445170870615378090260488577455026464297904636909184546249444303133309505191444364262447168792140017085628865946017034187469543564511137959037886967802706252741392411533523363015196533389994946681728719525969189251179688422461722560579002893365970454764095663419956969 - 15414001810442848447215390826258318918443834984866697100381819011025797722807147696379365050636761227440320759340014345098266942389045853825102034121851638407974229873554711852740896582394157227958948836729379874338162221520315998801193574565950557399153257884893365253999794662328034452905786123125784638709 + 11944694241387945129623752733713175371861403546858750412842012804799531590742399672233504750254633006148678031364679935783481133501868256461571484208674745720426706111497747757122366375660251613186953845157193319246751358109550323528326336316628036646962331102327813187762253252857098732194747931475749245447 - 4072161206445909102493018463594103312489230955753835238692378272133234373258190753945173397962712679943608608851440119562441075483212488176132745918051453419218181291225259725889999786377458082475648837536690023892688513946020487143124678104206591175706998672133540564528339124417997561820442472748165776356 + 67370539989754568978623111971089347206407315033034774159227809748661412649350310168975829375947717926321622694278433071828466122782127724322377125388670308821990661647228132665315489241692626844423267061982610844170911059718850209154801007791781639186891326551813585271235504647549391366532671820706450214188 - 34554948002837451735914979770114393878947690254741846019803891778194170044441733361995501705561894655134497458587870777377576410272788768757210945741305198588673167647831508349269852399757820650336673015052969128402492988201316994491923545120112950399280955824698621495204370540906248309871908941372550582122 + 67284782048572175592322955988367532552562781441412456188525541387467703818591749459455904150874675856589996002625068674566233127725240145654433882695532743158831304833581905929819938813613604199661922419947046426008674605106035949630723437157028915954490009184210176997519836333010365239108503295153859478987 - 81514005296719049208117704638950645180921487745108447802745641002503305901538683453248913673223693123210042713869207917502491899448693597166608023013805719720640779558188066972644470669772753481832535506104344676982561116839968227252249818872586902751872605429937842469883303956294111706062944965134961121523 + 25045201372302993726746781693338423514684212113985553706338864239811270039027870915239866033263433675750289691424693669051955868031466553154208815684060819833769126458226531267382111167653873172378175921153432167833734705883429111959684932721792238630788416530090924942159297760205177793118005420010952585149 - 87124154945901787928845186499862326363368665241332834591734488573411814879400026792102860099075694928713616547941291300661157570115673740565225656453608906902483837985261773859955036181828005527239961951732898390575209763982211528628540030425901033555680324708093508087739954791982698695062451122602878981936 + 52894168271713733974644294604915468167792805581100363853648271201093228118795829161234764489496648668401357460033413432471628742833508667793124353924634514453647195199670607691463989400688096258807023006156843933297629596831725858969751493153154598352684034935134154156248558447790134954082339856022487609755 - 71646712163655717610376104781863867031666798837156271152651704554987747374920863714625940034076213339655644128931648373813246897245836506979157355129048063355138120486721137066678010324202879125597012066967837046679108924302446603184570928082886551429404057332635369683596788723072872472548797790473211031522 + 95355398823849336016881417892160288213186650526437576247071993666513621724943219475805995300385681351718849358106538784512704293167578595407898779265610311273003504736284841113406154740634863719320809059835370073215337915213658879275408882098765250423608063074892464700384651743444571768434678321104656504293 - 69844570597494439760948967352121078634821676845030661841212872653295022292051057066761511789271743527470314225573037788496457691276143254810523207199979824999020831638228003912940276201649177867868755383634851260262201463167994760430968080672507370729286739543915282010716274778402449684576458379544380647593 + 79795519837583443996932764806141392993640214204420474973780623973007751495685887505087254691055612195567890827154485594931295093479611470164987202898641158529959566399696567131505901870444629502071838591069102549621111703026313080976886409181349115716727506256822740916045128370398994242001515570552104025482 - 75079378352750967782792166549971210168755016465752351316059989766864201298216187448335625155213287718592422754028268303530286454715558325474089164744044239363699281812370522549054573924977374349611262386569603652156606672143072831700586924228671451599168830763202039297789995728881563670697061762830454805800 + 95531142115744111276994617738232238974385272922549239534566441791508329307034946875854726578494325192214328228197961630556545421419978653749037347278053151673808977108270798552694034431544623710518284414055832563095930919245608747328464186390227734102731802481470884949583123450635771478935295770292990264354 - 8291439385013858162503870853024154115418050666310698669179752876414260554437864411146076309836403211039138265390812478958235900928547324328809107194953855674979532937884662443833872435377872414732525041425859344804933669804431424665594178162036733264537373428767460446311077970793905206650099034041940787916 + 58872631154837153574266401892765358978603425784605213136372994546492876723792818092782040942515909743415385228229426287680713633572298319824531059688443090224817892249419193381915209024572090024683786095619131648780392638144076275300592434637457705399071378656957873678024708433069656478934558388941187786611 - 7295391765470142617998949638936530619757669982455537635539622745699191342507670177709296485620675168139453020394419233540209570755139443880534944920012653955467406701751449519727067882792858747392689112015176645729454068564931439319724243443598069708145070010347550020623395933633411212736214017770354355910 + 45011292201060351855393376539751455164896493154002986967313440863694313592372618223621006834790492217976905734120034349012858822923623689608595904368896987114944566804597887024962316342737437975501904155827609474989505276417236795776737965825645026284496156593882153119276958551351599057327186136764965146200 - 89923850192321855838429344386071809672950079291172252692143053190730442206008563518684202485909688687613717307108661994697641960176545440224964578243092571101424528775325632027404191401371409059936321722659344735505346006093503023941690990760062821869284358710832033525637615079525514978338274302219283190760 + 75289789567624742368791374187638789499280105458011305792641080103095240479237872710191545538044513793885916239930253598098386889950695814581996563421779376249369614607433723609712613303258848469229654050383550536140468936826185601839806719604082242140060979519252290768837966414145297728244984460052248265866 - 35507400569635559210492493876237144208635340774302121356005230831487141250061222608916882327463146905521577563121576573383912999790976857972839301952040592039805088915880632474569868694383954734076273472518104078207482355053422512232765875757339253027984657345192981993096866427262219699003952983987488171148 + 11841209509145062285744849734016249253303607625144420140149694203181081322582509766533193026534685361058080543409032549064597823905623318340771152472861427165710461101540802582683698604483077501152084254300998653672150058332009876035061005327661444011480368377563770339596654411393676050379510814516136186442 - 64785987229618141934818584518685010302256220984708782326112754386369484894767581912664896239899592926841141042421797195122244006673033848529111144551830520991213558859094506665492068976821038051754427079375840461503433986732404217587393300717885953401465441771102476392853093295169669604053673932086077925528 + 49916893428549736253000332553752517909833592165961005984626432611528233071469806297555140230065646159584904833075237328358614455427994745551576029241482597071966251757790215239039749584752774842579445332729440919569939538854419742216564263927196057022077476580549530646225924272330102043834737251580111565268 - 61784807567267931323535033490416367269750163134290341584720546234862606589140680389604972765771586891925025894235518514922490343225037538706886209110337286168594943500055518971061917209344909018618254168737657104953795668138748579781611858884962436351045555426254125131898885520038469967249562284312800601243 + 36992688945702513478410476215760477069998316512245060073122549865709818719569700648407381074468161237478001842557588806321064253952102861496021546086733475096366347491340609916282660402739854828654280193354493968081513284975851144834741308609597957780990454617970790085038116347522103123902419483481844943953 - 67218447368309673056060115368103765981250534983702743428518352991537968309173441392701279934126134769343836701721095806356651675636479562974898955578181980439614654647929610820777864151905824728547885771853783166182653763197782465122184092688702657336592034495058158286623101508067743577926809494283693396967 + 12061890529060617941501385973578735050834512726100790781436198675443115281207247587833279670606574819335673643634392086534437412443861374650801879498089940407701840907903073699347881654331417015075379261837745489720033493287727346741060042238775896302311864899831100004441047352891556505199701228373452195133 - 32994000878597500668263604403997272101271882303329913145290218723887709006321189699923117918663358561423138529101543788650462552212732043077211343088287188629192141130729465982246585496654267154582574364578751891866587329682030337692368859442108793155585867321561422114251975647781332851438686515561667434264 + 98787776853369235485584241939438436853566619961786056487126719149039153066850629173409802172166250150032727231211535373388975066228409720387108218519154169086770131897849604907947054095072644442530600072643921701936539343180139207606333391047034822332002766444025945133774209181986394098046889710933837661708 - 61784323597235906572027918206402976702602982070652248832758848770691018958038040162018143542815769542077335502329746716589038569724069759338971850308206007993709860832527634560276675313383158975419134408277275311842453106782937274628535809645180984998629909489190437745751300379564317310173564907611298763264 + 73445688392737289316384655972769704852238865276098578515341682463937616639573443393521832000438026687050175632437873593810657092374298799888771842803216710465185903134929147124421365246512978073344781309743619682244681036999319126277923295432402300179468892783424535176559637356063783665606461160600721749849 - 31035931626897502732677867822574042729170199392579640199879130274515648939798751542017044765522452020212638124713815081384562572612194006954260922084856776889251728403502725815104867336428884897046013481923573494895690046059861810806825315865671941592316295854541444912160093468126897637779874548546137295011 + 19402830613957297864056905886222371383200348585144796112949833532587428002572566667025540814973593578521306051382839955388219818692951924274386114769080783806173376021861449092903718059793438536597958329461190208668029249466329801491440092403943622683610107955522362951616878057644270164520994186555862299737 - 78855170255039479722514431176481849415142334599229586100002620790394536290667346526716716492643537557754173868413886637484616115466543394386688934369696613249905916346162426480136848101484626770776848246840493292843033174533964491833024526613606255617106637142782432256511504612385051180626803487387879229296 + 92972917608921809861128163569597259247769387134624384715107217096081213549527400292787213836710723744181422820544018492844140169395579668917498388909835852169922552478253963753295337743856301899256720702734872706202729337812793376914405908264698492531355998918887306380176949279930085532071949424122940584 - 1094553578392737692087087042435324071777336214163865988154514114338743663734703544839956434809470066933674895332429541889226873260722639595638740152827995355655348878599713742287192639458939633073438166688024491770373038536321390635608625078995303529481269219471189572491351582012692262693963774435492521597 + 77063548435335645995532714190600003508333108926546051903077337633051900015475075473938808165257463287881686722628089715552591795558320993670006322824450904461411873852622147428680269695466283392695561892028171734907945585619571530293640689723270688515974091447012338627588196697893549907259879851853309272713 - 21296256354695281180206712381595732230961571082445285556508184740611414913563822951943928226656032457816350110447465035971649734341707682500889453609261671569505444451161696647641232097214928152488676698587991383932049183467810673318285988847968231548163645735360856116798013727601373074610038153361750511050 + 22494409495830158618655171270601462145733632839852131879162211787118596342977887712042837762025230012924387760216580873033961549154305965043207752264418864092735105309688113836766083784307957288319060964164489308126081832549639606816358582280500472970090365264061103456464269419085980942021762697489552827481 - 83995292233580521322091375534715951700498945616299214631659832177210054897500940207612555344302846371285176263023521446919277395289823180070923464361114835914660014256041746979453204508815754857694114555203255881693926198018993070497303690374287485704525877226950610080967363291249252861384438296506599809022 + 44128890454345214280180157173941398569596803353385686164818336694621607172993372505448620933386621113474689891865503802059094010961649326032194986754742226808843430782210921121744487843001671030519159222550860864208246347954829178011428434559242596458328605685262238701694341966378569323612180976191504623663 - 59480583482824201519907866167147239361106754040280020111941292863307532059416778470483114758192677325026522184318616876343665777422502150705666933870869288865587215989914308695126746153323147209844902467302231828821081724119642641893820801609038402150571956478310861972251741204936634933675841316957401460160 + 353054530326716880113258407834338272628296283352356823686905800829398079706781569875861644068965962856622327072079561962941889873201078455664171195698905814514421895520087984312814049455541531712596313994609784979135498545492971933188699501671792072210633026160994721527867436119925495049756018201564086603 - 48209072423040627485738863188132400540945310623012315317501289148826431761991844261671527966406656421699541833169163201391126430970908796880213400874396826620182387397544761226094306867270661534715381445108401608799347661744257174121641876345233603189313731884103324328484418256004323821554097463182713578704 + 87469388042947101817621618822418067202841913054507474874067793690933769775706658715511446271946919811350772954923737120571512007113276109772284478330332215490411581776684891246993334682556380639290597329085616839572138467719013618995354553663149108833233806059561961883553815372525552368292423445114143584917 - 8565183107115731598032230727073345160971512031774590381156682758072565192178295013833858006580690797592383315281634668223765579706081323524674618283694389265761527176143768462819668468443302368038885109829019845331488417077188269253389898660974885331238701565182208632180965973372173221831496498077627696959 + 68669990173768660680075637078912941050944304423566782956505711764271796361667710827072238529009409857181802380679439322358241547950383836153783073988347070102662899970703414102627444020416156518431872793939745157428750709660928297446232901128034098280253352565035320363706054882401581558219030633713617265290 - 10891398423682967358901523449637056216776986465960959570959061263625084067637545267111783627419823905934664523850149533858304301387624940750996349594007814448539510020953548380315622522706367809350251615612017037512886117056594554413544082764719992613915576695674279053530795817818489758106061336129986334708 + 97078171002465133419269604689385835261830661252129270309191783741063836724262830388689701281143539897870232940928386082545114120276227782628266981848421425807946091531281621044650295064437217239152799801611785513134608869957856623225766939769892940034479952922271983735694665112065973206014901795644481073299 - 155843137775878204219473802779135244767666941582469717859935320665104984540403153216670480845751731699610584383341473635777479445800366744430382039866155512274608041899674746938656510139992196695259595259852634903617944339208390804241124696042275729862663601111694534070528369171155769843878350537318931404 + 89757553128376341498523980299393402285276791634203543471027150448772355270564218117631251333588622656910921130154699878935128980280419146917752371050259710710889332344732149506302606999394738228925726155360382161508844956190104842839706648813620269969799758009659684383611997213515130043702508052131168218463 - 28797247767051426796204645770510865141680564482390787042723575511529293034716474032583445164891496713302713230973873734330923377803750189940838892988945883788351520724818109997073651292625741927149027077701226309943428757829970622264847923360671076719609002995905820322199639991352372513986718346381015201341 + 49162634074371609463898516872129695694895758591789409000773483383943605464650487905119543941965718882328364670418245382939835527248613319179127936962234585714276334484266430903304341416444678306610005797678325530226132597670255935749188154410659965471278725584031029243068745803848184119347973350173280717712 - 42966017530659301213757696521273487362333144190920538524702203398006559053031339280175319457286315079457452526629147965800288433338548766210361015756243416377336798026518124659671081511560198765948375052214527263502078440523958388857133183824921979977217940792365385904884327197109176466166972856593895864793 + 73096885082661042034654255245759372581341784635860096440842716011831646068789709745667601644195675774333692797860361765086881443827141825213239397454716016122404532872498976278893509063621739917708286633952936678761494248731639510658422375571675024125016434728074627013874882861796616651594161267124141056260 - 53431214595986719264497189218375818742506584999300015384826169402310936556275325041092749514596733043398380828614495172430371572574880710095578166793706037336063913334945549947491759770692452927168516563877921719743716430901508620402458197678008052638208287159474192550402939849586363567572826566794210905632 + 11960612437635225982730504908042347211652339972104684351056852290281227513936950151615159713413937857088314544737993465948041913857496122569032290941651186978676470652954087379264335075015116821308370545349810384944387483923141170566082111506155604427979930176933773400918154235406502775648771286669188525025 - 29693100144744072540666842239822639077907227246068810985332932792670228809141290137098694195412487573461220681972672244602475802258773875916749524722091224218381081912876641903235976067665836769661727353981179416285124090343649749069233534759106132528420150778860509274142997498389714871281701977191764068931 + 94365723146289586167593323528225165408351580934085116965149686073383912198526961313193055180165451033090114706569845098559714347328856112960304284779698569166044501081397336648864273617644810193139210242492334577678505112562696007857426031328109075542521846948369549949895143670800974974444227248368215156720 - 58426796157485789981068517760629862365053735894280723564510180387380095482308653303016670720064960293647818178186271217736225095239000960645530831022518633385870128773765778348094879961347180722720929111582999407940912873442610324795166682399707655812936827357471776651947998509374431985495759908691585685819 + 37198657534885081323818421656383518941022186351904779085553547296373252199490251190566450205729084723362505646732523005211839149502721086112396170052172689468949737768093017088095737897057322029202830890675132202477910708025615159055236282275198564612841155664835943960036319297892315956895931980443822216171 - 81379112509021162593056032288909799925690648426838030442792030925353976661685841146688052820162661854010789970572247478211107038401480507523800312397123252614048013048169291896885554930014798783022919076899516399999177495188956092662348691397885261182193642181070325194441960885894272899007541838675993952599 + 95290966745698642616652779279376182284266806632083534268063502465096905588290978049779751106971543149940904372579329733653390576116811985977682699932331151386087321304143952459247006735384232335579241092377263464436635075544831384820412576128760481982078679923031338329470438718778690820737827553886189867188 - 49611367422194513115035150551734582520298521030077584370031183308653547976181791903740898913282571064446151144695149690322615718047801521092351604722221930389131307470356870858984258278626056207259568815084343283366925379672888098203272194930480415832783713459616219587931803154543020247113475776647418904660 + 27061416205174557851164663569483174993952407612483210256011177100492899618491962823007018543854257043771424663167830282895605066144484755460089680604301689841215269429059459535766878881344164628446500530067679682423293449952606596260142185699937229369212281661985231021256905403366173170400417507285256255860 - 14427827293697826012050549547046674337305691151270335221448483883755195743929542043825846906384766070768314838868040539901555873628061689667420916859257407366907320074947244588437402598383515830777938900506374100195384135210725911768449422024174630910120180570210160173013245132111525346404920416937139913864 + 41496101146536460662020232103304771724843495787840441341704692505105288113665125981832903487117319515424032869070266076343052123038025577128547714509466689175221188663664778267965304020385776542982053477826516817650555997297202201338320229666602318818340546582308739956027282603318113085298917991341336152799 - 47284313076338140186963738739866910389991227485287730520951752416201695765652481569471520915535814869666314109187363009626738751849369505980118433674304792579783274698164789941409311978830852557490847101589911690359628587664521412888948784370206299746069621084711945134550768047648117194274127238388669275172 + 51193637119412205508210566875230456496183715352624100694765638017592716778323146381499576933114724139649724776136512725027704470501509435084485114224894484560374789864610610187087775199847265622230925515408373070422668290697173022089927383193438003005903148203744831872106054242852213411775718421674643826191 - 33578643693463388201451875951380717322471596840367759756432827309185363277142360271574483679693053879046077745129784657105846393551892973524070289715943637225166713617767796796900776107202656395951416507728845729499206422659015411183611989491833273660702702407951815038361214928553799974003224570879945506102 + 64305495654483726859874770101309322517911403540330891511012158866108998791847779517667685171083923104156033065977815298835520411183497584924072208054726861329336807805320853530444408883186097103308967249246682067323274050889948928842065176787770940643129964265285928043917319162443354032183269425086066116063 - 43717504550171150070898941705287590813990496540275562859866136777311944458436401066747643908162852402922714000594691776047610632379306122590902640610169116768969755982978095677090687000905821027990875999630770773455183527579706922920480221772515155509967129528442462593713287066151203653509801038028516092620 + 76703384036906826094663420140411814830456381742605229081043108683511321942319230059308696493513711542775919611041261817267595674204560577160285204996014863526282218504036277835470214078730262191051074108593563530329793049516516926654980089643423009301075812967447589406521118290834829610816776662696162124326 - 11329645033823635036191417135906926100880494089768743288385497414542239490137803055809656642167922033556925262825276582546909891588206623734190643966026075978236454766642130392666946699045740071510165711635048026036004591207190131325093675514691443735831365532604233890375003961355250800873579577609126940934 + 78097836823172450640876247460407540407243455118478847469187271128615641171189533076868251588438536442365843078948596825683704990103610756431197127674703975205362607793450909710820551122271552545858682362459134711699596236216427137890774237950860482548340501356622894333743132950861381672836186604643890160873 - 84094659536270120714514162783062649765204184632202063200986282540281886669943526141889916924676192071925589040752615235004357121004327862706774701631249741275003573545300533953994443123773854534816171890573826613925870738263465868626134278087732190014901250927700762574936215855786709940594244588988032958096 + 58715954796904417763855145317435440203550950674641847187276240586860030034062722659355547709495126273895809874605038330822799962564900593068379270575253879785704047681836109832079769408109150961036307675204862765674752104542916917612011830244206670824565399254425776330925466864138636400440776077857830638039 - 85008710662408376288151083179476187586189794193938053837561519964447418973315115878550674183453656237691288799688194105338259157696744515547902873256968777627222705353935221851918380276896604073136718698255514996208907399614026223133141867394510725026630731286355697205194533915395231622389549111025538167955 + 14084632393394995727729046450590533611755422837677876337549971400377701082466873770147844799609172223861693425301739878027867288553125376108626057613936381027849404261778836370676975014723400820219724841750329485772515585162922662860130648749806865675110318426699292888394776320194956845795646512644953926866 - 39650208899468487799495998579454348045302945494116317802957821664711564865824036865177768231735470629885587926647881784161396245569156455407042514738760380304249198068551574660335102516817617380108567483681153544703554704999391367318785985173557633280009162940955721472492057025118539934390819221183168418727 + 72446059675696647399843513215256979560960189070898151776911068558998469542633605537309230072661851432024576323316442909016608058878222240844450188675403013327666273431136498790469238955632175219053000227618450645417663848633441692942535454649645535189976838957007823115623973345248041748501955816448654536402 - 12334498867857905855731993244124403708876903321632541368522463169082031168867080197575538734855601147300612474851324290367516004011131847742360910933323657271202343521560577077538939453295489300275413666432978349071158237807686537477938750592447432516825523318759497956272623957727729518325907550285932346116 + 76566729170022490241021754513230669189078116053211042370004954606120508801236724614603342520106444758985848206977165560027015825020908296496726649328767695957844401788533367139772288478150388072591411876493623875860282119639464537902455019492134795978931898766639045979323511022240632254098423727904892631650 - 61731128090795469506101548532366853170428655215806815220551458895296307914023730165237996563085309427424298387728722556496334445269723642976394984832481454742037925203684834462330581031442259269755218456754173840656592337406054617829471939749477661888128275055768080017163595320273508011053371318115234972242 + 9009052909199544225980576068238090929873892448091313902097593058012616562008940989676579755576182669460956013000937139065448660574276870128354676117335483725267203855759392769698562017521501059578049232767369893423663220939348374321552278722367125450382720762407307496144791959545197207389632429559834156985 - 7678619016424395522876570495716980278436252703914149692473874560680442665956587923119158913041391547990983072702248629226514006634960028836484338329967859744756981836826650418932373116277108781076204332467544917810515716480766943277150511187447808340003563360749587013399672304513761588502089942341100905245 + 1774939540725536921019022575694184787610520982280951612125957499144089080787808923427756822132357501481823085168481694012225953594463494542503499201984647503716293807420537766316118133309425632028145381252384343541605342599797891032063144459303898742983468450141406618775246234263816460980077362650818023478 - 50637614207312021864911076337909851790415495125717438505135218716141998855382978515183023349390698599989447399953239800961477841832052005934492609647472573475907635363570446700097657064230090567157660929901188153758576604345575436862473253998999098981168936113508796782211252093535942013900291139259399645173 + 15480653562852179501423058598146665760299637515532790208622304472543502890731377883590053155864290656434097068437363961015692934190308477028172658021577236291171799020005257201994858619990943066159641870334614697147198824516380845609920199483161823400627304949613093599943545920426293067521393721554315096158 - 84937771374118247761599687964743046453531297470212526078839850353927561184038347814153378941414408422637901382398486131334716222154437724858982003682338636242190147039256053518985603961094969712745568313911669566450894903343997214383715262907949117933412391616900609768111969956888109782616950058302831516148 + 30422955428270232987155738746644895455221290798575974671724788297973596550871541297450743625200740676528357688836862398790697278740719349371797940461813510589338739197094915187817845000550412436576075801577028235535573069444132142628930283501220350198053669237625964810287478846854789312163139601090407986326 - 3362196400382998285652979046232367387492279589183488966742228613709749149809680107601565289173763354345280776723900861290364727191871427601173587943769089379713975454112405293281003310516264522994461871498581450174161396412035154500997448293893080071621056618690588627780897205331396819920529304621605953705 + 64628672839718572266543762212527770716486415818380475461713372352378064555696922358928232439630301188314651995852725473412476420696982527019294085567197210447767739093473545167619054335740448658984817755293551973019478969679169456396875082759792881876568575918833801058011077422908643873960687693487635893856 - 48231800076940609456779932049037903973849775843117433091407976101742628548649155756237634508875599731627528296547023046025943728983389525410222878820881927501091117303899426326132585698639273495744698963786601773276811610056789071799741100942113365261472229777606687806345545605346447207874569827159923021104 + 98649693084739185929699398923137891690209110998603467565446799611652513536360198792848195234014670199669343445433337177834945737468163437257472702710339738587744437050284031528885410171497107464340918419508686360619064515979235724567451972254736876027198478444040919343688049117938758268572060786439594717069 - 608855531928775025384234836428654641555821660622656327575081509190808460367541116351030139389439192856162615187189791882964023385172973691429071573312107735331301333019523488716730902160520603699393884672917459574849031951621729005827412201137315804211147526555603614023081424420212913775174514450129285109 + 31466526830911678435224975283999087266586199878177426851950208828149403109652014829924915851013705853639062044201630859522503125013671394692867843056684638150939145276840259592533729015129198468804248574829711361957311395640901505304790577592013182964124935348822026084163812452933644627615614533429253154785 - 36614077167684274377987231988859719412290470866937444772762205166095935148946964749027729946772701561040710934639688281872242463394101172593476387760957770633041556984538316994512947399460952579218742333250175001420193537792841408508797765423558464231014841017690148565574075652355437587633586232912834416063 + 26902279830959333937266701031459796745852858724398582263997977322711208571459115759802027007163336362085033733389779441243613313809811383025108437161021898052351148466969546605610537393623377457489790502601052356855513484751889808781981181510827664530897206731910870368851760093315075939748322571328334364514 - 54529289478720383661945852393319267334121324635613040777875505437499544339364451294710441235066119782558568505191299191060378087220624079977695579109507947589691667775114441168083605195058532896670226702268986641396075694636720885418162542734523254242750035216210179978712140892260310940102188765682077643786 + 4152317802750847956311118839465832869626602986630319436655126992187832258587806032657648505311909899572824960994089730024827936229282109957133258331595841344679840409544595040903284310631494385659116660256505079218259504807945339303174977584943583774177463367872343149311808121581303027259261213579415353928 - 20422102433630209381922393640174261052951848216043702059761396098558207232637204165980002381068519348538959460572529718179072091746413380268805706227381645028364122878585981174166197751168855667560045835662449408958567037001164984221084338429839972708196961055131504516448521415878884520645795899994817465125 + 6695388100704283682990472604586974703942202600235929311550760568348283058737088590662155756515459023982385770618731763833180008739413435619468494696827466821544786996319906288958200260791805138236897258289924601823625700238781498165603355335245811401153597693845647758824097919054445908909445307969226074962 - 25867226027745491942518000969114126473297783028469164231253430612060609933735982501706044805484497921170591325375394162409114891735276143406529779049525105359745625023747475540070644642973325531762201186351390164212828111705958933687897101173574840014538271661538642786179952611967080606031954000209683510085 + 66895073805911348865557875921159090719735670404584029568919806112834360175705439612073313109050534919798063502891065509044943097759026118281840433975758904634981783577810622272603230213963376514608618170159458399674342314036147052611402548123955788291965796229114045340289809255902617685809043544929211306356 - 93711531879359238996754137291652516297866121614102615981877057317358543783401507711550142243676790922114496297335807723383675768425848361661790370602492009133409517703112633393144202892312666027813616871223777310661889432293211979725228227786803749598647510580195826529000474939792591892514638464352372754415 + 4632462790711982230784786120742487192265641009198006243324014429999807335138584710284003295503426249028109360867464375257059117065589079872074949246162106912786365472684395124795143077713172397854135676008112025209409149299142658425946970109758016528467478027976421723637596626636784354621063874682621554250 - 25928674885095554021334946009090187855066067266646716761684328104257282534553280965787420652493465174504091571111884222378394760561607188504219539331190027472370121556974740214104748924363072661954374110136382573469241647767933585303394649755785369107436367925951744947808896720813765352552047908712219220845 + 16602495742839932368489652944833000052542511809202414342314807983617036438383225721391915316780136815321830636568869702475169515864887351766411390361225274142397114094250055638320694673575409824219454926923334707808210273273214955318880844107932799879889633565081792712433532355341259576310554733985208976660 - 7351219291781695275377254730717438543073608124385197408974728719593805380509973265149701125769616331695793470809091486827057280739858423859591484459129609970287846262886708229758377964786890095373571788198097083652837813094691067220691916252693944357355799066845929872605545151707925230577594378812058048971 + 10560642975543749841545340793270110524626354960849669115427118074346496080141607084344551909525970564510379854885304286275108625539578327383128753782468646824189232722871146861494864885752488862045694871249515375245048337230828577552409799394288311279753322389356755905119967869640647997971945111930171146588 - 28091555217973120543083405874354123755224787199265411239030278554729474843741012421230458858711667261022755967836048178109790350764957576696046398305759635153692186249455291106618639248800186721883435395633435072809935355349170834017569152744171127798734395361051465509944357502866888956457052995610239976841 + 78667590951702194564258034687653439731662840154097106393455831437951247029614663256754230250060911776462025588001503750736352394890682208433857077728339512444904474629216693446703520817870034876616406915320654414689575075776469482870793203925194543575788025160647660958471934069094582969677387444958235025830 - 54880481273297261299112162048425286495488456784534047822559567158554467962556375951242512777523300243960322592851735091548550865408721755218950381139173039406081409324427801204262564580854141263177516910715529260144997439240891850082527301038021475464839077365410355916515876734635990416159254307270117056118 + 20118251340461619885222444466374973776209596521186094874312801989226580916349245110809209313126545142673793891254724924846904625291112563071847398630613967286955604285358607578858044895780077672512233291107964423930729384453942418981335886802360323183024464760010127143341364095681752113756557383729469087689 - 12623747774272297988048862859947192831864904421232045965653526762059055013416567465636235989569703638316294500870993282059835168532409834341549339478072177926981455904733261376011836665447028541794772377896115199018335137428918819526362644244358654358101925177734010364889262618153466382175880456873475527766 + 27921070956045012609891670046839150173982621964133991807460771228904896446891926272211803740412794485295588142551748510949505983320979829993411045874457416707508249524649881314199414261572753176755881933430957527933136271966722440196136084530029994889870481659964508197119768484803313661710270521649140970171 - 58285372173089385828731565531136557388231243956972528446382570297300799107908450369491221336807535549503216028245718341060229623945751734964629570615233138548291722957431487544530144842430502935462574362878387157382678690603796164210842232517625305405199139287871585882148105539142003394476270415537601570015 + 74418531814195716192519467366786813343957833659162887786769941974026853403901616881690973008587161384029226552387195253806314790842582508330917666639086832810971308749811575186021210718837456203414762581366045147170923758238154239721862201436356450175217827445857212461250048809133445363806625341653969594897 - 2793474086579512147338868399056250510508600162483713322849667013202241337292592787492280026217429976496274295861421655288889936708734739851382887686517099527540965234223297294637108014233283676850057068310269695566054297861238819244833996522521160323470052931703762692386197461153382001099672697364258905714 + 82010711221548702280724479300622664806090279225391092233929595561638795049609590552120339077026560210572895519058427970042992855258153273909489983914088304671769543328331314239858172781182716671308882935524880753501625346937428968729429151146901682185837608982352194470803828884409044438579870646838583297941 - 25043442414631708709072498580244899895990691029085559207724617422467460232479131926243073159462616039625839034625781992485611071930008950911658107752249964223890562469152074290855127038088739125143369972229658892046476951235265251607577165358890317477491589503611562448397009513235426275145557684046291854440 + 34541823724286735582744866325885656588330630485556894711519076846302838071796580807452615961864303972446927913898591412552149951244792981631878545769877869147046930997956522225110825077238428010798555538150700068930843896796629837165168161386549927382100488616125332819910650230318846126645996790419417121054 - 19584217713060981331406395571426810687748304261431561100113118082296164472498354549544570866887874313270649461433500270165175976323698165563356060202286472311199068697041407427822861052033870954026459948158577757247702195979616262217351615733772692898319256287118272329458076255572949384860623462279991138701 + 3107964704808635465505830654543958394343659185920954790235015769332023736771182030041285724891988454288745604340371462405073106390953004101682119003791113670961914507527845737474266641448009148879275692218378165936902039912829113443932757432110679085147203885704514895215096733619442439047544181208874309384 - 39974259118894135765762117115727559908247998649709159595444906012373279562746759098013744276102690756994887109914534496154096533190788485652326763216034598262652245931564836978937408954365828322619020379054995293748058674602749366268227529365572439942632291538357154165663759177647329466588252237935614736126 + 68029256702527626022245251737834307841962326089909460244320094381254810840672757911275856083344861120541714881204595391993329815401469275533512413368231789056240366103705228273784218239494492940849973002238378922700234102173191385985951947041213791253609561693368023984184541013719339718333498842808894219347 - 71150532035213123432933145572973883781684837603873233112967023467506994288333691896795043280855063079009740463732024342521884073922359390747395156216871361621332453063657440824940482149731735545385830993816029056769888049408012780779830568270068350260829817169393607799607177403866345501597884239935532949403 + 86364997318341551904389686998662597608677954160239710680508251083969769927392592656265446843809568226281843702291037630326152097805433075975037377493838762926780383543232478955853009119763220114556817571304809816396585178549760828503490232457407535721735593937415802051551253435443611548623960884483325721361 - 58205806102637099648211360758768845130943199160410180462161558827901973475472243245355447186827285399910397672036619079616412478152016583547414238000975120513835510314270024907063511505676510137198019255851098831804996626463189276628206991329465262170949980597396788237503563374458749507010716511362408269123 + 57182798837545084504089707703894927135085116067103636145160448224506203093591944448134374293379501671132182172432939618740188659688572340384884787613818274346877211487802689604615373740123877735410737223431560011160148371601137121193589366722636076257478497209936920246567479675627235401068210529765996229575 - 83293436211278972468413448884911057668391317122755922984929904642122162605126986293073947386351130316103211651380555306828767141315625136245168207849988233303751564013934977162694231367336045080080220192646975449393809043478138665143235462820267479851309586827034278693772737765269652152985132925137744381798 + 80944517745924930131523463007365192881834467985616072646360651417945586839279131679312749090157253947373064093369022229696103041406599649601592386020911131757810122273233627851168883609600539283493139479467161606495494042573710972813010118133243668707316500270220269960986727638127651442746080256130932042161 - 73385658521192428420806881391958093350199301087951524332639127683214850942776389416801157479228483811476642261118685611907859409560885028803113683753195009277348171963483119291066903326400469300567773579061151603192777139033545195158690969317703556077056296103139126237953362626357362364124993005304599049052 + 85451403649673835546574006079892805560936759684418855937747755095112731214008242187745539190768891648780175975651951059737766660011358944711787525968644109903977771763914544994332644077861324128926191037663157053203025336385449389575530355930914761910179823317165103880119126854638185419594849084358799622418 - 16293654811276874943196317017121560054439582028122475424649541923694172623114639491646150619074012066070060058875798752685794812109630558439077488997950348701603844149173184216296119695987484987170864908385915608216255270703634261091479578430918887587684731728411799027729843024634928584983064549612180138564 + 18545344016935007453996646193135160703996120625889972113080162708366310275453151032498048784362026551449359383584405661050089170322071359877906465350357494820375649825810097293520940213984666680947502159462274185864748300338093062841863579950472110084792943708596430246309094078480412424634730950883202509535 - 13712351587272165549650304324183635422330453959109790871348512734893027032533089334269170810624964251284711262290899338183812135946745656763106176423218179323317125188919774774505702881403808016316072022407253803243513802845590733146408799585456006435316244956261920992218396259343692563631002114193547242885 + 4663681063180504106884864505191920258516381342801861802444882448443927506937014691209312872328826416354538851722738374666053378941603940930024993726315117031370948947090346006580122884644999268857863472324992859038031265497738648359227132250543283895132087956977224999182728691998580434274207948847328107994 - 87710457103913285211859077553862588521478602623563002580115248863301202258987113464356448309852561940406258649278813207280672934473445166625045126240587026382345469494077961874077130135415604411747988195064062705654623316792491365098797559869738394709111176691672733910289166640443388404587291203751526614743 + 54082923186473742009431709375405542648219053373362424824574244851116948436248876110799239103489984983689140793075794539368955991843032428956067191922852318539587464453282945797533918458903430562249697241710696401214384921595781805491477842789981805622123828878510622754769676845371712697529252225427910714112 - 57026957397314458755222668752419689505096219213213088736138678415179577445549110685499901210679821484025034388506101714170054722719148288510999909481553827772167799956598588396133597826757182665985678260091631304311928962793564164329416305400253500794787371017167465225628752350743939688678229959228630998695 + 80857594510307481235701151291456420700681424262594794042656513313630688611325519121212860956869628977416845447487565978903727099415984482644419752697339709442722169488459484429558431769237220950662651703264954011160495631972968255900608639483360796703016337018084594596538826048149884341783136385461200400158 - 73762524595569446523335219850147045455517750243996633441280551006500759977560780772555578616640173261952416416818508769604844170596235756459344284561152149610007256555079255729695410997260220039316572049047892151298268925129954620556100527771938309403054205188253907263210361377432549912954687396199645617216 + 33798330171491975254416137634001971924946946746270551410808575955838269541999348757658876455940044662576197444160072246873784606203227312031765179591439454050887912756450772236039523862037197892548226401535294100917147049962083370199504803059624306477075624181271903686749947790661514669365851679169407606565 - 64610192676075003973956039976533673369230387126918038033020143531277149828682479817708887864716759906708777639488638091587416601287165231950616905011822254712571422487957050878977743567473126055331069265011941535225005056067138502952773561459445031069452423281766625285217588670304647379871782866985838983132 + 14686639192487428099192448207930216250601682503642420496130039601678525194963590484793093243217835934702098016354151391670188562155220893590645217304834162832198287881577361055024488678486266199661403232511523679944461191750119660077661402366060084957301199612495364957294912778105784406743321935059768499060 - 55078620932227795696962027345881213567813699221678475884760641970149912432203740483792467961606582648601812524274278371252623013363609218946130596944444997815280941851358851700704714334351557925428431464879861093136485256997307728419255232200035449956298813073246943347315600296143421781333835754682454103508 + 66514608428602322090451654523496009568506030299464552989805162104214828367795157952949182561819063774610426618331767416756034514368987476890013020556086417927597316651872729615528983902409777314346111267685176549882386525420487078569672415521356683479339630916927470467655422117734362948092064485760347795281 - 36921906937668500603235585985199172360855378438757270424434902281815500343410823830479224007687840101612963545644463958674147536123155623669758407070258717523374426904915725484432847405669458065079359814647044269269007932836364445788131539654429759785330075899059635150485001714587474214618895566773470830164 + 89542644403031739833311274491085117507477410964353416585710288387551263511047229485173084873443002598879600565688202447578098822331404445267874444275998184108110200472054617471893553722694959768165352975485375071329018378698321526177609052628938234594128441305926629895454556851565171292514396178243677275629 - 24877229943937846294872430727348474549730078176304755205898136108432666843906716836014192706811904225914800794559231174896400827726874225878000454819888785034192178271307046851729718310846657211828531836371342198409866560110866169173411171142073494973308211634745029568685127672275995920193579493230927715193 + 54774719852816208705903769762952839148789480160830234604960453332640488763625705248827416139586753086755193104852931698624680188388581776955951238563086807918686467591150217173635230361313352117717260130945592396919984409230485635215539960298733110528390662287406265677107604205691056984846033273563149182 - 63979630919119240247770955251199770511808452035231803389370599935965324727540529587109238376931891127821354686300647831857640932625414159063745345519188937208849792662606164475002651496220296438782174091870411262759663881509920125536638846908995267705444255949109145739102458234982534797636376783934522376631 + 63770772733041372642300390384001255320693700525870139587511888082458302457640819047950444897953287056573825253848086821459983798956402157279294516582341237357873031312415049100046244057874232476710379379185342257390303567473612549957019692567081585949474450962835692183416035281568639737977035813488033582083 - 78822831504270398659680716657376287525115704309254809241421129527581812243248286600016643887097166101027154750899182712529034735104401850053710831517571898435225523567075804622680523214541927881889590837942994539892002787765619106709370583568165007530419212764660845624371927251934119730565399242794308771931 + 45565617396906769214842800591834247753672315052520690598961090384299450530844487267344605282163698584133740829751836331268522882803281421138234043795065456215023831929873144334340897219982982479175028322994939282024161701996903269417279184154466492775593578799135570934751850878563091416548668457875117632302 - 8327208084711808194401714545674140346481973658251888480980508994219884438990064504070630308556368601676637831442025482723980265184905774335456367479193033780662461762057848260780626701183136991195034158752424142272929366073627068785959132207309550801799549563076060371582859306788609270102739202312233769058 + 9596332714662800582224755186607211485547757345171691250385659139593200165555317289979902034144570618721297788242709384760739571449560897047796390685749109228884590455689478806402443719216667305435337948594839487500800608355453637903302615944264842183058465016685969954044748525049713606976579496173786901496 - 1512322558006616094630738237653691012346046560473278346639658151949567846575333269319454345378696180348329073628545509653029109715173462254970350587974769274815411871787656512530454705856073795574813977022297349425992660471387991587045383343943944356254022709142229882469825067555784034886816915272173073406 + 74712852960019448524463358785826346255054519784283775367192531934987425072162300608850195008126189671982150438672426429540541869685430311799723982714441935907058248022981682131775843089563971867527314402647519626754698673977126240597376385981019906654669929096056287461790650475146567779111391803699185967900 - 50390378233013981925554579560095670473194522867344987862207966187528576945760576843659014467972205174131239896735791669354761659296236206804543403667249338359692267440919711250229399471490414675223193181209225451761557818764165234631311282979976565493489137924495725612507359770090570891050427510180354138589 + 58052035124018503862935235474490649583620119146316097641603400854459561281117226009501747950116812630523077592959463683058393175848905777352241689524384367717237927960207018066827259740716199101668769893845682419294660367860310428575801080729591603494595197228474117038598616018586418895830148817982299530624 - 76177394035309426196928550251683329371891018793472493023902783425161452185868256823057697729706037359356273575547086380910316181103628401582220422523578073800275337740998493380683792349124045477788527231304551271313714744937255190688292724719629073187368287023067507201970196465236925993594840175793118392332 + 69560224502879072973677252760804934438718015315069715248287011266418301386859647278443738780872341646021334281459927208959308700150332796581761630702797897646833268472921168199569188314622017793181396082773970645049149339909375550856810171220317983927710765937921042033479576406011137164163557443329499763110 - 54747077369245311090156313792678588403012768849946102674391402334357217662369526220430046392634164985079833666935051604464298230835047421936836502608560964063884081837868780943380242944231037282922666068389313595296053565572254152166681373700413984238143810234711762540153723819288950170059934964165087585273 + 40174039820488266241661416762096559613595486524245527461732376899112791783032984673688418304997240332159438296927540821207455224000356524560321033987610637463063428593732002594356010763428789695789790719910571939672592193764987655498350790259267588656962203306696789034720009872563021893381729064867985222189 - 79945258775587781653933366194143248899083723499163738672124579546209706975400838016593094200219096799321178268351729592902635326993318307725392995522921136052590176192454329322379435755418145640941432820718352490426121052570805341615978830412370981530976292284001316589519870825105298399834623044417859344731 + 22238193144461554223885215079516991015588965893159559161872661912230351893289403355858620078002034911265448285966525681385395767641339187900998066073834524182978836421241094577420182848021375000243343048934769045798700159362086332927193977177512441637062839102384262544854227804407161152437101872782302862299 - 39929403834055318302630471825410619417951193966121806134964067257074422888938804205945449114783496668141609542668315419391039947123472991544791327003996382295207489248889801211647602199385016178031952319728239476111074789790806329129577640851520903374260412845710414124806117319690627755812919871228946246264 + 57291204879903394849034414463923508953763192632806294707890184639772439438629478773378376638030873087131657172186181764088635916244994106407571109945195144124530219791742914027857526233909879167996095357426790665083720439016496978496254317991985958793247432229231836854888629322014113317199769373859859702385 - 48258518829827837402604877865322082108008941243361478250159167621948474171359625393772109870155901486652479998453581945837831979706225975842299909786969490280935175956016031889009346386429411408083327969844058581155496756181721367461139525699825819805861947020456265696771744106242310669693774945754324349273 + 88532019100171791057813170224898586002579190518992170126873152876799061247680430574721351781087417136921399552603067312245216324773825332100277596559591985063833540578276064560909509268823691045133141111227842389757855801767468320578136572713834172701486185750816804879280107285264829862646737934814637493839 - 35593626715444011430448135321643811927315111126668403236639207881312676447240856250384989278405002369067166267298661777256906661136175201712491142412582727033441918565145391009591076071807099381999643495815144545771341054298728589498057978562198345573849858861681406774083951653429343539311978883253616563619 + 55542321846178534459266717301911148194310209413460343910936073613409756417908231682156990264758322960209338316702139944381755370065447021622065723295444048714230412337237377113407880826096740937626141030508953287631836120510824305397587931200999901985479429428504792889084593620201443190806554308182242931099 - 15887652775124497158081163053095269646252093294052417876198914827143474965688025078951531882487720030325037039592300126278990304575860426345439354245568838161658555432776989851784884527023260331503504323004776585965167474073278529413252238926515440035272971288786282986682761470315527642943035939562059532045 + 57958653199077762832941409371149017367612997137108689676020322295061718744631846566133413700959435716314214953509784337308321239901668802942837072915555286293995173741779385661363155697774602714813095682731727788355924806132030690436625572935668957118947284809041567605894826635458652722826501918778670481971 - 29871083690169393424116725908213132510972870352847685386477307892749800692645781585355476702899218270023212277783951642429782933380551611271087267473752398580806695014436463593959344947508816692990093006781110008434788480866800241482640869497752325117882320792693426462275654858502162643972665520249577863522 + 67372862154322853792963473551229570497327405874014497900683187293703147147414721535302266456068162281665594562510425686112533642048591345335888237256969074717306541387781773507290968394425971762796996435829490544554983591180053037214234020550616749543943327616549902392971150404274604622444720795597374433235 - 4062802923764775531325388778403679080955981480414752887495555563545369593803342029078013485438074923712654983516356468779556489523104695597642995973210418661906076827341776382939620559091747399563509309885686020858538269733368900945537462601139311097148555618027116869394437485982599429143275072096280168869 + 66627814648976742478236301227932925190651685630385288947789473942769525617866865883116960937377633290486410225320774695894912827108422673873296595865473349439286902448941806890746910722374804613996317688886969223019129664952142835852341677589197430819313564762631032720178800538478817895747833669499909306621 - 45119582759247221535881450985263971607970236163533941529723006305281921591519426001035363713173484374927812686204373484349722705405661167698683115018143969073632205306138412497294841596129503991682900521808874962148590586269472323981801849507957214808918189207351337344633212804268028977837490354078541174282 + 94799220990048815068121898000346762114079937227746397355156840190025015053134490703996543312371653086621185772647131972340273782378395200006954268101928174164309154884458514164995285912933406199920508879014504345528399762336212441993721162446694415215828831411502928109702695289208576307656381118695013928991 - 39056792983439344461320966444634230259414579193706857877048417867642272394339376339854118279605196631047644198979933092428202338466736678399406916396523676354980550235384426830536349564427358887003717756521741242918291711912919671877426947114646359518437500927805177546177974177018306223683486030144252288290 + 22897137734445407749472248367034992415639906534819390559446279022568864511353205838203031661611996625861663433547437315325148478983476202618249270447168291099122478998095152600146686759933448352971457517681874043208280401282337686951109242181217096888755311124187727206442210198891549532314413631195071737351 - 18337308594678289573904583297046152490882376471596199372563400572351629889572888168947785845122208852590997701633052496080665608854662579715735934380224777260338977259614061290188615107764842877490625792968147074823872714237656961384022083997905376810004929565006952984283789578533863107142736403026973528595 + 58903615451467800732184983672692530639676629536999228704034952763104019253363077129123434725754681981080841465631029571192060296749737577228950570505815669340660909909035528990989306252226551918450511243129629942365519236225792707149919797882327924707820880234438317802134848235687870188000611601277518282987 - 26108820330427729216438981619289051533748938939956393533904422218447040092359194341832668424414216632415520092552797480885431012978341913992827653114920791436826955808750616210240708230361656769987888477995760161201317597443834320753037483462896135362974763052676384905814280012167483954786748569742604054388 + 63068231203028396078152897599911024296000929884842348456453400877603447053112463180906216146004638946635724827481907393541685781673160237216972522807905174080760608293010919721276523553538913081677591754957879632886276747541848305101206884392731391750656763909290081014843257072867953807821373971049977828433 - 59132888662549167822846536060425845234230552550155994522455668512388896441654648006854205345141435991740321273496114692655628652911382854775774276866762174336864583376567572607495173316055985167380779865421103334460333660597605472801290209484181251054360949298443844799813242596817919853610324500400539394215 + 62662269884850057301867485385113903569787766224496001894437450505678430420012745587704334584938853752384150687988893572539854164106478675822525798934853520144066594555888095469776953192962456819128408197870674894431662975776851572721463984763094555628755136652481168165953331883749513213160795661586691171863 - 4971666850855203155974604294491411764887782468733015212551406014474500094383307250366731696747872260396541003362301837286020135258675348667296693790619847458215445258694157450179346204620799788344715739341205894789727953942639865979790062670159420274072009996666754615342458679912653786538584694796387654240 + 58750037441787625874873065375032078795594978860087425144582129944468305436755547688840429621222508230122924224674861817586551543174641317520060817739733921925343277120740982266222650950357174197926630798960525783328625109065845772874571010553713254432005609155380502298364760954543637491112636857435374024681 - 94324076177072481969652518369668159657982742172806331111432050300051955140017512806040360562988220534224119664075077083987779856648608856499490693654036425200448957440479121905990380598198495506579555125492213213716045632644769423928912081461387299258894683826334102111879626570240869946688923722619157180020 + 94951534765728412167983167028291196988218341650020604600834718189982332584944098290335484331125229221550397059967619273790769978752710247173237479908813374261093009927422976947745931357293122479210322277811143466212852247646525511244151811522085288726328885392629121566602957958981855842907950939281349271598 - 29411574348553478136045815278276621865979309541145330180197840647827582077103266316010463805817217979049450227499876096896894715083725805811697389024440589275070739579132744058752866832649684559982915517460925241466790441068526727552232892186864735544825714529616404486399363496580747572559130992475811358097 + 34597112100548717276838540365874133973557003851812866713182470475434927176462254344822470665831853451777580990642117627351530714860936976713457150331117617892282942230457706693923312502963108319250413775286964167239183819805021751307752329951674917705102167416655632925019315405230442627203219381406859472586 - 88897249590967184163635575721649457482251785663657788197144755747262831484461979619184583406011756518436014351233248739449342573648632258683044679088082539010804495675470654569653395778283208667464739801529206123441611474812075537253796984947711370792890529012933234332779163971544620976215480824370129598039 + 37716720235309558468378360565235275411961666887852394970179285908963024478461900935095645002511304043342032735226235320513492658933077382549713687260468055193561621404439995133633881044909876749182285067599822743572725064883621302370272993264835809783180158709655029425110169793200286680693797315054587521051 - 94279701573849193192027494165272149066727560732692513057240312265194348626903488477422569258668753799264342175659436897027993020803636869277000179861838411562799845339821028457093592461456449611626395387548986190632824397441147947380341864625144075414319210338864360045034203873839812628297666349794403479433 + 69613652813804540500788423451284854656121278556486184865552636655904533011477611936293465364065853656165607153794541165565467043822122115656311870108337204583340064259698929501154069590480988633196187114538052186791495179800603817423192060765275983875103420104866007338403249986796550065559685804789669302318 - 79336229268207361774030158611218418889800821818466879157651219138720606745840383350790655023785909803461851786283865062992168516485141272593213973514147847338129196274828182122840971764552102111728349053259289626389888208537799788324494316928074769715108791145444429691861125605446235854450549599089052131003 + 71404598293424029469315707580734447740142698895015100524431493895602702815046324662150041353619502829178676067782230393843244044017401999000382716028015799154299002778474830117192521161932700837189371453143303048141114288163301258271128953711616742462655232533696411545126110327021808232220162023784667414683 - 46494132397974661446818519423675095984403535991625947472469202355428605598340202457267446034567202717357645182492356388335313374516821501162326782438054865953154735005222749442830254864762417935912388823354427765053546991250736704019134528587823702146591401184211512522918655757132514360988825062649766177993 + 94611177637998903855604517460610377863003496021089450384940696061084077321974727622688369385806369671855407986538719271609613548093076788002669841361892615300667878467711107643568972917191861533045269257445181625371691608770999210014730425392693500119012762935073147410415279286875429611652947309974410914496 - 50996518427990172355246486225234603898439090870375938980556092842475849797143469714398891321778405512191230675723459319153380059467997409639812758260652381480259318437308985327897517939554518420198213890440664840385488374540766416004852276679114793632475455591898217524663013243956503809612285336717289531276 + 90285638874958635424281838062213487741869801624999677434899699274891052351368899309043890190083000404228480832230174621607157443714690055054252795255810115059945340408212005023229070359486119777121887701657901158103811162363681346470270851349276987592158462633025036145427072795560427357375950578405452307201 - 20820574846074334589920467350591159584026734439190756078969488251687796826742016667849355497873360903183319276348406821790104368204955775067550611156028864421863044671690432516273099191051618371825882501919113350702508084661381905205793855409656702136675829648535334135189281722157302569295966290246967644313 + 44592521789962888241551145630608625226721398990074988857528432630911001297742967009946063133866258432548347092603666111299114582898883576410960751668961505469912290795911990162743492321790405426589751603588568351167129623090997648858442336965691908965849284196279918624945638575462140434083949289669337208010 - 52989328005064142085492198397741959515809979118248481341846693703076236265697766463157785766030400176477300046603350907605287077211295878086686932127251801271564117217596077749609227530132907526090852578572669291814024941144306868222981172415061287327265147359002235606422015659054745600157069276866518297892 + 71916670020718519350483595433246936141914211952382960315885840682506399847968046677900346530621194004982193344043399388348111741190208268112225797461991891451265435363171384458452456539888490835579469526762254510431133342077473905133818155507407239742506027534193932268105208649885138921143381040359167034812 - 75692775287065700164691214477476224568278755674554518245620519182762474833326425554452045997269275581090161655029887415997629278204722227384682253421934119990527130127522572337006848196877209508021106299968339835603596184940520826257462791960444701410800121415109183445033851358539856823997012997858029867312 + 74276826024590434008698300236292527518806629898706408021079553427423148129468565734841178409812153828690534154361549521675756284768044762692538885367496712256501648313714137913570019457801452067919026194284171589553325372959885934722747706016101106116509420051990871439715038971117981607005871908867894848525 - 13082476712404788628027537871386359842923603202358314890418133809262995070865285504649115228332333313176405851018835360763896216861526707296881614876508634277203526806985240319927802137194971969737477349094751256442268615721791304478865329184327600011572870325449862553408796055583522910702036225555857290716 + 760524639631041032446814839305280660867633723794810690441961422191591478277841638921100819138379649879555554479487988727839537201990898722040379834753657678554226561774952656476436165147574544300631126110484461902134047894104792769246989991360994561650950949047991480466111032004823126235656858355825800401 - 53314293972268672245235291771742420516745513221355945460453973108585666125477435407911885320764518756733549396192237054458828189554960691190677586267354991819850512768280434451719610458806748167512907737142318979886886878844134995143925877784047130057808502034382060884404271860354663478601838781443982721365 + 80108808345944518283346139725165777187941435354930097688996375916364999627999860768836255636567004069412269639883284048826403275507666190719118473225875727421815669849696885041732356783163473551420187709097072332427829829617503030265303077874703072608936512639581032686376211472453705790778628737659682396390 - 39504276641425429229533530240156722057992973888293832575665341254913598965755544023083937450877956847481285759153299943955233561392841203448359438011911665577443660969332004324541894578102892372415727828289686928902455581067137131876769872496818094568619049023014985398189922507682882996495388329367257829943 + 22489112433450311392800706685968040964328058656686522693038182290349535878806145696945127663756034080422764643456987457856275776499342191145191640364141155324275318548409046551171735456079597099574277364869772983323619643052598349301379458843555539353708282424630848602064566510848526158779277039183931667113 - 68062045051015418821022135867449906730298744165156545565792130277693884405436729114920271824669908384992100265856283967000403329945013632174121202074605404946687566966061067998535948748345802908419647212003090663614848472016424448466900711049287844151848982183696172202209585241106757936212223591741348554488 + 7989933440537538438958029662676494232213740450623423665245161262863365045899917148646444401338830373150113834467183480271787462325600312606915027646079176790228157682103854995188630118236646066272299616059406549338259959914415710562045638024997348333224422707345695418463111012946551745896257465813848531083 - 16718547052971251484596869406871013026761856266159119569773756015544624757850774111409100706451079122611699067270434838165882101961119178770036635856108384481041826950013821155075917408279006448878838299880549377459812526722926974858655978080300152467836427356193517087285949590613198516643462073052310858221 + 17695176056534156547399403645709039875803216915321397152669909029687878247515231672694397712578289974859775839380484085598802596426119258876329385597147069426737723319516574457150035096158774390185692978300588560081123088139584975068022680717029493580632556083431760253207604018746660078538564891961784398758 - 77764028990247414600484134585349013301436556383210763836573497861942369328992126173261540854045538271531461136267654092952806276469050450741045804946531430918123380024606497589117069024162005722165826396993569104246121381376356626941425391535717439883445091561539568943047305297478336767415280826491434643927 + 91152504832743563749038896096752292951937126330155138059795481796268316556747269190200830539908549220075726864912090068068600808536019990780164194795807624760161512481532190283167529942829171530680216744748284844872641835636759143497925265535412653480274907911581321445042820000322957709501098039884983206789 - 23263969253626685642971327707426230425289854978912742333045583784576622708966226295748175260203154460499049483732578117444570159291689972589252466831842081479369772383292963775252119283493260747757470372679461807769700043564382077882358028624197468191907091248172331496104914673385873794474909066671167044845 + 81260550396239802135738785240387289198970482427080338348011165495359589101214148180431334622598807207692799110195633461682044193464803735353593222168862854582097490071011965934769243910751253539698959925997155702202381045056459417912771987947205591084489817020906193965503171077274436873109599743425165629654 - 59852320347157531352812935064330231646991525454242780738552451580037491849904083925141381629918288442316681862030645581715868880200945878950104556941323792717181630919251507939858052689172487878185792047807294798255260593146891522840981913441297723653540293191140161968967278007407641161370773412317024585346 + 4775062458031080255330182361476654335473027744728651128893821375676659892878762220775789206784425203503816007664727320622252575537245394480025950007494382417891435502367764757222726083265388316627023362897620754468251234989253561611258913400257736430465900226621127396374384420243078704676991582212726626459 - 38552706244848953082429203559406081207351121078163719740871781194334025804244988370142259703454029577689350458420663326563145973243461950960565626318752482108113559581137050871782028095328366228242150530329184081021016360555200919284164629917449480318871772826386337982067520211635726841707492366525715060153 + 71776557073162649308637429777461876974897369609466406285703381293133136098848271541957727611299386183320446872031232155974372817562448373601601052375018225743710846772845068306845171664726017910507044410789763482989031162040410324129226190889329423354750322629266954570833158851603609729144454994497294813812 - 18724074890380774162403471459387848963113839771936182519314759486528069772328039249321030982811104450558473427900476275225688307639792826690413900226825585480497309557662247760115740398903990543054555845165853152663616061199432507473250029783735160144879514732583517447851924767894421317129968267919937789320 + 10227709964011929550141987655324387339172096734810208162698533098772161884509048214668639384975999926161864293018648860200290341676155023451370126893991790126125923888855105591620883342440699426149888806461959927586188230834917275856875193817301992443480596380805284906718116399435993709169271538487215426427 - 85048716219427684763363948985444376366598238518958469159790696036756475437148417735701881497081832781837317652052085078016835191254369222189812140829878576029261777716185676160444338088047576065264548393204539011470810625514769268137591344470866921257616380646914611337071565862726457147782849838500394723682 + 40111237064732387190650443998548961870158960232122741176488672559066209375454572156148864847621527129824139019722843830128408198224681392529633628443111182400503275143707259307072074904435978386440085578601009429140562926121481253762878391503618843908899171739796953606620842236969787585835277760378137609538 - 30943365360874058101867086052412157973584122290585468474829759765278438619064909533533583796663149526091706586414686383077184716582491068322587127502548211552927592003909142082398925016575525290653355455547112448603411296442367377081758781485714475561337189574317370435659926161374346439602823273204885099471 + 26039972901685398817433743756436335110049133304472975122184009319052789022614299854905249296226981310837212814928628642449070005752930251095785032735229752272762889709086746256031616863525046057255539365712549315467904777536761966486537927139379125601105807774706603869127645780817766383902680999286205669516 - 72824902198138457586902574440972420737951596813428263657700853327894022751907428212388002801488341081394923049807626791609408295105734873330856904291654985363634096933636184051288867343597298472040844084843256620051109871232359459031064535583564261686766728727043513574375927775754152908887852544750989246378 + 68717889270251120608403303565064389375296583824265071421065745242573064473692584316812215659015288767607868007901411327939424067319540187651688647448339584394645895041809600294786462901716897260901505382187005261835923833221770020047318334189874864853859976374230861283456276368610989194233634282844716716506 - 73815444194523933011714359787601408453194760795435125687454114452002563393220863244433671443441220498772943752722182475960032158312283214347292805011888377012142510183352227456686442799615124817802192114790208526734167556165613224146723504576993601203993422032477589431166274605748751463726967688061361684078 + 78571308731262644234978476406387393931050398689193764743802701302566220291833943360867896403835962403375808757655207417802046572532514242291031941205325475011214100299690976913062861011579161697343923991313193683206731374658232872916411066165897765291636956709314372738004471998524088559552382917961062466405 - 55705967628614834283401078864857397975856569638899014433334748547633634441947956064502006830230746157980777541828037172499217715372450576770644568397639837067864638118892029589641358600616949470267618048779776505505057596292458062696284376556933729778611677858432004682194406941206234497010217810565057719883 + 47910273827183140017431535096479202450182729548334622519657952468081769435740429706018514167732043628977488944884371103792703563786024637369909960252475349741746897110371560083985554758420565336771610880618829502488640763962007527816513683469206328720623409040760749321045414677985768627845388328183769678256 - 48708061153449753283430800640894386225454047371241308128781657696347802396940893411174750142072148380054459806074022457243215012097888848516645368939756554366426916489533847100990510313210171808886635606396984031547392662227756553954115752121323240850697887429259553006400765522765729665424982341290418099023 + 48053916089303838741136694432244730649272505026685761188358364606032153930863145893953456390016177432186046052446452135717313353424987991433765294920606840924852590927587427179837261440161650367236652724910905845195057488319683278744468190002087521156204993182579452707700641268455573950405871942377820805585 - 27327577117466059286392248344589722110405566873719843451838253954255095226956265374041007563457526790127716299146695363985817713306860052615627181639425596874127592236094626806750236551771540074271774423513855077460325286341213193996147787028746778921303821567024818930385574550188739921134696871955610494598 + 28474558354698327522666682022194528335016707733419259751195575804436849669255232796291109678425337718335881645179165346274347352281207141996298456450299869268024877305925743700803166209925335769218654145746871742318628599895855765443124208234758211855891865362140137312981509602475203065555144756021663453415 - 94813004788560198278321389909173866299446597154947856302037072657994814901759825643989482360434049723650365579588771450799453505392508682375457429378090033873817252666875273921249719913437301282343832092782041623978933125291337750726944229563695168117894814194788698359274538464243113761563039117901787278981 + 57764128289225699315194507898603301141471022434368001216725525751866153026398684654591687156134243908773269358091832857679089934100840216016085737736970920219417968260519402459195406201317499763101145985098407603259345063910537528309997073818865140292949000807828615900272140522683190844868390631793934022764 - 51052579185557726241552724206756684553513085404509234538105768096430425103347882863354858898675027538024557030402270668889189263793577628567935078120415985915322489378418940674168172861185810013065940580693742160913227491110154851268447472409480279500991894772762869623896786402060129961029847756451293471906 + 27070629764460343985298009987685597332627548643810904621972759248826353540155887457205476932950170951847551551583955605239283118693601845669789931015036784028319139838911918871230121396659679123550927139695890422051906788343798474341513849880161760802883833692499282354857725341288321697331751781656310136112 - 58590143333806886110292762628031985143345182284911876953132521279456386081296559078709264941116114075229225000314196654761906504183240282918442011786809119058117085351807085828635819247001236583570876508944176149967797932204109407341028937077409386229527725254893699415022113705386705366059270752309008599707 + 34877345902362937793461971565823334303715215496383623354011425849956777965089489731768771881080779278317130744642229295707363168094976523867368933845657459270601133581267238152601752708343481684257925659633449731584288369553703845060483566177606881056230655632039987184876396703922930629643468336461389474123 - 6657268045754798426434570661600031275177635957301852337572839788691266993797223558105165442257039129143914554296022238574861945198358084523849984541977735588049231155606428349428870382561518926963895063200241961796243564081242431869534503685834066494060991025076848228596671931353969682646389586557677374142 + 68135615880301662480033317407203844715865391279204774262174377954174708105650727172845212871282137724957316957820336702488884262622812111762841114140745976297408145233377457656791894614778075785557626165163578170501226573107768908942542261222142053453055146291409110848144590694132374017541460494695462708482 - 48614446757732630856028020988906251595379006934656404389451195386842587694723894800625238154862585173785522947800065187002838091720537906115257567655854662372588964849982473948352327948199549268538165254294468013626544113163270912909052990171716977514148147804051567344641924445656571194663106685147654481555 + 71694215299962631653924616648015274860181337944571600367915901598443834487285621871578075268068280349399446532153003008302081907257496237800577641196453373126291896234008725733109498788455164914240212016926517504153766883202265377736630575524200002580640280385483169343710177897008533743830669104143121878433 - 41506804670883339415133127483833745164227817244714084698639058685689936735880508869350342121991145705473532411860860400823073149047973336168300035886762528979644583789962919912057957374955381652823527539023781059327084330118867559640091734923902136475730247644257739864617219663561199160519602624448201077998 + 99297765994812310602662838386034943773168924902437561119441738811161408389544359336250468133505491439836443746412691078792141577048806906028413168632215960077800752818492329457430830836291973155370916193223477322784261600253298735618869426335576164009437594833117378111213081298263366531854293824830671708713 - 61574218545571856507774431872359475812916135188199392077708027165869192539877014151652814420381055092200556734506425976289848764348589063889443938685277862356073343407016116026886568667604524647158683618637185181493364566971463743928313825482431145021236849574577470570142058308581678484453403555284201311610 + 64075301337960194881579112236310220699365465529254718166076237429028441984689073712002314620728446166028963342699078457678276574601838064692422388908847136804890758787534615266480884393940250957286160472006981099321613066678892256926968818281011449714681410440216881609922489555011036812462252408814613101452 - 54616025344662164510819488098335124303951765254527805212565512345912366996682452190978024489852998992834569748445971997686713176996614924723595192544483278092465287191433958517519029110249180390511705916591089493150473276904474174896842526258003018608523486615238287771387141670756711497050979931573089495505 + 73870565628733132741090671687551473940673646890004858530307807168490857083720421961665244260732698273634918885070912684680250192606574145369611349822975643492224319165452100388862418202075746747020650042192458200209748028029126895661240093079925631728818780297408905568088437026658313820243973409459151396898 - 82836401585252458753313421329108949277349814369341940643333112533485683449210238177258829297918836226753201044125783086763433195146000124251211421127229752613364503391738338119564894985219245733225644415049193330186201254090503464153546277916859228256334804479539406409966080449632504204580887932925297194181 + 45679099914228951012709423811940356810267468209868198510449350042213620199349304171534531218810938013694499308541168270861943176872026379120192576126204644122885857783842162260746249578274140656737970555472855371721570017038799347983989704467092587625526835164078992269251187636947027568922995720584946030722 - 14015604438998426193053014945993185163263164468069450001200718631699423589459664052304540833325296116811643715203413283432747916043866432652279239808527152725388668996088840929898792606972363403044042870202414914506823170540697145503018348102212055242302858049428588139695793223067770711381180512347587788015 + 44077527229172675226398171248684510252882246105764019578561074220092005975576232846841926162052923562445092356682211518359934182286220838364158912805712302354781501492316210427395375995175676029018933034167966589972554712348389289732201869858686851648736828688987578319911628932001580230799739817667906335584 - 74768771209537867073589824093681810176105684312258358430929500358326900551884036965835449968836142598517552075296094678077235157542397000497263762674599684368201121234287475564053406190175941020335516808633522082643965682308181371290652897141113261653800162579812768296769693785366592588169497784312691830557 + 33876189212545920352454036254888431735313056642836113614483779062324416215658306905188054939660216511170644589288039273057003882560480490021971173618765017342868489131501990485810918176755369727939910980356828466765810656751695688905659665773085368575444265117290079653385124430801329840249259119521105415191 - 15250191266408668397343584174305396838489111735474347224663454159680912113647229010367489161299689966854871095675511763575360811158941485885765148339003618844949943328586239439335156008499023307493102148949570808995980982474610138358365254201305363768577764014287846424215334999672755680406710334422012618241 + 13826524839248308372163900327790558543745997772764888457881212117845817395622651346964281383608668211019956089245988629223736824587705796716738858948185448975515829739431724773081996182230655521177927964324438980180499932103079158638552881977747373451182185995896607516089560288480362414129472297545750240772 - 31032410327838542138823753233548405764337964414357021112860457298555383401943784388643993080162870676831471420270636683583921227627198300675326525046703571340898654396118136233840500022379137257442055850781646759426607853265072733506716269178683760176512091445153070302112831288859359673123831312333608084539 + 84098650777883655741067220705208839293797976576021222604444054996557523744048244376913813009034904032172882393137067996211176234879495822282398559819056864260946725595644913151190995738389880719321623207219698201712964448697846215093960095138013259377893606722278875047664339104133184764904782016436434176404 - 66360288374817779397752034705131600098924614766243485623990532759311621942040843508132686280539409853991246245950399651923541546154527999710192042230535153610411905894553400729263360524959559255213933341718214902523937506182039875509459129892350765638339410111132125753067889781139139767261395811355913517301 + 94041114005512767105071598974859750265470022781322691304669732420280950398776505915427117255517500433598973056650300978850604912661422058904113015460708366408199565548888287125905700814762731505112600392820231133471529260090151217561214445846920340927942209450504022670011281573854870143204572241360735984667 - 8480201599621919288989104503788981364154164814146094679337912828405524576466906431289572368110378985742786430644342553516926686398628079694421633844335218122754767036127432269046118676280952133304765723400975590336280081621213754582738725644842581851920227893536101407371963117608053979235800964478798003001 + 25196123884032541208806026865396799743548248159918563949570276396779474597608814872999723680056490632650220289673660932642051416396669749450791515394339963368196519484106829769425622632601174031372992771839537031890673449798639697065858659628008059706625131977659028481375278491937222896794132237109757345713 - 17801428889279081951264508755961198508710767676598126036209043501653673680878114949745579174130541968002224378168512569839190960490913525380148826143624606993575277536589667610496153018189852349925527073232930332785971723077588835227743125849870210508109585391462636841114444833007354098148197373795799511558 + 89093145364029751566826903314912557321970315176044633020755080734851111569888080500882148121185269784822994487707569408000444193323588828110797759198065694537772162115706327460923468368790953319691658175108082154054349557536248573070365143127799217101061893258234086764707791141798576292254342178198873512821 - 69889685924254789888925283183938538866620508684295926263101295724728895778584819179642839066749045132503102248006054851290557044871074670940224362906199868474489389300686791556455846008754083957806408502969786441187850817925984227888203223529694091192513425420343366199634464511682385068785919284783415747533 + 91656824275075656636681059180196234518546462549134862852016129573322511591632114478053316876673926768808446895241859080108415134474710231084515905456412066463938168277738283781722689886088797286961561223122972277423339132696876958412703360975201471840332379577902550461408204358784000674616803278938668422845 - 33109426429011686252292463771165742978022942092720140539113362719774816955967814491799089575256494257145456597851889669900021479948358003277464921895200312404517515359709922515090356637832399276302568419818885910604063635244690274044036093975307081120306673248327645052594354497276201384959347118233595706978 + 81275294705298198345261373728120501320966434979397922037599752082550608285412676258131353831921107826067019216404617356196068677462464090742667824868218635816469256298415000324124411648787820552090542507961936637847527268221593873437871004482238882511063606517594547631148941899775621178201568908014348677098 - 24516778971446129686647570831195112731993836721640893789094797387595081598546722515285711779912980391136483714971539213102070689676394076890474672046770345311056249780257815171337240096472571887738914518861718959116713200245142754505477530813415778238530249785425473883424301589248701152645346492552672972231 + 41279776875798393686152458838962164829446525195193040377421491172163866527139061123975133447790316290322852998001371716299738863391969719650500442292958372692009023008947725211005508107829487298982077219809606014871760174469858932704129969785957434780630553146998624607085655411097218522920797861013056609769 - 52461914683866182555332831668209835981711588586855677890601347597510790413329038170278862010134326693558906403905853085542728242033118845036709923293196273581778932647428947041467650198743211614374550564341476910584915227482228794600118944860219704352750906102849743392980482660055974684047605051761369198596 + 13868184691283740325154066435194708130738524104795041971474636775923867951843611114259117699764878764480630590090199677064625344713517547307981335207982374931419496963146919434206354461462888259900753001682818524141365521471159663244954371617851214221907790017663432994109495968020902154025699442464315812361 - 7282262682396175996791848345933026569105639881627120579453469560803228182558211961987174204624399529147192663305042550758956029319317595246328911611318078165611727207573404318832507875575685453666383705182682425824897013520095151019915997644098596784590897945394223383255095572724651076923730354897132413780 + 21865870432441050162257430939430121581784088707334857300986487720661327693053006592663861414872209407551714415826049540842979174687457494302885250458980680555316064952302604259749308869310810466826808359330079827416272011275869762784634217588269597767333146276155657653953760533493524690235047992500052121721 - 89611511954143145773949236716305986053409778355240848724683158714741550328219921286891505985335497921675684475978747548826876108749860070609720361245873417539968182400066779005541741621820369198406329913968406956189280841691964971549933631571115716843115810384178819179647285221489531016649364905245553668775 + 3398876196118035004798755762013501318948514063571675808957319308201481697124942740181812617240524808252743701148524659251253317579261459193257967024528602029482204027493564342971305927036568020176616362080957652827464515197848588321672627111357486772177731319253597852654504032914789965611659826637340387032 - 39484824176142274739087422186344967456917544548578884914806432614037102563287727855139046310895855952853633101368812206536491142947804559248131416675952006694310864097583572084707028506678459336240421828294326450175747168760485694558474321003020862999442632936677142844182567038794910233582389937330285635038 + 70248404246175504095768756246653473345425090957287154026770192751971521498201561345385379953282261863054619260921807408274809760194536677629046912352015222091641547970119339064372769966110167483114453103500351160556382797425799996835633415295953573219666150819397568696449429913392021925722225026915263391263 - 47518749994940408659207813751052516431534593055261395714084648703964703144875220267684723643630434674057709726416436448811531544656393013172383232451413243775390888254742507494392705695321484280061958381013463348244761994024884665413018255992268656867349202834303084069964549884312456489196387513187852814749 + 74556146834980490614737058249997699021692789421803353485535504852931885888249324563197563034186362205900504999267915951993457290617870291449633621462434215553281984415144399095890605446723290004073020012646657203151961190353651994375738596386465287106115726336092045168049512144980602702147806059438161364066 - 91257199170035398829524467576529819218226559614989997215825993020012514124560643562401843079388665714614628244782324887728662927073603708668405534881585002578430731797725175007813800083513248332419773919963478620999692098319261095601072243763226578913865066621800294852116045425679841203862985316746155135222 + 55896701817946400217687018223364414969592566932665148501349234726964221617187711530818669856426660084393602110808363860351880814388518878228249743576593624854354758639406500343896971980789665215643322539928250582550728281878668726432964219129681180002621234765420044141479401087094723320941293494277012608204 - 8105478899213911620330598938850867921001323776003223114227349039877640975303192987490366419097821232057739031070492698081423481446452077807923554478322382331652992005584468223290926540201783904683879436113525960694179837264016073282126934725298777084678633261295942710541186254325166161206426594082033023663 + 80057658786804875457309330412139117101989407998713553397114741096988479238539658390402131157552891961636469982645470584697011794930582452604400572983742129685112004037006153323294130268241555571676357957371717113087662877362681275328396250009812444909677875016389442002106641911898596848009108979504988338197 - 26437755026381242643282917543904524095110338436347503994085138057639847011479678758797713045909528807769976304663380647544330763217608917848402457720074535743102828249400993934453980978468068367300686896403227066241262810206060296121681817023314599053045515347220424360157803408129010312094334168643919634843 + 11957312953242037249331675357467540179990312283536964245265670421095509478938582496175167528532387051842601548065152994263934685956849714705813084491176984143948644831793377392464028256547013489678228637454498092831866384515626450847446952627625251004662061182622813554926303538971808936671539657075155850185 - 30403726960442865135504374470339035117347926290918540535182161829524178693526801733245424939473377083778691736801592901209899993862280954058490586822464008023225920461243024592004974800073821285342522376849961315221057498498761749678578114642682220224827825763803580410629039860673506005887089114373128730090 + 26573263712422850088419497839265042128713244217185559505399150825897105862430278184322633231745464562548622835640785477028529758542980098564911090801554344539964657173917831494883023733572466518656193653839058478580069907852266446299422504987665654691607021658618854820972629363214285343989185610446847542115 - 37858496640646452646702792212337597911640352952858446870202368978374127348964607057173579665484724705006888065166005691351510356151390633488542143049969092376709877007937924101907141820090651223779571771865831543409912014449726509680339314220002020020855434807385798130300324014140917917736462893396011189600 + 4106377115418699650589787430193036111320871538317369726506249688977784551185382210405387181752690380476723388194005361120635216907777594248863304508532007763376889351333390829042042508988049921309666606697544181986749188101035918722219165800653933696621856320589824555977237066428463168806970504192740929871 - 6466101512511340787067091183827055335101819735695852233753732053799536717262890189770583672409980846366090574169574092934238769122782911698181079459415102302644442608704655237839919351409456094767698451637302515497123949294854457952635010029183563921650582957594627815220427462099799590152004039986884333251 + 88513056253323583318315362522993155283035886704333520275026687837130474437667431882776597874925346642911667075387428704224235594567559764518767548091335519930214502171972013756480874024378291887707605639121570629596368343763661291304770752119309800402521116295992843121687752071034311424369175297868253034066 - 12761545820954128966451623411475012971439332996873766923556174273041226426315171476074086031709189420750528306757318045589418253620640499365106329083252176318304168612953223786888245979748111570697502070919289686645678581692729579383245035778691201348837479167317205079448275531341011735236794631256185999598 + 3141252428212766227427860601672921044980185356726813233319270485787104041561358944250205280039620512246482469367268116877807188275713620475749317648783944659572340761475116833409754934710407146914631060668410834629223691128674119811489264964966728799118713139371026099992879228101783089097950828660678397611 - 60173421488774433512807684123805747622799025281746654680164836590176900396974572863636406205485866591482315586404885654263092135744367275514703828409156766567804523141674099388564690402847355272242697270866244359849334369531218853511022363493436112044507560345152978955725468048215102222961729012069099437639 + 277232603011628925867110505995556965862411198901049230231320706521660962850788619454894457880673444695404228461497212563859972575291635719734865867190889769922353083052853970698830347915120496568070730910662729561878869783292320919342878943602572982297064343584055980512364045016415382899698757468352000946 - 75544728084177189260235205396888452811878187959547823258685909912990568851563462650577948690609971749714367190670165491804769551898588953743301539410647446903713675400290700985131533895583610799189636752848182046697878500698558711907677776530684828342007442324738596996674192537059646577056121970736186861133 + 14671838145262748604546484567115868676800613091915538868805597478617839920280336454297958153873467016730960506777261239139066377548603705837057639932672344534566288366300183210819686785086274766166363691539853398701501043788587503638188592951284742307190981137186350558541511525901716337509364712626539173343 - 12669330228982983468084164995034862123532816704581481577009038191295578289985571275323866209886812865035033860139435504262688031965398699143126806857335174017076969915839442552729484352029013135095882662362193582834841404518215544113426995662547029107135280780160754223623106233102880485719589036189968098036 + 96924985843490730041622732376150267630831754751279944674674302515471864862834038589377416358430403080848616252323800032808785870183891639370915470978174769287602961265109710174942567125230905637983678442604541269988228364933839652099839634336159000869178751541210368677680112335828202581423855965953208850845 - 1561424608309616070590638324061780837592222222567883354030911922094969926445449860769178510869736975607405398903141054924699932723969813357613883436616830694251220617886784204726670186293512582495444404652999569846055536884302634821186920274671052714578861910560767885857285455380066422202200503017188577282 + 31664799254730770469710298747280139205328013998232026832964292956037107238608676653228224241522539578192793926923073623002790957228787222142151527382383292918823159301469000654832441492519708577766457391703697140200550668005900373598278872151840984271540764175445710160988260461049520248595844270905448498414 - 28058414052118193504560418792753667914449235854467721671916956051643669883490604346785650584331806436481867722721636958468518364323228797264447930309802729276191714646860626876361364636845868623760913316795130218997068327996487965222468267213761569579142095535377674023758309659637529150010545777187657390560 + 16050769697903218386950710618300740178395223499852066109617934101316402869187431677269298474119564837124285573722223864066676043150699489077342140166528327515724394484649196077953722389892844495415174289143413710570119866534467347560261814263467427590430087861196528246431585124725905734511767642922269197373 - 77798003345221357943742078968260625047633260034191237024976601657783600126713101429735888543580420138464159550170039734836185220685913062718062421736580398812029350562868540666710711559380929565169738752102595291164931185591854672396752552492962099544945279336806151006281886420712942856702812585267259932897 + 27799401260842815776408276209345530874258640647099113428926759976096472782010161094470893227178863714557752655761076411576940186497777169932013337761890914605721631287258461404217761032750404045273391573992256620266881202071477316413164691299578260186760491579278809511036196492898664391365711076315555508557 - 56080551342216645489242758201800596970649378781199503826352949261761161868197062397346196058283880330811833043483906006249178950136984281453426662002689675086003573509170360885550416178907978181202844813148483713343499912617794766317468179402531688470636339453742825122636484143207519777281037419785883601273 + 84819907929776457923342451527255718060345877233728009229022800100884208580287041359599218900934618650261592911751715546768807316615080414480871849528258477475677242557115565215803038002874932867982635033422898596328932293288173825338577060111744423273460021204888546412746754196583234114265660631457469229161 - 21962222782566485550197143323620457602190112880605358291702135913161798538345868351060308255234124169560288379143892595482406952599015838152604300257281943991791734419371498224333765562550330070993246457736784819996610745210031895672070017403834899920954471667250397549503024532447020565390948351505988855821 + 55216434985764220279621862716569554418249405943886456877566233171851903734909826586599928105261281345209848010756649050622296060514091087042679436285651527060932076537449556512550602904663674443845022475727168429754895414368176125434227365540023724698990651355040318961176203889052316424993185490338030818969 - 77335989085377632496529340493006636022287141059420032293824697527718542065108929197922910053715076490100401826462047375903686616660992517993531869069075175235473488484082907744433858897207325027936480656964912497235441709341354871028525474195148337027453922320851966215308694740452683487800505364822331216396 + 56552686082104088986296349245977734410517703674187757354094370340305813816451413446037809828071768291088201330440761167450301724189407933372126375764839264371108920509320399295569874454917156277235648956835076312402985259885938521050249008988040169395826757980816550637251971537902702726461518621695248056451 - 45981827117372623659978228870380054373952208088754761024337022236778138297133421784662585352653144069596427191699953329950543700215133890927663584379252552582867841997348634424226395432084209374231910174314840276343954602515636708251712124343548438829712929448377445086709965358388560161111451277784986261907 + 67032019532787096760957215600507749697534794335739117574132778864736713810432045338173402673870946378152585585405047684489986201213775337934846475847116136478793373692350802408920656860292405891069340011083252210567612933374142208817321236626529992545969616308627642161307211111826946411224817376187296040586 - 58543150757221458160834942116171469489893402083609248862228020238937129694659720593211697953493906451952930457114382708031356383084690618394911690438387480497866912319924789433208574937938474387034565324604098957277306635224411328474621646366108630939717436338453182135376041215130039851922716419528745272631 + 213255125291314923686704571180067987579635765076576378206985160564179802662740219352496940724390507197711674627645932314692024959113703795904751548158938067252807633534678520950503283683691304242365835375920226562966158284945895711440223270749425762303308860778984331100035024693400521503879844232709906748 - 49151510149211984686673207544600621421387495616261365702338216562107511177065022428195768062909721959387341178414004647726522482267835850985325987700291122253665274322992419746884673700779430319422997273800498362545824335557187847021806550557851209192961369378714392951983659703278672115982882860215855044321 + 38502667279203565540123634109356875492651141952687405330316976024884123894264872560859826501572381494536712991770977993265527744527648735730176890111356897905803596691769347616559764088641271823669655647347096707512428347918589760650039688153921444497643187220841622113480729258579243207028622276551757770325 - 82515514322340470084432214625962315580709167410642409986832134561683747757690381340302044254088977863589990525964954416946566632669342635180226210964943568040093260325343404903228846140280694852584126064070589030734204137616960998096394413508835651424467359185060825959351903651405127192135455632530027157233 + 21548459628472938030852095916294451056413422731770240765996211347806130731711878637400953547846610324306887127420346142994969469145742097193126760736221369605511358571587697016768842417292221486514056880118326839034400682680629445956083223040232055356525486859176979301784188399366107814298687571271746856692 - 88553757713579165402720613075375579001344811764098864483188983640760402828041448827372335042259054723639261842032912197168650750674192016294886446102408846990404494577500326021534011901797071067870766341259318693731222503587005042029649012514098857870190855705112769852131641613407402833908650759056233262422 + 78120344920015638979321770141667814293429873756880605311955304125956656961870644603931241276530331913058675081865064385491016071122136904023130981727981589977853147845512700921813344203067203876179871106949669089975407820141296316998259714928953966870570525831093589325523939002042486703101229708926870027321 - 29265485820351554281142489137662994675827790835423102118928525471409362858972526468357454495794660895375345263115687640991419966101345755235459786211911893985563542412877357859925807813573207137522023887541706268825523265956447324464626068441669600368774233464707333133899616202259860668509588377490893333600 + 66778114679966601172929099790832270599283604339640360547590985625887067770009600831425647793219932375896607017303477373762407900223141863343076518272656111894996806991601339783511590656786501285804220830413603923593353724849095020658860162935887851724540538369763083981338523388769799627630861563593671277997 - 62172482660414401627733080358599036741405736115533832351386411983393973581528444722048379461354035448454404701913108678903566743718003375910449305102697624874459291894406913930879139169497154797286328437001027136987575796059993571979658271116795288857345594972573544027959042068810359239821449066411244647665 + 28004135713377222035777938533119964313009028620158839057182578717234824216817179830434120129570169798171345489291459332838458589522855094122532720588425760004266979971435912739850562366315420279552020518305213467735371081683363605086417742629367300237437259943244783232264111265661430472230423170271146676357 - 42045679208966549911094938823378943310019719429376529938172288133382655756651852933248867482313868304419214213174065826931813850604023632468177630915811630730901711392579087843008323864684434745559961950075001809171760142806447094713563305525542443095895671424769992254488364242788566194266507805437448524557 + 87642347485875371300979139066543349588756081521351617442388887721368164676453892617611830173595058519329439418824201383393650061724185316532495468333396388214336979146593400257178917204014681089865460705323492333965346624211886350445691794916057964435154772196577217863532687243376132650915650119030805452240 - 73812379497446748330320530468434994202280399841066451351694761297440760895835591259463279258697797989180386391558238238555255569932495143930336636689890039207712306331598652786816498269144815504574526526768644409050915633797073742630378635051695337052255534363631853685275601273326184840579225198172461607544 + 43196986301247739459724224060264319697958866468631178071150276042824207636823060079015844339519749667117120809397099766559252141420702080533417487142507981702755750510142415606263128399008751070491039718344084284337990681791357555778333487628384102057442201799911011037034322795802703957209459964346973247262 - 53363264213775357220749788054399202852366376915426992806500132531392195555256831470903228016818305668844014764794654083282564173775449481697538308462893320335486586981283961036197588566032645314440204118352717752872327058239992475927009848971136229661714792203352714010066124643030695342436236455045751021521 + 89753907722416494927657436262889623351363156488748713092674752316977691566387164846590979098110559250707091197987587951223799509202618962379677657028564486961981602334369746450630372552305055990127508040885599447358166255245442557582456188274564814332714308712947888638120482833309549145922533027784202580021 - 72688357917738633320245565777292906425652165232586799833515428715463818377882530095835727813292165312373822975370423814104770668416717031182294586942464997465002094206152444329988941907523974331696505055735587879573810046358783079737621262274429632907857914840730548851607606513045188919579449007297498345801 + 58263647165236989745332618625046076382782769071980232476435234664787757516804711970513746817434821133356309093681982837616226192093246946636900813039681432509907512763773954362556339239495697271875149496792067333829583936357399554621976514324388959733840618814648627887235668165817170708976769031924529321875 - 45653686348853761717917307561878467893790024030167090823122955431628355352647490674834562505676186614528793967591480304740851712388761540423175716675553722019225310740708582482319379982027256655715771474588633276120283816407832465437237470799496235532525507964993498937964762941271849386402345037692012502189 + 35883383884665030797899685678012329935924291238560426298154149214532009702182540375876090176121000662524092610168753063620131876132540305412103056945801954636265454970996929928419629798597765451726954238691792017992654682958790214815860978052671219781584822161050468157131194709624993000522646723284975521048 - 55490873774771900163714177811399981912698754159961784184318888147118735229836452661145547956338002538994592627864940194007990901076602593020392188273056378985394868208623254959973839822574053037111568515158388893102795848746635407776448331143300497001498806270189630629162471630925656741374367151888988281622 + 85351590883114445153061449907452988692034898185527452436606297203144572808576228838109879565451174818819644131787541759780730387126964232774749668700317585932851619128306759119302051044230342412578103914645217804505215953364384460258481470428701243003990220448265014216109870557311749991331163263356571764885 - 49084137170588445082168780186211114742520528494332107656071848352327010851124766186791831532006831848787931498519481870913418652924766241088029422670907655818978479494726768140537534211165175133366875218761957437455035420932483133811683068105017589133321292612216370544860184992970434854647682419399471495565 + 45020897336809135482763354283096950895232462323886488114000022723435907929559391185807860286514716920147149280726878993858664741640485991008148507890534703437953734816630086865634752007683791556281998453231056426713019328509036495915127803941875766449430596696789647516037638383603184235034955458921468835212 - 44866008166083434567395004908885889041749653622568978366585649866821260524764249559496034667133705491764465637680559633229162784059803419266138484746909722195363552710575678447585147054641066538194145510127110248459717236632347386783660748780963639509727904853022718333237587282758547156607751759095417283220 + 28097013059665482303327121030755090840609138759835379216449504910469598553924885485641113514438030461065120404174494543405167144924574950874000946167840429880009958441412678826417354883737288353482793530898545437031460987555076028471339379727068081294147851697536351132696480383720958825183802977866742145051 - 50906876915203465610616580570253118561902001384601594970794441767779986076626229890416444707379514885440391466098012761559291986625972583326827037509959564015363416657418467889927359986742302914476094337641835721638174999314210442405238313596501591640300780763463042156253770474405806575973798776217402786075 + 6501696216045209572549579935286293108611224089019435378368134585805573407298996145388430648504211686864271183276773453694998234575858305338555024039846230580530622510048048010245175170733207468539666465216529322714564387927498055661905222731248295593728704344098533665270725221985966955046631557061899315340 - 44811335802379866102977739936264984876902565473701672005498657198088878498317082297533704267063722360825365509294378063830983139802571563299019168964109884663807777589059977495733266095325547615710541114002039952571708768566660795016530683193848126956860590617709287885431029573485923968310481273312004362853 + 12812190486824500228456912869025914184186303715862248133567243787692049907577829822609755502288382961054869334722642252607816735192341011120799321998683850172744172400550456259561275445222486711409877492489988566311481312471038370908978306401601746957371917218758052818694847869623187202069846142647571018298 - 56079808715464332704649707592670665489744335615205950827179479999720870164252866855863147620206767468683460846068430954532032679328387026664874812542435183145595700100339530693426535544133593396077542045869837069068686367090874526381341417021589584769286195179837468300357062091058780603121217512024443760872 + 96919762546443121018747788095351886380086020635426219263008051779916257313924289582145836296504372748773833646480182050370553981508316282773620149734161384868307597919559435851074541511896483766593829306495762615374021902659715974736539044598041908927469861920097229821950022033920662502702240064290771366245 - 21825669790129837716017050459466126918827943330545977478927810212703880072892404469247984672100976325756896643100015742566942000681348452204024082828966743214141264310292105560939623111170056844582137700082141282865519256320724078122242860362972927071460052612606495359800215963069350157393602190686611233710 + 2466157339763838367472705940436226246112663266767947325130868754648415607012561619274079476432560872356832793944401061245826417816359298351324595428496794693460037136450362933203846516709061902078532837283301126386106035867009885797941964691935762462073047036981960790702403365990584718547800799640447407488 - 68290026151883638236413478385526779930756478856796892598432737944460661132604766048802217956705305543250627925256583716602824979884010336578716705964642166874626271120690351526972468578074218742486743186660191596273538958569734205089247537391518961868324186112722695551610201973935541363389879808069777814989 + 32062739077145540467054677648058013446366045483658017994297947430977364176234043527731437243224030588236812216037803255340551450906440837695701028730051910230849921155484720082955018042646964946223708631004882891001882871759707504354130933180455850780907275135935794560970987076611976978778634598308716986731 - 60032986526990454321794930798425589379383558618288065186511589229562760614366226437571746942899908944094688598384830925908409943876375027377308029951405331400237679489395864073298593731658894481121917048894280587313334779089343848286065816761911760340267401501786872313928935087652086368352843815372263160954 + 35013784693530815489404965443719063518794964404087683082868556157489680396351410018915782427395282714930324045845506897912895953906208808267852061555311461545976600760610708306423669258706932101463293038462419150084375640767330869242914099936784081137381325588203839272508265537491138082790905825430373166115 - 45147194695478235184690558390567924754570067582620073677649774237434698626696203729911144502439238407829579257695980526885578172858334607905659273937880469366996791133074579277929186964033462306039237409265940109211259049500787466856305584187734986829134249122215116720540048598771734783696839943645407866618 + 46329964557942751846237310055055919298343287631627840710519133462102078334278598068924971877469723555464842711015161858246813486490569130500106155701095327326444739851835980783919278054309924250793936736661350648616152908858490672758255228675858087274933041099949692082784583409892452403386041359216442510212 - 92668812296968557725432873935364745215463203056290246022942246723557561964546099470636126276921667537467957117022503973154845762102529704442741398582045182587535573803174501616465717466947902935241970427390163682824196865056318740283631679130384306899933349858017611601516382186127464256937559019989058596248 + 74734111949750594529817559123079069885054790099467140236612837174116336109422182849682472821335864067905749022288939156048778300607865003509069102649485020139056483175050438153981976734069266844465147188270750485649606813765008803906714642402614084538954262368984849424856506753120867690954791704713983395840 - 74796474745399002891384696236337876309239964478940256694774447610986600236352429351788539673146110878875610222050743377772969960808884525405795361999235759027937567695706027424791544745433635098754151895097391103326922494712442510219441007189808559566412007890367330058118410208635833768798322278773986424657 + 81162899302465101718106795638923143753485893068210490230761211688314883405900699093101873461910143063538567508630545369704070653561646364446865713462774743253228761103308042160482388041541490137657195330999608348749951656008223004946745328535628798576404226245481157165256709821510161192332193286695936382602 - 6903280983210770892201269008290115328828319113057513704994649556993049339433328608528602957037953676743280376814232442319912561133089172403312050485421340832072278738834393722864932417633040834449058423147714463830882289990859489501416209705418467929663734276280632905070979698766414003957630996456966750776 + 88607776808178944117233783354690292814138208163647842520932314271322680556430399338292735107058625589786893965895096468648166777176250285481254027331079125185588215122569581505955986575296343485129718810866758271691232385180249957132245463229272154020569387213895919013727426937865551875564252786440033682357 - 40948736394615247723027182626275600419172031445833177284820552986764205889933950535325257514770327904707151941578628792936629120173313148529246957360384164763861156899545907895696394034954582164333823186353118362623302351259160464573344923958941922279159365676320808719750869788938170048169467613387675284473 + 4206993582513243448000727060934002918152303255064828851633344425164197164721681116003887106230631528327412126567335579986671106269993724895674377616646288854588091270064859747371888515180918414347789698327628113606778662627606179549762508526992622326006498263071167782440837020871913413023646330745051245392 - 73222751387849756313229022208297463839720012920409294916885586175745681385421873722260329972290563876173766274987533067302343728425661178597644325470073110156871023246196880959633456884911724796511390870871407274050370248745657661688994644893934552338987752064730503687612955949430261882021072266035960428731 + 58768073330116670613221682063367806836141367557927044546146728381209860008670372090032195596006219304171896461014319274118633214111887890716918341881384102653303416036730273542917667710635443435663679073215330820497301419491049972787176574349922853915193481842926007655961958677077763360033536721544364898165 - 17515137162921391881269144942078257031078400509982162499700071256086747974701749459848414271945522038356339704654012036230904088780920146154137852264504684533321999099856328655877037045622020892108579330345224440035676591202122181094647847368671513595394088584061503462892428448386650150599566116842531827722 + 86446339102053380207524579561306871167488139261608638642805639030064762431650496110019026636242887219752092627753493853790697771486763280316852381596907950187722408730408594631799911663150395868865434645364156554574996787347172065085221867496926724087994293362843819998366359760983133023326517148255477721340 - 79210565454524318332036313519802170687992188370895608361797878733510299916805145404011722809718279157241737624797152353555477965607425625770871564621467801981698123115048982263389468806546570170498290516178564911848341392475984320336607088152349088395401647778192295511971366332287962779038606042765069267298 + 16910264658714690620272245211133189015344424228601846760879473184551428827700936538177105748417025065354628355653008418954424105150973444316544290545884013916915594040674771752684932816999754729155741559075754140634827899236996865482547444512399786998151231503086068161373025575079153460235070481026371064317 - 91920550282777340609338090568957840921577008617389960622298663411867946390037492184731954529197177864659106413252710235923801950438742623565819325056008573118466407080371735878338444328159816502958683589214293035463130643838279888844866151375651490174666341267349496709045540864159294806684799696165747967825 + 48068511921864451977549549778745685758876087319594137715928575229692515689708252776171783795458099982574391995590487571590884003806847976166830191797548541374481761186696180375004934827444612975483031635589193950204229143889045867725877826048595642329690709904325971860433102488727116174544516563274117015158 - 41908206335226814842948460248564717032937955522666527225936496244731708682769627738157855182364600646501908567988237390506098201017718748527530656427711641350532130890004561201588984528602499818119811380893689676029890216036553460717264758616046049587815152143004193200997156017127084768095340952603289972814 + 74746294215935079172089038772106114420076683304784024354895043309130071957123897302124744063196808191709692444556152357199665232573884635324306833931503568120785239996941378157072251053664446293964467921764697035608909875519654356525049252570179303606661691621008715628963025701780058273380904400343870777229 - 77428094938778414051663824102132408087910836585416026526869788669373992948434193943534693549159632174212094306555999627698505736384484184987432547452622961159612378507382373078220436122693815573693857246493394134658824344753600787670731733750163664581219949505724881821552457585463013339777152270598554625455 + 62430923556128012494491268922872344427318596340651048900916935329260505317357828571227332715588275073403926926559263710674302297959838809470427270764281925673721721593619184477175708679195835743283602917747601264858230750660047250958980158825696151519626686928208304289444663134799395451124916434017836523353 - 54112142043084521941341216738144468073293513225698413858094976394199711764690333590636823238159585203751582774358180852387413585081351129882417493021819189100694736057437874561101090239707691333446812220293548792298064813785405234379097065714657994597973185084015439865531574211361409768694334180256407517362 + 37294311976772300445154570121044385477872481138224564464757498012858332918851586860946402909325130618076386767839305429161848989031774120388216106403740804988190150749333343864175145010204248480453768235030220958960850387084216922881601138664751812014655182219683090984693886424247274300596761789935646799860 - 20971270588230954178564688577519621737106503751364811730583644012033779274789001306121972870709248307749914257238763599666558201003333070722981940983148671102706838566271637477848588919613713585404377947536821578411545910408781898451616673064732478885528306497948378474021520728479018044332450836925903113868 + 22256386060402720250062419917272351405439721956313873936541347352556648847537161555030420439456836074167049735426282152872880540094359427520968697959152116142549956481347938566793484261377370697990832696297931238227817861725372719622173462365411457496618929335292209432221651751364685455005973921529129433767 - 78890043112608863695600737230890725312948369656693506891468462959723826466807211514289978415635342348704378344671046122540177576618944887065728756376823963650170103686129400408984918728289133603739675938046491105193789415806169612976436909558755163327091782770926060484260777454681727845449173012281841353198 + 51175712755786571384449006778279175152662161500087087541908347950673094706974133443812197690862926290814831784346426457898431764672161751246157470082673455487122689134518315541741499582515186506159770614170645929525189918402528699870308659559056052629647898955528452398057894909236570269588490944332225240114 - 25497190765505769820419033692513739324814148493219118423006194806834509037680939600071562291922198892370805347201341577752087166348698891032552237872476321386913964797968756291759368631240510950302994486748929293579443978093305843726310917394462848096095393818269530144669880932747670786420866181706761178078 + 67376078940430341914589107197059575887279032715889508582063727412768474192566903283314658070235649239513722961889445855277114450253557494524796914983970330113994912399577837023762036476108704175471773211560331346022735113152495992554569051062662139525286261936518589212941322664885817239196825931636000789051 - 44348967398515596911919186769619015588865881124611112446761295232500933247187832062200245045420549150113932017991355673834827465928982301701136511215531689037571573243310257910260892007103558326126897297060826045079662206018757025122259045413464400391088870886279170979602254997739763098141205503611600044692 + 64045557439052629355425795841847095395648055798102344300481245978252963560308448359332050418406339577674621289093564239410625384289434090506184438386605486082444919957205128944911244652807471778551060291400841767238122784762322158165989871354165564120757203501046074998188551678101327278875377549430469885940 - 62849922895012387875712929647219983634708469918763706636040386270097053544093083976426342322929158000655975265509470292654671302642528273730075942075440065199043677743955276391507361752898607080811789277234422884163325041958199167390837104149697917340396999194830590834817632134295706699513476061002541995788 + 20082482772924274366771081148253604644684575648194722126109654865929409646823813791319829965759953384505292986802588216875890509984608957899741609581918540579966032820996180518720797349779616800790175086768762772359662581286271036584860582442042533115873614697648083823710987993102611252340939434288259459894 - 19804985100969929454921225413008796357544819448557923881551306286904343824017588300790260657315717140045965389722283035481826675234342984105595302035665335427201760235897562393995008583559611293938390716312170722350874045835134488408972181814896660494840627742477237182925788027723288776123672207732900167379 + 1378245549805040260152343856649747500523775362329836117759858877793380748978725464905990630294180163058955854139512435387651190452696095296984917041267275808917321494365169459473179328863255528127310703485785374394771558124710772338919494171419544781681137485972715303742091356222448595325335865749127953003 - 92835327567097877613811485482506641074941730231409319022339672283906765818265490527032407363993745819093920343320682278309797439351385749589582817567246355583383694784530316280925789804720766402339237533295804382122851532971741718056945590177304745787538007453701037123399752516537364560183724420668235646800 + 75564116247923671222494370111564700710326994273176678991463288797394903891824878020553055409248955533172554135429113364176389398388588146572742379942972735626341309179630870954744731815389751405629500409248789501359563320985409088431575185890941063658701131774503310643966119115326920682082220184303733043991 - 40035211669633080705899144775398677385122502798906178427255596529209732861150179464848300537395065874667816661214694506464390791093782466051928923540581597543416166794310052174882247371367844807825151647868867832422599953910356423791569695878830278135088936743726493240520571110863490857969290227371431923294 + 60905750387411569601851272890950168327087837733412038134906042008885916017066404634304835933704517693941786549335402333216097303721310577454931281319411877025154228590848606235278213125815091423208852271093414719854797089344556395113914515200024380672089966142909158557876463272446595801045825673930783335412 - 55454365209699196284888814516829079808721948079182809886217831124357624969323895550413024532173791531444389989873987085696067273412904818646965624967098966259229100018470640038285891552631917154431383387871011127313181232142817904173124907113694044946951806277849219995065139579629359047651394348123756468940 + 57955433768878167308188094458175868119760823872191875028519785684721985222529826434672031057141114366181848440128759938947619986234229511803615933453487907415225329519256129282812288130023824320293040064051679362817511934388759109109526686492327424824325215501550754582314377549939490746101379934522561854835 - 14359598653461221478071415120390217379639044269864721564628086821794398963584759144010038765064695838923358419145551736782576180819948662698207649063065970422228547323040905485446904762023386329305287579991505968631997393071201616164885942698883459330132293243664123323127624965761061970109240479060877062892 + 64033191659789493364817207745979539442570688641827735115016367088350894483620601906963983554496918357704958845667824406443390597444576063293798375450904426803754333987939000179986185481080309932831332637104807826040116248034503818339777421944138965644213589953099627195140793792667468920001804874600388800471 - 40439579116086756651181498224182446869480933796194827895241115414816113476976482113596655532784526297054592906897315500623861840849818316794773322375454253223305121321816534862436526494079810132649467636204457030510661410562843013421828136624580313970069414950672727713551007081675744745826240005665812435 + 50777288902502900595170458613921320460900775571293742606457586109279199149189753329447236293761225809860646343377883024780357443735996271463063101160436991620615811237027543360412850022630043918760226720741390235869611267258907279753496368372841041863063545273417591408156370437799915015911961223126650073349 - 93983267269025734244999939733562959526281385933032608830820018750195917396187188577580932630365223259599059443503026155367054137384691396719140061465920709648202504085402387104103297793756445497108292734977503604554992428407070156854529666028346170011198602299381739307665441074887266920967588153445056326886 + 42817980663368704610212637819957509822108396564983348588859664994512396179818436620617821164646467376835833672010297114318364501497561845914858340789920005673455455158117198454395513302818836202550563104186545081036536820852284056896703085725812567458617867104869437832727204365234302656954507162248135248603 - 81577226104760956386553863083105794968514449485571091852403450514304140328667654652907811090415187057848924789172007690733938850595091228591319580728351913056297757128071827417089020452417081851642676803963898944558621909751503258360120343038553909953668103837554726182488934750764161755437321752264228435191 + 19036662329209663229928741832583732499405800336840731488226633559225431092281756032935464768857626074377483524563916552034407984674940635006347944857397709509605526640644999354256540626608591445674880098930603797113986403905354671328758081279266890860870680304005508422656581824659199370174962583457710510390 - 9676260848429091063545118991706866361756369944495710126680045919849058109243943101892649746448666667854107314565395881227830388953229933636110431647583454914724270222476000124316798303035195640484957358602605432649466998236790028584687531309963823620808022135420157596102760261560851972021239782688742874710 + 82043240299570525623126581820588811700624688811417153715976172099284923204686816183864349377048024406215821032995482412617824883561196213511927228932354396291404737320793772877492485404947538145447051907067972436301513894274068027146075855747695630984183321517390958159179060449461721092580434052229971814397 - 22633130246367693176160091468711817522132690183768227734048371636030360875390976099195800254680894827836873228800269863454890122283168471710690300432014177512776973022773791195893364435750712979610908647344375031617950120589984951976305342188197237105404718634863087569094881956121640646793297286731818068283 + 77392347277338421183675841624689476107284478052353015206756132057425140682360891856001366246361869928122121052618165625432780301489183787408666583999639201429433837861448775609638173397818041328597641356825701124604157942281899654267046976863410751577249108235689224126635413692749176740820338034415112067288 - 91931992010637851637815084629202293018206232316561299628640573483507136290919407399256057023714416535369422579578315096894857009198484322540057847736129418484522705821178748637242900749475228797402639334770941300423648224162930921002740085299414442324547638118431732559499544841135810754973627770644248648576 + 72028201067426546546280082443289275879671807529105776236956193821792471781779528007694490833884584192677763521850015371177787362912546648807840184076193319303528853741077617857163931825466460974533887028351907409050091168911014380387695934975416603234396007672655127952345883632548686679479903538028713634470 - 66967278711217201365942478391782082339856214654248103013373845652343518022681612244875981410806915442883551783563492873475670512801855276271069278170226693542358303519680611498649734886036927763033563714875277460810612382030106933037449883939232162147669144052262276309785793803677197578777325938184335550197 + 12255648878470423751068423356323893392774826341785614915630178383112307021981519280166335262223348671980908812513327532602806849422589646994153560358671104840595412244641278576057518522315667118428993602701705188968593223985960635990966294657084697428980878224753730345141873923062782847201012463005545665570 - 62138513049686917444235385070209047829274042490087626391215378369469461256422117801983135251673723800114920981335811458307129493504978994443454908855319548106114863464617760984412423841330559877222025347873191198562521030977652757430676217175796701808889098415741522648788136778453196754263354764673301111246 + 36095985016431144635721074681861188027656088662924712982168683799800873287290503618970903270621114283779155533494659724886314237029512882014708379039459052292469600187443339251381642304717774043207034647883034456246042706866206542805327322324708984095965938464964964647932741304295486397900670902552001310947 - 84024578237594122975312916558654569705691817568321905739509514113943770826850239392415753634243714224124783703326043031035089238234818585767172282238166815823585545732145881926156881615569437817620186714794384525329381129093890510532779676639512167771211247704314103273920696896067039264724830550401714881361 + 80948038559657430990371269337210335976365397953176278799248511323533788687307740373419627805023314580984391598252692995859432423559733661334781873444876184246249667314390576164130253099828067806765345382846512238710778217045064475252203640301017469517607340831891092382307669183509195706522593217384999335606 - 12053504377054915054503378051700437323140565423541774963243720835879574336985059941935664545545026791575674655201926266014047886918803063175728504849772873991778921115910878146309722168686441787004153589338795287003927965011071466509470066388099303330322560477620744313152977588241749588301209291041508935168 + 36693505821380412654377540650356529377754076801806582580557077840288804399880273436647186783774096874266703288256843983501253145676304106282190289367161464429096502598945585625428362306867850876699658776816426761917791566496037952936089784283977842575687407423260197722010684911243167084998688595473116853796 - 90301193825401896096971182397529081986709435914514033795210074437253954253075756304258308405150833910697400889831586096671389866469604363329185479965402656370109913476065403677255886876808503916182519301889025424327869753541405130815744295710373697763165068143910844021864335329563864668285766064095784407513 + 87921699573341397172848788592195376463537461500547227860924217115320623311402005854632799239880179110318877398935167125694676805057030906718075766168898962064451172965897499461676488693713844123952445781122259108083486782726392704632413291529321093066249465777701984090780425593734385188476988639834088214975 - 34165239730407632167215445229447874740280792011250835686760537793783663382327224211067880673232894087976703846131397233101367579504430570196137989824640162107189613485053252608636398349262318951647116001884145793230177545899530372911617688836339290386797333274621320525708889887064842900413484750465575344756 + 28295983024491714778342261597494194861485291845301417917097402861651218052676512941414045326049854821849606858935962077994401330445881266422078217290772308553187620668720718316578049210982733768122792851997176605014437351501429648404355898472461393202589321265524022769646212392898833227166541657756165398719 - 71050415886101912505218594738786512547085473026256836166797814405351439161502171530488113499204389398571194652849526814749869411294250842468678948516854880394862184661067576922587287257576818970199151440907630655813500928491752152674035287248950719547667467036311247393750526321147461984763817058577704147304 + 14743407889625628345451749057435585944032213125741413353890821655926107307092509646081048361777402642831687186396731521339881061161472126019597674131293013456041132838849498439913897972396890197173634951585848064927309263021273756794469930841836503781301735288068867254281959878575928090948418574811083968560 - 36895101542795714741483779970439905600430579138092309820241291760950619681437562920766743077295873452349686513765055321951146194905792209011783049250242528930774911512338156824630984978932796731804313666997303972806085633087855830781341030617926149728243393519850220435865707402383192532351662074408668434382 + 78774632241340755432391616241054653570221183144534020156134717303516631020858041405321944410779499492797615732769575516469720807352610090094174185117967990287342962505116453051565702982386950518970984784583600590823655192929569361912155312476675246872145649018021897005154554015598988146820922419816638686844 - 31844104778664009173191654873322988272071303461045671375643631746401132564611719275629131490984644156243043176629129341035382011693987218984912714667164281118271250289503667106133106432930000960703296209735418221124912606129194715979216605319276842723455157563545751662161986530784225014132973192372839219829 + 8608597194986575540138943074164691258353792448169560408088274148832751510632699408827804360189617359517460142624084294758175038615172188054115219579782749706795227964299938111221987173735640875885802213915710093194296414764964003890616725750349639697110133263751866597675681075301422872804736713548175854270 - 77935453069745657434231143892691307693775498200066844999429151221376424705977029468837829861101892352866735202115162124064369758565200325834245219519627961444536661521725326187729076436414962886214015497724337507061529137220406839626216804630268341739115440067889651039700268519679907018646019857186650513790 + 95321270149220772491085732140908669768062957161988640420465889282775958396335867153620040814710996731396221998483581364112489717716767725917689030874378836748387132739182552301692886678570277090169871658004619748740785306221050662377580229544846222979059218422418241102959977265588779664575231865688916010595 - 8710795858568997442968077041672817087275204709223068915103965031447516234951170468958754519235319639378004999901146196420583218948404990387274762326970335422986482213671012041831151847810684375184026707353423240087435213362039750446498323482730328833784402332088531301627434416765744288761449598809141230917 + 92620381175417193969837521767276508855550571213582259979301188346058066291184295443044664963386881736408058708530855549668350521126416693382612947310687859002921988372760828845384017506169062566513074597018730128630800160202781981297501060845072839970306411832006950009166536731693972203226450440341475272421 - 40491082473990116639872868596505601997501995071857406162690490694369128340877419412828839964496437955064378062192302354584409104627854748905185997865573510227671608980533378678755501707380397546157047265967697048703022457346136461577610981707819655778826153766008946750498138367984399253321467372580153520177 + 60676186009366673359652791439849982596902499680001839017366581429117175097296422622434499443380774113111195787807237866530277984690725597870353239784493406700883963993491585950810371582891805120819568352413277024729947683099570324723006900300966020099791094270971255085101062506566337745885277400374823537352 - 21879183509626234250544740747307893151002885500318612358986043095462326529792102259527469188133541040293441283790163712818645291539941621231082794324667105054785355669684365602589616867326519696400666690908326067487766858058575664033753800195028329220355169932854577254629652942287439480124304512101475398977 + 84030202672879387255655095649673829169071972413910635736537927580700617795271117969466414595217267623656424784391250160958986581508154360360927409135938783215559809915478819620874425324405312596273480446692203942727287295397698100018294919617013698350742669728573957947648794044942238458052843027508514712988 - 73627684165859730120104877303864576536570441317747742673654227087361524667101417837252247061903499529485848359516648011968537254355003482551572023922401141333734169502284742881567178730598200776970734990514605873206298069567634759326649894907533080764359355889739677636250205124791772948786634695735903423179 + 85364523320881670605607726353360763884633315032694188741835760262651472369757176956514373366766514420695705665814702820386096004511798959124480076564948471715694665282686379899041580479771826797669630637130344783197842256137596245451115923799005515624239398671665122261312530784511583359377337384421170573714 - 22689899155899415285010390604855574985507370023932135167778943529204236424993146655330175604095186977449618683217833193617495233595973937242787883651799840824694552506382839054095141605336217637781804081563299530202635167315413627892621316930353348004652123765791594703737366785220025948695134588249738775594 + 94526443803376936297558920998755419494369939016861955746502888782433405887027959272481718585817150653104720343423343658449822581582386515510518817957371207892915687075345722068317322990095497440182646314648597821879236560272141379562373488262236719101318571943275516265265154463368505297229237809461494195229 - 47172931685978369723683993573957272261469135488374255613854436816826459877029443518756740895709508426570377973468828940772437737934219594572246202984725605845702729589868424419872990566356544644574400387330518815086693570746911119561941341913664539259252712340874046866913088270766247068723793044530970439931 + 36633791893948601902938117698779427379582680411016678016067388076863482516422336276729302659260207582615854535477813474749770307132271479186548597106706866033915736260835598879798593853188595369971985478073752407448525901752975210846024067823083296665755307015014713685730203188253107977710147322712010273292 - 88053920553355123899464146090567499798771140577373494891905858560558106117567882004719792253183894559858858710823589997299083417218338374944805802231772290022245922286572831243229245238011188416237345712997215186960592787043886153718820026851502824629641922306966117758582340105587473419801997712933393458066 + 20144126585201130680459240221315249416561321832275428757784662316801974524597017019128536330440783762029243892200958095501659749727866598895727145731355046383226204994170175981856481203069401041988753152722768892296412439284270663164806103724854050300903410489064683714099981809697035799320834224928000036042 - 69728537587418436801731351104202375075413148826604444705849183741316379278336477778008749780417853922945500802540579889665457548464173178232542875638800019149145613638245893462073455619348465182208086871348240499865807061551238556196662116693525438073714745758907547813975013385383469536209891975629062412258 + 91967422334048853263118034372394538190047769448051176953668939933197641000850956757415236912303562100865911135949859831474644817174160579982893682208864513005427614145409888083502569258498335433541714268054587227469040295897731881855806353718295281152531447608225128652528919582916341279075057743749696126780 1 @@ -3100,19 +3100,19 @@ 80 - 121510506979280294475555951515618042220902760560244114936256082999728584045727004956635112530507536748299124440626763662691229078997534701112144714061943187836221268869197848804330480194827683432918373397308601572042723905779878861471616318688723323278134584874507289378643006693831141299214475770968077890149 + 120564857984981324941747962638798678911890598350314358244615815993849736816819193507576550583331521236807169704468731979188293212071320917852050436446938927215973092029399232335334040084182839533089293167034542686596582362373862152138785507048489762718277659042773568200478938203654693305750451022860962728393 1024 0 - 10786113024139632806027821329411813376394553532754720801987724968039111307010407533206104817963382736081619149325548696301956466730330964812736228032635136704276953684675186717353928168908207991646217890427364048686875063974030706985824355230281962421699045683299328552366905159269699165524103957009454444867933959900404864269490872706826410124496941475156763365992899709690565996005427314663002306586630867555511772982630755407674591390268574657383503554640562617598774916389727621109632047922917491355710039753095981109590128724621251169051774876508599352543250242610623735912915977694004470585292205683411987663056 + 6931253855226216702082726229019879568408812238335167724938168162402957355824140125795575798405108015232153219938235461101102140211843747711425134583009380339463962425432993764600478760366114868892042504569437038191714498703477845748876335655989939977200538503858776176020115232343320744830654007424364957422376790871093904374255278612091846360806695155830880866355857081556989338049386630303992480203901552238771879666635864614942823475160328395649851598024524435643111118956582925187250584479891100869842273052145077667569496129962738605829132982826709769124357486451832181569656115441640771303920829738310701643482 - 12265742590555795337112275423316364429787893555390044392086577126923261211406720602521697557602273193373875148608736275687596912617522142724778013615655753700165411186156887869713064103113785395469589326430632728836622451323259552720475436900442662106611254613813633373690889042655646171787318060314118464601403569110633561521126654593291480540948355917795074477301644072921931428487257292688398864933361063951268198001768696293963218255359788860315012067953961363316647303672442047557272846591014095765179085873691505586802372492873704885031344784674827568416673317138797046556950646706136363400446112253168142749694 + 1547408525747782385878721687756966527704844152514299050519786083575933489899924096234213239446958694073535980775958095943755863584801133901899824071616644088546308486010886683519869148788215596482090887803403023270529211538357828109221366655028615673610109519123841260460059416441663493658764639163323919918610201832884408542339253226114270256897017951690060760640275848556384905248269033067418216028193826423531025206555292715807692101803929407066982833831179159622922353556967800277725631723963526215097861010091852898024841817782972248157985874930596284240920137834222621039122430701764496273529408269503232074133 - 6657994001188806419886894807218694240426739032031826163752185189756478153651379259613647431501466293577185699621005510312940659940692971682470467207220148443107057331572412443275548313574269510610111723871507751123028613421947573896683102294237228819014282010358536035610141132903740592832988179804731916594110990881555271138012621630576975357221775494879066961089995888791466928329693333653959455139590750223922835299822378978257266467888718801464320015079025432275884702211559419713554062931905121103357336135080737661398073037818364333687705160217385235403999082883957900512482523116414980755358445725487016341584 + 5983205571717586282867622811889452986210815444775894002054743437675055869900630144778323787996588271884487273946922150803615812045963665775874779643398126185754185650873544306063155504621083208420364944965569450507615369442187442061763136406050455691527431054977013308024971167991167080225078997906587742289587882012562174062353234425248704230813590472624352205954691305985505962905748797440429727372194378381743159891088522190919235627615615112684590371619834559944398617907684814951011816104253296302993138050949231086265648341220792035744547797891158269232896347049905209936169154555643758259376470488899088432586 0 @@ -6179,16 +6179,16 @@ - 121510506979280294475555951515618042220902760560244114936256082999728584045727004956635112530507536748299124440626763662691229078997534701112144714061943187836221268869197848804330480194827683432918373397308601572042723905779878861471616318688723323278134584874507289378643006693831141299214475770968077890150 + 120564857984981324941747962638798678911890598350314358244615815993849736816819193507576550583331521236807169704468731979188293212071320917852050436446938927215973092029399232335334040084182839533089293167034542686596582362373862152138785507048489762718277659042773568200478938203654693305750451022860962728394 - 5796895974172437492544144793427626883248313188238611533776743346431752971712060062337672102675596289145984033691057997756737899504455407414862532161716330517853997822442007830944642817148859544393139376525529865566910132319394100321123786732989942311506999412008183302795698689803657529549855867766592208044289773972721861492613052051296563436656848017662202314004966736562267376820710374444085150889495204445812366361013684032242122125275783200084255553552950197870971751079706748184976821223163847338132962987467483986231029156030776519302013622470367907340792615470661258486400540066173071824937985804725727465307 + 4336028385111726147815001043095701215937251679400249464731668584636841122187073549844651287375263704297608321911861040859240865398968411315793275495057442543634161674187583292972523057358303022975460123460973316240363003476761186104218669702937985844483808757216718994429378855063558961362272063389775774887094302093102088538169867756780017163724756017616992840918412434953159547643483005723879640892396659264613971961929529314304509552454209739093300578596121342350549600259933439699845561796943901879095696527902841918660535695939330902847200316672365204574795202496714891137126390505195181991733254740574997797514 - 9334132150899210655595588812755101315334075756790948098975718459582686698914156481642817789029351041195469981109319181472786979100849229198795661561040445224585835473352568655076936514299207844405611645694763879315234916931699279541384735429588781493731214524894392779314165210355489928106112093012441560956288322150222719475465869765945562698229929374996439045182136076768649193259071329181655931705216974675171900159485698629682677204945191805613337103123557869007218401870803385992752766657957727512822751282569474838764256310064650322668877568639278136933641304297309245221973894369077877640396449482840043170085 + 7111715156719203441579511627343093316880563209062864802806344276742499366464158817829138718775930588594218749123943787713590326860947639373864564282824029947268088349805860550108730280387658339981190232482623484982374439174834877116686436671195580514131470778427654725084924629124448799196612265828022580359080248927532900898991124300932285010863954221254827726392012299607441168423436461031643163700425820384325069503460207782150973529472882052866114136529491268932133627587055849810303416630873100179797429930633760363177954466759343655727282199980438264767603897418531060032264242921774884579783768607084722365056 - 1377790254071645059947324094549676487254515645714809274535732945222449082053135944301202084111214567282126503500710609291655107325518738390019266148400683954579791768476823262603373638083688673441594535337185519655360457520671379515665179956830347209351632655993557731304406978695219687532703720569445559697961932318517252513749339855720326967831606853651067972748586213693047293440568237514004939420549277247963684148708551273307331878538932870140325722762588995988763827156755069409002417932549076986338492703029818120064758834223611982741823551550973278205666167127739874368907487253085306159377733594944490614712 + 7594416920264591198246990827002814216876333969507908996382959111492475454959381784174004749315854372591307786303926241373739058438322429951092562629907810687835019383619418840558596533768375242252843494774218720637561305197606256889639034116996829562661654229364703748916037123737242498089172398937675621060703293253420944951902799121396834782171380734244936766937893161730433295210962165992299238940278476645656300084820356472016188530947424601157142119571397162364347095852810306018656555424218207019484461609598151813619378344961997581415589516523250920455797871447665870949649808840157094144294416353692580560776 0 diff --git a/src/secret.80.arbiter b/src/secret.80.arbiter index 5c5c24b..a30c65b 100644 --- a/src/secret.80.arbiter +++ b/src/secret.80.arbiter @@ -1,37 +1,37 @@ - + - 11950762107909537350060952269521020645878695760193930282760603525846057587806554815094523521104902266848862172073516396515293981266544222696303689575679263 + 10282347821454933222114367259934963600584842331613258034979183471219458985301353069286988588019730544515940721670026399066894272541897181478208100453249683 - 13175783950272342600841924601347314399988046001945487321821990428621231814214489767799354025148174545769231329723983315405166911333852088488706008391567087 + 11486929698068003991713838123742033135102868789643744235934348692989339071682296444934992570666629524370002876271921671162450307785667540706284771187955059 3 0 - 2073294799707653017600145110113538326076491881541614117155069117475770807788056380147172015008226254918870505627195399079504586518341255785418322476075347261809964780571883426558126627787563134374296616179709841449508701761670364531532017633926960733359282203911554312041013822982717389240288447427481400 + 27576314348896240107935315148787601324999825534947770418096910443189298027000129443373204593660342985224137906670068716812530062952204086543882451270981361409171002899652664096586758489731826311646745494478079928696982967754383742490023935431297732471224094003773431222033011577711969004714859954567583192492 - 32869779204267556481097979646175248862123143248406604586013185278235816782547762141511971743455189972295801791425549499760521131535722874944681895765477180087891797293976655011148725964783373960852179322296375723285025689891087519327148311046438493274309598075601966212871272729260992155581127366427603089680 + 23370310784392652256912539083514142000156427498019822366618404188824508148336336354578128893176737210382273552439487929149138286792047317962217410388510757439733128342711666933050005233307636449404961248127334683260365692535234736124017766101709424192757283995149305691379422722311088336336061828489627117035 - 6574765771239051510693575395150673141350165411264972578631984466590196664108918513128311267551787187021890904835602988245841793056951022092841756401312668985234779270034693340894544747106335466599232384082818857856277326796544095150805438065952231398688169834121612874031122346106967928429944978467439038441 + 28665211416056774056851382521483752712846263576458100005687280816584022591101309257856315196097533413659611167005121087395200754263475646770651687549485555122015099223683571062680661609344558502608586689081235028230875891600113649294366375194035407366147804579283395995888816217128285630613679619468877063872 - 20830196608545726163291137862504872988569216212697564417058132657171140003981777343448876479560846488125961087153395589954336722703613499422338069568951371123100290649616555364861908642298014457843621538152417165857616518248777664019971191724471058705408808809133425429464534115323644093725545260127901083283 + 24984185750096843857931258351198940277416948422038420854677388344673550155049614407337235309670644547658119218251281854249762860778789354325419475883236927989204453523639434801882711016828985336039623372849840391694580784351823299072289911467280557578995979887676808967636996328601018227442070981419961603517 - 30959894024025487399815803016677268168168848463290107105427427304865211257075937673941582824655085305788321986576266868035134816336724750617485986751447491347606598495920659760406490691264397440272616134889579708053813822657677648437818238806499736869640350363505868205375048374360538571959860296488869277908 + 12587858771911797646065646736656758746526526977337778112833043130079559567204472196561143335986013805974180245703022255091339305593737940434929801492824616044947827555409875489628143631057091002364693253342698589904253438198591804307310095564622260811267963449774957218347921393936271551137454576430282690890

- 12096005960577363388999260155101637833179507043784036849982630910527682037172629899443002486906950113408067270161084188224671326426990944810878072329020463 + 12139850353136591772048403577597257332922970665698715334076815268515004900145884278253342074791588635537328389030295898413321402694938958474557186170624659

- 8903774041731621234481378127279740442077762742782883931060847898894971336062306473430985998563797951762537249119050564412958767262408804295089316397565079 + 8112911051666375987896535852127402223185608319363464964336276132344608253778082137271025372933175583979290611033445715930838932933598860911028995847306687
diff --git a/src/secret.regular.80.arbiter b/src/secret.regular.80.arbiter index 01ab40f..b3d4795 100644 --- a/src/secret.regular.80.arbiter +++ b/src/secret.regular.80.arbiter @@ -1,24 +1,24 @@ - + - 9389546402921297587627049645265788268434092503338963492977327595532238933961807871220944819362533546753322479715354900107739479950030310351001827811230163 + 13143170417187957660470938716526764314614999982520858138330616413537957849879029023907334328885507695722907393486222731500951984475455784007651142848362699 - 12941041213820048005326563903335903511963884344433311048946244530033474686637914605177227700802400909002395876610026225659032555703934092684401608696782823 + 9173194454460762910538659620385629780501596413677481287851521098236703277029176205272438350898384179260440415763276056833543564627235251036946361489160507 1024 0 - 4985122580899764308016543291009045351432340410485834641143997046182230494318531341784629894246378583182145628505794089122734533671674900297851335419555271433807230937440194752355059938665077394806899897086995732966335201711096579137071318924795172512717759099203468052253098448099487298954360992374532441164 + 16202643365771618391911125338654107656810060001437980336808887424425772297754972383209333510421686639802523756538939097727988433003188391972788988871384331742129451657084720040087027002621079454985653553165030654566400993391878546704788135265238084029718002909000444018352266047926472175867452305859467197869 - 4593017798380916808117102598593963776676495536836863737939721441995182560333040268481761163428396193592984583557088838042866220264691214376342562039035903424691865479144522392162696642929672904881406359255590391671683294386142432680321616588793522349184510007956525389816786472260045233498954112459620012950 + 11794240395271436725376772771251152323644279896555905165205104981546737137229265649614618521556004136648254173162813582852247045170379046873827360818326858087117766789999453416201976879373940813679639412763250588064467394920813689899308258704148207068880105583331224911952259893934935376623255655122271901759 - 5046860187275098808537211055919895289087039000160969924671798597186438018075236177205005281038054178876424924796279496134353179059237500004237553257389695949122651201109016834114649242455069501137672740770292651833617610289733772318934405113710644257808286610368501748739635971319619547755083784933024776296 + 24094659181840289375832479918363146488702754148915379150787630744504609942953350369038560345305503619317373466839289898488240518420228639205813354734297738701645622117167952896009381076471911100909119001870889738904545697081809563207317718159556037238235877444972358298370786496968875514247575916812543984939 0 @@ -3085,16 +3085,16 @@ - 15512069615105703501201070972971727879258238790865429468676370995234894726657914414800181461389948298692364798915968284935626546775620991405989016943536420025144257337384301549777569446149741999478277206437943449574035556507280611593129973294580187525571679034921117411820757414247218492729859502690092277139 + 8987127124980906595781131165060294232527198180826928135329250972599100514017375837789799328837035819916841989748856713355046154926281300171424839881413478659374822285865786064234713073966724487058656785865564258777006978678154097307519340442183501679184098565065246382775920016882022856366797576163742194976 - 17466794227879290150547031702573153810897503540743553068714427290654890175227727833912782999227798411664453979012321112101506750397292188099015366941797129403773875124552968633288106907570806387134009147201504002452150412804309332897008848891676261354033810828680083855498408368306717652980773608654460548925 + 29424262169693791573611582126825052598076388449903262987897330381075027511796727613296565125962667650334317356200476367183434132480556995979159584257829569807955609440168497394042675712806286823569222150651940737877603775080532455966070811928549739148656974096498263669449358797545125193683508224872460204458

- 12939252621117348557466829025072698227591178241330747225816236400402170913718989815188692742388322135806460603057239236281647863437299346482518901810324067 + 7559880015594227641906889620140363423704488283094187347221729133243693715777672894025379442102091647050815289469432855855319751683773023003059175344890379

- 7329355688528414697446371844848994425964194917646002458970895014983732951555833828797559176218795748311711522340828708808952354633389340539393828319802803 + 13271452413567754187273414590927400852826960789987393665173541086007681524642920729367956489446182497753633765156230212188245008240822682653261079924225399
diff --git a/src/tool.80.bank b/src/tool.80.bank index 33d6560..2bf4136 100644 --- a/src/tool.80.bank +++ b/src/tool.80.bank @@ -1,1199 +1,874 @@ - + 80 160 0 - - 1 - - - 1024 - - 102680714876620505251519589456529850089969700556564489253162684638539597335736793998411151385396668678457395604056076455447346438315008567850445832409559094642617108516105196798178870587832997740211486024550117558968151215813802257578385470372409470175519459389641067956632237921585676408120047405305262039181 - - 160 - - 5 - 0 - - 22923320959192453636423682385738922848216151492993760467429386172337582699603626592667966029063069617300543105850468927060751138940226489398256413607978816318065423599404211058602051331171774528282150565237472007558045410089374975467684411005456109694572501365211023547108753818220756570663968723659519304097 - - - 53945843214081887230506825685162514221944851452590973433147320105768347799035010333040104182762421540976644457898523154200390719416111152133906850059276116624692455403920555815325946146027238316284576081046322930997100925534589898400045746221732607763907326046366956881978962788748138738898197865947329746712 - - - 84070450444178810764801942593139363675201942216375234211388549548441399502573647392486982654665114331690463175765687779989817013063882187163233753732167024252613425512245014453169195391341163601305650730846456990348521068770085139213305228501503975315987245346014618040731218552889355850011776660968387243547 - - - 44698200531549202972232618323671999010830294896874839743157702137836602383560583870323823976773804259743506237545914357368122833664632525931647018821826400373691255566854594204199447306752422310463080619172699838408810456076477752430884838822369737010719356000558487625372180909172327760255616921931423991248 - - - 51872694200042776418703861731161005597647063174327775542825481250710848362720927717796283168056945768526737370976647132055902410582742570384884317599347064382929720903764261035793509472519152983496873672379499058845114238849894388800999929829175350045958631291831128454260459997110600204624172747502759593173 - - - 1 - 1 - - - 1381926471275670696491547928550620506717346803979 - - 80 - - 74302589183225406744708406598986697445626235129332961159539629660099003864681279676025057169598059221346100246653275027988998552977043535171844663879396255745429680604118860556814772359887881646573360468171271074105943974872534642719266485854337939537007792420 - - - - 11 - 0 - - - 1024 - - 128057967809655946190316507735155452831314572900315216081434860144597217324346737671800302572587640910078110732912465466684478941477363845874613925338791275068167816621932721309235605381772586248486970010063355049965746801462578755831359666996420724229475198439645105729191854361248312605304734475323680662913 - - 1024 - - 6 - 0 - - 60811636929475187479807521649087606074793642064167945690350627603203118950323257675713133373687111123714663109087066267073458476631246485001894677569393649603260477149691339449729864039552273625864812610179069562367245786370215607199308088083101677805342992837524421920973047652387594443568045299878715104011 - - - 71560986262474260038579847733152867125395323692136727882523150181177145526050032346646815633503819181049097447083396963116870388315714388861158191811280162852633670260478236187402519672391362381543748430716574725648848677812893437556332455280083345503039177361800148373565541695573258846852919928924249154877 - - - 5358493014159018151110306019414188401443366482533390828878588153924237270657211162207396455592545292115596564966717448066974022571552087820343845293928484045368156700279200787884399405557838594314421227423879077160333472477688129275324340290022874614042967407069455935447388415804019834527557283355835583238 - - - 9440403911953510704955609199118462522546969159294361115679964001969095067128208202978671380235142495494192920664243060842431049236464627103331285996753378993464968648353139689202039972946351834805543874912252883016750152554402795151625609573033493183190907610839726606922080056808873159110535921110839225918 - - - 34601241858178235153992489154363566911322825930412755051942961530163789553279237024169967243263931210587905323687670939702730687998131084839805896091785126613296047470576600055262500331821637746680489652121076447750079042944735474064557177506619768477733608759334395601504750316910835074596407622363931297695 - - - 103450953660312905541961327136746359534991486059040490771968614429013794227835017626759804639288113432551732347712210332460709755012800755979360542019454727242090797411218789006851073710562599252458946620552051918314153874747184637728072116094587384838416002546398982033848043597058533784377942968102172250659 - - - 1 - 0 - -

- 12932030508236240029500379006897241129956579101695632927019316457384709196393771888005191041903025893215144948249883093198348475278546477203390317270105679 -

- - 9902386769664478589840240464665057831133423813801796716114600855905375529754843999999225688343006241702587573209999717516477696656645009688715730598624047 - - 80 -
- - - 1024 - - 91338861134529173742636614734321283317712406433818139285229062454925111527732609262828687047423080667973258817589805005737017416371360314088086808443898371429020158735259589920882443779130428607594850787634565846387075036083051955856286100630464641033224957452092909212599715224401427904042049536509604893693 - - 1024 - - 6 - 0 - - 88481512963655310506095083872998303955363103665395614689748950761935149130592150567352051526842435768907883513122638406071951993833483039104880894260670448994086429616644971856997369229550170174238792300740232364024915015016653492885640971890845653859579668498528250516917066920672069528744730214455335881003 - - - 71420609539497237732868765033013438071208066944625734387424793864620282249588182875061993503837717471514509627177747945260865425509223920765478106067601828682271744524355493795121669193837190303641492443480194307599715826281960573836394123684702869297115710345424755375986644023739445330856168082010838417938 - - - 36213374277915021187960501154206429350509009943784937342853640962344665273661370341432812162660134104129081769292257555453657933322026058920570002011215114885632603237420344104120014493999772566832623489577942137696416594059207873047026684531831127098662368796483679106715230357303209903005563129291440998125 - - - 88784875219103004490867409187796580439336028275646934064032325734642172796350750877782655631487263690600595545185986973949637793376040039529334242727841787186152368722684829777472113434707623526142748869410906573019822447060135044716736888756586491608663760971724703067383426197232527066117239191970436021914 - - - 57669682815414213701829150785790139820922208365396385382451270040015047105011059602270677532141334599848749895445377163377797098101769663138915670832338561398070313576223809679656089041902001668549387570675942187547921753080749715443394968434937329744189522351133848627606864859717699163427995004551470140014 - - - 19430387956073665040008742545168228237366626380409449215616316415682054432029605888008345798193251163116713132110293851289775570086405711097037612492724618955613522669964620645767675728759532995017555557036656920568589220029848250912688353596366989096421783410644212433994547565209779383923475304673100010441 - - - 1 - 0 - -

- 7590313132316003273918078590302512319095378293744922263631882454117055270026174894373664622063534944373597887745176839805114252442895212090845009070876059 -

- - 12033609093892453905143611421316260116392442619100420560800021219786194165358425170485864622027203788410560571310992155037737755554341786034296519732793927 - - 80 -
- - - 1024 - - 171795367802537336198216850040760302817719433285673072064016704297509263294972920968862879995019333546807716681922194952612358665832924006994420672781322683935998563828829629166676961578310364216820723333284118541610355614763234524893877254301205676826968663616237843247997193664755408992255295724018758287453 - - 1024 - - 6 - 0 - - 138781939743420141798085654234587085378791442750844156618218315519623156030775014083940843628427157991650536995512183146050090364430217798889903276779395691314769341501283521555441395248293145295446229257598584303226472282606025256289516823083353133125249557574662930559464988881796972570415006594877835195261 - - - 168420371175596160385314346470541456127930556988792934601264980767954150761074401191883764002057676025574635595559453082438403114835695017344400960903147888338845250647685131378444914574667053754042483424927960459645361430078126904416924147233083786086593890435155965855696708192722757613306648217414021209339 - - - 164599507864917269230220181044130466242640054454386799153052272100119238662434506377210871322725801768535465849520862187042461522458751851837119010844326508994699806461980159073458635731317238484887665362257435016594387971946664996341942792674855452076757886270233668811767159399329679444242304826944461878356 - - - 112022954554594868430694861746706902810007259966892035372848716164773714721760248918761857377457366770462246217862095078291990529093104794681337350992919876990886726535142991553290065736768419334005963502455897767959870639353796998608846837617297713305741565185682566104560690180553705181428610482999491959762 - - - 20795710379390313360149837901235593902809611922782438280826554162582584185176550436631972790505407403299851110962435492486911884529635673218790787915570636384717044595376003628898518022547995524968409598599237503027024128328270655662334146591298270627006489949537312823974893037600566816074625503584300399503 - - - 4461068203835146920397273122878996496925951644023334909782795888195924230363311467297500231054245083629066539839024032350563196843805187870921285704555947110972472049763739700924273806542377974583744547273338787688284998293736197541473212310650426901783545952048410414287416361433915264087521382790658628498 - - - 1 - 0 - -

- 12984815465718139976464939024875001723229509524339667690378713583638428557083258852077827822717623083472588218407867051847898495798522333139201280857415519 -

- - 13230482039279100231549510012632674263858285311407266814423211632024536906105987751850169694421467822291911960770965201757888760198835329800602452213646787 - - 80 -
- - - 1024 - - 107678493864345648666726963381598843005045134906745773568855127179729298765945796229988935480734186762723475076589458553114861073591179889992284613957887798550444135071834300620151269193028269405467525155137973905598460168964059816679287733081423902287277428322195154969572934367847409309681954541961841211929 - - 1024 - - 6 - 0 - - 34780567649645587652662047318280460216197594322629290659397343806640717111602043777551795972363990570490561518129361133754971748815062877457811980871870613895746761204692874944262181605786891503668206019069701677551111685254064897625906904673396799614054762342291638726110702862138766341205373553864835127477 - - - 76770578985664099191449798911850613016440202975139749844785468106943538467941487623782662375335620379715667015148235397661770125559100524256505138827952950374296533996410404476470347577736554558794350087928716157046782489969073300743386412321573188949782078100848155826141059164451205262811577282438487833155 - - - 19375132007991059652876546182462672768720429677050803522934111565324016495763732172744623907045335493048740541182304274405106110493850369225158004210873483104238595711350247509966292622988932139561490663242014148110393502548086758118819001913181597386000596861820476450726333113377798106479230138706277155435 - - - 60332745111136671951489671083751897003291069716229419557442175701860610038139875996851654495020782497922916125497030526867835842055895873784260108184155213565134969114645958871640895775675472360543614497922018081777590790520072701770098022598964534954182431602697737796983390272144688966305745888541862833949 - - - 33206030625501357397902828493305862279894195856045523813806319914644617357371406587381751252409214237464923457683937662308696252667537129026830911327626477920950026367523422037741403916073653057335758700270326029776865721695045422550695292453931419295319756838382198216938790815705554550670037002167896435708 - - - 33699591887245320183352886957374795158953603724548326397696125237452265579267587282433792785552885615789973016310923276732538075279246287329477093697179355796742915804057038950601496710139911151519055346593812515824483642829165138763105492040862107512334441962031341198253373030460133402288720613467576919651 - - - 1 - 0 - -

- 8086445429826466766976840778602128556427763126861092718555085428344325918560612728005964357058814370039705887555080490065308264985839108620298163559066147 -

- - 13315924134871259995943889972263783197676570583006459035153156240747027875844241230942104155569988885879710233246386342305956396267067502039128111156418707 - - 80 -
- - - 1024 - - 123460587970465722399480599701446111042791049424678164510782348298178989524706869827218072757318065802572872977206189692439610889543998303448261820274781115343738147716328254096174904353808537339736300386924394267507766388682907861666597761952802807474810395363126049870826035575374238638068965983199376357813 - - 1024 - - 6 - 0 - - 117318302352368229229163809607702479318456428030157262995598611780776136494163450278418011369672196225024705223924157260734348678181103931116903595932563324645629923260513068155684589997607606713365161836567403767936006638718885167253192939940642824452024816730744123545240701916149057716603434108694989710429 - - - 79166656374368484214654356495255053395213742590584206280310930719755653489957925930346542517512620192097650425359579247070837443830862748231859562053718573394014868991678211219437490529223024342458612272327848652593110612340785752785585712120010687405752536405399684337596148008796260805479427829450136814686 - - - 40871868938993875410426205996751811587721008167871813439166564189762055623031521920195950886062485740929198925966775524584648439881883879228755988003547754790287586711275993853306093079373185290320968524077798129432974504079981251722944994855192019937284992580655570885903256271403090577186422692725459831875 - - - 89892620900640290140283566392805476442834511036692916092709883776370123872836264775868321860590685970283545083118729182759253902758383167687729739268452078465233562037688700620432639773342196188561501129246210605848453748122752153274263445164184465697547705606339433632142128437959746969173608800415728397931 - - - 121709777035471737364513670422914240357059445755508125094002474776054087244214559702633254647901247822895427221568520569724729995389163298559564480170015494003587855303221851200035414262844476231232261394773812801023837394666069091883472673028207084029985001140015089782123008327089253959339518752984564005371 - - - 118368291349285147157585550327202423335817645258822478079337019930721123815468331635525068128544253736950377216631099734999157547924851998471340790034858629390897530180532960195293567558086925678406847565038276833217752653830262850771875793504960255927890257698780412927440166594709334246027496966288743344300 - - - 1 - 0 - -

- 9555708939079495611355915185979699054940167384681225047725748670929850843599516084564504017739835259712298489561139897471949689101632199222485821907536339 -

- - 12920086699748173672215351475621638389273860195435770401619903340348767410733675655724985891607786607181490238978036873680082748103544680734516847406362967 - - 80 -
- - - 1024 - - 115193322549187017758632085674974727024742715278872315780926012027804032179761766503288065034565716892785818153660349164554433828067796365626741896969380114418490544104123599167386238983295022270967054328089602503480562145153230657099035975059011144762714926206594556617956114445259820923651026107726741377073 - - 1024 - - 6 - 0 - - 24958892788118393840566891402925212894261112686881756396217607457946596306978104211815943994414797105011718075194617345672726305027536665064724927900756862036945765691966423524893153682261745384165128816990435797199717205467355245097126693946214610135412865735012562961328364927779026079460708512689938357459 - - - 24288255554756812624762197103340158750190223778765519768405807403357684268583138358422886605098116268755079717463816662298139317595939687753107981126116196500860143071528623840509966635777831057754249172610936632021767758934196939105040316041127363794901161035243044698624148907282589708017305528332080549401 - - - 98573529002331715221466911082616318301300017750678680593832916072820765087229700809543111818625003499979817183312145679122909425246500434114287363675204505267732119319754784623466080567913652584576116756111506044251229410873182774035682045895464671545948436513530383740487677985431898275771829011975467387636 - - - 15353985435509734717647205939924424374297140311254436480413662376519872061599819892959995176175891437756042491481998969903341756892089428475760114248462830393435227191729623914880110584220456903870872511626091038462298582250901312945423814102221099309496784542055234964849111850334835617876760601457927418206 - - - 17455735070449738054682884370746228687686045089020396998083887583650988955042976829464912841928464950070337180970573621151968757420751546020224392735386909098113189353739054276774294071884697288831510878855213838041505870499205405393921909645992766577060606810395305981595413168173038810933707942671713337798 - - - 99078282433460334122518009685435268135390495565166370788375980674406524442600154170383521782130678737146346515697587435130336220692226983416874121180076768315197607852814628471856417469605509753709709939138595158453850817740160745949448738764045233343710173080910805476352529406131342795794391893459845853249 - - - 1 - 0 - -

- 12673289315868749623674662876792526399689105251553138253832866963657700201414882030685426404271074917375018034885700283434611314390001132581350346803957507 -

- - 9089457336458712030766629429550151802473559635837189343206196901440327945060996267506637537707282012347200095016039598579224618836771879940545740195754939 - - 80 -
- - - 1024 - - 153256019031673973848391853908671616024035351852333113222956212092935054851555144537037154882131071118335109565772920677334385665987953763710322752551766091084637014937633351768184250877579165516584609222393690507834529036303945036774013832353124798268158248184389671641362425541416312746250270416649359548041 - - 1024 - - 6 - 0 - - 15220542722079887934163021578416557040815588753014948049895358680874401987354756483638187693890778200226187944576153001580318905767308325025251868319513838639170229388887094978609944368236261084829465326382756814026047924860100572370509240911903760108844191920274365232194821110327754051188671927504786123847 - - - 143004036495287445500008244565089775614807488065311228319771443644042556939728810959906482515000410036341359319395672341423672298834030730662358936098971678898328809479500096931876973317120818472883465991015596717523641856810286626439287667681040066261020458108584755098587931772918575340120380122391279580630 - - - 25677830626343122473800267766987258667661454338633409925057452295050792502934635228012969731952432090824067546127184820674269109763072029928071755085679552707171555102523382002859000834013865264250888579699016146722510456747010192496630995123022435395781861793364259724814673958020662700602026307416209911222 - - - 62246636121089263731371807945897520167051837454698735241698439734694730001470335211863614247823007078485077900778766898167190790567301408855375740484748340320700390073275392868823940948653806683445411202776990790067823595294042946536030310357110325099679964532575421698733314704640641895828452919877756100011 - - - 109179195904717079139512297958344482754488860947001124419866306632211947700557001412569449694611680557227002345132253379015047209028361122554436255825724641792181226048045416132300441370043533054296640636019094847912470011225895961907747561407131402046285049780521232862899425601689434905370686341564422790289 - - - 72256199900300051197332501127222934244256559778006179914521739477500706464599171904600643790797361089413358501039731833363101680832368594873645195342133343135647784788351460716476460798313313942000048638227363109185805859595520325671335898545619147866290785844770980165710956429961244551737499380764677597447 - - - 1 - 0 - -

- 12342925706968186973716394535438921214235596704954293960842039701459560221839812692276085541622342123471691734600034990812679842472477393419982807837038439 -

- - 12416506642760835382914337605608007021637845840379701356494020719607002466778798575874134408246939316921404868882276829304115457690088629985078174708274319 - - 80 -
- - - 1024 - - 135358305767271858027595880716111530935123928737890043873187024055476620530906467130993033452699358704424795550755169128359841746123492797756886097936671355386621176058979935393331413499392989299082084359031846630046001377108741347076252627789379769344457517235001038532356319713316214499718115421425871569433 - - 1024 - - 6 - 0 - - 54594747011594798877885888974944176740233826058214590608446121481719016646101845365461669609593284564003581366359995275781810124519910313811380876256508679688339828939491429288889804388749815124253867496416627880709040603044538402764027705232404679640769755327219879688706197760711345784098387646185164981152 - - - 132783808999394318707408962088834983207010415125168788915872658758155889296838532193150695880199623917302322850691457856799843846471181568246727469377964494204689790089312937443605415487457400789095132034217110410411016988079403293808537223974569707930874192773033393470383855778863425429691879481694667628909 - - - 9473430635930700050486617160141204494342095550189134899476751191276019107931129114087093973056080555668662930307913633328246702572209665502366737090850431132340577394193612418080423291630390780237790223606432359088325373896719506291987815760514899446327539193574576164858114835145863147018536204496364575294 - - - 90024838355001075777783195974135066596911088933953254044502969121509346778938214241043930641227033089129624800092043075809246544470625613932569785625492513957934084324845138958744207292453298491639912468882105563813341034734148686353752495183156303339463108993280522860556963638419864094636988429994370751743 - - - 45914980508142788475969536593414423447529386876252836641757988714678457126161180788769040893130014877283087923780361131128613703067760746100124401445607902733176021029401905908890233576832489405771907746137014120822037941005000384307118527309121044551993381248785336586579186345829608419256901639247803554604 - - - 32911404065014905616571735182748738235851543040766582724263411775153690607184929086994340376410140178669625764641435927432683863591301353627927154715686151567872995056710033783341401210111884942070839872351093132272880604910175334910646752963148483903851675232134333338877843861382949858872798355076941765109 - - - 1 - 0 - -

- 13318107756312790859351398116542175724849222734068960781305693360971589188723148557676433655469259538839570794714793364814074380377642061943802625475030007 -

- - 10163478794734330182377840913723115665713256953124119469242480062221283140639606280259659552725660927524440315179857892001570482716740571281058839906999919 - - 80 -
- - - 1024 - - 154218268867696507002031865996832738977246724680896068886617497685938467688459935868916544652628785991317792030286811386804084216509428288684761196875989322260388889257097276677216400072227578520525641529006704269719639306215286673007408730828431211470630255070235631883821820735534893283207489831811866541573 - - 1024 - - 6 - 0 - - 27428799928169371477008314260818876148937722875877046040065001415256050285544612261240610068898749426541489168818274025311879557094462504325465143718226701031270459513481171715674711056192203762896591318737473272520615104809732143483277690473125331986133481516425478801944037361281857855867037438256343773679 - - - 105450822515849266246824784593332752863996144824625198279966526580096181889146860866466836912483527896334247490301097916546476481609859267630501968068493335890437763132841945935390933265030348476193713724966585347250648751479602155322327667705579310128424156557476020295924929348119910434857695122123769715348 - - - 17917586169419969792153843627847724624582303970451816452874219660498616008632452910042480347537075057133325092544315346979734775101435525533629606020738633039620963234297245636824119587829479049303232294479234284130684993231299911772911374146097317218619653947965414360245657311825149559284315208240541584049 - - - 83614794643827277304010494713733702635853026857962232621115526420680432673836574945397242148810823271595098760695291447287587902753143969200514260996554707598388279117974226336910323931721647138761776637137666044994683003226962992826724806567215542394880283109239037221417111570642218445097975627548527092539 - - - 98025334882817542595051261918088236466491396073054003041122381828466061599594157519317917789905097080123705591326984935802933433391754654298972150414662017901502818342450898330664054579806253102093229112778500389727696035428993861323041972409204375141288230032727654233984733937127115582284964721572192907628 - - - 103461867044654386108007921528414895482662948754475387341985070060736686576950492180848716520576397704988373242928703953709705994705234961029080392502757613196202086877221834313994327801773914413507546181585432001324248533541087174089562102726527826866350806480335498036140946354815641124317115290718066663234 - - - 1 - 0 - -

- 12536655577251435153297128528495279017070952231480978492276109251795186322333973692359731778853961591868183555794714823581445343414531738768400801564320547 -

- - 12301388350138248799753824840982869068812246029803271748337924627397472168580398090458209842652194733464336605766181794711010942109258987663347521456971959 - - 80 -
- - - 1024 - - 120098847776259535343644334068493409247155794818213113642226621008837548248809756144435391881962615325304472487122528549774300242072619974184058684501061116769021957277559333567971936578385761656133295119311274656165996325688816719676095627842254071860445539705183362636859341285726107647847880667038640384469 - - 1024 - - 6 - 0 - - 78341596191867165364462798149613513767187976045933270925524314074332359105916239984156112944388741605555584315673330918240662669972383036695380216369645786077675668119525313091263106903931060310783249892173696572488213764160500898695655888234795022024571259931035380458667979043363731060752523060256425326493 - - - 92197697267850835637041615816893083978440979223485010849369520091954329556817022954840969220750091574955501530801737742911131398158522167774789346516688492204741057116830688290864687904235809951324327245011263476463848478977798273152839939981363192465690825435376744018481972214855855772912890637337396617871 - - - 4748293030592378955093724566571489011651125070696427417853949295886768378111152102495476227775576523833542397763054262265966439448479602453489588304595952626064095178127493676309959239982750742094802606536171334162655130645407695836907472484934442915849957480725551564249920896993846998541219569493436633204 - - - 104584900904542556799078527703080866806316560026256596079705108220072609345471701770134318641946110143937813605502326970885364040335672893811516334052832715982398959853556119074396097391674101956889279124105778371957287930683941038772719876857983940733827806167120908159325650830304989434548687189098427086091 - - - 91477000374004348014105246188180409651649243135776551322813142142044628230484208001614477763449794744746082101984365227478095962810916246503069968738835364911647338508489896420278550004430041982623071421860079472688566117689119362544066175205618057687399701666608286724650867268340276001512993623664623275609 - - - 27335022029071511973872915368479831202151720242800820669365572158467591925687227633305136848793235934543162969534704442560517668695149887836214069200974132339079102773406068766037767764420212459478276529948373667413279044542607587605142289772231063326758841771162863193523221664294299814482921047353670436699 - - - 1 - 0 - -

- 12065972956960263054303683531293153220877545209080865782763360344896177242905958506299126614232867538807178063979363544150515696532612909118238113675335407 -

- - 9953515411036989749571851292635891899300129938693414036200774667401727577909694530750019470986492657545284851625143349646524000492135746632402749851724667 - - 80 -
- - - 1024 - - 167849747908102684615783031952151303487318618058226134276355868669627336908402995742916429082816062902544246840315676375600682020395918653886440543549039685487527686497944229453172069154889512786032054308546997135806844060341575216655718028005098196791080486235476250761566643135320439910817103719665970114189 - - 1024 - - 6 - 0 - - 124697971864257013069199803276420735672381775609467161633368671004811398338592994292357677388507254846498502768389738866111523924342131234320910182832156897093603904400854292861082845611922732284956492433793209240106822872232125951145778177387397679039918621121927819973078906987741480262525622005602565399227 - - - 108887781890361525299548949264309573612532412215054221866945026350960909252554790687820537292488822159239096136095460817189450475839784419203908369203805504902414189148576907397548005367318289848718165066768409808513010231990171238509327686404013042691377114557387525251911427307934702480124889546002434153883 - - - 99965937256071531833352267584518740705187568678398481975025487900445929854870225696845831801035897840798993192645749908958835960887390699965754669201895122689762609842067032782947025374191336414827383420980245403487860703320619493841364508653990560873053561052051848165272882782658715485304580849894447481984 - - - 135464487014068006350241183417277199933512080629319393539084556152088647569462879342427336794694607292779308330281931121306851709112290516904611886868248721653328973827011082831762202172003407136709090048796766379233700381954200275601566017619852103033202510881086909114257203408422383001855075728038739087666 - - - 116087460929649477650719239236850579624411409915463138669472799334909075618371332653913172377800254417621211492605964716808216033497729198457377469580439281611985552152638264761588841398460105860435413320874653840732276755863584448068058447432518834882323032920701627821579231087160538498920135097072056339130 - - - 87022481899114200452477329439521478334907267121400160768484310083510672665816499561166856734334611173826744984646636728146751086237799447687536072677043559995690196109619136304467129246411278102278767648846219215263506982413472377610126752110280476180152080765605425555155921191279654185124388043571147181327 - - - 1 - 0 - -

- 12636642715417859827101007353201088998153392966769625361518956454328272594691632711789366661263629504337888950179922382595129311605158283150634452408979463 -

- - 13282780220042989825847520435951613240963422612857516952397101500145285194109725467697923880234771831873607951414903374146816937585493435872195952405446603 - - 80 -
-
- - 11 - 0 - - - 16 - - - - 4 - - - - 8 - - - - 1 - - - - 2 - - - - 32 - - - - 512 - - - - 64 - - - - 128 - - - - 256 - - - - 1024 - - - - 11 - 0 - - 1 - - - - 2 - - - - 4 - - - - 8 - - - - 16 - - - - 32 - - - - 64 - - - - 128 - - - - 256 - - - - 512 - - - - 1024 - - - - - 11 - 0 - 1 - 2 - 4 - 8 - 16 - 32 - 64 - 128 - 256 - 512 - 1024 - + + + 1 + + + + 1024 + + 133514169406519291856741071482152092986830711653805432236049101860748679948255167015586973279637205031175362709763820655668225828023894758021880067077065504052565748905906694850545234255047042654145643283874645230503132929228035928153484073905895258887219253064882319961297665121131916709880607734650721226103 + + 160 + + 5 + 0 + + 94407493022606357864805633027122711421215663077905008263774968164035012176011572617691072943814994191148393051024993721835315521681758131064676532643252609770612176241071149702914553042913231377946461976950086431204888208745392304208963757933619019425403873801118477268077877896621571737928518011990140563529 + + + 60876396496328682724097189067742896920729147349048265034433293478584151028846489695084196248986066630031991356096243255322100960388658243651677577289640120725516441620242280434129302299332905863156247397640098201527237751017533828511235119313794130211703569638743646227046196461621665179029678407970528688409 + + + 16121046626221472427047751773363913362974048990766154828871688671127428775447979844645572385001509702306477295325242354456782158124350935269066301880960134943074997659934554179554195604220270207074654587462102008232851521149184541486088101866695754053797858201040921279096905137524685107305175160336906418452 + + + 121141365231466073732580863259433586249476061813949627712529179498916008769053166588786965207007787500705353318146531687568175831821291010939781915466584167820414666799448726753535192924031547862879268463002905040503696964624426975606423366915257680903002938806600630068207161742151292518910647295361588443118 + + + 33224314461995781736519314217203018617785247730857387776163308491747362205194443026254482638590245033389225074027255480484590167701410741184233295699962334880861393829214748659537994405489406434431530722514907615173145959919085846684149179289734587238229307522746341982285541391125592028510085508219582487692 + + + 1 + 1 + + + 1316339470914471129151760768523498072453239604329 + + 80 + + 101428371903006125064816550802147348331863457871463502755733431817197461065801788822033216731636393277352980645348510209962447083315259924556325636320920818893079058726763004376179447886097544377332981309377503984706350117896307481213330735384282162062083570438 + + + + + 11 + 1 + + + + 1024 + + 117884827860446563781748820406944154868475576600056082227519892174509471939864928225082965627109723952518920653247492719570823152187792896510133067342200887708846589512704292911831151048649360382622812569691999626824883040806504671579138444829886940892254765946039569794976422303781816507549109049679998239933 + + 1024 + + 6 + 0 + + 31942355189938305852400278253491349150729688128553144232246584639541711212090413545313826597682193557038043490057947105939176590836354753386733329966113979903437456252437032911749027125960613408259246704939227078007939748329163439671977914324835146281052742998866232945211038725583265687929565458344264054347 + + + 4550021649489174116472140519929523416228107123011278739084333317553282015055539078606776876259628738087448376993801193251451673296510925225577265203286603857602536786561404759589364246308126556696956729928635529542832761098354583198224869243960094566241455964353338979039983428692851228856978392423794950949 + + + 98525615558768553523914561253376055119761542268821255250597253028346424125130350074868274485947435823641586985792345325497433954872969407934951660169794190560333173906597212226368946582250749168564730926579316927997191630230129715348247908903813833686806420864813754316389284017259958075073700483383393704799 + + + 89663797310710481585546636879600940040870845166614120702021429261401463257347897163074462334789769421900452608925911291895572355565706941920835495798437301038956908515027090193540437888963515498057343871368193272565241944254509568583688844659457132999087383206998150658836175132856858909250296732497537741490 + + + 21457799638701886404948321513754559680118192619039196726922001229633285404795091272801906087942814278147982783234165733955591079274024965234492215069316229534452749185795475149435384522743874369634225464873507029089660645472377290801538517394750755050835750498882822488302061240043291880701805970006302143093 + + + 24879191227362488219377381481381577049957493151049769929102026087396701785224290633708100552404086846452744391838304415822891188453192492898176159610061346564782016034128553619840613515194166673287601988923324419982793733683797161684438643192675577287333186394307864482202453182364510091630821947512259705046 + + + 1 + 0 + +

+ 0 +

+ + 0 + + 80 +
+
+ + + + 1024 + + 92435280162899905227818541573305957665639782478377037313648510745437811817555025601483783005628430969232699108353806975298468602730274201576631930706196603478050594879475102858698719560485267244320059109718904786781293125558241769432373971408541617163594457153761480240604957087650552090980962289898118336333 + + 1024 + + 6 + 0 + + 61516019093539692013889522697286036751162217165758828070676191516869766297678416976269631962539278818264514649210773243551046294938085009932344325798670899473301492122911085724309342816888922377412459516289367281872129147128430336758646855410421759958716822027587807362922711228417719722839395907964513862658 + + + 86195764223387104034899139867022229450119089616066033008791071547934482828715292874302963805552889935464649997789968881823966010789216481131065557800140492761661914684115444687908240220491740505876075546249934530273063882017882729659422081016447947600980580175537319215595989718394304054636476498268020887557 + + + 66090880709908820440926264632961239993160670449209213713065113125659161881569535642744015944108361417649865322192754854750656897747581780302210023874052123025509488799461322138861808485422246123702913641512293891767156217416260726435923437923621235163974924046349645735951219936256285520248551621357984200192 + + + 81125320860070179938880065848584819614630717544442228467872330762439573624113353518044223443413956249653250229963865332588219177607026039053375006342887614760726174965389629354184063324949460856934792129381057726723761089976497782913975637313665436807476439299644379836438720037542937274030887765022332950404 + + + 42948191024853372336781821822838469391534701059252248238922760174581267393299467364101875293266698319938587952303110295432741540429597838239579971674213937597007233804673654039095038171298200108271416407429017881551898207445919625982511569321505626555444703146552854257930612423674523893871305333301482115766 + + + 87698069206530146708416569926089359158707926074712914895677294244720457855104722936588485298177092433221658425594437337314375482226768898429874945852464258724477090828692398398144898128906117276775843354058069732745353466733091900500154881956508874379162035891509934700427671262452014036729680705529492099380 + + + 1 + 0 + +

+ 0 +

+ + 0 + + 80 +
+
+ + + + 1024 + + 120242265353891692554300045922047481873580412081814852312316278622610012412349699141085216431251446316868063073124296564519534495060068779191495303283627533326627116847544544804997593350195611118016048754703736074548349446801901360185268478166518784640348397414405147608143291973682476695126277116966216169181 + + 1024 + + 6 + 0 + + 90258808835373211266855694770655044928868185145409526443615154154191997944839992853769564627311147578697876919149739812953847181213933287549862005241929231372257096606500152342587674117722279312186256165834197309493940159973417538085035126055798524687669587894223403279211403653760632211817983476637894304079 + + + 95635760315469768841556933363272102346560676094633536874989656401813066226987733867860013275552737427738418730187137928849636066572005798639578189573626173484609652276380254298282553868702479356631031823069006860356338776077617044925000861133490081420034654499982624171571752176555774509704693342254549319854 + + + 90809018349256846647085079930808746464320966250951060891589388261560943833410922406369114896370501540909240081233789871643257253089156607856732076276514044636902151971445366184364318741027669227160232321267327121969454955011265415575482275183909976122110710181814691280753616147233693076187996032716203387686 + + + 112132297991559111282309568934986106372227545332776511795209348369586562428716345400127899442176291678476205959109869119623540619046127607537731277578177859025918559240273126067892577156097899600362383247721738309891854219841641551677630501223221768927686994784480299553651383548009458572445476844510419444688 + + + 5789538500428997302152053765650149031024869665962513738258606889955438829279876194740040809078811031990471347239725229280802228731211608783856103005519400004691433538942100949165453901328015475435322021383557989188105222750099545067041611616030258483633056143002925555086488519819730112780351452167807906751 + + + 103528436909609892521762337424623938814102752421274507158451483493684724861097190831700506383121848310049592559612821637042177463512802670355983232078856256022574919435935414921922732720648430254040655899791362394520080079567135623369841064679602672188076510258361308829687727029943321584418119828221246053484 + + + 1 + 0 + +

+ 0 +

+ + 0 + + 80 +
+
+ + + + 1024 + + 113974307390270829704595349578913310066722675531921575347137523148981703426268705549020835166781529161701493646571840430557158177891602008370788878183990720643046884785630470230010981532651847891407035655981145786954186376179864063254465988631797188768347843073277670841142392732297237312085416165057383775689 + + 1024 + + 6 + 0 + + 6143898232765286145077892477541836045632297291014786325302713400992132298271213296221332308996378104555543752783908808080870783020716085260639775842626416308448085260622406024209346821632861627259504519975501548599876346806760533975070027843440034675089073283329862593112803470393290357751556498842796719860 + + + 45047482677736838274299288716528407647175537765347948824711027643041704760288870740282898402913040978889979962245541990130335022898385886574447509499743699981594370456407584374111495111435806897457488183267190020187277576068699128913434781769902021871890426617208889662327838109855812184713851004924404598526 + + + 82795697583534266367376842511520190853446581226742226985762912111941208390541590347878324548963363215104083195843496963031072570334386362588214202064108457053405651153780670929192329770227149165245609972443851221676045774787349013613321978666414216036883233557120172098965309143739178407520621356057220556901 + + + 25880229906355987417048443339662745683496025929307390603325798098758557774630310189948529708618013477536719327095324879057805823082814710910504642840272322506338772144746395730377654904280294077049515958084088262251276481705776256600484578926821230685483486549704470274617768442869210622846367240329758009381 + + + 36744980390861858983016817581565444641560245335842609931402378876909295379769553524692397442661219757977701813033692377191780367467046935305316012100496956922085951918230841441997581526084427034406129464810799799799593083126824682509812576708954752699947843008307672414478391229642727756912714571481107882237 + + + 93931746498890597103118733257782712061507278165609115823000161580218749262918351236671005232490390488711179832465561874334923731589555445823082537357787848231793992771931809400771008819473644215961618693484941638519012030342118706580926098868741184821463506056147426825693726869982947485920885661024914645550 + + + 1 + 0 + +

+ 0 +

+ + 0 + + 80 +
+
+ + + + 1024 + + 98807423102492429930268745630975757312710442265987489391626974722444583414454367047761528660033504216704156558226635445104894448714152726863223308098442320251156137488156682811350460534966144962169777948722446229012470785374308691808247430118092391490829696229412962154174967136729426052883542780187389840317 + + 1024 + + 6 + 0 + + 64549827282573569661223821683778433142336875611542593274904848250938069885911249987175542946946869658654282518380184975606622371835551768003315199613988394666484889185955670078231084737208632907726374304014481300575717327888290179385195747538532425373380009611168886639127584368747545237913900986215352505640 + + + 73636250453944878341096432696334200702698206531871285264430397543104072874763632445610561788692826208691030515907933400338408612798517044523261111179649288751848730442741693053895368332285597955086557305203862706452223373741422033959305849205040367245396977521877380037962376194077376744163370557253796629545 + + + 90047699371842887045795925098160727351604892636180734457001718284143134011696968894946980166755598291233833586774200056899638788187572346966643153567962585437259829811315743909634908909082662481035546710725615427445514230073864976224268279022603497482873805177426913822874578427060538362292293084071476767061 + + + 9115882300533110533320125402430271883728240251993668377826596639411369393262321640454776088641577536813664997052927197442219365129684692546950544551008194436381949150276163843112366070082676673254884778299152128272748494200409822832169555332974121225603697420301650511304992668583600108610303388286957045975 + + + 64290257130120726933698021141152470681302465088538506851346181746788653877595161786119540130822567920477312949950982718070648964511867563833771395006562083493221576148599839934618407836746231775029691749613004808232713345896320469909812943026675413252169526568723297467597805871308793216708661264167033142319 + + + 26845809112830748951213424348778157379493334928631845602203489071032159000331814254666954321270335392941976157317373195459864559584016635745815797217483247587359120905027502821188835036257799309335618326919938054255712160946337422482063900351741886195278935583707209842416244504622114437222075089838837886709 + + + 1 + 0 + +

+ 0 +

+ + 0 + + 80 +
+
+ + + + 1024 + + 101508066458492758073831514391925207728099012205679652123307354514934932734195822482169528209118418236549720855145624504946315772713373263971122898931978448309382517459432566431767420930512398053933909962008429517559844882055507365161791227718388693079346988835714646724856579563155533056841840764923482911741 + + 1024 + + 6 + 0 + + 18094966270666600341757615203803958899771441588807403731653637889633185672846680622295925722601058367035900949809123968437072145633871030146419062724323629362621422178964934836125666825322583977098750643218772327199992871774885105970723817310453460139848128595957114499840166274261548332434662918275912562326 + + + 14519911411498662202350190289153079450960998218836862510262716271183656169763576646798026314706174683373201052543945420646503458773715132775635944615831483316942230235827414686195242147536461207965078368457369405716788284400327552776573272826443021111242598213194457713242796289163855980809869567692435243061 + + + 100829822604118715123148536176722814436072482852093886315881279658513551790405251018005350575582092689997344944250083661855004161854646534370764614148220116518252981194897290980503650663034332261761867902281915726459650291968214075577051702923706567392314103476661712678735115666275518472786274656847904898857 + + + 36758619800988867408554878881417837105069663192880003669872796599022231882132182770823159932605886945571779971084253648386944001078974922999576213946881031655276217832482121846933216754595936270608288445584519714020183665843778047016075233874031641473851910344486972578252635123798061401162697925291763818124 + + + 98954422490737878802687577073751348339761851462939759356912069691530214107182670740567414245254063263249264911730535276239211847311355135218241999853903438057185589465587228360001065925880392474421677199678509409007188573134169996457141436012554787080165773882777594876976452953008534605307630575224450701816 + + + 94651555423243727925284836770595215446033632966373930842930348982337095973921116325578222087213892295955414708791768767604608023678940852466452458914636595705401909589557837187572153271612758886005290729697645320266548149309389746386152913646486076746529707125841746516540210381399967115662271604255517413799 + + + 1 + 0 + +

+ 0 +

+ + 0 + + 80 +
+
+ + + + 1024 + + 115905442434334203435132030544363120268524352413227438005896621348074275338040717306850044416905034343632867520965599747469172782203400980983630741823323943057580839927465570558565483424088928521501290827464658510566828325445473358000628142454989523014953064689031322340286882493752816338186368925981219432469 + + 1024 + + 6 + 0 + + 103143446315737471829082018856156260406954006844151030128697141592050942723618091433391809283342209458536672169365730057120090346793397152165987123553892129060449489457979013897620539685162986136801165135141937188268214662182715789151398082138968131043082929543088462857916821829536740403295702055175095598126 + + + 21093465283395374439124846403749798935063364734560099156636978868310227496863538821086544738303350518658093170146346808049259906216185082462855222489769641277255000407021891287322265304591178496166873893520819194979043135142624917331665674639130067796039052804092101272103572693044811271392604926388251703731 + + + 105151249446495986005765875051158158755947238850758463317422621112390878337383240153148379880370092346800008824264379404671662956855814974133259278244329840344446075991005107496919710989594420384704764989485250758107128357896269609463718710814344737596073369019327376455733926447818113105507625453962069909607 + + + 61283933228608684419290795465645764344828540004925936906714687714555336357892232894989249781579179024102093894785668325502689663735762444771431173254788111349508550746367454027076673709606263161971293566586615407282583327678882950530025384283758978476202435841309787228243218133194418332399507845652872341542 + + + 49930744498336662181889151989204055105279236092828545858836893186940055185938177721837847596120377695235132423481308807995549601244142648702684428675952371139939449031842925865964588468162060345934576026669553663079853709071934669626745050547661854436198831062735632699655522347568180307658967101565763493932 + + + 44829684898021575993286660294598884158901788951731868330942301576440477841143427209536779165651036231914133684408695168475861763616827163141782429368799554964942252555412245179755130594670036342985806080785698319091152870648452879512582177672829292309817942236855923963950699629201136751220460749324252717791 + + + 1 + 0 + +

+ 0 +

+ + 0 + + 80 +
+
+ + + + 1024 + + 93324302492808199130140038489542321888348853071302806650239414385244723974211537483002520341183837059316506964556579623620186543669899937696064920977911668256597669280463423116955319717917019567307329889476298137481841952456027055233366000222074063733100318307941039564854618790300804147830985687325329262549 + + 1024 + + 6 + 0 + + 42518891212784696725875858055650600604108246670012265276077895513552577725321677717588029878060259738949894497402002060357228400555391259209731917943432365444873826285643244113485444162188406783343509644219109678872983469142088638641874489401990559140873264641726808645962550714591319523042987950285592368824 + + + 75291549751536791992105257420743345182482577809046353784700594093704881364358216074711299705488101138734376783695106693695251538471182399552271475151254734544700337045526308828125956898392019280265133388132621200543975423058804645856787811148851522717906121145694781740895433259432498460659911075052464607143 + + + 50978175916447700088518240216053667684870673847420036235002792619092589262136497544266464200349207480546365928164339934414367595072612018614325531165268369051297212383456749468294457604921766282135927832621122626928487667454146002755546119901194327747621462854007838543528858175885057609806673983395026231342 + + + 45639252938396072705778302104880130705153407772406002471321793384411905992500567210171883135004287934787044232716973226648803660269945284537097639427885903326635965087238403327182838075317269650299400949646770303956474277388670860553468893703708785465699418684174038665570413912436960118383352524822143726731 + + + 38013186874210547666062861075258166760615109425952150905181518861143222559954119912199951265061172878298238833639914869507920009913414182196010461381624209332240497098198012120091419433781364518831155899265689531191334639603576651285598143897328961102301057307254274334431610639636216634019801125227946348709 + + + 85049252916548353233861447384935486895006861567202700674588370555757614508798103563404758820605122800698832233699934570829491701014686369240227289569232647169872898587084339236738875298924166128821057679454903543115766248069551533282505816819884277101573939884857407325991499258590780403494195166284580087207 + + + 1 + 0 + +

+ 0 +

+ + 0 + + 80 +
+
+ + + + 1024 + + 96947677654641129432053692801590282848867445537697451493922736175932291779820071272672626959724413690236039490294379429939123866825860419240206384732740627914281920798370575149622345956768221264142334426239991826383023910494298980445754886848334676015820676920651561493284042469908663704880008961798734003457 + + 1024 + + 6 + 0 + + 93749302618648808070217897839932241759814415997415916946749411987545856635461536614952884256460594397007965222927679175539693559402752396538067995516788344068508116895475192183259651494693509551606332501288659599202246155185544645331923459679475888979221040142045149331365734109627405766434268339318300158731 + + + 88591976259173129145635694202044266099805031201434247443121595993691017165775654441584946313634153970992495586909998094664721713372347775101011059850875572354717680369332688950128197230872808349269309706809734510460321403576514431412365323583804364538511077443962739519476627485839118989389915056902685823558 + + + 42575950840114286718689661351970111621686309493145709681590708158718759438529792314889983671083215003326041806393612339006301068034992931241850342792545649841897953309666223399999914234439350528155564258900577268951586989099519930473331582145218329466694762252396903587607667346075594592830912128475741773066 + + + 43064496291705458504524336076225049346473054921477695649886760113387187082672578485621759269622589065305002049069497915413893351575042650143454495938325980146518181479040258392048864545346376346585971672448094055650954566712096872329823465436163567068615396750693796350283840033257854477203383297630587368938 + + + 81900749380819745213546459754756719091332758119155758830804852008037016512803399844299304649149941960381423540431141486712755371132899745008359589903830860830434478987247676636962895590526179977137867362906973481166910794944997738649236165802384325814575656461706345495588898502027050522613609818469969609015 + + + 73333627947886430331559491955680856474978748460266600669037694456728286563389073586185721800259632662405592201658385016537795533052015985764876784938717609438086082631886977403727912391035896539429294934105757813712263919387011949889257183319012131022883624273967219415795768809726875302581528242985914413533 + + + 1 + 0 + +

+ 0 +

+ + 0 + + 80 +
+
+ + + + 1024 + + 167727354177575283296235069997706944355353371402089918180577267057334678418188810520847166932310275524601433320415852610631142842447656986744375591938652455411091898712330522049939659059253815074066643588980422099815823821431425085733238494031338015875267847707383566217173126797858012105681092131354068669933 + + 1024 + + 6 + 0 + + 55212528739765004956720425923944299817655186482742196153935612638315971089606710371791470971887300374978844183586506653486075371900381182898430539066219084106652951743708316804834474071492387692170605664852204193872958998318760673106406411891449815553933844588162513102725642256312542518804750070757616604443 + + + 125521134130018008881051161583842438871352764638574693694804582800910273289734389525646179331302084640744732360170705515742155640895254805301554658063613366304840857712092749922337120635191634218375909427765307324094526971694236979991076690133107301520235674510926743255560077520910623929468465293282770246345 + + + 27303183713310647270239430513109683240286173819802954448123370716826579313726560171659538820140717874966904907786980144568651508762043982373023040473117328625610211903440801516265401761189709812839322672290141710111675811234378045537265033060794014611679093546390659077026035074869442774684438338813479119618 + + + 20517582242241300162739877859035007047878076436157927684042252369814854182910736051330481835470387047390838383944925852375538128360809392771407702990039516320549241146543080697815027348163425712152993328929677268692798986107555590893251957475287165017431351063386066168339776732974946091902042063287264280620 + + + 125835559924500361026951681300241222847765186627319590560094438352472863980544039143615177234020520882988338756341863707312405580760526056693953575468465964827542336485315943814807501888912677108769795118067849939434629344637352963175567421289586227655302796471491914750593107108792591241163338619713760565646 + + + 39455839416613969853839100198709761408356671979111856804339072840007840765670719865497340923297196652474258832084384211032896876448437811056389073015037846251382190261051583382825547944914289815592218399755293578703245716253260448083550156430721377021938994781258611779235943999768121074336608266875538728464 + + + 1 + 0 + +

+ 0 +

+ + 0 + + 80 +
+
+ + + + 1024 + + 149156752675457829484492338921857926395681371289126433584047116593076369987747241360787492801209497129390401289011665250581771280217972173170615740750310394068113974975250202470798361382772362253952464329096594868484705113979621434446377598628246250036954003709660905146740293851838116686170958097567892794609 + + 1024 + + 6 + 0 + + 11352908387747846374372382544228049271726588897582672087730260980437542587303031785369398769863666016131812336180790399373380928834263083455154052747498583106051460044488432536118827569329724006374986945162805013925839836495643941497350480016011233155251229927856315435525160642066187837424075704643901546975 + + + 5924580563988316371103504749836805976866443182621838060168972348147805336044130858428361533207561584380432240890820748952337209665476242473843453104633480324663638050418289377486524710747064211208972874942925445061968821377185536287994789022308227017184318180048755277868646206644875967439434398651548324609 + + + 83860846070653179149971826330632184013457318647561735410747487053401978313658858920025339960888588834770910085631773586928930125338075262176791867769023543921197219909615115600759359245696576488172992510798761693224064657506266221986536956797341772968085239357580496615776718932269765843251044263512436015136 + + + 89144604640946879518870372719545566701496234805285239542316606982530333628450626702450928058204589715273784804359866235259218654233659016527471314878440750019724734697724739198635890891822991381467431972117399010037996038726427898442538884429809140658590531970908625826945108365768468397326164790721051678234 + + + 102820865676316346957912018152813405266463198626305524734449245075212023016341056381052983510125315953429184981187357888235332912350574250059015810340837866406426404037716528557357317424782799396883279997347840149250126073547177628090959516190544390191869883221552750620613996888907802058011003802412315246930 + + + 56343229955516400442946814456064441447178515408962047510610551463883512547127372526397886490097437294364011273783512771407939447206290009393075915985489490489534298740530908251463050477206993005369528943662202499020792507060230580415898683720172996453846014541031314731050938341036493335244923473917023102041 + + + 1 + 0 + +

+ 0 +

+ + 0 + + 80 +
+
+
+ + 11 + 0 + + + + + 4 + + + + + + 1 + + + + + + 512 + + + + + + 64 + + + + + + 128 + + + + + + 8 + + + + + + 32 + + + + + + 2 + + + + + + 16 + + + + + + 256 + + + + + + 1024 + + + + 11 + 0 + + 1 + + + + + + 2 + + + + + + 4 + + + + + + 8 + + + + + + 16 + + + + + + 32 + + + + + + 64 + + + + + + 128 + + + + + + 256 + + + + + + 512 + + + + + + 1024 + + + + + + + 11 + 0 + 1 + 2 + 4 + 8 + 16 + 32 + 64 + 128 + 256 + 512 + 1024 + +
- - 0 - - - 1024 - - 102680714876620505251519589456529850089969700556564489253162684638539597335736793998411151385396668678457395604056076455447346438315008567850445832409559094642617108516105196798178870587832997740211486024550117558968151215813802257578385470372409470175519459389641067956632237921585676408120047405305262039181 - - 160 - - 5 - 0 - - 22923320959192453636423682385738922848216151492993760467429386172337582699603626592667966029063069617300543105850468927060751138940226489398256413607978816318065423599404211058602051331171774528282150565237472007558045410089374975467684411005456109694572501365211023547108753818220756570663968723659519304097 - - - 53945843214081887230506825685162514221944851452590973433147320105768347799035010333040104182762421540976644457898523154200390719416111152133906850059276116624692455403920555815325946146027238316284576081046322930997100925534589898400045746221732607763907326046366956881978962788748138738898197865947329746712 - - - 84070450444178810764801942593139363675201942216375234211388549548441399502573647392486982654665114331690463175765687779989817013063882187163233753732167024252613425512245014453169195391341163601305650730846456990348521068770085139213305228501503975315987245346014618040731218552889355850011776660968387243547 - - - 44698200531549202972232618323671999010830294896874839743157702137836602383560583870323823976773804259743506237545914357368122833664632525931647018821826400373691255566854594204199447306752422310463080619172699838408810456076477752430884838822369737010719356000558487625372180909172327760255616921931423991248 - - - 51872694200042776418703861731161005597647063174327775542825481250710848362720927717796283168056945768526737370976647132055902410582742570384884317599347064382929720903764261035793509472519152983496873672379499058845114238849894388800999929829175350045958631291831128454260459997110600204624172747502759593173 - - - 1 - 1 - - - 1381926471275670696491547928550620506717346803979 - - 80 - - 74302589183225406744708406598986697445626235129332961159539629660099003864681279676025057169598059221346100246653275027988998552977043535171844663879396255745429680604118860556814772359887881646573360468171271074105943974872534642719266485854337939537007792420 - - - - 11 - 0 - - - 1024 - - 128057967809655946190316507735155452831314572900315216081434860144597217324346737671800302572587640910078110732912465466684478941477363845874613925338791275068167816621932721309235605381772586248486970010063355049965746801462578755831359666996420724229475198439645105729191854361248312605304734475323680662913 - - 1024 - - 6 - 0 - - 60811636929475187479807521649087606074793642064167945690350627603203118950323257675713133373687111123714663109087066267073458476631246485001894677569393649603260477149691339449729864039552273625864812610179069562367245786370215607199308088083101677805342992837524421920973047652387594443568045299878715104011 - - - 71560986262474260038579847733152867125395323692136727882523150181177145526050032346646815633503819181049097447083396963116870388315714388861158191811280162852633670260478236187402519672391362381543748430716574725648848677812893437556332455280083345503039177361800148373565541695573258846852919928924249154877 - - - 5358493014159018151110306019414188401443366482533390828878588153924237270657211162207396455592545292115596564966717448066974022571552087820343845293928484045368156700279200787884399405557838594314421227423879077160333472477688129275324340290022874614042967407069455935447388415804019834527557283355835583238 - - - 9440403911953510704955609199118462522546969159294361115679964001969095067128208202978671380235142495494192920664243060842431049236464627103331285996753378993464968648353139689202039972946351834805543874912252883016750152554402795151625609573033493183190907610839726606922080056808873159110535921110839225918 - - - 34601241858178235153992489154363566911322825930412755051942961530163789553279237024169967243263931210587905323687670939702730687998131084839805896091785126613296047470576600055262500331821637746680489652121076447750079042944735474064557177506619768477733608759334395601504750316910835074596407622363931297695 - - - 103450953660312905541961327136746359534991486059040490771968614429013794227835017626759804639288113432551732347712210332460709755012800755979360542019454727242090797411218789006851073710562599252458946620552051918314153874747184637728072116094587384838416002546398982033848043597058533784377942968102172250659 - - - 1 - 0 - -

- 0 -

- - 0 - - 80 -
- - - 1024 - - 91338861134529173742636614734321283317712406433818139285229062454925111527732609262828687047423080667973258817589805005737017416371360314088086808443898371429020158735259589920882443779130428607594850787634565846387075036083051955856286100630464641033224957452092909212599715224401427904042049536509604893693 - - 1024 - - 6 - 0 - - 88481512963655310506095083872998303955363103665395614689748950761935149130592150567352051526842435768907883513122638406071951993833483039104880894260670448994086429616644971856997369229550170174238792300740232364024915015016653492885640971890845653859579668498528250516917066920672069528744730214455335881003 - - - 71420609539497237732868765033013438071208066944625734387424793864620282249588182875061993503837717471514509627177747945260865425509223920765478106067601828682271744524355493795121669193837190303641492443480194307599715826281960573836394123684702869297115710345424755375986644023739445330856168082010838417938 - - - 36213374277915021187960501154206429350509009943784937342853640962344665273661370341432812162660134104129081769292257555453657933322026058920570002011215114885632603237420344104120014493999772566832623489577942137696416594059207873047026684531831127098662368796483679106715230357303209903005563129291440998125 - - - 88784875219103004490867409187796580439336028275646934064032325734642172796350750877782655631487263690600595545185986973949637793376040039529334242727841787186152368722684829777472113434707623526142748869410906573019822447060135044716736888756586491608663760971724703067383426197232527066117239191970436021914 - - - 57669682815414213701829150785790139820922208365396385382451270040015047105011059602270677532141334599848749895445377163377797098101769663138915670832338561398070313576223809679656089041902001668549387570675942187547921753080749715443394968434937329744189522351133848627606864859717699163427995004551470140014 - - - 19430387956073665040008742545168228237366626380409449215616316415682054432029605888008345798193251163116713132110293851289775570086405711097037612492724618955613522669964620645767675728759532995017555557036656920568589220029848250912688353596366989096421783410644212433994547565209779383923475304673100010441 - - - 1 - 0 - -

- 0 -

- - 0 - - 80 -
- - - 1024 - - 171795367802537336198216850040760302817719433285673072064016704297509263294972920968862879995019333546807716681922194952612358665832924006994420672781322683935998563828829629166676961578310364216820723333284118541610355614763234524893877254301205676826968663616237843247997193664755408992255295724018758287453 - - 1024 - - 6 - 0 - - 138781939743420141798085654234587085378791442750844156618218315519623156030775014083940843628427157991650536995512183146050090364430217798889903276779395691314769341501283521555441395248293145295446229257598584303226472282606025256289516823083353133125249557574662930559464988881796972570415006594877835195261 - - - 168420371175596160385314346470541456127930556988792934601264980767954150761074401191883764002057676025574635595559453082438403114835695017344400960903147888338845250647685131378444914574667053754042483424927960459645361430078126904416924147233083786086593890435155965855696708192722757613306648217414021209339 - - - 164599507864917269230220181044130466242640054454386799153052272100119238662434506377210871322725801768535465849520862187042461522458751851837119010844326508994699806461980159073458635731317238484887665362257435016594387971946664996341942792674855452076757886270233668811767159399329679444242304826944461878356 - - - 112022954554594868430694861746706902810007259966892035372848716164773714721760248918761857377457366770462246217862095078291990529093104794681337350992919876990886726535142991553290065736768419334005963502455897767959870639353796998608846837617297713305741565185682566104560690180553705181428610482999491959762 - - - 20795710379390313360149837901235593902809611922782438280826554162582584185176550436631972790505407403299851110962435492486911884529635673218790787915570636384717044595376003628898518022547995524968409598599237503027024128328270655662334146591298270627006489949537312823974893037600566816074625503584300399503 - - - 4461068203835146920397273122878996496925951644023334909782795888195924230363311467297500231054245083629066539839024032350563196843805187870921285704555947110972472049763739700924273806542377974583744547273338787688284998293736197541473212310650426901783545952048410414287416361433915264087521382790658628498 - - - 1 - 0 - -

- 0 -

- - 0 - - 80 -
- - - 1024 - - 107678493864345648666726963381598843005045134906745773568855127179729298765945796229988935480734186762723475076589458553114861073591179889992284613957887798550444135071834300620151269193028269405467525155137973905598460168964059816679287733081423902287277428322195154969572934367847409309681954541961841211929 - - 1024 - - 6 - 0 - - 34780567649645587652662047318280460216197594322629290659397343806640717111602043777551795972363990570490561518129361133754971748815062877457811980871870613895746761204692874944262181605786891503668206019069701677551111685254064897625906904673396799614054762342291638726110702862138766341205373553864835127477 - - - 76770578985664099191449798911850613016440202975139749844785468106943538467941487623782662375335620379715667015148235397661770125559100524256505138827952950374296533996410404476470347577736554558794350087928716157046782489969073300743386412321573188949782078100848155826141059164451205262811577282438487833155 - - - 19375132007991059652876546182462672768720429677050803522934111565324016495763732172744623907045335493048740541182304274405106110493850369225158004210873483104238595711350247509966292622988932139561490663242014148110393502548086758118819001913181597386000596861820476450726333113377798106479230138706277155435 - - - 60332745111136671951489671083751897003291069716229419557442175701860610038139875996851654495020782497922916125497030526867835842055895873784260108184155213565134969114645958871640895775675472360543614497922018081777590790520072701770098022598964534954182431602697737796983390272144688966305745888541862833949 - - - 33206030625501357397902828493305862279894195856045523813806319914644617357371406587381751252409214237464923457683937662308696252667537129026830911327626477920950026367523422037741403916073653057335758700270326029776865721695045422550695292453931419295319756838382198216938790815705554550670037002167896435708 - - - 33699591887245320183352886957374795158953603724548326397696125237452265579267587282433792785552885615789973016310923276732538075279246287329477093697179355796742915804057038950601496710139911151519055346593812515824483642829165138763105492040862107512334441962031341198253373030460133402288720613467576919651 - - - 1 - 0 - -

- 0 -

- - 0 - - 80 -
- - - 1024 - - 123460587970465722399480599701446111042791049424678164510782348298178989524706869827218072757318065802572872977206189692439610889543998303448261820274781115343738147716328254096174904353808537339736300386924394267507766388682907861666597761952802807474810395363126049870826035575374238638068965983199376357813 - - 1024 - - 6 - 0 - - 117318302352368229229163809607702479318456428030157262995598611780776136494163450278418011369672196225024705223924157260734348678181103931116903595932563324645629923260513068155684589997607606713365161836567403767936006638718885167253192939940642824452024816730744123545240701916149057716603434108694989710429 - - - 79166656374368484214654356495255053395213742590584206280310930719755653489957925930346542517512620192097650425359579247070837443830862748231859562053718573394014868991678211219437490529223024342458612272327848652593110612340785752785585712120010687405752536405399684337596148008796260805479427829450136814686 - - - 40871868938993875410426205996751811587721008167871813439166564189762055623031521920195950886062485740929198925966775524584648439881883879228755988003547754790287586711275993853306093079373185290320968524077798129432974504079981251722944994855192019937284992580655570885903256271403090577186422692725459831875 - - - 89892620900640290140283566392805476442834511036692916092709883776370123872836264775868321860590685970283545083118729182759253902758383167687729739268452078465233562037688700620432639773342196188561501129246210605848453748122752153274263445164184465697547705606339433632142128437959746969173608800415728397931 - - - 121709777035471737364513670422914240357059445755508125094002474776054087244214559702633254647901247822895427221568520569724729995389163298559564480170015494003587855303221851200035414262844476231232261394773812801023837394666069091883472673028207084029985001140015089782123008327089253959339518752984564005371 - - - 118368291349285147157585550327202423335817645258822478079337019930721123815468331635525068128544253736950377216631099734999157547924851998471340790034858629390897530180532960195293567558086925678406847565038276833217752653830262850771875793504960255927890257698780412927440166594709334246027496966288743344300 - - - 1 - 0 - -

- 0 -

- - 0 - - 80 -
- - - 1024 - - 115193322549187017758632085674974727024742715278872315780926012027804032179761766503288065034565716892785818153660349164554433828067796365626741896969380114418490544104123599167386238983295022270967054328089602503480562145153230657099035975059011144762714926206594556617956114445259820923651026107726741377073 - - 1024 - - 6 - 0 - - 24958892788118393840566891402925212894261112686881756396217607457946596306978104211815943994414797105011718075194617345672726305027536665064724927900756862036945765691966423524893153682261745384165128816990435797199717205467355245097126693946214610135412865735012562961328364927779026079460708512689938357459 - - - 24288255554756812624762197103340158750190223778765519768405807403357684268583138358422886605098116268755079717463816662298139317595939687753107981126116196500860143071528623840509966635777831057754249172610936632021767758934196939105040316041127363794901161035243044698624148907282589708017305528332080549401 - - - 98573529002331715221466911082616318301300017750678680593832916072820765087229700809543111818625003499979817183312145679122909425246500434114287363675204505267732119319754784623466080567913652584576116756111506044251229410873182774035682045895464671545948436513530383740487677985431898275771829011975467387636 - - - 15353985435509734717647205939924424374297140311254436480413662376519872061599819892959995176175891437756042491481998969903341756892089428475760114248462830393435227191729623914880110584220456903870872511626091038462298582250901312945423814102221099309496784542055234964849111850334835617876760601457927418206 - - - 17455735070449738054682884370746228687686045089020396998083887583650988955042976829464912841928464950070337180970573621151968757420751546020224392735386909098113189353739054276774294071884697288831510878855213838041505870499205405393921909645992766577060606810395305981595413168173038810933707942671713337798 - - - 99078282433460334122518009685435268135390495565166370788375980674406524442600154170383521782130678737146346515697587435130336220692226983416874121180076768315197607852814628471856417469605509753709709939138595158453850817740160745949448738764045233343710173080910805476352529406131342795794391893459845853249 - - - 1 - 0 - -

- 0 -

- - 0 - - 80 -
- - - 1024 - - 153256019031673973848391853908671616024035351852333113222956212092935054851555144537037154882131071118335109565772920677334385665987953763710322752551766091084637014937633351768184250877579165516584609222393690507834529036303945036774013832353124798268158248184389671641362425541416312746250270416649359548041 - - 1024 - - 6 - 0 - - 15220542722079887934163021578416557040815588753014948049895358680874401987354756483638187693890778200226187944576153001580318905767308325025251868319513838639170229388887094978609944368236261084829465326382756814026047924860100572370509240911903760108844191920274365232194821110327754051188671927504786123847 - - - 143004036495287445500008244565089775614807488065311228319771443644042556939728810959906482515000410036341359319395672341423672298834030730662358936098971678898328809479500096931876973317120818472883465991015596717523641856810286626439287667681040066261020458108584755098587931772918575340120380122391279580630 - - - 25677830626343122473800267766987258667661454338633409925057452295050792502934635228012969731952432090824067546127184820674269109763072029928071755085679552707171555102523382002859000834013865264250888579699016146722510456747010192496630995123022435395781861793364259724814673958020662700602026307416209911222 - - - 62246636121089263731371807945897520167051837454698735241698439734694730001470335211863614247823007078485077900778766898167190790567301408855375740484748340320700390073275392868823940948653806683445411202776990790067823595294042946536030310357110325099679964532575421698733314704640641895828452919877756100011 - - - 109179195904717079139512297958344482754488860947001124419866306632211947700557001412569449694611680557227002345132253379015047209028361122554436255825724641792181226048045416132300441370043533054296640636019094847912470011225895961907747561407131402046285049780521232862899425601689434905370686341564422790289 - - - 72256199900300051197332501127222934244256559778006179914521739477500706464599171904600643790797361089413358501039731833363101680832368594873645195342133343135647784788351460716476460798313313942000048638227363109185805859595520325671335898545619147866290785844770980165710956429961244551737499380764677597447 - - - 1 - 0 - -

- 0 -

- - 0 - - 80 -
- - - 1024 - - 135358305767271858027595880716111530935123928737890043873187024055476620530906467130993033452699358704424795550755169128359841746123492797756886097936671355386621176058979935393331413499392989299082084359031846630046001377108741347076252627789379769344457517235001038532356319713316214499718115421425871569433 - - 1024 - - 6 - 0 - - 54594747011594798877885888974944176740233826058214590608446121481719016646101845365461669609593284564003581366359995275781810124519910313811380876256508679688339828939491429288889804388749815124253867496416627880709040603044538402764027705232404679640769755327219879688706197760711345784098387646185164981152 - - - 132783808999394318707408962088834983207010415125168788915872658758155889296838532193150695880199623917302322850691457856799843846471181568246727469377964494204689790089312937443605415487457400789095132034217110410411016988079403293808537223974569707930874192773033393470383855778863425429691879481694667628909 - - - 9473430635930700050486617160141204494342095550189134899476751191276019107931129114087093973056080555668662930307913633328246702572209665502366737090850431132340577394193612418080423291630390780237790223606432359088325373896719506291987815760514899446327539193574576164858114835145863147018536204496364575294 - - - 90024838355001075777783195974135066596911088933953254044502969121509346778938214241043930641227033089129624800092043075809246544470625613932569785625492513957934084324845138958744207292453298491639912468882105563813341034734148686353752495183156303339463108993280522860556963638419864094636988429994370751743 - - - 45914980508142788475969536593414423447529386876252836641757988714678457126161180788769040893130014877283087923780361131128613703067760746100124401445607902733176021029401905908890233576832489405771907746137014120822037941005000384307118527309121044551993381248785336586579186345829608419256901639247803554604 - - - 32911404065014905616571735182748738235851543040766582724263411775153690607184929086994340376410140178669625764641435927432683863591301353627927154715686151567872995056710033783341401210111884942070839872351093132272880604910175334910646752963148483903851675232134333338877843861382949858872798355076941765109 - - - 1 - 0 - -

- 0 -

- - 0 - - 80 -
- - - 1024 - - 154218268867696507002031865996832738977246724680896068886617497685938467688459935868916544652628785991317792030286811386804084216509428288684761196875989322260388889257097276677216400072227578520525641529006704269719639306215286673007408730828431211470630255070235631883821820735534893283207489831811866541573 - - 1024 - - 6 - 0 - - 27428799928169371477008314260818876148937722875877046040065001415256050285544612261240610068898749426541489168818274025311879557094462504325465143718226701031270459513481171715674711056192203762896591318737473272520615104809732143483277690473125331986133481516425478801944037361281857855867037438256343773679 - - - 105450822515849266246824784593332752863996144824625198279966526580096181889146860866466836912483527896334247490301097916546476481609859267630501968068493335890437763132841945935390933265030348476193713724966585347250648751479602155322327667705579310128424156557476020295924929348119910434857695122123769715348 - - - 17917586169419969792153843627847724624582303970451816452874219660498616008632452910042480347537075057133325092544315346979734775101435525533629606020738633039620963234297245636824119587829479049303232294479234284130684993231299911772911374146097317218619653947965414360245657311825149559284315208240541584049 - - - 83614794643827277304010494713733702635853026857962232621115526420680432673836574945397242148810823271595098760695291447287587902753143969200514260996554707598388279117974226336910323931721647138761776637137666044994683003226962992826724806567215542394880283109239037221417111570642218445097975627548527092539 - - - 98025334882817542595051261918088236466491396073054003041122381828466061599594157519317917789905097080123705591326984935802933433391754654298972150414662017901502818342450898330664054579806253102093229112778500389727696035428993861323041972409204375141288230032727654233984733937127115582284964721572192907628 - - - 103461867044654386108007921528414895482662948754475387341985070060736686576950492180848716520576397704988373242928703953709705994705234961029080392502757613196202086877221834313994327801773914413507546181585432001324248533541087174089562102726527826866350806480335498036140946354815641124317115290718066663234 - - - 1 - 0 - -

- 0 -

- - 0 - - 80 -
- - - 1024 - - 120098847776259535343644334068493409247155794818213113642226621008837548248809756144435391881962615325304472487122528549774300242072619974184058684501061116769021957277559333567971936578385761656133295119311274656165996325688816719676095627842254071860445539705183362636859341285726107647847880667038640384469 - - 1024 - - 6 - 0 - - 78341596191867165364462798149613513767187976045933270925524314074332359105916239984156112944388741605555584315673330918240662669972383036695380216369645786077675668119525313091263106903931060310783249892173696572488213764160500898695655888234795022024571259931035380458667979043363731060752523060256425326493 - - - 92197697267850835637041615816893083978440979223485010849369520091954329556817022954840969220750091574955501530801737742911131398158522167774789346516688492204741057116830688290864687904235809951324327245011263476463848478977798273152839939981363192465690825435376744018481972214855855772912890637337396617871 - - - 4748293030592378955093724566571489011651125070696427417853949295886768378111152102495476227775576523833542397763054262265966439448479602453489588304595952626064095178127493676309959239982750742094802606536171334162655130645407695836907472484934442915849957480725551564249920896993846998541219569493436633204 - - - 104584900904542556799078527703080866806316560026256596079705108220072609345471701770134318641946110143937813605502326970885364040335672893811516334052832715982398959853556119074396097391674101956889279124105778371957287930683941038772719876857983940733827806167120908159325650830304989434548687189098427086091 - - - 91477000374004348014105246188180409651649243135776551322813142142044628230484208001614477763449794744746082101984365227478095962810916246503069968738835364911647338508489896420278550004430041982623071421860079472688566117689119362544066175205618057687399701666608286724650867268340276001512993623664623275609 - - - 27335022029071511973872915368479831202151720242800820669365572158467591925687227633305136848793235934543162969534704442560517668695149887836214069200974132339079102773406068766037767764420212459478276529948373667413279044542607587605142289772231063326758841771162863193523221664294299814482921047353670436699 - - - 1 - 0 - -

- 0 -

- - 0 - - 80 -
- - - 1024 - - 167849747908102684615783031952151303487318618058226134276355868669627336908402995742916429082816062902544246840315676375600682020395918653886440543549039685487527686497944229453172069154889512786032054308546997135806844060341575216655718028005098196791080486235476250761566643135320439910817103719665970114189 - - 1024 - - 6 - 0 - - 124697971864257013069199803276420735672381775609467161633368671004811398338592994292357677388507254846498502768389738866111523924342131234320910182832156897093603904400854292861082845611922732284956492433793209240106822872232125951145778177387397679039918621121927819973078906987741480262525622005602565399227 - - - 108887781890361525299548949264309573612532412215054221866945026350960909252554790687820537292488822159239096136095460817189450475839784419203908369203805504902414189148576907397548005367318289848718165066768409808513010231990171238509327686404013042691377114557387525251911427307934702480124889546002434153883 - - - 99965937256071531833352267584518740705187568678398481975025487900445929854870225696845831801035897840798993192645749908958835960887390699965754669201895122689762609842067032782947025374191336414827383420980245403487860703320619493841364508653990560873053561052051848165272882782658715485304580849894447481984 - - - 135464487014068006350241183417277199933512080629319393539084556152088647569462879342427336794694607292779308330281931121306851709112290516904611886868248721653328973827011082831762202172003407136709090048796766379233700381954200275601566017619852103033202510881086909114257203408422383001855075728038739087666 - - - 116087460929649477650719239236850579624411409915463138669472799334909075618371332653913172377800254417621211492605964716808216033497729198457377469580439281611985552152638264761588841398460105860435413320874653840732276755863584448068058447432518834882323032920701627821579231087160538498920135097072056339130 - - - 87022481899114200452477329439521478334907267121400160768484310083510672665816499561166856734334611173826744984646636728146751086237799447687536072677043559995690196109619136304467129246411278102278767648846219215263506982413472377610126752110280476180152080765605425555155921191279654185124388043571147181327 - - - 1 - 0 - -

- 0 -

- - 0 - - 80 -
-
- - 11 - 0 - - - 1024 - - - - 1 - - - - 2 - - - - 4 - - - - 8 - - - - 16 - - - - 32 - - - - 64 - - - - 128 - - - - 256 - - - - 512 - - - - 11 - 0 - - 1 - - - - 2 - - - - 4 - - - - 8 - - - - 16 - - - - 32 - - - - 64 - - - - 128 - - - - 256 - - - - 512 - - - - 1024 - - - - - 11 - 0 - 1 - 2 - 4 - 8 - 16 - 32 - 64 - 128 - 256 - 512 - 1024 - + + + 0 + + + + + 11 + 1 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + 11 + 0 + + + + + 4 + + + + + + 1 + + + + + + 512 + + + + + + 64 + + + + + + 128 + + + + + + 8 + + + + + + 32 + + + + + + 2 + + + + + + 16 + + + + + + 256 + + + + + + 1024 + + + + 11 + 0 + + 1 + + + + + + 2 + + + + + + 4 + + + + + + 8 + + + + + + 16 + + + + + + 32 + + + + + + 64 + + + + + + 128 + + + + + + 256 + + + + + + 512 + + + + + + 1024 + + + + + + + 11 + 0 + 1 + 2 + 4 + 8 + 16 + 32 + 64 + 128 + 256 + 512 + 1024 + +
diff --git a/src/tool.80.user b/src/tool.80.user index 7713bd9..23fdaf0 100644 --- a/src/tool.80.user +++ b/src/tool.80.user @@ -1,14 +1,14 @@ - + 80 160 - 1221497820309034144252477697639221506041274072737 + 364377267103062194801167078319285525525691530041 - 46595090496836219329758375093148588632444610893519141484167148248006992830821253282042390919028254358115157648668133863270649812817455449562766026403117693967002997445182573517098844620990728767294115963258577004010875215536547892464360125852879806390124390444522420382015966075500780657059956400651100497552 + 41835396562664248741893261578012507759357710350671891296505002798209710544349703373635217758667394877973029080004230485300004526764178512226941308806819650018366408779146285349904687298130791493665576550574150935462460201932369397327244468843029758839084498535833807799978888571595690248084042325221868241295 0 @@ -18,7 +18,7 @@ pk_u = (g)^(sk_u) in G - 29624695559255996981573654014457685746380963860972658536548118357563146036540291511543368813303433781280391202748072499145041357851200552297409091457980366612614954865906701583854493796742533764096458955429450568660399553817694286663970325864002737229485177070483451432877326131301283666627457911024561259597 + 23960970452790471771290901204248478186899374164835483574143965049167428535334697144998820754351692193924776512541783718791693339940742242419666647217925673092400565221480597721318984236993183002277437659427668775043184144691866033469176943061465580669619070004296537074538112192138752681779361586406138542788 @@ -28,7 +28,7 @@ sk_u - 1227361645207151049290540178790069739366052447475710776877430459919613060108917457848894914968548 + 78784872916820569155668554244162448642445112228949601018657086695112934013436982731746121817688 @@ -39,7 +39,7 @@ pk_u = (g)^(sk_u) in G - 46595090496836219329758375093148588632444610893519141484167148248006992830821253282042390919028254358115157648668133863270649812817455449562766026403117693967002997445182573517098844620990728767294115963258577004010875215536547892464360125852879806390124390444522420382015966075500780657059956400651100497552 + 41835396562664248741893261578012507759357710350671891296505002798209710544349703373635217758667394877973029080004230485300004526764178512226941308806819650018366408779146285349904687298130791493665576550574150935462460201932369397327244468843029758839084498535833807799978888571595690248084042325221868241295 From fbeeaafec6cac94632bab8889ee27a7a0313d241 Mon Sep 17 00:00:00 2001 From: chris erway Date: Sun, 19 Dec 2010 06:22:27 -0500 Subject: [PATCH 07/31] trying to fix --- src/BankParameters.cpp | 4 +- src/BankTool.cpp | 2 +- src/BankTool.h | 2 +- src/Debug.h | 2 +- src/Makefile | 10 +- src/NTL/ZZ.h | 6 +- src/Test.cpp | 21 +- src/ZKP/ASTNode.cpp | 1 + src/ZKP/ZKPLexer.cpp | 2 +- src/ZKP/ZKPLexer.hpp | 2 +- src/ZKP/ZKPParser.cpp | 2 +- src/ZKP/ZKPParser.hpp | 2 +- src/ZKP/ZKPParserTokenTypes.hpp | 2 +- src/ZKP/ZKPParserTokenTypes.txt | 2 +- src/bank.128.params | 668 ++++ src/bank.80.params | 216 +- src/precompiled.h | 55 + src/public.128.arbiter | 71 + src/public.80.arbiter | 28 +- src/public.regular.128.arbiter | 6197 +++++++++++++++++++++++++++++++ src/public.regular.80.arbiter | 2070 +++++------ src/secret.128.arbiter | 38 + src/secret.80.arbiter | 20 +- src/secret.regular.128.arbiter | 3101 ++++++++++++++++ src/secret.regular.80.arbiter | 20 +- src/tool.128.bank | 875 +++++ src/tool.128.user | 49 + src/tool.80.bank | 260 +- src/tool.80.user | 12 +- src/wallet.80 | 180 +- 30 files changed, 12492 insertions(+), 1428 deletions(-) create mode 100644 src/bank.128.params create mode 100644 src/precompiled.h create mode 100644 src/public.128.arbiter create mode 100644 src/public.regular.128.arbiter create mode 100644 src/secret.128.arbiter create mode 100644 src/secret.regular.128.arbiter create mode 100644 src/tool.128.bank create mode 100644 src/tool.128.user diff --git a/src/BankParameters.cpp b/src/BankParameters.cpp index 209a9ce..13cd80a 100644 --- a/src/BankParameters.cpp +++ b/src/BankParameters.cpp @@ -41,7 +41,9 @@ int BankParameters::getCoinDenomination(Ptr group) const { void BankParameters::makePublic() { for(unsigned i = 0 ; i < secretKeys.size(); i++) { - secretKeys[i]->clearSecrets(); + // copy key, so as not to overwrite original secret key + secretKeys[i] = new_ptr(*secretKeys[i]); + secretKeys[i]->clearSecrets(); } type = BankParameters::TYPE_PUBLIC; } diff --git a/src/BankTool.cpp b/src/BankTool.cpp index e44fb46..40daebb 100644 --- a/src/BankTool.cpp +++ b/src/BankTool.cpp @@ -33,7 +33,7 @@ BankTool::BankTool(int st, int l, int modLen, const hashalg_t &ha, } BankTool::BankTool(int st, int l, const hashalg_t &ha, - BankParameters bp) + const BankParameters& bp) : stat(st), lx(l), hashAlg(ha) { bankParameters = new_ptr(bp); diff --git a/src/BankTool.h b/src/BankTool.h index f2a5279..f6ee6a2 100644 --- a/src/BankTool.h +++ b/src/BankTool.h @@ -12,7 +12,7 @@ class BankTool { vector &coinDenoms); BankTool(int st, int l, const hashalg_t &ha, - BankParameters bp); + const BankParameters& bp); BankTool(const char *fname) : bankParameters(), publicBankParameters() diff --git a/src/Debug.h b/src/Debug.h index b54b377..94f20ff 100644 --- a/src/Debug.h +++ b/src/Debug.h @@ -12,7 +12,7 @@ #include //#define DEBUG -//#define TIMER +#define TIMER //#define DELETE_BUFFERS #define DOUBLE_CHECK diff --git a/src/Makefile b/src/Makefile index 2289ff0..0ec65cf 100644 --- a/src/Makefile +++ b/src/Makefile @@ -72,6 +72,8 @@ CASHSOURCE = Arbiter.cpp \ OPENSSL_INC := $(shell pkg-config openssl --cflags) OPENSSL_LIB := $(shell pkg-config openssl --libs) +#CC = gcc-mp-4.4 +#CPP = g++-mp-4.4 CC = gcc CPP = g++ @@ -139,10 +141,12 @@ ${UNITTEST_BIN}: $(CASHLIB_STATIC) $(UNITTEST_OBJS) parser: cd ZKP && ${ANTLRDIR}/bin/antlr zkp.g -Serialize.h.gch: Serialize.h +PRECOMPILED=Serialize + +$(PRECOMPILED).h.gch: $(PRECOMPILED).h $(CPP) $(CFLAGS) -MD -c -o $@ $< -%.o : %.cpp Serialize.h.gch +%.o : %.cpp $(PRECOMPILED).h.gch @mkdir -p $(DEPDIR) $(CPP) $(CFLAGS) -MD -c -o $@ $< @cp $*.d $(df).P; \ @@ -159,4 +163,4 @@ Serialize.h.gch: Serialize.h rm -f $*.d clean: - @rm -f ${TEST_BIN} ${ZKPTEST_BIN} *.o NTL/*.o ZKP/*.o *.d *.P $(CASHLIB_STATIC) $(DEPDIR)/*.P + @rm -f ${TEST_BIN} ${ZKPTEST_BIN} *.o NTL/*.o ZKP/*.o *.d *.P $(CASHLIB_STATIC) $(DEPDIR)/*.P *.gch diff --git a/src/NTL/ZZ.h b/src/NTL/ZZ.h index 4248cc0..ad57bc1 100644 --- a/src/NTL/ZZ.h +++ b/src/NTL/ZZ.h @@ -204,14 +204,14 @@ inline void BytesFromZZ(unsigned char *p, const ZZ& a, long n) { } // Convert binary string to NTL integer -inline ZZ ZZFromBytes(const string &str) { +inline ZZ ZZFromBytes(const std::string &str) { return ZZFromBytes((const unsigned char *)str.data(), str.size()); } -inline string ZZToBytes(const ZZ& n) { +inline std::string ZZToBytes(const ZZ& n) { unsigned char buf[NumBytes(n)]; BytesFromZZ((unsigned char *)&buf, n, sizeof(buf)); - return string((char *)&buf, sizeof(buf)); + return std::string((char *)&buf, sizeof(buf)); } } // namespace NTL diff --git a/src/Test.cpp b/src/Test.cpp index 4ebdb8f..d9811ee 100644 --- a/src/Test.cpp +++ b/src/Test.cpp @@ -1029,15 +1029,18 @@ double* testWithdraw() { denoms.push_back(512); denoms.push_back(1024); - int stat=80; + int stat=80, lx=2*stat, modLen=1024, m=3; string statName = lexical_cast(stat); - + +#if LOAD_DATA // load bank and user from file BankTool bankTool("tool.80.bank"); Ptr params = new_ptr("bank.80.params"); UserTool userTool("tool.80.user", params, "public.80.arbiter", "public.regular.80.arbiter"); -/* + +#else // generate from scratch + startTimer(); BankTool bankTool(stat, lx, modLen, hashAlg, denoms); timers[timer++] = printTimer(timer, "BankTool created"); @@ -1046,15 +1049,15 @@ double* testWithdraw() { // this is PK used for verifiable encryption startTimer(); Ptr decrypter = new_ptr(m, modLen, stat); - VEPublicKey vepk = *decrypter.getPK(); - VESecretKey vesk = *decrypter.getSK(); + Ptr vepk = decrypter->getPK(); + Ptr vesk = decrypter->getSK(); timers[timer++] = printTimer(timer, "Arbiter public and secret keys created"); // this is PK used for regular encryption startTimer(); - VEDecrypter regularDecrypter(m, modLen, stat); - VEPublicKey pk = *regularDecrypter.getPK(); - VESecretKey sk = *regularDecrypter.getSK(); + Ptr regularDecrypter = new_ptr(m, modLen, stat); + Ptr pk = regularDecrypter->getPK(); + Ptr sk = regularDecrypter->getSK(); timers[timer++] = printTimer(timer, "Arbiter regular public and secret " "keys created"); @@ -1062,7 +1065,7 @@ double* testWithdraw() { startTimer(); UserTool userTool(stat, lx, params, vepk, pk, hashAlg); timers[timer++] = printTimer(timer, "UserTool created"); -*/ +#endif // step 1: user sends bank the public key and desired wallet size ZZ userPK = userTool.getPublicKey(); diff --git a/src/ZKP/ASTNode.cpp b/src/ZKP/ASTNode.cpp index 5882454..b359404 100644 --- a/src/ZKP/ASTNode.cpp +++ b/src/ZKP/ASTNode.cpp @@ -211,6 +211,7 @@ ZZ ASTDiv::eval(Environment &env) { ZZ right = InvMod(rhs->eval(env), ord); return lhs->eval(env) * right; } else { + cout << "ORDER " << retGroup->getOrder() << endl; throw CashException(CashException::CE_PARSE_ERROR, "That operation is not permitted in an RSA group"); } diff --git a/src/ZKP/ZKPLexer.cpp b/src/ZKP/ZKPLexer.cpp index 2540497..d23c850 100644 --- a/src/ZKP/ZKPLexer.cpp +++ b/src/ZKP/ZKPLexer.cpp @@ -1,4 +1,4 @@ -/* $ANTLR 2.7.7 (20090708): "zkp.g" -> "ZKPLexer.cpp"$ */ +/* $ANTLR 2.7.7 (20090830): "zkp.g" -> "ZKPLexer.cpp"$ */ #include "ZKPLexer.hpp" #include #include diff --git a/src/ZKP/ZKPLexer.hpp b/src/ZKP/ZKPLexer.hpp index 0233f22..307ea28 100644 --- a/src/ZKP/ZKPLexer.hpp +++ b/src/ZKP/ZKPLexer.hpp @@ -2,7 +2,7 @@ #define INC_ZKPLexer_hpp_ #include -/* $ANTLR 2.7.7 (20090708): "zkp.g" -> "ZKPLexer.hpp"$ */ +/* $ANTLR 2.7.7 (20090830): "zkp.g" -> "ZKPLexer.hpp"$ */ #include #include #include diff --git a/src/ZKP/ZKPParser.cpp b/src/ZKP/ZKPParser.cpp index 83485dc..92e37f9 100644 --- a/src/ZKP/ZKPParser.cpp +++ b/src/ZKP/ZKPParser.cpp @@ -1,4 +1,4 @@ -/* $ANTLR 2.7.7 (20090708): "zkp.g" -> "ZKPParser.cpp"$ */ +/* $ANTLR 2.7.7 (20090830): "zkp.g" -> "ZKPParser.cpp"$ */ #include "ZKPParser.hpp" #include #include diff --git a/src/ZKP/ZKPParser.hpp b/src/ZKP/ZKPParser.hpp index f60b1ad..2cb1e06 100644 --- a/src/ZKP/ZKPParser.hpp +++ b/src/ZKP/ZKPParser.hpp @@ -2,7 +2,7 @@ #define INC_ZKPParser_hpp_ #include -/* $ANTLR 2.7.7 (20090708): "zkp.g" -> "ZKPParser.hpp"$ */ +/* $ANTLR 2.7.7 (20090830): "zkp.g" -> "ZKPParser.hpp"$ */ #include #include #include "ZKPParserTokenTypes.hpp" diff --git a/src/ZKP/ZKPParserTokenTypes.hpp b/src/ZKP/ZKPParserTokenTypes.hpp index 0ff142d..50505ef 100644 --- a/src/ZKP/ZKPParserTokenTypes.hpp +++ b/src/ZKP/ZKPParserTokenTypes.hpp @@ -1,7 +1,7 @@ #ifndef INC_ZKPParserTokenTypes_hpp_ #define INC_ZKPParserTokenTypes_hpp_ -/* $ANTLR 2.7.7 (20090708): "zkp.g" -> "ZKPParserTokenTypes.hpp"$ */ +/* $ANTLR 2.7.7 (20090830): "zkp.g" -> "ZKPParserTokenTypes.hpp"$ */ #ifndef CUSTOM_API # define CUSTOM_API diff --git a/src/ZKP/ZKPParserTokenTypes.txt b/src/ZKP/ZKPParserTokenTypes.txt index acc8ed5..098f2c3 100644 --- a/src/ZKP/ZKPParserTokenTypes.txt +++ b/src/ZKP/ZKPParserTokenTypes.txt @@ -1,4 +1,4 @@ -// $ANTLR 2.7.7 (20090708): zkp.g -> ZKPParserTokenTypes.txt$ +// $ANTLR 2.7.7 (20090830): zkp.g -> ZKPParserTokenTypes.txt$ ZKPParser // output token vocab name LITERAL_computation="computation"=4 COLON=5 diff --git a/src/bank.128.params b/src/bank.128.params new file mode 100644 index 0000000..36662fd --- /dev/null +++ b/src/bank.128.params @@ -0,0 +1,668 @@ + + + + + 0 + + + + 1024 + + 90000278626803335022071328928549219898885302384625475495696392398041617532339176000781540756682863545809747716887032755416794808588346560036356164136120481509791718483984106496955595265188352354812499812418959904332704497109194612021405713759146559536486405580066561793963466329799894446251125233278254413761 + + 256 + + 5 + 0 + + 84952928249130151973298415363181405934425632655632115778308463282059463338236865931296101426297526563658948002184139200999561648482881839074260566238572499825086270525185681999983976048752950468110441838444302174536840077824800149658497720596712765680466487230694643780160720986569161115381394045270542636932 + + + 83823422347071832310202241797538871759236875794554776551486639777920752474612093767516062853883710596935352567774526909794499891200906130963998176677545477005366895241130475505211733945760424486160628732385405224275208066995806606801340910680568282711150291170703079865519290710972910144663841430640073036682 + + + 35849089841289364253948714258020208204685671356192581855290227852019018717483998411587574342873073385258079658259115340273378168186154479042131730008910591593996492861747136750988844665985839953392124822100746029014207531228044262221891487246321361562775577782777086133079091066696462712996192835906944242313 + + + 44993111468035458127411254007557303514163354764312226352950806441073903717588225250519315301972483469299887688008374022117971393356091547860989811367738243460295286919643706409540086559785015845310269696573602593867769133816054050072346574989513809640700623477366965793690586571852070177920494937227461227038 + + + 47782751121904984867222975138034478658259829592117370523490446306353366571924009941190387774146363339850170365479666714437521691944370239748413195524036565698748289347186014293129251732791859921500089288180751097409013466303883577937739199270126924794903240806647241648473248286304241245639154764388575161214 + + + 1 + 1 + + + 58833984347066500481753679622935614690148767231727264912768190102759804491277 + + 128 + + 1529732851269842743606688651498541651235063375097047922528069742157086152065901175156893928008071924464798570438896914537414484496691904452286113910073258123605413924828169154006478218771173871524710107131729509569405208275205170880 + + + + + 11 + 1 + + + + 1024 + + 141616585298119217169938673619272677876305616664907670349462441847709088908557544251515175474998451124985776273719472516186975914732010747332385402556781605861230647217768774351246547532123486873407558305048213544186544101822289439187078298382239897163140169395914127785862389362310917083618805462620101257137 + + 1024 + + 6 + 0 + + 123727109476116790943807606276979081317838052696320038195918991980066492632864230426852841587692914942820131088423410904298112220663912397253955152150290232236846510050561379085907165419811686059157224902031906975841439950319087019658750534314932635772345543751326282412575589843075956716620069519309950766707 + + + 16739121827871785835444215380519805044105898801943828077420183146702251620562505157459967480939750191428737889787196437057661410936990325964940540163810527097601732711128952991104601176625485059333229818650182275857725956838887432973203079413493497365404762545005809784649881008806121874429232135314954947917 + + + 97375614112970569625132790069438867798598419085320275283540878783046350758057833265530242045591945091677132469614875083251494123223089424487413371352813662970634592209020959244089334944705716985296045040371417323190053606559785249013795448858403251609474416639759372147128274432987243250064036746349255269947 + + + 114687961738740033823889195608051804089459927982231308182683629888028268120493097845984745816632701845729587764997735825504425814728087113961943899377369172330181661859437490500588891277289700129684963041235091146245110205297670695195877570309282199688173517697376859702369996333750969206200170937896165130673 + + + 98956556245296456584577093682467520726488330699184024849705470892885919464790997973099467460411363147058204306005745127138920560984804957598832063633882251526703968694422432450762300036047912913590078648344136687298222920345966641507711224727734216915549548491251597779292132585329078814277644874144204440913 + + + 8218711316109398818437555174328187884834609897538691761989679256437380592327815751286455401090985919653442559863520717095645205034753676592015185588845079128092994088741444345604130626340515428779578880076398800383782584834593428970597993920696951877096600611130564303813235201917584729022486546946822366933 + + + 1 + 0 + +

+ 0 +

+ + 0 + + 128 +
+
+ + + + 1024 + + 100677872533448097220099073817927225589055475630822761961661319507436767260247962574830306797547399857781154385436014063488669402763403415091104567315393691654026955705776261657176967138613165736148127307375877404250329399909273377427494681955673966773158210439868638545758901431523257149533857118548573695153 + + 1024 + + 6 + 0 + + 5839377183160546196138319897119413819533325290939250174575593045995174313475312205945945357055929040779579042794701761682029074264866480789865312953609056002821973716478508653340243227365822718890898045365725287867056213748842174512563251603915175595564725054642781273676797433229430878858389245500824743808 + + + 9151338872365456247032717330023984817312003721470040367866914325835929050847541512893356563960746271338592363780657094336983072614756949921658742346136022440773075267625363772764997118641654642047453514303934687316270160956126363474797775317059257977306640676186579158098468551494846968917059541160224014758 + + + 15860462078020594899446488453060204383074528911840636642395812152658404384773630788846753886078318028031717908550692048913327346694538337028843405557564091344380651382749368521326303402847923001644830121385004337342100353523944772816711424003643263838603214628799049788306385167746279563912796396209660261753 + + + 59280453386284268103722404818421935125349847117062067877062879155069052841403836024105963069599655887155452164105099176021228094793764216693782009423613079455095372318275672973730755562706833809477508488161501575489132985770359851116797381555522798604015448469012986551202142312190104532872642555400431538917 + + + 11959326964505022176122057605248516896052345863763775335139405757193376929752494791885391469975876878766319851839438096353807580046606579780023620923841047087539991803724304310957287998745435684644513096501010121155383206845327287587823058414357025978022388111255752075553240302618911479039393027325471320781 + + + 6177579976638129693210753607638242900276262970293481477769650385199343455249855440373112796330681567779910729221138363049080433151875368596183841470489471223925643244016045037076031268774299214810121690782623205005340682907161134695923622607473741383050943010143072228547358500840387692910435578143502761692 + + + 1 + 0 + +

+ 0 +

+ + 0 + + 128 +
+
+ + + + 1024 + + 158549598880497910400619284184066653665884514457464725056768436866603595915335001503460851844850974358715989372194927287779149005186564988331891384665053217634456737547126364758858138872586892253255394750999169616944724727592844850714668934638393746312666960759504183331319204851426992765085999107926643694481 + + 1024 + + 6 + 0 + + 93135385672767619151614708098349472889111574862403895832900403488405262294311700071780221413175865192127505467287235249436679093528332912073950460319914480237801229576091653612981537747710960008601195559264248334535596264374321659435352642578799838762400334615105834863748637436012737070473309049538807423034 + + + 51100805918688964402505526106672810654026246094743783076423842041266350504540434099536162579888280257996838643916583635000431040359595396270367484548169882088538657541370581945648014016634266024081155709079844574500049887926900203053504468337355562894716369800630590510955477576372293377576414984286865704516 + + + 40954138852584501330557995609393362851788163581790148849132930469568667958967552504567618785551372519169424010215341566815088956328709957140638967201399600875219375387078406843464165429103571413475420280161660676675443278274258717907664987423391379274991438613260930984339735930912060988881640179932205929786 + + + 67567910533597432321299232485429791401290139019339932236975647058342373771138400522776905613039749025127200528960954291337962462027684428991102623967412192986506526414473491728042679629287568729837940385955692113018499901903221157048158330248546449889241970747356866640637156679384285844113917011752158630971 + + + 73237829702573440741759249754215968389862198041217609745558420493153015170848295065344233533687319549910089232836984105194853553144015141580533929822733376074860918542845474984944112360873464441170015339755000503279087804538873573693087194749158449305674497676544329941057553745545296134364423900244799497350 + + + 82179444756948194708930468703603675936773896864340106471506598591147013312113289913205405582188002889610362402757220689034199206170748124751053730159295889149537374801068158132723024332374266469665711966308941584660089635333076756110609522964449574631097337185494199508229283997828204144978253951475448199211 + + + 1 + 0 + +

+ 0 +

+ + 0 + + 128 +
+
+ + + + 1024 + + 112226024163060325842497082935242911437822799361715040011764225873823841843362665021097286568627125826054818959335508843522200127557421761424207477974910332835451361279761825290721561724151982532242025782107278639207167210365399280901214574230356879066098545048360997676978954992541835427725637711352089258997 + + 1024 + + 6 + 0 + + 71239922071560696057686325157017099561452940720553826325791509522173483093195766789627023245511877959611783139495828307887148219033725560935896850524309494654992978845037383316444089224033283522194927612931729319559092231538361639065660999098247872642416122519724346666921704520413018260380294916115859324475 + + + 104100661273376270465886769879169851505531293946822966310792246023467407855645974808863782309856374904477476292149951550740825062715024964707645151979144037592534671919520398388018624170324976513148395020892578490738063518282942080270412870732319083237028161450116841595726751222449069356050605483543771779243 + + + 110488868124325694000473049416595622980239420675299669611969175422326466813764904082172231659718170199735458215194796472884939819081256706093075218364801100605862923768360082238898809025226720468034843518384983904015745724070908862094049352305342943596509289086463976573372882658180863414903750573928633852267 + + + 25410228806705654077148682147097332357839890944247165564190684922840298388299867638438827012677532576086018749376404828171035283387647200245053023769111444077837804914597953847390409288178866420637004013666503923354082254710390384221283970252579173635674446010775881895161898242766536161821771080834657772966 + + + 8700465729485478716436679387374808038842851134149874623524593122226981420347470308842049813402269673151224856853073297143325064623726495354598387296949669243141564189391203779852508624676043820972832102539278773465602710364558074063858793656203754150771289330924164853335287990948557683276550122862479787734 + + + 4590915121025968668304639606926756883325865873477544481474572578490074803478225104926374593330488341308936918650623315112092392991210275489461309706062948223964695542976508808980472334651279799360416574108887150627444457044425727368708654119214936977048615234462350878487398563250522004179490745502733804427 + + + 1 + 0 + +

+ 0 +

+ + 0 + + 128 +
+
+ + + + 1024 + + 110508930023534740162738784191716106396266335164397270938431638503656165107659850330942905570953139940993657700596611415015607996088094999591509442279914455127708604959099069404688874088746699227873907624992382646997626069790294936781645163137238191771425911876338378552905914927709093135968272189138379267781 + + 1024 + + 6 + 0 + + 16190252281963301459787670341671658629584528013767349213762859480468912549003876067650185735368277305827860774447519281507342480468379511248984320380597596488155420581524852768209199457326484571591741160741133450056641461305735721099040547991891766427962276214315415989497188352902633732196066899033086212891 + + + 38826277848371273930615545685144151653881579668858046356703460477374467440986812234109754499967493373876482112740873179936925901985617887446499078394479826073834356951775431338400653339847270609580889890760782492450607831490636597980084536315344012754358523394495776843986421653605957824956062545579741203078 + + + 71646312009953726585550999318016381728894835203227651601905196263732648675495704743394057456680994475015688133021194892503509352062802874345113499510264292034852826077782353596162892893546954580749714902607471358408536121219401940038604527833559852950095486320467926298856159034774928058008762284219448719448 + + + 21874682139468327413608068754387545052399338719612361230844170368285314628799275547483736572943076800516046110251464024901652994004988699192583423511184828762535276498355160755435749895493906535665270038315334007057838458556523945211028789483453870687979556847570031469514412547221075372398639896255331415712 + + + 96485886870303326345904211454959767604603492416819624580214167931710430644807998515456945236664931372874407149454966426025549280311056741149653492504887840522444962154099454509666362392794676843546287394031538028146586973611391186630631976452692930091569234770634565514877707049005506297517217351335976772644 + + + 12785877239137418417784292919330214786540476069274047307555303653719482893838360620072099761662940232951539617367229428631511122705967065826801788799962011105574136753009905808872237581618957162579208042634433180768694671453748498981034084039730230512577739611331291227312701253806873170015239680554532602932 + + + 1 + 0 + +

+ 0 +

+ + 0 + + 128 +
+
+ + + + 1024 + + 114320904105962694045397744642742670738048257184310093494555991444797482813541118111089781291973630159615166108623145340076966157058763576254419730586523987064937573255477687360566485912548770462482964712896247855433748205951273000550785436521127560965961207101500452024629042283206406224736658616285564030357 + + 1024 + + 6 + 0 + + 7634980763917251336810352442357448371998689864333667880034797625983922573956604927507091153057925834966557368153665350952469635289997623199645010366672568755268366132281637350085786040653129895114097176398518818254163092526258937460259952070799536897171676497277456147895219443314951763502209309659091052046 + + + 39513914270257186999045123068986181195448982016797938866373057019566828837955513133438599189868275845622617299770436258975352809529287933910551502311896583318371095881740366452813502219840573856677630193614218375755742299659756715459463943851653507238741255733611459003393383900876162248979536493885002255277 + + + 18167369757222349874149183086362367126461854444912423618804351161500550590220283466858584901575245048167478301321712034958573217907589648518102523082969954103472047111844471497564088614618941728636204609814701518261137512280812036585646045975899141794125470429012289420146864294415569547756913918243318752134 + + + 115659157727664268206450535430401805063622559678330348748619885867341499736258484564346053283108051768579166247030304386659132072868555723898339395057157927971925643873235951706157077387599251633769178185066973826635598142353897168084539609732401905046581761008472697206388538828572770767797878372630530401 + + + 3426664709529533437391571211205253199061329661076698960247127381685666234868514959022963068658977893643991317246165092367331894188404086082503039904120328585856135644459126243353178497330006112686726485264532000169430991453593080490018030232649130523173383244316414940044730285810446847065836212299135305477 + + + 9720276364157748428375729186584353075775686541908983001018862454608298347400073748391355173902141296635314362147841513011916232556770801476014443006534901959642238002225992691396906805833800927736878352540861324108974447578594233665142983632777115139851230952161253915149829416505746009019992709649626348347 + + + 1 + 0 + +

+ 0 +

+ + 0 + + 128 +
+
+ + + + 1024 + + 114018788189557511817784680777759550591059300446069489825990203391278774682846379925121383247445026704680855939747076538617338346952583982823150625163847912360243751931641735204142746397358989487244980883569001075104105660503422089073982203603946209495964255659336268090771693239026629518847066637797329341449 + + 1024 + + 6 + 0 + + 105771865854712726031661312805356691041156950978664071233717840702230721173775166963435908803130293365277028420399947505708472971343434936146777505026203385690681745673746190215396150188524463510950391373552417104994016598945888250670295709770381365086544152932230892285140494283570873464274417511277726277858 + + + 56067960422996654785503196659679662304784257095572295353596495065904724904864214411957167404534503933390444473647257997043968292686758056607523867033460296191837077415497301294901578368869369840880476488916426512905326045817765043732231060238810512889645188362774849394525869257622061386047025902399957411486 + + + 76555359344532961834469727383761748263588667663975541670526178407628858671688631277865774606980738342324272796712506007955347037594215608252218446487558094405278068719697426233828695948978338404991606284163255665414548757594746306210665091019929309221874628420870709257137216644157695962606948404671774530883 + + + 97448860338293536080426214067977203384642545230487574516933699965496862196802646188108694813109456872158119087697029021789943723211502840824288861022543499621397452299411423155443449323435716318577089161392178509859404220013166899433161872516817639102994784126761826914611504520508993927516110127071353793555 + + + 39333754459659265538526105439959580098386355384151393724409360053973465878634502742658655012636443629348197646057376691378886609795106875409633567281446864754343766250188743435873546886306344018718387853638437800170990059987019086375527632585332181910853736306151318161619900142689696759878795420294633150799 + + + 62340770600149789755116185666878218403396738536592892859569892681203814186908713160885886348719267305078966166556976443038011866368088500335522559518997169439834664718165286652304289398463954725683679672008133900387070879967524926113851148447956549098233397127209776910303688311821508750738841808688984022961 + + + 1 + 0 + +

+ 0 +

+ + 0 + + 128 +
+
+ + + + 1024 + + 145755358828725794629657224569476512892816619644030296533983977452645470112017832485255279476798424646174051887315858677594074945302422016021799731467824127362191624021497454803516739911480772154941148324780431861239176828348183403935055337558417115851468054465579102211659096249603340357997186792408089510413 + + 1024 + + 6 + 0 + + 31523735331381975048528908771169248998373451704138540195275403351002056512371837911719890574231052620902463198358325054233883049782594600769036053959342191289602146282724390442412115041087052203520381288237161272062714625554850251131909886563148460405270347042318069277356651515553233700901811776733807993221 + + + 4856419463547700820745826759190793841701274325485230250981359113763415733004485008713948552664551916489650202249096660011827581814591723621885087405965926091857973706384714735525849416076095340486432886015064528227235173106098777452566208591266769671595049385254386712107179341222797766180010225291855300476 + + + 31126278372771606359234231911014554624034489388082366028676138643722940825165929165067089166398251984026648502966591171726229763912060018724027658449621680847861758655071966344333256823776538706716540300966280411627881332015355120657749891093002965506976878361398644291178038284164057680745379443782519744074 + + + 14505227187755127088024357096249485912310033473904690580573823596773137142463129181272166831437409332235014325772035604544897900780170315386674110053799130639907676517366386806046884983510700934353166750867929712932641292497154893019775617644759290075202353526068537558179626685810937288374235411056904506462 + + + 12591770697879890948400188490168447225201120882113455897093276083809722399686209674637490920508480142532225013763006271486178289067193021951259921168690169086395720351413746928992790068800280023014140030745978087461414486248827420092302677283587910768747115600699344909469148345176919368048135713450091879705 + + + 61963811858450059484094292226459874610628156491789118681061770657183581668334089970264680381954154464594402671493337174367454195720412385050194560857225798954395231201367739182412366239062972376674861346887183469596295917970740075776709065993546490082814731595048922758051526458335652593747622887360146590584 + + + 1 + 0 + +

+ 0 +

+ + 0 + + 128 +
+
+ + + + 1024 + + 91159619497500033197884536815445959810175409515386487837855394240105314257873356934593868632132878001605281568188244384557179829505944147504880979013467676016416235398009487473343738074973916668769840200013444982872977779907890602171748578135333184461760418234539076233954818280793933041180932968884490908269 + + 1024 + + 6 + 0 + + 851568058585399899937372232705434423536952847430565821565766740217001032646042191958749447838500427918671175845515895824168019446995478001439311307050713185427794346680912504202828615386316667679673330874054783503489172070360663685622061913230263919551874901320088371742057397260601282646611223691006443751 + + + 32853481178481306662809213899238190730085008930191818876938337647623384172585236018500528741630068002074355773321052999161717874566115974326843836891547682882694099906355149962039196672446849544660965770031512758879047559223876646292061992711486938453084596030346962561348683900323712583330663562482221197252 + + + 34821630985221854261082769032381272381889335079115317454594613279201651424060863976307958093345069887661788541272077905768279548978092749172436991258111611785111031639869013335062241661177501133089670418516594765359676479830500698674545744272864957111745168610586941119390624143496100355537247102220565125639 + + + 39701953805260571638469049449691835239853134691939309256700403354554836879758252676652302276665164254297831698163047921022762575660356659994728788420610448500042959049629515326684247604813383958855794143730808203410803226791390099230252998419624372655348850970634963424417793986834969073688135684887367027883 + + + 29102816744006481949922051536647157073416693426053833714560784125052861984877696461610084509770379744109649790378172039960416596777455186767557728516511071122873283107812481567613267778992249393262570114077799095283611024119101424901204459337010870960869064119548524952731647436544574215554906082308834659921 + + + 32974936530171477426558926657295070590730606099588594703485031901034392895235354214912037047196552839479577074742266989855931041464052716865470322846484487128028154869801955066047347108551355865253253586500416370694357777624538379474512556176521939937160375514993050845196770742383544826662501396150957423109 + + + 1 + 0 + +

+ 0 +

+ + 0 + + 128 +
+
+ + + + 1024 + + 112714347547092648743627817624088578213968013751572306140005777569417788627034861548627030618210536511972670209192802693425052532524071823425541785153877392095531364840175519689871958031940426012176629731724076153477808129684217007187843243383002059060567768991081310625185556025948667300903236326347927671153 + + 1024 + + 6 + 0 + + 41453190700847065246269778898852141912639219706248915701165628007851815942083621302391511900783289860613782906294104422830007190688668507600477793932716807567672278887509305765714280068794057434538394015116339344703501375893423066377924705073474230723019195711249481995028512130408101561137355440864266889011 + + + 96415473406497856667236110185119678021609839806444362560942490898772794655825836680251611594710297459293856136100308291899266023943624303948669941021882453080969342857718276992715105728166762740103353100224946268582284532435394981387666771302313544340616355675582128146757985518033153723015048993545771680411 + + + 5329771000113845362591261372882676498247347752026309010372759444191286820466993656801815402621479673604280095352453435140876825130762923962832777307385134557257387448392537204029000791203936139360913899555546748267799257960246583213855295127569947108519594262943400940582226834642581611875182359279188137365 + + + 70825465947181369379016766145109007631092060526829443000571323931479984439416579538946250685062921177121149520176090390069424053862437014080717521460006192745939354416571922457649873969883045662320737566496738458149568266569804262889119363706737911970041890864991893722216615934529285708102659412333240436514 + + + 73991179277760330038195415092823191193387632706282678107189783050146939524299427404575923452035567234547018641575084961229435181302012865072480304587370096188699743453085613121532257939129709105940300864243324811978033055046100048427785469341560204912813061289508780279815105705562417449080508228178367200728 + + + 31461687701241355840202272347802592236794985127490032010364094325610277487618212189243380506649234733982547483029134406617715040782953181897339929518135167288016440191503889749676267123243816545961641823288904946612888502090166210728064150949885531980896752883252889154649675823535367077881030273857334448377 + + + 1 + 0 + +

+ 0 +

+ + 0 + + 128 +
+
+ + + + 1024 + + 90709850988183634883747146504520812305479616362544762717264767624480713843787484468715945022848706801815793588306393524025802655805229453394177222515245400623164925000957490861514300185291366427334011741079978619317279902405535111362511891805977098467575343342798240483468745456622946654384413405714727111049 + + 1024 + + 6 + 0 + + 84919799314745735832787810125873543828065655104516783839565647691248215516359835680325809877446500234093245505337708761327514836455069648943537283941371069748836618942896405098164011082131455690036708374862628669201291724015337105884416281199271404498957591588666105937717599340402548102129688608671172346488 + + + 27592679420801014730715929720577911639178387223364096917099445894820948297106503183856084215556731845565010736083520611595677924955301145714878769981153202834608139649181574210484004057187171534099812954364473224451272658221245570585294103435378349057982473974869866578077162069304472547230546020087797051297 + + + 33829734038452341058501623833341351574562143156927976338141417157628211716738456683032489788533911482646850127137345110538297989627447238997872569111103407878351511889741396804506828238334901865903850154295339748009238515549751976866660542500739535545983390456708509155386761320270406660928912906646720547244 + + + 11124479801627523239560573811320263546870760761274494405626513519688011602709990162807279614911932381926257437778864781726042301387825810466192780508342318812522861430074353719597599129926767958390249454965081195805817855672203611757794583827186340414504862159428296513760018549704081177357871925356586429427 + + + 32880992540294033643928779972503468005205696794031699830392654616829919979722756470717860586107870645791429893323265370512750961837989273283871013146249685784109354110756530910036429057128129752940811337653870209208256903275898953200512500172584636259421754371306492955086813582817806744254291489143226383387 + + + 64488809336695391318011568983078364916500775881097605639096343959579383387461043844483578842238766681280882600828703088524166085956024741191119425065692954008717449256641788315388984961945826338689782533654764325185225279957376013706222894155012908069205181312321319521791430494808333769902714988147244616292 + + + 1 + 0 + +

+ 0 +

+ + 0 + + 128 +
+
+
+ + 11 + 0 + + + + + 256 + + + + + + 1024 + + + + + + 32 + + + + + + 512 + + + + + + 128 + + + + + + 1 + + + + + + 16 + + + + + + 2 + + + + + + 4 + + + + + + 8 + + + + + + 64 + + + + 11 + 0 + + 1 + + + + + + 2 + + + + + + 4 + + + + + + 8 + + + + + + 16 + + + + + + 32 + + + + + + 64 + + + + + + 128 + + + + + + 256 + + + + + + 512 + + + + + + 1024 + + + + + + + 11 + 0 + 1 + 2 + 4 + 8 + 16 + 32 + 64 + 128 + 256 + 512 + 1024 + +
+
+ diff --git a/src/bank.80.params b/src/bank.80.params index 2273074..7d53042 100644 --- a/src/bank.80.params +++ b/src/bank.80.params @@ -1,6 +1,6 @@ - + 0 @@ -8,37 +8,37 @@ 1024 - 133514169406519291856741071482152092986830711653805432236049101860748679948255167015586973279637205031175362709763820655668225828023894758021880067077065504052565748905906694850545234255047042654145643283874645230503132929228035928153484073905895258887219253064882319961297665121131916709880607734650721226103 + 102680714876620505251519589456529850089969700556564489253162684638539597335736793998411151385396668678457395604056076455447346438315008567850445832409559094642617108516105196798178870587832997740211486024550117558968151215813802257578385470372409470175519459389641067956632237921585676408120047405305262039181 160 5 0 - 94407493022606357864805633027122711421215663077905008263774968164035012176011572617691072943814994191148393051024993721835315521681758131064676532643252609770612176241071149702914553042913231377946461976950086431204888208745392304208963757933619019425403873801118477268077877896621571737928518011990140563529 + 22923320959192453636423682385738922848216151492993760467429386172337582699603626592667966029063069617300543105850468927060751138940226489398256413607978816318065423599404211058602051331171774528282150565237472007558045410089374975467684411005456109694572501365211023547108753818220756570663968723659519304097 - 60876396496328682724097189067742896920729147349048265034433293478584151028846489695084196248986066630031991356096243255322100960388658243651677577289640120725516441620242280434129302299332905863156247397640098201527237751017533828511235119313794130211703569638743646227046196461621665179029678407970528688409 + 53945843214081887230506825685162514221944851452590973433147320105768347799035010333040104182762421540976644457898523154200390719416111152133906850059276116624692455403920555815325946146027238316284576081046322930997100925534589898400045746221732607763907326046366956881978962788748138738898197865947329746712 - 16121046626221472427047751773363913362974048990766154828871688671127428775447979844645572385001509702306477295325242354456782158124350935269066301880960134943074997659934554179554195604220270207074654587462102008232851521149184541486088101866695754053797858201040921279096905137524685107305175160336906418452 + 84070450444178810764801942593139363675201942216375234211388549548441399502573647392486982654665114331690463175765687779989817013063882187163233753732167024252613425512245014453169195391341163601305650730846456990348521068770085139213305228501503975315987245346014618040731218552889355850011776660968387243547 - 121141365231466073732580863259433586249476061813949627712529179498916008769053166588786965207007787500705353318146531687568175831821291010939781915466584167820414666799448726753535192924031547862879268463002905040503696964624426975606423366915257680903002938806600630068207161742151292518910647295361588443118 + 44698200531549202972232618323671999010830294896874839743157702137836602383560583870323823976773804259743506237545914357368122833664632525931647018821826400373691255566854594204199447306752422310463080619172699838408810456076477752430884838822369737010719356000558487625372180909172327760255616921931423991248 - 33224314461995781736519314217203018617785247730857387776163308491747362205194443026254482638590245033389225074027255480484590167701410741184233295699962334880861393829214748659537994405489406434431530722514907615173145959919085846684149179289734587238229307522746341982285541391125592028510085508219582487692 + 51872694200042776418703861731161005597647063174327775542825481250710848362720927717796283168056945768526737370976647132055902410582742570384884317599347064382929720903764261035793509472519152983496873672379499058845114238849894388800999929829175350045958631291831128454260459997110600204624172747502759593173 1 1 - 1316339470914471129151760768523498072453239604329 + 1381926471275670696491547928550620506717346803979 80 - 101428371903006125064816550802147348331863457871463502755733431817197461065801788822033216731636393277352980645348510209962447083315259924556325636320920818893079058726763004376179447886097544377332981309377503984706350117896307481213330735384282162062083570438 + 74302589183225406744708406598986697445626235129332961159539629660099003864681279676025057169598059221346100246653275027988998552977043535171844663879396255745429680604118860556814772359887881646573360468171271074105943974872534642719266485854337939537007792420 @@ -50,29 +50,29 @@ 1024 - 117884827860446563781748820406944154868475576600056082227519892174509471939864928225082965627109723952518920653247492719570823152187792896510133067342200887708846589512704292911831151048649360382622812569691999626824883040806504671579138444829886940892254765946039569794976422303781816507549109049679998239933 + 128057967809655946190316507735155452831314572900315216081434860144597217324346737671800302572587640910078110732912465466684478941477363845874613925338791275068167816621932721309235605381772586248486970010063355049965746801462578755831359666996420724229475198439645105729191854361248312605304734475323680662913 1024 6 0 - 31942355189938305852400278253491349150729688128553144232246584639541711212090413545313826597682193557038043490057947105939176590836354753386733329966113979903437456252437032911749027125960613408259246704939227078007939748329163439671977914324835146281052742998866232945211038725583265687929565458344264054347 + 60811636929475187479807521649087606074793642064167945690350627603203118950323257675713133373687111123714663109087066267073458476631246485001894677569393649603260477149691339449729864039552273625864812610179069562367245786370215607199308088083101677805342992837524421920973047652387594443568045299878715104011 - 4550021649489174116472140519929523416228107123011278739084333317553282015055539078606776876259628738087448376993801193251451673296510925225577265203286603857602536786561404759589364246308126556696956729928635529542832761098354583198224869243960094566241455964353338979039983428692851228856978392423794950949 + 71560986262474260038579847733152867125395323692136727882523150181177145526050032346646815633503819181049097447083396963116870388315714388861158191811280162852633670260478236187402519672391362381543748430716574725648848677812893437556332455280083345503039177361800148373565541695573258846852919928924249154877 - 98525615558768553523914561253376055119761542268821255250597253028346424125130350074868274485947435823641586985792345325497433954872969407934951660169794190560333173906597212226368946582250749168564730926579316927997191630230129715348247908903813833686806420864813754316389284017259958075073700483383393704799 + 5358493014159018151110306019414188401443366482533390828878588153924237270657211162207396455592545292115596564966717448066974022571552087820343845293928484045368156700279200787884399405557838594314421227423879077160333472477688129275324340290022874614042967407069455935447388415804019834527557283355835583238 - 89663797310710481585546636879600940040870845166614120702021429261401463257347897163074462334789769421900452608925911291895572355565706941920835495798437301038956908515027090193540437888963515498057343871368193272565241944254509568583688844659457132999087383206998150658836175132856858909250296732497537741490 + 9440403911953510704955609199118462522546969159294361115679964001969095067128208202978671380235142495494192920664243060842431049236464627103331285996753378993464968648353139689202039972946351834805543874912252883016750152554402795151625609573033493183190907610839726606922080056808873159110535921110839225918 - 21457799638701886404948321513754559680118192619039196726922001229633285404795091272801906087942814278147982783234165733955591079274024965234492215069316229534452749185795475149435384522743874369634225464873507029089660645472377290801538517394750755050835750498882822488302061240043291880701805970006302143093 + 34601241858178235153992489154363566911322825930412755051942961530163789553279237024169967243263931210587905323687670939702730687998131084839805896091785126613296047470576600055262500331821637746680489652121076447750079042944735474064557177506619768477733608759334395601504750316910835074596407622363931297695 - 24879191227362488219377381481381577049957493151049769929102026087396701785224290633708100552404086846452744391838304415822891188453192492898176159610061346564782016034128553619840613515194166673287601988923324419982793733683797161684438643192675577287333186394307864482202453182364510091630821947512259705046 + 103450953660312905541961327136746359534991486059040490771968614429013794227835017626759804639288113432551732347712210332460709755012800755979360542019454727242090797411218789006851073710562599252458946620552051918314153874747184637728072116094587384838416002546398982033848043597058533784377942968102172250659 1 @@ -92,29 +92,29 @@ 1024 - 92435280162899905227818541573305957665639782478377037313648510745437811817555025601483783005628430969232699108353806975298468602730274201576631930706196603478050594879475102858698719560485267244320059109718904786781293125558241769432373971408541617163594457153761480240604957087650552090980962289898118336333 + 91338861134529173742636614734321283317712406433818139285229062454925111527732609262828687047423080667973258817589805005737017416371360314088086808443898371429020158735259589920882443779130428607594850787634565846387075036083051955856286100630464641033224957452092909212599715224401427904042049536509604893693 1024 6 0 - 61516019093539692013889522697286036751162217165758828070676191516869766297678416976269631962539278818264514649210773243551046294938085009932344325798670899473301492122911085724309342816888922377412459516289367281872129147128430336758646855410421759958716822027587807362922711228417719722839395907964513862658 + 88481512963655310506095083872998303955363103665395614689748950761935149130592150567352051526842435768907883513122638406071951993833483039104880894260670448994086429616644971856997369229550170174238792300740232364024915015016653492885640971890845653859579668498528250516917066920672069528744730214455335881003 - 86195764223387104034899139867022229450119089616066033008791071547934482828715292874302963805552889935464649997789968881823966010789216481131065557800140492761661914684115444687908240220491740505876075546249934530273063882017882729659422081016447947600980580175537319215595989718394304054636476498268020887557 + 71420609539497237732868765033013438071208066944625734387424793864620282249588182875061993503837717471514509627177747945260865425509223920765478106067601828682271744524355493795121669193837190303641492443480194307599715826281960573836394123684702869297115710345424755375986644023739445330856168082010838417938 - 66090880709908820440926264632961239993160670449209213713065113125659161881569535642744015944108361417649865322192754854750656897747581780302210023874052123025509488799461322138861808485422246123702913641512293891767156217416260726435923437923621235163974924046349645735951219936256285520248551621357984200192 + 36213374277915021187960501154206429350509009943784937342853640962344665273661370341432812162660134104129081769292257555453657933322026058920570002011215114885632603237420344104120014493999772566832623489577942137696416594059207873047026684531831127098662368796483679106715230357303209903005563129291440998125 - 81125320860070179938880065848584819614630717544442228467872330762439573624113353518044223443413956249653250229963865332588219177607026039053375006342887614760726174965389629354184063324949460856934792129381057726723761089976497782913975637313665436807476439299644379836438720037542937274030887765022332950404 + 88784875219103004490867409187796580439336028275646934064032325734642172796350750877782655631487263690600595545185986973949637793376040039529334242727841787186152368722684829777472113434707623526142748869410906573019822447060135044716736888756586491608663760971724703067383426197232527066117239191970436021914 - 42948191024853372336781821822838469391534701059252248238922760174581267393299467364101875293266698319938587952303110295432741540429597838239579971674213937597007233804673654039095038171298200108271416407429017881551898207445919625982511569321505626555444703146552854257930612423674523893871305333301482115766 + 57669682815414213701829150785790139820922208365396385382451270040015047105011059602270677532141334599848749895445377163377797098101769663138915670832338561398070313576223809679656089041902001668549387570675942187547921753080749715443394968434937329744189522351133848627606864859717699163427995004551470140014 - 87698069206530146708416569926089359158707926074712914895677294244720457855104722936588485298177092433221658425594437337314375482226768898429874945852464258724477090828692398398144898128906117276775843354058069732745353466733091900500154881956508874379162035891509934700427671262452014036729680705529492099380 + 19430387956073665040008742545168228237366626380409449215616316415682054432029605888008345798193251163116713132110293851289775570086405711097037612492724618955613522669964620645767675728759532995017555557036656920568589220029848250912688353596366989096421783410644212433994547565209779383923475304673100010441 1 @@ -134,29 +134,29 @@ 1024 - 120242265353891692554300045922047481873580412081814852312316278622610012412349699141085216431251446316868063073124296564519534495060068779191495303283627533326627116847544544804997593350195611118016048754703736074548349446801901360185268478166518784640348397414405147608143291973682476695126277116966216169181 + 171795367802537336198216850040760302817719433285673072064016704297509263294972920968862879995019333546807716681922194952612358665832924006994420672781322683935998563828829629166676961578310364216820723333284118541610355614763234524893877254301205676826968663616237843247997193664755408992255295724018758287453 1024 6 0 - 90258808835373211266855694770655044928868185145409526443615154154191997944839992853769564627311147578697876919149739812953847181213933287549862005241929231372257096606500152342587674117722279312186256165834197309493940159973417538085035126055798524687669587894223403279211403653760632211817983476637894304079 + 138781939743420141798085654234587085378791442750844156618218315519623156030775014083940843628427157991650536995512183146050090364430217798889903276779395691314769341501283521555441395248293145295446229257598584303226472282606025256289516823083353133125249557574662930559464988881796972570415006594877835195261 - 95635760315469768841556933363272102346560676094633536874989656401813066226987733867860013275552737427738418730187137928849636066572005798639578189573626173484609652276380254298282553868702479356631031823069006860356338776077617044925000861133490081420034654499982624171571752176555774509704693342254549319854 + 168420371175596160385314346470541456127930556988792934601264980767954150761074401191883764002057676025574635595559453082438403114835695017344400960903147888338845250647685131378444914574667053754042483424927960459645361430078126904416924147233083786086593890435155965855696708192722757613306648217414021209339 - 90809018349256846647085079930808746464320966250951060891589388261560943833410922406369114896370501540909240081233789871643257253089156607856732076276514044636902151971445366184364318741027669227160232321267327121969454955011265415575482275183909976122110710181814691280753616147233693076187996032716203387686 + 164599507864917269230220181044130466242640054454386799153052272100119238662434506377210871322725801768535465849520862187042461522458751851837119010844326508994699806461980159073458635731317238484887665362257435016594387971946664996341942792674855452076757886270233668811767159399329679444242304826944461878356 - 112132297991559111282309568934986106372227545332776511795209348369586562428716345400127899442176291678476205959109869119623540619046127607537731277578177859025918559240273126067892577156097899600362383247721738309891854219841641551677630501223221768927686994784480299553651383548009458572445476844510419444688 + 112022954554594868430694861746706902810007259966892035372848716164773714721760248918761857377457366770462246217862095078291990529093104794681337350992919876990886726535142991553290065736768419334005963502455897767959870639353796998608846837617297713305741565185682566104560690180553705181428610482999491959762 - 5789538500428997302152053765650149031024869665962513738258606889955438829279876194740040809078811031990471347239725229280802228731211608783856103005519400004691433538942100949165453901328015475435322021383557989188105222750099545067041611616030258483633056143002925555086488519819730112780351452167807906751 + 20795710379390313360149837901235593902809611922782438280826554162582584185176550436631972790505407403299851110962435492486911884529635673218790787915570636384717044595376003628898518022547995524968409598599237503027024128328270655662334146591298270627006489949537312823974893037600566816074625503584300399503 - 103528436909609892521762337424623938814102752421274507158451483493684724861097190831700506383121848310049592559612821637042177463512802670355983232078856256022574919435935414921922732720648430254040655899791362394520080079567135623369841064679602672188076510258361308829687727029943321584418119828221246053484 + 4461068203835146920397273122878996496925951644023334909782795888195924230363311467297500231054245083629066539839024032350563196843805187870921285704555947110972472049763739700924273806542377974583744547273338787688284998293736197541473212310650426901783545952048410414287416361433915264087521382790658628498 1 @@ -176,29 +176,29 @@ 1024 - 113974307390270829704595349578913310066722675531921575347137523148981703426268705549020835166781529161701493646571840430557158177891602008370788878183990720643046884785630470230010981532651847891407035655981145786954186376179864063254465988631797188768347843073277670841142392732297237312085416165057383775689 + 107678493864345648666726963381598843005045134906745773568855127179729298765945796229988935480734186762723475076589458553114861073591179889992284613957887798550444135071834300620151269193028269405467525155137973905598460168964059816679287733081423902287277428322195154969572934367847409309681954541961841211929 1024 6 0 - 6143898232765286145077892477541836045632297291014786325302713400992132298271213296221332308996378104555543752783908808080870783020716085260639775842626416308448085260622406024209346821632861627259504519975501548599876346806760533975070027843440034675089073283329862593112803470393290357751556498842796719860 + 34780567649645587652662047318280460216197594322629290659397343806640717111602043777551795972363990570490561518129361133754971748815062877457811980871870613895746761204692874944262181605786891503668206019069701677551111685254064897625906904673396799614054762342291638726110702862138766341205373553864835127477 - 45047482677736838274299288716528407647175537765347948824711027643041704760288870740282898402913040978889979962245541990130335022898385886574447509499743699981594370456407584374111495111435806897457488183267190020187277576068699128913434781769902021871890426617208889662327838109855812184713851004924404598526 + 76770578985664099191449798911850613016440202975139749844785468106943538467941487623782662375335620379715667015148235397661770125559100524256505138827952950374296533996410404476470347577736554558794350087928716157046782489969073300743386412321573188949782078100848155826141059164451205262811577282438487833155 - 82795697583534266367376842511520190853446581226742226985762912111941208390541590347878324548963363215104083195843496963031072570334386362588214202064108457053405651153780670929192329770227149165245609972443851221676045774787349013613321978666414216036883233557120172098965309143739178407520621356057220556901 + 19375132007991059652876546182462672768720429677050803522934111565324016495763732172744623907045335493048740541182304274405106110493850369225158004210873483104238595711350247509966292622988932139561490663242014148110393502548086758118819001913181597386000596861820476450726333113377798106479230138706277155435 - 25880229906355987417048443339662745683496025929307390603325798098758557774630310189948529708618013477536719327095324879057805823082814710910504642840272322506338772144746395730377654904280294077049515958084088262251276481705776256600484578926821230685483486549704470274617768442869210622846367240329758009381 + 60332745111136671951489671083751897003291069716229419557442175701860610038139875996851654495020782497922916125497030526867835842055895873784260108184155213565134969114645958871640895775675472360543614497922018081777590790520072701770098022598964534954182431602697737796983390272144688966305745888541862833949 - 36744980390861858983016817581565444641560245335842609931402378876909295379769553524692397442661219757977701813033692377191780367467046935305316012100496956922085951918230841441997581526084427034406129464810799799799593083126824682509812576708954752699947843008307672414478391229642727756912714571481107882237 + 33206030625501357397902828493305862279894195856045523813806319914644617357371406587381751252409214237464923457683937662308696252667537129026830911327626477920950026367523422037741403916073653057335758700270326029776865721695045422550695292453931419295319756838382198216938790815705554550670037002167896435708 - 93931746498890597103118733257782712061507278165609115823000161580218749262918351236671005232490390488711179832465561874334923731589555445823082537357787848231793992771931809400771008819473644215961618693484941638519012030342118706580926098868741184821463506056147426825693726869982947485920885661024914645550 + 33699591887245320183352886957374795158953603724548326397696125237452265579267587282433792785552885615789973016310923276732538075279246287329477093697179355796742915804057038950601496710139911151519055346593812515824483642829165138763105492040862107512334441962031341198253373030460133402288720613467576919651 1 @@ -218,29 +218,29 @@ 1024 - 98807423102492429930268745630975757312710442265987489391626974722444583414454367047761528660033504216704156558226635445104894448714152726863223308098442320251156137488156682811350460534966144962169777948722446229012470785374308691808247430118092391490829696229412962154174967136729426052883542780187389840317 + 123460587970465722399480599701446111042791049424678164510782348298178989524706869827218072757318065802572872977206189692439610889543998303448261820274781115343738147716328254096174904353808537339736300386924394267507766388682907861666597761952802807474810395363126049870826035575374238638068965983199376357813 1024 6 0 - 64549827282573569661223821683778433142336875611542593274904848250938069885911249987175542946946869658654282518380184975606622371835551768003315199613988394666484889185955670078231084737208632907726374304014481300575717327888290179385195747538532425373380009611168886639127584368747545237913900986215352505640 + 117318302352368229229163809607702479318456428030157262995598611780776136494163450278418011369672196225024705223924157260734348678181103931116903595932563324645629923260513068155684589997607606713365161836567403767936006638718885167253192939940642824452024816730744123545240701916149057716603434108694989710429 - 73636250453944878341096432696334200702698206531871285264430397543104072874763632445610561788692826208691030515907933400338408612798517044523261111179649288751848730442741693053895368332285597955086557305203862706452223373741422033959305849205040367245396977521877380037962376194077376744163370557253796629545 + 79166656374368484214654356495255053395213742590584206280310930719755653489957925930346542517512620192097650425359579247070837443830862748231859562053718573394014868991678211219437490529223024342458612272327848652593110612340785752785585712120010687405752536405399684337596148008796260805479427829450136814686 - 90047699371842887045795925098160727351604892636180734457001718284143134011696968894946980166755598291233833586774200056899638788187572346966643153567962585437259829811315743909634908909082662481035546710725615427445514230073864976224268279022603497482873805177426913822874578427060538362292293084071476767061 + 40871868938993875410426205996751811587721008167871813439166564189762055623031521920195950886062485740929198925966775524584648439881883879228755988003547754790287586711275993853306093079373185290320968524077798129432974504079981251722944994855192019937284992580655570885903256271403090577186422692725459831875 - 9115882300533110533320125402430271883728240251993668377826596639411369393262321640454776088641577536813664997052927197442219365129684692546950544551008194436381949150276163843112366070082676673254884778299152128272748494200409822832169555332974121225603697420301650511304992668583600108610303388286957045975 + 89892620900640290140283566392805476442834511036692916092709883776370123872836264775868321860590685970283545083118729182759253902758383167687729739268452078465233562037688700620432639773342196188561501129246210605848453748122752153274263445164184465697547705606339433632142128437959746969173608800415728397931 - 64290257130120726933698021141152470681302465088538506851346181746788653877595161786119540130822567920477312949950982718070648964511867563833771395006562083493221576148599839934618407836746231775029691749613004808232713345896320469909812943026675413252169526568723297467597805871308793216708661264167033142319 + 121709777035471737364513670422914240357059445755508125094002474776054087244214559702633254647901247822895427221568520569724729995389163298559564480170015494003587855303221851200035414262844476231232261394773812801023837394666069091883472673028207084029985001140015089782123008327089253959339518752984564005371 - 26845809112830748951213424348778157379493334928631845602203489071032159000331814254666954321270335392941976157317373195459864559584016635745815797217483247587359120905027502821188835036257799309335618326919938054255712160946337422482063900351741886195278935583707209842416244504622114437222075089838837886709 + 118368291349285147157585550327202423335817645258822478079337019930721123815468331635525068128544253736950377216631099734999157547924851998471340790034858629390897530180532960195293567558086925678406847565038276833217752653830262850771875793504960255927890257698780412927440166594709334246027496966288743344300 1 @@ -260,29 +260,29 @@ 1024 - 101508066458492758073831514391925207728099012205679652123307354514934932734195822482169528209118418236549720855145624504946315772713373263971122898931978448309382517459432566431767420930512398053933909962008429517559844882055507365161791227718388693079346988835714646724856579563155533056841840764923482911741 + 115193322549187017758632085674974727024742715278872315780926012027804032179761766503288065034565716892785818153660349164554433828067796365626741896969380114418490544104123599167386238983295022270967054328089602503480562145153230657099035975059011144762714926206594556617956114445259820923651026107726741377073 1024 6 0 - 18094966270666600341757615203803958899771441588807403731653637889633185672846680622295925722601058367035900949809123968437072145633871030146419062724323629362621422178964934836125666825322583977098750643218772327199992871774885105970723817310453460139848128595957114499840166274261548332434662918275912562326 + 24958892788118393840566891402925212894261112686881756396217607457946596306978104211815943994414797105011718075194617345672726305027536665064724927900756862036945765691966423524893153682261745384165128816990435797199717205467355245097126693946214610135412865735012562961328364927779026079460708512689938357459 - 14519911411498662202350190289153079450960998218836862510262716271183656169763576646798026314706174683373201052543945420646503458773715132775635944615831483316942230235827414686195242147536461207965078368457369405716788284400327552776573272826443021111242598213194457713242796289163855980809869567692435243061 + 24288255554756812624762197103340158750190223778765519768405807403357684268583138358422886605098116268755079717463816662298139317595939687753107981126116196500860143071528623840509966635777831057754249172610936632021767758934196939105040316041127363794901161035243044698624148907282589708017305528332080549401 - 100829822604118715123148536176722814436072482852093886315881279658513551790405251018005350575582092689997344944250083661855004161854646534370764614148220116518252981194897290980503650663034332261761867902281915726459650291968214075577051702923706567392314103476661712678735115666275518472786274656847904898857 + 98573529002331715221466911082616318301300017750678680593832916072820765087229700809543111818625003499979817183312145679122909425246500434114287363675204505267732119319754784623466080567913652584576116756111506044251229410873182774035682045895464671545948436513530383740487677985431898275771829011975467387636 - 36758619800988867408554878881417837105069663192880003669872796599022231882132182770823159932605886945571779971084253648386944001078974922999576213946881031655276217832482121846933216754595936270608288445584519714020183665843778047016075233874031641473851910344486972578252635123798061401162697925291763818124 + 15353985435509734717647205939924424374297140311254436480413662376519872061599819892959995176175891437756042491481998969903341756892089428475760114248462830393435227191729623914880110584220456903870872511626091038462298582250901312945423814102221099309496784542055234964849111850334835617876760601457927418206 - 98954422490737878802687577073751348339761851462939759356912069691530214107182670740567414245254063263249264911730535276239211847311355135218241999853903438057185589465587228360001065925880392474421677199678509409007188573134169996457141436012554787080165773882777594876976452953008534605307630575224450701816 + 17455735070449738054682884370746228687686045089020396998083887583650988955042976829464912841928464950070337180970573621151968757420751546020224392735386909098113189353739054276774294071884697288831510878855213838041505870499205405393921909645992766577060606810395305981595413168173038810933707942671713337798 - 94651555423243727925284836770595215446033632966373930842930348982337095973921116325578222087213892295955414708791768767604608023678940852466452458914636595705401909589557837187572153271612758886005290729697645320266548149309389746386152913646486076746529707125841746516540210381399967115662271604255517413799 + 99078282433460334122518009685435268135390495565166370788375980674406524442600154170383521782130678737146346515697587435130336220692226983416874121180076768315197607852814628471856417469605509753709709939138595158453850817740160745949448738764045233343710173080910805476352529406131342795794391893459845853249 1 @@ -302,29 +302,29 @@ 1024 - 115905442434334203435132030544363120268524352413227438005896621348074275338040717306850044416905034343632867520965599747469172782203400980983630741823323943057580839927465570558565483424088928521501290827464658510566828325445473358000628142454989523014953064689031322340286882493752816338186368925981219432469 + 153256019031673973848391853908671616024035351852333113222956212092935054851555144537037154882131071118335109565772920677334385665987953763710322752551766091084637014937633351768184250877579165516584609222393690507834529036303945036774013832353124798268158248184389671641362425541416312746250270416649359548041 1024 6 0 - 103143446315737471829082018856156260406954006844151030128697141592050942723618091433391809283342209458536672169365730057120090346793397152165987123553892129060449489457979013897620539685162986136801165135141937188268214662182715789151398082138968131043082929543088462857916821829536740403295702055175095598126 + 15220542722079887934163021578416557040815588753014948049895358680874401987354756483638187693890778200226187944576153001580318905767308325025251868319513838639170229388887094978609944368236261084829465326382756814026047924860100572370509240911903760108844191920274365232194821110327754051188671927504786123847 - 21093465283395374439124846403749798935063364734560099156636978868310227496863538821086544738303350518658093170146346808049259906216185082462855222489769641277255000407021891287322265304591178496166873893520819194979043135142624917331665674639130067796039052804092101272103572693044811271392604926388251703731 + 143004036495287445500008244565089775614807488065311228319771443644042556939728810959906482515000410036341359319395672341423672298834030730662358936098971678898328809479500096931876973317120818472883465991015596717523641856810286626439287667681040066261020458108584755098587931772918575340120380122391279580630 - 105151249446495986005765875051158158755947238850758463317422621112390878337383240153148379880370092346800008824264379404671662956855814974133259278244329840344446075991005107496919710989594420384704764989485250758107128357896269609463718710814344737596073369019327376455733926447818113105507625453962069909607 + 25677830626343122473800267766987258667661454338633409925057452295050792502934635228012969731952432090824067546127184820674269109763072029928071755085679552707171555102523382002859000834013865264250888579699016146722510456747010192496630995123022435395781861793364259724814673958020662700602026307416209911222 - 61283933228608684419290795465645764344828540004925936906714687714555336357892232894989249781579179024102093894785668325502689663735762444771431173254788111349508550746367454027076673709606263161971293566586615407282583327678882950530025384283758978476202435841309787228243218133194418332399507845652872341542 + 62246636121089263731371807945897520167051837454698735241698439734694730001470335211863614247823007078485077900778766898167190790567301408855375740484748340320700390073275392868823940948653806683445411202776990790067823595294042946536030310357110325099679964532575421698733314704640641895828452919877756100011 - 49930744498336662181889151989204055105279236092828545858836893186940055185938177721837847596120377695235132423481308807995549601244142648702684428675952371139939449031842925865964588468162060345934576026669553663079853709071934669626745050547661854436198831062735632699655522347568180307658967101565763493932 + 109179195904717079139512297958344482754488860947001124419866306632211947700557001412569449694611680557227002345132253379015047209028361122554436255825724641792181226048045416132300441370043533054296640636019094847912470011225895961907747561407131402046285049780521232862899425601689434905370686341564422790289 - 44829684898021575993286660294598884158901788951731868330942301576440477841143427209536779165651036231914133684408695168475861763616827163141782429368799554964942252555412245179755130594670036342985806080785698319091152870648452879512582177672829292309817942236855923963950699629201136751220460749324252717791 + 72256199900300051197332501127222934244256559778006179914521739477500706464599171904600643790797361089413358501039731833363101680832368594873645195342133343135647784788351460716476460798313313942000048638227363109185805859595520325671335898545619147866290785844770980165710956429961244551737499380764677597447 1 @@ -344,29 +344,29 @@ 1024 - 93324302492808199130140038489542321888348853071302806650239414385244723974211537483002520341183837059316506964556579623620186543669899937696064920977911668256597669280463423116955319717917019567307329889476298137481841952456027055233366000222074063733100318307941039564854618790300804147830985687325329262549 + 135358305767271858027595880716111530935123928737890043873187024055476620530906467130993033452699358704424795550755169128359841746123492797756886097936671355386621176058979935393331413499392989299082084359031846630046001377108741347076252627789379769344457517235001038532356319713316214499718115421425871569433 1024 6 0 - 42518891212784696725875858055650600604108246670012265276077895513552577725321677717588029878060259738949894497402002060357228400555391259209731917943432365444873826285643244113485444162188406783343509644219109678872983469142088638641874489401990559140873264641726808645962550714591319523042987950285592368824 + 54594747011594798877885888974944176740233826058214590608446121481719016646101845365461669609593284564003581366359995275781810124519910313811380876256508679688339828939491429288889804388749815124253867496416627880709040603044538402764027705232404679640769755327219879688706197760711345784098387646185164981152 - 75291549751536791992105257420743345182482577809046353784700594093704881364358216074711299705488101138734376783695106693695251538471182399552271475151254734544700337045526308828125956898392019280265133388132621200543975423058804645856787811148851522717906121145694781740895433259432498460659911075052464607143 + 132783808999394318707408962088834983207010415125168788915872658758155889296838532193150695880199623917302322850691457856799843846471181568246727469377964494204689790089312937443605415487457400789095132034217110410411016988079403293808537223974569707930874192773033393470383855778863425429691879481694667628909 - 50978175916447700088518240216053667684870673847420036235002792619092589262136497544266464200349207480546365928164339934414367595072612018614325531165268369051297212383456749468294457604921766282135927832621122626928487667454146002755546119901194327747621462854007838543528858175885057609806673983395026231342 + 9473430635930700050486617160141204494342095550189134899476751191276019107931129114087093973056080555668662930307913633328246702572209665502366737090850431132340577394193612418080423291630390780237790223606432359088325373896719506291987815760514899446327539193574576164858114835145863147018536204496364575294 - 45639252938396072705778302104880130705153407772406002471321793384411905992500567210171883135004287934787044232716973226648803660269945284537097639427885903326635965087238403327182838075317269650299400949646770303956474277388670860553468893703708785465699418684174038665570413912436960118383352524822143726731 + 90024838355001075777783195974135066596911088933953254044502969121509346778938214241043930641227033089129624800092043075809246544470625613932569785625492513957934084324845138958744207292453298491639912468882105563813341034734148686353752495183156303339463108993280522860556963638419864094636988429994370751743 - 38013186874210547666062861075258166760615109425952150905181518861143222559954119912199951265061172878298238833639914869507920009913414182196010461381624209332240497098198012120091419433781364518831155899265689531191334639603576651285598143897328961102301057307254274334431610639636216634019801125227946348709 + 45914980508142788475969536593414423447529386876252836641757988714678457126161180788769040893130014877283087923780361131128613703067760746100124401445607902733176021029401905908890233576832489405771907746137014120822037941005000384307118527309121044551993381248785336586579186345829608419256901639247803554604 - 85049252916548353233861447384935486895006861567202700674588370555757614508798103563404758820605122800698832233699934570829491701014686369240227289569232647169872898587084339236738875298924166128821057679454903543115766248069551533282505816819884277101573939884857407325991499258590780403494195166284580087207 + 32911404065014905616571735182748738235851543040766582724263411775153690607184929086994340376410140178669625764641435927432683863591301353627927154715686151567872995056710033783341401210111884942070839872351093132272880604910175334910646752963148483903851675232134333338877843861382949858872798355076941765109 1 @@ -386,29 +386,29 @@ 1024 - 96947677654641129432053692801590282848867445537697451493922736175932291779820071272672626959724413690236039490294379429939123866825860419240206384732740627914281920798370575149622345956768221264142334426239991826383023910494298980445754886848334676015820676920651561493284042469908663704880008961798734003457 + 154218268867696507002031865996832738977246724680896068886617497685938467688459935868916544652628785991317792030286811386804084216509428288684761196875989322260388889257097276677216400072227578520525641529006704269719639306215286673007408730828431211470630255070235631883821820735534893283207489831811866541573 1024 6 0 - 93749302618648808070217897839932241759814415997415916946749411987545856635461536614952884256460594397007965222927679175539693559402752396538067995516788344068508116895475192183259651494693509551606332501288659599202246155185544645331923459679475888979221040142045149331365734109627405766434268339318300158731 + 27428799928169371477008314260818876148937722875877046040065001415256050285544612261240610068898749426541489168818274025311879557094462504325465143718226701031270459513481171715674711056192203762896591318737473272520615104809732143483277690473125331986133481516425478801944037361281857855867037438256343773679 - 88591976259173129145635694202044266099805031201434247443121595993691017165775654441584946313634153970992495586909998094664721713372347775101011059850875572354717680369332688950128197230872808349269309706809734510460321403576514431412365323583804364538511077443962739519476627485839118989389915056902685823558 + 105450822515849266246824784593332752863996144824625198279966526580096181889146860866466836912483527896334247490301097916546476481609859267630501968068493335890437763132841945935390933265030348476193713724966585347250648751479602155322327667705579310128424156557476020295924929348119910434857695122123769715348 - 42575950840114286718689661351970111621686309493145709681590708158718759438529792314889983671083215003326041806393612339006301068034992931241850342792545649841897953309666223399999914234439350528155564258900577268951586989099519930473331582145218329466694762252396903587607667346075594592830912128475741773066 + 17917586169419969792153843627847724624582303970451816452874219660498616008632452910042480347537075057133325092544315346979734775101435525533629606020738633039620963234297245636824119587829479049303232294479234284130684993231299911772911374146097317218619653947965414360245657311825149559284315208240541584049 - 43064496291705458504524336076225049346473054921477695649886760113387187082672578485621759269622589065305002049069497915413893351575042650143454495938325980146518181479040258392048864545346376346585971672448094055650954566712096872329823465436163567068615396750693796350283840033257854477203383297630587368938 + 83614794643827277304010494713733702635853026857962232621115526420680432673836574945397242148810823271595098760695291447287587902753143969200514260996554707598388279117974226336910323931721647138761776637137666044994683003226962992826724806567215542394880283109239037221417111570642218445097975627548527092539 - 81900749380819745213546459754756719091332758119155758830804852008037016512803399844299304649149941960381423540431141486712755371132899745008359589903830860830434478987247676636962895590526179977137867362906973481166910794944997738649236165802384325814575656461706345495588898502027050522613609818469969609015 + 98025334882817542595051261918088236466491396073054003041122381828466061599594157519317917789905097080123705591326984935802933433391754654298972150414662017901502818342450898330664054579806253102093229112778500389727696035428993861323041972409204375141288230032727654233984733937127115582284964721572192907628 - 73333627947886430331559491955680856474978748460266600669037694456728286563389073586185721800259632662405592201658385016537795533052015985764876784938717609438086082631886977403727912391035896539429294934105757813712263919387011949889257183319012131022883624273967219415795768809726875302581528242985914413533 + 103461867044654386108007921528414895482662948754475387341985070060736686576950492180848716520576397704988373242928703953709705994705234961029080392502757613196202086877221834313994327801773914413507546181585432001324248533541087174089562102726527826866350806480335498036140946354815641124317115290718066663234 1 @@ -428,29 +428,29 @@ 1024 - 167727354177575283296235069997706944355353371402089918180577267057334678418188810520847166932310275524601433320415852610631142842447656986744375591938652455411091898712330522049939659059253815074066643588980422099815823821431425085733238494031338015875267847707383566217173126797858012105681092131354068669933 + 120098847776259535343644334068493409247155794818213113642226621008837548248809756144435391881962615325304472487122528549774300242072619974184058684501061116769021957277559333567971936578385761656133295119311274656165996325688816719676095627842254071860445539705183362636859341285726107647847880667038640384469 1024 6 0 - 55212528739765004956720425923944299817655186482742196153935612638315971089606710371791470971887300374978844183586506653486075371900381182898430539066219084106652951743708316804834474071492387692170605664852204193872958998318760673106406411891449815553933844588162513102725642256312542518804750070757616604443 + 78341596191867165364462798149613513767187976045933270925524314074332359105916239984156112944388741605555584315673330918240662669972383036695380216369645786077675668119525313091263106903931060310783249892173696572488213764160500898695655888234795022024571259931035380458667979043363731060752523060256425326493 - 125521134130018008881051161583842438871352764638574693694804582800910273289734389525646179331302084640744732360170705515742155640895254805301554658063613366304840857712092749922337120635191634218375909427765307324094526971694236979991076690133107301520235674510926743255560077520910623929468465293282770246345 + 92197697267850835637041615816893083978440979223485010849369520091954329556817022954840969220750091574955501530801737742911131398158522167774789346516688492204741057116830688290864687904235809951324327245011263476463848478977798273152839939981363192465690825435376744018481972214855855772912890637337396617871 - 27303183713310647270239430513109683240286173819802954448123370716826579313726560171659538820140717874966904907786980144568651508762043982373023040473117328625610211903440801516265401761189709812839322672290141710111675811234378045537265033060794014611679093546390659077026035074869442774684438338813479119618 + 4748293030592378955093724566571489011651125070696427417853949295886768378111152102495476227775576523833542397763054262265966439448479602453489588304595952626064095178127493676309959239982750742094802606536171334162655130645407695836907472484934442915849957480725551564249920896993846998541219569493436633204 - 20517582242241300162739877859035007047878076436157927684042252369814854182910736051330481835470387047390838383944925852375538128360809392771407702990039516320549241146543080697815027348163425712152993328929677268692798986107555590893251957475287165017431351063386066168339776732974946091902042063287264280620 + 104584900904542556799078527703080866806316560026256596079705108220072609345471701770134318641946110143937813605502326970885364040335672893811516334052832715982398959853556119074396097391674101956889279124105778371957287930683941038772719876857983940733827806167120908159325650830304989434548687189098427086091 - 125835559924500361026951681300241222847765186627319590560094438352472863980544039143615177234020520882988338756341863707312405580760526056693953575468465964827542336485315943814807501888912677108769795118067849939434629344637352963175567421289586227655302796471491914750593107108792591241163338619713760565646 + 91477000374004348014105246188180409651649243135776551322813142142044628230484208001614477763449794744746082101984365227478095962810916246503069968738835364911647338508489896420278550004430041982623071421860079472688566117689119362544066175205618057687399701666608286724650867268340276001512993623664623275609 - 39455839416613969853839100198709761408356671979111856804339072840007840765670719865497340923297196652474258832084384211032896876448437811056389073015037846251382190261051583382825547944914289815592218399755293578703245716253260448083550156430721377021938994781258611779235943999768121074336608266875538728464 + 27335022029071511973872915368479831202151720242800820669365572158467591925687227633305136848793235934543162969534704442560517668695149887836214069200974132339079102773406068766037767764420212459478276529948373667413279044542607587605142289772231063326758841771162863193523221664294299814482921047353670436699 1 @@ -470,29 +470,29 @@ 1024 - 149156752675457829484492338921857926395681371289126433584047116593076369987747241360787492801209497129390401289011665250581771280217972173170615740750310394068113974975250202470798361382772362253952464329096594868484705113979621434446377598628246250036954003709660905146740293851838116686170958097567892794609 + 167849747908102684615783031952151303487318618058226134276355868669627336908402995742916429082816062902544246840315676375600682020395918653886440543549039685487527686497944229453172069154889512786032054308546997135806844060341575216655718028005098196791080486235476250761566643135320439910817103719665970114189 1024 6 0 - 11352908387747846374372382544228049271726588897582672087730260980437542587303031785369398769863666016131812336180790399373380928834263083455154052747498583106051460044488432536118827569329724006374986945162805013925839836495643941497350480016011233155251229927856315435525160642066187837424075704643901546975 + 124697971864257013069199803276420735672381775609467161633368671004811398338592994292357677388507254846498502768389738866111523924342131234320910182832156897093603904400854292861082845611922732284956492433793209240106822872232125951145778177387397679039918621121927819973078906987741480262525622005602565399227 - 5924580563988316371103504749836805976866443182621838060168972348147805336044130858428361533207561584380432240890820748952337209665476242473843453104633480324663638050418289377486524710747064211208972874942925445061968821377185536287994789022308227017184318180048755277868646206644875967439434398651548324609 + 108887781890361525299548949264309573612532412215054221866945026350960909252554790687820537292488822159239096136095460817189450475839784419203908369203805504902414189148576907397548005367318289848718165066768409808513010231990171238509327686404013042691377114557387525251911427307934702480124889546002434153883 - 83860846070653179149971826330632184013457318647561735410747487053401978313658858920025339960888588834770910085631773586928930125338075262176791867769023543921197219909615115600759359245696576488172992510798761693224064657506266221986536956797341772968085239357580496615776718932269765843251044263512436015136 + 99965937256071531833352267584518740705187568678398481975025487900445929854870225696845831801035897840798993192645749908958835960887390699965754669201895122689762609842067032782947025374191336414827383420980245403487860703320619493841364508653990560873053561052051848165272882782658715485304580849894447481984 - 89144604640946879518870372719545566701496234805285239542316606982530333628450626702450928058204589715273784804359866235259218654233659016527471314878440750019724734697724739198635890891822991381467431972117399010037996038726427898442538884429809140658590531970908625826945108365768468397326164790721051678234 + 135464487014068006350241183417277199933512080629319393539084556152088647569462879342427336794694607292779308330281931121306851709112290516904611886868248721653328973827011082831762202172003407136709090048796766379233700381954200275601566017619852103033202510881086909114257203408422383001855075728038739087666 - 102820865676316346957912018152813405266463198626305524734449245075212023016341056381052983510125315953429184981187357888235332912350574250059015810340837866406426404037716528557357317424782799396883279997347840149250126073547177628090959516190544390191869883221552750620613996888907802058011003802412315246930 + 116087460929649477650719239236850579624411409915463138669472799334909075618371332653913172377800254417621211492605964716808216033497729198457377469580439281611985552152638264761588841398460105860435413320874653840732276755863584448068058447432518834882323032920701627821579231087160538498920135097072056339130 - 56343229955516400442946814456064441447178515408962047510610551463883512547127372526397886490097437294364011273783512771407939447206290009393075915985489490489534298740530908251463050477206993005369528943662202499020792507060230580415898683720172996453846014541031314731050938341036493335244923473917023102041 + 87022481899114200452477329439521478334907267121400160768484310083510672665816499561166856734334611173826744984646636728146751086237799447687536072677043559995690196109619136304467129246411278102278767648846219215263506982413472377610126752110280476180152080765605425555155921191279654185124388043571147181327 1 @@ -513,69 +513,69 @@ 0 - + - 4 + 32 - + - 1 + 64 - + - 512 + 16 - + - 64 + 512 - + - 128 + 1024 - + - 8 + 128 - + - 32 + 4 - + - 2 + 1 - + - 16 + 256 - + - 256 + 8 - + - 1024 + 2
diff --git a/src/precompiled.h b/src/precompiled.h new file mode 100644 index 0000000..60a2d2d --- /dev/null +++ b/src/precompiled.h @@ -0,0 +1,55 @@ +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include diff --git a/src/public.128.arbiter b/src/public.128.arbiter new file mode 100644 index 0000000..95d190b --- /dev/null +++ b/src/public.128.arbiter @@ -0,0 +1,71 @@ + + + + + + + 2048 + + 17922566535173472321637651378992309491881261370824389295796478778365933043381199025931592287687444863193498807053180174214942396304465286807504307195589537646962295543730745729314839986186549732683780068825682050157479962058126258836630962336632323681533116375854787590019546728936436615378805666244633817197486165296006010782771456085859946287408639193922449676261355569362932883933339118425710148445368993964357524766679911141755684869627820833071195228351652183708830438110367625689260808383249127503317161270575865050386901761505124292760209352296155681156309523576732824775045524905650441730672756219902055885777 + + 2048 + + 4 + 0 + + 1114493519872388528784525416661159634793842355304076937737138660688780680899409786151347615350988765648895892288623125616168420692510374005359515348595560892968218898291124030776558208034223741448392827277059844753982393719819581432566123132950300842491539757803217621653524340158874657327270147877695302426942455159584361688413878261702832534933210386226572274081628187570371498093777697392120973856190411261065620327585759211616967449882300426518535961616927540250237417509767418656401292400812306987762336964924415174902443142977092891596494361115690736420770160671309034566916659034623814232434418112134862033584 + + + 17279059602328782181514583846072474326786206049789552120801657065133355380163828680613684878977486540659615089912794302305899584311049801279041381077016081154404877772729243835057185376916269689140393077659099657423438574576051601821966360624063880380519647843436575151324059669960825741688736447235134771015104431196092112664828495047982827505798760053745098305011544018282461059749693966523719366283828131145609919045909357550813625168924044838446030510993386430189602870867885183440454535146102890247017472347836753560631961153377380642975654487478389375573659163647436016572766371559694369841679598227147203879679 + + + 6922503387754218221524782287398154882150830991603343868445766325614495507360103256217804201663456165299619716550570759510176838182160079843728438424255957301811440242032543178548495474255921739185123456062191513052302784666282699702938734693020712951064196560985382475996138249448355404016711497628671600748262361779279890606801998102749003290283604804104364981305701849418518108404806048492990382993120583863182544462202219559634950890666267777732647677835419700483234429029070776276908811978034271012781714481000557982111164612186032951836279330329544205299655416665520619309779448947832960139196087480419546534838 + + + 10745222032590232762035928648548561243172823373839669733701684007540756109594549421972543100007605777010583105570701996246564040604952426509566088235330637229658648506406760702384496596693208315827361425366397665379989235858907362422381822962021893562692067498738176739864520510186556493207104406053094514361838898207928085232088561595698975150747708280876381112615354789334488531956911482774718063248888353034932762280040464308572065741455945851657665405287123402036672767373004118050429218321362800093773356089024931060125550312595442765140362210596607399368121948773182528185878906170766641772640283618733486057518 + + + 1 + 0 + +

+ 0 +

+ + 0 + + 128 +
+ + 23353349544628782731763892580453357401950393402527024144172409445365886006295633046350760757455630908410562146226653124985441988448778685568375854777123469529530005398155148071342231881617578497401238075810701449297766006618069246388446611355328818072473955848854395436299891318413876667278299342998180548724277989420710786231788803688206474952398792529223498440933891226629639072554368282753267238008519762562726248121567451539429817736553330708707439901477062167084151234476049668288906966758830672370388418587546567379981136839206215779824275779399256315413705276908048777445764985743988964831848217093339883010489 + + + 3 + 0 + + 278674700539435296802663134601670906801126010397182566012584282323118504178190834419273203650001530930434746672667583798958526785974958542174230410668288904567866943776202710298840836128913241110052223224937981619141295702588266613118548297564504976314825969584169400570086696124397105962955302062253856061506204748377549139157950251051010446939478008057096263817222935779481737596525003011219375999421311499983446017571071226219411750383812561846118584826239735580723172406242278389233605747507622886839046968563191847159593743382512185912174479180666688404221237596305026328359504691908677353816753955315822659884807486995908527531498566344360785175696150245379313371376969551868388912949024264257578061836510322128175794482192666060248502449840406879189621504045968512955785580781520203371777771638527338070418444884886258737825850335058606411960904833672526103292799447806931263817273080264574479826355194220898884455138593587642098167088773648334793993299871019350370119922610576274891066647614355255443876872627181087076877215621161327336593533495633465312348789567425328686721725685766993761039021841277103123863723067071449129964151408085284475011842433790846457952322002224064153539599338324291993725829633995325407251573387 + + + 301195464791963642641947404283932480782791215158305770028357883559970880908683414957904777278954057043954462105989357507655785233860875340614400254293212652656308022857359117236557583797270994239809359384078980077756469049781146048918203854551374013226232042285421086709724298328976047293562536801260349586719699348646683995077446526389119775955899496366763789305162038790070332791341583135804765785463603581334311324754561412524929144543405840091812864112869674041033092151061196632104343576159525765826719791594648088799687666044681439982085372960442665174347775951833542863816687776842041123148956890117270321667690677943116216285514010668674155215811539655707413356640158296992313790350818729505747410464579930486338908697792331777510393471467398118024809554573998514518251361087702535783101449078483233910609528281574439104676801141954085578932196965122284988465474476790786823798076531650147725528734601160590463970356596061831268818954228493110927532005624239287728949425177116377282246285295165539139618864694259097788773898460853440989044988336601329349204598430963525106849978818229018745417680269561178901714443583657043462233511440196112383527055050830316303030040031462841707470928880913130994359166284434660477961607690 + + + 138180954303589333960605773765918699493100826990029192144391315745175013598827161597046813983014945117891631568957914872080758358262225574770173995713258374875152071728600978114252146576837138258689310357023781837473641904028184126022355646135341944325685229448591480947589822692535426092805961533224673707923991798241594872352938709361516429031457218276032126961136216855460598250467270539500189563300158123133769876616591233620295170515505732483045673212839485168648989616996816175626128347985558263769048059222781951041891498442035803024164948226516618740190661795356424434438952575456225821464987251165847923459137454444060314758597480610972594717275963613810917028407029458507413656006071490535239952906939551339170181662253517876392217304896016812672535715683783016274108285724364534754994095731312470067327653806956525420937861547931057478675398586131817949491881521543678765572421305766876334055705691838531890504309321246609530192021780624411430255509501964830416074039224219467133667124747260675087897648948396311606515147978926051645291336622717846473545506681342564387537926463280576973109681568936783606665366205168362313537377419265845902959430113241428047900837682320208211663936941478383084710809498128307055338165233 + + + + 23353349544628782731763892580453357401950393402527024144172409445365886006295633046350760757455630908410562146226653124985441988448778685568375854777123469529530005398155148071342231881617578497401238075810701449297766006618069246388446611355328818072473955848854395436299891318413876667278299342998180548724277989420710786231788803688206474952398792529223498440933891226629639072554368282753267238008519762562726248121567451539429817736553330708707439901477062167084151234476049668288906966758830672370388418587546567379981136839206215779824275779399256315413705276908048777445764985743988964831848217093339883010490 + + + 200409936153417079687085291033203729953654469794094662513321938027491199258052299914577739682265822133856055532852005603609002550094767166058248034725767525935443613047475313426195949416345960955473961626917439587937965292777357287299403566150005710658758968539919989061191560911141287900789543877186339118429466653765167872731227013644516965774773044241085082926318261453771147731362496884325031688351191709190827908243658960719473596457863412017256925989150742254765054400303899235023500970180193556570973439540694324584449094547975014473171781301754087040051690366436067307358820721879165849865809409579408600290664214931613382852976006261670860048938051025462380115957680379380494368211606229551623844788145614912379535007372163321826116610650126681203709951461339522262123380997647931192182883498839683234720826117206191677275237628439650466546393164054619715120721272550663429602839498429928953803663068891267226391060867314637060824189608324815857712039966589342226114195296674155293739305277179324701686487452635138405495218219613410046381069705263919651499861051718504179402095628909980308209942008754504720826441274600152607860692737742352790542787551575886175951321825764881981224821545458533471338755440320738933694765552 + + + 156746826079093463510202671117590274450550944189698755734784136487590305460128666464197131644671788232555462231763284698706422253250012012338275596448403280176302094063092790751121080558296816536263723116374505662040890296222741166743849029669394332148907571544463518621100495696886333219723928681551458117572606062940166558200946030924535740986611001143742355421233013219493499934770691917780515182737094260976550878751644321311594766116435320016742492540448517453930825635816220900943369320095146142103201995748838358262337737605104030985794762126999219084611842057926980135070280415786726998260376401751186863421469779836844974513071715701882787606844667110348030197441431769596607344892648767256473521913168852409138110595390908792905985765224099266938849090988809657254576043368723946443298414096960909090823886104251774891671694780940675086851918131498747984539956492533749304109767703153428322599989851614993109025739514843483236871785022679990338882949069231779148938976608475112831871247651180691879472472043811948837809531128939602885051079442347584466593414783671880575245773322099875723947277107455709937136885827183463736662955060424888824105922498822384511127390847828845669254075381572833164966668492112514652299682522 + + + 179022449734090890628705937115291585954145329389417143506349897745496100022564150794651924523591835736468857850372289763717636952611863025433107069051819476251614114497415871198215238379279261583117718588528649542045213619500002151385477257094204028033766566593686561767579027772495491981947138346847901614569015519888987655269853564816464416381083560800361484562622576369783571115746483859034317115559280972276916549689599716351650574504262665516143994884578375311816538076490002313960459046908538985351319970453419868784256612344133156750770121163634942551118817916496501975253647644699864793856299175588631647061475023113812133691437165390516440136589602257500004408710729854045715988098599228902702195065426328175017040256219846200439163626485436450885686452462811365344130617713856718166816787993503619172839215660076807264011284452092113186882551059740377381592002427157285798316094344149104594970120769408348339692490200169481093109364147864397053203048548033350866172688070330803263078308949951812072661180356329461089663006477064229094480073683423988921970196477753864175025296117381720464773200667727062133439125687768270248084816613871998925485046947026471906495085805383683038434888821221180772893478454523603972997700859 + + 0 + +
+
+ diff --git a/src/public.80.arbiter b/src/public.80.arbiter index fa7db9c..3fec28c 100644 --- a/src/public.80.arbiter +++ b/src/public.80.arbiter @@ -1,28 +1,28 @@ - + 1024 - 98489526095537812671914672260560018090217057611668596989734022603435812585254092706327837234715721379812467460348503624859923588931194279750863019313503365130101344590210271036704425132951100630442196621965564484847520331219407694863168963366341549385095269303854889749985679191302089648444817261901537794733 + 107700103880419692328367116189192966476991676044247270066988388682573412093995268127675329714869524882503283365433153067855777886711347755822415223285014370367907204226030855736100505094124667563432075907093753495448179510420086019113880211206042464143856137333804828018569350350077616346808261528042365211577 1024 4 0 - 42374133222974968210028057215852158566636786932475909507782388540803724724844743018911235437443112261642654306808448508093869539365604056801924834100864945989117146560971481644627931428383148822444032525058463440490553247719639204336971588909832619078836226528973706924887750703136957958287945111431792187961 + 49811239464878860274132453853118165567665132210498504237556572205909237528328968498933157656819613038620525455717236154422037318811347718104464880183252784002775465873092109328767022450835336038160313127256576724501524692907461024498436304787113822855161241721807247837541332450629698681312954571290009537051 - 8334913204900919161541498482369483107725954920388715464140314375937204875041044923369980704904553157522183582654737483910021357149434591738078332164194247132245817213079683236963565549821471398746150133301533771366475500803178858553507155213628645822804243592196421503784430289698365910154426158025995360859 + 17027168056076136391244849220951406305025813907508505982424809616929763646484280951528565172757897527053158579076495409131598179754969112120098885067744704657427753131869192016296254510901103944346847132094870989107467130103758421548956090998324832190968916423862712013007538578966963387587264785458280703622 - 48475321241872660784252352796143437053865803452281634602901314567823439433570437059783067556871053235096532299944017122324229831127184220516016170315153374259709705797263610084297604423004649805314241629985783879531502467350783807667224553546888112509886513382549631529365707475524801261191495676653497813729 + 42098709706440231891911748316231304841709350817768399579904282560957213554536386217901333587362029920885504180001839385889984845992260847425081760408769181946074519190294064905186606469192775053518087508245771765781558881708990486421009836756982229253107658121862326056529457376882972066640895392475655180497 - 56086066421787991575615487534011085146976787816892699254990312292011344787432608707305484818422983163754884106272433742510567250141007922509450455680707061522300675631080918728325451343287917022838187451362567049326660756517061711716096349020868314991477341054817286496284245487324983177664193151961310067925 + 27269494522790090735140959017359712614909438372077400292428155977842585299426100566659205458117020850798869425566533595495660629106252948862453459224252401830860280837157699181944673145121322079771187566123199358313444080388463054343347767294799630662050886709742907169795252338316105781197007706038593065838 1 @@ -37,32 +37,32 @@ 80 - 118112606556135514693761378392898456814759166524210259310909152732550595038156852144910545358665116801300982265524409531329381247033762555506391501421265666324474106939410586935716990775403541685690580765936082151124197047973727303794077266659824937187858669631769746655961710436258884028579298446063909996297 + 157460659574917351903369831024682175861597550158671163721833850074414895158604236530506554842287380041099667143154867046310050936379396147526924595991190388023049746134418297422151991403446948124736499697681419850182522464548659344906515520430666954119044562241871279705915585957813296923491903613099059216881 3 0 - 13327906542229756699987077168111000112213773751885995496490807499398210662947954350700189731736366368311136220104869078354757344358846234769688167483187203821476462017838372843973437435065604878633156795741043467100437669980075301257403950822931372947179483294314168588340228927082641898491248544858526109554783003128578006815579454252932171395408412398061590410125952980069901247111396819269179316678244068595435810404148544751944254043432337733077193802802387975285761323156643380476292397735566425428836065452632350775985786751940439897881829755780786007026468140871352272433738876292071167871371248149415361452132 + 11067118663010135296825619533583648316963784982800157913323680145939789427861210464656192171540359819691399019074826112071701662334944814753088826371806595727517417884634884177279029951631584592818224553798280996290345970642584493295920258952083453101143840363110566262628203047938988764866723563029285378933270306548039327751799434665394724779395183778018527642180905673305470196129102073647921409217113690218859394396380683463026560691784469672569799690284703401782299091452848252938314873203599160258404973950778456209077938143908694778803223397448244608033662442251623160531516052447842935834946186706593746365710 - 1654165017749398908327059947978584259773039176134711394086297778303451659552401709302975069017642903366001798602362606883080756951795985818282370007462273387133894935053575783509477445026722040319472709935385673890397172628405250993078757566098543309918215779052481636001834999160681250950916460734843744393052356653846179241901499347959534228010532140740550645266400318387012286713353834405504243690720008114955903377199645747521496843591036928906924447696291620526705180747973091627316811880933423690536490318301686277536697025655408614468783809481096887886411591729436558056830081944722416920384798508312618094487 + 16142411064787572582402712991822708008440904611000549124982011635934782759183243976092352168298545334830263696515225974760161375664542096683114491428285696613863250591013580262107096123895664621603880058142056573759358128749891689824226109424246215238780682189657232579312460661149169529371978742213355186353868008613716259803866452524343963828902729508888535859917733801171404986642820520029255269968872112935449965444202333911259523419568480026592307589711498096241673266337911998084564534655849090434500980859390579383826874758960993074503326135445518699147339596284180781816936460336171765561266397187072034860360 - 4093868577394065302501380165785647966095625977084857067204996598920159759640249638574809632367638302050285173093517403742696155998907234477289746134586563378062873857074413933187998663380528179627889378117095926026337270200819518552770094363152513979938404329089457313962476327463426988058481085835095931245511642519601111720273105965448906905956398898316852614013140997921874986490414784577198985499445926659319960686206958067134620333299195615000995808920641844063268201751514198867599670754926541093077818825158587510752510979092368893920340182714512813931608764740042749247822795879820884938767273925097962015056 + 21734791425473334528982709475692823122610665879921574652954906635597705292253499482704361502719926324213592867725042985003764162823843798891627328776144515056149609188796069222828234328241795776901244039962098712542008775131517086747471893470000694763152058194866973876674119639133039282871481817552345284845547043910563229775411878908627783538065669269975974019564013736077054916038446796617730143701554504692776941699173638262672611562364284300715761900012926344475686775028021477133128114344138004356540767501472336542888800684334732252341880557675234676057226715622177772904897420535624879927402839031825542901290 - 118112606556135514693761378392898456814759166524210259310909152732550595038156852144910545358665116801300982265524409531329381247033762555506391501421265666324474106939410586935716990775403541685690580765936082151124197047973727303794077266659824937187858669631769746655961710436258884028579298446063909996298 + 157460659574917351903369831024682175861597550158671163721833850074414895158604236530506554842287380041099667143154867046310050936379396147526924595991190388023049746134418297422151991403446948124736499697681419850182522464548659344906515520430666954119044562241871279705915585957813296923491903613099059216882 - 10615202007145193391995695743045153359999302417007810898621357706965863845426337856323728177777375714388603130640127055835310274546499961400338921005602261654004903668493393789299518848539000846085715699723394027158152703495601396957938985571983480307035352436239338768024775373542325769602783700016458501634390517494877264110899939197785344441932941859381543122631165289024396606419189105451706496468030780787714124274641468713240575261597714958804899582001429718385778037020602776320322493434232055753498603051783928558408307055189492100796202975028087481572827056408714107748937988027454906532109688419032294750315 + 9641942891476563589217261538484918854990974580794528153732670387705786929936678402614481870862494718802796228074622677383651612896631855399866334138844542063264266274408006966341520123665131820124846307201692061179918953903257645409414586349197295665838027185670434370790311026971084955699605318610800281504594587652936179566972590561485856364469624734305908964633168724692041482113246295823772221670247584658138141036064853144219886478203024977770468009490348195931060424415228011959660739896586266424580892013266094375734947778562662712879029151968655887317889704813707693815227446976882589110010744282841648595233 - 9294252346504423686020855561536435214727430574801358400239663096697391094768891170689103806643128323742606808952061616702551502338367396063830406285046741965628798508801748766019314617834735141194369548953753258238284994489066383093367190215485160416307404900502291994480678279175788473778203996694007209284005706680688566363906183483733963086088039824497387716218574338278522507911928702480290576233300336598336393947372208324139102536480421878343533262767727704623749933975174822258331359877747730942450837012780968565312765686913759428973764064681097821479921283285467825695645643201219650226743962920627006642808 + 22543213951839230687308595083155844134840987857765008968524760881474103072657980357672437508895495474256585743773182287060615200802673359124129549644998575931955281835043570985388000252097330649917218150828912124614225506322213387355061345852894754476841012617301213305311654288602667713533522035353052143029290199340266400806589662518193757328194937473416895431563034637475978602839452170977002409620956744637774954554161327924033375106469974827129122791481179130884548002656596097609157598351335529636451395125730417175755007951777966600850324517557749023562997395128202354022727616564382075218451186168864254960450 - 2906032157069603336566873259323301250661912058218657920015256483359423538605832660225494458591261095547044143917088414118090798593905763414319162375306201346135727437040570781699227932028564014364700067873070986604438730739768527481638739221002172180248578968080702000441144425670759469482145984488771103175813621377444085718717332637851865278885235562084539161040859331482416361341079578426695516376654266093778872473274658150898568000864261747333413365480241547323427366411947404338365194123448514556079424129674960168731465500994330553105772723019439372603330494940862561715568646995828533502717491918100831939173 + 16007126132335876296358530597585430668989383123512222504951907430189157595935200594489042448702835422933998848981064638305589551075875746673848577507980797228243724317600217360314181993056200836552057047962300075482540048514702268474315911666963796510402707215680162558424230157686502673031715075423100813779740170990903612111095246884075603475966218624374397662701403896492835672835403014275752741826594459849398988413852036094784856296261380809521230991241670141007070552065727531399542077489688765118197856596892056504182847437654763318575990493801734767349298809594541650702120954829706069313104468398535370731785 0 diff --git a/src/public.regular.128.arbiter b/src/public.regular.128.arbiter new file mode 100644 index 0000000..42e9c9e --- /dev/null +++ b/src/public.regular.128.arbiter @@ -0,0 +1,6197 @@ + + + + + + + 2048 + + 17949823565417453977679055631378840470310452600959659032822302478471442492463065895653135246970750893691489828320453810048813441340469129171111083927695609663552772451463591881073597565760427527600577723608477847737499196341008206502613694994675002253273759501124619026725627198130161560564293498049644506610526104360932209857427409776688184165968395122271347590306287348714845149599660262295572277088622803944560809591922217512266575502650989550399443154093363261010020606567985118495109521964353918983343687196190310332816758453285452760685870930349577809562599054742263900186490458808194811619541950557469750269669 + + 2048 + + 1025 + 0 + + 17607640042018391011308441625532651774944491009163820455888716910977293180687113288021189857263821231404902792907983518333267284904778834738652413107750276637733443946151015456033379798635394331244563444872475350291102868512872508471103739431625911563405653640882791878453987028658693930981385724491947846954083192130942313765053097365543655927478562795845816313057248113440125904085152580387652969054928878333971116737940923833116563204810978187129438690637230843024273785276215895827111601983519118742210118396765031769027609617409682420758205869475702179922595750682510383559292127570496053586941352790305901603298 + + + 8375510975325882623540524934799037012730716274043482668685822405817205178549617848241972493787224231395771499114546119292055095315702840929031569232565843205945215318391053559161410602587778097732355767861717026487565655948380624372925493289131059128579070115083157020418167608564570895823501220452774430629575720378241186219136903253226470661220859641062920773034262947671350208393917110976634533620288501477185967430645656549244671256070599789376218409731444312282967164939548808623171691162240840878178742118138880561036045623988628906563464858101938262070386287640349532005157568876925818680032017374404952074213 + + + 17065701705278533874133607555592380043034055382529269584159285926382743550214333981867543391762082820212392479967449562268392137008751145598248437675714988650516335925518373223886421079008151372068954506902791581067478933826592313708432513977901250637977976577476491051678287441035680532505459378578622552166489471698372756460925772608185294440941645431094717321789043004754271133520910545920110352478462809414614955702608845714565387194725425425739062150222954788379605598774152461196179597009486607015708240870870388619462352536379302666525940086324716230704596753092926825408758396460833545326742698908602966002189 + + + 15448879438275925809883387516202472269768000062384662787594616373571415730128833921387715912058066243361604288532287049346173847721008410573231660925443786210466792265267123538809190168355447650198206770894290159878437883067066797232581969464785683161599091111320807879472324779951354487260284059374876912987800523946038177678317125204367525868209163082037894926050050182283996860953892899204830095297604516191481514233480225497316306004505408674346267365930580650859627660587850415584299046593059359500947343509029178062272753181885769639982971932156351258843942107615808079893885760002114147073747018998799799824552 + + + 4187323412090661570837002891242320265841696721947821114320633678024616825722184202576551097991653602765202003037074437776755042864750734425505051912865061743421790346659229520393695318703895051554189119020171727765518249166718879519514797459137337002103428462674459780397234570600032539880441004960309793957306714324159772940592490545832456568275899496516802889631078056694740963904921727298354217168346601482057039300693799554012805225485888407578353054564520429004039220902942278388877985685816196684622320653427311410893334003594168440034134545950844307338771480182332935073113825386738548963594092626524413476594 + + + 11407564881631659537404090403523982335526372628961118214584655154351583715034089552719178772313590496864414206241127034685254838736332876913050492471427205643212129120724634929718244973545208633275053696976529072953110641781694733139020510963423901074805273882944514023246979196008258137550739092728241636395396808322247855874091857926136987038296231648385486694291203937204484548499446085902306654275834600678120845443166710137675988539762612507349823984347831175588075173421480057845981298759151423671303243673140239236930423337023422373442619737142617062609353503624532581574881687246794242725581367867455080939887 + + + 1367068923708228757821599610592275026686803253091569690388383936857980982741170266032933176174138841644637011093547646073870730586795356908092433863466342887060751993611803865968475056069383435011660105617188888071013340486325093026995664722648903340111384604966791895570054928932873704941661869916877000680151356751250981083923758578974083219770758327402516214106267208908709195175258824502443753288916193236415636158281014424750966064222017491609001264821068475576195216235732442591868449793078841206021507151493465259879041375277789052546491119989257227573065269053210486796890274869229835255603372346680230968094 + + + 15313164086887113325158861875326638864216572958563589776023245469734117801518480984576062787310896424654564429833678440365914890799668580249416366748836766153713461558896640684183027315792500820313666779374977837310411994742184620859421724445620604473530161785553271317640866072386718090416041325952973225013073791855716907145732239265905695678048455151441520064941754181376372317554695944581034252117018109176393265207095059874389528647472385559856181808427716469268413237193376316730774910396492075914997444974635239256485018348794548753655034206677560477997934207701059967427753503876099088663489206613053912994667 + + + 14634292909299654429997643697373281075447174046746048778720799329870832734106662192201199742847493765259220089605963857639531446381139879883624976643899306245132562490057725536661195116939608487413942887413019427040811794077431923542316082690985774970689840734603305813826023041653086246603625335448608809245311448953607517959524343476571722991745972829894906346193255371660484255645160508752476668513920797820726613232871997122797715443121426583875669048633008220026171373761122916622137692606811211080874849621453995665606484502579498634418200813352067741383700379565897744068383660513485138013863439157468393412142 + + + 10000665445159652932884264621939602156408732094993066591653165106680198190608639568356310870942735903057783601854809425301951019711275294677092453221278825512688148659134045069981989480549951268603766885958184535618622926199584671533597938618424623734370453196695765913720352757840167244906669408201498293387793544557167251493712101245606395825521681998907640868283974301580222952198838141295647426703191092164482842706062263460960350931793016182196393989563536419519849283442840123842937973592729026291262729461889865070481535699980565000442879023724903613433092339707460066896808426461928642027476076529490178026470 + + + 13758725443263832676130259588662621246482356869888255809323519858952583281943811372619496267417743238158941854347996471813259745530663006834498652797756882648816255499149215589399068125108401479848466514784254068583946342611089222836524213514400752155515201477042808654068842708745066519233565572195013713290439416635494809146477974164596825955228211165900776313217379333412332514697844607767734082704465676486676711392414762106565606322024815776344038905116916990061047823613432306919901722251099908892543538333703088954985315227919939212831100502687362897739967321313719232609409732271702223703218672894061439503666 + + + 10305835694684913663143327485706324240865036561272460310056698535338248669686387046213283544764212899175338723687603405804072389398031558555759158354750770917880184728008916458494556252158547596983567908261941524982339423056842187206350085432777323648919698554187394559357563602940804436525103175054886900672563219048685238086551229163623870783813414534842937132022859498185160844223087608396920187307914763603670411309708694743230310441610411238830036721682116366470385013692594103815470446929085006124412709023655349481911342463520671606648465871556342855392485949711947318352743875278283757017900153291099958741710 + + + 5026689199482333589129451365840316920981203107862405645304463853598883559549319505127398259371719734586698220347723789980804297966642838622244870134586281513985977234874177736119089238758982390094065303593825583093907625233395366441288810153686355350591933925780015277408359996697109649388490254781048694832613134717528110257059347125834233545743600439240727861780226258887620214306788347578894479377161425038954761342818310707936417272377603197860928552879098368396107186594185565610153940815078295701361687713534402307132961062262878562797596248037294068478998796703183074692219890748672168673784302161704542907414 + + + 13368869578740340762167656532173944517311633586227492797870889423933831993746511444505837727149583461109630424686210203363961804513957532232491354537746836076066392723383955814463413630454451990579407599485995530997175201748170182623987945833993343412154020577317160879662053610198700604147496961500855549466597742039776924342222633208240169831498105566104421719660418157639724054392672370647288155658118623720787762054920625972068040944760060051878662096287141271279302419789650232282555179379676190744414601451485953493670538028930355460958821207418026841808133152923028159205872027911270909576284241128866640368169 + + + 6475746354219616053082136521434329417416440051023095966334867897883790764754332764029993155290063729272248170830007742619126916547327286050919358771949978606942782138285995147350172257706476709482171559362805684955021701110994466547515780481171620743727186399844085923693554195786756703625153156489889594561966809611254058398884702300928302438789208197244533561630648244702299574280732912288616932887274748947423114563089932330611438490468366932555679134481985191362588571828981840274795112819598791751493636186690500410176119464158226174260586655711180907280372682784181995184262594271619082895104516719845804606415 + + + 4093391706008319496766491981641040862399571235842425435937806893287471106182199947870623207701548273152078490728397996357184940283010415807906531701035933279362302524697912271906379847010660988024141686667956855048927726319457661054226471433784531431455382827375342740727461165793501334085005261509627184151289816111863607666639626033070330578623655836959970758695225056398429735375742856933566974918159917844450245195893885429609960194118022821024275736331916855888612753032171659504787283321675071707691640352585155569099776252963449275272328388832363684832035840118971302273300531618130636258687096080957767307195 + + + 1657230032148474229981368828203451429669340628380691953752966024509777313670295858985275554672337059149156634878694867253487158705897358203106307538933040661813774094154217856605167477081206925839760480722624519044910793402841426441219464644122339174457326101461708617240260433664632039420125538633246950552541048198329075544967787726456766780288223018686814223173491026135367372741131938893711331457113668574418259267927559004159813051826835261643531304062497300357837733044000786952333499463239443297487399001779409343385593191784110521178550169102239413910460011711470497872922737641920460740328715765622204710854 + + + 14751305502518553000295788216838436356571065264935491750676712275511431813623636214824734906547532350367436755631226540308515595366348537827348489196632563197578830999152805885611437430228800060564033586106841778671469994977978322017940807135076376512569817774120137203711774843059072916990479043878722810369615384623624500129022033625172017605611160710992787640073236761628433653313063228872493847785833004962875101931957930811037067505237411099359950618286045787741374566907584912817190047741600651905456663335073544257979618728185038541889101180715948542184077002191323451187662134951447337275136064529886266046407 + + + 17515618357609284813179213163779870216790000810495852335240015572231698485233514356368133119789823852510151027324295996477697417416620541538907875857374182607771185350543918376250201267648967837903760987658441978841463666251712962147266967950247991310793192966893798765675394144762434883940633099794385581141284150666967807413718771152903180704462096631651620991014555399851556805411610913944903326263197744096484401462141683172929637689675243430633039550899203062256871206037557935705539586649188184972316043916854195013042571842721551223653904333595630977149586720066654149888982580859679017359384207875495368430090 + + + 14382265644678264391455013949167710441119678334500740480888894453379062093064680460156792493266988160191080589545697706351918510443706738652407782747634203061953536380080629862861228707820487995727732804740395141225493076326349374315021081152520679523393913162093724013002396658119842891092886635049941100604823406369100492802790296770523083198499113064746157832239241862908334616528640862781534489211374048492054980315931666562370257577049697819210335772520530749813612395818648366740101511341643573324176147687059917289729723493605739682444942491725340931187645631245010318563644541715767876664349034819593732998869 + + + 10204760684725606190098523156330291235487174627632717584318232795346128984529636145827730607015412677989213794037139043760970953669217053021702915766259776429677357244371473182982977079171786625762372508692870419321907147479000100914750870098335570680938659537441096896148132041776419814188296796141989928986130683195771361573938675813487362616456130041543291605382403153764120034890615863147877963510752245747102484557702609841726111214557828042171285661367093144593865583215175106525497725853927467705238614254772098977688266541094696508256236990927580510095452209722588311116437857510806108908386628050157891805936 + + + 313408091302225894441212398433774278884162441019465076726790179376569712156129145266626240931432503085829503733136843137824966972941070067971424732020375854704882367700272273403159349685538280148857001493371602972070716280866381779476842532125954606207950345798146460929209424298634084399872712676732214540896290528763045164708857535984141497695046326655242575445555404735649207409123063069255336672912613945349166246672269816874119551751100390250474073770439393393248370278283586767896551354552790240807271941935242112820818787722345876541705651932191827567913294450317276440197458654365758493496693278615160412638 + + + 16958581213402627853377490831640082970060167445599367088915740179448440595973272608326416752824079386984593235242733259811699775109363861243231686910999110854315339671181308329989853955020030193861546569931897366861835718845721329116238433982987346066644581200216479871417957861312167209792216602715641656349010671414334714088914668275101264435201183425849002874305874991125232168484570603637528141238595650715202971037084322643957588885122129666928908610009436894991191005018797893091160137926187378361838269922930993406718705623283447675869260567858165735972484825033074263038419190548098617187118721415928915120171 + + + 13327331670391169195062467388573330433799834901533710340210271557709669484798199294828469789235916221787061012266700253710989664589773076258209858001438562908883192967909410917269175740645240099977688897419734952412737535704670379524084732451824732858349238829473928966674886507998483884954712587141728717654290102968454072927689277413490922223530257638973843559918628093229232729274176823332519787863647319168062161998941586904459440334882486068078887297633472377837914205886600395933451068670955049454539223966262305570646398828296330537844800910709432641055332495805182405643983324165972058294778814083778804203968 + + + 10205177204131624503126054435079469910719937617650972970636420473786849144790313194536026068210443617859319616421170764514990945359244165210239407625038285997609450606550458030202256922830858997932130399622963305361403446820675106983815419793217487647376283542547139186461508254910543496752543314391778085802049367368340826024880118067703911006587511351984170219911581741097471543791930691250069455959886368402643881836431043368555322322673221455689471946824789237396324401634950380017935366221121951166629917211473008035686464288248603201555507447136566060313933617853911386078316653023257091832688354768024872674821 + + + 2474891089115579499886683862798561202014057694397033727009761501808274275971244742949464158143317198489967344577485022199581811071256795425366001670006972181226978820796005965943741690288823386642278189054446740157233709076969127660406369292402760939657233283739039120093069888872701366069836822258695541206198193742152176167538403880619689288335164958383782700034034547114303249088100811650759109125091086305443401947525214467442152614020709313893454933798323381974407783892196923658283254284316788729065249733748883628151915301497486320586286450146419476847582755634466163348973455112951580819479590711374248574081 + + + 13892384403587378520340175322689114086092346751359647278359629733691913662405414256366647580136613317187040948826813127588590219619134871364625644357379842303055328869101865746596030575570382948859807896721563739702998919217269858687658918308735931741835447824557837788215845873667411856159444649696551254452633159251434817756861806366225332274384019500476257856670565544586867856304753916125990779273188833004101491446088836136817198454666165941644419267120658984748542193248183025528081367589865255122344143891113812212756391509582521128458531245004419880925746454933750082768558851856006921726153339656897807739655 + + + 5181450489046002683018323501702747219482511367861103856429037053406171408910478121521915412643404039047337138837003615855394375632176234524318797645783025558753540310584525760494696398404505747774407904601027249015773768954957852189959204251323814094202067154066386484832089681703058922754760716134945891360700375574930704920383462457652062374156236613682753495892959337456948286301492974362452798679344008881709242572592776511994363382045571522314087413219918058241753767258774744524978596037279651112139878261447624175118792519995627829610327323280082642804597260354732979466879009806801454759581358185932201717236 + + + 8645004051171281653389243797558015631966875562746845215122933775300285442575773571317225642827935392600182914825349422303781835459030170581379193101405413680467213526485534213610928533582271202439558155829111209209699005070436556423167521765303161489507123861393540445372610584304759841954213873274395117009474113624644774686885549903993819635356953632914530451739862806498342003081157637527474864907729532675557658170547921572445695931408019502238947107559912342807216591172682188702274297105798400975418399349314793246144751107584752364763100441540205988893432200014681334722026472990668718008946468639546449424050 + + + 11477313330524073184608031515754183625397633819126256719296627697175105908924658560498254174525976503118690299983026915282845667849150433141236075605229767659130473343329205867339146849406298329647985949276831431921526596849922217686048186187199541308297462647809480758805757031468746756566254005332243543082092391195780794189473923495667148757122890552705815771284608968968178812432694520033050105606069717907472230801502666914312190982262122433119155844916463853478512000787127018297343840018318225160727746327828870168600791422851654268968374235257193702474169062501799237277805924171237938103312281762887650337968 + + + 15753933944984261446962464336838325129435006492183667388524319549070314406837129352039780076940946585502129270117394339512151683351926923014957742235884318078510916227654173938945359095868757107520404179879331659287425915972119173782174104347723280110358648054320730489248184450981569401017839289429833709104252295901827043318370182582457332846713648479027818837332675793707569929862532062144558790825532486292227457581710758764393730145866423917328523585464931612841305945248794122186877791800649099439719475861314700855640891759072156570658974930286458671846030512952943883978351729666613977121860817346269909242587 + + + 9750198723382920013140138943926409290490747246271824477240843838618409237403140953181316808555879345275578442594828655194489284892328453620837915858152351277095332922758438402902606859426796269231881466386739366438264884214919293705438029301793044837389463076880079956048224263586832707212648425416050402025209048273730270036939097626592926290161089158515853916962215257884924371813142480803734118621472245637489988142727753631089855995090665671842583241195519082046525530703965735419463144730887241596671063184508496544900408190899221270332730411630760193395043768519855859485967467607220274664944583481493000121024 + + + 16085886774253811226833062379300327403358144889290370281904515454306135915695583470264261606137560608912143407581165166609754009060782210622521571262534620975266985416915654189543018004425179514815051729881275337652002292233078892490695759399433581634326648565696504605676609247853269233875431577062650202831726770637162351070586627347363333688182194288737317153350678070251755431689396163990202136499100982138176687236558460276596911425079438281686764346235455130778041778667891591222551116729122181093855806427168359214390526687525220087793476720570777612995712432345968873844344166955398771481122696166287384091092 + + + 12833537970573845415066840891205304930498413813658750758378396160298583653115613885411359404018778856787057086309084145378128542811403968045723496462344648340414100331419312910380194237150005106752017705977243336949135416294318670272826762716454918705313179843780310410014430668456732556393095407826951550040623572227269051250070528617715008934157009421527511549191413973456953394050636580873629994330558022835385351130346067090670201844223602744901932949307754673417540324714876935726080270805701117437562508390540218423794990009488070974818883982984534518446656787513936998663380046130773281190445562384556144367620 + + + 11190428982072117563210073621513875829775041539458208681922285724767561279706172562757293760448622034537480160359815133166924952683472021898841383833364189909609704064073232158957902719013248211545411007518298910862129623688198204821822799552214376888892351707600404472668310971007445119112963070926254174207741790957402381659700147570553504262837354587140014483493510943381005670302825326856705587882918281367701927028389052047333099156023440392269477709486222972160629303698324298850204419997211555935034883752973006934967649550320934700757898848838365784606457582395063048614222325193235827293936438772332683911985 + + + 2420096576527250872584076961302303353985227646334522324137389206331246989270358024399181745294256860257321405507225066944906305480764826743647113096739782684376078622957527677706840592361202500079384735205942914209814525329300276158553532473591343441398191681006542063269271177288973936295726791871528648416944391929851084478257340757539962598316078224429606674124878915373031224122689861043321347157001252923586324092645857451468089052409681022023731835479105837225268015812738390718597039496406936487747809581935020948111953732779711982668145932283450087714795874927712922231811740030260312023095438653715806214628 + + + 6328933957018705740736771883876514078800099124616776104357488631085693059848229473760241783215773250643333142205910791592240113557936497894594192030023471441161370202794055733783630727045353657567248058951926015865345866450023723030157812163425319723728028812257740558994596319943711387223999438272129484830462929319765433295457069979941055262518706417928745801370471484112595575816451212272570446761284353356271233383570847925106604905225198390232534459204604644411890134608355939867716934826461164412505420043935057453687404915409827319959525821185468502545531083782895324043699192875845638247599997292886462397092 + + + 6269695900378367563778205525902901194869127775913870344988657776642721815863931041434648172834664562877014769857530047473603560800089985864460025157539814558432272569187554584420719678569093115429345871655321093582625859049944730973058715706991329074418166224894257286681753779920025054422930300792610270704644506490468849433117755241529925478182676213990459087108382027142785217568226752883194920369117005233861058933451556006219866140771511211537107447803951223350096791360779736042654973944169648685736906558537636003154901674041635389001818596814107580028838125967628522913380095266686616334133986684468060703095 + + + 4077932582204389611423187691157381776077149581987870789096119192873461941012558145100026044759648299996955441302664840020701208582698655215487224148328050264711954915533221371239011810721881079127238995945866551068377719549064194460220275514786956710667499958822260454145991523556540236736370002258360413399112839030371680126555514264565374678007133366378562184404703086924754052402075705729855703898174759524129465310504114048286586754607008581174931972872657112897905197429330113681406129865548471982140838084565771285429886994466930102012870998257767641902831160663866562121202493893794189543170768885704156296619 + + + 8726305190830608016979160519906898924592666859071925506326943285687617844244694265507600123395388177661756068153456689877038066583416086207038784811167434357285142263776466885265254804960611547709617287459272364155937611411367957851762177501905988841369192037274639637775211466646068065851162540209043837257524385007012448582046860148566091946763495885146724143315226814003608421963690955680999775671874816938569420443624701558504445846402469646687876874375536021869354180303630517691281963855219337858050395379860965219049935884641258112555437453025433184242903957760085496708432413220030498319874926174362274098842 + + + 6521125038172640563349500068793522573819588780839417927621579259637859264487985483740392778621428417566909621432932003541994387894346202086361641757742628637527972667224901528789604161744908417526207997520281050909441827877829678213831429908233382054737738521807373557742093743686566426170818211386714610746264386451802245931117930671717192781862367784311784627770631632922551208368298710917824890505966743500732279883236331500739864869456132259605517823614172864748035154226320078958702178757440231264709692908914573036517323051883885347592873038705078084253156924531720540148016001170804373479683341249640533503065 + + + 16728724483827863077262649791107928810476349122963945601253844111709596176845589652503055963630817451503260922852352641044527196692217475496226185968098591388707380885252940853207341286224681525306343225478591902143583530834202024363091162359057137532507670443230728068891546478603451413915944510352108763985392009891561541086287199345320591828525052288728425038525046610531297753993283178622705512755805165248929103450268812611078770079636848799863421708090690286545848927193999369405723232500839218049343635666479309129968605493928780303134245047405460302830671498834464177071545358795722973861376786574664363772775 + + + 1516911792567691835124959566578245598135995718366626849191612454743003674451154094320712083433270192503352087523625427237378413306942821521432828449692918834035774209094112188829203003648804033366150378473162227636151348280027149882560064498659571146982455602109153012047508631244394007874164571997771474682067924234517162018281051143205802746003548758471794335743147301278506948534667638038633613222402425277398466547587183826961018258667248788982561854480616315163935627408160720836212731410451525598427686505492955939053093424444728242267105020130235633345663481584630292546389097488055399602667011417467400144889 + + + 6041708554680684010654389955546058862970994522387349788889648622247468930435159599397956411731013315373305410428891423720619040880905082327842248123614603429618699389875403296993871158462026826128798874153812868759712759789412199245089091781801960145612493805915934631281587490930037571699446248055934628890810353490070800334699975657008507329379523733664179701586397019777619743704020812941459975397335177698977231168204882789494335103760247324061041730691116748068041521183296519801546254823149502358043812406978093195620313080464180450541028416403127322536772719639399537271655425085084781587188695626186664178707 + + + 8552743401530178664238768049160510904079084904031666681249310816201970649585113786401826618806360838264544131352156237254708744794654716386516138336054384174027598480419377595632037016000737729451997927962224744160671054278426941799984119363442775560637733203867228294071126455166668055257737897719442642628891237171444077707667771868645748487114356398550415614159152549893345498210773875204501561608298612780818685861286039104405267278302167132055550360914230591666888423224200438454494507453133832990077320470765227156004628975775793837059076714410507170185988815807037112421430939119495951274025340500357831010443 + + + 7543097010476884260903365712326519675842944421984558396607376549300405414374231798025173677132862138717048431883988767911830606646643915097188417199308118307416215163955412214472202335561892801826416603009210965616082986054386203573357267173349928805105926986799272267557432063599901701699458462471295547916562935937297716898043060295450606220777502808911244429512336712628072326903337963829816727288920324321193847871576481785080097957704675788026418677359373687230464196454061312881216561376499153184891644690370850092100091143042254270242344943456879850184555710380295306878199263398016225332358547940525142386734 + + + 10707549037176663391207177497899807878519049552196080637499512346628881752971534763472101022111759935444297180903643320937849709799510660490376414749742596167207147447566366789143480703371587379658798135927071535085275743028371058046658240178125696719191985297239228364376626418507277147574396786273551232577272270120456137361742986304370473515236068785071130409769139040531651012611112492938360340459215054947354343595726697863531320561567318053204018151511784893220788428403415439680348974747903132757903733964694975666494835312120353095391790973892740448869875970144258417473891458454329880946388722626042368366250 + + + 7421582492891260228238160419979560431582062410146479990204905336883479920353121411375507360368274328933331230390410610247648443879184854415537942922223363149989353865331932931131757428535285517806609445553076551745050326799666493563316424855486790936313270093234313222623686082022584434189904930840516683570203764251299026324935408102800056951487400431488188044966762042051698259457950453694787440285552484055037395539571690431201846806326725536508002146231854553136490603288880977346413442732671924014182761181369296636701782679774153416423145407231006461533670106517956183462743045819336473495525309669762122395228 + + + 14306961684807721323947004246296939563245732247126622447183883639173716409700052289749565276559003436848052760964436530828357544991217648098038289939976789541267426419471628772584122230131909702962220960864141036525222407482799924887522443292344418972933798093929003050767780358279925007781732494729585968784663987412592842997003988776970079595535393518957425930907290286337995833538842868807924570629592250407581237475243739233714592902992510210544282571976108096188119213650554897919597204099134747417177464480036065920765519681325143229868356686104443872832214360468181196338417319401440151008589271991584011206124 + + + 14199321748524147225813376548973085781651495100872708803735571350159454443388701131242053457560103665704241115017497979141841643870842356994586064166572834072970159604667927972429758411028331198367616631370378195748317340115477555649617289913433825043524186806995572562306642997281459519943849696875914456507270366188587379970489809364005522385650778274695872464101138583268196816855439636890867046696428351827344654975661938221373975175203919680853513395057891867020494785965003459499888222964947077179644356746738350009771911521204980703770881640247957997005933835948609195614605930811336096880341003564763269303178 + + + 825767759779500377987548580503866220744565979580448910106546122173102500248134399388858038331206908056604052454173063445087975190290271574845574474591521022642121333012210381659984458784996057336933242360346480792104343778583237323994047062255817908141767487949219896098605543540922387818975682825944434270374542997911595008666918916839617220720036456283181429110744915222350959544798736028913378795865725594086440942893701980895504129753368597427961381479582860281528262238461906146592566464048147464038579832112029237513195042215806786928024929876166260275380111515739704954605114186650778147082944108352654660485 + + + 10188060756992690954216533811389923977821845259643999858109952481082355395471513919202343682990784793698626730256314581911125414001885143243022233949262062182706675738852750608113832855786598704827636801625233349197745819442928029342736403044624404497117372318771600963019599113228145210293806704241371976074016260325047844216977233637708671049381824438464377388468884135985268436241452851330780506354326143465105712938097917848772326696182789832328361232198631437232616848881750509696404565764094252030691485427450813691452921632228034878332965468340784363479451124053564117698630211341332184800546118342478039794607 + + + 17305864216065480950195586436982271420519503852563613512472888644368932349656077613897729763822554193438366385823989876409003077938987350463827722401887632149355929442864866948744744075091517633053147887142600975402412891425990859682355624581270485366511474289849915202270149557026172881677866541394421722019123500687146295569725541406524591082308556882856667154130636019268062406403213931912187323246248538172607703908049508555621428188819690839395138161256432239954721290870846092342099229581577812364756404336592479640870658084208763377566777509782622273313607911661035862677983985353055233089168755877818836853787 + + + 5341217635605834955433766088507576324661173946316752821588449174741293801673667499655830597438982125819252061115347281491324707815506561553149815258381475754380043977214734487291796317028785801909926410267856806369563624204609681982143280101059570213137213464507697164388090964620418958588821979515487873321391903028932423516825965750897604154161243720869754023364316389611738083675723758570109840851368884501002807574876866088607400510901054040389783147269938685044762427452896354950914878478214064296673104416390666100254601097588466477406486120334153795344046171961364362682475296348926318245327068170810751800378 + + + 17408902509872007830846931069053102934377313191084211514066804844392695949083189328224243648893273234596888503686616760688881158221616210551428101513590882567828627439860537653736102587815541143513459558359915616015228941841268005635903571492251800348629885621914534188218458253299142322442825657295948743464677336072842318410404800055904627614350804275180056302686615900252985759593375473719665053627709454826022978021818447065496993053346528540930311957660183142528052771879746135550121394294798012693966605373089282577032090953697674084323425418618353928182515051243303354646110547519727404136858201379477800493409 + + + 6654482805398614886926080193224670250345732988143263322437818771110488399276094336499342943814670510533207539210207602752912823786797393417035775405904572762092364338387080209458780686415043803420780533300052317627860009194365727234720712955009792025362738392076598233637118685651753359248432038377143677146258008044256715335656030556550802811782068835642702704860898148964215831176942632102856075550514164727746413550919338138077378140031723468742480565148394035011497229912845061039108468897873538183043347718599578504705339246803282278176436358326449763164685176778266457851974007970801219594275495249926813159417 + + + 7682082303820508654018683989245065666021488700923513856663972013738959138600021632612150447186126962644979123894978112249979586051279009312325458317971165166548671982906068604675699356735356389143572800722191739823270030154097127795454429517667375178265285677920096661998656752759361866895197963866187906568743227182345303288291423123574245370665815003479002491195953732337525770602147957282471704452083797705250595794041827943876316196586047343929647401763990014218540500480213607398732176359722158321471355185115335370959758314983872305892514366141717094659034506665197050971745071831230539963142461760756945424500 + + + 14772716659813403555446076832349919517670976846585837840421650106519197270434683479519906565689781506226823026243148088784163684816333416095343786778793807392450156474683050625179091379109954296195393193580099747381724334487136284832174275516156652121871651746631877683889956167993528099936082914756271266173580080418018831932890131974234118100715908036821506583205941494938044642529576336284564965603754492304521216226276156220836808854380853769827801204923908558589691225981915987874307035949288586184771382641243074371879845774938157548917720502272310034002868694656090493886113289898066562780475111320612461880533 + + + 11022679469114908105442524528241739934012677046740507301901486931111467379091788633000545129033012309402646425504563807825509706664837763375338645043603501631189618498772759282292948374112937850342613005500467667722503670921336273791585434347299593317387568271803777755211479999532876041997677275288419695676330790150960099020400759445971321602858476108897007528916123971119239820857362172433425978837063652111159124856885511557620254402415137800560206108922559739097709264580182744302106972397824478599022683242959399974937402044990148363914397645952932343159853944857695412594109667473705158296614596283094126238700 + + + 12400828124758505466775285424325539628472032855881601270264108514506518916640506234050529221800785603850830769538501609584637590847490197000472842965975095510950097590820361801995342413863785564863052182817084140335495664415597918660758726108186857662312507819895238006905361638901337810185612676414487835603756762695159752207282103620401128003212860466235114548573495271973364206937337655681387121147171408175004797103330149676133159807741012494359801642499637411857501822036712651157017770937175138856465077997898122892706086028290066443097221582302676849797104827726976834909401800428590930649699431682785292143808 + + + 8565404141133018496767913560476720183767859202626151888756227047881189753227858693266208179735861461364004233404376878777566242934614414112055310501167589685717608636497921024904215104509753306367826223521642711397710226975405029389018136832182690828198420384727953395902257223688109488722616937882249330341403783323302775027059132885107451797445038443380255085816139587051123158195671517243682417125827983044316938036458282238955073315312483697126499603436705247846471841680126857487748785145274863485058762644371591340155432868972512211216884300102549100815914414260631714700368243376358587559420054978473924646960 + + + 5642069496649572650547959591436569532195591386672662407997327816713893896911323502168945979179941289540887472506020198258641170402874438123627762409146652557187342461660053538966641478526879511777557373334730942510669709975391453449978112621337822069210743885981478228613122992380934863986724477953428943810468485315237949381238270446585982914818725398476247074778071636039707755966945778249795167158107123858879291762887439542157755036283816113255412288593252509630720591790746956838141481141114083625837712309558396262841781464507051239603136817593909290701641944448629581759118723772046088997938323095678596898096 + + + 11412832046625375022761003723662888401141092597973195602868917383402840882397239443557221784469994057378558590290389866047923414691977562317651912252486572276915859924040810553248878571835367633878996916713035941149943706592367264461354388120198160800728044707551744875485696993540367368719958368293860231253109671893122375116140886047899813081996877951767555888430773620053532733372830215178765868353438611913610383847747217971335055174714320743605958729569168474350720292357944587560892109512703288258357885574981175327445453080524723163422490332666313975817660841657632477875869860395787508451153118542470104058707 + + + 12248617478153425576426249622369266085772807808224523554771389872332880552892592183124378489185359376459667432449172715496161475447972552887033912436735244252196415514355015387530373258281818292403671077092106581519375774322855818643583121770449232592665958850334519683587204848350618324698637702773887696772247498891200173484278424978322494967863437004314689832203283716184111724718701266016054212598072149760933436211283676395832787095102349774003613478984857289546445588547580611037676544674448364342140289776071420419074775946708475890326633261793785080675233187928026807529345780696854487580919243355614221072886 + + + 6440950122976774528341744206426891385784555029315974367668244368515795624736105104329684344800225902377645678821414655542570184240481075968165876198500151075488221954369371156520384821141457250606768155648812897116673962272082472923143153382701268721242386328633112097349856075949940010987648569202705898137396690880535237489369544267536014359929562853410410597286067286846101043895485483817621615170459066295502567747616819853838353746621190152083556582227944508382504416992994521970670848329352488597809961399005896848741745215988352154210791127852880565700678830420904190528616934463674401489903472733358630045503 + + + 8511478811065162606281692752924106400087003268291518300130090166801175886195447092128726203311798947756496635921728962984693526713008344953498505667234766910836368743998595576353505304862963190459560267454032809207560902720205220968718076065081512202449289195696888804916962021251778183255730291600548854202634385235195452870127863936300760372648344942045441902424885546826822633435810874857229510838485396043665094234853674384403935065416960352395402786095537034598287064736809085970552226206114923487721291996503876965421517629160784752166091705679244903443493791538014220411968167434589955916139185889806424506218 + + + 17533557551218752391992413603123412933255024829864360602311537056457924446020410434396974009893350289276433123633894815037615673175827020735551956096659569448852113511231232790039722362487249141810248866256727830694790308626499727075842706599869606808114135141808467760870433510353225036994367778083764590723784901444694509146834724969971385636201126514441733965204488548532889457087589101688173392126921902132566758205430651589632037863948524966075953323596914381042542742437299085686314135721491675367216455031205911176808020135200660760158683892317092594517714814858458964387838329305969848838684764783984837721630 + + + 6427505440471726503367908827386107792816372247424942841466862195217811576276643395767616180216294793272133314336053629333186213801228160396230011193928222810981822338422305457109337828347352329297548240751612642001061615990082467681389875392695248562602208815288696161793262438642563328928294829489263302564467555919705240492176244146441255400164471073080524140120290957755115509358504458435585833840434776056575145930210582841512727111478693457077012855823115270761958202449159343693742793458513436739221082873703977938888965053636551619047486829655088391197715525980224417469531211633318502787490128630518345936953 + + + 15127261111707206802124372590796527502931311683070437810334467027341006104045832665444594128216895475220433974210127121314284000214251511721039876236813547261076351412963051331026827004035373576159914045829978721215079063996629116062637205994323988573714615117405225094577249183938833769125233253682102472988116956916139887324984295942941026479028710960714394523209576635587641302025800723092656921597061673797513151476155058071829537536628548410698115624309360201457403489354513617694000405542982994793203569524821212231510028169351607512092316029834711782279263596019199232581965593163384696201595410731169871518303 + + + 15628142597321703150533330139215277064673487020665639502097942079157467709273657987655301765382373484437301340419005653114989220947788685094786310757721312313106447894484264315949914825760369864747010576355767037391512967456693579000938372834062631582995021956421129114728519675138372943765922349999374617629843419870112824554394800809200594519160016534886131457857620065677018598988138832526090880251060594400177361116528402080436360047428033489771301867776738896835091071822321960063121674130861067161838170524216327753228271757000047653317171063633390852832992442388356298160390380181985522851441230066735208814789 + + + 8195887110731609141410067038598903713422254465002091841719072958603131798834936328698509013550982180733803813500388095832666920300074693022806620255787368794062323071428380530612510742693145352958198849168174083335136199212047243075344405533994471894937538204790814596964769527073772504464810380436319815447081121487190600568984717373338581235540232366733620805339487047759912283967767017797421809998532279306726019151750227531300980105958667036202608601037847150005666178730412575678397777710545431627686543976457085531455215468628425197739091224968850426908116316712386752918461246285813657026208527743204174094297 + + + 561230546289869969800329376833537539228403196291324534387708226368434582822652632310368243766243712221280033033040816041607083153667542019219607135692175909001448521852051044898161150452873406587822071740244797849207992322160876065078047193037775405725855180662337539775800013636967860023712688280521287628667836090917638991934553553946131711072099816061010891076526880215158620347436176364911676158846174901289934694889933478147774222905008002767941662047309411474484583360878685398305840246724210115267856540581072007062938424960083333416513743933369066072610253198833588287364050911056923687640312427666499047492 + + + 16308836442839729753231334114624696808638712038674817166908450101398566447238214787642475507635330436816206334562606102175016259096570203871062194588484601302976342005834427130165330521848740330292286803378015887413576286211962114411041877262700115379183725630817902484118708862839264057592165640175402918819947591242912052322213337726088256034082530123683066356369331224832064363215774457785912650602532754038197321996883082334104109135367995545291577886215306362945658126883187738744347631646523598191732945854642692995627439104438979548473421389411841387650724208442593045056697016460085332847913960543480643283187 + + + 4838824063381151010718483168123708553521366946016026118771449295989373176745134348361433839098077163394186485950268765400551583474076993117189694043531422447558653390523203682224252530594376967945838355498075351120985873091762523416605256312987925355042122269723372940818242339504655092284586807733863494037542899018648742480905286362169041195448938077956749949658342918178528375775635351995938204801542223865696780435964760388564625211925512887030670321000159718876058406615054921696805246610377147383251958682361681298970385312618660218205965199646980568281660748021937932785614077660730801472803261012954713162751 + + + 11283944942143400542767909698354522218781645682581667264682875596118805776149008012709086797786788937521009615953211483304419827266826554537930115701321232882476804480332841617931174764018963349371058284220397685128092026794315607060213044864716033418495489862537580438755541344745989202405932051486949207997288794789192536081283856629933210425108713279567194505839342140140408896566370964003075448948690096606595674413640946604456966072025466172945735205448182954356457237406091462956194514750864951135655812234059636094899719233253531099831147440904829401921010450820439996673993962074481752579075311696125737333386 + + + 2618513466310395966526041856175992165115664768924887955008969897324776408747218445734395622527083509451230261332635890724539483250990927877552694707538639846538317385702384545366567037307237901453010420085913600442624811318038932728941008765547183522378493669041789940633333741224788260179533551638328405997780603199044412729390046680467700729714664503662102130254444674610013887304581560945106421779372471111604161893009116810295566891350393910048391584839052063785898231961980191711197622621282078491934085464057610605353917123941858106784992186403214199314043422731761159718514398652822237523398400179955010244821 + + + 13233572088007610259854705212775164763530205449805481316789391728123224657637830067553231320553281155183632706691318996965957866491953681033972846994501512191523710886507893826972983236303814136305519265953323138327090320883424131340586369551006077531208433927853850194114984130819345538917228890672821546205181999068874299403310926148122715179569209533241237137392690914434940796250155019703915774174434510103280333143371908633124525645503893725725501989595457330263647524496857857957416804527440889639916122459279723541909572022143111104193976534132916512280203416428087788329018306533475358784644945798936268262684 + + + 17670724819834371398150472729633000045450635906480201722434810405459928577900448000297808699538286474798295973272237952672642905125544250369390662853275630036736368228158622794014143701510808495023182991244470355266840336076923867037306067493662326531363665869028860475435124638680423960031268124512167391734706278712484312014402213488096652707435891721119007838744971475907637139588924037089914362800033329110346476346745531398960495377610960596781941712317789797069685424044295760460285914451512086096796801134524237836460992067869018250637494279544239586528486829403071330156841484208170678000299765967460375784502 + + + 9662531129662056202600593731647670497009462074744114120081385379240361970506458130033915327604255087205715086656171618369297385871416109201226455874134425272171571615366817439968206948479913666685978553479133103983653157187840494911645523153193848334168387380759307404919785100920142834194820014307757921137543932240621468445911315622741849942263130681155576782004696932395260133482205793583156903603983486062627915855538110688202580478046478157321948310284005367087005066791697934877698423259990630046551350219088222578065400542721867699406592946473557256800945469644669201410305158650121730396602852898223197465671 + + + 4694194473672630781727041884935653021285639486822685877301801965039085553587671026020452621401944512438853927821769626819500254190740033420431301411848474362006391661758275049333188852118636758709618790138643709389400742582396176897500701040448369152711077628987884543607915087193901107514251680818758160522884181421483109415612249768514278141971030121691876129437629479931203176862962838522310010136471955307246764207192594135932779205798024211911919888279192545471249863167887117679516666641526792956412171909978774512857462929836344209780613977912374597168890408124382161697094610669513511119620783839992871322838 + + + 5019428816052306495238102278294395513656552487452728204225010779045307499232620840088151811510769391058250314399843797051551738709771385347941673105234892529336461711819629249197435783765641363179300873281135036835229472207252487378624845208739039226561171218350797894735653340765465134490406347540456515186117918119173709022353529896817064665575685293855640013907319627589363407114536670891078003213875486356738943423189808323775288568961597763557410026588819558339381583030596428025660505819203739443487836204641866062225837211474180224588466741030676751192825915735443137211152812507570298788125612193428618836353 + + + 5092070977336185394920733940789151065556420895385958008233246556410056514893298054268921714088677796504185402841825618126782934990312144808990337543128916481503769899199668127375963278741037172993080676039390609580499378533082488231685789009141672031117384436071148632446277546760573373557791701714856986108811086133200528499947505363037327101440901050079620296613523199116807266231948293082994263174338766615853976502306732052016821708571994944963413368560412333642725295084512129249732970640195829290853449325376825436873406550389394004984496394037295945708275512695385399193063847720962999709417609335575151097071 + + + 5771733599649141620451150947859113668556306123562521200769727366979527254774674024590733632292267008687977133651802613338599660108789610027840374966201288480693622117219332286023964042154837905826469799523503411585915641048369063831297768096197990166300383796959465381607327681403017311454368466852400444439680698512480740921991561720144741782004968452787379953976517461705973050760857834327864484233258740170488711239166752927290556045616687890848174734864043218624486743726553974373126870456182870546171923552418419063874248865366321068389251199608500934438001125434201536859954875643473652758172748730685293348727 + + + 17876795743661723162567770290365668591271515899270116306657041667916204277384469371300137693430996235095093586430912539834885585759548888092763768094489955885535546958461680714842824097482397875317294617391473746819067571930944447322319704560939462768431298780824472039698366731322998847723267629193876980551289926378100071473923251136570346166672471320725391033884926306410703831900016433946506787400870243021583483731033738072910918339773984165673152859825693658451616674197903780377908699593026865263285382673547077394549028642446825819337837950493401600326575912654408818633666566086464628895246822613938210281595 + + + 8924406586667427297402328248810046422508573557492473020977175512332238229619926387876244168043093882238468658381519428128612778805294136079836875955547817133588447127986968279242288727226491169527511570963270465196129835457384672351577373441116807030380177639642729656500758941153939231262226515272962774312334039664451131362242603493268811177209423340805577438650241699299674544193969920407579319295637329951143610353973392555525936154259369895689013514764429788530108388626892810603948518906532605421923857161276337709216916109980539023617480980857245497142071901693070989776709319861780267607568231235864628824020 + + + 10631743150011465213127627989992281220329806264279797360633711239998861002189947959596563413721209198643171304258807482772571336734542988475112250317513136084064941752304188059853693315908963269867313766021124042086977269511461246931647801894951478910881144869063772898360688598772119817853034487863728494165938981409410588712533576237258938220025241495034448490425313137758539448299064168951421760975001118541450741209241397616632523298898276619183165580807102529286693381841895545880416787770039029089067411212378953766516142207632732357113612709590264775942214289709095317539858194883068187839827281971167714438134 + + + 12654885696262349719115778321812530599797421422427303224542893594727202949132349359113428822209946979940248851504190975414436445985821265846115094675255849217610060720545839879330993831533919403259191689087408108108521061876522289684628642227604481967704020136522810927537622670413525235697855139947000623457103649646331563296500163449966727878305790009149449091360025444513836334150324200915756501887484816240847801727561903528959893219152208508794190371329758662397458590745439376662849498503105913063833648108986111312317065618025058934826885404692899683383767294317219234183624461003561926461328078318198202713492 + + + 14567501729925461638865623184328399370890981618442627868078494936943536353418178121577668808785775948355200679960235514038590451248426809369501222976369304834060908061593550402228354323013960349853067181829271824767095782252409931798849390995729701245544270567210961753152561418534445202361833342892965344334361799096140906664296797748438658544584599270092548805336596270631834110475121677032488586986309240846879968757007869881992081084176921889492450178382768075594812153509960180609333213830537534861201439552372475154543780402144238272141264067616608499878595170916713131498126600842419060560556771424383174916118 + + + 8723294490505326767097853368821910789793749568502923944937647986343074837880272376058209361181853886082658006292279412046404257906138716193040746001400236239955703947791901391084322722964179926898609152095922846794695803870163367205539285567553464675746620038538517088905657201880471417836975782093512510409517565500260275750286534101673438199196112765099619202062371916030273582256727650373398853553125387225131312291180516019598057633955644011335211028918326193955933359911900959539951681529605975118135307448470501335995730988088256354353292392319075901921133811863423636423628937451396404310668169123716831477162 + + + 5451056258912391601673315022960654802542576025656383686413916991957122995524533024353201354689069912627822178340799943404393558199529659495701021279464960698314232451827549727694763647300384231889639279028050338592018325511159130212634799004396120822008209048193342096249771252927772103467052235442247867533394527354382993170490859951458159822493944711752517879353689922726398179866863177419733714165864895410609176139522186455836441179424124067492527995754139784897808787295381876118999424954637004159013820250481325697856334199397608359551247945650870346658194066514302436647430066026340712971738337042310414747801 + + + 9599501034424553663644431238344524746516546817964739657131283921575939247360152031405867570236500549400719487055660505963092706676144369204164004641634658596235809288332656461051233550423241265590092453336135925385232158753148219435662249822707083345623407890827623359742067199654900122822660647638908546430830970065742070728425341268032988565749381197299748006329384098536774824439698352570748275681798258749701267790234323822079118433605029007960952426671164771758909113465548772252673697318325232179388943799426206174140608411713305199342203923258964093583619179369350977821906382081443709290590706778609659293596 + + + 10762037431200170917232942633382572835629301213812144757334189475229134721076298988544768050805770251503526034081982365769661789434329827180854650372400847262331832039135387174068479526432651784469916784933331410445776624734074409263163030614754658513294679021345645027002493758743134766530589072326748221055332610196580623280623951998201353378962492084344120464458941606261237673154422356681557230860720537747731215603757116286190305093376498287329398161497443063134081500472599054305939292266892115364513860010840575877636438376649489532316452226274929986554157727706942758953519069385848655872224959574119834639126 + + + 9032592835008116887632277592659328261674834280256501447004924318571114141965964476914120111230631161295977199644609153709655464229007131915020410183467445671346869642324212320698250435929834653709588336121417751196149352092442433009286184109214156250118901878087188644084524303770727318725330867823856508681200611527001652630527789080640672014469229151377826435290743908240521330515893666787532316163403631146322943464063277952695617447972839242505346588316375340428018276844200218620448059113604497278847503805723928192575368063313392317910671196375215871523023355810586895939484883461383314703432878411398902024933 + + + 11347043228552189126783966873256633685360248454560780983000776163795166475555104195812631699391419353881730748316945500343127565387142344796720571590104888276250149538162514224675180652609133478605946464339227579232738712336696311824808962885356513032228206589325077765429409748982138501155093108002552219233525393767061976549734836201424084711602394334279531101411841541899105771043557181738697197187245050137823889147125414101521541031381385151847288515542132404112300902893694074731328555380081385276282018816921354235562315840807612561110133708199855605611348279944218597035703919008963547273286937593046672927256 + + + 6302473949091612294927818547641284836759637741509004853737205213327512981856601485069057073961194774933576764907315029850839218216726870098620981304150467201054933601729948936647749641711638199943111105116707415390320222376912973354567180164911712759646516768779962114403793416452239180131433404869575936016164049027263335091699335261927043575748587352774464205134816606815317231725358937255418181237599749486292389706364676528067496793656793425619608843214592861771467294823540283777081770983974257453676713795473146866948255637709833575805764890626857578180269357942474913383756174544251615461849275169740934911337 + + + 16501528535686746297428143176594913778179124724473033667871860597810100155062894027807659437856351600958385826479295063731719965378843544293852447289187938963814631358929264995958551915124218739264824583004574924297832816535420851830708596872498511202113811222717775061687410542711939759467470445666738906869503723189478790456777490643410223620724570987271978791776185461632127473760919939228825442519792808183640931629930686521549061856530839058211473643126925470813715659268853698654790092938567653161643704410499093113922844243483067696044498872843455508614604163235884237818257105103805351670862295131960174594387 + + + 11841256829170642018222099612969060995932314056897813577394463721725532263261321340030226732482761827446285787863195136860564477946361561770940225973833028404465628744534479846248851521519469253149754820437883252031763269421614753796044883842515877518316415493984459037568983731605829778228097204279147142034273363773695373696347397225066754397547352083621783810627135142282372026564869201572421496421893900379959693338124940737921471656242361028753261196347093230213004812366504875570351729712852251335697450003583577809689402434103631197437650896830248018606189750933789316916491191474402185425104039908333750870812 + + + 9881244148572502143180811867077458078034106158966786568096603266757822708306816705751948900224982422287302507635235293557531945901327499494799139322317129134302645620184050834452791372803332964677172187602226577570089294084409539672742695817946167810295667081408374819955685032417997285658060973439537483669360262177381129157227475472667118184933332759720675416250970047015620938550836874111027724235136824916559942060635783644672548121708188153911103062026010354671027552077540127054143136531280449160853736514396992414842962705470532048034788400126311431735210396614349157473772567465285921473941655750033172548436 + + + 15307693413274875515452904000466293907855554139289781745459837394145663687874358882450014983209819924117441238558468669947071795828224432536653356220076247657070786631946311244521466454945492148630874893657916889861688643069416097533824611921806177221907553306570866988564421231216091011915554305237855578471840671110400434173784289213501382971483022419693807506737823141358998425478370210331092707801523285159602865936317041198290488769545560843795809006733922899308529439586164164983546339438570790251389961417086595266969607096403407544468173477682800756481052136463207299061562336932671839549362046540983906827872 + + + 8140100554002972735777388071889275646291082466551346266848801225290562510528082903917551146856058086862134544806657282704259227029172642052743341040163970699855218110649537843306363911056027626495185413302542336614875941901610249815180635379110280952814608677811783699119756996620279808117486591760547908817845367448534634597977091625479681384510343115462814372164118313144768243866178915991704419472239891652340925224633274861604754159352545084651034308215505267192436020310625802088636239356078317719887328987987144419530424691935850951011895849625031010151665821720142958823489845664912518103174132972959308964004 + + + 88752691808989476841651515227455340418067241793928248603650251702920531237867668008558031020185933038897756615112084515585832382299182475258315593663135594887202218473342122874066389895594856144414740941494444366904091344604371079743460291435500091985902803372539318230219990194574040173076987848531503887719179036410411083418520676517400398005369313049928403460787718094284662095316835808831907248394083143134779806662458276590682462302252174668556057132600901547339060340914260407702978873340922663402165990637587274880835481416142523928687546453439484534631977997923128555565552024273969588970062007171876602384 + + + 1792058127797590610361536118164113085201960344576962636086220746914390006301283934871162942611553019651541106566256060765012789900322236890000535367411295403094557374223177768254484388773790665713008502931886657523240544443573732749046219202983747179507148631328746030841327284388745313819892698356767546349017145730349723935819671952675720432631406410605099880202524964640618350028002027632470002271364644736395981043192390531698564309209863964150014364246050227676625059843297614301099512147409777757937183390281755416790124546768179411348156067525566239291953575398911111428029636481493761860593635044307495081855 + + + 17810927600443070764148547128829627885100922721994775414761809426745301615751499652839375160494393106460904064030498263900567009477178994376797669668145164889277543115116254409886636737009835165367225728147219263217781759948810995731988399116430237044463949265301320270052509074207266401379753178890995636431745385608414734021304826684572414490435120964041189938066078480366916381283420182004548591740689276345058216362552899353521163613879242019559664984602764865591735559597860562203909952212820892701097372799257581892696180180394734584976289709696848913573175492609204141393071411451677408167851292540640737246324 + + + 14134682361880120264537310923457730741208837602660419522179345392831657023772700931448221913860407407859908536458563247575327353284686360762308648536681963965942306255963922198485435060176804953930958452205915783204998277006685387905916992617361708357222488951118316226827002832141507098936090190695348428479111936801382899826098649966788402837327448736792421126211652269556764274302799192040880542007427290879258563438267685970433353307974447326216107423019117572387632297917789269689177353313440409577030605664492062744361053939759193734912028367250902376960464059583515308413896189534865972306334838589476002588526 + + + 2758343687481432853409950623245808216096059348409469675852720013355030349536310070668393005271771965356985127800300800810798320038719714995761206727906246724557484774515215023155876879022260814607505501577935911360665638140798763305260227445866861952047092261505573721578664164726274362226073623168235127963632419862998466820815098327674166991154026524079735923091295058258582533828771476327855501534353597810882758242863386091177349777817349338852109200256683917974151544419515356053526981885623700150424818431144701737059982726802573772689039926848754707694262862138668703225533466809839160358592695401106911641271 + + + 1710522522552862100748757676935281077021837042683212157972389281482301542238490614188704145764155125336537599289330022179180296568379300995487805842499601844422671686223477784955933955129175330885058055787784492722080157700117935431338720514520463497671625013689657513063443858472619857206930173311495829666818804007145818219719518231383481230025046591339700826455304539606206979521569546358821881700372221690808485681656093129272937012028582739218823372987305345765508962531191776460731029261457693053748855702343149503340767780220578552842267349533110257945065359684269938722826332412121043878407619359089977823664 + + + 9873295563136682692374222714412280445429125651309530175981180165302984507745456164661853178334676493351981969255363080564043245448248266755035832165021171162853382400429712159451504819876017199568012267455835042162646290950859379119685241152159064366238719004404178887194380995224658439499843372627634746513977786617038705545579343061160450126776175873483837827347586102506443818073856198187631500323735447020882577209611652101237717331902514413492911730793582104012388426657598756320927001435210989717929373079481299466101131841846756655782179512149550043807431098979821061410127477723206397855682222696227327828047 + + + 10991164124558732061457941953208086910210436125143107002403513119553977956322084114519997216004471513299341408495811376951236001044643101809730152284478971910986137877612067694485052571676470550667592936424466334728387568103318895970814388501134954849386311050770942891855639538529850273906358641271024802268407860172720960527092048041460129967250536975573591895801635858163726634705011902741141545209621829625992685908142186016052082132084674840388004623214363479640255531715953197767301701618390942474958828974238291534921620464626141278181858447256262538050301588769195951961669807322573150612223740397947305738383 + + + 15541230537700340460390219428784130600839229507702727822536274504172195996672935078404195876503540849304310207488626030257580297036628596664164684996211870478518935046477664151818460960643665361908450714901736229944182926462461546884449173582576853818104962108753607353109942370742919034106641876059709235465974000513427666138836632090112892615985350538520349561285257765495979673483488765378837572287074925630057405612587785180531925848828846054321359344525220941845650448303114140108808404635654243149391333947517175666179722379085911100048642431640736162284057889326786232260363701149135541486365426105499384004 + + + 8057116629011902540163428689460660635382092889811899486892659306792931134996932874588451293869299204205047501202406269004461287756312370798553950768510711831428495791257747719963516848008077021738180828282713455436553478226780269482224390181676028875653926414480048607901462193255618585237279892427426325006830031928644404610523047407620864501369438894592264131594604092446906892243495502453737552094779696876969276470203989653574573467018882412079778270996813662540911953229879882394127529432717240987330582258737368325344043658236044578513851303862662310484440124894434585424762565604518087930127961366048770958932 + + + 4958096587976495283222543442537841038153238891484218232797946315796531859530993932815429621692656801054143204127822600478490027767572569322899275700033291790903791240213185744928308889718168033723867058333189407257874018662741116353746575041659249686040068901269320590924379269725543329039566522094050596269207007915880872085808712797452905534365569395894574175566877185402598621403497390507396411219685296519104212258546005204580940673676477120792697739681239358487076615309755887689361013485266103562280793182223404163101462193732077049658823724575050395400491433526011350397895988349899614953557108922616000240107 + + + 7225143153825754887603823973009778418157010970098129054127811162928335524652980884398590518595464154584991322522277665569647151496431518984046615873844213984742626501749537535838289204426623142474366174345315704420942667398669084541548653123618451796066309657652020567560852825723329290381527287640920471651585239726209259499915360994108701509006572298027869557342190539088657754613588812646044696832342031378402250561001692089460222141140079136132541623397118553183543706012703592721134248029229284471670883773565772022730036554120858790101852861761021851610704346691476377118207034087782452741697897088155218411967 + + + 15294374456246565844391052623641369255537838630637392907241890731574169490992479496029280842285573949029523877385377648954314335794446901571466145324189282150646537005842449804245494439088687693750151867252932839815036808689741663457227468592746790766941463670741706894274924854218532986565945207857883014085537430604648012868078273673367746711512998086697830701755279970113556422452945456157244866827946017096187201793837445705639083180917349861667960535579525847880037477133366887487927452883828345343678423668700039123823529980284697996284675289285750986850314483219187851080480913842335948362913520646172233339804 + + + 1725132152233070730712526009622327162882029240108093029950585319758336540167350374453112160760198899719984088180881319557646720843525263569908706471869994778178068518386267616738240443389143122419489613812851212592617688868653201147535735474868077302844737256413254933608579121573395211807307365305932514688998580419037927322054043025820947270707910372827320325861342574556367839805060460601834970197981891907982755276249234377478432248373582291943535785209550576282082304787130730903194468257479000516430320837123844439324217653687763761549274873781519110132994263960979127569913890442646804329526515780506402623272 + + + 17241238357491082391696366281073936194822117434506117938999622682813126932139798245669844604281104557186809499572213711576731608827951611768240581749523782632136634939681248262471528574522813199362906189162882968252493118345926116487460188160728919403904155372780689611787956718269082998481529694487177059417175406984112748845416865660982357809339456448563233340184214236874671880609942363514688249504550071798065179294743464519896822505457207230797182283017176625365105468702343048200019391501387782892073092197285855274591328827846505293885930713579372845975639681183348960338677674853577479108850671841931083176883 + + + 7253060828278728462322562897288759544662174792790563403832254182401176389591784691037782970131351045699001830004924889036646030024553971497934089385728403503247457227321951897481852193516038707733401010270139616329586758946655986758078098178399976142278615392166745934725697443351599961142451649160945732711350884648087912220961641950977786625058738488610963023989915877837704631009641828024343292878090608328839327172301706404856523523146011775801748979553726624777297182085629433364154874388170061335465836132065364634772488050076350388931013017587723583238427603522022128975370950749328488211646775109487115977687 + + + 17205321057365319130320519533445840331519097577223166979192221594880431698099374490250556551233306285975438124708340165104704395712861234085618101407311015173016463867404072078090079165961234125556396461746700854997116684619244244359939574998936650293348547822753704037709777149848285275700172634850616237415390875349597395821943718282828390888722961498278667947369252007057856522205234276891237293331492618169830387245680589914238231506275665015677940674512055069749108198941137452066162501770919190494591875194233378969145062397440028224289821718161418004708873356001374173697263952321580492430181672000080671080510 + + + 17895915128822177777820875058590811964045928874091543070899996769012244299673763445993408177342744342247348906513481615922551429551860663756835213212298264888679360136911462905549199621530286361070760621581402576240027720236002088016661009782403389956840235079858969648915607866922296395948839145966377229930288156839850686277404637292836740278736267464994582523324886981005049146133964233455450274034012263613604809389345944686859851867622508395826240910923303622626284957704379239665128658977066082313170985571699017597578053903212495646685917384173410017854459941544761634049238427188131857830615874416721803743764 + + + 15726709151589283930538597447891234809712382063628776720125746686328470781088435780158935129678317234462441133558346477669665536915988506255962857753191323726300989642331229971625777432073001165405104633107371885692277135528658674397428509656594426511223483600280448670993426133320168801037037126667296972822461338519176462584676682837257309950348398946877296212103090720673272344052840588543815193310111868838828591315480643127151079404768300179660275275403506871666717413453045948639605193803094549180757131696284727001499115652863104537367926630772269836000452652324008151355111511807548982538197346253758992951389 + + + 13249628176081786119213123854313419204770077068138560079740713262601631264087371682758492399702755234495759341623334755083813006275509882857457668152541519563162541255865970123928838274735489308104141396554495442421992604268459096292344770400647667015990573871377839942628366560214883855695289365058857876600893954275723670589265896063381768456766530548387464012181456620329639834874937041446700949305149024350719351794242313075861364723860106051294039138533185619400446374499533193646576607121898591903898998844692790710494879710197219226338318822470683407286444805772715845829787942918473261526380352788548724724770 + + + 7934075326009858921284669515694346515800167783376176585361687203257511192788296436350430247970270210224656075408997654660302734646863204037564110134304782025057986956829541905521298051066020624465121817577705479962943033880544439778830358510465050528685373169454173135932214072060134750354060823900918292997448666940579839748217983931764592269555325432754740438816534631738746020035323896069556202552094507712955357596001115682365046590538288698069951281555185621235939826906972972804276887336279659414563780738421945940120182878341767447344042191595009143541211731593557394353584801836797019687964319059616449698351 + + + 17405280689506465218467611720196402266866955548565911564981618994580661200278041324635588475186511900855725136033636226929545639058073360257108466002296441375648628338680211183618511486734395186444435391298917535350724981911256252088360339197953566017932747101246760560021390921971393813279858471267045823908896686431817593199102979913324717403389540443033447573277696574148729235442693602171524490059919299961775671526471131961079634079908166203237340835099087346188420650888820810246089325262174426402259327164036377377131631572437843572338208842287298331226036461776282341222216258343210383040048751512359010792836 + + + 14185259165027055854943434353862114023653521792357185861703455280766161600605747563518682873302997061777510786468246121973566388701223226062721695097208123231907464616657462237406496517861139366808878353842090697129829280436835212144801750628638957365778764036017594356664132433731722725121385191016750742909009475662859701177198951109533544458332587884218165250581325809279954063214994119142175835897149463320763777760995469464674454506347323160840971474683365020031958035775377228202669288481058588898671287849337636354023133808822263437827022686566651689399495968403471356308753325493663303623550209139495437598722 + + + 15844875630407823965169243660979055124621256995323584972218061439138211073135095114491088763818848555388753797719895962152577603990528514331636893715029425838294555330243383920808313772566766251274483510429604707305009895345162986399341599847230964798208637234305440012940152403532554373628831285660636092350888394038786467501405923008099249715294113755725963825370222798697938809119608300788403959661439380926676132664340804863679831574814690821808252572457285129294708092173762713833742962690429493974570213144351911842594093769572214053617137653878344301620972782813792298645431277988409625900680724663250609418681 + + + 854272451270847329282520020820741778274264840344700158964742301358115216357747919821105854732950692375788863257654862441881779796417939449448978192287197478848936453330067411339062922359748320786091035449099840368245575169467171715629904817806665225430968967697985379744751087429855713143165762091760215461447558012882740882882725693472932204539964333333403193437945602932289969838245045618208209205705441314266421932502089003950156600384362191674274127257299679972263681364563926015168528995038942232841162752675536479745530919437715824967113736111709477567646914478284702775534831474669489019428906011345660604340 + + + 11501510589466997284780121051948515402453927089011171802835427318789553181247752346948259822332296369921497596443025187976629303922211903664315389722600068642661376720925740117060850760327046875358167626128162516874657511626335106456721881472070821323763560711189353615250500171660669402159347570728674811773469175965135135712563457658274997244495545742685871925779336199343472771766099152237715082499649978199249313565925106008811628227111703920236312288227343643008342473191763865371205542302871935225680910549662413574275221143906148492568232185425749288435423251914699346068962788309694117721149354461546375329968 + + + 16353578737168492938488132433667931648279957031504249058064605954048944574831016705280924263484620843848966312537637430826800959097305908120777584451476940176313839221232438815167801035201286934511842106207919790417908999060299169999762839517249685866403612737575481740926108226042388093634455865346712099647539740673153796530507271832634965600874862168541089423886666720264593712583788341646444498684328210165784177550928137621902506004400489487626337499735775635500520430318561963947908732095012877745920507678637878007095971255658333389196341545247247455632457293566725002520477723087123730588053573893954040878416 + + + 2719872341181884093730109300545779505710566775795619254825732149186980950808153586430133627251539366150170293171071350198889563838951638533072328431756292994373043899218648835153038390171656788106767642020331661797060219701168456681358683624427442938061567656851008240274485972120780057228355827791215565362488531129397380671618108104301365474790972078706726903074224839967333502798743512915930083783502177526939478921602470684898513067776644980192480831186648878230816515410828564557774387569944044287201030019526089745430583636636841979568056742156813453921545678286069346229909383052988136873914164391065564113217 + + + 9209155142422338230853038677160954513707937443528078163546676215292150952588332166159555192785659716819464772914880130930548427590399294249736458287687604058984764489913408981054269026606390041324292248289889395355141120850756111404659894547636029776318090362573135529834794404847080154995665134594711568201815186499427404011192077063726482147859081020734185206759786486288112384230234842904207552278409354274943414211830290710785644547438980567378879740716834724030556874316433094916147975734063344429286318094486399171925639598313694414637701703509807396282421549025298286096661101654319878083265107758007768163440 + + + 14800844649736204480517710066448833835961564331023168923436648671920300048089632685508217611192840074875996328776515842362530950791977694214963424338695028273795421778910695511638490079163094285664529452983908372033930188361137381071966355235451258608181344240686326901771652080916512995820598429839089851291451083870240592117340143813782970808749785461711648201806782510859777174363951062181886092591451313275403016005662118780424000315199108506279723762875891523680668121533636613909555779749933238429077493302386814012272865699365305133969541941732637390983068117321667162215559548170937471311757530854835648054075 + + + 6263226005675144941634657361500840286311711655453810098179659017481284808766203560364268825201496715813328113770303311721727345304324159234629619255874614170374400521104805681844117213936306145491180402025088316274258272214229420216751904061901967367829275330471604535790925901281996005453208828374601603947600402913890668748265552163215559339808729517374095819587418073416532400094843008984366888298404185977803240340581114412854750174192280391741070283380748419266986531973008310384085444788469968155685839567629784859865903057191368808345548002318373796399901030943604618604302520552917786114033405829686889777245 + + + 14174066485007787227625949636324021908411338263351424458722749144716947763292820883258667020093824581213107104171684003336560709210546405987781671560143532432689366024498471505439442693498203244031803802686855369126044459565014720163804176898307834891934613528033058845113124293251673791873850034114042757315940000763224370304434777776082774322649536602679046991788241187052476779567667767314234345544121985004059663755227486041663687106627345702007378265713785450120128046711970909385516388996485998579693852053595079335996076301626157397821773972494683751433007174041835056651736118709154777350987929604810053921648 + + + 13686913303528753737937469679621899119707833114660171935404823584004647008867201036384766783263596637251184164985047239789379708703254531206681435887999316125649778570847907597597968507076432761036553229424074182093479474493669814750758050108640923945744318585387578874448078684789289806746123212113690137429391478007179275374911552835420436818907732972210420933434276059604923682196892875727401089583745556548094908106031558302496145890435086907137071353599442743669548096600205059958675220891682616731674447182324146894270896251572559856629783387647268912750249937398945769166083049564305776692833987461691513987283 + + + 4961125396053754787084802312056556342352965724843747927199512252527607515306923384062794610374976738272070304053682767301999690404477483885652669192375861255485103847745139653804428752676068378175789778747851628020178679011688392006002707541350808224338588706279314466508305045806230321030545493483852615387326768606611097381141279008749644497586479340094540821170418792873501028017678397143703272069487204060753839787038949890556662423096180344851458233105906979413043878195067093396924316839923306739647594195300366077852886687258570561550619752287374017160141462834189867202694932903861348085924362381932882260493 + + + 9745127852770381249125612514263455234194215212922599448258143385140958537094070465878662447726490262025201618001839273408962547279147915394516573619291167625625369620774981531442243702726736356675428008959502771125537899695983695204229085878628366595299523792338282294515370459351976419178632770247297004256237618105708934181858111932929619420191815233834847964379990957386422957468052509720454847553395569251944653382261776053587117576789962310033735581228581178247819442334361843849502666742582017256836765413114166086351658892446836089162479074625403314958362860975532190126581107023926386397604403649059265890406 + + + 3504500444373815099130593228499253628000268696447580892275592133079790514896499310395288304584317665476821383126478106512254272174286276312218579185942206959277878660199707302433169886624499130281989028671948066228842723734774904021369560632349060569545715327943704961611447897176439650811260486828773734682640549396945986533836576177595154901040648177585087688622788324800910854800416636370333049584203798827953219499101376115512893843979492431055880571916266117339084339225647663474489369481808722195411366925736372337916999759078907287742796410534719211617973243783892854103664146716055675254928611796376929492673 + + + 682668308432026922422820124765055006095009608820436176800876027316273339787428142394810746768535737492876087510192251242307170580944514144073006333166672522919814541138355575756039559176421933618892417286552445039001308808828768494356673979936177087561816355250853381721518476106017204891392443839228813133794131807962775456757112001121860516036810604740447288834085001402485505176623690822737937084359823052443752831129235966333600307247615680560026103649848028928155613848040652254450285632308638170546944399258754268694950474367179924121102521497510519594217874502294398295173715385914836898308648183271546533286 + + + 7511478364428289366387664434396135626590458925629683466588287799489635287754868072063806135781887030951494384423905883851884129769882571837849047373521775062945426728734068203598595159998737784778293475934243534545457955457394842317276715007319780690583152728217943411495171259342903055348541750706913616699200638322819103250485510421914973380696111460599839845377551699152250115481474679545474162460910601551564533934605454616048437260775610517756237772728948352541917239605209637701297549399693077959496496668547390309153155332948162801164738797139077170183135848708536706705604379701978675558167844683680156383901 + + + 16941125020485141899630053722697234321219720814879187243670350367763286231394451997966639266594959430125150735788476387446640698860104361364028622833599281658986795946623316222893474222781837241349178063901430285125495169515442286920304538426181498624601356519804251604834205288817795308154827691129796114513055758557495133626090878877152763077092546284801248148124607229802742379307143124729446339626006589977962256300745208026277695904381912628469234936414941461885181435100893397888487251956473303986328248422716462028095774809289497597971187550781248705578722073461354826658067035411410827496341136471683346684121 + + + 16953707841818380685364077301676895153523229176681537337848071052612915167591654813619702798950045071255153122611316840310626524506408675274975967331860711641621464983905755479469346125637848233588857205510211773833593032344232712705581294073173156367260259701061897821417236504830994122033891269856535020095173486676790987799000603580766364467565664351903454501217684889249100840908991228390716562781367832086875614850297416374965114336581547987282932767316952677296489392571298683732706232104892736402924823799892031672541299532438098204543037144741463421387851595695021082329079800153926134678656655773855833604339 + + + 7497579446656520823287788534068644227904444446491468089049829409866775066484350979479504379745020694910070968839105423037042964161382203681444291896247718798291392752979191435082713989394325057341958454292360864598752554732306648147854680472421425762636492841966335349832006547163612516278724343532789545918833524236635119290392085774139290717642692103184529150734844549009105544484291540737620640213261051139541839272119527517701335407321772594139257832097289028060365859526408451289926933371609208261506339839881689335934357868772740342878775661058771603223247503831178408220495304788395386797846385344331278356539 + + + 10406944896891760926228930092066487723482856787807298373288471372698982927961722327837106533345328377086051177472782145101293226066971523979250525200530018405745798694486467377858541126558150312216954850939765100195795475103708760910149209708685534806534444972933208156467900636168354511577843701225623071760961145316279692041316853212824081745549177123003600381165627522715070314415366230509538734936950731089182714312512435419052843310569067078985542802656667172766466338334709330149495366803415561162175977310061437154072939959836847670967189581805014344216381366910640243734219923658974177147607296119696892182027 + + + 11958118850243389186888288806448450032886608361282846347924591791730745032478153707457847812988812996129349942277066949619402852904737886707821303022954633080662072900507589809286313885851518649187075267967415624557254274923790953884119198785124870886941345707661908510587441878352978617389471725747108595798857559027941660273782290308721550736712748167779400081776558273204704357673681607449093415059215543616967418339589923934676378319959751932742631636680086503132268306982059532456993287430130996420784438829067246707979062367187328329486634125401052242873605443116793035200633633787293853106790252560925479966345 + + + 11950884735967096189143418559870662113442178836641806942262547738473652761911604367761664084117446924940446509812265738051960617735823135617523029352987590894643168331394081810442174122085886607486203886091464193389577433627366538795448655255173329343570283223469670113269218097303882511984838674692305629244797457814759827079323809428283162892108649773453931275570238539244116889530693244663796041576661016895529333114083225198753030833130002147943050414794470929194944146660360455837077812345669106740386246643523664906083292791389660467297658044298001176096775663615732802790459338622772992096110185573048879549167 + + + 14727752595371083340328644750692042448368116906622241364105016630229944398931601354440318086182195719889271295575619322034749791165460275243640187163441723918874110434769648213510310176342466097623868057389336037859115708646737553065499217967061176256675032956301461816284012218133483899935766580069763993989493073684042348012504585050274373865181313228444752053885925576566010389443382985428351834046966976135670175768466090743290663303034685868915167578568457806138856342136749323737423015464241167072591368127640295229959565052977756938338740804279694718626761395303067007692935007750717138018228523363167213301698 + + + 6093902456904366730833012223029466525870720864153876520208015873857169421878657379593775948390627189700417669093349720959151882513700144118885864801722738059984634692990822215673315496293538184596038978816016519645770269902935330156966429727739773761671048095036005149555994866126824371188402999917719003884389453873743544067819749289822565559776406682714420952116152054549621926101925208356166124864735132019146540756551830803180040267644080402247162319937401349325105618960936409098112074181160205223614618325793257439271154082004218027629991958293996449593346653258327595364761860880216359257797247971192191474342 + + + 8226533517677667589936272045022283203929757977364200203510821516219799086858453032354483959793416657005103221103546208124032131236827819204749285523168093296403558122489705535462652563324147630576443104626208657110815150120796250211484412166587950260862096801678886368626291105455725326116369916978525346941797146369484676390020903146830613510954449531563221387460737533885462095650861658815807824370765957162363897849216274340279831153704008299588111086477580718512632223804810511453793074336277276959781900336879482987405969475280470232474901794513057572542868852066232929186829040304512698193182568934928374906215 + + + 12957529540601574105107061213704426736867960208406237842857568581510225817517801856861314831490083139462918256700300612242073275275977308249813583057662938920295971788829685729600780881222150831989621523627196095208964956508304347652111486969236051221973470256583793827502017042243222635535323401926631433927360850724512506835331195224403602985492379337384256201144708861328749036286320230159077881063380378036417019040524465817613387321831720786181317823476802619509239492146011080432757755085906359163841143947844516222258823764404752155005581176617289062061504353538018347254776454445196817357808155472006541691721 + + + 1730195812908650409337457565954175360287678587285251118804724532377096140490556183508549752008306935745569765046051873623353224411766104825413663693804243403017492561146507426202283880511961911103154028431421386451944239577982174959347189795690280130387291580838013389108646919020336782414447201242427157928840620866220379810154256058503429933742195264839467038381354066039091124182350451311586147882890489436126479688482662763520256860313289888856891651530069182129377581513826690168441015822150943577821255322132464798133071164862235092794885488289611639939924675049129531275916284179556747093910894885696785106337 + + + 5809067215985190843032640423938383678529286020635104623723395382591188816998790578604443753148658585485592570843983016227606317586849158517891495363982272618767554187936962624622481311343909581935946018335559264458400743475696896752681845318158215296922257138466359223198550174776390742036567616188927205892356449328329164156754677856159095548932861967883783434444372464120870283273488381099165236919450220271462838041779990411698200945175412134596860790892655305872182197360306872540713111091539864738730574677152109425410996224372903368157378427516772470156422789890863601379840830310080989140240925331244132081738 + + + 13974185250885065583677595719280508047390857416985431488408129603434023091268036058762707352930187364880248252838373330061046689936547132939513686586769653813351057962901504632608825661108750288546832015812808594215716395667265495555956530266093004721927187722814215509812736564853384036778689121061664536817597376829762112400256543186213491218636942304254724989645573859822203254965683205578482601293328493435199021573070516454954376088555266213637200575054954919944111069281294298151348742077982294101412131242801785014469846413232029763040152514819674077163721493480532073258141401548680200424050238098403423530738 + + + 15346667359342044667807064756379171122197277885286809530674782537083578142242170777357320404634081627886735871179328018401576401699040637664995639556831900830205471256236667466962460506529261999318145856398288948889660309472248576982868834981583452914070323626816040837628251375480498973213862181758704564092026061330724838019723530226898467596068781509234424776309681002019141638971990888201832218470950220324421582752350865930101962628174773224820396900016503033534987293789523688293467840336458467769640529589591307349892578601337193284595883922728721577006226503928805929806477868022365282730452187100691812989300 + + + 2846130664116242471158164579994287877947438664121226208439009389630863516537316663441040491300328428394616894843633758086104674409386856365878581446985657862922653378068131592088065332941658071098018518920481478113117906488780596127083953084928366103174810503626539738263547776629591650306283559998388972542562705632971559078561286135773806344404255689223071085786249355536387358244849526107079422953630734856985061095405986447602085687998262924000874741265334292048546359861456247649143847575411588323334169033397158668728918426665305743643408583814125229842832075700525088099520586967062576526247717314207504433484 + + + 17324987936334425853250077732081229898637271880366459151285998625259554594079891347156087252008397472273721008683150054711352243199102561806799346221462346355812302209698245174537466602333228849427133968040536366999439019312463519117734684694459464251359953277637823914728023267297059768790774212776259090098727377800832774998823453208804492365441485616180994385233012288244284064496990224937049686467811519963130362851502530556550351016829343909326781361740931077838300926788389410735633306900650230337639730593486147670880758189297613627652828185185405457023004478813654776327577309338163075101905239710691093262201 + + + 7974791467429367583496221566804610846238467954534971557943022770575662341275733343368830241843124359282105695634658718247799877405197234696027539307482618739608641282233549159891649135674627760877263673640829871171303858353406165975259929416432300923991717724700441421489041609780148656253438430192640956068546683646177755705329712845075259237201664155039611124550988425121021747489466408400813005462022844781800613778312124539702023380743728528516567774770840279462606992843729372764123306208788215937297932976495668828507008254655937331034386212288795023139689600001818129047540224122257821556370872958967983713916 + + + 14426751631852933601042672627365386566662079163787582720982550835505661751932007654011661204238596742202192987951089149679663198071474142314101531053874500492736672972737297100423714113457744462844914826561220564982175547108339766392360856756975985920462361665767471895408893799017731547070657049375364969859917218615489398330199759429701754588443293913263950541100036496043965704143052938193925486437016808944600424129123769089869979740653934879745198737944493022616400248193011629749148417823664102310557195423292839353921170107095648256397877184283355072370820539418819780680992471433357073878944633413401393849115 + + + 1500912421139976769714060689488439703003694349361913417161526859821736086921574145583782052184272489519622904479586478866740744816018490136882032761309236360140113662381559155036101057838295506309104216040634706463756934636979653502887869868290336521972855162537066773616401998730517499828390414694841337998007797520327444723557734768245571869465547946481537450764579609115092075993634021316778824977098051499167014088815259819626516176698415207342230399002647515390820547424979080273752129691781763813289029085844274789860788263285740378281289478876808744136169878320867285936320538118037792071256692280146864368325 + + + 16366809267899710640475343399019673386060095685065272885693106954630440287940830092033878828521919685021573879890246356494074576043169192778093898551274018373349050200400506278898994444759021861053668964312848101273622723192871963716557034706982230296060710449864281265671807137704336867475792197274514662647305213002330400598302375365020519351762875996716310538075446193682615649871181800070200854134188774494666613314347000641311622821371313260993870157995161985193132750720644375408452048412829133432591247158809611164392504526981680946175845511812497175376495588631276150127113114852999620138912450789393190405489 + + + 14452394625015533801785156353502779743620636477051819495996673700300086905339037087834554407009521954216614359653409025267614206600083896849835696892923891755912816653452850968546478615906843904728737323746843625581441081581714036031407461290141095988860273578124409983241550698338721393844614816773106114914749567104360544175529933369479975644854361107347977648382506477443311535014465471767221521373997392244062004490616794761196294945177327261630244640836826709601187705108440680401007915983198361208163502337871116013345736758974098568689029058461340249603586044048819813310013776289503454052788434281873014630772 + + + 6911916310914116850271276331249816376325646251368013279059437895510632039081000722695964069878285020339943662433138667657301774307311782792175317029151011113591912820491796821167303745287848061566586155413264135614887896890282986809473190978423946482982342419749185997723049064214031154048441094885111355677522483307359850066977477450942132491418372727563735466814238141839939500842053202186526823449701479823698782551352386446856045279342548787058427949092835580809846983347042259348362768154399437308319802632538372125080929079431706216650748692284728161095736508770855169232773506378172653627175817849735948697316 + + + 9974147575005943548171872290983026590807148025979776196549269557096247506701316510842553210828410400254373258889002169613826096765533087896267159569241727776779595735484046737858726083368114357415623257855947906283330526093400566883330616564578640441791720797421741622191525429885821607383247430214229785270761596744370289250374242003007809296858275034925157194641275530843186093760595380472921351189877070754457803924686882480791944108501997016173892368285534283561311275745891440321282260127432522391978534604161732925266815192521135009475781901479719157679488892464302625289674319113529963493758378323910968230886 + + + 13357090847958120508986685258534983528964489918420732440721723413989292846159562043569841549661592774114094220637743815059099917577349594229384582922250840612584960939315091926131912053633441939629636335394567040265328859138594868360139708556293231042742758956432330561552542042237860507260798694342571746325191015340843063277225761832699566156572006188902898158916149798449103835233957896811771649370045514996202685967914093751404002427908179498738803029845841504152620138438835474638788031101915550152682924318241253187990102222251926060309717344204709937115313031904439951159407971086635692410936425186880127858097 + + + 17512248496731013721904727119858449901883521384437982781344345771237722495090249813764595394486674827470837433932641314885272012038300491459738509953682693763662112479056572005938176483181699840617821329741031814437408761003026562838478384306725586581731560273739107078252174225612518152010091403099646364937920056057782613903399042076495839822263061362952903866183091741887554011419062805132412677222704630538151479487665498628147074155849318232010388212353897953940735209340776933698723458344228068680612806378648558380898111217185216635574865330274934801608876943927596662527775292253503731021313076068666072410220 + + + 3579323285190777188751408069845886869495954160742097548729236946781381152994086558391157092753804410085107996420879929390535242685854196803262248901449068223943730984952830894179633051361797515516250720315150824675697760509293044646168135715524648343804405388530778115938839231436084135715176437597243791702208387698460094474910885438670806084554994155218299327697143436261699800766202000281092819927794660821854071080220735465718584450337180355539259214366558896471144568506010834024224124352979599961316475582904555963410400019886620990073969044915321187479228075296079570458094009301374984031592914083338108229216 + + + 7294325449629636285035722947005023575713932657966710790504725500901027132162376266680375848264222432118444587081455605064826571719318316682255421237005069844024252126935120967560265309402343151044262004899706615475470693578560259509238222830750487655364389795269567507782253845505417902268573946352962595458204503947063338318023965054833253534921486085692891506240098104634820789202447603170488089698677602668274614233805784878696320704921311405273031749125441168665780097022599359512724510012984595078893171760489193228462878310588555074211067034423997075993334361619009356126025599426263016467970836262572426637671 + + + 356972328551569199500650028549236219303158633514750769078395245330216493902280337946637276075223231024482178331222171121696616282905676573977030821580566497812845906143020044275306459364623200556189001935316307778838275501567340397715474477523667790961567302153908037683629211804177892404558480581175482372694480956311407684584324544878045334238470656292036490300583649914896420042675839803567922004438853379080900799525866041724767929750297779851734198026663338218360286400134333540955955580470258900745546090173254318858595390204125487202324871503086302554390605831247555978987869003358129608993006539551120408762 + + + 12975701233493047741354399651794141943498473132303263975868287105025716418580058313289217830342179067954937788559359622965049329733402628532867173032493180221676640641266793369386831759728417102602991132851915897218315709535893659230092591651648957165706031336161648038249745405237016576168112751524291409328203912549009718021075301752733212579001749650644695497485410804467182318847998007338527873667385368116579045453584501960062852790806685028127567209000833376437921673081557173425508340729764267882186662630071272697606374827198760690843969808432033741693011189634113965211774291226731140747954547408658645341817 + + + 10883029602943994268396571141190285227237429018237717076757699035751742058120789726531046688860172463122228614244983980913439202057538538204787114447640193478726751668085280821245965472208113291335317774680736780734583328513252870634033881349168361729172483478436628752768958952770729169655630417521232025622854261950340117428373334921279510309143999534168200526220318468684784666640898472915622295085719802532598726355912274220540897372638001991367117673426035651682028963866178182134581503188902744421548287812019555048593703770145025375359731180992415210529019554390842366609701537060334553892087170737296107830569 + + + 1426878960314212914509298764030748947400748908717056022025626270763074096361055228119540110346372534047868925320907687585132538739575148502190392731709295120962206260351243126430528007281336477978222816882215851687757284818329738620544660084097386118115419830649118930422197909877023478524012238716909531143052022898583550505515757948192987576452751579763035664719759221817148841955961447637422984220856279149931281814341698535098462934371302892696856652628275807869342489139295721926189068611681043318954880373906971434267061877008865046279611096743364182257086809517451356525036365437769754899897960896886677708017 + + + 13172301065793641208748305534845347653832293822944069103868346191213889914667970271581448886778172190642374544986026648857800271473678861833083174037371961368320344857491072606013135078994592216454267713607484964744153398619953612989904459522373122039997953260965783071594270945833539060044388301424071658693947385446526244086261860648253593281402657190903560431358367154813833578292609876179462940315994638737554394188349537376054903872513717687636705250008570483794619416553946616701008524143115924338739082722903307613487507895622334774127021862913959972622866267209108084388773321215896816041024631080537866224493 + + + 14247979642994483547049461745052878591672000790504293305508179541327231422122268569336608596070402418771974120809312086097266409704812112727026444324546856316287269107768715250405264807548403609865487412566118336890680655830836210439087314957599299803918965984947538884984414920134765740490888935967932007233089584314427634420695944656280464116273858294033847988959916155570005596732115827623069602599526759466507379990759632687793809646473170410870537917325814554472415954318318025901286686330999479233870061190059076051233417782398150918040147378497102634451412504992002928295650556419669351969612333686275725779790 + + + 8273237178961064596269514723586077267036283430777704730266335880528169423254151013017993207729498651404290885308224166155938891445159857230217604358564788174809208512932407245134820917892851142611536875072390238705354181137356975249242512473649976954390974632732935983993907284512603250649283799268478575306250415133636100036046987510533129075919906592037266499374292395405797277564241736221763947243043561027692114717731514026601627980829091242047877981298334059504693873625265307665541171992512070912066924626838938886294017817830647539285613588357795485715852608112596890498657752358605253911984924630380152117376 + + + 1133907126394486172209571576722866694051579076666890388323043664008257540510589690567148939746079345464142051213615122015521163486021653386894849790880505479738446608971534777687133533474176861946636659373303033937343098125235897776592457738605920300515150800949000570569963962854478488270639496353149524268388079001715549154824483553185021058630268356132318439916436916634481002226788689879379453887582386776721471993240445818973981779353573979416013905390096363698643058811881345037834508577960335627567376803685895841965331655197937069285854307869635465293923183024724015748110676829370362543449778541428333161535 + + + 17297823138983699287065085581566524945523444713125572548529223126233697220523494940016196014104420966975131741567876250730451395773027858878287291826290746993543773118483058007045610694824777793151581369155398197209173695401080124425356033836983195480345332439539035025825541983194995431812023730557245357952904291876456923739962939817305473360040506292577199415216673751258949104433525641639351139626648124597354462030811076846050185033938968984544828284642750160949989910888342763983294452147836407552113315957204381000515290000509342363153846785968319072555660871680958615326014445420554041986138189071811727030430 + + + 3296672793187169830981715896395077198183963819509772153933042499781048264579353640149252087071479701970023891178305018947611195863714075961233513748764952627806686012494177658148910485274831071796303168907406651609840110125257410544947698282519263386912487229359304412026318989224403196858300461273522998630519744020954731385138799018093180200582357897395476885751551377009230174250702726269301295213899489665877117500880947890763693899034699508642763994430701840038404985163133295777249552195185032220735952714165892012213291545743547556135075870098359040265021023080561747582342571189759457769766042179419518989595 + + + 15755783819370856095591400245848531993923409735431343446777388499830115590218793770124188095113676399387013846678349496966444327591663292122771704216281512335609415317046936185611585125371046285726088469854538818187682973470104442992060381898252326326286454886868253757199803121733738251197185744483352141768862172946657446630940232109239519380467932175839491035627679060905644434698138468427168205414153231786615802387529338916040384278453743414425695071296157902772580922473284205373648719332492478802204539933506228040831435910794501918554867120591740816179775564175202263248609804749426991117907445883186400326687 + + + 8387071179657529646428583753100797822882790573855484203406609282916799691170748633728486166141602676955662441119532320546009047321666212224148727564485086231082307496863916471790256890249218241453990177181825777758652103557319679826956225045061630137660451810539992448183456269628531557153228087545157742913848958825545923724346738907948062979981158939271297646985664746834749441581331999941524803130030469408375199724730356323917396142173471245123212429326887437888176596894707021591213259631540585351277699683901544968588689755533208910400080184677962531574775346096856410947034953881306235010772162939135317009402 + + + 8417615484980081435982107250613852511942880085918067231781808742372158545388989155155274882669759364930567806401209411885328398034353605214133733043896859414881625945329723184015254251298789142028014736888663863567270435400981704366022091991570220692899070839762289941285574012753071044379702076750217284448054838642249344845171097968864359155513539386408667842245505163933699173143463680495728122184431663736325743120662353763185925232087449745198238107177509488612420303352409804624914503032763880337935151646112772639285670570046855195221261830126203704614777244803244936542146325138104588735575665020925858499154 + + + 12836241530892111168813996933812383849365192127969491692795821969036711551136586418924963785274872274166680107108612908298750987574606287998359938199431337230015177748549900645132927636312558076260007928284219136257621153542957650772764668762904782375883777070609369703683278488011883561418211736049976274756253401392028422741300567887015100490103232768709395327536326060993318159497289713241720154699963512979221524299909460163050768831820200061172966974118369639764265121553771097619081925197945328560374702577764514751298948206732087974244514112536659360617361276807274435654442706738990566574273599106525753944199 + + + 13797771636973510751393068163027852884300772850401851290573547364442700111286940497220060103044536102652653878812589338087270292806313468914703582310307505753163380577714646995782299435754016243595871630444833478373926765133329449281203437187702470226824822853593687022389560274634965174898142990739175570487952606390210618782274071423947273926604024037132893523081768879358585102942785452472789072461727781354266009058781531610023825597229839006930013409817576378077601784443761182386775193774198684779883964297695874089983681783710001142701465361413734651197198036703912500621658717724068434932128449088565717152431 + + + 10200814612921418151556429027601311040908952104181858653466876619995381297788580663191997849068844981330465056768295840636089843369751968787141396998798247883236117475398088019546181416512972701068219338785101736494051187519194860720196982438449745686886780670054145828619434706093060744014150923609888100140056210100920681129594884918912624568516845976375757672368294835155465768530550155108615783077811567123704363733943915706354579211640413505085990399231010932211587401703692023797531304138200382763379347523461675568451933625146451211604498684414601923169413691068040021701455405815768739305371853386955765393566 + + + 12832925661167128037259697649049266901968771418492138974442832488318820482780081628810927566000479216740253131189059090079787493843411557605440800223640741139485470513424209288548766428513036246479027941016714514674102817222577597377811082816286982715673244239861292698490026619266570874834086919055180734449910449177636235692712751826486028829023329937715226120243055212466216997308820569174297473959431988196639117964242624701671763172310469207370882544972972854866823185895307005680124423682253740889011103730463406490184782700402330261550597802628996961116516177640664942747240725946290824100144511076121970620151 + + + 12349831783474430866441543910646347140965043536270969117325416073911370397329840266000541651944005943707626810376845180900518626760945441278176437016018480385421123688849899554830553955342408621933251904030804017064553404223784628513758648737353976141904152607784993424067373939994826493777420453785325771446089806587407653593692625295989279090105765876165199957066995877420296778388843084644628139555536877424210817085132354918093862475495469180153873157148630164423779872300812007555757765630567748710135597119252743123910475183944250013679867389626970086528332849298735764447698260650231603737855624964009987591816 + + + 12127209338124587633147512903387338199980698443832930271321170017539665391521420874712053705745459047701692627651527209642541521837089881690491483370327189221894609454399530015796935696959195786733517059922583367306038473570735181801526612861230305090504407088863127176308564529365892107807563268757764900475243428966121985928799224558419899321661759932357537558336802037849076057513283822753555823578279701524508189418971023866159034597010807105478684937486372028152980498844463919916134366596366574840321095247974819453370013417728477410938661190865978217368121634249932109327015029031224784503761507739407628213653 + + + 14304929096422568456674684933239662653168934685893655038241367381863385612918240529306082131432266783519700987840763394073026377961324718291061042154691272293118318999550150155197059265975330086537993537761739465888149092168231493963367924953607620181197677596379954842727822871270256976524750663031920058946592163690295540860626061363766926352280827944465796769231418690216126119637184036042466770375009354737219919086441782054029418504253983373436959947247498218746027810367922211655062618856901085412772942609665105925526732024284774167009547412640929486096053307554608198244799936011009950577256852532231223961867 + + + 17763280543403564004082206401559851471067724247271322791849960928321372094096247732779022953712388065300972845589885192390042696999494615764591216132487446350361539161437304980193518474983223156930067092812226013955021189336572029105618920936131964704805570954095918201800783397431143969856044364889249904654288397917773854150153181403069231923241680863997445911226276862300426312254050182095405049783210793315203716780335500689670092126143131548006205454842303247421509548676120006391741401269398995905066939998601224888650036338202297879015572055268481753614583845396595920245123308715086731781208102197166763857940 + + + 14762778739220721929958404192227090910453319873438347927549734840697718768703954184687507490690532147268542814417460843275478969111494561968656847551328992388532286914447024725668796691909081744757747468530393383500307531244209169940354592227460529954776004501762326311208769106887462231634365571224276535051055685238863117663996783261582486500204024552413811298098700775662338558227237724227566112841707490606381996290585335570302313873272474498841128652327147969037629248463947051556638552360307435959116778619826729460455023941755574662644594757472796487940683240941603482244525823230938791792338495461580590033898 + + + 1078853425774788752932745400729353455340864487186055470441299124646955723533375046814859239702861904806929427767779633071310198086444391420539817268256373201208257425398738519918610870359215144139462674834887059637399678339854362308101966123346026274192729475983410296893411757477957486498142418018144200322916503562248105668128331195250763891216863660148302594563691930379993642937890061961246089823558736827705568903610840980309244076132040277686335220499813869499701849154038418591081162778403906070551560507223953215382566762238540983194851214721165574310349266321187959614003869264808452067208074788063070415747 + + + 16200441302818269972148763089708001195509195299662251645559734949546929218181418797142949523141570754386501078690936307751951477532191580117620039127717883894963384327895167819604191842116208216713072633816507349880937190175161118570238978200049868653289705925219827341346772948694613582096588083539115641461591138048359655823292321546137777789855688900167891016970744281645817428305019538191550369771089898841617824021015100423430094132274013328137355229566302339516873323670117986683556948258456876412753374273371500224641582905567126127864244922636736734916356595319275181918801087535690568956320613801404078938623 + + + 12051213004587515537067575801515354376025749611353117445291142325313819081947430245379757243007339334393433573319570996136667349137861131705884457424340769501721477488115200750022568060159584902412506074712804439543851454534488852227622356957139118997723356354779386185645108520576017077708250859283946253260480472493461209719617540378724809436457837669397258186044460334923407114206172897245498524252040860458345307704068971522847661923438783227856159378647753461699644795932102279296401961784485720027206004580025186392005976924778226143932517771244895752161839252200391438488828796174130712411389134963216233260216 + + + 3071037335435849242779442795203123321432246230892174301314065657271036154081520417298989184167398833648596209048222661974610874396942464852079211397327480182080962585661155799868247446092838600153980008779308029095191673001518925898236835339322336820096517818186636501443975857676348121589513775889802046315537186476583203882109047928836027137868774256848068675405097227157637234412762435724454880654614869949449105901431863200962142829385013348905442414556605517042886813957720638312902913364679174178227081999871493215842106724812967364361842410699387464153034294586254256981603689556989701598859782642302736009773 + + + 1242822042473143874910792091511904738790983885718143879810752075011732177615941848722138605422227894975929766196311082734861954112246432667970398135823966500091945659714409045976841449776655588332529551192780523857095075123434152255194149641531060745192583447764842675979861612583178189330816968508321820183664989690191601773358135931498247581997465719403199400159222219973055614119699654147206299053437490312435530127683785505078695909684193857680025484272771953777767451339837887335951125550913366030773227372871029256359400180933863348502843878479240199361918786435090895241982000858193413940388889297052135815723 + + + 9152658060361264275868365366064696966217833719441409945736071506254532943456343562823301080469661704085900670477190788851414273123924966855381723630169772155769855448427577523926082268900072238501616530756162606815832085939943872924746466418710009704242667549509706498055187109438440065372072237483262337112740272906129643972554653147445849215234316264545985294915231864775386970283358604261824555948503721335669652387145793532987103038995871147756648199535678654929252134710488892921344734039371847163671432858662554355312675320110738033511459126020484854208123366134607932463915808535639847011113702661375212637162 + + + 11604017070020379851672867213132097957239582211219765915524580865230691151156496156290983818380594732746940962845924352593756932389298582786937670584280142047714544490298769857260893088626299788446028452342778676653365071282611061929862753247341838141885235417291532613452742972648143010482719345614852423264577804010284054595765731933092892147443995709280112491752598348572629401257944058951843956416359132563637314216799669969982980871391748091848769002923470685552935233119983720726657993294952727811993306884101786694127511464746307931708081948857670391699206387098936042178658223442588311492520360520252917037160 + + + 17179277318853905557144572619348419559270502210580218772210987817865505388845489866930099817177718930663391502730917455476551534084194240014231891424945402905964868424949157574837027181657515234758704266552982506166327787475618951538325875675568295897287240189801324304886958791657088151212798920824708067853344367580476783549416920045336741964431826760639252962006830588472125726346320957972003643833164449218636279159585452384951579128085091414110539131775759660361584619810008842296894586780888155177596663946961616864269820396560621464016301615250607361208386611647838826403235442985554126343239382376474619367728 + + + 9423553784525300299899596659717693219367012025690944678485876815774114084418429757212745977629246440906516903855943629495637294382738041785078567485855366388220286180353970581358454467979324293947680599852635327349034332177897864619077142467110791658497269208400504023639953012510234433060384174717785606360608569173089882594090716874381433902530766152628703025132004126484478936335811649371012807308632636321398561741710516833967995706670861106304361274330005727506659526820918668151547439137774296820301529761184050096495570280041479920350916694456751627808171885222099812592381962321075098471968467804409001040149 + + + 8587391938552648621739487028201618708423305935754459587036556401542668687550782100112354404205893921989993825486449062812242953349460737748048230232236830175184252421640767153090969774989556729856363990119720407147676842280917992575880577646229815051462533374575149989189080751530771623551435254093327201791993473894323466001042691365136869912648360737822167844552620513538313420853501879297143953616894775554534040627615877416855997480465819027671978819592128537111678064609437407786156300904054766723178244390380048277715207656935012471847660231606937616806797179464395290777339327203835860909535533448788783178292 + + + 4762651860158865319800507679760491329132698543577821107362930047565239994879836061020495343636105196383050302919046430821547493132037896850504382256866058524409832596740836266426396262151097669552264913098614553172165937112480009105064326152656627004202370268113954386034758778010965149406639955359809259038568466214280361076567323188872289220997906390013367758365779734367364066066090709430325863308110587944908430946368711190979048774639400363109282935671399230148851358402710771368670013794043344069130158811163210877469057621681957609571404139926424889024204105162232833382197756036505128401900948038848459792096 + + + 15648707255651819663831769080262322181753770491676332271353016053796325517922451605299235752020221804400888346553205003869435996140251442258559544624617177131377589087022832830679405263253828967245865039542284541775974223664845488380576730624678184147425837223939290350668608727356072881309690982289590285169618346691517951687745026580545868154799293709078213670741513171673516919904954753061636028044185392512330893964324283892532218384311168584360379080219691772912554235860701593814021826879836901903394103884208745116388371232131565340945594530504770946903104765812030809358142364609947045835780548803377939497407 + + + 10103386589023131054171767070272018101104238433731558182887693741501708934293786719067372728513048231056373050472109457812565473987477387387852884153097756073075208185771121723186817424192824521667171346579394693718729558713134462142540615487267806178779876763489552516995987965695473812719594336781701313576680551460508050314074330421903290754831712042482525025958082106471021488286284313568175157804109920583004498342502351442955800362114617485465549750213975323773271322880524967938372814865030326346163404037031020124947280572623516596954478740404900104213176131630351429248934534730451836816506545809905535374128 + + + 1905905670361484437994326681054071654208346104504485157221342652315352448564157958035506813326712672972352151639382932855498848842064936571889328970898540059250283141990383585567325175269412222596127724412203096237312402425624492321706086224020889361959078725712564919972656333076155106322048641923193172461415105146828243145789715192002983485840444985144042085238080158317266019090974337600942918861036008277814720838296670467683681863286198600078848219280438325794060570712982917629449520764886289349665016300252983479719987237606487392639929367469997432872629064093267597743239477607288959807622296263947489172123 + + + 8955622575645662911433267687391814065492643672579014539522011350817108621390459593624049307794368849690128240358099604026612827494356961749561263772415827209993332838582587773626417602469828878853135628165370802702496715488529436869419403583681416129802835442108480357842377402572350478368590600873909626101373692953619887877458791720947654014687201142998711777144907142534669526122980961620987298144658720940084968817797253813624763296758068670346999730053343992585188089377987530413800619127576786669283535630958906026201779552000172721271732077153454064350993033893604791899964411607922306849652874017189892207229 + + + 6423721779657052568827518742462734268649414026562015445249904950422334000499473793622699713266271443807559192841148257084535883133387959803804684270342590391805943461376212341255561950320405108624084362835062802059330527461175459514664305476014489184061546146789340712822364058884097359280826005934933025196730603547205798342978150951275197567168346082874192767051104587795798635832596511194292382556415873723338363742094826990229996625466049548933188188793380890739012619749372429259676785920051745278748599793609097118487015959224734108264658662784887873159281321528577968532272613356043826788877456043420773890648 + + + 12897771586021115182985482718898314865419060637612570965903701981626017804902498021006665690780501681268492587901994275634016906913697427899604366059442586563045545943842470462294881524290458828058416112645832602969595411505338296589536580420678828597250400882324833267218989116761040573005860133588189755984856895518541476065931797662890930775800686429436968339137308986950214692345273987775772693813489525250169691917817092846984118899897833441063099761823873560361641240927459151180946489349049800202520546166760378482503454119350168335472373265363642884297490670763454144496102962799218777624955591721323498635451 + + + 12029669577582628600385969057592495655455894124566028871730186809040398358195306353983125874540096513475421039630864933761087085351218240893363662500604341447936922893833585721137144596598439157440599565103817639037683370899931075319793664972807653130361222714470737971662647169346529290680150156237178764974147063500537693331918449473282737181428819119303066849774182835615046099944397651147056658082236763539647378784449180103722115270187291826906040002539542484510097957008582925224731197874356759132366495184315660896644237203490795204237359771155669331755448297904431334382997650256216083332371869589185035935782 + + + 2478492369957384000449714271109968663786857678796491140114262255808403522128203449723017903150223916224080051232271352175473954405417344157561253632554917760513529609362288275830321554161905376723014063396424043307484028889132100878996001299282577649858514019656373857859219165629416268188698169194354689412690576323674446743552694381174126872076811686047151742815097898783255263224933128485753360542008528948970013841198951027645333498863318621220056581842564237170943244369551231630229827642883047703679024744819784973769167064593111437365511944273903233904948259280233421267511854328743015936676701306862690238881 + + + 15394564256030744624320669624158170949429353955362334155728434960439119423648981856387381399307335724715967918306755576801930560347478249478799746171225476947377944767421371997627116307570682929329774339772321365149301312070551426897500289342440573488986175338761259246108715802536535025035692492338375505806881628553342037588743155658857266876079691811184032708656442820521256355862777149978292195859465895970625331624538560891613991773926847906072476860687496105697373193573684503824956655553618863842099280114099822173482300305206018292902571356401346814954989050611585943322292853691171112619759020892936836635397 + + + 1047465780678517014541876534712179642245633709247173737787630692845349003755300838805621606983778520197224490276308868570409306816367918550738978709127178024814991291756046209373313293631600593623927959557298991625878461569130147490845043072911153176644006243251757965707225866732980219174876857677310864303273695961576229888076423243037028032365223505077997830186285687902759696651512182910901622022571642796800981482632056892407382081875520462170293092554563504124360370013990910871310023185687480406047905451866292171780132430930651581304343219334167619587920066001547081822891687919837448769979238031401353542828 + + + 9162551477069537198706604964556733121215807842136415763039725367579850727188148241853529736507188829787054232594244374342053118285434744315028023089238855260572827116857350748921843616523769687746258757075502845889964198879375157052674646896241074652911681634185057292868364510390606122060728278372282893162529427260410203093966350293752538192159210016229612554831495052955875403898252003896471036583551515545088801014331608561541207415783351286905475884360701641629611027143393861281198907116403246238426039599707997484506466697165394814609435705916991902919204706800247925151629020680974691653343350910143497247056 + + + 3788884128538059456327349871219659982121551469845129109045524281555429116762565253976630584283087938878160729637233392153748579848367576509473051702383832396691500035006843630801649771694066773345769932103421716754399369999826982012798635849347619653752779296530946284002175918801258141009378438968833189662104564006076754565784847510075102332387812772646019728927696248384851262357261103352671558608216076691721768536736685177459102980557382549682369021958128048372814716424881851299689382273947873057380997467562904481787211557843436038987326684584058855599764784580496763986084073632966247015462174291218989937387 + + + 16458235247874295333293304329161738768789579240719999658048419203522700738615792619942656645455187215299170744586179923679675995382700692085200191755375543550030589435503815326196651166986401763668019010207070430262268327818333041443897358802120976767267942099147130889884992642247591706484614635663608866799474989036170587707487673987686543299298361525380488310682823234871449469263149238851440427534012142796219327682607731564026384134490535711705056557503229401868563404774036007261134473822526720367210053398784508842825377884070969765081270209147147076761440163289546413144284292878583980423106270267908434766535 + + + 9355472047663138104884861684758967430564852920953419824192772962598593061610386327389490210074027824313728653340772206801281684338413356152885730793982630389945729765711104605545533380544852878610168722265900476703909254963877024819741361607426495400242492652336675770695084212387361417179830590881880524970444509236589438659402586137803921778684515341796384592864408041319253237464165565801263878074511738388611666360438917258780057788224372793692174053027846891708539913426290317959794219433361422673720679611247495632572130331838277880034234597688397018495946558794554987165665969164447210929399412601787789268176 + + + 374715444252682595642343490490135179299899250420685425428066805070882142332238204770911363274962309327549194707357858837310055871933800998860526452433332414313916434221357321122516947031778227039994723783777655035506250495792436719821610942317495113612494182862211311037870070646894377386942044477216088616475907724618160053629685750068767276962887173582414806946182146458574889792029055817530617206886427498087021115312254873030362619413005817199922369094723671659141268524571137841786894278020776955039662719345767714963253123507264324260970898827976177326404649803263393992572519307717895258600799102856789257316 + + + 13154281940544488395908132407062600052148275226572891511429330399871023573557795074156623488437556035716042749724480587464861932564919557527059281168153226991590181144515314878826935062444834179229405263337687254456729415134783361381001615262795723042763172834438684904080600858712097196070275336223801388605185556615314401911692451190297087136210293315629999574783422040820379793745339396547046708327530497427653073591554135507956759342478371828361944726793273773134608323454314631538364068127240015390024527579342851876414503257281173939470425828492967400741858099716234281968242217491688126568474887653168203485343 + + + 8072024261695359438790442215446855900887693566778981566669049659505976557973355011372185525188043339569959763080266293728167158510781251828726687349167298440224837673832063093406487572514308808097529602233039324442880072941148173416207470937881127564337661394811835231881785936333810111211450503038357222761528630951102970649715914322682831864254347279191801640108237004907566487368812645090750499328477681308195587182707602230204187648103541651609847788865062432209934677140875089303931046569341638605001976239776965571788832289314932460486258483305223585428720809817893906693212540951899384934302014728604831538390 + + + 7189811677963377551049686211998993177461153664251974813779345541802453041278580604483826626249954469338792139878456617577763433809193456513956166005188606038131171011505812149917098214098375367384045527575376565469696484140416138591721582740790410380382392407984137466169484972518938327419934993188421888887375729966038019667932427661005442081728035743270495923443939399447999246520431114841687957247259302970471686345953252540683257661818395358086505131327596790869554088837400598462606324520849943145213211259612929074960292076693490492377125449474252752187223186744534929745979780759616075448743167694868910014975 + + + 10534120281147757079593744242856872882844524275467790513083332660151561595305517928209718326757401659820353134095141326627090069884936090954973218189041145801152595459432178616883959139949504367743170068980112799892452732050019026772026391050992322992674208906745800884130786031351702375904224007752909246496394937102620616213540409931881377769760674516351029783272436414152046055350123122672064421794250891077944196653324197649600830412273084888583367073680590613184022719711004082025555450999057187770931635618110138616970270391081396805258975356354524124878427034817356155009673506299753264146076191595590826962230 + + + 6917774456566163380789857320064984638799556703157512571165221183755796501574995494499757724041290518621898102908482618602853598351127599662707723861309775408813606024693147562260222030311970018433789101030658127717921336044194756273852760561180369056650829072817413238531587603198843897839763075463955238747127890625240864236034321413974940481641972344534565994918363229356812456321589054839308647545119350708232134049678448425959191092907764552924003534472669535265032292099692397793098359404967383613851070504286904583658939321706711900206900876519464064602424914743197316970767528848530578289778901986315018986686 + + + 12859049989868994800054305615483089412921342743123811170224364261201338313442338702729499923048212368721576375744034585918716588844322302535389462802369117109557964104082619009126357855221534812221944505837543689585525540395894734337413862693879479300787893132109872637424983961398405959187657318089919728938954690196274879065753662158493512209984561230002013890874068350428754762296010565641248698972283324291106798733844423943832679780545149023795407855424560195017922043044024043664080936826387704088060858848617063048632699529815779121620796601443020837463018195962854592222641737675282523134327455097154499192928 + + + 4733523580065481766056433006345635752885770279116767431336746509307986873925395036360388359109322759083006286437408137787352461954557974059324255173158963102179982530426998871086783724818249348671301955623400979894644966024015818444347411271924211289105048437500330694021403698352815762425042043451042949774236582873441488731728287501423824228469139172056792594417897281945749871153287865047818092545359921312003820390194044459223397170302042544857966395064008480939675106869391175611268334126304589536646350802233168787319980731018371266965335074891451636555489681013113208215697380342565690941332650463188680185859 + + + 11614450201453576419763283659942428026836799772399817354741865558966661092129550318936620921451120335427637169222998247356812125230786073962808488916756504179659087981041246102824995945316626448652659906797481844063884619126525235493196713820190674319655406628081641107000787670081843386838646857130855561695327270436578302261540890275267878743486463269995936520151415199196452174365835323745077057667270509432125834636288273768683926136188466435835425651751932997631806713767172584244118449886124891880620400334416978008342203742745884960665530334359104624744755996977756513279568781938782323263448376988753432743017 + + + 1443706601584144429864750679250448268273109644141928682406822688515568219952005229657886434520355081228491361207034623592838781453488356362160672520470626120177516865555720088871332098791894227530562127931721409573098273370284161612340825154157487098618933962952531844684609167572409228835570437384892431077791041546703028227198958328231466974842535736161237006462003917285127012538738035281695344470832829088208387188547413938847331094268694935037037935377197378550038215139197388328738862081489817573923407882337456825700067560450556610798109341318088328725038542713478526598983651878206535082049350449274651622335 + + + 4802659247656622465285771723840902338947352237089529247065927300164608392094007741982058957055298176470759450388158118711336784920821718020535604226847827407974611559681761762332106175745624668424293279995008238524419160719507642841757767604089885183984574582885773732876747548518316821809579727315802370015192271050913467776912748042901872283477813669515405744742716635144269917919756588455028591058059957074882052880613557925056743901841224327891523340773351845062173609547532477810088628236936625631210438526399405902228264102616310915252430116618022996452994171478760962390690983846586599294363531078213809368987 + + + 10182334671856469277912909274024168936305018501044432623391193523407391195953699800046048601025127272581365618339325066748965035207619267959193756038113385015034000298885826317003139810941604934155835867583920348972666303621448476907713916580103102807810527539489813720955292054746645224444998444098025216336412981649578235784706138268831188540260972878567009582115405407307224186111683363081161714233939927236580127043103823086999872246627928619980147045939714178623524100447733457351267259988410922129723945521505345424516244777427187943913781915051553011976828358583737668391054110208034960361910608850078649708684 + + + 10076217756307912783731223237784420548699800363276490634852120755462052719588980792059933900582056568883554519556639820901459842592108437914122409605264297655821330420489796257877976747156930776800635561242997693727047148585481647129256638449139012893220137170379388804855145824029360543041408092472523200495503222988024590508255255896759108456408533436866972763411618041603204254063135212117737011675041386392334214137525464153653455529938022233408838660478328665094138090100584642895953981081946693568797114300902919660450912153816461306037718286756048095209574480763251420908676852564198746448232553175803519332975 + + + 3596906900392476210624428292443101193717351421780201542015878912195511144638144921525246839839028222293746788692019462694586553277518504880738991353826896659081826800037479169098433268216260276757188897744816660349766234775745584990857550937799040714048214170072193939584544438060779056367864425085638122865996319085153304615964013834149429735565014539696155132532866758362766605678585905602455464071741053836095868682580686348327046825261380963362923593543616541459636225758087933113817338526230733994042061247594314037989808895566391406815056740717135235381929596681952026381352709228541657644205900898084296011084 + + + 486924822858918938578996637775136128867240604844971769155902177175871526568896207301589837482585053882474219207570005566641494355603809380015176055320926078997852185869750245347390588532006077152951004187722077777324955727967045711341308908910217224490640033867626335819252706141447945364116367591343581015195138179121526590401916136980552103596885019430176975586120220901621982354415491683427521942927671958415349111096659037436911135837370840904522520003986027805359834840301312718433620151345384909377127594580919069949242746549503927106900174114908194265095714247022197952004661667003051600674019386008152841203 + + + 11562041432173877615278798146042146423003291058092922856019522943259229188716933765411429016558409526754742222632193041390075153393122617268966088443817979702512621019165494993168742036993252210646125369530122530460686286466797413030315447891559001606902355362006348887635009693297781315360695737949458137806315869206689036398009494743077532836669984167696953716465429777836930204666904733164277750976686875235717125368945495744844710171299232542723351836555433012180026172659603985225949647170142918653837399742390119302542634205239197759861467984946440222450822264962296057638905201630410821255697222264588985248421 + + + 4575230650709119970746926349113122776875164415228695497630839239561749532326204137624635938745887805816468914088518769135818725767176636095369698825225935147145174504241469624960230250423193598751676863138062179512595926532366702953784841682755246601203699782646183229147634085120828620368200660459665058716686829353691721266706947043953568619683979729497081109445471557705100506316332945808484381709405536490632971212992430662492138486302954993370406051738154625326308472753916896513061704687215326868295286537129659404957955673031842637272040939898114999789835632591721370152020149082918676069007407239885868553112 + + + 13957462977210774143098438007421421053263403167941195744298272515403918098266151576973609918923129034403494663342444715817558930258826861574340457509322909893217161926370980587438345533065414095482178793563188004676574257891551982105749755108343366085024184759774688539940841585425818182500660894619013268877404030207175869169879155419698799634409442116831224172945425313334142441240805960911450961901591237726323832227476729827596831525061718752045904484612244732701262385887417751680748460211559754255267736683034037015697321125919564737008353834464362518972943553981903925943070555078025676488323043669889970540379 + + + 14244958096981890031136182456370378919170639817345350353110939819902169638276794840276190429256620985203468705734753173170654847011720939460013424604647853867728815159036622412676007943349845323825802889057745942368137360566583805679697968643130472561948910369101220432477699931414434466382607294460005735064472454462434107656892785544301903878746142301520003093196581241442119356606317512220728709285127147983447754576166688692254775000384172069173107273151306609862437244496390023059036986156132297782824268581776879817126408738171477269584657420645239657120397503658954464139072815681418804052014411241986193310981 + + + 9521991421456532680343801715704553414483865679489164733503619565910126686999239695840523857133313851444127299426139688293617737871523199529606412530225106819268666263782193750195527010077176631705572672869608564447175551744104775646082053504880332186377728287491470744855265653980092586036180075554236163420589012193052549889065828482301889748726011804602295544332344070808643408800679355551555039790910922667465874386125994146002285777924412757210825023476803468456748848923160165585097248301039248380387896230102105206702349887279047901684679539891240453049184242355089389405708029269568853451886654072103175216106 + + + 15567559491761227131105735328048750181085504832358378849067430401836512717103795027918623447778356029312290061846169700864448961964963910622699082655105426524406544420846322704117417160628826285660814082208897601678579103356846408261025754554060298852543254772762784063485201876038166485648914895808924069804735008555343955182063775835963008800795000769132815487965246104055194827973909070531281190780716997551228108034953043593803231096807809774330640910791441932389410856922069594629643109358385937150521123808274689377474515049239222119139817413373224766824833602112449229468754958563922849532933766419901224660093 + + + 17684311384925216999491037637441831794589698631504800419727046191102879963021935507762403379808019157579463983454157148304857687015451652598874723525639232102622920829283668135824278257523812999034454810206689554719027420536857763001093601100584452272682000196631163870069382031936333501526189832516666650823390665751561310807006789620810358686584620300450976886760532572698604430044996318868796344938777982898066702255793352909497747979929207636406210358514194578596480238942127303796725100724171997437129839454547861192845974543674871867122862695418649865048844240973478609047364079252465591392807380407205814410465 + + + 6196133828969392053212679414986028379283264080362806540365681646894390546792090616589134123731910965046809363802196759087667242863450020817780248584876489308332405984881620357831402565723315105544914766310865131857801339520749510836711205094257307368170965765056169481088057399057505077865559361212618032982626594809378028185076999902117798912121345984971428610052524563334616625278515680700134799869721451561105362113840705437971049093377436429841045995494401582155152587553255943980851152460070617228347598342939930113783937836485808945743993962572736442783026342105949149233467583386790982494719677569655144847198 + + + 12153298490836226169136093190623780241650525993642128033612792166033116569881203602394163884831589479952338526083700176394935489714165124689166940497406878299903151768012892461526257068973361707235405480084230280971657737707449908119670739264335911468273189222322261258275317948466849688932427361606240601564947387555183908241964193821784085194774459218929610848440805585416623175783770562764259421804316801099856979556433493572586527626948280818580071873160181375816481525008904184223401916155635305186290298819306713967014971933909684324611729163200903389522137878171918997629260536170785961845009439918713171191699 + + + 1576314896691422724985728886274531560048206821713834354653037508075369746384770963198682678660171686480154727454496610834242384941436412968120141055580070381235082108488511128416081875834371210630584467485916276221139304216985925853070959617734710689799779701909865710337664323064161118040341724246153295763189500917329895288831220582362007520066060852046383246510843600691832156530729920743340678049550641327200077531369756752978139721362524381248785511711645185055239308002140549753175259136191019758298888176808727815515656447744656703913637407707773573859633718641590428340198527527055630072832447238712653106550 + + + 14936971820929712909101627687682501894855450876626496571802444562272736620531413665068122439980885040989749502754041104533296881967914859127267514446629823204776234004514059193442502619659033288900837098411156493369352955953406598900764968173800089613198457053259338953357475562203724476115802373307210163260687034760068430894801680887249832800758743499928550345134247375549546167553618610236363854015774376912587711188949038486927402960796546497485739038391547627121655924361674456387947930704733668768190661458986055652975778371938989219525384404031736188457312743395586727711571048295596875702581703835278534227209 + + + 8763811055275460773700435195038200635858850274293043000240708564379355884149861081052080596613340729500471502159238085614120251391129365153151369705087621972893365245853001402275966328682568961836312406728145216668659933109330950672916165980492946719283926686495279724435827730081054304571237560240219057455166042732668391935575643567520872634869262509115385523017148563141615629113419690363133241213664513443032710606289614750133596735764689262108563189785572633229477807581950915085160705711892590025043079368027690032151596830917793583476548778949349487018872564365535814059372417107363143067147894567309481875385 + + + 2322499417716152764510687413849077069440614699705732104694503124152597093821723865404420390126060248321465458677970384079823307970883220587104348772057743159706946048498082774013564565515931695643274068447866637556401538374767388887615812662788305767105516898064497487789660242716185628433989242907224979371808893997512166252320696634180534645082979605919787276194013424566256459757166264701707005324251238714699253912568191328739830655354001166027431436406454817995536446438063014939072584053657079508618690922315032883696404837388016790396807094140886485023944230138071950653767734374724329288231222973322384743137 + + + 16279358632995388690828934931863353623165334614851014743129982174149603897136879378943917608809777216826010489107035451147631238833273547044422398762370993964307948487841987660893166922710722475597190862793243043320130248978877091866535289053534761540601622757640373215624196071426449865708077540516985858260083851553466474919672784796282391761553844213686948549324975367317953729462242595294122935755219860101602013843516148782878515692621855610391275966525613925800156414103056030751545721841570228488871200674623927909706358292712712367545894694159354192273192027033266091393367838147616411846128719930648904022622 + + + 89108493399675359730749046240940168404835205993138979193057082011037218689919630380641928835077858780175983133287464064771542100864859923015790550654774839514987847778455600420517910111142925229734814823536672060020966762262581409210634016556435947835142196249855215499059156232570108260435662606094441036450535230222997312767650393760982495600838661351481232744021243071563332462897379031076437401827092712017812061740066256358065536485480910737562676293175182874019774768235421737089553839431299514620651069923337505304756461446343035336174393201889852183731571782287796580671101166022376845247173809505505911961 + + + 17417911668863356243602480005715877441947394373967259798056208074661214519365395307709257033674201464325073315282701312665489721471283860164308780129986226984083358019178321165479005085660824608011974962423942306535788364322812718390251454407805050243106776986374838961469956139836507218162690422312734196337230302771857907464382529119885838430737435706257142541945660534816668214922591085732706064202690736385019720000186202888537054321525542357631545643801117298709699015312502273782186703179979047574545352055127715187030925079957724149484934968226346585100640464700683074623975886473062012026689626216942482134624 + + + 17728638885450113690037911857650040769537743525766177888842961237203831737985218701429254700723469928700315700087648951039001698006453660419064650591354669645475422382236026212694537791591150111106667226478645516184116903783549501583680305381768917651250765289174712037268853698408412907048089140575501458372321180792923704840451842472946614144887659914438112387811519364192733566045439377613844084346943249559692067551609053600602816542861327666456165156796327724379596599566287266157890581761055303505018349560574235089143208876554478419914035402313703423427500396827448812990259685935409155110474285957676686291073 + + + 10727819174225393216762713326503418714057026534634970850266687732887858477685778051359139025597167938078401038595245753950697492510157233717752790271067110043261194204837245730313676474395906652124367408253908487808259042984151929747250351273812037016328787829310558857230022915630348468309671471366787081193135218954120464908758113437627764624834646456080564289661198633373972246995643167450024559040998394281550672673333458741872262471008426257422173886659847439327897133575221927176617836103788914062667373439280639248389340196072852460035418454345549227410527574558894411140077201174573508639699569315599874590935 + + + 1066422929786652734640745110973009469101391810100585507971961345830569049908568859225093873549729971432242228282835551305326913672221206953006115333454657275572285722739989030069959269394672551593952073819162801613883411337514901458582586113732734607177224255031021214154657122744549295569136122260431495272573565054051206398287022255389877651356010221989577145133385005694096906751219086986107609028514190868776807950225804311576354236009097787596686129312899065641744627711071429279100473657676588150972383890162180504913436481998125065633406259297715965863239779058812961918440450596961668840465060713097557797876 + + + 5993848789747936215991036811871054662126154584898614845537337653242841959191043479067302237921465679847966011939834926447101938304597196297836120757995207382884352453441346672159026914213986037566482321830695464012045222064435753780145984643795965882652992071360631150740141991295430905593664908925698817974250482872246977607380058316054903672583698422429452828150546686787102739429580269370045160894172908315512329303111949036392792818815339630260022810367657247588219258854586781622766066280389562177191634643621927364729609283353248689422059210159731160843160782031890125030096189668002453711909226391953674336134 + + + 6072440596907853474191564892422144918068367541729793954977187868160980273387614364502880666924465606399831540352881861049369663254086886804920695287832870742845140645365018013558846802107937060712054500244801783232243452327041529776103466081249601927413741434679087134846635540051234735421494675432510296706288775054412514960724590530490223918949906126040698318694780617855625465789956056414487823272970785985811404300062492955918556208899155459308030128552800276638919738245021125309813157298488282403323796500734463089177408332307019439693953885809389944451532169279441717170411945856316657378835409492585380688196 + + + 6050630071686500879475695478987409488935976719786845238885305800033780610728177291394662896894545817446208909082734144703456900616667716777838074680168703285868560830507632065556541856031033423929073031094808286238610325799110399569659342293450762779552453740695767146863210644662696353675785142576371804216841287291616718894317906903326392145744619111739489572923903868570942945618335595982727022093541703985271370312431680374236049196488174114320811712082598474001492997515084396434194987208723027895421928796202368594305866814402695787303237192382179273371126582911746279168739207990523055804200350009585942782906 + + + 1937151637323651072725261132638305510247128684414034904780357168604670534071476935044376074260572638511526528753132731500503201088876280357885416919613490132415659163501794857382363895848597357928006138840104917409689659893523716928438716581384447277155968801532678746422915291103189830343474202197175062746280188982145814153228369519744067442041921428698361277806883723516589567077748936116513935840409395265317560882314196852515203575274460779570776560508578523174839665659834925561485831039205410761145083220249038943408171823348424892778958737894273955880897438719266449627985653954311792778672254016680249467013 + + + 16092192878318839618987179315737513634674817068718723042812025423213177113390450180451878432680496386579934884984675417888124834990174374834180582108471113797205791349815606615789821717557916729178473625983574041212512980792730408119815310459118494313842950575902642961201194744515715984227235926447949448234236883311216550294159313236475076795294936194704349806912608932051710392539951156251698301885005061155652129294083016209203919510592876781290462412172218131187212350662842281683532898677700180995378824714237910976356165106245051308842865653473758604027011590012128706388128852775378457006330714709782462033704 + + + 12324766294603190525581749137541894108909139995944878246114576768409464010883718056054599571805074521568959108742981093760916776512141875066752340987602561745146642918194081494644724881363245560402056814592510949639314209012522105433196057648314819852493446817627443834589662188349392920272948752172517577367528063450095098175772915162042945824221347875081553089306555307789388977157307863583293105795898278126845131176012332739600618597736625968169676712563199510025599218741154428525865716238233315991588115866614437462365855630987730325035982806921259445541771771408548569262743953988323985331766986101103342662120 + + + 7272885647664919811182614638495296329069274758478993507851963369902597637293016216228398991358420983707442029068374401873504474760108320932573990729316725821373832106416744592254394043875180315337576269874412655977839925371875169932095805467341275208888544217846122619504946781613412254563336911643108389025555381494139825897287808493033228076315739418931066504401913808151266469350876393169213708102015123350643871559264236003381081105351818441505343655405124853647194845802363119721437826290805748183536350986522853893397622236638222855710636863987120411452606608530601104657865273105036307585781447733929058697241 + + + 1714982628079830157698416804620564093161923498954869932330635786968027378195913064801944109533319504244713024093635122922846689417840554644227782473952897826910164899871881274162993414987819717073052290063699257656999239465075951281514790114901492036323095069889861945266738718965231938463246920013308558831441121760190811849575318588082665518918562332608831767065375351323702593124195630121802058064252727807110818580867989638195410177667841857911353275795512706214913150395778742157172684331587101718309450215259098352107159378212177739484084276882249545555777154335421536598169199634396883888072113261047797542506 + + + 13698724136447349279217120751751338964746371929778734179203738398026087487947148149608718476929479455347747180756765237018438295330625721041749164468915348684679929602573980437653738866816965941833320539342562565003098140857676032072833046118946664914404141244590653081848306834857329317594007921207446498067400992647960231222118260252748408176985464727745711917071893137895263811526273770871508454009744912407523167906757584379080483461421749348589353408994944652347863874107518103303593998464851408794485478513196262436909826429280919483518585540847415836564582952094839078410733672254189722786775174674324883433286 + + + 4111118868475412020545054195207381164508734789461786134576869364808008888487500729660800087275709084351584835422009501891867693581813430014245599530679297841978297207882043552621188879377604240260213927031952965447003483658133669764720964273125664092467705153852424903860375827758805192785818285965514328588630265514642549497690136471562336404581203280845280267713178707657567200128209454265538078317465905326317603681908549200152254713908932981815380676218847756718838250818639634236148671150944590572268382714318403853907714275924823518158214303541691391937949218495816975459392144141785150134265986532067529314323 + + + 8543307942902153920819104108300633658257307646161248769242385995574277299885485405988688460330231979580119360491494350384913454845458459611009319730496437103425264480939294514057045997227460037833602377670011877708171464317922296566330502825890833498759434927532094366033678429296824671824149901019363336385163994485823547754454422567485747132580102870913930920417377112280589469698252596405831049112968480794874121332829706178226914169389983628053189318201112087660695809293049891748982236001420982610651051268566917006538352099604650632452078228051522090898040578832379387406816171179166346548686169361221722865432 + + + 3185116174244600276154686982319438948098039423501401744649918384266883060203987618382899288350557734039093869890443768206888613260473623948476570159237131744667251237430573239318068662267244597953183180577282871545148538714825238258758243166342744339300345619233010368030943009399753874929600142064711875685824753944068726079096178391971000597334212373710265910744133578209573966260153853385251392551584069912694283945451629821533342485408183867297371683342133751676451608810439985551720729984294027413018876624657535310893913215688977108964692983607686561213023690299571544548998567954517386490156074132351210406572 + + + 4122104588100414517733260700905087902010611347325429157237004459606874420822190005557856277218312098166677204006076212641271057228309771834851203037223134828277996982297330232969730722183117739690520292196547751229064050465522420187478182974991822756210320663460842975273703672933276813661126163402628367825344026066992586764767652252160599971851926052611338862032467339124428008298416671404437982071627893945889458990490496857781302273008770472176187083529321644955975505728078430119229460185963054395542942827878586410389763492627078061959989320301439974666284410308819928146054674613074416767869376320862413412843 + + + 1361881504497332761709577384057575253576351613720657405183004691627209974767165252408297642551463403903301314115537765621480899042321520740623283435483784594878916344779487342858563342489959771708594859208544795193968443673372147562738820293005401978230380721846748568871527257000671483779980864878402038348342775702480534743795318877309706918377446915004507554021481868355351055611760377703752584466099817604800078164561091437314190739615692291531896644770694180316219522045319237443036607433746698095124533250757747921348886652655168277642153951854663630454494990842028407366921171093453715021599218298012433748993 + + + 7134583749067852097651041337969597697692946523853450114861285146299866894530961837958017056181241477621241951380728400524031085060717938645931502484136298864471998616541565761962612137414913580834688988011308682156721565341457689979378581178127238549061932049817460463719537781373244032807371829379978257821284550546831234644939379204704844903787753265966765980218153319013793050814176958411062201240052921263978502834196514242503991252050480666464022221278240381934579972829607890169179461804264861755314789987871424434424595759699031477962189831529555424519015443618773697742307277564562057624975186062646331852746 + + + 17627508362230223044461823138637085842453071982258216865719419437520422595836545559939888283754618484135965160134594544653060785178784236335316975995349449723589089017066712412648791912445521638209510848825170506655484795266488896425536470226928233736922824692507330124925268527179132983043634407292117351656050035164814332514260988301525758698547567541725988452482093130495563859695877741723639531717385592153261719672771311986147105667665343322400077601693749281147152393212261386874749556543971978946324247457237017914395308757123195554543238269674437873551512747272166520253247792513305068781395532203104904873766 + + + 5307610586760045577527062696589452474292316660024709715988604533252506617787721345271947220610237889974587961696609989008607659464468137109930364360430571415679205209022158879392655073552023627123282443762141946783266653646813558496541758086626374870117037448223941340514774186715326533441053124895832882983144634083832844617644195406729302921871787728921573677261055015241233341468765054995514822591242396868900845963530440110729817047813944845650837488690732176908377676079881824073298197346137336644435546923617322347456234805165519525548247032167871075137580543287499283549922080378207730183875164984733200479795 + + + 2794788621844469574598486682563676493072480156269123434515804385719407440969922223526113583053387246147180767477904479714843078433870134690893261322741312977476543655720117206329871105919665623912115147369863368565354843057623374973490704866634925850571682301556437107980984910798743647025070136591878270339351406638916456275462338758933292303095132659012209543953122608700481249607713297569800817203984379792159530738600170931506855131057107782950922219152505663595638261782676375160917007336219642525052065599990949857409321073788607692875303632947278210249407161900560469248908231849783968546046861450617021299772 + + + 16917142721044721436466638257162873675287989618652642312212582217076688333167668454976303237968767163898128082287427755822726597704426619061971494655476406225982844196477550564702476406171084997651685073101800477145751217218979251561195589181493369125854209387230367585840354149645543607518354716941083302789548003140823597775688377856034299217114709451235869229008167676324160571901709113056824702174813573110158889835641956045850069607871120363701541771793383356165842934704189435614715540823937109657258705932494102560800599243214101373673020772688720327875503110136050727647334001019197819254199492967755777852553 + + + 4030310660526286220630406192737105573865943433902110037462559045082717766049894583064494032939185030622845007748699607514836822422822089688960197476139650472208427736078543259004280917589191616887930219854359011699837222003525178532182300803206757179824259171170977442962306478077477230524444417484356540600129930024728106955258687976549707807739941298945106696515656153511833841801071610844817678239655533935355252604782649987089178184246153902700555153754933065731256666391805210682682699638117443400930788284802991250023569226591791789653266969538994385615923830885053010359268490415454270560619506871985236959420 + + + 13042939594139819125701681597665793177236284372394984734332473872727499388542337094657823763487080620904823930279655334865770624024113223792479142956883472236328736270402759690090656199866946595720837287984753016461797070143117888800058602920546629437321050743068664213285472674369814803498255466329338490149543787370574533757506139324869876665208274769501589140784877284441344852643264235468761262567453738913797762923511895829675185447143890328813089211959008099094497587854636383977198122722700441196607882108238444076965413181702326889577940198428725104660631581235174265658160945055570836988678990336508439256079 + + + 8450155773871460343971287985309809517033295300288901988517673020388685750694529702530491975999976547105087683555785415307174746111245278512074659540703044415850539698864584180471683274454689519055178519722202196011402235393095160738040190678364929045154521590039002890689908952827429944091637459925642778232736163049786086076089334713135701734185963004747606397231142413984086860474219152036855917042118291812982473954496557086634606793540715369700437450496101382711461484853612635787878767427856141477767174445606646512549664559613866553688648678593973198859625920481239430943967083539959237993144017083849808432066 + + + 17297630940099891370080374120518515528336731468864958764704530773608357608799263619071094307004552409097393526164947186056846818639367063191571625861296937939864904057468122237560281202211887078993597382251904790707289700393884108395888050807079488489914397325444134703568127860281791352596540518926772278541073087504641505142656725750175378743519487255752899143229326438071015662378333018214459643610266748616264674709463123808236606915047654335657362949921715992586100660836013851313512748976981502409300859017802979920285293335266083316364054419162121309225228562471108371520237467382044316470239884482473753386216 + + + 10257130606061063830594436784166871190779572456420465477736682205221703964219595414674707704562656913789148881641357697403286928339585643500559784599072801094582509832071053586590555121091844690642074644438800579275862697813847401264237245035503049967051643758444450039361111075892622979542131924447173147555820587859771358140857232685443369225972301756176633855521982395051791647983918360732094520393434353158996299123345650215007408029400609264573557458897387179577318347876286308634355051071487329360928978350442482626970407632907360808694448824585462004599069270500241005717850042624976064950440784324861106883389 + + + 11948210279715305852854472508813638213112184074726707597937500651493238957260897631486275518331043866764197291258945812386631594322837884678622302059692110636144212169191634714098013439646087963721454277157930028842188461829231810607238479460087264622757686530816744625087654550781443806676755055776182737191818223873919247116051333756476340970255743350225273195333385499656338933832881877400964784056409466986334836227236697523535742628029487091160277173301155246336230970952417503735407834531740133915069228878756074685749491384520725917638909786728734263007867478040887559661637568786640680403665794930689160241646 + + + 15210486142851581195286724863079013888778662451384197470244439002457035143872432984452984784359066430819977244725976809208091560387068825121154911303675022052171444889311805649990682023515627334338685383277578268118475073407624465601601727875198863017480016513848715456246179124875463357420621735737214662812895648939818953720109435401175781616911085380770677414891638324233777775666876191146552607601111029760527476639632871770433966564053400043832464692410060774815433025879473742792666767910843522587980635856248572549640686660855978309225120262918288755394648162432848287074190381453007157262977881138838707768481 + + + 7036655482999331695218329157232333224931699554392829907458386494489614002647112660667094013717848753639827432550214071370543955182144689010255598921732406198548770485239410991976765345001765421495565169467014853333306072976827763676241724827771638510093298640900859926852005583316801093361127277391967383074668907897333342956424472467121160330039576107023437827354613014885914001027100694769937898686518071153245427225595447859492328359313310600040826964611400630409577861408517780930890122013702660237311250453045158721822601651395974992045291458091550944340379883322765888647504102286407123349284437088349316794018 + + + 4993110767776630615274649350025170607351045257280300466192288524277788770083113246411842451961028383727659533875589258555596239864735080694917313149226901952926200244169664532778983082070524442234465279311479565335600524230575300081197578132352006437404680082032493714319609915577725670797647608780755045253819110897491496214629168843437868028739195107958605898622609789247563646793159502415867911439596299376674727445679402099498640039340507446331935676796884001073880718564828988207875165406296305536574325900497714668208976657473155338934387992657791383497657780652786637677763329900961047311531734996755912820369 + + + 2792695300184349422349234295869287622870112718630291946314624146940829984410396124452167280563186279306720060054916502396739885464374210807977704693221636800632447079888305920653591805923935390727998555030041821648089034710218063460109146884963934552530779268434879796548904294748943869440014238514409088063837565557557390287528242574548384121281275966663979732539501627790661867545939156806614116832330329133905091160742741272443740347319056563186170939500598504706656967305304230970910057913221776989148254503227503676620888637922994581322825719880302414285254291738060975152901671146139063626694543647520441254915 + + + 7274994791752185903108496994722746936108008499094671292492084609439106867452923935469009042551640054597150225462706742209662643200779457815760636356393203136877000943857646688027895544369686383650078171819780607362853243150702643527808218127897992344091748728839344770453221022557606056568394640603448291902371476692220498641099810622748853778835703035118884777594994147073164723401232167767971189566128317692740807819777973916307913225661343175984409030980880254496835735700027481591111745941247626600017505753354118498974052870610241372211715887194029203649464620494969766327245325722486063742069733315891316887596 + + + 14565394960593528980448820596093744673905967362189143696538775480770316565820818217348176186318368757996915147475137749192602423744358510627484424213512743341694370757914682548212739997257300038369315716653242265143518457483832844567686722548527435802445973802287031282302435262965378214516072956095989978161953011776369230915836066276761314496784434741773552597144901087973056634648008243874646138376400105289243528587591955780484731347294732591527052314270764201473859582928784950739418590558728435524149358723356933560891840934055180191586883782643847170602804224369997701184387586151194855842549440048845166307535 + + + 14353617907541809480964591625758769679942505123098262119042938523751095590212346554936494379444912649395704651562281226055788092187296242741965962742572255571278763174260893226943985162237176408549140390465091700745657639917978465461142572986031560204328492546504082577571448679554073974139587940465271232913318248514599337252303849824233332146715923446539119350370491256595601931026746130716085831962470687851479356157668803224183427142488083341154749657749710995752515381939788225124505936796434465041298666326539231220892824101827466309533205774908004208263840238176258574451854229456991600029869499556662861978055 + + + 17414695679371101558663026496608077614602066884858207332694873628644191026160692769888716268117312669610880189412172966487921026670658281548446065887281227727665484368166567733039816565031848222585711350753042918859352789170410395362460355994958381878927188901372714792620608470488808213953090805255331352683205941728387123561367562502113646110329058539104627597159065053248922777928459632958728157945636238827963089538676774682998631882030988092991010358033045923486964620238339701101783212660664746335146305011570793143343430435524515540319273306113748843146940665114536659057367733681382618057826051002742502519917 + + + 10099058235726375546927957461145263625376310899223977352215419634601816499399580435959173076328277547357159845839007833860025734105938454822679409661683519590922512028681139674745626534784806595539838959793065880572964719953905332714206395069760110283475878416792967197780721093942653331593155663742032774283027970754981962611886348201030528915831648762121993037735391202937110561246961847890417507756005567240402253496199302756919731387681401172579149862257860924446361627352123189100145241003096189493654629533655886063498146738961312550266314262902681008085072489142616153232245899648241850449237948082397289851727 + + + 15449664293858584672026443953151297513402281340670899981235230063115818574276573352522712697339444792278367467772519255658736433339651110280093493188507663685909198013246433254688778031533972373412710413364621098184084527455257047381010182184835094363267318899791839568936480540280024057730455983769699622154334446907580249235433387080227640425863560419737041041512209700582296576399358667746015471774565075912006405540098079469696038897086683825653326381547984294031424649240605994975319011544613483597762551776951161922310415461008386271304051150413891025316000933983989696759578173652343655647198679495203096321999 + + + 6689157560906395921932825041046765778239991181118004513021285555974214449400870705863209617141534535989014753010736120730617590067810723879978390246995348847679503377699160854851436736149724553762324532015387472775501744209141251845754478244817857480322833533172264780331707717980009854960305142082059992341014092710044336175739389519770694905436828614559890475294977007720611228251184121945369427378203062009313483980164727512644982709186387325184369422721329203177544175444894459678952300533702184498514427417038944845153769363510245291527316154798151375102157292184377465338717037903527820628457925293885172294606 + + + 14204206399833293647610700948664383067892449960583419680779838801254292268104631710759622784320677050947258492663955375985308371598013917904893426255605884080437986418586097755173826712547851930026530315129107586729413003723238127516479621917734862448299391454627710915020409503842536814438865043942519441021240706763991273455617727153532713910111267224129807841923398152933510845923437294934834294394077122200854233657511412774738029626892412691765024455838190935370439026839706422591358984475437739502662783853754992300416762071719005848617839218652591061036278236978549370696981221613336697441095505064311372721024 + + + 6518072833428973213715495574921155717357159211087006378135062780327246440101973838514582650663084249641742285911393371008898422857291389647295067828765427204959557433452399765402929265438130160928089915124493668529338646081251499758592144131058462159967842960278762252820820357186786239404634116685793850546688658207620430422495617894154835181574379871570910972655788082468554972965903042850555051270019760795238498257716856383269570856978443575888047585493344068485749231715996303650613124194969348235296833667733041761983161253839251007473632412725482279090925834469204657503104196055360816678002634555695139334177 + + + 11677836055802280808526145943787593442287662793605298359372441344512235407121208279036872441486897787942731734321188427986740003996809723711251643022307619750057506746234426801520494914577735945769710918730713912046800613589149627775559854546697286332253968313370761826856824697074245503799019664332599688444935597285123657126630544431897667427189748844036585800055835795161729396802223902313180571153226890661644469751719070395246447738970856852898063756014029635787021355975350543415589289541468101462899426456343814378698067732451819666349999016517934040779434875297875202864432794918639923801553213213643001931826 + + + 6237059979478700640486500585532591028543052083465059937994352034240957919669041118651422546696070978979520393185566680615955687532837625287907807172364016576489047557613007395178251284285059591803962962781229433203023464415252570048195112417168781118811400059774176200216805410067972976154831441240536571761009952621376507163033916077127405640417014807290888234528494012378835336955357988869971927462089960690943916076480832335806189451985954101016134174655666280201068778468671204241148767959991145625643898021157892899571029067290779948635770186452920454491879932333808305077764942728622402890344902016579827206490 + + + 14042655321516894933616929679390724440338012150522531166454021007988210354291120581195531740307608760609575731899854664453743292836131895657911751029151405882385099316658225594769852942186064919948529333641204372144538120042159144790387012222944536029622667143014730959756005468014944968520149435221908022257500118665813745097689185653531026874863820695715253617604989743487366607634514544678235804777913167195255816655175946264525012199750309488386859777504529169383550990912542587442617435716622153149490062745870201507132636124571000231253704380865505463744416182739562090332308212458473092538231436353184565916504 + + + 17006721936761635237752963942837620751032011801214011439355384236502768390886259850649728685290647574862160836419108190984489816873176523602939498980480918845002948173044810491124222495650591338100926758040381803313304323316637602630457241437760679593427593134407916123401260683085158565558648276112101202153511470507241386216200259133364606929820549495336495522457148908571196536387674096102041518552855699046966177896541407112101210185845349774601316973378289592502528135463624972863980456421292006069927741144321142164780223915349241453962990220293928643555238473432492741575054423048729816404967487066976694019863 + + + 8889150291606051560673266346716269558486640772619178943748192984468278175857660684015286153803874075351221247595238259911611510436833539662689952151571353239967597441345845175989237562565739730409955020039790474539411520918879980350632503072510258579907343341522270665220105556485854804580518223325905950958237218576732240186421487874908086255875137591081130025798436673096518268481866800502190890056013981573731857736817918390713746861441333115640012413659143299062915463897545230658850958918665903016321148109226906221762472645665477427490967078489175291138960015538633018415403324310431033780735852812982605198769 + + + 1869837794411886340593948750805010008410840257904038123811533214117872602126268580901378977742111551093415090367673002761882642618898742459593386539715040444129619871685129440271549678617314875232713039967304031358036270904763126105454582722081773766233816280647641392733147051272814612148168989446119826930886532154397746550666092094241630071450165360842280886427479763632512136859533744812008855166552339985002596168113421901861586349037560779687744530222810435716728386590110332485131470333468260458870443804755075896109660096079860201092397671530121258298841756133308156516390399007063112807241283691121719521576 + + + 17473774659089008659940645112486695841986131926418176489596508436712616119692858360871874823328546339728187725330056592099861566650178034881973539837486100232472686889469109452925666740079367744737574735325584520644010105702619461138662918630430378288476235658605715926198724021684514427768814664413603228715612179331621351947474280669643790764918693905318079103138139937151795050220365640559957027215519021776048974393976980781053725037477896592458975406077678050496449610267036321506973170686719767635871054872120167893227001444683559734798638449586334012489897700826862890243689905934429939819147845769653248441028 + + + 16006094038975845555621822707806487524999093523862823722366423783986794081890777969231705656822693657013742491112281609412351685677092544095539366518145744545820379762210009741767949725235498883213357488385148023121689416923548621372350145361348783062902782768063588595283620376718348352784090312936028945995384339692124111211344827275498732858384324323561364193483014856264063195633984281796557862956186809185378468596853890013049747213454127778373427620673762372842837554545938060811925074462604478857833752534675986041098365731251486714890065496307662660391670220665327968638906325776746883120300504449372870773263 + + + 14317044466455523632653317230694551992831608274588900544737620196029643965884685711713264319275573170783434919581448762450202889509734915138984059618950729808511186136777538095131321374503902006693030270601506289884966727215813681621734995804171978113705811023324205499195943773464236916088922374626795664120631559323828257469190260525443267734497836103851743379698897643843994821529338197993301267974467989650382235359266685793683875554014634928327346794155783491811741421426359495161806403770143950816082230043543240163252633700700997938892200916594748299720850121868632833663079941449834070950023143365116590969989 + + + 5717950915642297068311594606986821872495509392915061594353951142036900984228136979297597290245820074938893740378328967781666220331509069441063505614665361566775454569811840836809932192208378162896566151711015438065524198295274712840577320138588045756371032711378074835722553354044580969295173317558550581667465339307615780585596544198676785166820330264222483233074725738350402723711842579652220198409595606130267072496868286171706896865378277811579055303473165953739969664790889692232023300844871116484866591832234231245689652379967165873475791547305088262545221422439426657001557481353310711305632153799964212956089 + + + 8480019153109036591886027543410711323147772652842318384180867480923468465310760496985355301831104159844170225620646045741709173001612270011410418357358568423332095364970034879103528594565425071713963898622703589799736235131810557099307052656830420394429285942091321924356882320346510229800728486778165035274200154811775289586307868475832379585053658306728824023421692388683284706339978701804247550654252689712538662174539509957468046307915171403635277346937944722726687970365934677916161155398613370893826542957794772625269468926206570386132405194532709766795320029702605124176656092964550889723375904384147437595241 + + + 4626561817349931628963282113532953512224861047883329502534255428084143925394814076730936797314672833230957908662205480226422726099191873613136639905334282894105850015371714609071247501329671489012621732538566940368223899694580321756342372622667593871606225388134398918151817062495931211794855916586730189639974035204309333079889036815514434005397414689515700159150850737605883954019216030477555600775975585262006945999838681776961558862312316749418817779948849712669007207373096341359135956769764965959286781491964273514952561954150842135256996196486993423548946331993831148680561216062839824184031650439098875263762 + + + 8611762400722486054023055552988439380746009288765979818485501177983672929086850187498330892520337417041903368293341905482170535520831560705792472822360272623600513666728497247861490339792127723928205635022427493276752797021968453827833357823537359644503854587285860297288833131955428260609075872563082831983070294514090272856914305853153111006847939780955382700911541914099763795163033584284613569790768040770530424488472154579337937956597235472559962047327399269847537399718829821164307362637969068684172399342854689102183161294857492878575865611591598351188883565313577350815478249121516439747694170829821326054089 + + + 17318954357103373318754533857712169478424125831683810018363858207304381055055362202473638593513316709559459940149931249104476297300598920575251903733408776294628830750980252586476181871923541569547589462236339158877537398730599123067661423261270003014004997493192744715105942940522399688216589567829013578127260493838143950792194361423559852480030275763299038561984200402079797550570368863324119544637722011929451970358571188097716004290033457145371046389622360125348188915475752384845009223307411686278826692188278050663232907533323833348610033848745182986472072142221741951274983453222904462190257157566233925268990 + + + 14429555121617634374704604085959260319531220698919468189862600509549366516897292316483479940662413067437362906893286570779524149144240014543683285538312845156646495039245337862945440830922476967708796086483979188754223133297535114090371662497774363726122522169146479016568675146009337765824721443875788363832785711027145524878540219015107817198942528949324739882077969919652066009555170335635131157314268649686069918707056470754479098171803935747089122741774960469399112256281930761296264571668458061388823934174859012898509048534754065271745488486713940615093944951976290085875862214791767770576480285644214303634452 + + + 16220768965389388381734863289247655323095858587814254085587677535534023163071173693224406956601042687124514736432469931976345654183926129560922951893692412565721372903698456978166723144308027924109427313900984070078010386883946734134065014403909394659256011010052466127513031828213005132905760003396773834027613055602655243266664863376438511721705389358832944118773146589181585461606644815738481427550661446027483515132616495906518776412673525845726183946047162695476969337490537385330382265584028672557417453557055715699924084825774502363728873055867313007642296245526803735018477053328354437872370534681319051591375 + + + 15172683729088091342578228842988266132005877648725298231627052244376471056411225092195979732002728464715241742129691402296811454970807459693831721461652570036436945320961757039046900266271523568777957257458819302853108533668235356906133427292538538486385567631682582605342511966951139266003296488012681492298723766332713323450669396941961384127547824743232668936789053954546977424956971064558667684255746655349117163452505537588196448383217700558583777786332209230622885369842891833515401125954475786834679444600054283937216100016947615698556970572331446399283601997175314334393287769754911634500303096791071093958512 + + + 1548814090248601332169254078078778652593570381999683651791087261017248827512811259649552483917733811766124088933250394531030936236144164474224121491326302562703662552942919530574282494155430762720583955926793375112998253570366293715294891242730544716478656663143267781310642469887542780290761232374013473058702525175723848893160437146330902013619206198201948433546277149492552288691499392788430532207525004196944084360327067852325528637700058652442266459237651550124809518439203894239789525338379428582561903753617361321497264377991539507954157452394509068129152134921358542872896757220946545606000097723918139900711 + + + 3310810105316065855683059381430563163820410720689060294979132705014740582660191955662288302711865482277509351277554239519871805317321983084862564527223762689352196627808645874514248425450843299239334259923409612987761252249931759081049267381613503752631592230858414832338369429433370617066690353489566593280115218697718522348407684768246429262983217836843563632297589402965694011039315044039717169283609403790506827274488142944288862959093638891176217585785484183898311277017588952412261829781515465445967999535473322403550167836235761446844403006716609960687580449836097073374753907499177505213800191354882341932561 + + + 17173857358079904696576712020447875000476588823362275145112456246318069998598909223611162301303083641352208936811957828534884482820978288699814524900829087504487908569837617346801070435717488075309502332184518619972807731860940391633032123027587560495268830674963129455313663333932035028953773526733921475459603371118552708112586838524308305848062736743480604930141336610413333232621413928880688001123405199856582312050684044894666086997745700853336696663821797683000593363987595203617607461505889530026441595533727850862313342213663143061660203444401277729158428361919334214584183973367068841074311373326059333285130 + + + 16072841955883061623123569297716085089742241283436136328683188182693070094858568887244543973603839280632126230758726739802896076336415194528304202224890703236722418453094257963178500042398736224180634237735903612523927216904792384264826560293951582988177916675809500841285229463663498715515034267682081843098721892911702842715183726076759304925676879085727828025117103867410772171380484620001145136633424639401190140271439342982183461974267410332670028037441088691549864905071130821857146434398768659889549911823559850322014684560541496631493068935718837819150738553236991481308576934380902103049349980673753880604253 + + + 17516837574522753327024838443919301510751840439261532485136038975733978711116997597839268773694165343743587862727911681909287523928058706133320819151095177836255059258219934448822199667972776679584342781980274114005216803243103479614952351843020321247315553219788380097486822819340602640275078282232036398077659584324487603262806981355527381494057055018547617465312216627271237058318864695421183183473702833667677366921904149304563867751263896648354738041311464663698695251498624620119333601876298129446008166053561215552244445484725780039916910930750047393446980789484408804686104941733898672793792493369466197515211 + + + 5790764524410102229573473144884312029348885937737964780869428193339656499614405020104683058251984886042916841902351984786229519604972360386917647774004166893595096332776027822158423718746572901160314979637012958658768400528758720095032398104516148327296445900969497075329705934234937598340300694879103122676955356517556542753978945409611350869701669895113800603445664093320219026094187957981835782426786371909966302671551448402283163895380398002472660026549626184623496918311522612154172599311917892369296076928169755493331936510189458499979015200193741764583219714494895990454850194107504776686552866712114802211025 + + + 9352618075619463247322693648291436437717840829179559780624982907314601758772691295139965645264166754574461159367270212658337373037073633500758907149998440676743386035046461628636866025472080379571415145982698560807483952762581001264279856685099135237105082980666534418332758000567965659301312372628287274916482363193303445097537212589934638713321002538652811846890621710971344541154225741273309386063133424898811708530128578567225973909359047599822815670082674400984951418876485407325950030822527743990054497178507072429453179669825110229029957954388452258825642686728283784042577745628324712094341858046480101158436 + + + 7710202960712055021162351452179046833742207830207364901729518479566698957223655646240326195146697841617594982204824634748554919457712353807242582087260001419216051782611542258610780829598881791214388562937440359026208936224092429325919878418056766544829338027881643233901190001141822656276380919679452299304761672964227231070694008346969352185000460690603384860000477795677267744719679942995770530945612597400746626910750090253013352451987864279501645987051963390261707894276800746614071707708607190593955345464532475228610098601329871516358124588325250665771210268175873015095035032401699075063393862594615451540723 + + + 13898578067144282381745055800645672916893279673302136968611379008502441834151355417076693355119381142895805191792417341239334072948739430863051575831170322979166235177455995591758296495549984120115805255527880953863638699015946382642299523515036774265733291383752170423806044888178344780165543012585571538766825473841218662104035165872817506484051975087658094276123374355940745425976060689581114121887452201754308142005124619505859667185817623047900351241988725710053477872883638906832738132901299147961327017044728196543111439542820927121046285552183151497142948615199594502664087935696136140386766604047907521564513 + + + 17008871634909265380858787167032984254201071953806511259610818238252360743677022103609942973799078819937809839065066687523738547506987264391707065549791079660580742545796503014160357661372083775551816281954209643543543487585655791499685097337912439269239940009535918289211477110041112512375449894395250227663227021545715877905300837433222320598351270403582937023305132247149990047886811520521540920980230651176678390895296958342920099261010494570235870827020604644538465908455632134151658601012652790496579709605575413689336754495352550386883762746869917563648562340941790327238599860392532164834854204100568511005193 + + + 6480286242135532133935805720143931902297814335409177875972863735144297629902396563276245645909594966364698255925637821844629248123723574101048678751447122055525206419131930803696782213684268659003362435353640524435780689388638293534318138695075290286513092834654867607149459138339850510395088345486842137515839683784691364981751305787153222351752411277763078986548007966769731763992462033860933039241374628610299399673335858202211741893586719699365354651947713043512160469167867324074184226811955789185810835569593825154788078777139361839817151357564319354795773312920264083679307133292295001232877868771917170450120 + + + 17318736975710726521329153218654800034079383682228707475809485073413283854044404144602152028037806719555126102043442558714462540025113076736469673187131015409162224773577626758793746867570546162896797661877483088409973487499393479047273550638178015088286528640753684666787641478080209231616789961452149209768114880011758658426907588959134162111543997329445772620053797389788822344734665040926010948880113597278070493902408599984734382209295532718859049752307562445140854836781138159125032625745911237202983497878742995465400571978892570703635167996182882353346120969113793297965091005260892405130326804164408975956276 + + + 10556215867204476094150793352775360976358552759056536512857724688494409671269257985683484282839526128707073040620109967420310497546470712106056300289969412028420515358740962628922407582790773630821046987216171865957762520807633186483648939923125353225357320785458676627628967794684851032107697558690341245199555849393053043758745122673617186510713370659008362541652783265293224526962019498066901918600719003780348607452406086887891499056456421042621289132488758201171233373820362065082161764974963376688442114085973370992777806076139118000821310135960973442105499430937237363178277966660608083957556658193041925646743 + + + 9684621694900289242681583995374898863408932934604656625033374961114519337811183598601040860459976796851890040772453018598591689699944183157082189100256584530463339221818912026381386392943114185136640826848843247537497258010386922573478701406458893577717710470071445386309112187770918376099516512634396147308077406488518205169691795644355332393855569042103305511561216040724396407268699882310720712251461692855868301939573009965479664326012635659618289030336901129142184208854737574246100524347153790307319571508691133041090594095288389611470824050493180180146314821543920155276716357417318002362208233470300351227692 + + + 15340171480796339524882673168089000474866951078584620677804732425599729259007163062335148211977607929781360137797619263163246725006287407278644042980241500087819906206325878379456300076655069086034816531986467566038648443462277713629389749777782751420707892673459089202706262290622819881127368783697191849820993153985200621543210485977684496302332741358188576939450507432170007343470040017609029030770044903319440489468068168502248768331644497642075972757063447525590615979497723105271469514413507826902660667744144245934302638018513281917592581855660379849690032318307791639230200591584552106879642118504452592377318 + + + 8948927662790221933528769134190004022831719687782102118377915477730936175232778341435169175868070973978739348351884883567379466233841419144199342119601303849161121200649810398178164453560325533058369050139383472582412266556382336071929645436386501832610889737567940775501393240969083261228789367018394694861204621972798495097368813217197594125407206373874508157633458668846630995144139195588887788718702374847707793248406960036961452598046722515997376821632746286557627500219385969453048195235210135275116536274361527971027377838396493527243815961344626509760495443882915308748114741293899203400884459300973067556876 + + + 14877841591715192218686376090854901421421331376268595302385372770135666461350515070322777256423457335867033346843115832795946985776192793604307368614303270879665877428760402658116869706557527859301248939162608499462680751633547095774993815354061607989341213285126511249306216989828111419450078748731979093064999135573972203040080078392032325325727693944631783986487322755981093515673451766181365439465440133195358974742640744413252315943335635877491234282191531668206454597476913220103056842355102357754447971616078726850318483602791098364360862686872778332290004532046808464755452679060865974793219082307540097653899 + + + 765847270988642952101378920068205230157496263608604666166506358082714060072729284537990417057432951862658302499189347362093501562040238145087614901720449942190520924556509419338783844799636696544650245866454450287547657298766880480461788540167191263660749784940580878761466590160778859098477044734341344791477571811584755538985328312349692966714833379386128643546495962811004981948728424875049686861409186311459339245186643249356864320079302386217913297377570970572755535252969650005976247749902654080570794156236683230123975759921174896860857011173548170722005939456706001399699666422983533136441285069363279049106 + + + 7227367460783032015984963883853348135590622092246247571818373899036498218751024619316125470570064409170612156706774698214106916808078275774147776603431717787999189131828501755531204926238583483004829484541508083982199027795712564782756680598272539785979519862318600392254120847182891999541122594428076807081280896998474504316335402527539777255754551152513366020642973142736127434243798054987831000157619742768070866759509606281180073151136216048182377020752462562497919723020732396402805628519415212272918734796728613894943754450732351020931810304701851489821248731570248551832064381721464123928402623415462302497160 + + + 1634897739633470648210946659976899197796514438917616740863491803938230401715381075928774734522427242695526883471787651006768410355387498048109146643909967327177792784530029880565756134576309722813818832890920663129622747482482848446025699338643078120001803343114834598559696471602005844423013777682265431090243616821863668154759073265412503331458640537718011720271214263009436624415113397768399260323809663407199192741659825030284575976371559755566039568344930773999225958532814248998803094925981412019442877841482214802236487473920873960212818123393032201118374781015976108062643235440212925470659274741319580577980 + + + 14391503698220509859226100040169051423823995622207301084807643936727832316468762309730712832375627363965330735376763840695113889530937814784457664825561273116264692976204622738613316037598265742957502994935838872318961286583922859887684268468335786774167659132386062601463683481263514063571292528891678714986569693569535180142151669243849093389162273102094125288057003842064042733390678762969520989944871427548648332059106378629478632023453149862856612029684156533987301352122356843126456461681025953917776498901697963539908589216343467464841033255061612683702635214340913772512085072189494851399871510613600645973338 + + + 14916655651128499056614352911390333112051802476167150343987565721043977517291091529935595729060141285512141999709286733285641260420440339965636525787934649446088477978249371434572185574021256780748631235589054205414469547574103169576375677645885469599704026101747444041402177645013588866475568980880841327066568404247611405560241251686701424341398944456792612387475387043835586481199476225276359584258806737889279915567213602325478364261346311957342916347294578383434022754536388884124487909609821580805022195123476382848871242398501172475328090120771346809709034437703932221396317863632953513521938135257512213362569 + + + 10954653541164200842053445767719861151498911490469746544421283757142049312421085846316927943806162834119849560960829117757815938670707553397888406455659195865759510454628010785714624179540137453344899346683232198194798497576055096457484487559510640131913714146299263840068959981631545981418495567250635938620925224082812761670151636199951415983533206126234644025789320421596726754813775637315162926929125040202364584946721231654338538184207495498419752013923297803350421447653633472631673339086420486479944305427801556295931431364754737245212929312573199379578813937648946647672304396055925500350630021992897019734281 + + + 11034429861334776641054359817889860876856763901819505713708337547672952498481090765691225806318910715502686458000259266616128374065644982348867386008750994815750256664736794023616062438587927745274831099323152798435944495935743092315197461168730794038097442879100779412875857550163670518999141315470689856121316583981724420788392125816622529924119058361671769488064181436476702097487573948044691127720910493596819200922993508134210849925196145617486068327362103808098168199634138845675089077091975243200674323441108256200731936410527611444822167350660004825231307635731827576495599367171662536929069268516008383650063 + + + 707468874034364615153990671005221775200982607433985151764712800358783397585980107977196181057996171833379158481945172602984208175879140707571677053574643455580482466027713011974351577564689877857867862447565422571741738557333198568566875621980362652424141869219443224204666597101262007629477032340385677035860143779372634230741688192477133999561938317665818814802379986616987986677753216701548219632585946619028034917435832833407175234299172922242012736557715663288582515269691489675969215979116651418834214838999216912147603498052570048271962759720520721880535054207502873581669456479121973250477376590857614347524 + + + 10132863163968045531140943853205808407920425646262880418768359678818712213644885379098896576183607683494068153922606951563023112865350830254084639177596438780519835430936700128266369501681296697607514787631165421403559747949273306561372201015172215986180637723723738737428720717226520395523533416942119206372155008663437689880986371875354069914481151627640693338067095363755186433770919255316790471928825090021689118230586704783146122350955969700011559537858364390946758758573977302905900978923397908251951697783053889973734815784959070572632342174633360138339015225263356460082510504236414829333833533203740478572845 + + + 13153941314282863869711349810954373186746104681016219661287808021578015850094010873865456878644450798791870503655621190780605508794640927503946313538429814981476738999962584950923876685387532793688626289257873306638338599738806634824162216720762299172475796846502458841570955197205209460736712007578205268846496527734837347315600679163038731156026623731191803470821394882340817241683257445642425780926312438252756369931018737737979356943871179688129791195558166550180045718474510792131648540065104817997118719841526339434325125699512118613337291179800567982791706428250632167108407791988937473334285813624283247388280 + + + 6935083745182968204134128921574482662908653548808001487170287912244868735262031344684497215965500892336174791699821126648914251191744690170357591965576789003958535010943910914889778491614415061362271093380122671827708651641016273945852471562642321702993868038360203773925500483231389747213929686300880115387216604716641575858466092930093382334421124235247777865212787377483842414703249735456968559441583444620502688484383305518784168495260672943163556101957951966463017289344178087080976205797343564458780664153356887774162684496559581141266660622567466817605406632361790987203508407054737177070614427723311008213831 + + + 13570743355039001654302115825309273027933318957836341423552239157557672036969447207473902114972291479201040784282313848791125579475492765852831457878568399182138645159914609168957039153772340469348234448117466780276786927101964003532930065555259783574490680790486271113119464704250615092035145749726414389658619451166229614915536847271314244610827154364067077673222945664888585666981566241371406452849520621933328232444089103118120796884718438903725908623601742728591437715332663739835141320123669885362439649196620158532470902838824434370935089810311625092096421896935880201747294876865764559680907566185760277268085 + + + 16615308590004483081875234542988647041549518175444980419718235263409070057754088407752178881524358386835017977268259233065312177601525866837785753603497694160722518564514353874143207997754568191652896831756386208476227596501443427403167991613611066631248338961239314465404877519427294611541693337695116002907488880910619848332714740428844825760126848476904642718717570030830392748618323797649198835034597148974280974983849077428749821494170901969096592451813867795503697787217034786975284440171128830352305283026027090089950407649183465624761901472422707273599952542195595341882261417689310557932089927916986909458286 + + + 6127477182641029217010255201838772293672261191261276428097556697791086663537341779696378377813587392943818413865247859127162336687420832840861736573081221707526116812091491389976353961442504730306978781837051818821110283892646128015054186058371124656828720718336782537591870960548090630140709306296813787109042390690270280116538852458192239261335884018515082471780641982883168088729603772259461556485939592753974760243240241283866345605625998001861823496609519828192023034011943152943117883515549166887731846492138409079217644454353504234082820073694576187613484467571139416878996088449961220801189083529411230494138 + + + 13975295974408792870365045197501037694265866608890598365079216935627826349668151674950406045966754978682898611178788427084930098423525064802652279752148095746789844247516484038937365770909387962695017210252933565422174143388937238316239317410970385710448604474560748024639987494833122346450271472651810843978463678685492772314627301622122441661234245733785482021176149934464224345580575949488593556113372747060978905141717788337572582945849469672889063981666806593406497202527159968643296676616043795665817124352028133747652201216805485403165190879324445579144527579824070410301683195197593207458183094611294919898911 + + + 14938825357380467249505521550794434693640500116093977153841695923654441042627933484741144183062809113429744693842935794617628389262285036376047863581304137693636873761952629139893536554809005564575414598992232786113661753602451955414427917965076925712249218964019537461910603490932186813223627952825459152845963563892864360627392302389337794951972857515680920141605121227541544541457384842726574620528166852437488406120849365943355452703454763146240520816789823909769957024631485214789705825292686639321597149311446342507964189054251670415738503101097910746513444068136539563442296257664274497844610419124293682931179 + + + 7019166011281469965321000485407148625121049187524164885672756521606093515875048125636674966669889111519534287403953241812812075598892802774636837111353470648843004444037016317369681420639323908773651547154781424522093364865030184843616502170342861823397093646932230776462913621655626831067072117786188511870720482780544081381261501360661685840488995025069073652058726888612810530267998883683418390233212988372342060398657740579905092617296318604113024695015860223489983534319992810650951946495601881887629502669729260933849257279166565685996895969512964596176103870942850586111507771853324795944302655936594392523565 + + + 6269380940231167765458627276169738795297366479916467146284309151646187702460983829909371422950158624982763261089816438062644910652160691143645516589973183354024447666184826998994843346753232259770501963386561847180973187314880958500415801330846286506281417837758379715539104474819578076484431512046503639884166055432794736301657909742190486398807245704158821888805359389210678983901232037929724176148476852793004078107713260768979251590861481379438467204112643772344415642857749517880962691835858173504908299684755900052212797353591836258157426257398764443665017279802645893209964639866592942394375789837227914598105 + + + 5273516948069124037975271822602635609492695724685073810341972606686519925944994468958039428920140812359804826464077428515338556316244159891799979575901974663730964647074553336351335783717656285496763906079158372865905261593989493480944269778393128520101916763673074677407547131362797063998664744989009954224506434071315863585780196488555487301224746607259257354505031924933899734854666838528219160473577411549259854042814423567313595860429329034989592965857501946427758814870754191283254429603982428262948796546635132104932635754301110204727649841202827096699324024502969797486217312704934114909960539775875288382032 + + + 7144209997920178348583990472114915735606578726529271059372012761896282483633129472805163984015891881941801320491666646028257652246304963512982027028453360096427010143842407719026187976387846604501072598010722772646831014849145888042880615758273410770619621202041539184255240171659198991482931184045742418519557104649286333344333201424776265009999408165629880561243785315510786132770880896572851058891373132173927520493171514655221965721349536579582882540583400701412498185894290373129035086677822860316078082743953348540137315710898415774069287807921890296205111651307213416831372487453532395633756931164996379531412 + + + 12383647277951233670688777700014395657963802306114427386396322266359435579807197069596857335837598037611800049367942756385487704795992283942568976340713791336405081447659319696015508701594890503301004163679155206891349924735653520270999982063873053098943347131101536623565116353518179815043624061875635815053432325110733123004481390983459394303432231943839527287020832656247670926267138138278778575294753645873471472624975752208560047225466587380228064678386411793166081515524864586249758211530881735785133156914867012014511513620009869502687494232227748024811551407328276865374667658081489191912858657861203976367720 + + + 7386375465351523625405440566657456491700101318711440038081362806572716460440333862826161673612755505267695539427260256929898762702551434142199495575049039420507478055864860629864044180736158074710041288213362981933604291516893351949318483403631371097218833714448362112152126242596606037887628956091629795331922559916485303250137501188593652407216540818480582124174851354348043938884360761576810324409499826232743475674375730145369368627809734354752211715692200142639495938546151258798640469092502186978093992687725974449510260847387039029998816003773073144483141428470961665208202719046180502593115011891461430642929 + + + 14470971623353352639695534428824684915826477748037230216111689427757742851127792503696646570432157189186829510604004823175034951551805412397310628318960989763182470087648711094599714954005570897440954392169647315323058921347930703606943688637236866723608742598251190536105000346755496071443541982522334342895298171254127217011865177697174990856721922664992093883982584278136230673407419774940718302687532089852782805800757661859349233811402532555608410668877495378363396070857594830637154324583012336870247522182211880984476661214759988257421640301645667996710321567824532617367434182500387400807454422503569219030655 + + + 14586702312050760513757605852077118357261050849004866024272973297722577533401166495964920732320570264006867808472835469297815475724269031052864161218153103415946991561882370681697973094291586165666359687021933123465990793620723403901374773888269103735306482974289956996644522084579159915871173984367230634644576435409169241084858213987524623373508706557141438414426970537443511358654860316694389404484845932786518790629663514154542839030117318723227424406926407054270309870457796421693248600890655641222106714052633449065952988195974764871186029928253664234860355105802092120600979067305363169927753217836291402500919 + + + 4483015465770091611591220407239192771103556008209188458394083352129449124171618891625624933400474449379087923340963962569764946165202305163693774765474995255330297588687697058783810199758289772058561398189612649871343495168547316598467192888598582958246416814631738405348601156538481398296215051761648594141287104456306736298650447312923527467905054029184735084041404850510472132307356934969473564601725036819061841208471049248536551295232571838989689901641727233282645340378803903865265010737150405847488702080452802868629743143841077621839071000105702136375222201499259557438049533101793953480080839098105774987927 + + + 17441790304629050914533974780054519150070481382459043595636914566464188811452481017717653582329771254231840573852643683958551171028098742026742509612846514020214765921511110233002346060968556515695178387708866663446846839528402861962841482922001334354014303433213421988894108058165396756721235507483260096695919317727535544254031924738873900666374178865729554821953997688028200537952699926524836485863006362696502479060681095965642895276810941337468439599109631477494537694700033382389714426160993456240095026866324012359949841856961872740231557631955718352430983450274194461930669639152899548477871232355684708090062 + + + 11257818707562426755682740892404844149943196190741592457788029293838058854637461202585574543308489840692475300027128166103292402271618253057108841240830570906696990142561772501172212601772114068801971682619342566463642262947836371408598730296624935856350436140401887347226398410882723396138386829982624455582307793187414749869407160072368445759601746032568688877382911463560322620656826824264233070734529314206607098296271214133731092157328057175219499483723091097142305714697524298816829505809787844752873856068177654364391259025954292913479794023827462538027811155935130887316173971085171496589785172263232254621173 + + + 5202661217520290817827719459961947017604527271539642494565207374874489009444597232784484459239959504275000265547528128662647929333146220158446637020122936644435765333438318230419943793447866524944044015140194130850575079472430006497091236101863370980842121176490479061291057617857941008627690018534769982884663077667492734457084981650055235038910038464503614370957206368298440569888141723729658812092951044961987466165316266233301715270241378181874749311405791567270711454423499913103823529655621087497736302834191839595783357212477271612333985137618066692925600742280563393443324420081405852759937195860914630619403 + + + 15306063570390353737837335209817420071036057678572156419103603260180517633416594725250143930256570555311973151863559278426910091840654318743251247647585440312790471676397469900069506099819358919145936690614584106520849434610978574190575135536071992554582401295205772243723081441814319344052735706757887372270529502313750876959600478787374157271652337934006163028240663131933666286507693728357777024259215246350820289379757273939088681007442940645987069515225517812731360665645335198490775502517390090853246631214233066980160611127887763373832825399449430667682895322299227179645582547580365411687629440932091423182714 + + + 15525020359941097189908244413954294911124961834750560790887194781922184403132429469829467996518788643536921384070132409326738978019989710223183837294410075206821695426768000405969242577066465426975444219574601086279066853022031903462108487940137845749614007951895239273983221659988005137398836413069379737637021110325759922964022923478897414813598353877942940476297708500879865026700982914682887645268582905550805626393513499694354683323483071333631741788808616367045386064562931233233938567191205171408693561323779152635805888359117655219012421121143580102584677503841297111461109886667095037125675725999070996279324 + + + 16940005036207130582918899951749241345985200168859578243006401434958641208702835098072829172026446881562097049656491885861230470586802645096734627439816661713510410272452573754955387765476000896836272093301654295954347855319680978206167339686205863205608205036980018151179746335457471104379105000387605101927840339682730732345778706429797716528943384128582569624965944581545002874864565075885345658431300611598417697988064361854149216884682278174204767940918692061268580517848950938731981170677799248093412617318604554629632790858789616559077660022132774591968989371685878222588147088736690463348272153735016907555762 + + + 4364718883764300403036270768310627541374328254554806209697360583092815936964663783869470123034211734133675762105189501483064887575031469200027084773260580224412339837286447180471116299064308510697888918030557432742261903613637510338348317962362302516112962342083334188731964864690092803957863134734505124785004656289115766737442474465025107739487348775014898070733491572099361164540403875801679110158599236089554174369234146324268619517790944287653369621120112475742808067836249537262883162535276404791766863227472337607011663653526798012581647136231034076164713442134818946265448318918580833833498338924454679925102 + + + 3897422427055123316717985152107218209993018306804299138766569753130819329103872382839159822541569542658893090805140091130662485434216118297798566532687001348837653140928217306136451891950883580613950544472444153566006312742022146405219359154240035186429028846343753620759019713294139667647126880693574839449135540914567816620028750209881450451793455036794120865762001176224676058810101162374873412206585376442414443771655892307041058854645310312400261165954978942324643530952524038169595601091745230344078722079624911191687938456997124591576270793539730081676632373208102840805144294563237616634046720167615124964179 + + + 9404547789785431836726611106075371982205594803988904518399242650204082972271523647904709774236783335984363940922563703274467842763488682314635919026953083470924250208280974889815864529167220796076121985898127170154495319480448369653997053928753051165345719574917848488336295305191900079887973908799327590918534484396657659159143813809650119752369590622347176618897347942675269309610082876508872515199198068414763078884021846451693533906117752176205504880161296341219170377373008375055122968959279418127217272515573716746943949928360075769481819677051421195833639392836429108972725373589059557619255819247317398597223 + + + 2976549113847094968577468835128288131701651949320453291655592230941888441476952243171166076283592678719282917449879927487588945475217712055872754756998143833856640110657074524025426631121791702371033080556331728488996693876084094577625785360735737015434455425605870176195014564204039354824085804657498135114023572707474035525250176869734914689593560567322941261002145005448756163386474573366538592790574373717865255291313830629244764769970166526240951701998261905144430726425865088962726104241415044547913515433131701241784501483719007741018755519757192639620837306602970895256752438642424273936926814442506181347617 + + + 9274222076154167860251218452155001073158153102656229126080662280319598267248604292839682949946578533915274418367029819103569080619883670009238965205891092875906056625256356259456200805422993627273337290546931687692905077532764234010028986359934495536883922622194049957190545245455256650769110803378800470890832630355452536052610991109983373241342058314211606138386621551310708019778019842984288322091148251447121775335982599536459634408991839694739684049662708310643950617553749472794339295870649308397869323750036435173505735740705804427113158913136227566020001537235582141511055330102734779328098319343475169049767 + + + 16203934592706729111127984998452202981258153263949872385803115116561580382975770720150493967113879584205921031188083082172960393281217607394446417734746122213535074715435579654634688607363757377871243125280269982677925969263301270538264710202801012143133360599231404035283274634041835211929957193146659493290021572805457577378145170942904400579194160032252450008508243383598536476278953215166384388356423771043520109478377320377179244930548799745662913642104749051146161862156425130642044530113045730221317097850369115285138613767726276679537245685475614502868364187013879937017856657301199375260886430718044485113949 + + + 16166031960518285375782828720178953752425200450549953949440580388314126925382692386635893671611885462623072809239450103019514876493475257464588373073568798727999010025172884339020742559972597439785512688832357084567515824627811526756258851967438240668682554158098135256480652505067183611999749380011096529717886058420818747129577628498787664780551585353956708166185755984820618776635102586417693955658657134363612214290898618040283416886512454456070033780547727716793300659418343735795791442149788784167623615448623427132966757608934472452583062369829916502024639227297520976218076858502071544924851761382612237434125 + + + 12818249253720344377828736922613243013683748944252942155089322309888312271618558106378159002225132695374920233628589817852213915740272262230576024151349843876906253728745725506314337469265990912225798119539128890006837358964803896761757402369513892430849553906326211726656055890809562092799429004047215625052653325099204352299286761102002889907447595384997035837904042357215484991723583001640544126342164096865910180616285221847662605540175407719615040580561538204298831112911558365796127334493686579935696291318274935691541648938827816339692273111963613402107300411255361363174066897421773093867523788900267784610930 + + + 1915424583694581996294718931757087460922936117671308084641628944060839911140600729170985932429952767639072180062044329077878464480052159865763078075314050184342724811608134174001720898649664228389282081575340208886431088539083102353471118257751920724867332974142837429778698993801388938794810525151174707106416118014621627664375733976743410497253666847779994701420621566932444141243049077670615911397951922802421118357161015702929977394694728570851849650103877502619135630897773905720957886010535735664455346568644971213789303459080111822995664327708195675677655900572258194774847529872250081957017773141930247831559 + + + 13224898494794954276958283716974052621137192986753050892524006980443488233548819250128876292779889940428090117221702568598196215576694249212036718598173960596248872371096795522515669628821067478166512252931841347783130967500728132020025573569622709335951507994048075799677495312600853727481863578594123979694549442237417867818781685191876917265030004428790008266412073821931813369997134670961125194347388765754323204836486538034855065020790261459849344241503942691612947819833634845936566925815253305775137729617962319188335555463941766071674775517187290389463450803835764373570162191034721065782916125145843868488064 + + + 15361380181817939317657726026330013313421132612463290785794175338362770127134245950724711850849432046482609385189067523013086012912547075852167617095940675764203159502210944914153328274682736829176277992596840722105986196769141671068330164380936707338735481160798628607323313855353727724347861791904602850181031395835768123570195477905493381804679775725820312913464455359381457775659395188688931439891393012710324210899838395604453212403395524255401525728868305935969335275649966471381661549158622270167625065947510443734433748094036432215248155546293440938942463207675218563273205336636238082857717768313177905614824 + + + 1047690518606352119190305865569964074465392268332365513794259714735231478278382598989757073480611839934020891435810366472484713010159422941753427137643199241699363387371686007385240656664798159681199571635313051312334499187207307950181277675171851052925645633252520527954940797994158770080308577064463257243962027805873532204989759732230703968473619350258059254979932211181086295908221478766031882445984831437726285087488859738398114204057438580076215358232626992583894576102631255923948181636246023180834021090849511254889030214258557130813289741899677039737346923504611175647877159991229840466645058280267169880821 + + + 2157460930892840670849477343205600043001075920261526410402627498756442782382628399781226495438695284289537445580870373451908760214014642280249414494698160625190983008087400894368434463436968091850446587208178247038864569215187688952630782716609533371180868601076398067372292883310363832124257380080110417184158710775458547016577410666035646653639225596252977760780446264205664052753819553598980382928602326429901871110743199794737756340940895033463322871986169240960028587948129853366876023764534469464739903436374380926748987702504606726589398650890683283457525800814870252295529161285895902791178456030813272764719 + + + 17385067695621393712773073478307788544387621555985028122060963969257380563943326548150388132528356110211921243276069409631867305206704573053320628714568062778224835293649052722151278211128424343087060899886733625940351328809799633245631540027934009313772642405347117485304547567987512779963468340924897873199457949870926436384447643981949030589964162513048786191553636225778110716859720982233546708021492788363769670422089801755246580876497287704353871323093006346037071635064064656471026167620828379310882966948099750306280332048831804216269208942352222704036869490088254471688865072186197926933532164801930907957136 + + + 7240771227178195017404268320554038771776389530081332528406023459515160896260337450829245213222140091919132786202506007850129844234948975293355069259949472452562872262074222436271584657834053076634117966901152088413069513449237902528699929722085430905368254626478595616710292078083165783895724854723174085436324575917981019600769021299492452841513162626663815122773596683937615339339934964400738351621425180242557020377936539021481179690915084630918515282493902066134563929238598211913446410410737960746962100746867024926229665811964065188468980936975063040591211219168454891859704426855255101200942725803428017724959 + + + 13596442979497196983647918119792417883305421088322198377982710647350817366927462771739175349896738902856667138874757899086077926001847087315666431481280873098780773090468734851106858648359981798105259068685344434833478997946917637156368043278138094565519901944273658551114812118848624571277878598439302853205503321286682016292903937954775374632829553060634678404846128291754459492352725922806166002624437726805347409019948963055379233677876075609916979719590834166742730427987270018666054278515069662954261183778145890685945350130802943898888478580643387073384626231434571654622600342079517314983684663382063768410826 + + + 1464879845561061349430755680536479288411305549003218326858496618460112932431859093347144440966514455698534094301045228297995960691675873291639554372567802307030425069721361659937082451921553519272625785031201251724740131205307414969280929832229278048504269164760229428586433470608066160373282824574928100689982843028788201492147733883771213023120445883223760883510963859625851264468846056752658310661937801258088859408814125479553410536790898801465105044204052109206675301793951776800731021156050674779938176701999858955020076869953486677670052819927822319667386140725512780516797948407406768734875195152805753023464 + + + 3101091402539962001825578269853278128753060342991851785738865892552313636227632577795999691728019233510893296857361299381817921512243179005295864430396969640658977029693115933004827617047438336743461177299608701156001568108504035084382172348103404369171154665984696048174189116693179083564363385022917731527910995612361297676162924808978599838387550086773391646970609183779193785110436759310203521119508727893049524581273436895116011851969838094354547863770177638470432238013532956428578838921754521891110655783846258287326357759127917758899750834001056010538726852586246035095450977727302537968312763252528574294840 + + + 4560206597311207351764415917044189261646696853874489161901231794628250099181473033093816890093641219749707846366679347449534750129658500411885843448689931991148988541031753202085385742811720641624730589731850351446227673005727240887665052148489798226992781710307094897919674986809209423614189353180976939049701469406762186035234482220575744863526563625464500068404839025483747427941105947242851394582491168492003843090953328003678691607113149033875737174430596615000048114334525557269232093445557965941085900393398924001949659425888747962204649251570760723576516390128141000328168604810751414898622493056096930735007 + + + 15043680155783857694801832440911745359451869019940994124406112727233942884116440019320619410591943567595358527685674901675637055432362882252917850785891315888845411466741144559163129221485768377526669873614569929381685264425826576982352424240700823075699790405744824251803251667337902860196105441994802373726384853112194022105073994791615181797299578677642352559919681128290597216150538409146900851285259530480126775279206334034964466396941165141004809136428962360537734334496224602311428715629278658646110109500483124683156301298079650537277254009156261304239023326286133214444026240203696638928052377412478477771269 + + + 3314979764652329908591048752212087998951031756648865582828714728622023616641276419079906833381292784344054002547027457482362828064708338667874497282478204624716489669997850467235731921105177040126791966252717154460854598810484703455310317124761824732985933847297666331392400404853973191926649286387064020449431022863630746096766659020701240279036090127708269403661001060267779548853220113921770889544226439923162887056224088636144843825683196801542205646129311262512902166534631679870758918822052778687289324381421594795126230221793496769267812888487149781167416729377430746569458683453334307409399509345663273790266 + + + 10544133257273588032340826281486092461161807950384168458987804386634662274808425203707628582608805918363938796200556529214884075860082337430107342452531105258007983404700192384192120908503301886549884881119034743974722016581735820862116238749170105724569433474117320566009164976976592481463746249436161788814517389228490200264123991513883162708977819653845797710531126818797786505199010269225308545008923479361709381543478127529449001083138947260644782189486913477058250963505544030513612446547387206852702419198476449758631501662352062691480449941615239535362263683101105563149613643792309763365981131954328777011407 + + + 7512154648227261297584066362038512650327915436520328083586319491052614443566855702416604777894348003517596974632440963884570140932662837268919510098352337477996057405840692276281813679847192622329789825077190716591056875883956463561190862622828874474273411115457936002188614738472971991666473004511216217631965838739420133001440560043135668992748488077947904241683711387600269304810229380345856448140818197872809383016094094360807946070092556192409760700097705868161278628578276247474460651339398690467740059962525292217674739808329606577830651576701416411434618912598350770963063830826726526006087677025489547477414 + + + 565343070190289230383986576382175763722787203750483981394667971216464378024426812281903567622942073095448876698563035028229799237074717724753350202425500032119077221569926770939774456557558695425167187174829982534465164610536231447258235007826198404493243319114129252205234246918851715036819499344339990139476656454896034598283294357776670253643049087114066052115368021430900330845228515164088357211113282416053184981538536440256750323156616600251012618083738097324191505397458811091025178347040028566710340124261667894492169909219339227648448024546675824390374081991504339027620568415022591076810997802573357875187 + + + 15538625877061566229419094294566557722126546150930082169361592312215013254456762236225140854374238184605159440043453599805674651546509084057408197397206037784385826522975220533933552940287741565313460551639331627799420915440634263995977391962529281092218776819382653097012908927387968190443550807658739915536601799561180412154852527963109502672168348127072019544259509725748960529658383845982823533976326432750588250574655350091505861500540680318090547764219059611226241123454023425317635516544034192958491246785776297758066302537500259614524943898332248364863626081313723324604506706793238299821499118152280874013172 + + + 11926778071825226800143108603129440277480025855089414814219803976074376389160461843084772931583745841685141683077922602917730532856268241260923727690055215677232845400469453078896686649410278883711988668662440887811436719202079787775424796044004141710925306261914566958833045214639228895486316734706879235652284924609855216764558021356437742230615111144018851796699137977552144108304780597728637899779427842799831726914302475947828668715725771471261120245903995931967860948264286296151989039376331717667404417955082035683743846194335839980645334327623110774293901537995514364773835163461636813423601426415518392675011 + + + 267209226285316244655198491908286978319095290912697514832169175524146318367510367757072385372289295388990858861362051072620798256343781325286874383288675923071568591198131859307031122981009740573452788576211514300651175649060111435328837513404010946753265769969084748719669229310588269284376620497891401356463392947106574875633095411855584494578452264582253754775623512684841204629475960912640759590838881471248400366245091151555051300987564115713750717619606693317459191043100741381413365466601383913262819253001096487223836569534542812148723229362087735809492360082781286163744588503759684371822172370854314353409 + + + 6425187604582928677517419320860520655913242256356306079828301601417832436762571429318861001730357394092985447121241149056627544136068825552555231198754781356806461968306366700839240652980678548937594315662053475719179201409894529363292166377432741374664059694448684583222084028323383399583164040578576166075565045236709690623296994939093308597946028793959332365990636445133682634682077038300006097452753866590822875638728991570919428098960414943463278231683350820773860108474085944173936401315156105448035438495670254417867953284182726063658464649435006988280317070836564688738045028216511072094684740564533782164216 + + + 12537102309625795927511579130263013429629323280105297823491298688030810003878360652183143129790006068128799552674459070528315890645907442431465190298463274614381269085402213597585644453440805247467318086980431259352876428518491196540244245259323863019719291485759005149873566370341064011576266188417977137787364048972798332400138477778199727950363039258005244560980531210775314690804809548606456588052459115885749484553062039786318943198530482976741999475555068364958339978050259704453982659254119431644054610067019097655765529676460789113356214038332046164700717997781177020242048592300951623987356699598699324165298 + + + 14964545736251405640413868942208208624405889553457574979298750274203718076161303874982032066314307634982176405765129416097410783282328138613531537233620497853759451615388801545166380953919533451355469468745554672467438272349358787050152228919542303785262292261394833747073450787952750164530511661991569118855000286880175204212367192150212344144210446245098573903173750198946806576917768848292517860857435961473729520148800434787386641277259632864138112554503326918827548137798738841410188436612800274224168916367750474080167779334591013186621115777900399572738676810173539573974047968391949680008622619189382775814768 + + + 5952897093804396485982462059911674285753546456178917144326527810134247467937055468573681016385419899093300829833169942996043736838930609529147866159848834000950045770228855340294429164674450806658393250848576778709795571252088289506156912251234594046099732638666905978955604970208544595837887312414529083648301350856781075755153075617465554604954235389286187125473663177275328040597746135203656571654472847311732647885648727646805846663898275754425300903857883628513355519540223798282668420058956874776287896546982187886747928427105540978682275080873681884910060854577004434419121989897223374975221371275619229299313 + + + 4164397420921124121829516305826190955357936287136601762567025155036773306117051072418746887619176958619402417579910614569679550092127813273468339127557725124163066865203183077677608155671533210180653427797387823496395692015009610090060179229865452770501868842909931555738438890870699625892391825266608322055498050755242542814157941460838572959423881355368043913234205510230013015973613417644987787143160905658310944941489822852200289132801034434335297378756038095362171847882790587354410426876248783007767703874203324923260544467935599185070916008047526661487836583113412375107866248136420973328489175234264121133109 + + + 7225527491550036328801047254927943944667619649679051331130633199239210307812791515530583775296046297365827139933318066296919977065529502933105039170315670962939691677893629475808151207338482084040638438471429656184829355668836953257918955080499372933010480727930258192473508875510153522713976349438656482285693435492716334225853241119129476988129272792264755174168428492423610965623027280308403778173487459210188839099395762992841918449984359166784737068599032634439191553411380989361620014883070524733702447074422832815492729205068750339867746130794119311394679394214390874029333696082835720107617338603550319158072 + + + 11295104588581449985247715784592639649325946494318700727599518422470151302100757359585851202685588034796955101584416913316546940775488569818091414312811644318873879003515439553441125109686780047414125863006674195563614730499667856210265021276762156250831000715725852527535331373167994398991524563134637513829976794413448061623099151959057518341552762406693274045175577911781042416331663021372846945292780010620652922736052601976384440473709480695705750235818367253938917737882598764131186798333373754487891290799758453259907528868355319675637525651808419219834564007181111600554730828640336672757247516222741955099576 + + + 1877858243030307210190547002581910662920178700264088541632881229972538147500228483004440273958267759564721605433834882052480268911801899637351853419918156187604952980873557620977270370615762829939813563749596381839675036367005391128406435029362648491674934510865574101324614631947683750447569703112073324821820770751426770280737644649815982984761423917583236703008102150368735906948376895695858259156096876927875544697543904618450848030686736859386856759377191908165159515800889842630253564278163942260412083692740782694458668578800868035692982649949149364760288955769933505632481293556689105618610292669886220770263 + + + 15135952991651865620397834102146461409428443760230259131065270841137008776400068011691773701677030953695380156160822405502097140836192680275287057644180309564976009921929563398072805215458559869634783509440436818772173309678055899263911935058290653476354226274379600542436754572915857576336094844854207484607986899392826491786889907602972961173128216391445426321295050687535183480689553932250202406104923861853605971017542029764987422798722520079632452622924665749963327206067794038122553737484699100003311841299436771529572224328601527790920878365199778284016662525796999235067055223306067433855169563374241602771350 + + + 13422436343437228746314024758321316408998512940108982879700315321960533560193755308071032462795704774526314596630902018340050004082796188116176329240952878070264868391061530663503377115196598847003962855038833258884611281411174608304974966787635876229742842857110512962876941939732627156600779727196844895951039558885295238964863065678226436898575216989258884576072910603691385591077020813234001220172508570815103834331717556564985128282677163757567063007164352207123117272441337507674323862051278222170929571919239602608308696822028088939278527058244267784362225700350319143652060682361057274090939925862418708918131 + + + 17697870789502686753413041459926394181425184030608205391812616650403157371908376833125063814831615193612466521685544189945120544490232760135518737028460429110447817920488590466953553463583099716933641376849401890200540593036308356727090811266285252553106491549023241576614378285837676702662045884575674939122805283300606195397216729726390940566623230417447322708734269159701168963331191030315339579647917025801268493862159862957696551737006880847421972142303504223664456942388128256089385433436024773398880494576856260153344389905357130391924768052897129970039052154907046118033122076856737847007584566167839047018081 + + + 4048433387086929179584863254363920880963430126478089202712866207582967448968907479631197760628952644968499303035539431833201984973457788702552810790090770960921044892225207836410048477550429823082422857065208760457560520817217989040673363071881112001386164507129790641997577476683777883078751838933776307218863257805268180139465192774371057756049324839147042243289330801010532144143517412347793863618727541299456319366094486449189061398047757123213639359812012889575394321617713933508778923559290364944726944528777764528146837365163445636864234618668995899092654751744227856185647827283783743965704481778279988296706 + + + 9737231816890096772993904358465254568578276159420710392165799687669368788185545455907840558904783722242700901559851559063812321980377552337683861948509796924635848895540615070668802763829776065264420733351787535034617421879473617235678731286935506234951760100801864321090667591164072073812325534970344972205501101855863143024874323322812777241086706920669368808624118124053229585017132155657593706205832960384166403248627632784413330857876957226655634447715047101620381900413141251983018786287257418248021598465048111222428335691562619438596154725565614737214344780874850943149896792326364638248689594711523668368484 + + + 8487753133624838945067747078237348059277396495694970733418862245567700020991097879273886631009771387822782191361264728490092625014066535005682151775388223675453784802108903010736260098029100115412385463072188676156700834741185394894743826716811657653445992454636715350151107004046596746869476226735820897923156029892261376062549260823679773616145516722887570479128131222346302749388796681642155938304416396688213079413942479513723477218069660708781252348828932845838373622298905282303277199713961111323186706923025135684607463280198234299417220126209124297497920181834594493015886006834505167964655808996289023574793 + + + 2373958459363306290249146581646916097382621372710435369867191823365041636320093282439291127133471657587082153588824165427347727643089011559224132649390263110899137999452555705727451437055884806699262132589050805594188588357778146524726102832785744023519958859518796459406851423602668785255856921424455521619405166633791642934695213673296910658753115689821334108047676928020090123105436469452425656390426386638949763414767490710679470569162328554187568227021904015320008828579580739740624499191599033916106716981850768690536571090506967659272047287909580297416209632157520796063701185712265089471660572680510570391105 + + + 4794839008287178438151538860620299970157265548134698709679834142523248454875273850874090212138673069288297248841319791932422686880992640990999448783433025997094720585416929544584440855078502737072565943496058439852645550485572084333813677237682454609744866694641538048736286930997380784089704021950946675433026065515112350027160128390411959355178643264978815891491229907873987299475619629945432131508113003938885853578829599180766067079527424310774053600548183756338418482641273138656743425262728106016328129774207476509128893375000429025821900891768527422400990780847451934698805175339886017962943099073782857485134 + + + 737296339050921813258528422254384723374196161118736385186425386857134228050322094161384231116928147592407144529947575648617431829540394487692219337511936572724705669092202465175957186074397084363522538420032153918067985872113803595262647960126502983284688876705490463720355869037652088425094051870219348800667706663609300439649026618222142521540593768058242740799221812531089576539977090308235383409006990763642438174190125947335660135650756046683840761304786859183337519584567638845685164273086560726698046668743655334307953455466943883161268518920697830368437394714466839658390866870464829175997460777071560696775 + + + 15431256471955110200576144506186773135888085799999435474094644774813788933074152241582863515986953971269080557777575783480202105800727140821613604325293159713263181603950575690034341538771913777768932031159170297272835705056814390193589653511957337318810210541388718437015137887964393837098120154120569177410346865448736518524158309104398758747854204475333077718320076057498275125722664624350583905817601463072453598798418643304929132623915814314025673716413280591691743341056939152406195141689224569116267952171217004914240444544007180935059606937372171284797708240202605343740787959278109167988897880869509484145127 + + + 7319067623078981361451003226938702852218939123210566078073510743067401290681224830775186219313511748518697846141776059770097332226635135527354592967680495163500546530455563382650306785876253261340273242084647851108640021724636885235685167077784141490025614257340771845720059048398873298238918809046176126064882720167786721690301372954580991979311727333670023861419866548292984826550921853299552529360078634977250178569284846236558963534345609769554535738292092509330091073510152898582873678948389738795117510064788185835271899632093454940399688196596074571661083052982673334822742309991183244597535066785912937173010 + + + 17821338365438200967562534818681520542215417125036003721036165296237196436626395976361588265515035339526783038753301231369603582336138914993571674790120158416932869616084266903658523612488328585542241177391131425151562667924560499897272135288649007093615690595018456791156465677604822994261020491598718851098600231638102241083256406877979211166419263369214540958910319098258265573878373102690642750978880504417127531821064019740430027512747804101039882077714022344663443451586412018767777143184337906804542185802563520669302883518926762933206604088850760609859797605301070720211451982068539119663948761193994122958537 + + + 15278697746765983964190071970540630696391108806244218904321846496872684326619640393254228715453646933004269971888437908232003664387545372493068480256790402853272673368975143450640301763882458313000597985321873794136618629679970385617565361220921191025946586422829638612417418334532019348397556416596446928401666463221022134251909185618375597346868387758670988348394010159596597033587046336560141186179452226473315437206851132991976712653023581343775347097856772474097323557920009818246327096572104862021185353946694549260573444920926270943396509721536278478157776533098384534615597992069518393045102218408681676273840 + + + 10131876283081223552572972660610823136255685046806902481599316907023205894799789860202982297709984305703655364346530758256486012681301651282294170902367283655739714396564907428319285134588805981625615199863607724913055316271875817016092459937025450333774094752543893029095802839801271027020657852688669017244421511612823999585891303076227234339873259005844904832400199515997617217736685689368465924244037691765584066169986005943932194876841838911790341807206587015223113676317772242159839009081596156108528626876990329429492815894509059029755210539006126261818948814543238460732665833598205068771541064864023154972422 + + + 16902137344182270248564252500500825443932351471553234152248407409163974337208042739016575503765663468254491438648911653625583596728382525378564066487552909109554147797400292773277036970299019462859246065025853161392768009804665662041562038207530636261204615197159796896490608524351734100771091708257825041957131531302014367402406966485770818979376970964999907534144634308352347541445331206296064404634227346062102886198408827647680972775098694513528684188880291366827445898847598760176703695050927600286079721396844557964794918218727413103467567822310412831757720148708074384447678548177076529867819865305369071797859 + + + 1509137235072113019634217549152588513030425146165526919912179068312603796160863497472176848074637375629133658114022446988851525889602880559139249289755564724659095498604825070120499517641937267430951053921819158063017758264904192568547730070902831334613796758489007657691209145121670924501183430344530940845742133702415921203049592884406622651615315406502835561559207026104779363548535143364065465162995025993407381309049866320620407605368712422116208903198149119428129518087658475091290030659888996992010541929063808208315614483997555662334224350112821525212671384502165877812310163385154819737237222365399399432235 + + + 13662373327093340335771229650190213858137497960800450903222457181346734680380487015372250420986251917397753147394109012694681912716432903117498910256216715571188303112022182948795184834144795325311782456630688294533633402881836484679369920505504467311746533736922197758733955917637092269347665885580857289480698061736675871541953229755985919675025437091335628091935970822762104448653704073808812272526855828065451264240976400619954446190330891640288005781017162352014343765117174414253709345414830335329175174965116628688472233185306861860480132938503321976683312141146029078094453849302836557757494828726657132435060 + + + 6881582430085964423875035326444918531854952849525248582094465334352819514145532313363065949252870522785603414134770284299728424972873131771661713999892165428280075890613722783641641484955170735458920886790852606694365356374080507035652037600924779148022313332842233217057715584291756882438672806090887156808788175132481584008231501554366672050974987079439637599645945172680423036291395824599371996479540663320569104468159100472861484132246803409930543029011108708633013828226574114763979507910074634651985050026975767094843744845377434090505374296379220600364869310293144232211327474773028440338696913173535503764674 + + + 2524857533185466816723548022453168896788185476873757463126543883705281982673774379576525210665826729953839467529606283990247063574342276319219147058823506128913191284713626016423549989201343654426264305047874543113007017895241465412065616812641990293403362037380060892214102130511091837101928649844987353369111999387279785029678544505209605330296954434679431193718395336339445015163535658920026362674845870625829957146631313416961050845613707921123861307678474714091061861807242839713822593401168674756532629383291619106687008716878401420611234770768807110328107165239710216647816173798642545436302955633706837629401 + + + 7190963243253097781148150347252944469484194741212562118510502844672691349844510619396261150878743881201009079277774436494136620529653925338496630006094172045833753515497269618625938352573664100492431894911576644811190595635032418647678772183775975814240173120378180694441627208885389751938055913939774535447588292071663727166657986385247324040864601742568477285467172232841026808420244161281923156440414044894016356225543215485470828334439372989321423673944313992637353301902738535493631523868586675486017406803449950291429374435910524231143473631508015296126320644695492062020003253946300536982853856759167949018359 + + + 10484840341285310771476516076926614037555584802550744291773384249160908871718976179795067208941410490766994773470905415108307789071758183306640128985411697602652431973691306389371848607596539604784305004322958862479140168402069230591677594795704653130219735912975441368306794544769986731925447581633750115192614991165233476759309840707833238667326754684392762237217866410766486406098104064788493359448084505211500280864866814531436331043642941001090662805836706659395336345838682719941379477744720761544979949941374927368969807480154428372487463740638278875046966815333780563579514314215700054325209248942252213636526 + + + 11398008234374123918840010257116382253077985862154971905297138988782828840379118084647916387047134485724738864600489818450483031011614409532765862939415419206755951899225989239482237245319573972616003708602190220969991610106667957070231684331224979367785625046656228693403166148379882589782931022752196845465496770437870480316354305645703433416218549955706452607930900730339866551415762548586107435594551444561350576977369486033324046627401609687850926258667858930380759334700388304645202213209384223391305732123256605765407540173751282712329241114959224111170516073422040437734829687921285456708798401024040528177900 + + + 2288379114545433912468587322534862909224370225370105481103026091531423481725970401412575108905649709529052030599228020521554344342376838243784924914874745763470694552579335632778533612761689128809562876577348833751143244784796682951449763787335160379484691838535479879567972522212450481105003936092507606552185945059861828182798565549852745287235833690916530380096407989830817625719421233108337671255193486360341615209446301651849407714921427664382477287259436333686990585603982248018613206965933073466546934254307319558312193502799772243745742445348235025200744210729782494627577211469877058061736667044613305232803 + + + 11181202143269771949804205061833553033150681530436830387537488160833853062637528898831501147976051688836436381123202392783758125517943065760959940774973544797947612753387855843173660382764265772874309266126868871739147175982964546810634729901852327961676184961173669763664324482738994332622251332987454759296048315541063286400843184592550325592534919179068728122726803814418866719101630019656593320836330633638854685947122135824816012626431178312533930972121345552953000308885052390389982330083016393084894529228190410891846989323374350716237071448372124024004306214785133815044497874925869512449786485084434920781311 + + + 1771535982184767435688996652730023866163402572091388011150592106025430699456709775179756051254176078722608985748631053926478041992158363252686334735293321513776630087036695178621558968676649043174417368993315478859472432251348986119842655813955260499002027283949989795246246520303496999226074391389223311200110664413026791367531052135527160807611603613535660211863041932640341874507890358804854672234763953641307319729356888500588562638152072358914384123081256096383636211566808126435189141097221783965191954553489450867134205425390649144949743335700489670175045558610961715897712908085571178722116036341066094634715 + + + 13155795298436133627890971011940907055178063927687407125164513473563319591775054183409578095867181903397174351860057810064973646969312516349266366009656564009380578880473436384857380153620370928976169586805198560800791630162395001429343637836242377625496804183004707859117140677435739653909230454646112852683198130872715205411079162081800759758499462729914103195881445035886864431739329949088726613008281772464125259523118490775083883167653116860333587333767398521271921992094905060499233167032254024695549486262303077574598407561976632254020785527635093715997600698796270051680721041594104817149443533408330823149938 + + + 13847421882277351520952803821044219163479642779494873593307347934899536418391710720208279739056615174769362045897896306011628507656246820470615260499438217072306723732769027026392097087029204441949999499151430033678487722033231675552854901096805124312005435298294282661091912861351335027075756751968363733838305324128504799774907088118618284191885946637835422404211511361103999835579756317188468451757094544864499451973771189916079567536733382282992658849563280978776689375105580800248402430961210498390121923993810283494702893153474180913770318954181056459138726010293984958946704837426583716788846175958331937453335 + + + 9980798819629427002175443500242497947728738342589611979431905122138167399177532862766213180661403734168795735107116715584326339491366015372998829538685195955670944564503879611167525685033269353626864329133968216831843590330688984537295661512950300809064507611536614383881421434834375905305674521771520617147902753589354333540156701265503675937987122102047135617891397177947050151764089497067092929647351803474373010908314876164735518298438101112717734079478686908097432739568995448511998001960221224621327522227804975713303763553845799094876262784475574328393359315743884716605645344245536800223980372246536674758862 + + + 8773588166874077187945796800875912115997980925693158162456084375235041389239583635051039440156606771843179567425326270768646419278315737263361733564588413685993373348020658140155487706172769378069753021951739324872964069127878695738924837663086110788144210011449334496283936450496148511606645552510680177376782100897284863769189382389917279992580244885151266141990591410646807527592422232490374780260645852282764689907439285280824161391735537971253648823297362613085836286175874706890308978090807283417259675907458410211820570717855688008540205657249452243541155839200332312035070784188195817472601981137177126468324 + + + 12532606074296459027335736247298613405712084671967023526088364261745643759749693229963053807699521105196214549627032854401165593297887699837434876410015833386419321369813490452120437931000908759337001723679266278036896504043553986648795332662110496402237962397987288045590710936703545405125537821725134327588201527527311231150290606319462732971291721985898953349312244694921529985787134590535712790273927516064728876064342585027709104872241139732667016261334127045732378818258970958554168433231722730001899135669659597186273065065058142587251249528220602789594566989738871733230137873091719091595756674188370552282538 + + + 10769631189237787145831584389806927514312985369688902814916125493904186832782272519484850802701905690461810909635452938972826460499165080840487195344996188349366951506835092577270444183623338409988664845708093790052363205451479181493181445160689352527166818951616248818961506906557274068120695974306835095669592612315470119112452739893377089954480863207277648441492627609447019340931699464043347858654525057053315136485183182942562840262689032650516998775703787740460097838993829672206269731287064779920062496856365400399517420804287876732477927997414567404097245498418790593468991842237501906568159610702810105361448 + + + 4273358952157697198088187061789004827155065674893244761626358653953584602870200385580100612611977915065367606127955315991579167306013684816383300809908397326397324279221266845738573529291357461113512403751315483127884974387820779540949302355872390095509577909629450092183078047792141383536193308377535209955172240663503208730801634710784662544599952278209794128964071632003526135133270155054010770912511212514794530025861503199914391760090287996210030372501627642192584349509623323819294397195879061876185707557630219823593749016394968225813100856884873139229580414697202562232011181939665471623726467658547148609155 + + + 15683215318085464460417746301960114769934600383609563512096608749813647677577346946714120690323334217332942666757006686174636505523827333078326567220540826623501059789152260421689208833457824678119345564101772913793787389907617116083383122339519280398231747622398227851824088128847119123954731606495290916194433082765228473203229623679128258515292926827313166751806176526519363908778552240670151550331959843027600702215035360978189285333512135077796443734212940058190142530754161857340611582208632193840155784155777959026663936196039696232500465603374340665399594496403638739850385150919864142863686626779084139147987 + + + 9117446240510389780430185802831179886639179648573858808376111018134650820677531809957156454091774837398035001016310920370010336332390831201537100324581941310532559600429546295656813055113513665886150921233304471805379523319111851100243798331475355804593033212465283801982433996749731770192785984497091378831456726987333681323700920010487335068238613244588722923792033154279568130430836965101952729894027024171903294848114520380664518045842964889760411969551858131793713328715862717510331157958029719096502310405174487818872892893022183131019485343237839029635486391582220786318196772082777983647047997295479169038462 + + + 3146156252969310606954780365063005829458384319629858428937891966816334955706818561447676661807501365329667450160975992649241503610641679421135792266915862968299357895767137361494281936413875812488178993886911713506584851920808110228959571828980617874823537829183257609081568918705413300030584009991666291308438195129297056761584043289629628546016890152525851257541589443014812671531799670489193603534327996823221699695336039856871596157073237996292634642005932933476547669542247631030268626859074942462955037528143285348325336005904773837481320820244030550516892649075664889042241496073949442597531983553127138319689 + + + 6031237507162977379942342375168164017224367057029020436468424257762322286670798917143633626121477947563900231542152373086860220376996263810632643980615069632908431376405622658802973877773671912570475266587638620257346533165679892253253706423025684034204415282469238792134103357199177253183926047840925137730480009912246507701712212020242101551196098286511120509590656932979427766223621111499422376165754245460213801234694393598288600452534910334677700631263905420308196838002084763486284035041015926962850834879251709215825097613891881659229695908211395011823888040531889747831704824579184767013462019329639791678479 + + + 14688443660398320500241576687772483609449296092262190792302713185216863400368070590259522060563481990010631294129910654003406985609379068536185276423375078416778359493575306542119727742113580726599486212807781716051600016844280105680449333490467648958114372707488721192579869064763830191239531432722253037634702309122567925457206410795581136319277790932134563098136005043650178628716692904922697754432432040581516553291388480805457388208931498784759286722259867279573005669063092608416610161596101514734277569216165524025688661842042443151545444557420658396269911573277078226418020361016632581121260496827149500252757 + + + 14243454325665797512250148199418309107370037788557386776670218153525389650170113188481477707496030111046621274274400293690450922509052272418604010903221204157946847918164082327498896935536528709449954016006680541335407533548813494105758673562080389365397900392836436137044032364617789024249422325650588330923090766668751310887030391191550447978342574344321089567900848778539388503183204171532068286429186465650843745781916307027016035272412269256010827853558841083187714139436779230999447678210753077538444792861703704973795999293792721275654091735162687419064703818831810423287670941868532044250924623965189037825052 + + + 13740942836304041710193596652000332294459824512801881101227620125001566358181945749490969648009732265433889748267640536823114427800940017794053751816062795417154863306153179972133571743013507356484684021672303516381713509967079579044353796717613187545892956670195283783424570749041324036612299470924590307548983050257778295617649701975111847079710831070212234095287087299826317562237108700071879918472478908514619261672423403180227795838879900611247771627378633160403289124652422680031442842614297610673424912341108168497759355712696063610827519329779591009997330549544614654350783416948106736842248852958128148819300 + + + 16566820443513228626530026980046730880650747085239585506487443373701642080545688424977005887560030661951925493443623508422824763025046635035589881187233802471436046259507858775237300486618687996284695284960708293386140993196815844292485444487890006727843382204738629220613125503024303838745447744700571910543014279617286106740789144862184021597677940905142132965446958540668492592747483898009093143546454296178889361395806318424402854611733576722649034613045135306220145119813085895791627167934489970373329567684427977503086117523909015530502659730621492237965127970936722526084961248796877369072595118099898431436838 + + + 5010727265801554937785812810795474596470934924722299502412862179789777805487366694829945721125969503941884986840911802701701435071937901005524586971362570623682395573943777282511350042951986292422478960651760789182713950859748600090766528333387521420765297224247652684999345934062353403175042641589915381840370790596618356026728040167364667299233099059740793010766395371123036799742373922354288295592854950056937294297193525609138978430051030975615628129356977094432045946069717571147390998744408604178063828498866573616090097309476466199065949680922573203115190395118126363126604264038720485031018513832986717660034 + + + 13767084382068828193580171325163245579967562703759535110634482111495157542398652129117603841636097691341441155310820701280181523135186237334338321285777897544407408974966028527471070279331965203175592480933134016823299367309492850849863301498677057873497344894735826678468816026896666994841033748320006320834944837106904120350141490640438854345965013517278136668447526888444299277551374212296855186473600569970946705656892212566189919706325023098360386521537216849413339130009080006758115059845603230903109116786023136542853082409484341104046859962544572805018006917097407415185660919265626243053072294568444675974124 + + + 2075608793767937266591266105825968252834581029085155584699869974890198457891002669656708418578728123294077640096525082961565858605294791719253251216852300242933863578153958565525861295673091114761730288141556284492674193585751473244038594719996767416133629380532108345434208528802179298650458240019913875001189821173931653911309864116957705111873562373416051233128618757129790787020360847477282339483631148047219900693131438282472805852084194248260849655695743454040263761935162871545543628109758250266908712167106427046510320752288402921817489238582662008543882997678276957103628825103449168633879886649113915269022 + + + 3112798733078500141692938309626219788564270645610359819784274952235144870160166413090220589582537431226332291899444910785201204042789259031954242341363376074327495467789163172217108963640216597224545446612656167977563298267334050968889994191192101739332097560562452952064829621440893912441073751276054517456960965305919441684497002512348247952560358626642085781117367021968402859761648137528251022488351144651215285176555709133556608678823166268929433048604596004575716770682017724638962951322703609231050160917269602253353978142907761565886239503789862378133931365982587609798575254546771443811546891467743682384681 + + + 5918569939519216781353920837155092926871232941212472423887745782720990981124021999507109682826148075772231362206566642567980411014223471021632397235362944526655661642314677146265728726057460633425107228680399694995518475087793686815597906140992040456493114834577988272877956675673436556286199078601499998680388453836787209459255290992052845687683748274645153745397026038866928209092316311985235008603013165592010143640133589588791931010759232129490398346608777247287771721687553068300613792924610434566454901738645084165318741443050951507866574993605575843697653170627846922680178866126185108253613208327196607354668 + + + 4486182018305512376564158972268858940459549588233289283263893855131914827742456382267082312381256216384640012051634569164252034625831345780045915938067103324510765823900885210920203617492374298173727311959272526471994847001279337673433526145626432032395607257792717386917142299820762977875403999827761820804385768582190666158903901702842556405139502381933541832397020447917424615590333444918323449177204643691709213376808926731774393267959277882433346880880318735635981922627256860912618978584118283934258124839941817640572066191745446927827579909678115537139862897150623357698370488934668051428176326474035807458198 + + + 16852991191023663551162011162529647974705748923578186033544971297442536286467638163731461850221645010619845179478115053163164359648203738774003571830112210097926227670115441128780616608030949007342824699314012010543244692582542360163694215150771095888721594445911483862218702236525443592796143914484406389686010469998676520735721597207062902829725896145913486433342775925224558170636272210185364973776626752197748827266345595391205287728618182020519013823296371029883158959480929783693583673282279923039986944803356605797271587783240899002546736736924768092929866439297648435802230448793172790473529239746531259242000 + + + 14285109249600040951556677717452684149288152005411324392123445536326330227442929876634039843906861310060196842550496924090696224261000637906534223610113092223455045842182481184976865066870535066556574632084217466375845915866562536963416291077448036203662506116994304483802741611272055566142981927071542339992527954887225457469268841981557108073642485066038662112200749234037179622175560444294414479976249232488409805164703462649162886397340496100959384202179781666001901410007758029104160379585403715074960268639193176799682400901121736581148989835180249834254190789309997887724119298673206451207722264847910019610048 + + + 8678804320824579475561998018701470246022956146774677276031377282760168411680843011458550220284364400153385396494324323320816563912913992938450167459227243777024545301489915510794470682144423995118962089085992197805808390801238397496945076942089703021900392209928887773223032902218913038906144407400036118298096835251682840430269678064685162168350567443657521827938354056529524439768290215248323983971905706007946288155901182749892253719698168436801324522856816389954125131801515464129390548485759223494271864786702732117094248581850111679084609173809673397073352503418682333990699060210359435150789813612374394672797 + + + 4200636926354256389468264856101361790012280473755968036009135354673649829268593872775733648093125305922051062494417968787387821798842886015724245804819464643972296561288658277886446015842747444067125832006781521948950838284839498417755319984472856187806706195116252757339917003985911598321009030102785355014231368687441211535763346725833627556561511582709304922041259746531133458062925934942464381728767930649766481976039718630648476893782633735927602537287594753297875773469452193921227509279637700970192190644258805579203704518226021461310885647509265189632736700011366309820157024475738148794233140914857211334699 + + + 5999932923757510751592415784054313206698839707680209771589922921690493149186607329382640989686397532390722885578068523563187340004472405894325825691898364346991598404395228227063475484161057164554229991409592098443070899885422779865359937890200897852478002461405463126765436222644851384828165522203798921642854185726783866176033182752183327372494938885221353598455927162204568973190609038989136624202981108917164575712994677997757612209089211257392954358723272697026231157573850937103942127877470726857777662624737560153688044344218023109913545738894388561246318988625214611535438978351170068126564892703825625297355 + + + 8794593758835070766589029327070465233441451882302383462757026835964155619234018918496921417732511716102071161780880765277417273187731367889660941389025417410691081551723895818292558144711285170193642813734109280025040625006037666532290815199145647320306284984669377035406897931077660618480031624567301003420335948875854355754871560916752611838582943730202566295665475114681033654194035405431731782244522735305177304006058284754100030585988507786322823199576353654822275664833262574279065367309018939092807453207611973307689650686451089961835714894339527380624531449629767441256920576771770317490227383891514332442679 + + + 2255950720062211550271963191742645278615376808015504380733424642491375362268070180139380624825911872459539467580466131187031497072734470848417017716410390972166356341617774336984606553942765833902170235706299994354862025411155990011858027629676440380037850897322403414658869105870704798623988825720241438685142521295388468707495281926914586914699478960794478224101582132760331547686082384495050651988565013930668900804784484347174044836450745685235759330367446262917858065123459011980510065093212865652179052495820299034504733934955219800264077040141547164935056018750176364890062578949003553397332629714811933249617 + + + 9895692455397055213690099860331289263656598586805906451042874092588730404216907432491221684907128263824423168236661237856121520502382268140452807262780815318285326094708978456380177716114732727405542708611996915842933269309558906204530297826236088568386572187265702018375148181925721564283107962791602287612222619383444551712108178749688039270065328046626845036959264267228929943748401859027266384037497122098069102804408842090315994332326084579696164426399834367730105976279442495807038216614169703758857670006338270702934516603747930830132761081309075700056051386722472968067976309822956918678850883793117813899489 + + + 12727655192802854664080005656256227536103382713199950367608624093435443410712404557796825964481563829678806239434630719400442226479418191252445744310878764645886210414501630467788698697756161564941273391133565797992213202599863314691921125601538748384191240085200290577310510312571917886013063383030539616078068118333725154497105413210986118970544406279859988625867740501376818974531968564442226319429871763362437831361583838614989091452973049843948305935914620867959524950104067594921160104133145794971336401625767487648436245769458427642571036309558603788869036831658464640022180612315532314989482587585109863171461 + + + 1082445298889988040376110529957669120717782261852537424274821111755274813509665045056314114943105230351909194730156351341407527797862245108525708189817910068563747153324762408354288493593808646807842807796256336067758534764257723459613194358242774078244745484227193022414880660229540842985916730202420780360697767638560713625544825186292932304301922890874375131099710423749544347605959913724147903530490044618499300563439048512097884007002115205098829429047180354434958849977682641006180478422560123592831478041239973568482065489820201213882281112162765210766502597442946369747259601009040335222231255746288452944945 + + + 3696140519449384820251531725272387150141356467329521361100124245128415754983370198252333568525741513935438287951026240367279765372191966975055510358885233436741977916878870913247086030309523735986734602686605207040037467909055576859882092526835291986878380839689472771051528166376499541429370204693975513275460473374908104247778178809812253414960431032303806228031075991232407001880971778904951799573950643359832632277196335170342510011202244100512163616180422766680440470906874489165098085099103985213426896779548005867850964501606105746574087758457788145631003668661885689814715708396178912541932764629692480572172 + + + 746658120516644973324268687732479080337270152631833571350405504462252054991928817009917000529098416273491928653207489459663327690114447791679645167077545405763671658102930205850874347485097143580049477873069991695667694677387901364594100208216580492552310538859075362359179985334420280399177591765299404081313757341599042512844659923286037191542268475217149723814153578856169588187919717290816607665879883327094896454747193924604946716770477739118312330251653327774449381229296541792323965031706191282511779834978369911217892479543273047535165703491580447928038057188518562732300803924817305305175760416732630231039 + + + 10428344546704923954751649775076628226892598978425485203566069084671272844102679358474751299267835247798365826226205087849790604350699945035325816933178122121979328616455233443885020745701278075032157281991609169595682562019925973160366337789563059266882110407630509403441310249553096269125057013810440840185914829599548743506867961044881372076392936021746734768445875999797490585075198815870205040607909253634340983440806487365280686880256932755998313336663862060520840580933280286514853965195948438149666764506341722184191921080204116573880827178255683534382863503327833016617084058186254404889381419165183944419389 + + + 11503995933612566815606924258445588311448747633931149776938812168099471155216056667555702121011276660101722162877660433792406511154509965677626217029824803768084144275621681810729891190020224972350883939680441357301939999199220565455539562747458160317006000478574883443456383908648696329735450828276309104261542396109557448148261077391552207180569269652327397038854738038757534507127022370649750360523189418921636213454506906720105718222693818568931585022801384505929232527667008216773443244694602836554014970411707909437787674137035955449687101062792020214494478262746458010230309154965427173786440948118714362819202 + + + 773047109863250687604828597740623431666712706517440665452096348230850808294161935763710144695375662469305192150029092029219195504623615957282182060928112439580882374818525904761737575904255000923307460996459196425098491726534119589072534513814496323231195589163214218893075930133732524237809177596230097410658619007335326444342492260076719774706684508341586380948703077423409829540802646098616821948007391154624481312023698022084769700243193232339548262133118180169246826328864381901440869875774910666885369322400050555008270229937722730331864475415415137673263289971876337842555491940117415932897760485848360815819 + + + 5493067571659509497783402584006772758648192432270696058902976928744207676452344719001748156589460209504377092030485891786602703354339865634698881171047817379995170525931141047430408119279857802057446823524183927129087255539167042404579237487002257398640361513728217599336873579216665694510717692849985469319434656991625318696095917089654805984389887768702870274319347923221619931437431574956433964045795540984605065395615569243865613851030652982141949977751167290521545496656463334751989467326139089900385296117593812339978833272054103062624715042404645862919776017808792674416028619387077093300478397994716869896059 + + + 12366212562115638834860627085206971216615682402673856112835364278913983816927239753235458580091919959010238964060054945863940698434907614483360528570475373459583246148520560995458791472450324548066294097006433091384178421005761086122884340587918819740301508558702077935232631901462317418306564859528068283851855985314778527009161747902304885444920638385827547342529836957023900788877982499605803277262913405312899805840830572387185078592231400607631746101319914778879785812962397679568879182493086819122910728198407786811413213424423389983328399530586614462216998077353112707522786802601157138231459401484471253562068 + + + 6780183094071051653684829593690884789591377763036534707003795316206557880140053660621599755437724989080993463919717687270446125771422104518510408450708385768597269879449295755875367520065747222640973060844987892449170915089639445061487518335719380876608255197734042076720672146868186455445315119056159920125903409996462392516623843710775626575932932185679008414524372141095328414921185348996450048350515134740917500428145196012088450720733308032150728965902195240228728988736982205760870068824061823924777655998850782033219183903043053803687520287919680508825871767765330998393443972152478888614742238143727906616188 + + + 5224867034253862869560148393160023854203155163582753639436135468357191583652079303727595535195394194859065405587183626014864116908197375697743976085543127092828886451663833545724508142760944731758420585210341999174438220130535557204399599628617678365622115162629842627704296169177641354380535938600109819158928351038083670566418793447828065291380892975438743438405879154743731483777330322547603163776932664525778790632374583740589174283158559411268605230728658043728305921452384060316627690150845170004492980644727437808940015480045767912218611152314588350326696410801386302687156871636789862163958575932515861877825 + + + 6173720190490653417902676270930384142022791558873568712158770811449413446633339531203579452149189240517635152104631755811059345265483127835181082808178758176060731145615333943989085915972715031847555867777122783699645508209229589702801151685146572949327750285382121174392322113821451733963831330283341563515976780376938576751462112326332908325427282205901413524119049250713719372438306688212124900304951123089570867281626668499316467473039360533078375739652298239616707914512423386877253284424044713478289439951623597325423277683720961153708357353258686290522947116778548663500684434901222903405772858794955055726916 + + + 10729139837741354818334272378593779984796483682680296316437798004129866349880451644164016443744311808179384614014223432416200346409642149665961527679389518049110479885589533541056993179059585718438163033202731446047573534188234091044309192988637948284262106051867688133711124310212657751645374411049137694542341128157458766959023274258763375212293626212320901514166660520898791914894244523250854488433583511287442050902570300222163350791644512043507441266031794376581334011520516072819894710653584666894567702767045882043299217199886319072565445751231739247856189232691347237649039886181671227369838645980795464977217 + + + 140833216814923611427861934221230146397461270531271960081139183094807134312067331008099789290960198037294636423474719084029201821067167830990672524054698335984159218092188101196301483958968103101614454799815691122263045630375588158904147320150960075584762436684896436592170703630268451600647948607114848562606813477783951807743341368818025947422643687587538820065892607254616771178491919508628164299472520304032983601292091152175536491943844087883762021164409236593429282706789303262838268917114486459602117898940748091674971035449296192957406536399475192412421065675143956730188607519188283638832318441366841984350 + + + 9918236761382803181005497915722764397645322881269158093713888947334200414948135999743598233640592151769103224355226875600007016772751864648661067379420952859215039359332954596538925681501900877371117127553903199154580344442334795302472615347818341204614602149687521990985696752797288326080634274578780892999928480197865046939677599789815869412272592940253254780133888409485963416966615746200560672867321062638028441191425913824121094525086042283339821898259454115789949237541221565315568263906741212965227410766550673746028460729449973944342237058426728217175578983066646313584253457649680743549095989018358828881710 + + + 8776307657242297232521773176062195420273848460988091758662035538484309710144493226827879254684709684029901126413636301656689419129842740618620689328367149580063466082142179302377020177038468548515696038063139647043296616400142852353832279695605307235049592788204310279824943259616800087735262296115849287753499107191025095093257968407621094006026918282787035559670921159507452814156539397444672548989669170966914265081832812812547036435055992915763228889938352576573395286165361066126541534929295701696360590908898417837895636196164893634068342413994711227668708346186414042203349577391945912132063619582174026245038 + + + 14261393570411094838903980291423552600365521215129072686192310099701632844711199316458850004444786060424969425925994291638996443922099499546898358906559806279013444438781896687326370227980515361312581005169247828649596699307317862047806912531021520838672342613127091385665298173086577619620158978671284478733105595796074084652268344456169923492103161356977334810166078905891413643043332573752133578581903924833308961889194568037649453209972275973371037714657883259820255782924964043508347713981131131784285752370326957048570715836200697461204732834582180953582462542868941358894493985496857835152462244816040787992164 + + + 14174174588868193847588906626993755961165365461791142757011746789475327033432962420963875605751069153296144881225427273561305241798855441913089876467697977450391550964316171736976083103741589407915614903616454220993545429674792647522774663876130781388572213628749004982786569375426020085543613173514605377641274796408251525787263172196000899118467637228848759404438447842765267357001682097854904352139890956183343326919875277554508033304524942811904519285898348590074736062683563166741943426990207302206235105761675445684618258669829188212838408287282566289520723856113022432503455968883805815775813978456853184663064 + + + 934918011215616386971151720088917851971922902391092865419958921699377615367680934080061431394276400489978187763746950746690177580607757072058900904180994586419401197233174585164566337307002954612912147720077089657712317709511103777291044819604540121413113300030514720444815354856740292783742859477449804392719894485682788755284079166810904320848654350390887334315489479113996058620120638481728635677394616400231822432935048309497951550278815840355902116389429325869922852276482153090885889288926751490014973507585794298745648359647307288619375993163618195832644601237582261940767560110534231074767152245682412898017 + + + 9879653967098216754568878905160972853646946656252286609247178013852522105374344829192909072974731582507578261141273646623652621211354092961380128750666045728482039444816011382304467483725488581751975564382782291630223418960754479809887288869748467697266611119180305667584589274413029715111866070193795329465284689256846484170219624925476806735830125224103307289708567494872012591704875431742532054494529266555903352017726591691824655185761393746167334833208312910090565520095880529806079986817565755698109545379741960152804506515816035404018322036850205698057949621665798907416735800257745830504086318686633352912100 + + + 14107270542450057216277459167460498789714534427873771967271589829840041263927332916145490639522672133110349565150212546779989683766036777814386262445132497670403409333054239854699462958755960134603612290400151142371679627482105824439674860085186677823263310150233854703533905191710927363833319746637937187364830454114221539301807430104874978449116991220341219711784608155948302644124655854278113562179222247897171613060460631825708692117763431025446537468326394159650684759485747246749307206985120966284023413850821178057510196820057488632737161649644616340793206090352958700672816813086448596128025732217568974762897 + + + 17295495597337864747392663988837569708764258624165616869316811221699916581148115230589343930755191131642246086875907407336602952667208870618570180282632320911820413591587621268825922896294806288643890845235697506510063062426113775466855130859311173427326232477864896388971665796953811480864692755718822667925753494645040834781715825542553943037941320312125064134279849858348770559253279521438162052759851513815279861941491563558126201201843652019980502342314411276723306485836008661982951615303881706839019038825440196029280798615895672579954808037381338422280407669656760700124432079887552894948496565084985697384085 + + + 1558882064509737199742649360756252443643419100152913987838876736726025069531980560779941514208874020128052244283499201498449249147150567300802573062976651926663311081611806553605647698216948842841672349601257478102943072420114696010330953680316051578368288825126076360738421287083235432228351772203498003276238113692561589902133301446610488812889855165627873451664463940564987857329819244505337688951459953981573352761679091857278159053902849137819634451945105329848426940065481261351406654496644041452275522207165076339300474731906293313196621210761923821749456569129767012424221171146368656883872760232757928490538 + + + 16234023985147272078287677658992147940476867572783953977395221602383064839701294913028371427586667523823246045132068659515041845979406564897642387764939169258438375437498429990479267521071524586957764941643966666663783859828249422578027859133042712958989900248436982923641310581571957380875880207507150305445423004291659250192967785314210435283320682853921628528831657052028916343656855496895106495549221260410112292308602170590054581852570450344699517352094891910383275861981641824554293377601010044452461332250728327807491423859740702416305147864038693685601461100541483564984004780927120808313126713525260146960399 + + + 10504982124687918271719992131656716840668553642951831628742504483453730309423516778606460580850870158578377093563498919093670344910372349883912831063779143301440444216474510348836517124004158233027474028125228702961085024453018344026909061010509423089165067154399346927116466894224648157089308543790831664262049661699834394501736164454286834775826187963649616133568207680935124654562693695809706481747472191385998078787138615606125605734177206711063268266112342040888932253209363203150551093097654625318562331064982804594032611282166075029578417001027006231677398368410855054770895910158170929609606998975314858974125 + + + 7933902745047416459478929952050325045071885304122881779950918084347990724998274307960818732013853901449605605857787877827667655361303888770993920821854010356636653533779116585976513212857272752819641298322562000295087803349526330203900654936918737331436535354228961554429308820112742603661566593537658145668367421529137846722474411343030073554455535469810983511768356925126228060343421930494705349354973844085103848154895545022574872348896519326345982310681976153138514627086543350694591919315667030868730467261070863923419272451169404758248325484486650119354893186145413987008150416153208504479458851368303225894745 + + + 14893743028041647779124758721398216718782666346087265807124630507944017103332488509172198118341376675768561560888150448701652693925434389940421613848958832328906212200095027230150469909184357227567617699141255484742835558198779181456481788300258837111077616082093168735002743851336297075772375823411677673893034319194711171771434149366417854815280168821318921864661504782173869903941217548481825783898104496936047939520850869395443318534808352349007321364893240638350704226036180522076932858981316046691262147253467993873576074455361378245048845239529793582029986691718420854054897056536533649089670946547826589855213 + + + 14026288159909333738657123416450280577743879421098540180055413349697308508204043162924409152402217148836736516460820862438235593341544209131644631915232483588076251612063514307640900314817140207627877716084248709846992356350509075965299378682609722420532465213794685358394499012519057329354307584079048292307340479406522134229627294083869286274207455727357613710915488555323795144326727772833947357465131567535793568348594417181351179757619045132749720982843553556957157210167719399915603300753836472984252983581360652714986038151256342691901992141886197588132105186881664850513035193919300246320048327930113243892233 + + + 1483701284252183647569827000724726783682531161864700963797718590754443003392128230906891536169676099958814381075831640705215851189148561417541113958143711702102250401955078915290770097267792476543679562993662996399603715924708487086789411386342858934437737397684880474962282853238934376839248547000175399550675185673320434896171665725921901853530480844389138518204397132350288518929218365682592195696807964799395100175497101977239417272165947869331704940937205951967871558604396281103755915452015400513286651863446563849572951365607116696829654399723932629836088047445923455741325190942410482575862613019158478009603 + + + 14588221801916335824624106688966715806160871826648158169091003818335353200613204775265218845708205687367089334465157358231999378477718476411089020319119765051549085999341421126590945060116766219775148283748953802361440015831168049176577659086129467786449679562299053097911833254357808452415161791736568671044440756166659913556544535513187193311956482924525475724820740808736696304926083598003836346344894608083161623907375852854514242657416703399346929680116437609318890108950175687759012762477027432574618990544301941985014172576944151667157368290682545952445934673552791351608281561240693054750749676512209904077738 + + + 5047838117233045078751207812390451923429078258840355009624994129744868490182187008554142430815663261166546624943566368331537478265787210143824426018149232068567317534977787599669463103895571283169055760276979366668561065402994764333584067925932161656482903617535785783891974219069914109606392946970123219354694329325813021701978541661573943889429658372150321407336924010961985538984189457599142511181116660355425530331943171190113594111521011812147442629643718315918274333717868433404360419108549016184088663034790856111365919074667624488120399939993008848288919134916170024635654110430397112950622061483046502794809 + + + 15159891545571006135480145443939055208960324198217689632529661464967360892700365927171914433834156233945390816326787307831283842138250245516262255653307151927180732687641598954843485531546573163676379017523242380083156957643769932241234230295845016565331023800936490019529303310188556858134990091804134629645157738982090852463476915342526619895915250995558879600218612136157628674299525206856972724200672193054524498477499822455345371569927622071252122453693371342773994474347725503467452585456060581722958412265455993045164911856693505384296239847564840155212154000060408288713465442525630207638270412835712422068563 + + + 5921874963118578907101277407504933573844014932209462155905746146729300287972203763236267025528847972541700556239475139293855066308425368885360791853235067045761669766907577584821368900715410443729675054025969591425339450207956909589536825516802428513658161617363544907370608998287241254396769064683788581055485448526459589857305590211399252248257326839163251702919723699322268248488639381419031912750887648970390243455789449910697899707433588863570958518440722090347627330578074318192502849001388518079672953966007025264707699961679984435175904203597398174361939953246071998145882415745677872341894047899483579793650 + + + 15125756707720010615724675197657680322550582665906023310250538636000939446615369848879007975343134359752557484159398259857561415220497858790866700363782388853608023034560944882793677736094389914600183404408528871803449511815032148325402271774007955745345482528674060076486565423105217460602651562384079731435366327252935740490808961790436851578873843795998491057373718367237111907892446774965543845408927240720125319509629815123783797206789309557853000526715000132797552152215062143898133091502844848572616774801751765383446080363756824091805637759378287436433437095089007754133170696273292687238468050411649677259835 + + + 10486133683140428528426793206934978368403422214245169116381491754780129607298996935628189492672834815264990987586703980586069700864477141149076094499310564594881487928799757912482156872978803601536208360929053060278871355252499212243294984419214483053050560936468800542022582343181865827074948047751477079502988356412815589608166331876163488590163848610767911761974864584927148707053575821837963278914138445804105808268461049981555575826756578141877733439481646406291863558572584091915205242549494889251910469073193177974403082396005223219326124944902124368402436142418489751152326211974642526267627123808451108384238 + + + 15709990188602250397504692523688576475171270803415190927982189423814162716188214669137665036488644622735189576029644555248738825508594554571006020198308797110099350398196773255897360475159426940354471301140676131531014240317588334658122272366234034989768173767559541248424788883382857962842483407535851681734600508877205203255284669023007531267137673657396999916103552542281625672013730887133807538112008619900632248122599929486284830520222653778737987303769121207937158298846696782569514957358461234140280179410733441605380546924146584518319347275499384719172923016967503348965707377358444987471659140104579551605505 + + + 11469227870454793215640405806469164291731277076173402028351838935111238440736031932674519898843195787757585704355103200763489352120032188641273336282967274836881754971799596459137449046099369803506753271320425772539182497171359506987927673929479019930364459354372084795868731774696558772828713216072836135665559039646989366136631639698322483292964800563828692031624822192045363967204518046676393715410177392463161177787487556126856747742898106077234318666882999264275289956747521422056963187882534234943220591071314868467161643529275681802107614569447025628392460820114154952177036775675773719038791440581517027679832 + + + 4129411372472565656666523895259062411421064533134948747385345207338601104471181288516350643389137466601226836763670776242005568566332751234359216210528810521956079658422433708172877045779084514438216485912770521799042860738416459947423379286047966364600249995239576047012768444709271234855476616701118228569763371437187603429190539261682777886076761042631003937525781872173192118286275086815340967368707391982748872141306671290031119439609658692425909436771517331186773839362534624959271650429092878467485637545800282496757363774432019387460663353810447960039451425367455517011900804750930068693602941963468745172883 + + + 7433372224118523491971306491311256692630119713154105898066417669820480828731794695090640436867624358185075343796803660466345246814554911050865661016903934034395812626113196106585526751143624306409190573322316229597653678764832059171407604763207876130197232326928579876448515123717372899606033714129904235283735151657923133095397831791817273858819990445851959103853716496841836523058844776478833217952505039317085463934799717161680378247728744817594507975289401760488900040214573615532495574778248699066734456073643777741614916451370728249550978658960982761550182055650148898641493130366210928310328785681460719132222 + + + 9802773161904879835407284896307789902032198287984629544249122510736465080574054513382977104801376302724341556577311170828925729530629757550147129901886117231725377445908249020083420853422584693979857098627706969932365669394568841085745710467710354749849223710778733279998416378791562896080519421883139990896275857757495447824938464612021519838167947960048028417201402032603644687972450110836565772081568636957365722920894820751166905468216188959360630999437370243688352866312246988746149344729618353241688858158593829231135202279082581249068177875572035847160733089358935565533654349571920683819129899726300230390891 + + + 12781781486442522509711446553994644731209680440199602070061783251984767629048515788807888368451764721044514657468933576159020404258280731491848217793030074797481239122392094601416803760198913808504604987874905024014917742606285072496561544469712904360854667857809995625251786158380236324304365610735894979355537077120416952785139893108863295065711565955692702250369214179762341405803564851164377382216483128585065807601784820594921451832452838465923926200366222686314293832096304811884647331890886851067132548520532196490342359452083228203104615099383459223171704090228100875185565959260346827458641436125144528560879 + + + 13095103695428570856246189279372203102417936983984088749908598060490254463812235993449718749099516398762537796460840381330747865370136473860903575780389802915475002609681096190452112353636190067631987440854235815668602356836870602312346088254705256442804903670337880171304020969929297878153870916130371097549945909585822611964049038321579819187927135535897811969540523624012327791001462240611491835815620678375562859636127905517592239636129505320751094982694891682204273041252140881730200529793896167768742712925991138839433464621991735650632964522454532816873037569339783863062751819647264561630856722995307064571085 + + + 878770219208720445366218557011720191092176353798001914613920451741321113185053272052674664997238760597933176572560036021343644470877294912791751721657092315378855874536872396331113528497570556301664504962834812768935197912340982254863531455262427522457666930214155370690572624211652982454637597077653708719353971116781742528668693994665019349144725442708537078743977555049341417956071022844690580380630357385307149816899702606856756255320512963624434153927516508887776493952149113538798094804106748676364415188071961783386410965803536447853328705834334717724280812835008945346581164124635797888942323699202204233851 + + + 9776310315572002823111839750822183360479345594538233932117369990513005295638646931652813786057145132004277036878287128113715460577186524382608694552302621558962208424206180815636833065983035617926143755436659295104882124889120720252513927723539866783796593596018163447720581420093796579122333111870513162424735305160868134792748126532786354270881834695828558175845048065200860027480450564532131957160066766142377778310480805865520145187740251718798198958794765999730174186662281978746600383818437884646221219226658993271358940005489829191710867514623968770496574789125113185505736450511571470859361300056111515079756 + + + 757915264733893504917095382554606399070313827774841094928354602285315572999506136217642355194295823814941423966447281802941593478170388668474549219547486051386396570979110608333068079601352940352178664552245600714583656425057440595997841600895329954685246137673849917577981691892887126501145451591087932700820265049733335582985500188780125275911937952200541906924703662852619955351269273781878065688487645825353628228129449803879967449813602298869271796686344982570723095509693927819248256232022631288758960858084334308030832662285768269485574076758396438104786416492612708521920486656946028794871948147716887634127 + + + 17058936865446415538569793295236522421433601776813834075576637762871753741879548674621786651024409754342011620098021474526098802179727657821124089791827971738630782441686470294911278586291857711387158078084216880462184809925873282224663632322169248941815931823197191736240032339673572974620695307501856559927219434453127780180486617244006066000709521279262938963644101734326237998774721611537232710502794607312381147350702579636026906138721716234868608171862693068206305496594238470690858863531213615817759755039894782762278496062918919670214045737725073581402988978480474474496274607729984634743278160614348684319151 + + + 6341493222124661369571689509989877061820007954616248595679646315051899743531740093894807051071977664791676448606915628131352409951124260391495106342304345055149254084980172120334296976957894988377772506922895320527062979539572623193695068838874805603171453577924491108274659318748278279478729430622528224249885579410820983467925455479196899646027398430116360052584107251416595558759231479486105772171326186569136493430182923668150910550774714849133973299742256538048524537358626538952968032755431362926981890196995089256034413978566275396906538418228519938573560941421859021691570625030261145275972886638487711508516 + + + 16261283149067686457840622325693381712425548061364764718711460741752836958327102007639890110097056940935086016387423311523259945583071329092928532980924824771060612742086790986804130531708822956818901678104449918270692347414834180670146068765790759799194138266367734925538025155012311152365092440128634119263930181268965409216595715363035251801070142044944410572319885319564649924577837678743559628457018726024354781186153473220813264978507219318027168912346550685430387026041124271428099946362056067756433454414486369453167732431156427923658514800668573522367183887552727825470743431316497682925864111642345561506639 + + + 17200608539836756887949827186277542122590865454834816854922310284659448700811324981316259701960227362444102675374074154478502565470996402004660925844591676704710434767258969757595843556341696453898774284506198352549382292443350134004578083915800209347010795213311850213137355047968624684783907697527017378679988592566149378400897942803481526296019383340464294019539992121250805226940301526211137104057164361530896058002997539200185845896936028084379282361185107585172417211056069995267469514923955514322203659298112463903508441067536165569178023962281199521519958756485219936101731240483557640292706152076184785587999 + + + 12800388281901806415017549189151656496723378253376519373709923911062663683648493570059218972515921341323399680748165822357354685039572922067536050956484320340104015559203373884903699046287001407654367313982004234967773114387329958541771086148078800157760485812952429885011082177316715770474693475469939819878992517592929351861343296831642787952540333733390574618778798901779763018184208752740753727400982321564054573254293182202051608460073676141501236519836610064075446356521109521623310056740892654949159725300356787329256452753844018047739157722707462091369523921691479482841390495729220163851499424458247421200705 + + + 2538144837785727222034530348956721251461995942252047427970697121275586043538837754429958636183214582742383782835530135469553501452569052808121491621505271811161676381554858613246591100181213306815817775749428574100559827114734062600954520760838145046272737908837819366392021405219889630765077651399702376840179820112318318604988955994019563527061988188860081522894750744481723321665098346047590106823242382013156779828065776327896372381733718866234769944898470252031370217086085689381380985524985440490636827707952862358389851868564701746397581993814928619354057741664345182226151152583262503750794668362306841161150 + + + 12668958912691007380598363606562246253344439621946367754277459473302073748301018675832112903011765626999839916027755525567710188330575489306753321175342331592674436436955370861129019837699694198637815910512266832824811156767660574722211007356442050510230203293339484153577556462065297970323029668599648138581629393473832659554105157980350167424141383832652157089817616181282723484912026091594736882350675490877352305392529287009766210863712319044453994061324821088384118900829873615704643706739149244392796362815083673900620567514284222446641127218076829180794094839611056838190446728856840266558861253315522342894710 + + + 6283949413943554072331386392471364570580026941681149419299960151871434435713905205494032315192321279624084551024263137430520619897852153550245466831159903516213402774822342126888973982267179249921318703440791290859239544768032642958563901730850459443155570958957803853713067241393989001852267653289398379651779758163416976887384848284272732745673704625686754575007107389075103755881160378286386645316024400350799454433475700933964447606852625922473662170328314618353186087574883294547845035849097955971234585359768064032662040802858955680949430301955695864609169794298671272875696908951744906897894466433940557604996 + + + 5925830912267598518487460240939525785350669897016224577099946707530982789508624786888285402747083482801609045937411326821992047152350708294921534553317327747396645510400240873185063451890972058546183042479100947732463626423816240242037386896540332435920824029858822776727765777527235356033489056485603133405393958646607174854298663746325527983731785782736745975133126942070185312685148431845708984822537608404958043111545129759940388508283208032568807988166697455573658739693628239821733600181823132004629432199061321104038806002489148952922968779332109765570278268906053275108972001840074077683927859223733465542798 + + + 11235599839914253974914437325901217914271685570515791378776386284470186150967223254332911613511239086659777034196470373604875255240388860872271500456335755757853367225694035605426329705938823735558005480424263157441885660692574602660888563388351719301135244710128559875573498102421015256899082554302094559277156644581203545534914259528148527224433730168491884356661224122526007535304300000711135647780632389670154632538947673823140493214531640842928079401439003538848659257871197272741642017735714477940151138505950407623408166418431852789528297685422849626619429816756160006222201832111358120537502279628326848012482 + + + 16648894731368254190037530482445184606708715877981462924951252203811216701989741832912493353313423918392937537848325180247468537678963062465378845645990379208790509907598784624578698734593807841348114897632348907059670978915768207616766218507586600736663743527492240939696814557705937483967994610945279782856110903282129721072497024301113736013255848953638485875491619599843358462464240260687459551693895550548462751549115503272294122932588472076110130826007326975866314010274364795673828784256869724312046847114890197562290966240886237711027674635991041191703471054331355769956574438313618367617215748997228502070753 + + + 2392298845353825082674578534989614011592289240229143189045902489040759174890157356955716107624625560398368657684284979424631313191138879367920388456172230380456821811761171637971442184694446188792438869566466921375657493241450683648299399463329421681795720427926887694437211115809115439426252838711052732835046775875298701059919763754210600091304472398806720075602159333621374590015142930670825132834667140912416463739253445682288075143498822847009555956985044038405743794406585288478259153231979013345002304043533310455533454598026416816919804449133447488613747225512100826498836134649526809126702380424053296437671 + + + 4806593336869507993711920443799201719221538306516486373218604920439357818939681175898453027405498960443316146774202179423132671913248478948958246264846293427398445417981180015316453247346058136738310372405365429830898629158270349219561110914054949372048771504051309430604303463470534036720047388523404919382320630990231433502137724665009411947654395225657014471007487533855609575835107975255519802794667033792492928599920394673552563278366883039132667506895256650277065129216965350303357448621153554686486431857493689097897602458392742506270580572600962166329622087145247161511337058318416355390649244361550259917762 + + + 13530440397614297535761045862633668957926291701664578055430067294950357845883217099643070965213249347001174324121868601682579885312075064535039550737879466058959337314352027015993996675532151629593634365885688368019135186281929447266996077399202333606096761386280258424868115774836040352977016375742533253138190440940408653227287499975525987715205401146289711520204817594981392088945775616109745730667086794034506747093968287003476336474444714794824953547151868723123788480445858046925599569289498587512632791010549926450546978440323690521424578652752319570301788845943079293308331636547742889127579222412943212134600 + + + 3169215168317957598689086026326312545138832546640873401657999100681906356847166425109411058953135992147197470279041008949167820065971392893594450148366323015894608036675924684274790250638301136199743086950495675473996278732721976941069262453177667372308478043325411132907549839526304477646837708182813534486707990712496788966608237013124229120577010076121148831680493124554041755635798377301107906610392548317842390393698974757634249774185587576058205509947224150427546791160657886613043737097504949298357488754133088203285003772812778537582273846588926982477188019500942764366026415078531488899666072869065979475807 + + + 1843419909237321747648724106617774914736645053520412348050267862499309271960300725277711875694166575855968363945047668931175345577563509161388529400596713237768117976790277192406474381400902433022093689387164615582442283121999510670459867951440930641177141589295188044045103223832540404198576430239076446101341526348427198489583856761395982804113742890337322509460093732533888542362014028029551812327851067732885690301455694375850287609239174202130632987890300945295050867066256406055637491523354282129931241896272818917947744365739170881903683992735991726809928624358847147540799345150856139642805986785406215225317 + + + 6425376352284700939979085005553038666861894958106076349836181877361130140953047051148356312110791438286540103507215183048961345360097291978167010247651794411950303812105576090908119983222119382751633543757108957433972588074476466008339028944312661313216040449452659125812082416350476396185914677516217302833096168396653296988571346387846501966409643004084636464352798051953028288417810256251301290812946842315827194704252054443200546507515703611762902000657558165054311470255409363932006818334662619851810535497716465768754550994244797100794407092019030603680118979521409388955193761101495689324734147312080335126839 + + + 15243098359506156797514967646280239939663702095933831453622897023393696041646234048507235651880299229247159572280896760316131018148920982507440569055818403892973121130961183402718570651942088354346161337128613396692529028045292697843539770032662666882210491748778597653594806886179428686860523115569372760002164804547141324200334159475031699347651821717684372128331047150421518951630359098571726268692583814238693123178120217375190729698595953734674391103742784641749306571862679930151253020839746131885559439529220100673573408010030503358241473164237196525540025077365912181013625005990423475868852677739900177535230 + + + 11735167256221412695931556108458718193206534259079793294272300213803733289320290919990722603598325049381287775882282108966793839664362780054849067346199558111740176437316473437619224994407363796909940075536096995026339342232179937271249243066603617955080827377621915733106309866143824944638616343607864272024662425678662729230127177131190489034736039146041986243241959067319716945248936065045832719716855347265610312683282217359266200836942245405156677848525186518094633340397072156406752381991148537020911845751835950788644389430461457174193419765356466464777017525661291364083387062621336089303857665461011970798103 + + + 5940173934302127244640846126683914533823105542464333416235598774654061639095851105315119079526911607328308364526916079887821390115105957394499315119975490181037698660859638926669458966223729321648275603856060277269857084739900336824611462791589068832145068058377001105863891598114141997479906940499015306776682788177368848017345642011968021999138685188156614810060824063376630933378334985191722642688004118686048601064882166161254776679940597432471644005426779060263199065749849031544998876632851337320668154175556883963527112371520611256657550329549743952077359218429406378365576569694364578292164272710076085866084 + + + 17003820783518009510330918758592925468903224090903668930038179209051018760952084161552197839306000056514230518700129693060669208967565220087213207321009593182647065510239377745301301246406312067860046490755374760485251337502605317949642088361254930421637470557821698869140909475727900877711364397559857553640136847410628070455027559096171652589847621694026237466170809164740469593379872393808310280227578704070102451645409390819643611784272177351024594924196820225330311899819060842488244260759537546381479205995627127022374947290965870533002638087772959441579545897831005923351712589490258142854910508060377773112103 + + + 2984005755890026232179786208729920640060049218474798789844066402369655526627002085632747095871498229463521211283215648259873453662646288668464199193185424431144832992556284311254901533596074062073896566475943332114528949764720577533848501819076386675344910348702118175211487280945098566275622842684555570417147128391946715190978052839129692038733106267116352650646110810537431802804250045251613411119324829988343551946544957646755738306864770194816694017513948279891750702572886922655295786900762286185113104463875385823050144824501745648109725499913801512078601645385832793394298419280639094819263983109104779973538 + + + 743045019938050272958631687008850197913058207494248583724436009877961892824462693227495682982889295425024484352259172377057227611077395153229937547334138219688449457853341329817952704842003976629288633455836891543414660499690917548830112833383295685630891472899298976524538436305560880534268157756719235439939406956670087987918461172095332028237512228451088248314178459649869254761961875195485301413231491216459625891327281234170294082275512416138777334037488783006474549144809234650635989461255132374134981853296334926967479470724647219448269907131194012779211970412078587736823338705150935834775124246344980780503 + + + 11181349531605801355114151625509724568936674319063049085426280938523171413959266121589852269367830545707737773247603597492043786913060733139837864189215801119941612093854472763489367883152136212034144866898814552985771437883430166023776498184265573000638280538160081443273909712017961472403442889916464579469305524461545121300343486553373875981914687256052934588179620860065111205474232496042447037259416471724474701129045459156233204300078651934474001176091962589681374060124325454649866444158056909846288829315843893549809998491058862388195312378437778218016961958106304281286382314366964061098927752697990858736786 + + + 7347479322620121602155720691344750042661640138806530822098910299401455640737351188645503415641771347473853186363837830359649213828039137073675544655031266908363595288750987440817839538360627958419974033217241657672078154690462771764263521757003658414250002432283548106094257208840226758298724900710669515603212870197461896513357528674472629403316920522440833715418950011404995897159736073284716484247402172068120074278108040894796006162683967540855869174190006447365923012344044619604610591266012085471731665089756930647500560317774007339652808317300262671756565531418753870983280104322127813136791612359580744589246 + + + 346589674968342044177709064125645553444870129389013454176679972255730935562384795941599789570460805814257609741148050305305526869837013079884469539843862716180207578497844403484709050010053239145737227153304491328706343404230276728784549975306400279471596996849000040459558597910005851913486985283168952613596091852667767849490829616831918407080173832017585697716781196882354144878800926885428897516166880136574776490519149051050723647444634286344410824029806225528042812361304646376515370754186532939500874835914554688344713539847398364373727270599022269324085007470027617356144043272303836719397101028849942270151 + + + 9215276585935519597985991357368240936368202736497127173598820643394413314359192900283225738974931610301805455298709144036224088056452896858397469085559231486363285595318599174323459819075887015406632821487428654185623081531036978540998708044781888774563183306325395366691202319726734521274659631411810806308311808023188475429072826014849729735146439009865298181083487339715879116215867479492500729632889278175542394277406752277604572003667232773677717468290088883294603536190315832047243575471269049428777662585520170767046424633325496229333675450823740491416028767758796598804860612000540717054314149034468968699696 + + + 15481979215178357682136708913236981687086751399766339695669023032099847520135064356422011251686121651382989997983053865485503110072381231407668801066558983831509480286327589347571861096644867976433567332120631251413991136148299344036988979655950282200806811904671830137816363427104983933620659471019574777639892866241947983985794106458984582460337942764280986106411407574787143179099059689902948637087839069338769789614350923362118794195896681079879546278316679184371628848004351633609555330751942897330039200927701491207391692773783452288487222090126284909281452992355152706768609415697565396249044132808900559590080 + + + 16147160503643592587046283189261570336127661091704921313704923722546995702460463118592747546580415573454890833793713813944091691214617100697498782517414817958331712796621565295375766951775959263848410455282552911055297593715573380861077349895367735757451455615459191962576886469284912208192305308113374175610660296277224132621520927102865892073766214329232464839369411373938469938662720827489558946362343563878671835357922856820467205620306398495322014241187766797578624054962261413279864768122218518315431846915387682894798101558569960522146678107882881307770415789060496261320132775769984369100604040290845663415627 + + + 15997114897431894641755636496883201631664155782215808906700886616392591381524666117374691638722256860239148766518270949241575703662783538505348062668818486608036558147672021594676399663989133631540801970647158149237274515249810925253474268135337677616090171491375788802590271255814451008579956292931284633124731531983252074901248941875290142000050172298514793923377868677593707740070809919001248541670924955632629942061713150094083950835074631118018429523791133004639877514391351413146098043152966028354455254096191142556866870768345097749648069588215516038700163200429994035656432723694675359679874365955900247987468 + + + 4735055882607007560975932831513779245752662968203327642847728275211382553816744187965005044039387284764837873856396928885341619438731598674672369489193482605110124166004381013058175721080067064207898379428976509495063965926272003063397985908749492605180339798351781885714679123652174408651940976052614528410649020478500234085296607068224710152670469480369790326128095251401892383220413550221186167581915358341741941719925947522325128648267910303714439100456831348878573279191371640449531133888656038857629594536460056467379293391993274187243823209140672753277326508869090203185293348878669460730194338606171811314542 + + + 6744842765309320017854566389821775980051481507083209776014035869892657018095517344605555795016665551626989575065999278669527877777591230524139100062177450247192726888383236672701205988628328827411456852324691218510722244829390009569638779651257780205902840901041931978652595278224443686596618735935511254327564787278851761845020163268428722070117935910273850639736653302169753299461501242134689773101381690337916768252004816759300571627729846523430936332090796032523258972934274698436938180950556170383280797808315668493783888536122900121397452795654524274141054663914944107461028806653351905756210335900223167783234 + + + 6969548079174407048592063041523948050438974318067978276357718690135241979593488623054067978816558480083977333414849919743260991841635120578038784619410089012561487132519510023982971081827459897552012382816715381023947180217651278242656357821997428231791739284614018466225881964182022029381679126642761605893857758925774774476546391921314395967053504722128568315615009354295884564817759764377233378446706918119350383455208417891205736525050161245713345680145197192413876840310354315407157317782333750275891439951701011993237516160224550859278271782747192666643752962525977001186770651051102776514697928056255612134258 + + + 15969527105643478301106125052694590312693713022260224004327184384239034755682145913543651596866598416757192523667597838001923762159072803207113382724694827069367770002202054845338814829000024199607694736560234783945735649204858335747413611518464520043732978868255088188845682239097461825256744327773707951794226497032149512576018543249737935532383561587395091542046599594211631585806184477529733231299367707172344863480607398703491977608726431832688283429970937028531382393405040319012970633582631330649113828183932130854691692992052450985920367582650166349615761750711238736370797587424813437380558435734516525256831 + + + 8850519758198922399809290451515690484299244968905858150211602908862541796585101179297212801620750403406378573836529528606277587249434043662369463267850834526982777487003891748455056047841036326452979182404225687451677524209803487445121687543341836241368207433075523096970061400593024380254327599414860601055567563971148162862599514823612404005448693976036177582595000003702576931781443261548595869700266885234437518835992051625494685044120393078703414820724667119249067711979302528412380249427559578804889076285454265789313225239414855310394222799628377787596842358090216075793531243390649954394716107970600784316920 + + + 3864282322755544217974596764984213044163917088121528612892389319337761082501961010661636209475878119257703577613050674860638016322110209401585054087795565109349794373709388250150919275517505973641688070928454692497633721149659309575586677945612599909401643770647735782432496390924051407413340703701026862190074460313699026522382112644290919769078460892769347734626411724755759084530882217720259338315123114501416295657954226817673039534902266371922731978942992695164117857424775397426873786093604371669493532008553563254897941916009508142248932666198511496542253125900817564780696569126963331281902439297170742784096 + + + 11098890388441662909286325052905259218878183891319419612441012007905553424139926005548781244668648906726341652442395123622471127983535892819248568329308228833437146997228886451102069489757841424709109818871436711352633847086017809795697739525419446792435313399103831369357577243773413008071666957022048795746396653382660070543664468232051167457251289131344226618830770231888315252082138327081970556061244313113550208999007223398091238517475732614269250786539919836427805529994410516782808246537526135873546180436874547440355058322079883842498237870794382326616577808413786908214561712828801430114265991593865077331743 + + + 3440421659740111433761639454267884630933758356848745177658431177526539332970560536231664839644276029046689254045081148844638691271849607739315410078849954090294353587980515263461319766848184431517858042515862571400635040262543343170274886599497144215353962668765806576562184115271573086954707091614453310580259811827264913320352105362771359028681361356210153494026750738449409829767090381981568913156303443843361834635929197128565429738484667232648095016212643681061497608659906995170261230034483500628963041863839540285445649254452877747920705381541978326028250056066688368735060627761889327624332622128542411198774 + + + 9510123007107012877134776780110941884486547380822604482545074635882702963053130914244232990182746566106252381984777202131137433254102461028881887094114070314693561003814321989641553905946763604470087192251366389874323587784422537698487973564569114009510055825137589234477354029693959249189799390461962303771708193827963450520938465425974739989297840419545219451794775654874117577077604289811334976179022842440296361665609317028448842402344585226371701028357081733857982734582954812426616410670716419693806954729717834946478878821224079841198913976848562077385863997662613273661390935019412172488031233459479244092286 + + + 17667532717789651569703850646441684839335829805922852077883168911497154271478309936866271632279661340686069581669088751936955074141794464454145355117832065727522669256913208338150240796046732295796567839386416741296449098805595130853983878816866356732046445132289400321299487570290510799551737955913032769584748740090436264545138049425459415634256804720054710172264157726971997098480356002271618745207811317263032047231191272350703898436004224855405997872874266113104466177823010725128701728897936475496178855954116283530307569665634824972364047330111618668273315848697880312886499755052413360120769034780365835331291 + + + 15402528462894234648638545821836710942433062611262197222134033145743295991200182955044340381868970589650766199608995651296959893947799609308612377581717558391901221300531304451358601784226394906587600696617423886693324475059377438548693889033690224202622567294618149496712628745574814035162236829600124479342358149720913965808454908519977555616546798964457317139134449088120067772113606223810976189996907499469465958044259165643542535543472503525423260829681176387303180977682121198558333702411651777339741722547408261653740254026109413119301520003726430842956091511320642998479742048215918093873322845646403946819698 + + + 7700372774021096265279425413360907239475950694306128654686388237466210908301118361761141565956291250089845078116524913299917599236429933907702664772382110700190435172935443725841852227773416907561797621736388009977244012727594801779162144133343078701502159560496589217351606410441584289012565786993356499922874800255483622869576679367498971074310902392814797774080891735715452566540053958273817008767331882721775675352368061619839460168090682041279201149498131816010414766070213273438159843340047336071535572759206238297547622139907090951287182343350027059045259184435984687881320529340890134041658697059104447019278 + + + 3857661607722178783713710828919370724556746965935983885505019872487086126429870911709888237253886153768716243951472313356447031056272486393468042743005370518016653623820112443805053477702630462110577947022545852704381814142038836454656729096152132210393439444703940779467740632147359649020761369195984995625215716634110807826424616123252909360095721156932803537731864095960838557570816844707372282509604643713950995229545200611989975888903843020026095888334368520734446622432630111130199080839828205964657543426864972678001727883165991929702514201330763316870348360818298238089336680688418077732752456713708420888565 + + + 15604737276059130626722124409230403186689811710294906966001130062405704564081423912138878938324226208791270018018191177173936280922057554435619264830332162213936690425164460152209209142905707152717989038189031634520193890807770907760718257890727541023129594533332158661595777124301556778790838952010897805804241491382952522838943487438092774552128980233345303383459204062752510625971658837732396276011219813813284792859082893046392314747957813270667180837790203727605511901294597316787485740005294916715050445444249891115772159308832759249694773515830981403574757778571537626114284105011148633227505451274691877514100 + + + 9180053818503758644889261399719625932483918914482733618718857855665945349200988117341324176405881397826004354938910138312813102710665986140201528038974139040305175271652001320233827960453805367621605761239079637950184502251106028765198929453390564705910355819944038874939882962955379096485799905944240527940518044023525225983744199575334626531855071415041392089774055562744203560608597196137139330750119755654866890584958520458297610560697521889709265323500006585906294259217285074508811380405516092850682235216874268813201320411507109447291690711882917013369067710896169727295367859955208146453956896078269375359081 + + + 9770553333935731865070211698858147674816750109684494486090371017380363041375364663510324925833379000106179332510204733638880477404703890835042714241128392973237643944334839520814247606702425596862195063595881739062089240650320118993980881147258773822530893150314047009901771932745118968295469866652295838449893330607081761548259113302586985695201535325000806114595545323144449394888184649628448963334040415341280591709985149661904838423605332335950553455461061148677218157651980655553010451343891555110936123436139890053851300164552319685034365084456123003145272221485189900001629362478719500016556928127219070819824 + + + 8305165850861489897324972905114675689430289013194523258207282960594952676362371691228673946403370758103864076953507855423448035571033474527232359272346867580216475561851961465917351423377309079619242826740136868566247309593296897244241501227089199729043030259385270058401517007156601952936968610082694452650126788646555416193437907329730241632762009204926580128625267433934572551106238799302301327908568302677199897867318038035948844044197524164036677758574007495013488659688193290339840839773451067003576671687647201928654698595126013157216473807354602139733141690179198112957938075511974987970213570826756571637065 + + + 8781211389613307464257678421536086655413397648200806564016361600524099458224699418647303507157429907529186151947378996127490977653932590515783374752081273314815424708316012054433317808881748153336281815340438658768071292214767938055528847305815067039516074912452477780643985955150870926400872795606070038213514977848441122875141809653115277457962471034304972092487087619798625611443653564896687907638461898503210199872589147329979130350922527351107225909455085620236961419128490212373129737084796056675603735220168141976734064392066561515896339980705525264965075616733219557213657128610171150879251503435068712569892 + + + 6323380225418740537239237681597919562555521580441806718251527292499340881839042283203046723831181298291882032055365119300483335031806232571241388259136020434498411898358797706049375792517105992177625289651190477812665513628471491959293158059783927807042893634193425629403737211296950838281524082605780807724268219153978254518970392966245605084957927976650036185157482836453762273236034814615409403906628613618423701590750704395464816197000913811353293081341064675997906326275403408312779201293597448636659854375844471078808511995783441209348355602873782962490350931445568992335526912231176759456264696619991705294871 + + + 637881809254037188927318943751520592217597021093957638990287872429496061509403350097783673769730650830406547724499351586697337211944821007268897513694117335178176089194017864133438440522168395578092856618466794731536012861271753966605301654587477837723632253408209604121259200348002952677026309536215286085881606452730337577958695696418406654734952000252795899282936387223844656172784349158031659222010182984712642952241672261161166981302351989220059954246403059774427477095265362246523330022674771019106485999495671764696311710231859405942240724144094188141438418869258027938275924189350124853363332914983298757307 + + + 1941325482206551964779954172250270893208863884349690700907011884181920496908653236100980690542460484129211801773111981105018553238167774319318693693514967604951290817996817751453473721755551777202783374468449149526495161301903239903610800978817943258351373685423160093510385677588945028631018049526984900424283936908579881128042440682113300489678795220070245117764365402495002006852959170952267186141728569933951125634256239559741104449443782789444119843669150998076830418475948566366523163398345369052791873054940169834412666512588324544509830821029957647461943498390937789904135967226776158472124912928255713288211 + + + 16571205421645105753004050862517173434142560667465438086455027875367183809638956984451114754745141782285909915752798850690482971970104485297960209103643742365659300004913148364217406189538334471537402126341663579894106958612518601835273629764180846914079301866776191256798762832101041439953093625106003130352579306016267898501197353444692845169409430945198505402731719544561191523607388604294439852625705555766252579058545438206532694956319093135438281782188353783130625500142034076455501498076512513745510806178095998720565419703048217139164804982499390288327876992921284735736300198822523614245458547013832614843981 + + + 7970772999012165005242530148175328744336325444147690262861510703295950073934951980975833686548133079322256406494629408769105847175034974499289880559312891037154480574621182982055794141722753121651282494050322312353281884511968565520539254356681641299724283461785876193882448702693476919980205087951556260281278508139471093527137307684978961994333462984204806086458251345214352408427207312755775060455589333470151705055837983870185965021056804807718712259679634238268759463663864002997707197821981677881592874317731262307728407299292649974265795818690301945003973702524871528793366912721582878024757712495385544336708 + + + 7717997582080589255675356546118868725200746603699796823624361221981653706478561946468008208050957186497448169714209160636363318974848191488590775607809397288107263750194159116855074016812306510975908543838205732495393053286014490277999707396724718928370020085973271232851953441455882011772182110986856807011303921642715238282591942926764789553944290196068100054056844168405302336458789514384481143049961887711922386031625273186313650388761153206101105928915415225516849542255111063890626662197067415864663009140333863699092755112409542170116280343701539158255640709099794420347902528709704406481353312051178380855741 + + + 12892169863692782192791213354920856015182020002339280260261001334118350632712321419741846876103050977179764648979810716741176463922498171400735768568679869445682681542951764027182343737625219773290491525047408127951215523774545844885861857159124602686539033889357741582845112553086039308789758348083114344928543384509176777602280618555024714313321204181726021130100340500298353521133990803818778513667281604152820859814642388577692735087590226881705513318593717882368971893596207459704457276961481197970026129939923618116884051571314416690601206422324644436237279716208894572052768919495729132699697963103883899483362 + + + 9715768865112126894361236727208489779874835540509987722969559466406649110622840719287173953518008523827365517923190711178223969555315758688817608149164101210987205268487386933696217992553564829820895992934828804394463038787611348122737813264072114689216627311746923513069852471614256695395983760051010116828997383111862215989591803003556678881143178775812835642863424078114716523929993184680546388230589493326774471113235685278218288996201252200393555342664287894220855589210163605605732640074265430617508608507715862694922267411545389858847930576515573198606259918435848599704480788928303445804276681715545556595355 + + + 7247744784752724836088914385798291380199690692031153248164574040881905781657112475982437629276492139184632134553342035512739562704574611508803154084272887215502941229243852820588287624078796479334548430298612904628045223018174897038463731770768489279448369762145152833429121875376620207571458370311811373992032383976769847227167351712392961585083848189141395389689557951449529694211900638371984044202442903255359642494026406379344026924317261979200528908004839120068557625603486067403487671250926262085668355724216132840438496424883362824441023227640134372061454673266638637909263453782371537195138295709878623740698 + + + 10144318736260057312605445982374609649314751113547587927796282329037906788343267153162864296452624890366909677778257531448102578082591167682004658884262555341682422965960811865552678881520682590206352636493149050500355738380719723123059864106128287226581707575898292543447299964826016022533238527327072519670631674242786513492159224788824873022564222914341698685485675172896570362126360261118969631956878013373357051430041533125344589102256336329105272100309180534143020440715877765527084113545503757888251039807080517184546311159709368957205903632800981650543908339986959508897536871824379279917262456756459025069560 + + + 9480150622241173547255698618735037857757917783194238230914247459610082275604191575077110451125231283612297030339231051906895366281246481734995066799454395775591648701859579565284731771950829933231062962061396651612632990462824156461800834101349700254239310241990482741250939340807791501148817881081802877496251920904262710645149975381458317042739408184092762195553264659858907974028260597203492730287410838733971262035754888887346338980157453098810437343859533209025155752530065416356993839781240814123192598649436780112656719678623882052397071544605947379414024434272353690440704455271191549490383869375125081370567 + + + 7834175598625300697026559314016465274829074650188368252146208037670103516879865869995361813666011309046913044565277928409772152505319054671768369351609358687952270244494984224028460928174639106272541618934189256691760586440776098337957008221514267725349404869914474275192948601058668222610181976758588460810262720177847199018317394581350436143335264260611631697081222765928014927196680769376403081150483682998204063906327207768961086885468273617975437730054957772530625913952827064044690301100789244620777734898526904367422158806280137948642972218727472880191750913174052115269928343256753013863883758349479834454095 + + + 6871423823835553495341913450881746376238616941761846962595916267416929980866928423249750792397443876133812082558570000835259768695078578907989379386204979318926210586448314357495834313844376679150676210763442425162225311510616393719278799986763998857912330514715541152749358587413100266913967676018646176350055844149920897966725218226841290591390225331975094778795023519776964242531105351610794086629679757859651177019911424309175858988448881311508645264136982263292176937457477605654991525591414549096118616026336565028348198904356727777598856681360682435803509673598047417760722083019323933163941545983288060758416 + + + 12882180238708917924905368983499096403676812955170188605277894482713246963608575148816743444186095387896703498827831243965505886175031114845416921531682215041227747023789919396715300942807279805710969529393842492174046296341409084708590737147321716510092025666321959248576000414869156142716537670564229064675698043532574905221691442648584800011556701574996353027611183686250982904259497204460060464341107356873465296894395904998601829813334101274226700369006472834769029776636617107706442053525586075107170552016880545064635287090015061437754221603936339427892095622195951452964807039610941665756758792511751143239258 + + + 2035342735733441486663453657315956154007698028153748392730261087968805053909244368122265881902804330033108170842308705213345018217980334525290818493758084044538065963075958035066907775435504128903575206660908053684741792570253513599941765227633349353696427138091488057686819781154446080740121652838598341222630578585978145476396586119533824009814309436469003176902355289039098084738641034119665067739570808090348642993906878959339418874599051353938139480095539760296403306559642208473993028523786524807764268616153988657534631653245213901795685241940408530578801723084695466487743256910993311960532049236222092958508 + + + 10681014332779315880049643710079846023290503759780590588718330004788055750629592957223151664476758698429936497221867891004603500613303495621757513372536613242953707832767165719540119408272336933917163114317428676391678756281367996818000075543301519747305502861255191684088459908755077469944224457113385147652969942435598083922232619527459541480672759959284745735173026615855881661345417029714670145815973487438691896352902128802636395234154181665085742983883515737327938193053523436187965252782037036145589758171632020290504743988657246462498261854710240985612981572900206231572410804973817206566299068651822431810174 + + + 7149708325105060762676446462163734564335133665081695284359858293254462322112600801872345948538578910880609107395402253886941726879512826499939525659389860832448167223350402970068326606487584036522759846239260119952030632274117672928232734682900065090682128741546374276043922775919134946591150706899746879392272208561018460092688044118681003795613476831597266881164821441363231451756695601201356091843951256526461128780415314090858543293044457299352331640969326628933510454737429194927922871692756652273806846309419051341473694937360264541463796666955642068428976006168931272091100089397445291829838683182008383306858 + + + 7206234549120528343693309610675759700313149023531477396508798130671227534394465010700259870594586709307322440258347176439245498390504352160129747262704390882905905819051860613586467785640441922547682979472391175875644123011492273973290654781862001365617909477131914014001201356212412074967030426081649028525140341757807158066010834778903770376822068294259568437288119127921025562127448361072395976479611460803664106458610529697784855582680966099371710792988248952907809449910495621241483829280626334316312283172422965332501207973358249045735610263863285466742670275790308835680588600942499531270319555485623357933731 + + + 10183234871734126834836228419465117029232695501262790617525166515115041514046365857472409881610155308991827663508843212402669768946057960284260768698209294147199889196598942257449428111952051838150299307626178013347650425533490682270603948990394733539596537767271351854748137530940015249455706360381536707294017879087049782286553502586144651980572119337426115293774752178072209716789977825739364719447781346605438057518053695115554729662235112742086305809794435276085661075086253335464527490517074749821599972641910349031039309308604562166235488109509618125878823115380033345834455001843087767784775351836465027867787 + + + 16545836193194426658931716934603796553159474326252422212371569223786094164379638701399086262070681322527158542132436981415843200346220633963927920859225673238536019930695308024310725368241910257303027229265633183653854664304487954839632074001332019583839863609331769110082931337100516341068864166088110232237629407698456701097718646074299158580553760933585640558693921265433213948415200444110353079971634600339540706237767472295566476267008098875606695277900653659314028661704018990802777230597772757021795019637473674611249542561451716670072581510023874921388028441857242598840385688339068911009767679925457411542661 + + + 17464807099253535058120684293577759763342842266364393828679183207585227051269857876474440876988750693465152400814065561986950630840748714250323143549081279657101352274677085273313153998944037261772701771064133603366320978652780316435207554290620572283916016887451193740561976848944853586603443319919093258172788228221282852332296088063843877597129027695087862007214883168497418482602702201312525957169185067786308600383856951857116547885684919049157638822565217052722150354501714395784220987114283391871950344254728139469300527647134228683329985482316020561576648656541351314151351887788544576266292977722718094006694 + + + 17452551996377684441097715714298667105780041689793157412060073309129738403898727842095792430125700131251041480778348532692155755450452527613070275968605469345951100605335501129697624412927433462191382829392127070896329686674351504665707287438903600617270113614328256028896249605401772425335626252737538596499800738831577264395450486930398496345126389875266997190571518732612426506612830859897031852387455333027185777219771971303959081480160136575068725319041210176916505206664527694410509477647313436779276601478441603151466071605417122107751391643539496748192305351842727822971419270558287610488288836465226902719562 + + + 1664602354687459364296980985099586480858209995833240583241369649476973002604208099079162553820122026411725155164471964310256991654453125885280038377664229459336800856132400655055587669999735622295649115613127113004120947829852698958103073355679629881662455569026770495158230447578477828878144068463364465418799585655000999538296052907495915263406443441504661978583157301261672078018775938869937011681363714623632230577772232645754982753053643057543903375122910586574950144023992058190060744776367204371181993760707962849588429755091078054844499690262807321224088676999594675005838006474829462946700264724952695776168 + + + 1342953056831159078788050719098148128506534868983482517366455184509908528671097538902520340148073833705998319414302862843796549596009358470216267316671735559038688267113766744372298133739005310663262244649440782410492318370261540721279807605086411527995326155918391229636960588991142907264163109670501799707963403317538352211217931559275723076043407558877646230843551414159538887834843767653100515685779022773312675097016105979928420174203138363594203556158112651169848224300121347614452963368617073984383212442868915296311609062199513291576762890024597726156271605636861493013111811961462284819078012227885116048679 + + + 6719697271048380233066522318214620947472437259571229445778142025068408856664242644978506410974643002532105983836286887159453258749733592883376413980900378210469827045618958431484491067097178154935005648486019112568740731998379147755166867873579450812109832592968495316107756886907854664996692360877435832853026088731479105839371316403081488294363470940513670245454585972329561477782585868062688826957794515558625420489181599204018515968817454427962264289783233135761475495255431394941925642104153418590662288208279765298943127075285264502320359359555952793440146866664380703389126612737875762304856603753007801459876 + + + 986454627682012984788789954311479744298009259228408260212178098110391415136023496559221872182352477556331269756296221802890147187771580529612731591117580891999315755822831270481236276770805236743462397540991922701294258111292008831767596618608689253591233388616643266882727879757569197051991724837681771075724088103598304544111115046384333881612156830047637773150585750875137523536329591141088488760352396780047756770221728913042812513195250196751991539619115958220511284672438655614878981008537477577044992363583872897926209241011506571612904096419804056629021187025401269845695548361578541604429383913446134391346 + + + 235336979393867021986620856191215391800113812419460638954218570187290248340687201214257761689954951163802434852549863789666994575602133514369783278783261574052721987171977851639920487811868866049420133937205254520199150055413176988091078925475998713934172510097006210312601784852770127401879420451109257108970650918558392914142299375718329113761197641658696619042306797528000567176229575111594949349812035043479101471649546669388593298147442601252563671363875157499293885488914115573391071248762339753515267938151774332680003888190956520133948618661768414616013983675784674679911732559817266839377256942452464118856 + + + 12863330548896342503112398660875468291353057752498390023889283487950907473823047573908321676812783800327986796027993123055210674375400814146105751772033097631984613389283269302901809316641268772767402943607119553067843033396621024598785196607667291110170453947178258001847817736829328676084884060647743060368820136190128699878644240711707738762981866983069082014831505855272540737595099900079750061991728819579454698349578112241693633983988816108000783950902650358185931244952531700831773285312926208359025728753345373148774264464297984516715540533156444922635351448341490079980372669293129537015872485828176848398429 + + + 17939565203434068503718231634796173179336853528089689264586810006608708036709756030958772702303417034279381842810029720600783477350113503533584795099497013538799635120853627977567545131168784109525786280116345072494512453243417299195440084462580679249462324763904368467473894939972284146129970033407200190758295005129006431568330842439780666824314022289030408314123693572905412806829596092071478665101407056956686190455985793950304534160285182204497968466964889588429189536487878734191718449549124968818341144000127115909987990803099474902029347054226790720491486212200016141099232481159538719073302086294818632010983 + + + 11505767458081984080162057187890085993561565918437097410215489013532983645671227795249153110417333119673641951160350625252233544504637935290576739277775645308621796088135530817153414671122518459245152624610555450135694673241044416207771180767369909345254561119779904117120062212755429679141825006126195176435393924380673642341985095909571165454456119247350125229100226919981517426049876752894493111059686497132676031922785331335529998644064820460111940479561645279481294773906149388176042557286871866379568161533322381565951679826411559738322839450329331864903892126954211634113743127431766803285569974767872534401920 + + + 681726307077451758768911639602536150913056564261492277491150809871219302117069057057806164365046026453187581447098350693942955940971004018271826831900281762025926367854253363214856083225718346556204375124431842178037742089633949271616948412427883153623371682968296619519345752929957622161882329386186723380222244836368536880442254686513348507042661156780726080967833746411661303908248705687989983306515807157972747400917029970776659850588428968834954210284711444839449965597074734302162746845585445554393442526158679968897045342336704074946371926401673813678911793516045517761278901879632958506787227136261994923567 + + + 12001246162693891290148672733319734495930927343779142200729646789900989533702586415071195507113898517149793170930909720693754241464541961341909291763738843599819484207909764634380674300451460319687401831091991255546667998818757749728961166772565645157798503283309454892784806427876881309535194584311420058387878530345845281175722525912675689686490968374333596121428894991036109871952192759305469781192979551961934249443932871638191778518206110532638712661855340205431730215532035072955467495736557466894044631449143229525405226874954988386051167718359688677911424920789865009360334797683638242632644594201677626709789 + + + 11174184398152245168540239991788005534382270137363628868641118794855179120280147720362154052208930082826516138229431058801223655785653115649533458809035440961256725397660987737242240237987863028426358091344640764557927789397436794463988375261353556106302803975281009409304933743957250561030811733445746101070166660231389159215833022039855870273371037429314019165746387073749221702691079558650457728788056700678892215520145707693540619931548417190919385251940983261804182737040644720329157842594020816904705006089235522349720109153916697028513930376481183806189777765326277895119294312338541343101729533714595832155599 + + + 5722344079056641703912436074175427526404907639333380942252182889998134187184193302754314466691380903533141359927845063980282753979905921754917557235195600685237516769872243505165534867207182325280323279297226992966247150371126617629001397137271113309053307919570911015042521428732294938006763898565280662332079449118811725283668898640227012319594914799804486446335372543197456992956015870533453331784796456236181969444150175757439823956239427312545119609043470548876472800544485104275600337093167166351535533929070742995163507000851000936028697239064113075210522710690729617525123818502862038790345194588881597205740 + + + 11138163576780953730828061268860873125437333695196251046696185206708867269399965813690999494557911838217526387594086459898838599053870646341177421035854001688200083439592481270310264891739857731189972712598605975460278634562374521554735774480587335479626349456211294043461915062267950080751519406058421426967829936455265307994156278752909189176663601475416110087698856144545523044460854305561715963739640403724118768319748139817275977786112258898861954509381714997967950345137262637798152766801966769518711665609940372869232075548439818903033068703552676168600378511384867397970127873323865597324692526847378635630636 + + + 11284037056933756732048342376342034571148681786837623731787303543378377385271710615372032728545444736544428357292395278458464368777879697058795821625065268502078150419111120422121795280286929268783430215324744340966395689149084964078598643106445984651536506671735645268028219099866279050093730919356674314895331613571485864357325739420490153869534806786852632536912210700848891920130048109831379126294086136209052999644413988444697421248105829052323441689798154739972468727690543231214295855407875313459030573660730373495784362433220497831839297924595581224475938093588383009164741595241771076152127469678965077707864 + + + 15974332904279875583249563350339491510139548028647387219368300257723605131726501971192142657122254328180294537671779521355674575402381855670442150458037996352226163768645231479077726130509529121747259814102535690069671109159300256297956141485081504518494438343467668747892112196403681674814429049449143265183573981230631323064813249197111129622627838339667143416052075579839208946509103672147153333861646149674971547959593169866816195982808151617598164165386150095580355791446653423392212758114997568100746680339813430342802265704829934726117757049013058300701776669776319967465359458475846475144856532088395076147120 + + + 481069099750633283209391305321487646564707709391659641719219445308283247030450523445037191300797541155670530677618230564569498557717644001975747767773606810822933296756026664029616588328895147647712351028580206612300241810968659202977040018243237058162456302169629834749571820506030638825920474448146775686384462593523477324090781453438529415839061668889492674374562032702417868599630607854245974031319901150510273480307559367617556727628835061417706106665828646848741313765816538610886853357677034472264508832692645968966869402365753363198925976569811248343217451090804014417934814973113442885346925671350535948994 + + + 4600176867494654945360557669929267736342801202974157391650702878305144702775296809858589268138276048247245595950371839546920160428867897923429417248768146214844370896332683737863034846137261188211104136416337268106133810818701075811681179261611312709802616420687623636364734233544592006625654784560944312064537030576974453687058329775993036697704834380776296397750746542878879204753645409882278325816077430674929045202034056732780166462503563464808899666340685421122338561056530918508353433056988537848707480248904988147603872652224818206201957417911725898203641948853399047920830737014407975565008790072911214254218 + + + 11023754489119226210721298518191130813784554077522085452624728396360522013796470756880805206381542306952443549196958738827649954694216259848022799868176515490868095077684066424732125164249764376354974904061351435053071914145107876221293347323537060404376631780043940092899495341567642255767591238032712422469106374807800373551519947011729953687129403360378655593804513076879016469097822122149185842664019476540583245022740686536542150540616365932007953330633607371779543549034403310603359993629646318817378472417810368679016668095606297086298453623786694256329121769868829576429253136508846908728425363210601859069131 + + + 563807567850933359954911907255868444083566621419215750824799792281072974242301741498737100486845271855775563388161478732587810895518554636626001884224168137726406448998740584713554849634695813427177052934296156988729190962324965505179536991447800632009098059585630814215571231597766739159891703352009709281175704732532420050864138312317890730052302086190293669877860846194244760466930499549030798528932139280788575944346285759498208155105804731823596791333331627776853185738123757158340699695915544252664816823118453644100215669601824028581513191846337156886805594187075576512382863668119414352982264641838469831833 + + + 12068029647561915014195609193151650032397978006511502647609362679577328763851040612339751819691446823310385356089618182068977142268139052164927189365356693835204144475982575144032719472815280512714613265056747928934937159450160398061668507280879031631344394080279155893392435003199557181275466746583242184945847128726133468448579582579457289567107070145177377690867906551343181304388992714811250477121727662662991358637726103930698812847644136150257168309186972156218420031898201797580029663308556762549172195136706540883317971155379090831684201271525585105290899448183193421966585555526238907871229104830624523619805 + + + 12469935923643755437804275205948250350077022695859239691092929437726696345172428044134609597488318326706856426981504739779910449247173802565018048105616348115354356875624077053051378022374478302013519650738546514953902625067385799654150209563934614556061569040408099133274157714060724037983234883053515739139218562698826719712658529486851846277951946247160028030773974114035893631910093018543549692247795515227218047200114593134462747014569752959323038432928446842430858020704228075051243274919999346268045997482779623006922053781254508353135038737711729587778368457275846835158960420668794978840480583459243974161087 + + + 1064290552280937329829217614198154109761003368427320590632397130974824825552304633673051511497639338516935642139160819449914767370390180560989429655216536406315902567061828349856915240732144151554620422719952002321106301492184395291075854695357402049592054699858330373258940439975646848992158799964067403080538336672514431514419693088766288309825993002466923105525727821946556380541388852823721310508841959247204634725921991917081946886406444010662007139636100872704524346213223862728318201200253092048293739301889590327060023417761233211284137150473856934647757838868629528263387049114502271069324725829344274975053 + + + 9768980964318005236959566650860796800885434344195712899016239114872018401793948742461344497631503661185060245457386132005507956458859010508430045169960587077106355718054730569147696623678691332120135937221843799188860517593585678770274703747649274275824275230450862270618557924833951114611162458849336111435037838724303159547922966237159065942101080673069098513983685784550174515778557702433625116999378696690656301761869933695720456504818480703630836003247012401289122896695462434534092529774757775265980182145803259027671780528542535351078520515351248201543219231241434209377874972641828998579156676477397506748269 + + + 14418535889355190097864825359719759882842941967947398545282203007480810565914755302286278135057579449111265532125208840890092870314378656405241621763286985026470067823521906426583842128024911518934983476223178850632186494107306060933387845435173372333374817200629888409191105187170992675934295867758290370535949032494106914309568960675721624453632672546988507110737299969754720040296259099437203097567427505213389738272206468947320799130133036996587966224041033206320399310178871535118698218606017651649676374708051758080450072216177922481229457609646230523216296126887859650364752443171318627410913940388115432765297 + + + 16293054858592425630429596688229695949140927478070818935680809814928593043661985298746470935296807373729566852683484849254277492558840620430726334060559932239872630167294453081057426086410713030112895064672968715873312488076814390047638474350120042020222271030891747306049487313297857102429527723254931677859101443832902323519835669298269745548722546089255708396401076870344630623531005778311140331893030939018522610161797059862209961778462949006769616643029724764312576721904082350344468196870609000381306514631227566365546855201595570012065261728272614904317572790469545787928190522275659716647660905992576992701444 + + + 17444841278174324280496743689513618270400732004763482042099078671625171158762388772930576410770107620345018163780911142074863065422261461883152814409823513251641774750274273493352541892828847892759994628282523729745701995357192323913116345709966427604002245107521819368085252416429533532755235126457463180065455987833900552366677703450077814234071980253103220165340800205867534781248259501041616628655178508630979642957566275401509293309439835380029804156239509792551465428322207554566186527307504986917775488963952953702992783805502311985266299566585844775171364004083422503265288387582677547635156494580781619599677 + + + 3208554896662333152060012951862103605010333721155655648517946677904036107816114756721817302538104363975214859679345353886065307786651167364086417986889518978309600716230350501923919944724524574143450665990468634053762232289490655381496325364259065188730419626816151371337080911528813830402794077134779698134748463611957766716472498337791786856284637891767941632650540192221428067945771189608105634743218742553758771710137313800761641373288569729869124198938096903580989865849170404100496430523621758127220049560769040903221623777942684841216047944693990214177360364118656237959927491792144014357753502129661832246185 + + + 17706599342602841896413030154655966896083533253184684326439667172151238503605998880702586077910161161004876712269647194311705998426542975024301240034229494069121948292914888028424392851515559254484173600759048850783721620459131964224717573781469607136070846422188022656332503152032836428165943889410386855570146597868949928003581447591394358186927486503477277156331810942556091646248267972293405503800254412835631064372264330056778640888442658684802940105175728976073016875829878069512128798023695354582798939981383783410609094181977145873130982238120680900682204185842814093899622484273813610033749181909497086608660 + + + 3482554430319243981214484098114772156539455541561829367904528079428391862493374184486401739945946280422084210525284531738420475267553337830237096306697544827441447695875268041481890469503207102663183674593920659320426926326654699823556040088595123088672801196167419696743000264935323179195298416514127913593376836460748405374877263771285703445552536537920302928257922292659699613737191861356789060595105729983452402292585709455847734011469002020406934434366269129853004262352317343147431670402330512470050640892917196983645784064633545088968788960769091907803949109099933625751418936894528331398274106335345487306543 + + + 10933898650356274425048390226956123923784538709127561629978026055187448272773567222025992697974153043644764017501101969400670520655622787502295306722860529689574809847976108546025156151023985426759232209801486697146820265275125048362776357772903801340168937258537192528269078833626365987576167423498667344176350009811287999119703991797668139627107496752314661632466294687389271687546750249747879722058702030620539548754113131493855210354758101718632364972649226271141575718421233796101479021279907000068944493051150884983732952699769919377824326718232853632859954107676227343140990626209049824165109313593110850413472 + + + 11579546984604029889605568929623513753023585963360205149125026099490507880539083936014054928353503607436102041575083712514457778925311746131937265382278731230087868582116175174341738760160911800371039877039376822449587307864396404216406244930872555694383237664759155713264362017049372567297061360090943381310186526932461420661042458093538029344587156792035547187714986958432103683613105064101873475021441072643366569331273381686342579860949772166963135376807012251113067347536193541948729287698886392116766482855554054927962143217078125621712851159603917511353418347292298040565348152118804082219450359527714804713644 + + + 3549306414514195355819588304988267458638275730592457687953316590366613278988778318668501179168084753469144529246318724537159581784378739333215528840257075609278561371899933366953178094460040004829633190468976159396156254951142150225013322393411431976912533418341494037369189208928772441553811983986581281637531746735297178279648381564823826399940456799171596666393781796726598462139729287063524148649290987395876003068610070397619042963002808261746098159361632015765641437477270103871450739611477776272332941398281702554614539180974706653124059594859915356415924042471051095374458977578148513393732677371653827139184 + + + 16029126673054643598715363405418694027762953112785452379515544331173593968420526630698302869014411499546508632812608709797673393032310316566360841449534434496758610634471000592980613382389394117112208655017737568262713047451267012869723002878363721772930644279819203107765710725385038064860143873488719166907406633671234923780791647242066301013389494319333681726813261069919530330992606574418848122851244610544041370983283632452706709532886048984605652317160975198477660905436057613247402462683337342064886458251158176589614359165321948175615140257655840245485774749399268284248694954665359229347452251549519010859614 + + + 12929005714210405984262596215308356196429166594505458817579279018723935389329039135743626442919585382939069076112861988905813591592521598652191305189943916913944195152354987029335063026973421031744847963966592086152765045878608628591595434085370232198100729312803712052703032129532207080208343682873222522066280965848046648313135264960814698876830209814019862190506495624008146389292307800646770260923480859523409592636185053487461295062171505805878806373806486626643026382818729744448623167974536762904084446688349853725166724679155430641518981490955443876618485340543087214873767366873849360032306530005194996223253 + + + 9370603944190962513052390872784340209814652564910590585016621024930633994560253752749838150943176740321681018774492972997236967463888688866808489972327183009307633439936344268609635984206617371543791771675701670465870753319588037560084062874447810545487024884229544393817275435483832665643919757004383426842858231604797920366156355079558633744635646774122540724992625029671383388568195979465623553107540112795103217163952571250057378448037978717179842205238952267732935851102657324674726262591873568497866056821001905297203471891765499437457018225333403123475743813940003955040361709488408121757976618829138861986352 + + + 6491076999000433958803675719567523275628905114353095238568971171711424477486788784751442020400413543820399025700242047957701518650805306215638280816005708525634325204576466609031481468485108574392512662031824797491801603386559112111793422076209097541554285705601189036493539275241331546877442255428024518832125893022297476542791741278175619428257616109646550633335754762709229619815377015316850245965935568438102225354133224082884994822261575093323528070044236185388989567422071986805379602453725337043151922117409451387509800427404841653747479257284494554703849132326598525011581954631375711800553252510219946542175 + + + 11631021025453465668525423608261775649793965543870852247320891818117637193403210400667375943657134434763830371597722093096328054872130932660553364638316282572685297728121498758592604986004686523542003131773481702086575633346520654271355823559067150393451653849897781761734856900333068284551577874800104373725877369858882472632457327711276465760223459926053927976052220589597457158285127919554301415934785036024115403335038369905583815761552190460584631076505670713392963444298403984925237803718707686332463753711910752311531300634881062626286338395321082670364912859509585073168251141196898433478387102896065715355734 + + + 12727692622824474166926141011449756368591056287803482482454262179281258816625067266348903108300970499824180174695932973242777723622435835148714155429318805342678945420862814885126092326100010640709030286139291920340234004333057803010605718494795795436072485596928358456318972121659225482981649698920852197733917720634905241894729298881322994266081229652474177436563506510802885288147887899642969035107755221571001614347377723692667617549371217493355071166899208977177523416329017174111649387972572549320590721675524998495570809037938541791078254009688257142902654795849706962150786394551909033192812503537180038223103 + + + 3338278986448568137830614168626062157179777144987579471000935011926850345029484173786167368466971398433166477251118272408026256738570184326257220716957387223657287147517924730900811395775933139243868648807684107478924374007051396155444734841431642403643353988647613350164386851487084510345751731347649664727478590593186878931615248899473970818870945127203793934338421120231075247964565255025196233792861590104765888297385951445337427716076043401623143164815408065795824123902765414823683908655849513580513757671120515113799560837801628802944245342095520418525430404300605192187424073705554627849700894053444814342397 + + + 11965744569911305520195665169911391433972201115961644243696114621313738842254245324772547272257148643358768348973577625900628375126751410525023371945849015693827999316713461201747525400007629826261208576096906850483298025332786651339594419468075325640977889558609818109924493280627119508435899847635826761313646839510109747571932451925594138450893186737631159796519135334024632299705740393634873013209360201057798008501469808166768845154007593429129597976701173414455964869672040470773275661552706784651042379657729029261217169965994219949783450188475712106582006774756755440645369373842731599752447248784436448099103 + + + 2715626522026390729652729384646078923523012494772497861795432640919278723534539675971102865805889698920686914952254036290487177652180516666693145404668786343682734939257344463508697387900184621793418160023995892090690846149626378359396523563962660557471085144283832058792799114148354349367444675457681895976219368288992835832164247249169176456260515663682527629762534355133714529752950324272744709631728543291523836840676726142392052130664727244230997711830632117905794756410733410237672296135106805336244092969419878343405231490634758018737391901017226776919457934269748319629913789056269946684409190105759441197156 + + + 13663864137432088262299491610701188773548831234244457399298271569019101334039459914757284500805692625790653625761279154901303800458314951440208852743817486611908642399407493654411898234397679508590438212171877906882348450139841965686071347145572999740708705415777871261514246991547183956381859729836703360712137114440365595084928227736574787430989419458180350635496423680012403295259710356537618314489986544330194890299333613419698158901922723562628144474922837377901128540233956607477792594334230183634996141445108428137806205593015620391129905238460623606595098852082479451171849372437255609065786994813207748962024 + + + 10999478317492576444915825065778262711352726319975296465187435582554962229747018709621265124911045438372201084181300961862982113668158350179988574507735374741496568727885634419316140030783997620378054372408785208156695758926868025311842194916639683888969399380610808701655547946956473582421007597085846804716164082723145536069257490947750751027814761603228914430833808151681357961633905510642611174031876176235360498419364329228785814995308145754737179527508722409737706341337475680013303943173439623541454031226754094486716616243021511177634318056462237039986887604035873878441780543464704503403578587849535793191786 + + + 17379153416712835028005960965629701583992171618182695710224226072571805413044059719475748361050764675113703507751643914313220553588881033754613710341508371827140343954561160551083946004609795186988560748067429837169725195680583395969055745328642598666865380268816656795844678497072056769517316858373867943936428707397511215853983448378289235583376418246590985032979127284300102051475986378294552968262294775450592808561386218295756906091313601236794879460964538653663115859684503328415515906260298162246309600946266273466670356388016097279594633596233537936306773521125603102756757875588571856785608814582150279686132 + + + 17120791425368517941451404718448503099991399942104824044928911803374723627990368786088492061752270469885245257510626465559482414669776340432327155889246515150117208900571670887240294050761026958027798961286633894263525881555227937535689197402577595144815404139048287187682816757210067097220468860577807760171509696732367895472576896627791871463849880740202939607958871703894120960349442424246779282399355141019894467152734755225857085223150207474175796535078927237077442229845570796767010221071890276093426949588371499592629251801586068813923494261861710059946120557255470753806663782785522544265654785106817870406908 + + + 16030115752151108360827443611112128306341076179714990475377683213037891904549852636539527814357484535975482611961176355732601002592950059244420266306415270330012000673012306277418897666766543943809733692288368936849429773077728987121432123624350007172180849612641921057897809171983665904920583695576954593118621278715968063925071381707368522061702815151328208017532666530741768718144952411832190153756975402246483079732686260135832933320013282151376230286009656139277109988297063404457722928135926384488910941630554411104547103967816621909248941768972610168476149716418034386204380367545291999006548394454522252760378 + + + 6095071812720473169846109830580198712874778517000154750346524855890141184059584296925177263098041811994321348353909164481584302487036433486800663552432822269721808213771906543630211531068887999112242285089883314731379053579203724174350060243202251775869710915401536446857225281465259606888163608298186228722262511611450075559110373468295374628575353858172252349745433797122989404480156915588390136411968998093249705347030623874532803795848268312221052460773706462971364903725963914379129787368092794435188713403626891630737661057356147622252823040224778651731634995579514371412032906892071512972711288509595861276377 + + + 11925742452671361821929410045858589098987131384596390020040660472931185477514052491350695428071617775293841838705890106422282400322184979622401917845460083865664412553738677535819758059801064930122454863723769284493763283302551134703665303835741264989870258833388545047836809488963477155696613472537793150206858548104201750908964472853454196568769579313578060817971925101374392876615116298086103969373435495396563615302405357425795564116852760058834174060904055390381867596066485072894615676559377827876249446548462305113758698196647436776172903911925250956818737458328698372075199498052111831373443386102900467142943 + + + 16511091675681099466459804676614521160000638294827220421629903625735234013752976529078254928159991892236916534434505675726716001234882712335365807432303001321406266057756615210972487509021127282283233414016242097640963873718750320071703787277896733410762531215354584038746366094722359738537296795899084373795482448985869815402916469575593693555254698735448542371402625347682451586148364829576481426716389506810873564850011612354457619437634575252252298743904477777211682079635874780170841951253563076342609969601533349525906002454591045745454031285457721251487220442997798276454039643612559918433710908571628618723413 + + + 1913806159173173469495401915021461153003251947609974636529376865417870145711234195343007146070357016757729314158436653107915119403783262933219032860014679929636496613482955280235440404790382885081036705893605605313570045431648153098150502206261771374618502080936428261873424988212759027068843386179937806344800522541229760281588975824070568537128014569678458888786136716344718288701862897723388201532437540951883107443319171925427830516516163833207110904160337893442549259763432031499174262247323428957505524484462002675391213490274653381371205307253703868271849491075190808350158216516404655195789099146522540271122 + + + 12245227248319840470563030262279462401706474515102802947783827781022276058941423824477979878513294317047003853527849223279932774784719227695712489751800375544934750560194526894567273723300875433775419809528340607940658290812653203496062881037831271921760790988240906909744297801051635735808256524597102095127524139677969806948809397788849702102582132925520304620895195251901276964335200206298383158066023999985975897089673170250721811761837224367450742930876367903878644286841214294740115455211583429918737662481321201010813106943813872449371066606074038243947157350991967559235028652968414712137924821236096917135604 + + + 479458025359084071152132841134761630138606162652701482743110314609341490971592938978159626166769955798038410971292352128625018813998749652201382640548691233385111186178668426486942884155365248890247638493444475704365485229013893501201661997509813428393396213853686730159968063896623684315881379129042752849923661725692247045644939003632636441529996391550011696204307786480193730500280997691321551297144038017120315274645123235439806745839740219342959742763806421335001825626283369650710205452686342955279146297966095298848384422640378437616486880891852132582511210191794716859308423385058622634126100811401093675177 + + + 12786914431443669269897309148887511789506219038855016501854409543667080111227294496848184526379431805742103056489569589890801430197443206406559852725433817199496046655178224915101054204108267623559348931998090571427037188056148689559926128167036386636225496889785521414081148982101861915941574180179434758636764159423251776075545460911345690577241073132610091552477407163766943711987560037382275160515514375848104843164811413981055044301028686890385482074250807182998693134037764459108438106491197173787903960383089723118733299730688775434395496772520003867205116500361801840358093678100897210415076724681996165399390 + + + 8558257155469203292219877434987212978274255463875743226981449065571912861621389553538733159468966488640066088981455616165774597794139252256044906463960714403757880567824706504771613508224636508531614365499696769725604084872337091945549140370495643455588679410542368013064234715005471498386348169127451829171452282140806813432825394054766489540846831739445345277955371685583286964141185129213418073151153306905368724518824649209852111326441449844784542781486739669127142556358448648373970256308602288521009182067422303241056053751616101453384222348868861325021846294575389045216850685430357787130238083247191088699671 + + + 2271418392116068682320005268035595031632708899136167942659124237032857327496932428690456972115086261632093631972458899469086687481197493721612662472988882088606081815454936247236496095400406315252776880288319066086509130222141558113238781626299749902862375723114705366248061856239720222579278207525598503375123905159227474413903648746231565898234695664446555788352785412586680119571497116095789822225857135373732988887334269966809554665852222871425876558173107126584925802873082771692776628628239079629087909514213258706721688240218958265737098471228778356929869565904526813172328683752921751085043736477553405360163 + + + 3892593932448033355524947582826546083933695207485041429569889244095789698224732219728333171926474433969169465864679459217695463073863125528581248495846354917665295084782454570112162516345404029295796566019420990204963522596866840926489397903011591773548113935413320042823258686151235654650979977875109385350336289317594412084516504752796955585988152817131873448713186940581956254003971468136025807569038641159843869659255933735655256004781774637787303059370658965943394811795827892712885048941181950161082059696791605948344652800581399286670610272802825994802829928282408345706339291709274291375687680455403031886052 + + + 1625584413383636193457479872452499403011570682324046967071854656998958822803435161821802943811756188276934639227600419587544148811847605144152884619248500435439261005006334422674423171006727124020557682439634404913873680651818337181642726740716060855558161333722954291866776275084822437391325682197526074184280703732767675425836623081972511742468161963332169104122853793572337185798247283813103593447299666486907032831662003423212259206847260409070923612901230970306396364611306875032633480449886748651890394021247843974328940688262827517680640451416028243289633020248937264231216188874668746312670509869200821282196 + + + 1326561828813418793764062078373681108349595866821874656292365246728019727068757119030092381352533260170420450208938625176810445788626255878962130363123105993589358218916426812309593099574566104746562545882899916147613503393356273243970898502772296846263174975220238677786762261831365445370816385989168897338176430654273032468993574882032936722808150812201280018068461576903188691102577432296993767313601612385592211289046275812547997358107146130986475527092581841856788301437445550061995230356917034960809059885915371578257973693230006787626092002458836622761366180115168685121091724986417630397119814883830082414784 + + + 5702837466673496117999896457404461078552737150200376827415937531177325978040860023315367911743320899090831599566398396697401277892578665503711904226082671921697721964970545264953360032573560668377319464763001497027838627616374394661892220533278737521876999696627879699714527520815561772509503374324943819874629788743658431054374503490527098809848619978428678459902520963279974017153404771458311610598930294578704906995805754615723524354319687355107731120112058846293547248332857790269285042154410566411661090459546035207261327246644739058896540719262979365715569276955685686468565183839592419355784955330230365592091 + + + 2500949220359908932116693260523406574038852225751730738335027110814217986462511840883289122083248931184786259799645501804894085964579284994369391092512394287777594923281399018410653612943074988103037182176861898328630821403289887553913977408122712534771768350880912659675089114454564875045000228564124578317157703452268892755675654792692872449511383704865115715340060242786366222825467434772861239161535733913585948918595128688033900056075493779695292673262980127173974437748463948807550397847642724185299323817577259360499426539830003052699688570467169341036750309057296873684037464810321849114124590483289572435728 + + + 8147345044408111850220356386274038936033363577912908767837852441617956047040368971833429795908371288587629276521584392794473359885952178509670817784604704978994334456980518397810774618780243373320736568608801421834748551074478564870505190617337145626400226791441131116766679747265460532372676749504016902525277279712586987018700463007505156670876384406621234724103405422434977812675519439312944341656865317132835206692237500449677694974747935125792997453757190694490994364865059476141600382214620189068630201361119423014882092030560327272617839878274821721798610440261750482587521728854313811801348010157065270005456 + + + 2146180709451416247516413928581344310729864962940450110044674222848106242341033478856165705091610821846622873381595966354356205729350343295739191423281978332852391295712748070092272160409226408452202798019805186912016867820500002691738777383098491610326232534923025885615210126886331525719298573927715819336934946317372979453098284843017295756309534028906988833635329918965059004594782739803044635468316580733269548924006424183842452350234550753375321343801482340772409512682550932071735901061406876553852452509023561221943528135447100974818096426020692165587392292395472600813458308429337704593469123315088354813230 + + + 2376997376634648871199378730069434499691620060910241916390626113330931850599862878356114213619696663967041375668483151575576244795694795933171800509329211412524669585870684149280526649050506177254915203393858532310389023288895175064020246977726263044267976019667651236700267255270847837952973736523219486731588006534569529727047514091466965385711645766474535102269380193277631775609659618308193010700829074211492980380736434707441819673575413524483055581276835837734889963295549721600858892845604289787497693255293661091080696128791156758383874907889312997782912441914043844212555070170872930076946940762684814073437 + + + 9800218277668630453505219095550877762879946615041685028287716958077448105858521713768788207342349026411950862290022853595650892130633857310624606029486102264277313392801050432917151118703145408885066954940727964583520705647302792984026505687405308631146531061537727789875145381512504931750352895486437558831656326557354473456578419118448615842859976055412952299853663204046856243058337490725079228018529425276575070837098439963691570666503415415052140133891445911783182306659937124928325451610350377619310157832833258933136676290341134545834389899967463249936335473154417475008807349244471158951619028409606570983719 + + + 3381529936950186553939214348282217027544393145848718952727736754955291289744514151250346681972555394644270211046862393082618310509750906825336568444078852241848116470076725773986151210492427760781107079587525701896848533553665952812142663112415405628517210893137508935645302024566274179501490579765518690818495777273695503490429058334357383235408205895446894793227090325220976367042182896346685526054754038292516401255946655912136871487725981865366836353623051904513556672300632356265242451289295278516671273653964605564107410850965836018753868592549349585931467406871222450456419578935127499862269795255463058772169 + + + 12659939430474812935581140197957905027767994478420946107482104605683863844224183197090502277923364379875304450859220889754908129348955178893710024200771727270703020350768380015646113047978234242600267714071904674108290292924756114121175121953706849106186043521699133298184077601113544802008103476296113863823134732032368264775646633118094062158513129775580273448502963093461190288527599592978563599565840575666036343864716932567041745626600479371614454202349223289061088660351421725976441018257029966699671545081267837307499470259954544481033371254816248113366488829638293716063572029616123288134984458448693302500705 + + + 10084189327789182267463539454274191432869310937368822771508463898498327886678250365323317563460519208054734091241770136544246945187030361447785780694465264134999903963040079379102595290075775493090429970362474349670849710080459537522078597069071508122029029898084154708362551460943608657110293861112112583273470303821362107429356508320214796010893338852118230733541369495191539673890416098235568921863109641853939865238394919331709037287171041640037740689120526538570449877432180416640720923517935899664218178212543949880778899535849442268618332495926508351939077088781366657468861007618341410822246650769543605627356 + + + 6092453129344347730159339690973655966910444183794968359583694775090663488149616503757432362924354900906338382032123160349691097862813232353419930507170304733672138256164671166840780646821881464924773279154007017523489561622764204176810027904504109833469704234926388186070861849546753291599299016880924682846328823776191637352092201986969093292672846226527528820512935864943963887370172827651020772709312152697283788894124333333967797836986510092029640277374448606177176967673812912217644664172913885525342296678769265428177574549086211515587955627271813613743098112550668569539909917746152165852568353499079071238090 + + + 2797666756597538797733311045970870028337978661354650892778041412651911004629411497179498787510950682122670645067242916027622487751201131495401054992775530103825230181796208128426742787400953354575735342711516275706590746545134310937542440717793129231672045809270870926538905262530845422264145567261697110347848467560735843247891363508883961387339885631516117806481934971971252174804898237660608619507366715222210055577056821123380672011227977568648125214701940556406471523130693837744231455299327380239274325791170854517195193147138066157779519160518168370807384260704782963228774172503293307569524665957681859219861 + + + 14829874805273125235974015145145486008116107025856782751044824742836009462429232781728108106777464427858634119199270147987492916811768223746936764822145243867431776111277811904645246034106053297180837653146461938346931469805791286894222875953927364647484140695418246446030815098760988542955205273157477872315696561289457593007396673366786636541757486024661703227389424997690853271656657488661614216551369991681271237762573393986936124758546906403151378450484348791629181169010068742038869031854402248179189751429863818599915762696006073396504757965508635021290173563171384645464924270562528518379880502157327436942903 + + + 9032086040731855845531009609015416769141767234122839041363205711059188584209035494130681869095849295131033363037896845728883058353404400073374934775262141497568792162577733721799027869003253904957494701258653681875592853807575394854573457719132870764537659061288485388876218342503352578883587143765867423723122853617967582484295594792576004201505427146769249788126450968129614709250807213021944554185246946380742386956588924316590177676055673833990251059446624802393312544879404385332908825164130371061077255355267443094375800918499133796763391810415067793092118418905518910557669377271414463771112488479208063764428 + + + 69026352248069672178148082793190770559819915763841011380753285358391456747697860921111003255468993435906915656287659038044136576126235201324693794282096632978773423826810076500865229588919279007824786411168764088069836148081281828134557801010366113683661862385410198350513639211197527673635618984727561009658029788958833759872830358043624137723728282559261838178333597591803969140242842844673130161433788364570706273136985300390872598722313635413621259027537087357282034557256811907339748696491736037262629589638675366541035132654507807518493205168092046269595629335201784161843976795333112293519438475230618048915 + + + 14747983822091168729872988263891398136402553364538651698447787394881426106375173222359625700393772535757898875388044419891086792884402151296259917591697982420381354308737188705110138547253083295374438400589598766168794095098687686468963035930334427322182727071463293378072295132527057104385199566325780783017208880624108042065165743705574270458160395258262874327890599643283479157969543297836020892328824818642363161974955221572162191835631952080389703500054160894210894330226445865699234197455416238177409211630092588661036126265847532942666720802981707408985426319266357831916642641121772715897275873361934960000672 + + + 2518829770965645253979160579835310744518000604581403356310717194614786175183546061729827988611426123053192276165948401725451979607447544383568104065899291041697210622673859399561905506420069026439655588153090800930810439169533795393852163029128391139773880790015663704413140229688518380709561297115351232200514737577771111178801782940444810445705747109747136073556603428399141345853846649715986170502720049390878000663957925096895478684364142477981047125104345957863920661193344147796877119207981123691191239413234877125489461417715155380051706548770415914387453364919033632216025558270353101116632631041258658773875 + + + 9783743114739385717076338820215788789844281239817137888520613141068262385800688111981019948995287471026099467791468520411755724399157086296843524040129793844019810058880468030354615993329499155169543075172065337342641231531123297111572191472225339204547375593882130593978304883761866282236373271395175192290520664464838344096627334969760242691347000765974866961462638352154016029239177754158553724019662770904607561356418098407476453958531341565351715245263020924939231190911044064786280314533145419195210108298179939005075383395327694855153622427404487812944065709006725968328126693662446007437419650431629230634244 + + + 8599688785004319158421160914996861108213815278499752682052794972433275223954514901372526428473237393592878985913652230114554295680585552157814548415190133764480058660983735991110706885214998277740202301974076026329583113338691741917851686254499421048380616141064725304502436197173424158867658125708633388535636588082586776564320245940871653709073864454323831823350645148215141306918542837428440581324758939165468372480494280482357430135721208276621133946455209406572055009782940835912379428452427855370633533718660411914937288940875519681895633978365764010387250340239707979065224194999786875200158562874968644419649 + + + 10907558381246250767836339482165054453722245163140576753257624211364560470900047400870337835660591227790176185887724217435752883245981479726068161953088893583917879680979608040150946256575990334251272087553996822527080363127338583500063415764791219569626042335197876375941284486667499030559038508420842841301395409063234694391888087891397907410572701246975021166695248612607561985517989412318371335821342227973740302886022210519951746050651446185636729513604257191534106213425575221504314140173643438384506281704903158745189327078047263441981881619179307404573128661515579178572338010305323152079229903089193090220430 + + + 6869859813852575752388701561696004669383949484093386167721427238580690593188934652166139562479401218586692453986495519791644484247406517939703293124503016784474192696214799532297545748247776859089118046155381996095113158870748989067549512904605045933208487012099298797458729000364618046347020937780379032141036044596086027949969394258806213258573903932005021477654283965104877803711479785216010060250773966844907381928873709262460592936265641129526869143441373072542776747275756296317850646952901099792960767949019570531970153243860581728402549947556158119953818305345382472282893312753556161734493286618597532124086 + + + 9712846005478840712734510756517034832682264082534284682892342802265992172930100707907080568163297617980654028344708838594733637760261359433414364432532278121197970082642000301846990269866118304955417597674359344414073574599937063504224668533341804703446218546947573053146332878790753270706265456874262374742337903883369678951014429295306023079875715610111947803420290463997004656534272882172146187783327477448218051815835769085510733712817070106946391523344753590049580506768578392686932214335493364056397471516506665169131128597363161675531931423250948958724541396747449870883667593944910285216508396620790507962983 + + + 1995545125143141397862385307633039403363710459737504854841181230247196973076710790903260330737723958492939448605747331394371533519110414800843358741000065256773546392266789666057939627822265955288377798302187774850374488752238833454746573618336139019434495717536526888910798016753288188567961260126189730315681440144899609925771803671885068605223318500225859106985128249883672947839582410604814416498412317728913379302302034174165892579078509270141892232020820264373338530527901984100348004350131290606291886863190794821335123129566859871761768797330161261740026902486484972315423044492054929337866343116449680448782 + + + 13507309905339704626602808102316887988028678790586825591120600377243829131844853160290551260969331331199871689900940090210661429171151666489546271903878798168876191093610846047059896337546650691527647511432123738477677128406609360040146742654074750789280832907295564539866750113755933740973303594041858876455319006740093624688571362947226757835317347897712854016505275960142001093657792100938114572695690511872046975520845573193055898182686701003936732881138378184096276579838866339919779412464822029343888132060978060262335606407912858141124163299898812993583819829795812662082437627149324705183418020547592033636940 + + + 1676386448983595895961879779481550709500942311235985723487102093398057132872522533389226079515546617046211490678687392359414391237154748367446321211094761096464688647824716657616892126963207531670586229559936333396192383481780102542602733377848726753105605848910540218716377404960639593497933985157726874548419248525004347427873828470740576825347312832604419915420438966411966028106771719208872179334858115265686061376995217834597135047883189232428216984916006541732338016621612532047737267619912010208933032163613100208991229651832418426071780789531746078680089565912957008359732652506182461937671035442934463518778 + + + 4875927031912309405335928914556528634253915052085448138735907325698115879128145045872991425824209843020069497896605135208160775089027190163437296349058973367505968144943734184875009561176122316305313749481319167287927636661735935028731127760117632741364448436576525780393220582454909927905462853246485772561436925576701476976513222136881183062799638474235487017832434475930743075137925787481950310094774520028436366567591581503258293458663621656939009346901402862228765946423885743565830358686853077579533153799524037279772183027646904883844769928203873176493045621444757019676096836334389525146782371278122721445641 + + + 4532706364556470158090597606820058862936302429094374764828662232142439252459071627800874567604733170022973706155358606299779176864688123757152488265566812846947315532482734866485929027029058065906897348508593704591732729441025705005776195060099759120243978365320199210395481418386003800159264779880592902678273559545608750765740588412221793947601134640209942976218229329179108812386087525973009923612670713689050386897839000268361366702994800291129319678090177227396021686940427138074787386902253454191806722607139770860190514504931790629828164612546538756313476225145814290256072711746478432848632724692874919330327 + + + 7727440918376295669588832308190357064619679763886438348367941057932204367702382495595817907732436948300384748592048746588901357922300461902923045768922316663609810196794849697041701575697305803333603494849775877183941896001270242353802834529468327922486888624205836246273089612048540607490691387192060405694396863200404604494220989145115355301343779116234516874884786695960328424190887162342896260501656217317913423452355583824593468224820134116921792341289149540456990187100625755537138033722609795403551190123930498139463649895419864829717334502537181925225138922977585599147653975697247035518511894835786684235134 + + + 429513469409300004558107395186078012557049475595324951899750191673694941589505138730252965397565156799402299351518125983491246174308694959811127696725223641258953962594104949296830128715223284908071285646486294138644655842848040903467802148134764327105379099903278467798760571061464292461452986354634727086668508512079757657336549209716795895688845794406251968002014475851626492340064679654371082200055076352162535977355618683514297703169533848525093483698809215094899118650321453786323091343289475595168467201998202994391610460047974204083538415667974630440429006735876178738745104374251619394755208321382066355637 + + + 960962183792528506935126939802930149055080563237734677751722406635861260318960623509569903701242478133350477175167527744087957057129895962981682962444342751875051529653893207452919445842333918427306677767382937759728412145404144947039308171478520200060110360744308964025001034241308127352425932818262502430136954508941818739593733814791176459239337170053968879697803945204088772696911739704021372559701626939138790586991849998419287624658203041679880037470723673612907620085661871077685196571058463693167973830046932114233138446971069479467779579474256529041408483309654172705234849535740616046386296810111412213669 + + + 17402414957867172090267793592245921938215231187700198422038874995323990144696393238743429521820293125680885762225696843436864819343391917558672056551354638730139284741420065019553976208827448729572686370447775398259876594168017630784418241187232131369844234363715087880492928297301063069649558273953038704871555061225051199506482125109684453754375274500472604209846015909352578422923428118720780554920495450178321736750364285387474464127768027092632727142446735704563683109177916477365395956498801115612515839997521513851894098780952780111894852310712246638977213046888922833055082526932663697094296711135599823081464 + + + 14543878751722336979027669849914126494797728412632104320212740039323434176499538037881368002178955228104851985524811107833173209663298098072302355867025364611193527722820830519438250698025480172133190711916687324877271502699837043175787597194978187266534628447219143479622742285482104616268584000442012481136799846853138105453841583290271130987501120578556500579248696509748744158439318475286898252285095329693441634265019166080149695231898387590743640275503805065321161593049759492994584923019279481643946398018730171709551163894119495313890659144069033569517391791818766926400655258062356758121153033493061904370741 + + + 12545764862284683606972476626477292394904815980118400054891994754954376540006114191942458704495567501567664877750722057390484299001994188843453601176850844305614456103151497657709030973482245019440015485090432712392521442225503960012541577779556106499799892436808128903106658354994616554488654322263154260939123922869442161661675941405370195217855622028789026861186646526225156584558589672702750220118855943412650748608627259666888123683227491346596031930806913107733886116646736732047491223298049651366316754458012629220443440528019665963728014010710033533965119554225810166419881751299546402758189715946409912596163 + + + 14971616389271969300778511162566208182219519891261134343311728248557309562599542431284671627087990264536653856955060275707382217315685752681577605803127840680625975693168636735534490680948177592616945765910912818075670205118887672899641633861510131273321061276861653369302345760262360749949181293123090679442831107566105481489233345048500870973000815417289548197025230702878625745009238672256226591523201536976719660196915924331527730892216273806127579978037460983646447767027104527114821225643685333667194746767107024512898373863141924591275527999133916396654586329088170575479956741964646291092035368288120303181739 + + + 14592196232351081906056905430734211373370270369236638217735709716847956955988216863576565084190358588895704672174335742429455851591963945394139814875302770387558227274752351640615860085917147286533212648079038150487292765315165499694772159434866675731417156490878215456224361355771953430934765029069004080877443018718604453516985454744599885858775926629071678124823163777226356836939470021509555430328507465545105186535048241082681074852980214295045425988337474569473053282573501685573415666307677791792934102240559415666028273186530752245019063278247181739281721714021429339194671168194945476594303095490746666013520 + + + 5150308951536606336728236488467229166493138136459906761795150807535687710551019796028130214809695613359091530841514552545319695296267397670982142822293814236210857446031008353394318724328375864385551139930863043248872605800162243927395042374810237990331936687985610840056862918037539789067483970821565042608366205044586423299399789271425770529125118049561617036724520191207458546091676403917606119874305915461868879982486161370813475208292502576515756922332328520870515290661306032860680665795992704248095474168740501279732772300370723085401073423912077762005754970394492112924980966805264392676534736909562259407835 + + + 15947140853429383315776769354889833079014203493818257070803867743940035558090719654192278457942824606417143939502479600128097444070456172636472361993427790780271632562127914495582070191594117642412757096208148566511024365591061481812192959180942724210188031956163237951101340901915014853932998205587343691161955350053665477051670855413623435865336712719202751847834380509124919784848984997621085681843227092165124638482615219982584784744314188387294150649782412952885567172471811004840792659381893113124994908146090422308951681029743803813929723708519499261715161417200665799354367604431242583640812266908133635724642 + + + 9411402614309959633641609048617770085435480844440530474023625009678744478957513726758601728493846782691010246732474940218446207392397320245738790280221181052030468628383409210782078391272933579645118025408052523076022226037779189118366774766327681412135978129581217505517888142763456844861535928472358644235326451214604573737896738962473524687119483123160390507374104318197628220382149449940689855052524990188286846748065993619624606047703747266370002474579917265492750880752911686504648283841199633689212562019876865335361791601200552218692048546370910034970908710614479691260407352031054670787238159488822683272584 + + + 9709547508386814281940089355445359445430160312531915098078799277031503697094030530076672664990261179732415232303145676965139496505281196096679158298283603115172002042710423228473969330208182648226590892675746908033555452870012538459274408592749546764990143092711287285575063524769113687680577445753205383315741200275578590568160389827680665758519707302791314431407529125937357519366442523117999187195840334665212762855309405745814345603180510474735342783261795368643831343400882030538253130662394001961906709271387220500044361049321675222167458501044709552901405505184695367027457149045977348368676941086466760397620 + + + 12255578450139872321008322858961070611457178644744988123472059857087266078362878362530269057537752731334728194076717652495385540504661148467720895320068902465328850244436479386189046403406984755267348458006088095958620495259011389026769621899511155662478836830800036085694221141856546439209486947059999948004011093749411340380067360499614837139354068816729904373909626310136318079042389637170985313172967015827620111763969427480368916958897208137217530707315051529777105604181800789172435308599456508719410781611611163788022081718970581124378065204260484074157007295088961362461120544623899104509081922614192587274944 + + + 4525912676712842093028398490753627550910282536264054305986338941013936150875751973985595959376066320824072933063227418164731621901995335894665197005553443430003149835633916279717303876064109819489222244414572424690895928021821828667569383760467886206424332571486426463917266341830181906688819275652250693230209869798994694242617833806905834890197877648188311030952479356087672349070187081263668462271773911545986646757715684421299620174515690417498164223886176420417809854990955721884088162530706281164433910780647467537803339296009502704955803691169400881473133685980674335578013786257936876779654568353596948914490 + + + 15424037550668120905093136503348694678849457149829023613175551032487217489969112244284801699037296256611984482428601457180332858325816318836351558633676078879901971845301484509197942871278299391927339923811354336032007781871649676818451627786422645828097795431248434999986077225184368931054837984452033819110695806269332843083060736051449552616277805404599992536584387078573143385453417580832887728593512324814181513702480986934480590078230611032948673855698009539793485671092654920856903524742814801643907276303203907468337377966146510979793006332056530501906628721219596499554224530918875994402112682403830958758615 + + + 10543278909017026995915359746763575228865304275562033193972069570428598172554316418706716213317921555299101050349487170715772558390684635237103495979996210171101912512476484930851829065312767235405560432689677643680663687896325372039637469566205675309931277469024994048069595374204150135000222782721048241873501792875892526878894545210351601820584150417377810851337606224149385993603917108598638945382865354917271868296265549526419246250537274325060614880162282925702237845039748188981870652452796244961347128101099329893296195107642924919202825442019102352529438437603319736443678462599683195890332402096913821755725 + + + 14231477095324752504999800051618310640471080135377064371740788943872207102595415316396980684996102265793193358116626568890574957660925314100784861983650548194617401089714637578799197038476615839721367927887479870345546468614139985894753039583807062110771598050894238398855245211480015754307999202743794860009109404354043967606740141986752996341899490284199157044139687184363293190795676215311839678009713842012961874638138702800375987431231596921619390443415892181669567704651211518523431003013554011532665721691797461567243443503029355557853973475101953519839771564959006070075728062077377035579043240300824298572131 + + + 15737084852617046791880872108785198150599033310709098165990669796526316262599695119362680991588787428018157227177963475271842029626003965558878854050781469971758777750263621024693647087288016872287069825485576497461183767419511615525128851149086670089429344873859670917550464967064045446964520827687440855955718496017724410888823470892170129015226224318923688603293375065766245857350233402951913071681777326573571002553057256200505105247899815972064900527432957503031667133488366291513692211488924842034717532437660142402778491422285557342411698437028960865833377518681722966629334936364014140859131718930082202544727 + + + 10764998355976125564003586549394142943174175045783394971841501127429826115564764744616093852807890899865371359675974352549384593188058136531801996918719520184610424713054674871554896478637846428980399708669232465950113806517403196055865748105204503184320011826551632133043773461994339862739888261317316945016458664691672924873466267508515892020625172209380704434925881935825159742352942030776122064110956598623809519822392945024226307134231694737006476653503611880108263439341409238234444979611702727134131132695448888962429103579429995262752849540197521846467630269057845317215953022221367662406140099217251679391388 + + + 13471215792807004918220766426690888272559264127085491742472827996747129056873083053091922732058329622500396121723584614259842498507109109994080224445531412878389297748207680355571390854345720393833885674986775339541619342807463831956601254324202071477923399046775117083825328187370140226238357281098486518078982324651903833339021091365322586970694663893028105278866765795608173985193608045530119742129266097785809825901682544218103254132447550206502300370219741538795610410937280738822256157690131742098029433769158907475002246780858565961468973561109471458853358724495830819661003620994078140038651574593605122313096 + + + 7639410924322450696290045320939909841401511077285627209850879832397928132690145619717677275623417311497529845123034714248437673042595816505079890324303961943314596077637001119425368161729851910692044021051625481712318207922469478427695943995442241633988914158519861083904084300460854375256117908661149328013825534869379348252414584561976783083826494326221129810968964479427989698146922303603410943843292265096155585875779483629080736009341915416552731304119073653394285780215339815916557192509351361674435479210284190194417663867550981198179750470674831444102919215662521717489176991583152420008647594647528975026312 + + + 3596689435782345851914556576678027434713801566669050348257908202462259824766126970030847648184397026122725343184594035221847572751103215735341399723249602632980016240834717489317420982747816810152903807601329060265485859440156808946668140078012423436463852043097142601762629903130251734712001439635128017764640144533537860525729664061519663679201482922622836178446653423533552357932106230091001743627100506101466151536075040104053268233751657141716729087180918806370118956222658584508283193125799504869803043208209134893052304454254056628374150804704594295222143472610147117572427093902038494251657931162203391488066 + + + 2670092490526466790961290669906797074581168644744275939833293473048527502516826607134511831262269386529960537607420630343670867320864582311660128850767889620853513052767381641107554846277799521929062713287995248664985363052206125099921741549397620480344438122331748256344046560877385559964305238934815996361072355584973526508709340429417407243390074647797285543515725893478387900778941338700497373223942593140327122695038118485280595038649332619308164585623217425483202997634993962932156721137173376397577890794469561569444897052470393772755539167750182976050782078440693841099036243838144018733938648828695093067810 + + + 11447476084853846919261312251451112046698038007759972007756574998856288089196543592352123824051038063695014421723500017718966140815183440307458465255727985607746332712050643885313804296873601103294260155952229844232933702266890165254954648173030370151810689490268939902807248844726634266617882324517586446659929964809697145875352667721120070744896732038923067234594821126027643930142333896610476649380411074975466679638169369871776889681234679014635283763786614115019808214194769519779676609484099433482071924249956067407647332469279679762535140435829143405009734034262056618867500075713462397242129342382876664377863 + + + 12347838077171174004096968977561815601413456105775580940922910446046115438056526791162512731854189869725121678848870385867491605730992001030151905272002301803802546101182507153649411647362729144919618128434159967354642317651123239377730250486016391050654531125070639433778991950220897278877458167510269234310365324965482499846298875599238363729587156585693266162335922247356604669072901528966738896434452819490011133546574081519038330685632142676980548564527677250512128361295150666010518655926926157559184365381794578561980848932740799497332466801522823871496523910354608470884728401494070571433875634512228217556981 + + + 8874484102597774872143030054836298232867657927127628955297270663253864424179496301636236852386120196445641476013959134442490695697215304384751375578532791517088276384590115089869047688041442322125520094110563010477718145841455848905701277793743417496181325815727472214314306777952446466167264519944792556416387345947354060111792127071929944448599767946357060471667505860577393724098117114728101539623826400729440960455811713908992707319548009598175087843504000545445393505472470498711322016924046660886433516786342756294681105957459465669384229964456100852404673289240677304888985186745971572694679798856683426183382 + + + 10350499396958554688191039479158866643745569547525116897384741340968175924714087022857831914484294264764143331629678710056104174361933940604893134730459921511884707845390496376115136356692181904906175789465619142587106882560973125583684768875438289092892006305762673983334075877998654057616466114499138605699119570170784935339405082772798428558403300190742992648498514271099363372154677992985712729922244078583003317922605703857562454338582151307619407207958663105989214702128132442566322465778170988093702269810671211475831303365230919542775403686382950719825573997213403890472227919250104092516464759344997099650650 + + + 13223357271772746733826348046590154167199626714516087095392638476391322687363689588682628873981996371545777708354527277986810626553107297456864613012826064903304598754753493826373480479710537744379348763277620237479134846694240203820167955562127549431305722902276282035066101234446667515427387370884154135524538689000244356778156525031203492581880970626915921879098166392205097965770676456014110336984326163001413010873889224113255383143173679668546436859689103895161477485052715232052775665988745827749304918020967099540771837793502427413459977445822621207501712451875708807086944056454181030138233073997401117560781 + + + 4316405333397976096982684632298958645233944024732956170178508121697673622496315247230263728729989920755863238778206551650329397367765250248126689654656478050426704520682885205117445002393655154752436354563907326916783905113449734441600824303877269809634933407862935222272583580779351202115051233815539990952399910639981359684269965926383944224463088190948313338176264188164742846907359350597740109514071558315813360606965719900413445307061552544867062414555514884125997276452542205113910494547302477263833180052917336109142134391038830619893491195196898432772344462502605557247211514786661841535560346122437725482015 + + + 2646667248915481420096058988820314761444066681636939677926575985782161108970890889521001791211540372712972793259514365640782539615280752855250308874101875879829509984466810989454470960857964688778504688177005007475244777533020620378415653199604670251192449063047252693208926616967585763559277974052295988377819212340073819110355851123210186794427575705190614720147253033993802691431888479350819005128717699285146226882824294733967136623235084944122582733148799170375764386171381376814459285755128344908278264641402156801295353646864868207091877914014027984661972440567142955130478745579964388975225000322509844048426 + + + 1372556651023825556302035571062389601785609837935339690855352798691970070867627563491079607950569337247655874838959309525096673661333864813603080602721238806998068028123354783008150161414739339885696921742649371373995300330669860663255721386969631866704829280160096389340517986049686610745839093930915371247313615008662517276940400770139686907769269276633925746308786253318874417764367286239702852477273781916317100735354057024088022267225832329396625876340883695667031695521234193080180431804322841078514542096016928208389522354265197800974246240392047874253593908439766560790233973177345253011409520247726805176233 + + + 7063069909329691731546643035149967115388639171320839198124569390246448407552397773541560095518422830389823302943327694501580258708708677672440551928701932269366767900580733032014588855885495100942045938199551580776225114546379329180105976778266081850849972897177046419419786209614034977686463690287330291564280635463301111860161971059320484936282026890544665315931998852475525875574914876719324192342421330240592937622651120988231316047083374325096866733013715969698751423409054231940922801192611795746489349727836310869480158494675530988699430592643411691812949845318789004728336117898971732803202950079537248637818 + + + 17174212827341185853484939952989691621596275373744441404542144338789429972359115388572076265778195908558693058916216870923108833436903028020358292706986278799740744619697689318768520170228132853180264278716822365871078531765899270942351880707857898837706889802687915282578973995886002263319195693807771905568604040647316856954756495997058993667775587802803739159427597569986309689015569123142709159552717956457072977137785722062168607872532575861601359975886634973932182947544942198910533910535262541095375835707835433722015227096258987385776628790469270976454207467490185537268329141191295890861015129882704595910091 + + + 10020980947655800652695499667965014058164135913079201771265364263902957977667295490086006964267234468867216176930498951506179400648794905364223584658240907684197456056042001318992434618436738613584534933832717868686794670743555974568026725111063777085344639657431541700263211619054599142400908032377134969323719402984901593395707013560222365052416979740741677118458299526049224429865996574390366812166044395544029774460099910817590465948721851471836597954358406924030795669892545820379974877729414486562900198876205955511841469792429682105535350260384763788420105719660455171154519507616948717238527691395674491519051 + + + 9215913490854276277646792426800927036293379279080132657611164952466735843638206684157239572797153652531557232065171764426352279613394719786974082556537642885736794302273315806809117986273441511512204203743846981128432700813728642509446853986859013878528918930853199302823657097572545471920824176701613375154439919856501447154111679444406037587154036708731454733452846952626543980378628447351826874092987617414021021322739685751026238472522682409560689497447791615003282064063981865087011200712348444373909861249570116754392207126647811055569342496516028183443114286990078669321328681917954510195613966439557144128490 + + + 2633226848531153379888705229455910585290321052920862549316966573035132831165515582839713728125062697407769631222248992014573510634508287735758042760242092446071358647746445316127392265381603098154277303473168826024322542053206124529480244168301251004764127892188242229994763512751294546482137573862760085798958834753620051478026344268545873884173666656746446202200098221703057068702412617691252271788440661973691678913646874015901765310138667886637809463368575457588114990693121019213592949395664848865951788884981107857299340654558960860773615147507696673749648435171797907573106858865090401227060389580037979051197 + + + 17206580459389943401552120026943876493301647272594650613377404114995629423251159796208182512658001641400549784219088829802072905105244559617641905683426069431740002931799974254835483570200812462712637979996115547523386204583618135248516411120424480190261153579571665959985755154876066959129448739658430261205057169843469459075760155565526648164579889507752021232329006247102204808282269427157849331675806215507442255132779358709078160282415644797008964145463750988638113747831487863559556929217718654988603394946653982537866107750875604696451614667240146925522026681952680332892001756150015345862040683684946247861716 + + + 252418139918135302568795910765950380190617061216141385886693747862552878089710288583238682595272579012848439609630494542348334018967362562787387547519765706750483236731209849491801614171535710295100473219351615564416803981858716440827467559280702188331111835879882063650052715872710863025546766062825253503631499736206705540617202317769020331501066274206816140960777850077714624796029584195714769087546835719341054320383237962078043583825049368047358573241368020911601624554184729454555338687175534935536850676244528510416214926399397849599683178378657361560137251948211192850133632880161234995562646107864928237798 + + + 12429511041595912232890487828767562238290444244798529107193745346828553540854349937733931691827083336663656852499821787514317648274980733887149247529689050149060386187017413272190029132771408375161665146577596733039874671082994086801777850377320831096378447580557536011758210976972755819289835063037360420409743408180505441143832976399662350252188275131330409000592285705124191810857190834922701625593610499276858858686172281109748841358394189911082176026122029262539140655855642319381199210000953935756788410153629321980998187529975334388249282056090787032017979084385498002060037757315291974046536558871213621637477 + + + 2479801639813209248272402938206138541494085592860413262509389131960740077949252455307246617615571285370971760628786599265661839737084777213117455372459511763861852550586449219895780397687889233123704216787015228456383095806509519097446723816280954016502212272339585807757801706521799566915092705526834843552671148031034851031773308869425207189840986406701033365984095103260714896556975293215087456389527632858845278435418565641031346061762928966745977525186097652290045430244208116196960640313379187075671628906287102637432647484225477733907943834871838695156201002044940185431941673662480083282518470919817466021767 + + + 4906859429800638392370776732731197555398162981265509941255048266982565385252253494800212913513597151306136336827049624834477007439885808420037460091309746569714993987454918857335342031503823837994725501426371136922642093322323660705399700564351350030800003479763314342024517707561437026077131869235406954598868013986207348901653274136721120164134054180627046767648385466940669549704604300529832890862430462446031035463773652441984161108984003779622306562664262229866333122619635744792294090056882871621922676035558144574863390058074624779124785715097560136947795024903482853137881057675484826123007596045239161295404 + + + 10565922350274630668953888243262597202639309310191041680240513957679349586124106326377403276031712339998689569410794531850344594302964422343675116632046594211214290046291139432709031012176870406763273057999885222537086976304556619603817183685609107150048180064260848615550972499642190997522073008862589862443503534086223681809165642485463340609349947431204267598722960222286519924837108726783717680721279963637396748507132246041809333006919145817945314031370972930978122379921096370636605553764368763492176405703887061632402532547071097089961584237900837222620656309347187025147412160764567283562762711971555888422151 + + + 13005877390342916444420794208385421063371906536977630298905055963556943106299156567575193472800787541801158094047425898800540539787858072049666163745495604401023182280543645372940224871538616351987481314326376613953489350747900618769218216839545103379465943517101738852171613843206623544932730012478409633918155968325752554922063444687607565548369909148187710209101280016282922850026109169839374765261259977952542993237903464626042493495954081000868792131094327272807535420702459188518864734131506055912875731054475272944454475092851785920719460118806512974430662442166977159513476675409902082367291737986738192961260 + + + 4169089686598098134834841423632879462848232590659381447524471583580656934049080446939225390903040271588534281870842554547254234579760825425003563135014421704396328444514427666271224965006846522397419625073056155156664244712552216222102504804597007092334664490271601224845369097004421590872689500135188626242279486932837749977475795473653838622546705614599919748029897481019459602687243897819282110602221286810788366534268398118054389007557603413428168243092111431056092586882879931204088813486875245496038013807725423132182701493289502931337067698781857473069636538631466585049222338863519331003937361730950816216898 + + + 11185296305223406873210337595008716907574789610652358667037267185321380186993682202163810134419112248872138662949834182024389322398365755951576185732963282912062402082248164170986467161742261062234889006040202999615882953940700279910340024129955658323345451401243262438982207644538846362580218755821900608756382499008146710684256361936467998499764491549044624700891713410421947939777532269644845884598103289813325201535491472281914381745214795913229340144618916684182247603831294995390711942570645904250225859890985453204760323451582296051274084403921945329234144698249186376259573372389316929720524754507934444158666 + + + 14489300274541719023580583071163016889475262764583971290870449752830973856082231530670011403684493593521189141700973839530072310724852255369584841814747036291029839941574628515763065736798193403671277517884077906854146244092404972558879550379609316828174142670972268614653923141554144677442144538017948794939231642178834534968598482466861166305608846853756783316755442006320683842340929710292463921121198011526828362915047182220682502691261032510439758132946980609336730076815970202467219873296097909005098122138152426717213247438294808746136464843321073803908213235981084043694722574611680009025829899502122631885391 + + + 1190843682904270441479431777713383611049887345845196546187423267137653990523781643961574202238259540177130703820673674432214738592882934005101656887863222524389605234724693095287040850577291904576372220840681354702706769151449610413687499696759351626834524619465184193632654569902701442421942983174921422160543381680962491369891324617332950110495582836820367465564465068209875119677221345374243403195055669298040273670910856195887280755768874282560531820474199129227421374073699813935647876320465316433065630778285266811676800507762564277628850119320578721966119296208495311621206859894688756775666797202991162746599 + + + 4543572442538415694572127091447475045316139313822085948063702012950803543416769345211565603390819173623651391404863177481118935808644170504115749253751600158090526070175548416247450938547695408864078442174219099309463037465715351548042297412158838799860605195486864591802628993238089466007057358004427970297559991553135730550981565473543068383137331568113178628092515910799507258820419786854221763964862109504905542512351031435449318653602449872074983485094381649157610286911178083425380790470063262367645835660909455262656091905319556101082481599473521093498001156211699417554013744240160814147768398102969837346105 + + + 4668123530606864045944462973097427225782886803561336132739152989301662812989294718904118080127566110536237767086201382781551773913872435277897361961951423011227058494412347197351411796856334864903374752027665812793157387964598118742455613505242176664505670235830554013822388053370469346954411345481681603962915655379561213965246386746009487293505115701506664162723588673241091478411020616429907427205843363120449768818624029348469370115481409502999701157194827094723165683917930920332176378243806431348830658062301404656376239020812058669568422352759503086570088579567409015112049763477537247481292937383234271679063 + + + 8282748415114572592784060276845110153762562864757193371403796400839421355715280662552193361511871352871724465138879377763386000001676985627761912983555740258112960284509433170816859925956785375596768687560147560802473974987012216028418728912411509448075299298174135710088900564281132445351829196055212817366575213250762874742376690321133587128859333368111340478091658183974802823429957706705741048222739263636306210794532990680835868531022949810501999971675016670634954350012631993867208231452992367729808239207338141362607969918834194136008438374670480393656807729179981601728254175222639041802393253147814618501285 + + + 13079809715822945876641383210621873355572685332589946977387145410420625906474711850681147460535958232372014360852674748603713541349654148737414323714702633828163706196897142141097847991033152376905461978465175163767945244084838059492835750272411576071772156328178316615150638714186706477897582038729528891467113437830919870371109043247683397988205279501096720396492728595474685153447107928366893713313126903141762990393039668890497169044861445368200945816201988816239024427528263682587092879951398466193227068515889396324984170321166995869088007623000258922377115805201995036133400460475709796363610491869420686882460 + + + 10137746890572485955696618520934540044961577158469924675529310294277798329090716379448439213351839786860111658561282350396200312212513061623823619851904563152910002805602358425769727606646588162873872069506857621915041980526781515396311277193044852164362602345526401374355538829289474768371272495323053795646601433836428962487781746646289812698041304796171900117535429488552341599763807474003636023757026832682733810203638448883622583393315526298930922227611848571272723514096583160588684592457151516809416676826188868683570857620079745830999359182846392724128211761300602546118409508571696094791711319381804792730427 + + + 7768535688969422615102281360046540601728450446664823355017046833243285461514287539902244351202975563930705311345445634216175636890518975734954657502682713641697845372136758248887380306665207552131949909687208333523400858584616039738565701134332758960531405408009536333970983269597954078654416625119737957510534329242076038797996733248089159144689725400167449347418123973983436333153140880831752250163500382445702509845668198729984632206680157121417503541961694895576403505414052932859230301766928990939001366313256991599965610705801756571671722084054781220996903621958926641803403570164142577523585382469510754972895 + + + 15907609477487257456004385191739875963462754651082478564053418150322704141985692770339588676282506642432153849971273878237202453602201136655876564955615317900760738859951244536737153517600789265019101587674758485340901905853242587667496038574425175304316879903211067423650165969621918400704265989153576985632434448393970272219604646142784766166606515893599859229236047241349963996092731735322615191595036072743836321804511436103955251919063870713027745276680908319287760641463841909906595298160522589177109112888532552781916529655136121860653743164201200051695744011501957008343149232491134846163683458633384622127225 + + + 1576604484055477041953686382700832635297099632126147835357009964821750369423066706000674276359295945573209210946438186692014138476474710093771194435234020525457197192293933948177570240517023396070925571724731036010464061225600553638484694616341254605908159431841758115090351753264705571727453673018751237930111603331727406427196830916006382200710872909127706945767345060022334800405016882690748769998307381778783674365709786100927509376450586601135005109705925818495736406533607177767683107745239191596986523397961917347983416672009786180368250352785322251908450809018373780704604061603124617776473434464989630172448 + + + 9054385741548332221721287658068962787835700796375795892539552578525498905680736754594872031399274156228084752427502652204524896574806109470509959906377975270964934134257444076452263185226625316998445856282350457599143467254962561021576805261114505645391569558776300803267975673965884839512223467573393785113891462215983183586143989809676911191934265817558466963310676885060747412877916489690818124818012977965050077332961463328735879423399158178695249784732842913217832610199128850535503390012729958387766243921071892799428506107504211536248616090262833385877129103767417676158880288464906117164013158962611650500730 + + + 6665135194530113631127208742974239070973512988483489505184587371046720530418601690969947150887784808068619926876421241541421298967017742220085366451315088831478236261036405591138510968405814325865659425714769718933432467749622633341619160885466882191818228637980031905457338603522778349485004420870218322017629265944382161162031137410646413601074318256827810956002655494469546225529741508989932738462469257455592905770366676292162815876220627250141933810786051771411797929009181483627588576893428565238878929758669749890176861623625013565950550806563252571259882543266960659223427323756292181520583485689762413788832 + + + 3293707166204138875308974462592642864792321828493504836580196180056993713076331817350339080069188830709533201358956540252154197771937141331507048946944653860229749295797390947011458824935234113081991667649201511118820964785316909005531775671893945222528613593743940666360842198056806415574443183802567375655095058840008889132581646711203720085769541969249419537477308634905059608369828148102425796810954528527457244491297482703342554113576262618876899113094413464170081950735320229465204619758824797510306467284622258631224240761402598793543162939417701686186530733827610636228963017521530354734546577523875429043373 + + + 17624814385148124554703825441225014346945053802831211444529970537591355854910129209510019495389453402462894200592914374148515400406872472331803233227337741308599133648741157140989119101081127886847401178527280402744683813950878083653658403364495973595451292193815296935174268366737316774974258254982485036752699726131088493450499711496742061505656169521352770097143235640438536439054041257152500743053870380939440095776521234661596957068158220267885746377853988007984446381268831650902063197712133651423128305825214472915794994654811391355845798462524735438805552250324892289862190203849505079836971841480260961722556 + + + 10853888994687431933547549682405593586397569776306604763537217383052999969798242197255158329791716355110197056358835406340202198137486273900796336623806077458027079592964025895983466987623758261016705131780630949619609825357803654654098306327192628957685487027784892710009620124621118528353145642258318332617423378722170368702439315310972664072200281071972297301042491221287131139705808466510248330146371237959089389156914407789925702286885909457369259332110130708291693268957230097264387800920708922268809492007243228366489137848351930541547836490298322566751495318449911692068770143195024764020578494328568502756125 + + + 3239961639547063394116888946926182589762368626001913826697230698704160496407197622822338164319267864877556326318766457873432451514563974054773953170294086097255746418683804276654845956506786748260681541999095166382919818677674002137817591700436645997119086543241876986046107660586216964475860126366338528023442564005555458198113001276815368229246265611050636739291683600924504174137557471017964089586314628982601452903392235147838877328316529836853177803183189657722222517763066672769321409592404654804295335588519750156530153651091541434798375732040794432318314133414948372032127577817678402896451203650167212960922 + + + 12993161660679255519368325711424188836336969654377718407368691545740107631328380409497340564041588320690752304165565019605482038605806728617678958125282885520744105755550806381990046054277167472982440845158659799384896839958667369157037161318084480702313154774738925537541349714475551370568512376834713326935267584683334760694976372593726021848910508098413745393496578545030589941515509203068084317182658648157707094828134060183385508249724464797329551200755661155707047604348538384728759303504414580079674591990893168286813230332986194528433887783612434211556069741621060246479146040950864716231157709396269053358300 + + + 15416938142769939379072920729170504275610923805219631103150867136977206719308855462686098297063432052339539807847421067714980298514284256347473739640198603122132581021968870043282133656272811801350068809616808547940761098501028632182199225564468211959843272371512231348819365714530300931793065972210525948989856603010403374109261247490624002671038363632280852101756408807106480877697188544223476377922649807759279491895285662172774646535526653533836352834534029828359797050781275123601536813839830536461403011916588882771822225308927973565266088514841551734094426838028941511591570936577316693415175021310988972979175 + + + 8150767954077324108153706735268733834870715039405632728287337649907499860382101534760079236302612572460563893543898785024644451786824468503451619819543411985469793789772592433061668256117907476398206792780329337533167199533131177175869045174910178873864654712638968056820359618281997473966288530136441768964098654274694443393164852746652191181230770536013226896802881209871387121216635601928693993943147002541836452448008211632042285675195617405925968996010628390892575776959803419899792945875664070660898528698075027926171111698372462868833200331940881844289542511468936956219319100317457105088999875536670158436815 + + + 6580795427757760912877951235475256270708478029596500967148676708172599843011397701724459497870092490699043167292715608430549204879648750760586060000480925492697120563082111867726187525948429724874729793303079358043087750112016759441944090089066938211668666341193634447510657964187875944614906579840053723049459892682255156419975778707497179521841994236989474528388565774379762571728533430499861495698091443763984523141896889528854322153738212066426043255641451637568661443934723255427651086588504125216785349969805159770243788267498117204066091915078143721725774674832178306118523835783399699421635895907169159396199 + + + 10048805777157745773868484157624107346105149601517708241286328272462880400872721656914877363879598765429663072126093297072605271184504065699937046420344865049732602832567705818939611595993721228324760942754639620978569059427735524877542743258354459229183158590124441600074763378484620707010641827205021548308029547014565722713168246310203677861197389635851794274806780100856956829060720073427615432503725536814423812312377653051976188858601617699524533864738596703808076264582136413770056945438137040764837496025529160153617721384608344396190205661744227087686444846745148056945568206329006190742615472908969394007629 + + + 16690482170475453288086751310406025465401519141139729653778521885767587207485005665607065957127524264744274548388273594238134502474004152903002915282019198532974893033550630964999899172160148101763819532770089227242401580286793460259910812019405047257261635580970634326043241381830193735480133715190487574015473987810322559043891221636929351711605106951965844486635672393752904418340559161301198843747211688264353895214858623302947498634389416625396992621767822838268852247692938044279948901947284845489645730726512011444770607000584991078664695267125708867163268392049569724058796056003110961596249999184301970436854 + + + 13541809999142435035964246485604929324927035270837209430809990721265090362888196532295530699699012180461984914121057379133174316424547689119273034950770982430199865738580405747451305573230786088149427499643176121815056859910080294782734088511842836933210455569197019203449569296637560174862374850373982419559480130396607902379323017210034041254847507635613560572896909113929265790462883492527012001257939507463369498297213333928291833959821482334165875953878764952761804960189640291151759652609060772091953156924686546108690977361578652618004782633693406342820916222076808492435712830537583380756759456121611132467028 + + + 11631429510046224379827377183098985454747121041246785815493988928661187048779855872616173226210150460640442638925022809327652905566657704700747429939768085107167036660786478117772866733776628955602086010164986842922182572140796050070327566448800889795081979523123847618597748738321475880036167224013751887422372476978856321370063982620031612858076668585852965541635970229431388138680474273589712783300170528028703718646262633874778600449971405828309634033754483236079897602527580768175049919022535739297993497504217821022868209323056961404507184879436695748436590368033121877831107350737950710024122627601767896398072 + + + 12052721241255349186091098260989557250817105349952007858913779006474338242061449327125513741351544403285334411054360497106508338011059280708835404645565412565029300163823931094715081297086111125296652953395083623803103906412007638164536969823042887320413803734599345684334978795664731343955403106035193747107766099418036768118626274962521265783975873109361603077683549889039662554042270856152846031472222571429905267456874328056026564501263402627995192135212252492920640274121221821039938963418602014733705266402038123378027590407536536429542362662906842672374035404176374898094166760072178565998960059051689321246888 + + + 11376667713107517602945587800498767382240149060571146193950614386423617318865131051128859046333630864641132589718204527516409005776278507433754290226116532954538727462643784810339843283041871710156506064060146620575756297664357635177512985381998768118826325673152728421759955939667500600956268954103563334891835000968732225420528283969987826248120434174747320817760616935590468410103669036331366605449542379451260480608756932630922991857797724597408225150038386039621461831046627214194458487815080095142553504482731536603659921306767636552167368250119182464865816350597796518826009730286327790923020333854996278358950 + + + 1880615524766608031169894075468749813620709363968216023851450745575573191853597681695280976306813205193605172618287816415263092000691249216264821047191736129947057197454588830035029056018489070362697186066166803228243920320284145280771858998019667820154761935767128470071148626576282011329368223222333467296704411018281320450269153158710216086583292783209338457539099001389503120311536655274761513157594994974624557135017476257030005672576900045954129346781887646465982572749383861045674257422924925826354774441506513395086455177388176066387471802268983202510708405921761094070767518813810471332365476440081371247345 + + + 5342752947786051285676223048271462340393174200879646588842096485799632088489432717852528688044269694787176920424287581028756110787812470898534167438869252915788053909822899485078577053548076400451984652632879355197327180549445330681723820529885359423221653881939682474800821802928782028512652730260381544378120149656925224355807732675422687650612159498865391876161345785782611859687966272657509220377012789901214748230934678198655126389331242927231599207883050488343848033870270884223016567650488152896006729822767029472904893127147539886520195882448262473352225941753605904050015976256653514106201245433232712753965 + + + 1729233583271547926030307805285056045877806263135574138197585548152275346120249980077878389130012917042154089604928785318349919062678431811352684713491393144139874220563642941853166725331591414181351396315568933671067061398175540423806839603719129329610379082046238460258205863748057716021991243086599952973271116692258895034658541399410521114437408280842948720344983723239259492357566686295740537443151741278164844410319802769715355311687360433282101641864500214192026865885152075585489323398133437961303522125640632220549142159125893783403216609017806547782021438879365704273569961095550149961744942569435139266200 + + + 13983040044882852086525823415608301372989817118057836037198558156405251131172431291452704657535064403570398907887749482183420440636334778668096362280286775203109226431057361691552869312027136924493770537376368166997089316731596729130638334230383760217493984968571664004742539989756798451683754988942479444211881289336142919327298550430748780203845097845896847853932200935249125157590677628684594299543008513771588277555802837733835431031341641936904665426610413041871544301397166657996953607278187149377040127740632404312986705377307497970112078685408603725843358436553115942466801733547993595367735076854351708713526 + + + 16186583481634735775405332430726109267417991377506559444404989631952670177984134810141327035304038866133818183557666481897677575640338836814453102416971735386065963308047328483778220250176759183200933826141654159002221986623748420981742566822291697500189804954316918549303598729710609534832465874463789559283759189799328556437969369662731324707624136263291939975170255141183308825418019472733651382400333248851777171398767869624478965205994122787087679233022267100138782135161385170572791712221627612790252281399170626574863444856369473626431668721849369033995475410503496450887671027045614389106998748908612072692667 + + + 8805437002991805013294513919981381223495204012024095608995659124086118511057739016055584581020201579942989128929483074835649385155310030931354568676786453041940584992104266316764716526045769758333849352350492423866260466683362268304019123226501014157473641136080702226534212420798558702453951321639951517719056248282934809580510484375018074162710562768211767526450969754867596035195231772114261348285345572364521237646458829807361703680677660107428116396849437832445623839090309355456089190083708502390127837333156659677029445696751463344384562947348686993348212667185726282042838644104156912563432946738617873167164 + + + 12397348234453586643503963123040363612740477745621358055665826508486404694085775335030021431775359346184504652512884366926634065093694290730729761896147146928416943982342098306353428138109353108749284132002894928355573898372397206163088573997129010298164093891724639660556802954847683424608074033149229145041168541801552854400280615052301591389708496164546367446303539034394963320622550738859839127647244043760267680665829162215954475520015030636008309863139502090052252021664175871959958503089856296351879184080323303205149510870163812526806435530923553913242917590672317273462552554628501461111985304295492891019491 + + + 17823520217562238189628802519640036809781158795081972962055349353351469315415711908012611162202164088509750342897506271240443211729697716883868148025816227158993671112552378152310032431987662606491540176746964527909223627959974505841165017596380188887843392140191531511666932298168642145565994508931148802249730097517393612331524030359898403456161412194572563972900351240676984879754495552867029073079680158877918842892481533024761320258518004054454207290530920996710198535350377905060086712012253903303327148778660584463107514467931383255740274872156152772528787750662547962384759315087870439450844096435227787340014 + + + 15182420792765853396849320169382096584272932446937233469994655523818347558439312641839213990475317237436463401634889945557704776903996549999376353132483080501243946159413296226924284831252394385967823835550322628729065309478509783922608859557672170457318599119845566797859774306888960937311806136575530650798468295023685195868921194934859107872259783631980766879974682729904415089178427061882198379492547456826508728014036851814299167940993704755386114300017834022490385690702750908565842352138695170332253969069001607272913931278680710145214811534944172916066034745980432186332087174642261018580551331228714370117109 + + + 1382816126153985000027034135993892944920673993384455440479931169131724670981073357703257746889913079599224078364322894149126632995273856257129891198826489792719380653760782391473078030857977678659615356359867551210830592783741705650250150357374879590811835620376665132227778190880899154254029231878533599638776172796054998830660158523864076192706061211818700586262946139674071055414287757907818508634828954542612812751567725866431581086858210345593443600789415903975598509113354152791895080439962277421659795037948776407280858256830577752738631242885770196880737260632746705995437656564957201007091855556195745917478 + + + 122853721104342714160548516754362540856235562020601919030381180798845448387260039722791754198670345660895961731531757313229455908967552640595600015220162040428923071603421662610172076199902618639011475590933109278395875903138878580781275112513023951561176393124790766564349227427903508413337961046686475831371178783253504628878463822420894057485478196034688607439629402882166197830036079089761488946984858608015320650599348938290260773316302401665652518560240533054128621354565306864658292494650090031508995168428950308534868804687950900716408043578191633659737889013398795713115773651677305752948791381997064420040 + + + 17275212670231649036742735885221721020567757597186168669780210244338475543317210148148493561112506965032912976472328486294472704195363340213446576817301275419665109980959506415933870497691505925323825396609449584184443430009085977215004716419190385151013229496887539563498411000906495925277220400950921353574502697321108831820602454584251127062385150497082282673962211484224953123118797469147648737645854223248541174459730875693629176508870522178205674284946372474551858412036391902919003694476535068346218488323856519778139310119670206654841176814279267042831419058576105853577644161291712351885401509730428079407987 + + + 3867484804342677965602549882117011229754524319229846714870181833687530892954967795111324323867860712426556032323208701468388226152323202235551570283028636864578191959363799933830320989012529875334452111126846487850640937174246947194001101599862005086585487294267373580757782273795553052764742058404162042502434519721724307893614296967168883724923136022259393254119215556939727000826276525462736885185823587278497144487211291485801555408576051242245836320270653840066970581908749784636990491254395502897373844393129266293249049383816820648032145176392429692703006931301224957148282094893332492404544453039317053682961 + + + 13675518338196476987545856854290802541461247007458129413321149316631680508754501134940081263854452351756773680603790210534040901406119766114914645919229535521933033668316628435981704208392715278326371314780913452540096760515594966349462863855136207197625303188919982741575010362027314466372055795937026458835950158868228920280124454597736707797258814105871174799388665988030619940720594688633608217620014983654453468782457787941305275638675362014058339065954876650499379433971541374722466314448565955966808831798794568973619396687831933521827771756225019067198826784272555351829693548793732082249236429637156856262304 + + + 11143471105362783547333730509934704158164177135401922934847400422515928327936247092420903468521104480945148139440322886039992575091238729899143101053037547800521312029405112188633965489548035041166584475403565931330198590531662506629343454537101223334462317107239930827278218083346943767022895696956385857927749786193434900028199003214944616801336573608637438727039995961477239559788357048076971829136881953392279826368547523663124798411443986782166814885479085640753065511576871224950901370809167248815586131851145732965555872459681257838840652253526167778533831890567713839364952050176902767330962604208697019784867 + + + 5720819249004038738977112693108828817776893304842738877461886337617646817945203633328989261330841646219770449567148234201176565773916267157494442543212969321875013732697418586100694610250678013392262448547172544796273152430153260293812803538818491367740422972948503247635916270666899561310138774701165116584776764509347706890421578770810096390431146066554604521624257128941247309702983810664507786476721878228791087658694618456979861839928991601558889542904137189384631535294567176983216214491701733514278069418613298228311882795346302038477020877499478255295142600183199966896057901503635320634109352135381880938643 + + + 12462339233773347132277675641234394133871911899573164853985662385950748578247366262155373968192358956812251283778637894169954305789205928828708278414328492999722138062600786383900749851013075816490232189726293748003911516421742866558415207155523650437166582189768988881279791069033365016940398202597882184938831094210299432736449180866123897468146891951676122771356090244487739725243590976779343774012272627165645792041966790788043510445830790204510519976673133056477581218544232021885693449895857492041261209356984008044711993334127404366441133145113873285101354687613743944187408837704250587954503612803259340243923 + + + 17925612074013868156627256951237376926558958593921305514082202843740148538212933693514951822204550496137896924350128833075941552164875170432591972496083406958363761169438595447883935705540008664457490413598746627723119857459804441200599811415156742727039733234515625948898970452088276100639921997407990070293181099952556632992230226614129062144633211665221490677107544073305143824134208122593909383894007288206408457047814558269021768644235717789285959742436542006296336428853146009520113804983344735213773370699973038117059482827008912160284484687105669375379359838126434573598837373883969382424431421109378055912179 + + + 6742136825703214659729842861379563410961762899196832033802221627180624583173973146273517414157833606637250209293281907699472870342412234376220290670391221417560331881524768506204901613704906216195219438675533607824788779314990535801851933158007619760488616122087679306537900984611299225726915250114050841717523171623202889679493707846882470012686091566563613137205561077280710192285339575289656163799146697252495305315630881689053468176815306877773008631318043576496511714575939115866292803903956592986074718758534187059727327076811103183953439592790681468720910892522245919609912560829612341803956074832580786206163 + + + 7953434077234255277739793980049103948954484191206303219007790329569293491475533440675409568876466523204630210502702555482623596615537082361404756955448770512188920755395386067834572119373757307809248973601230751472827845602948321087239455549318895065818949138103161569072889634322445636526294705680772100380083296866752287498093074021738756591230204542668082707807530244450028659376860181443294359471569556031218044893576235916669499543729955736306374985330332428395460030336835168540321998820099244415628438040489202586392653306036634337877735953178373547027630505912306284645070250985188486272193176493986729544547 + + + 15299786321891518317062383713948707997962550962214013428632416264055799219211993005950083876244458033665169246169660631484909773134587743992354468173285537991998687350972195865962015894842873743685165775164499023489553251620709393671185244469235337910767441004332573773312377769726741827955838205437694841267836937657487345809535161152041006552409838602544074290764300740861923501999837949804144215491198262969994015216758358517055981652372899355826181928784572838046251379526627201078065431797719649872347965137521107783076352956901950833086481147358628023680241123796837141400189084547380476328994697986512555246415 + + + 13974345935889950148987586122573275871521134301087080429466953996767969087418139508020135168901851675685917898508922524728454157287366410514624628143161363398126495324849524912759150660188898646972561381968192962055482702141048638485938825502177622994096871399294221658846959501075009930626220719096007033070789123712057512267735681768029335239577925784956113799088669254262903426354924523657254121648493313679376474351791164749174083531475376345984303843651996291394396110568694830263313926090494451695234377426468956338009076544734471048183600575293189072604270613487680613540098555692180632104539768062609976974484 + + + 9075899244520896146295903558631308409872162576650502167597608871807369814575528959336902904318815067951425747789269512296140178011930841856556793530389934961697821460618610453258442139029373834754306512922735444362982718684111345208528821176024003386850942994602646879766043674805158412736098783716901248845165248930317780483868705293422512508003307844162537082840228920795454554559220338804236498273580281093647861071091215673077927345137170640548445932641239098744341548219972757488110013145452024834349161944838533976193710374968600773136680827040432862472051282713070349586457409391719949806207091845018193323149 + + + 6471053011758201367173510559469961067067097818162204112219524041058929298854029361134537788171608668251292532606437336220120308838686301702075376058573452627310717355168437557297886773157149607404401869990732183937881509803738539186866450129447065419633976890156997882581310368721704409616246890216217962623035304502204950621341416209764650494328261455530601292556994636112171759153647941416876903052791613539295151737024014654853205329802560509592713317784744366532622002105170133006106551886996291553996277262436448035267201779799490075168305207191762031643827982984014507649341477620976920488485734478915414716307 + + + 10697415425193703290239675852801259560891873055203438730568519175715933883251018922351489833536925945193232865871177910624012690801812887937495637916401559572114340861209822099451245934788738463599873084554665143701855049011957576928673776062004789131291379887337185716265341635634462867599730980468747353628767642495419885198921560169924686511848464556565496482295157594191859577636094439292245139347855095223797749053291502631101931336948344631172578134993829089564397609681394091837504347984137642713096344051836397447419082439550019240332139405588596082613256765310468081424271757780393597450043308499121541331699 + + + 1705239279308704663710550631049890894972979969583874276572444068994382626777851644694251062339721190490009781295830773035527376515277656454629824606450553078448299136281960067524298536147188928744459861560460980019071137071496217505137439195191343820558326245696169314287408985160370864914794594885195709806992569345109293774731884331878433099489696843086522564540166546155587341875818585401797872719834831819552284239109831964929941407616575862724493292316439313376485519941955997748840390443424058202731582269874129127100152123958057622046994578807693489773826099575096091146221789318994935372071073187328405362647 + + + 10369494038111523476167460471664407678151911529005545193367757220998939103474292552971966126596728347160593002249491931099204405322241228876770793394020505330208833803744236208715488931073143671125415466175124123546327818748330855911853479988156175224048682596974599960884832237823821982529463204421201090761261618620527715311143793232245729880180800321265235445928299351445462915155772508197196400617516794555048868887107994372245178039837194661617637379665989142823458457878409906582390757645180491084634128036015736260076409922255028729756054964543728101856240071866760625461620335418997705164500155325130457672183 + + + 7271957337250046492767203173915658532437991340265062714772474023106803089348471233531313717711661097723118848961970131074221837045373078659145656225547580613023616767562978318794502941667209682808343776985315512108068110149631678104619579140204233823791452763204167742990630302924219148352496412722484443101563793109459258018076134691370087956618812450409249952024325948235350276730881754431037216865700681590285383831606577926853595915181633252323796773748524569881789670205125692824891268048130267898448167580113382127868120437317761583985022718624547964030779284283392451316615280563407717041735712471301447378204 + + + 13275166608264156858103600862027956572063709776166661395713194506302008303647513716925305436376310764101071197426843379914063214310277432026422522265601882810899543412018617669478078852693837906919310953847952791257727121244166713419197906231049567706461313292594906433011086969684341645590241332423850836722994932864008245212328338696054738664572532332922685705053117370675650491870971611910097038743649391141572035198679026168233645632454027372558203895264115204322743574435147664978245852937087066808518123143140796768330141168352842533467963448597797406292684848219572788845610899101115103602276924040695606762851 + + + 4680913102112056777801541404313429971712770487157691318390998565636358255058022061197551929096253795453838749519858719889927103294229099011183359410960480101236664565980461570945659360644747583826936248608191660914827030950387740985380309505529791227411060649165370278366871628748732117568237846153781145908570772206860236923280671963358028712548886795793358219009090338426416645481941035869297012033128578280878219595971694629944893145791799936805208840380131484099702574623529429821007170732121059262228027860892815387373639547600465023792993743982142710283651768803332800386561435081691733547980446560303340411643 + + + 7678241528809021263786876512069916193540374328552066080719769579166475103152581405890698007789685627785448926613831313231591782705160176635626429176210700038775675037172839986854979522507481898208713840647787262050707461969903088795275531395796636537028976408158571832750797894102357862928088623979849272404027880485029198936691910645537479202732444535748291298648225094367841953004140359100172087080673400098988626275772687543399763536710249639315250521690490981144248062819279955447623897471372906138793589020735684588349012912156560310067929884335830281104607794793680634120251012737462431465285157150126741528583 + + + 335970792832478043447952078695170961109373770975932256134876683616631675102508398111379524850635385181619918766370006592504408093655337874524804704571247456304099790470184367293379544111841483038683926159285075285767527941308108509303131572233637722017078724365158835737501027820870084113123613627380688537610724516334703702802391635416760352506565108649828126672043921336061855651225493935223190289007746592126462074972141621291675612977278977080335243882256147291448033960258146930137255314568475169408279548005232674419096018920213270728787866476907700750339705223488672264197831263786187057989572427604662919552 + + + 5827249659155197849364754466837481738130189434912427291239507072190432297254280222525651258587889602512118301171939377477816345827040255879570852084966458535917045696656656270516937311317889907096902429689535423890120874251508471589856543474470523435715908596638532493509786650846603761599936625912685567422845784485840483055938796314261437891961570372136828141111263878121892531640333763179153072415502272784382297774562396092870960018521929579344689600002020395272610724914224553400962718181397161621129731899305165714371543933642735897839924889651309927581026007671015610405591265990023741285862440631683471195363 + + + 11584473774383508987674805700024290734605940295085712468226087677269494824452774631535558243102321146546226191428496891705117301517813564272213049047682494844455599659917522149669954833618516661823855997291299734916628406830927904577953447110484915921792050369829779251927632422454718215547439379853319671779321018580590102167679821824882294837497896562885429263416485564282944656363442147274008860523654089775741806421052021786790777428991189272950194956650971604638148097665731488899768355617538144058367039702384411139395878225554380242232089445432053759710694981320493585385571728325012819709270951009048692202320 + + + 8228565389033507607024461482214698092261887068303131649618188343910111219741774974163107990451309359044747572456363562802982854914755718766528813575679206130540461604191995885355120841128893545979675924409135023653540141334936415140777443041101262117453821000879839519160877930445309412508927708152449183061499210395274570867019339031730934610733800933971953499485438796020867309705561015428195034453210759256019768160506895686035152300195894610560359450400694132316914118934993774048036924861215870697772421349587323921048632144835764991853105831881089832851944253415058066450562553527208644787655699593993294968828 + + + 4810516615894559050764555875556526122427690812774650927346445304086103552261483723333080926517029787706785645667340051353512021450296722336823608506280339836884449183328396368145263925568348313319581041838782185712998420063217033086595631372554904150589299755011694706388418683404984554208439867953440061846135396707035877685062245814111872451038469713740001626301271441934852213508913532771189756309725751805680015633973074254857215018184126412849168642060607838278994214152717383683192466092608113776719849262750071207155597156387560922953150112779777639372318574316543841620587200878903240041364142882253341389022 + + + 13837983684997380319290918646078924139438854927471082970633818034860509507406397266529063195472065118366298032469082192716284955543695465770488992605248909314764124973091280743088070274907546457243043589900388933915536149747690242641759865473045104296568695921433274545895138309608126233916370545440319869165797903041320721423955913632981278705560522676969882976263288665950925839911528561384146885086064029589400884585228252946231443246842256710893194659596770639718315333609765769502294864201680553413964750249621091557572409251715934817666020345265435767553276870159186368985972026171907198330086614191380117451461 + + + 4843556679617693194014184878187240076995883261982743075583224732855806146554468013894816666538432193175939647573213632506522436966047047085512485394650219879673181486779095607953377077596438933233790353300839812381466747713848675090902340568479105578206627027243082864490899726335613507236055968776553411359984774619087234562869806740438739380840635143083293368167425058325055754449428105935285598493740388103695573178769686106219116741988784048115003970034786094381388867877038205267795336232742585567632482854917062965974554279448420353035888723159072070868821397417376983380725243521035677490471649930624356408033 + + + 7494763636195619075773385799166539897005152102167076155475269580144193937066318813022473579460095522002802610643625068422902209046354098455524583719299815002047044080753038592731731050240198310745849986989355462496400400391701936910425148805422487739421203882206371401887612648372576137966701279398452212643349040948060354653668971193981044279618919099955626684227498975623816221637800119277022815747251170691081978966821336515090893642671120968843661256080191609628940215151532001855154882197137461006882594966331437461990673528019456449985145002447717924842625858096804425736086412048197676232273127723610688145041 + + + 2471372973841633437303247072515715595576296616564821281481030981649259164284517597567474866934181391843472936677979960953593379040946919214391103760388014069062907449747172555788741100410991012732615101179882449827088921213345603102987489828936260170906119143586613033500701224026855947869689343915495935570722174371376894857777481170925881611829895091536115089575596021782102819379710950857160576839853514085965478660728874027169659784180297211260932492770764877188834165424557563692163360554896623319432958450740841010347399006493042032568375261719626305660357537710810093915151002734474919245462839921210229540649 + + + 3702408628920276968091837591479270812601901845860642489247336261498986252191028699610262045957644091143728024783407967156295929582843762379395247074229146780586673274501199821285025030138067738777205940302001232850081587277531979533245021194809719424852830537664572036462519720515706767783963554402352758514405361788493814652288511382964460989342600734122074353613937448758376544539726065880338861064021109462558208385409753980311448095414742122601927167203632414749347877870710661671082705910422442927054655579647051815272938021458195762311938371287938043540567045893221296882576296409595121632601788666809662411458 + + + 11038291407325222658992808290147236238193525177931932986495168185746856337317893094197741267461265472121497801679654457732277256833173403670791507306811598127134954662734403566331369196311889975032606186322651807015770965329655645366077125466127026240667867241703437835121814020543896856671175821452928681820580730951714166895986487067531735639880362281117483980954393062450270184281227917312082878111397379591795173308638064153074751000799217970424978698328000267057941009508508148415676523543771384705526930838644404077880183693722926775422257411818572175667379123386873538008394142379325942718405981060172386017422 + + + 17755208596481534092709945957186835674129107121639371867234554552334706376514406718402151177936054261259554867246542517820222452807327884038185777148251576299616124631859693102726137502448778077379394158687199516303066750569077746872593537187667580140248173443818815945903828226741316902284885216790035653029648027560425398699968114441224159499297702486253091951529887010914162839005105503062149817770768874685352137052126695470740180141183537804907318259011558908560927659042679876986582205995362132992374853545798900759316419727479292102000004464652856618875630072133537867886132626575203502321263516526824537993532 + + + 9646478395989002500234466518269677193653199761183268303423602496265202192507227296895291310961714136915287000249403382879484808620670689720677075072424122792496488993593182123535353860882395639642340814694109877602228984619576116498555567207265004916150768170540612238210482684244163134793292480643331769333062189822474324579989167030116967778992534631660678463517855327792258403802305977196720457613098666665492006576308171638243721609731796934337220406780460568837573065920184394923882802951606243175078511302530081191774847896096956851039402313984832843375991729530635868008490156710091822840377815883213535893879 + + + 12187270263237755154938147767835027920332524664062872317295862353381678886701365919308782959166946851179038499310467820900656507380802561611204113082098795586631950411112803025995403231582110150765174526863635733257466135653739164359932496343781164643730536256632982070656083110452244987530213848055899502648761763089204209250986170467760069778761334460629996787043239404207492984015445789552019123867222135619166461406462414054301316025962747113522946649853932252986470723501474843169627422607033381599441309432929906033388973559737301699076317943440562222602250565355453395857249199263323593853723489385693473316253 + + + 9485950260028207753131361320447074934112662701428145994165050008539439778662621733698651776303930333502223946218219954335623515969532391094308111511091675326429620684026606168867716894507606119542193341993158671756963821882666920520847605997039848325757148215729862504977166164954576025476357381367668603994306955426236260641698354110901494270593807817483952250128840965238505945236802298184436573817178751519230509676853216797142079151758370359886016990589811454366011819429738951261055202230802110749275121018697302905201760118431206513771635144627044184953829562452909097797381553615293673353117367152681538285792 + + + 5486113774203160360622583039507719916453258980288430827047806136854327997444390242848380821216197469549588146068485876183634409673037951053382977547859681777926770838379410242029789040565056819998488083697048446850805724433807993839651126802649914362063900812271295054471080196256287218932188016073477847777344587454455588232451480697608585258624118169179286321193311314936817156316304810899965377995470908309364478577459073334511029483924588990781577075066303292436137961529415061291075907404836031316672429420556620844924742171537604333040817441244747654712242744517355337421411040476005325507209089495362940951246 + + + 6571920327476452833347249385717573134333600476387982605516871575848750051303735451060509269719719589079136596511427972681366800020693269052550537506902938206413858589095331052927567484699388384131122073720914744715075925523792664333296537163305840724922830087422387551122035465720799104493352984519901384699321051575312494618208289185824917538658231578327336930030078354125907563116119902667346039463006654022682046538353307513990863803410408299928032813112706266142996746035685575704468494161952724413789238358390193572363615601032032897359607274809273332080078818802335196389208669099488760471116139933787858451273 + + + 4358343100375177685918548717996472830487767574038773537832233662381338667863915261206394731744382633451379560923483321781777528077287635127233981525096037445899346387938950369036989173356555710919955347330516991319567320920376028807271134040055349952072737964905860769540456025562465330819501133575872732191197395432399966794472317664076032740940460671256997472380740846103314839613432993834744261277270116358871188334903363300478051334709271151796478370373999685515051062738848107889736663996948788502398953997191163191415211944366794078079329131620848767377800571014741290492024557570345958732312900150753900562446 + + + 17548321969377810558786712157534754659228508018115896650315799480522262417339426168719872736840476219074538823521833771963434294639435618121345462408144059988990456844607468159668481301236024533502949266948900478109236829362263467643453824528337927754934707772022554014063256216116153387378278703721277138893140676659538690666029131894608212520597777332640626869967382697520378552320767505062177098415589211019876624267432203216723751348936930425190822320964137618110307419964651001966480316023965655420945768195362710600247438979259963647670495794456858371796489941290285352934187959248453833284207510583397386057981 + + + 2575160727978105832767542946085880149435242819742073520450614293776620312540575616956895571927530610598942589341517420335496407706919211466133948387671976657587503780435474070136847386853540236870552635087610381208326280371740853830044915561645867856029366956188831644414457769766299314072739058883936051032767314432706525244534975204716964528872763717187289773267912466911951279649695292151147938438025849719579563480354821424614090029742664730435318143417315794715414536395383723451196383329309248327727785434481603841395403107423280697183471029310030431391765454097635637992614490007634585921391898899455221219579 + + + 13354433412133387140252299509653359256242837284687193642727527775714020575978057473324654752674581924563667934955894590969160438602117612721612055420641527461310041736457252569615579269201537375698305947749087442547996718356364065762044587621588178952275538656853774430448057119216803632982703947120708628775393095911693752145380583430653291987006094042083856398383596601239576520289394090158529726757972479872031521350401880751772176396478662477071122113690527386878634389954878548202489864560144182689255583427577141369733414302112079561865211986590642681148959333579586000441763752174838739844663981943495024260725 + + + 8058356214760334131615065769935271213933032175444027093955413556771343910576250714661579554865186598132848468067446523804469685268420983758049054225871238603145962755141340164388984224957814798293467276499325164191439265076406477663856832576051619202299897432150486650982334967997444737964677685326578454152647944883383303386862661549237164370674979930868983297121516981761472750621700459411418636627638800875763351262411074177912632885324614849649094246908962690994529393684055353894181001480748820615674911354087743086708092781465560527751292071465155401226175159426276844795191958686922695261047804614328377838574 + + + 3961002155444101161957940824907555208140152263619321305710496889773644417701732648599027699101278255072149963122916897397705656057803876377632634325107612913313286863074662445690012521943925832314411734957144849548982593741869497517428548485269168079869241674492178192722099116706211303626501566476105955823864074857453400991061843225767793417890094362821807624674092025368788751140187980746726717080391194843120094767239549848387467591793633926492940810925010746109132690082347403531348986940346819553198731520622437063539496331912569632700895408365297007376197139306949553974954827146804966656126544758250090473370 + + + 5810966927298164272684360682355024995380010270025208011948645954164191950078737552975025801493399347402804161681187494141301996888521871782892562220694371206012077872693230169392570603755886588059694268451415627356176692646170494031443900173990763882069272100584838881652640656166160257959012015935725775802990031524965120769737039391992735537784378063950981664607903947960083745342479373042642537845922684469396127223953275138693177744154742414351496766086445519403679329414446733777498261815521118904780904386251671144880093497088709647059669274652634006740536711852597931426746640340303135976954880278948116959148 + + + 3108408401219858853042547164286238217327248602032688680036703335749074171034031805633473834953296801017054027553041649127043902274929611947095088033260738208198632892558582960374022495084360338211403566818356477357085693306030879459624898345514233533218147774439511906198364973257197103958562868819323125955736317368182120457927922442988263588657990659174592694762817844028837429536907395142505636502668211152787827269829300508677512677086970636749034489737863433866835010979922830299289348584460024675338563078512200448734338611186085251997993596216000438013692165644307602167064279722412408429239677702478878781232 + + + 15571781740982061783655410398819924316759277434903704730259530927253281581837218625744318389810356669191784675183076935282804816078125657094362921862111108407457303701734528176288797936703680093583852350504895358874036016907149249234801452252386434498895342070044697143339070437908261464732008104842004772581793233746481419211442700969599213065535987234784325654492454327601089878711372638957233689329110450890572214589671026817851176152679948498691327246602537586291488207612670962705374629221262801106173774733675803257334842251333781580485710288503275742976512752747522439688882259092527184932635692840522454489047 + + + 16291087790689482984011456146336544830042094130923567489815979937898716566016699426006236467036479233230462771239384569030342815537279504770983412750108524510344487935466704036354204920413808851788799670437919140964635690069948858657870382675736642780190786309643903409162354805023470012904357324791472851059954149325443867731425990382623242596238022170052948323943812607327304277631487858790774795314714322836303048766745706551548560630898767170925791051244159165851151619393000341391780024846308084014226189741484945546205905419887657938882032546048995274853891662528038286706207172895623827718227265946283803534985 + + + 11233914027973737385557897767680257440386504605997611667497712253692076080040696085454354516575104351803697705106896236508433389718802708351456039559256151621607099292614440108073148286103327192184471336660914437698142294124512204017820111781114743341471059043983176871077671382774021304068148004156804997099439719536274441328810986844982373491713221194585334334915716470248789393725011465587444239746064938613760124299934642766876098388144861442337611645410509992844211990574318238311008369359736991257600903696798334609358327929157125046862367844329994804083286515034550158859538051094983994724529639329018968666063 + + + 5187180362672788062717872075943206476201987929603830153593014271666634039077233521684533685444706307784621054006536742861136727078098096970498540263943077245341801043263024288673375115380206853329544692023144276660809039484699321478180130939259549996145969844178898558796314045262247903248218711698535778114810170409094815551302452385251159993664548846629515020655527402469624631454191168915642267505678017083471221792175232181493299376681555677447416479512575880708694819480648514237176203141629853316072542792240761042044287137618762247104817167246511864466539882404039801375442225665892347485309856369356792340094 + + + 15418192420072001156149212576126077100348392508788653764414074917202192021750943982334658985692470104908450285427286527882702453932967096330741614597020968509267497899306440218507775669925271549854554336682369448052742420797341298606263292456404094431517133102004004796028296882594793148401114985818557480520717477089184374655624467573510624482463561426805102304438773563437399501733314412300640968104589468417188224592049603106699887188119672169459436882464436387030145750650427269056832879970729265649795320948600554728326847860831401321040172984871685714250062359422002765961005118262724373567181577525173407182495 + + + 10667745265127424877985231042113008377822739054460113919543837287907641620414210142748220021799481906857590863206021735318954313290258609597867067918118389706774688200006565541848200384065585429833027881335794607765316079751036670022606505430132488751374061783421293016019354279832392587329628969801433842869750567726892783914183238751266871062252227951295978372172963301325670458282173434255955229755561750547264267374351704840977017726472750677423656699092570255796312654359281070482828311849853531031827109580577004419669595712608295816397282710678221956746620301774923797231572844629787242281925090522110225183763 + + + 6627901245314812053760770962382308316344971549503556871197435729852246815889840501542345242916616770356034335031550924708864793878922310456296963731650591434533898775999838046787062009488551597506279454208745276072528282578111939445981603718486954823220003630736414769496909668074069013456575741917066293391083341962075700513865702980461887582189547579795029141119312792764091782297304576942308262943328210983522953907466638950053127419029685736576085693852332107742733980338697337383476748564122834597091216675247389198065182472351086044893738022228438815346014966683213855112997385024749537675123415715392848695765 + + + 2670388721935929299843365584760741413929330376408831525627804576208923333709689612158202500727672661657435121271037352175356749198251754754989256401259543801875226409867783847545409333924915361600079403230025656749171364460165714802696581194515137203597666434728622160897703789679786917985750220547305152284551378134836694939715194869765132621020136401393540332699135918184189876408318245638665080216235837489440583250809462757194158495413467120163396733462935093904080780337060371302948933054197662926260136982575840394702841828458665474363098495605880957005567693372443521212424617711956470350057887778015826171403 + + + 1175941189549601206995170962632266908775352172710069419881044379237851317614106376265442325997214019703495788512998697301993070050795456525301723809326036477743750393913551348966152931503552363200472437227027859932926666336236086336801951469909245717914267219023685487919292720453621093920240656887005640273996291834014924294670343271406811669410565605778131923147348537236228402643471238882432480575330477318954320887886564302880016967438337859473422573316066494744352980088436904181133086503216359350228493573606323464137556028239610854030610321759948965999347950309564510200493888069167155543183596012799000283138 + + + 10029569049066302966787226459548720398485436054775831427920319692114586096895539032422843535981269477054035436648394939373904464718325327915623708626907784358370592154426862577718697553142587952226575490587709688607634713810826768540398347623095794854437690403524677909437083449950706974439507186700536398546590971363510399139831801061675422307996013522984119823704600093229878542166405850434760834346659371430991126862326833577965640040096527419656751680226937444352912262311798420614552420226926998939554537293308574408089439980954344041799037000749658966989234531325253586291684134124464656282852186999166259365426 + + + 11529732209526387172391919367709542292632314095547216921779174852867884826210470279872697445397276724310839409385649445720381625363255234070646543079635593396062357422215965474434976067354510101585836036016606274114855069546590587932862381374930109713092081028559425331878463113651085603788420413810033116103423405765053431751721055378607098260032496376564220919507686893333039748826966294378215825078633543580188046369649403854485417236710821222882835963735222257250845979675998098149327018943662190817311676935015514062637230415445185510898703522029263345727863454327460233961741571023485485349790498602768293591163 + + + 7387991031961744247639694337735060861392881026394516888962983820763621015878477927998648675570687833191232182508005131434661766527327340621716315305617874527281888447009903990925765199960000524744267563199308589070232956491664368810599082880194723647012513592047192558143979092148986775679020775612703361361167861488513555452566061414314099727473267766891282097209751376039119935121249518037660508846928802250735345939773100014501511293687041545333208523654069517129316289126096623195911628238822819802971942726612036788697190724267983938552088619842336193412549520522488098993657615476542666464180049750333611607408 + + + 8966433763007215371092955437321006804135680380710096778674752610147182440700276742083427614348758903278506995840231061855817196913915140781168333364816816530495451957751355557020673085282514968396420496963299532370942835526612103362131053260377658212533130506868244846686698255209234135261996150799958822375152697762849603689713214915478762687237493639713313856961728759879846741020495671128427840830265747655044362098513346857772328220453475878040624998168225584410323602494280471907072410718426463636468649186744500779062649578327334298636809641514817109574522526768778068963113961019914201273590630945670238182259 + + + 7807837442163053876196698472550077093080957871570444674880991379745907827379379484803340167474883555797306871289861395237145558799874350777184952847540305623713191011879416119223821285175667384484618393123573062901968023857336858820523953956014711508289574597800616319724356942120928343714484618476908894300736930035811893964557013674653811639516637770873688385925918964378039277713992010908825361519050537904245352987228150284151573466483461558400463475917934497602912486936853632174428312324645881847228713559422617027463550909884706263942178767936699796549737854582943903141129065910242102476965705587319030159696 + + + 13861609185016266320143960177938688471562301496462126623184344431843945586616450118364440211852194831582000279091161049514997697974343517014318478303398037931554381038647884501824584393758334067898617950354345495196310688626184148382895589269682519305397332039454339453686223800173647467812249310678691175506635852227024036533357704600727300691622074236159244833579165238422743765622964400201995295201870559807659211251460223802781123264123543274311817569918905080818268214008718194107317994802385621343896726166934495698487561954463101775918123588528467062451169028604334412886570212765773396007904377033628080627090 + + + 7012082672349822835338696723852766047607691460056957540698207062424434728421737808573834704382000501381274267142771127970612844094424072264318597106440887187757401417998469695274603901285025984127752318518970733706979443750922286130506475038436792108946694486445392716562587433930808814037722095378932839825647644132662403237755581582040923860555861987609483794317043103434955758337319561568686241242113129674151068092110373850572675478268435964930786863004701851794073229076472809298679158876749716824754579199532180460740224449494833962248445700901112925202817898334790976207136086795987862312285245980562268491798 + + + 14348695402447357275106081149075697769575432868385251782438025375559296816314069394946555985340918475747939623047168135273670527521552575800193168162461101134643834694743480412466205386601559875318111135524976199948892474596528993246840368900892117998662767943164903636938551284803515293335326792905216796618057256430594075750311036153051149265773284573638443061981304073737925730237115379544973565920981448320785561125753900434369504607068652164466586813368623957584436950298132965484182775564175946731233449327267369509226699202473123383397489540754155822465052537529050226020420382068272324606664409290681406000608 + + + 14410371589140018432369366441933985718362015952145265601046936953840714876588809317554094360795000768916887049805587854410540880591973719012570567384647380421522939057351067676439880127625278747121015037602222115755338071374214507485508223431707204577197363229915549686194676391473812221433528595149261948555052791863201220511101200541859967829830426024281052859776677760795184317913319757840686131226515808478478548498201067238728115271171878497385737063010727443762687207984347274642590096389011951360735955316193277047499637818022545409116890681935135329750185911973485264028656726131098799262416285789268310734956 + + + 16283037653917216693788923840886383194657414540966455180187818974606709193963151053504717486911599651023273489688230383538979796258921461335554129519330253064890790056261379334983187032952930674322862299185939191006331678539477639437046711071873313125193064907621344655698889522631863778581306192440391495907212747299033817543054452231186604367677797183538429587291568681135853691857910659800916991453158272481427043774517927144203161311115241447106421277448774247539234742251795584759436610006618669193197890080709827925970221629869670635038315574437315927063226381593468097808241292647041123419257929980282909324545 + + + 1091440034078284946245749877670332456379733001945699861194023503607231928679773919239057432019861716795895094489775604750768740956540913887592777990845700424945177689595543965804128872314583513518278728241489134517476173224895408413088900249715681246335781832151621088472977774385982248269610002636472369727453281341915039294535582256461498544983519005311892123596153731248048092504972481405454793207676839487485587527391798194814435898570425670027165327384033453582035571054344527923829387693509334720958186688155229510368871434608787945659386050078780468591488862623405128665957047370852003132676564931110230595014 + + + 3208767552426708574362220016759043880113112993664763752235350545629914284542817679161773124919891381540542169460293939307603600131193563152522592781340161277575882348626160660515839158313649601614714635080223514485755451019415290179609330436392478255222991226831188370775864215650517287599340217686950891275330747327954553431014093564436939070474584242166118645557971682977516232107796658098769477610560094460434945535484668114786284360190023361162248688917461182424569902007766724125011040048034604542964644343698349024648582366994842253460940969924245778679904629735160029133666146382806797076958055649141798720749 + + + 16242468645408996112117767028536586857310029180872440287819281802009880081534185850410187472143177032452160178135500921585911162006289761170879785618917867184553268767241556359987218874332959060676050419868499463940256622290450641428728064517721251973783915916348480892143033831176654008961195657325963665140079474651589543242682981924828904775269911625495832713070150513816547357140746885793983358896122577956982998263877997131160837788085544193183686399094667410736025388580890880551539551395764282234678782047517318196677527766671276703635913127015308205969520036224203446067410883480577008171950725134670174548322 + + + 17544476504992784620653123780130134942467169521280171013729531718089034501114199852869226105349417920271021804522891733348595700556852601153078957677973997634723180229780092244377208597457249651699702736434019764856410724418701032565786686365454079903488961285725497074205890394327022555584390660919242361134217063740590419444675759874719789650650667353472902998607534275293705987581348913045580057625352150357075538943739204950114643122464800170101204850819133654002498814930745315003779613659798475899172455988879202428127552918792489587396816596011062206973783279646085174668225483443725095563953729944219385200986 + + + 16696851125326996546326451531404207461013965477655358597735746358691709806491838999562019614165670206488979238243921676534625820091618679284642057349046223479926714958541786192948981939223121147891703844939199850739634543781003775088609451147126474947643094865757856006427154963061744597267796952810176525148902219943622099881001713869177814744230404425890366016899307539391504431945972563435113190116917056645985876536104419619559699710398054437649759380802895807431927201292660517869556739507977674363159360325534886810524908962885098100708534178883595655050369227990338073590180922276096124707024113450269963841881 + + + 11653094530042263292754048885967773526658238493865409734519085574250312616720054321889302187708674799442763813032012605311984782714249123535851367427160943728542952519357343259794087211286617229846815337385614194664052311023595815434007249792365145350065093232189199191423766664671827906115246420995084550232912540565204178448155019528943034099701462981313220882158634889724062707090756123004071097268456919793576326613463778097783791256506649146516342092684989087052410027388729479929345419160993904364647360444777645052685315719017088766179106581394163963042828016291260632888305421555230884797345931828046657076081 + + + 7494790383705089469085310708101001087480719493423148447236932048084945290939280774189126626451435985191610036193670373914019477304030198629255635237836494148232593304095987091583111381253683533178065220189727953605536455713811341101699148348664321025021047382097852021777012531529226839748193896045133819776034827887671540242483589487444701734088414673312298268799499855386557873647542309465140832800659774229951868264947830530813279146186570836715840882852399393494417270291225694794053696860018299608687376750214656150998099925558455454805647317416968177139114794775780005195758014016216608173103607592581826318535 + + + 4767976909611594837729463608944581050949614633392596073209529041245018198961358445076096434833875740077722605443977820679425734226072307660604546178874886305673740808131708175215136540244277467156599156285339596990814687107215544705098216372320655296912108004236104030569739452252912866500091191131252616445001551649799419454353643526142403775817029018694993412914118094527580605336580107951713179618248828258202940128668412443396065231076451239837993657194240966416674949731261709184882801473926033752395604556456718034899674741343040592133872042800844895643767341656655732659806842796202155126793763701318086034201 + + + 12591915069352110900613060974506443741634236964089832466951970061861912142656640828977440079800643420246701879992629037061989564748989078828681648479847250342449368838059005995740454872507301782777713322641567212598159674653516896773817751944374861208833523222187576676360894098621177121809381231761768954184536662679774602559519342730269658721586603310295553931168733055686153214928729773521804327905248071769104263645447430580287879359947083962504007491776492383186482360689523396475663203732459726618935516343461251317045115956909142210946936390793602673945176206514619023499957595118766874368448037718798195341799 + + + 13034950749829484969426106191893874372102786137213921153545255320984639519780222622264954200826757469329920619134543983824872667119343729019358223929332394263055607458715532544957234186264199027323475202830570057335822977339093012591113026747888307775129281045514766518379052612830920240901643193305907668009658178044544538622563311519241827052644252674632511514865381185588257201047437090249680880609705389199452238193555370226905456820950328511557289424844986496173031351637232390866298139030823543684166955250503987487135785390105135752042600866082316590570577588380034327300366312535268536442180927268873809702932 + + + 40143043217738169750750741056433923652100484850867717774330754458727089197496194091496676182171199846257388141351868417404033907874716161952975696436720679325975102029002739419025424887044683477685632692532338624426011278666873669281231739567107756607896978626958312012299195337896873877431273598307649925122628092129702854732206602134936036654567613966837065528949754224692221894057690813277495559397474177004246960261794880321188371332373677154461158715708147364264800507973377056017290934149744768354327251227956473149586970579752181049381479625979895412817536290758337123448510295038128023645824988114302116498 + + + 1011837111447349980150298367070167286867823206466826405168482832496262740344676740049931009374953679729580892179365084933008704725295577086430667279052164836210188591177388530053538507759655488271902338387174704008615110203127688313778030665111279079913216369314306630274895471304510901616808234706473609958517603709985265393731991340537557758691650536870920765664864242300036542313292903108681444479704591649078986942241958580173681763334426322082243001799799401648882322784823733911388066659506835670290337734410681099095762877607314226663993944625654477741671351100286774243718474017506637476349410614088821356500 + + + 15077038685874351752071380272805669844764536127819329914828356443041428857914077956984397424429773233717250932879363651097920485996022072346447725034860346544003034193333936120358846964535348602246305842103048713693935732147401992449679895816177509283382351497505175455327132357534869899750106625036617849458805387201302312941459429380722534385897850970604871418437932158058561002997871504750854517805537697338815377257796054288016844771281652761915041211208951935268841894353510905215464066036607681209841660093914614948159889192368937986103595971634679882384843320128569692296438725732218414912968855094726759584097 + + + 13488421540471516555790093626798789830443378816169747186229073583869236431008504915472868498564703623982182280593886052451727783357016695303568771706915405750321588446092687512682674593431508494268693992576266252211507664516667111088297886057088422508985365133772623682851582047595629328380112257356142867413125042650160556124160371329524188237749003291601349776814221155381252785705534764063498827635906497949887875373733097298246999368771595646462765576159342495406102791110760224732929051003519558856491348698317070507870899380638243895428992577426908374575316931183520906265593016181491432934613964051322717981841 + + + 4349783604784894482226223916770036156334266151667012572009779474469809366073732096295141648745092007219466434991237132768766356912652300240218949707352735552860404603365451480331546459717787882904292034116071054516208000947278058050337418381540379175117919637174172948015623330432202905592034229666204192337086283782132717439695967229865136037660378830579260331196776411607606186377211357522399614550179529239406551011100555498116259807371894950902903221690978275351905746618581371318299491972271344682596024320826844574805273034560486776590005946667177774494774021300346109704518936871093103947788901713887353276414 + + + 6436458061333569491190128354252782329329390724004248635564973744353122834377378587377225180538657666231507118474094652904413861208451347574797473669007412443015762697475988148282058686443302123859457610742692918969764824308834244646174032706863343331458165546843948324042490782196869109423030651456461385430346706705110068118755696619233971364510555820800499767916375943766102833302475743701943769335330314699172110654942300654089260554301801880215390092781830991724014771919446282752734306143257119103393006527236273816195524256560537036137587329169523820466430370184766597467136129206940152107149659042561045546016 + + + 5154083859426666371612814058421380921021681911195654826436761507297842542593725867240183876381575964477262296561539128843454807296508463078782518678938054792281344315511218527798381663988679904221263460310739977478251215208751090324518103078025827918941845757235966613582920518576997069734377289522531938574296811846710452739830195015365749268704938799069715545667072180016865625766661029813858826402540746582125342880565037272683460086866870027692406875157504302791473294459957219621511141222683323909978312491886053977203725403412523300031007218097130028543390534472921560520960837026892014930709331839697510591820 + + + 3790396922857470642779080243990558172622651916870521685439728117116662780138645532941085087540512827788176833442784258539015155611557476069023724084051962544050697709121344474537434078624993701051028350062336942468407874464961424844210786578384261736430512848323974536266435807424174515249196496023150394032616586443921987071181911959781765445145290163321122498659375713244260710812208548955829399432508376987976940371933997283053084557207151229441241850562626140863760767937561865430781487302850449700455037804506502977534823189231942730637765705912068837398215922633235250109503954603112701890799497290365760733383 + + + 16349098906591623464129134253535513327519771476497624430504511505839767206446654896196609658559774303366400899212595445559244105496869670894994232605478133045679706735301772112473116902817798412483137767548700747336323433581737151654105713897665727876392658111093844971453005150912935345642405349307346901138901554214979513165574951061804616258191379493011881125636184483257787797016126446263498198315950294492355905475325495768151501374730781729982786687017973458265012624837802094315810147638672370209421752095542624420022138516647822127156938420460077185289779571870810383932225696587271115565556789245638053292776 + + + 3300283325489091098525134505506831244380382040252513023144029140179976525673450389349760054103858239451985067078860770334201289938305442092923113397992283486334603897466350033591121094657925769135168880954578248281152672755693204907190006111346194349427230081219243591760834316990067930031911226295079175908190335057619175445854221057149219702190710861715164849869201282691018075524498965422144792902492020199694456303006512058938839486134973126977209692185568312721855611394353019370118527771547963440218294975878929153813230427948444856960450250201553510727020239844459603392403432551012785072174386742811427602657 + + + 4334218274566220673100615595306551873599723748286054421487154595539786536574894487158724638863175079680987957209955699603691282556670026069279540413616613593903114950558826230653805939701877641000895854138281509969242480699308989841551935673193292980306570024104722526916984562405214834482412330362530956983605637332167924625220970842545431179793848861158535963490917490057117886399055497606859008134508223626713092932077907338725657549101480625630646952790942204467988245340898476973935709392000874508957513495255324945024510884235630840400733547308192440557287356176128010385120016864981476229226890068352490297356 + + + 2853909908945710072395918472098185136882087210834084223167172617755652235116033124000152485308937537922309092791210518207955445099762172272779096635155464116074254653189732706132037321054395441921638145719308815456615897259975038499007360014593121998148738093223209170921568421737141547918825969125284085515894143127183921698681713139664284616571586206787851781062895775897310568388411096900595556480459196747646290709196135044226655260542683996956327007250566557182800729594428703165979362554561443266049379383667328506878669178057235049811174152380233302631214837659642977188108844035121087744789997929251440716278 + + + 17107145234723702342584480093707257119342570578661272171264794596593258810539762772358684574447018421462343441252004673408416620147144624639083504338877432975250574419023085814350008658890112439165632366634972090349690570889763734495547420810807486773366158678653429183773049920978097638216799222557040440231670233446480352714894798795060092616292860584053532664483079963514072084688420177419486130664239666872128051948829290044725597362222799779844943688264754058344864963927701182685148689526876726565705469629113336035347844242447658631781402600069684929521917896970959503401153556274721279969270670828174167477762 + + + 17878510316349142548487888183177332192680585238212038004267615373859373830807391284274651878687287771621063230130620880381767052572955422857675867579666497285454581179321434547190838574080915119432242055049919033551619570404414417377411589243623897542386366533132579165717323301588515163499893737469620207636654003993581130821382293876965624203224908029102973331270278735477076445865121101203982305957706082855296022406791237410922133490768399636918329707738350811782161921250736724374327685711205300280673618146640665879589970700798082479611665811298483787831598462972309009130469411492362883585033727452218057710569 + + + 12226624171704242021851489995999056003340288304224221334193319077863359648270274755992419470937467276743870455293455664021269191710623224910465448258846969313419036423397138490249594646300814670652197026131175023967387648855904753428925961377511193096882655376916662933306909021873124740380674783861695568827362809070255939276561669795738490540724734373935270349099436035652148629840578962916682970434451375803974964973522074208108510195338169352943294592408104201501692874310966827671855708750549386495964930426222157165152858378972974449018287612940990001671311322181945435040140684739161494741878609080912162069828 + + + 9220699926962987710013825068925701578239457525995428139238377600431647382779640822984373764693056837131175230978632520342251664877976479290894973020240030720406411123281568465887438958388862122324420011598602344113169260039993359135567659993326428532866656280338899284135763686481878567135531527183866068848351601790626848518906371895093501611670295472046988055789708922650367628141838282219166366156636937398254034459119002736195773321985930986129820895059904551969490622513561216802375966019626648989690874163646910315709583284576016563350636374232720392415535503904743153533264663613726975525319275637637622004087 + + + 11207552907724006181983793168854113542662786757023552238489040497039602291190502658181746922594330827228879556695215963616972776623069346653997270017535874275755653915697556860805812086694153222860900329540079416328547664579379188950053972258647757734292836615293975492443830966109573072925248089630791207670802955290362403482573673775263805415968517076609497992522387426238235116827618708313468415108772378872828171349103196836018983329754706326211108728881287930928349411225612800312137514024550357833891254401744255883344411492492698904717382967984357773470731294025520325609427064270215182129698406413455832585382 + + + 8829813750304874736018177979654079599379739908925392523327985134186725920279272884418168487351354441967929612258071349719029112673921278140926137515908239180541810162455277090494919138228778568167048164233408280440758740096088337422115083360727237894081463202369085880705564847254217627189073264920255960512622028543280023356321743810303616205673771261995285748733987604758104723257162193288690169805871807161375780591732782471565133590791002406276581380613845387194788628110266788496328381024105827987621676387956645014794702060499904542223447267469225666030236224693410549309559066576863051659995421613984058865128 + + + 7385909859103454700793431522351330418690285622350436363580550073567383913418943984881986947422895978847295682955218543518225479776822049189438276902190667113607699804838209049241961845914692375591493537354224728934529994238384435577121547454231449873255339813130517192081792998511885516695523211347116100814871268048107102272434210233543464205322530328689680809857722801874211741999387442326789800315958090703848646136445643101132861552459856185345376182815894019579389285945010173921421911804709683207818316476142475680039004174133246730259153788441509848400302439373000857633684830121799239147650818655660486024247 + + + 7043164602682896549093043289553483201517827260161531772174245088092952408049697265092265185786295046670218717172510312372911883886478246506928003964184197085864287275710011716829550522664439891399674527200990812145440549999862765714125834510387659899697852370598508705742749032189197929707781665238864199713474147369411976895078204779587204430236637943210661074199164963434196360223438603415310868687624638704385572669582998801196689538133060586583291022657200658468349429263884397826727359608447358175486571615435146500042211234519395465134656646834574292659976260183777011714093386690364797257030650114550962752726 + + + 13347130116357733313257175222283042439706703348677236509713582643520655986233996978797524964761218065482764031843855998760236765425222846127697581170650092971871535689523928417567664928082454582935078090169874245862887686224378059326798296017911498856307146821547799731302455814321022174570998566532550819231828947217845954344154832938115179491298270004340479757089579849913170482382153892295441171052900663944821372388640099708125120653468932454378359839816225061221778521293291294061710496476323635748425756727118621968019801751390353876593459541248936540197860637644253281555457726232793335477607512287769858904776 + + + 12410456560285425357774018131269359456312611354203795803188945554335287031765601435904309413733753673452516450321965370429683000401744627987869864382812177796225311224162099332420114618231208706756383980335150529675999514513487421175825312149240272740245390767572154734289986059757179455831522756238319699333807581636539039444675421445627895334333941160378243531744987735796908282017647250902881833167137176306329374142150504531407437792816401773858502971424719208620549296557651662344190514157496102105195976369405807149017884870985867851242323157830516372597542649718885646414473995253571658933108556476701498294651 + + + 1635019823958422781540431442877921766692317581691733168945656780203207309022182691105731879754456326881903025195667466498698722681412453401028048826646026008048452317203969114038969183579414988111980214381448501079907441659804094499190495331003397891978762203389743082822130890144655718638661163669717422985395149601055904707475754775488150151008546009735383463028706184049329781788942180669760224916728578383480453394647215205482046729906647461555086106015833884000254811816555008818478991865533179427076215827440031247827222412125983953424388428463457810510156484343633787145887539349887565416780829765326538125890 + + + 9748884378754318196806314295621709049934002890037323714045485985942317128356669085388644420095463600004098453581396204372999620982229400641767821916380806477653435950445607769779797828420098728896857130140099110821866501469285936757548316476333933698482422408241056063205549606231604913666708928880770208451506103985232738197798006488158078913263740515439992247747174246553291917048618052066331565828341487475847971199125267436042438499667614988215436310091580328849874972044312096485898019835686625241573814810108144448053849017307148323310195123056751916986101872885907097899269752010929951051311680079962205352956 + + + 11852933560324771335370896478074200769784894243734157671682300786086150421770199788114650370021566867452714371672583909924136764778232932395402635424964079474425050293117061984125416477660330043677366336184402082684911737781195181712478764903135059039467866959659969613377653603637410995763396225504599325767688833328354263412981493010466244104587230168384244174659740968527347449727727609290330167760061955200483519999416814772615372299554284943765084420482216515307518648698170819102922113838109026705451519429675495260909058789959087452643751428522788832219862496975724169756060723616757433964741153274590042448555 + + + 2113826732678886836278825130722519321484935263902338307399698153686391674183921071178480461708845786089649772306895974650998578192090488751255117413776207808247603318737386160957018014844062477641668639332867700352091245109052587986183481457723330838261402415186751619074948756276025224626837750841472199334743560922898274790129125142121721084166913772617874338990605232601852403292442423555701361219694936916908114809163144819680520090114952521362046225678950924594596582444458985360057523744626857451011087397429176971569396037574790954919123297910123103655955315576523381305633332387587106138842640406923900919775 + + + 14237903549154285654602551718402546400706654328659083222141499627331200086519440944809949669817507434549774661642822481137062473145314360546931943683817281719212483328662519528661107226435205440233829917585478744283469694998748224224076144987221000683601794385587108285195700526218066574319728799805943935967454056848838596787011499967345890046241535785293939152019642156793073210313526624317483125959744768702183250195967816401910667190171788715574372787072832293359192761493932632203749694264776748401400555663555923854144951467305251435305743845975837031164946434094657469868996436386588043244407176404576940742224 + + + 881095561575496128569200313342173957379102319028061395265946678196403610906860534993791164170058143823954302290479910925015583326429783294330944110543388737209049912135049657296746785312521910004178522098992740667862009329244343277733771936035017492199294728139755921163357892629804485137457670415648969286398071773704392501444384176776011580315284244645756385257998582716146117414221625416020705682824601492373928282060987237791687218051081983581225959321213344859851027376662833495190216029128395130630193035658832274818463507525769209265595581276493808725825815613118255545774889398584524135155927794248189479756 + + + 12870112623141967921292329617345715042699943237732142614675449075668934185050305608208992514047713689036014259823787483873718169794597839553022090677734718304832983036020387085498748539843943905188159118532202637716687402790070469673185970244590240831825461178110075288261885463930996982213705142766708321729673013651243605550924645239612685175781140330207810651782269288775535950408086919842779657442601633156394245579143718676541064554418124885293582030971619244564455036672355276870080274445699416198803403612490730222435819428480938330416255595548895533956735799399783899762644250785327215101388217346461119270076 + + + 493652931397278546618299214415924371013017629781042626671259271567957202154049942311881893631598000710623916824529111236033191883126394863036297044850710963856030322326398429922495187908204446194887025276203130894897501262243087995639816316338895947651844887696550385313998388651102733300519346121487513880399133569393567168511853048375824997215076442370194011180131042259559176095605153057565178505395461155977645404759645283234290967244780340600481423302325445909710179065227451563097499641569919395784243888644131176495659805163384647045917158161568181049639735954733428895363058504236808113546185486844515163980 + + + 11961732855464375873381193738886853041936566502222370514811328228214204616582733468168209562746246797478954829033078141181283304981883530308184194614943554012289123558531293923015898147897876992905564583880918761856840541448540383962330055887071885341054610963873684331381646335606008554604766435217741424676031306040078392332255884100778619613708176077879996956215300973209308117690034230892657519712336057298479883832366434125575801102824587550113976701741008851201731066809406344518369738442399890036828152648989780090396638824259039113343783014195760197508078189747151891592982374204160983638256729372481641975070 + + + 14973138155774006156951726429251157187906484053108744918921693253623331363516396446867870603501660732714942910804657790954777083857718581268053783991048363486889647561436866747890237510239734395402324344347319212743395653055080539099225945225487111886908297870829131974848158286682857356863780540126767308751445891367089041846449096932569781577093287660663189857903816824986417461572213276726109610394788777190562490078775167543849520659948659266838821809890240224637442472103552420222155940941922863675552126219192012490069804113867536731360782995043207195215090175339768053918557255223822466236339905840459377645586 + + + 9204468955234231717191384170048053192807348444652067614411684459605973866719348439797376812089906374116100675896630756849674610349616856538195508856231242118183076558120186910877659559809411720083109473263034799712372480405229711712683454898037008825152654997072123961928249281346137149077422828395449194124340120428995725493793961272082841749898546120674701996725871408999872430784745919385078375913061721140918612222094204764004341047029903440334147300549373059773845383612691256015462731317142829939332463626997813177112570405827944391309043474904914317509635212207802966599724811219600329399285368752487929771699 + + + 7787663127552365195156429454411143750734584873398552146942587412807128925806170595212171434362389156681561985269324150767734806808145773817943528259332214556821945701701594355733429254101032428519477737019760637740445044997964485182538742773254769710162319714035660708304728697104196688332544913902005066264278365003563757379096853163056137582338109637282256444640483644334557118905976226209544252635499675629236051931536341775054545089257645082969259724167260406594022580208933878143018083869868374542042022449338323374229708060449984492100438331012491356445323685353343024848008218024463501945930590288892589088971 + + + 986672603198307049597740956139883271341940497768701930924282822673893377441784390391261463058970448293927751408330512812633223983881943602094875772434973149881808741964139600048597990480816362835084840442691322448054429418569294916622060030264566535240376909405731183946497294320355299205534348238995663558862240858334077474191022499491265574833631320097127889212088784620110269788220869851699986144992460879679417549190102881046594113564282025017012201503954646554207259876438975588111607756671131978768280421730523106189440091353264545843187568241350611162511783793188932745162338005207064447310150257012397363313 + + + 1557400343581506052289099302775965950961587623825858457059005794532309855376766871527998597220664863158354117542681735746743269480867297610089957621516293998388068064897499397758986167208504521943480739526783321701169526893213179056680605489910463026767640616838837104540103317484409531065679194553031973303537733972284994703367111039483934831089446287066437662021282250662597813848063877229396122637306277889576779145420718244598273355007456691430449559982368335504028492853347596860237724309629394210912313002880231165562595535917340715495876711266561283948325870948582259805182177524293129625948453446359328979258 + + + 13596811604615000328929182178598964833883654661633199498077049381731601277186320526969096943177262067373640002705503680699499729352448448165118255744871811025437561183316853109947753781089030684899322587957444054523042217232398688410407210489283973493381921560019731060933925506204223773210640610475683537315111699074226513410768759569956298083059551647425709915535753796647765174161695195114924718896482722546797245116792470139981624434693459564320200753661612259712249349444180544239321279304773910052952525358146812885465199042314463453037294575520300090737391756526969538634849228760867685330974750496915196471932 + + + 17520522559229376269733737929333625985320645229343117506571256921604686064204653326537161578472865738026538212655526480949662678964366146307651423116202010703096241370289657934026536424767333334189184051392695532103779503321516427163053734805396083891015741708345280654416192690597753559301081094431845039965685744160024511922825447340301619795625931191386669954405652983841351858225157788593331426794424186330604289236707174507116985466481349660846812577961932097446102120595032869140195147893047104477919661665718955468576139681362782174497630178617329946907590368474510747019165469878291498900936814645647378291762 + + + 12907328672074134599731715695845353570090074164194024110896828956389847666241168630600732830289550556777901803654473833857379035890994698743629075379334777395242382934699215482328329936281026287169277636932024575981284747512437434839902909175993504689458569257497107913264179893814404916166279083856520291099512017275220901360373116966760303620172128015984050589530289483053500559602998556062504669600232267536721622483451942475981635363005947562477858244471848849618743687694007246080893212696863998662875053943510210993405862508190651262057639058312035646333901848728763464666491020153292706100450750584947744844699 + + + 6517952952786412398020337955755771556961657932805714925270935574960802126448735261262841435979831063820991264231362095452211185549675586622643234592803050661691823318053039721351701432612189795178509874194013813329624916827726152724020089893270260379345299519000623472727880258995595219348339261158577901826474368121563567287311750616464032052150174526579411813380048030692934598336415229551366168342341637864755036569297966212723176600294914443484173061619901910675943440415242853255391598503229269352158239343894983256077143862097783367927235989292597704170572788141720177491977271933164279317990389452730583251720 + + + 7162037069585917471476291923116260299961434040135240112245502046381300868246050552690449024408660952647298988138470786422327097940810378549229336157368788063546851089354011461680342325840819476439980188669386468734688941162561549744547624662603499535002579528354537361656227525561054474867378149908649375017809086711165574136006749223276510498375657328536719681752373238331534479833178952430463126733149958249050451145520013958891930332908272189403231100429450236465332027493791498398249510376032909976521824733254499310718842936068234607889911047248240247749519322767832985471966377849418382692532136454459223964316 + + + 2277167887088801017777783179245035328536253981518513212755725237624592072643329293783865042448688091049197276668482910268434185882865770015966549367759963940457866258425758042656804775340710395724904514316238629259507286031368383208910366389554832848528120135261312131490117544648977066078797610583096201292141278688377489723010278158557541957376219390109183695814635607792781287885279525956476060343255276668824811511459661467270966490552435389167314646136421653614378619728383190034584625659713847081189809438233415186011922182406770312780229127388645730448756802615418228559366165778802470701380609045227477937142 + + + 5733126629854904220705000603763479403018558346683747464490873702709225925392666953532253023985541966905963829508708269014916928952407444067887739198319377536698926670019486288905633308192336200918652531869198727201195643005378590147901729550213417581445696546840633669299837902832085504608793319871742409889144026176340182256462765023559703718587128805565326962379815982097194360041331157875198562644549371696930846620819900981586430179341573680857623750519907866760212882888595427718423257559838041306230299151498432589781086494604953022228866789612281318686174405908123320078525803020921654717898399645740268996309 + + + 7801982677413557255610663664199943803752909670203858708726230531150761461546205990914565878397518126280340641857744047902745879118922211453016924814702380495830740593324405007157397982038266227976086944891765804692392443520054383428294370311420770027974701372458300981563261066139795176470023737190197161723459072466865463287968405964536016266529451111507463604126229548238875516547925873804471270609471522951532334113386510062297963064517858749370628871557111461746522528316231751843877865554169335495549815255807007159039963549513168781673782636796267232195443706734360447199259928279437359897712812132704126663929 + + + 2268353829418948223101908274501251728499841157451265032254856007000391083898749193251728080806788664274050785762160563643442935717043051555355898303999482978633474447238161126969182836614979293460940563845917133836997562333882516205008940714571031443853678301342119001415963483484318555738055374413128577012126956823956595897849675092498860984900510496900491188262645806899384104196059706339499346560797478573287570602402032514494419080738676719218110030583880244215762249072536019862057578906095139268884730494552296205928567168720689187184644612518190930505524911551231445043648334681788548313945967909378060093020 + + + 3950159074985278659920160585693435991481716035246360816148461325923980875289712392562077995893467446049635660893971472844105845538834853694190983638714070522529658906133181779722210664062593050614353632047678821165533458505157894326768740763301937563616845413836155236642207078536294797579541567852110890219427881630285053894047147029514134301982504616293852190388148402165652402939315219736572171994136108502805539071526859556160183845378520323665679543578714522510381331428407299337598794009404347352843461879262550908838834855074856078822288504279861704109995137174839990625297084216140896807791594961107792637035 + + + 7675744949235043617104594312376681770539832764415262723691529947550229458516751867767695871328442107314249379901159625996461312801471591704133546969960928290280579508674796532420536306226421654160762178185112664889869768017739879489365466511096577851675178106514140896538015912611217813635465374541959372754261526830770380251931436742240645056657738978812325446962482283964233878984941292756004851823106854113403257800494599183688934278543465842802613212001470855083638184579185836096671703417487951709301617455188761758388103463575965541735193680829493432423544805854228952559322071697124098117575654278426818957428 + + + 6798414600053129973765954361898622874752836376343947695445956819279615412202688453142990285232706775489360809953580219567240356281198983180250901866404086449837210434847133100373865052386463150087430863091745267560215831423713557347309618391904106213955041792187589614806221812150373091372423510902410786336322969985873094105541313255963755876116279538047453017807595052579225588730766151933683212312577375627115869659344124409990787976725937220991007877075829992234721801896595349673127445418718051804414232122644545780671087811614271693169587080564241195879517305534514679934259964220731128561298275138375885838055 + + + 17513882920601526724004771488523431206631010442955837428359631390521440528341421714581358402992868719839006951982762771347466623039713495280473746958886034235119014072093681947673446290027935108706936978887980958998037099745931906774499382242789428377244138469074741908145814964652056304877271642089201714314780114494812085859332882329841250229261300105932980556287024057651177845561344202029388300475678058556875902630849503634492029575674207188271489200244057337404548827287203674391315171715817769592101606906651776938420926822637170250015613727405022053237444855565044355357041538407694921135913396862584770500213 + + + 17203477582897445958108664861034296969329523520971657787332487550284361613908005029269919962963887662858484098754346957161431006384486189437997697969653338487182794743954500281807067946462184775257509202202042082773200079499123738982758273805333277643928246465093642235803071673426376664454406241491655008231812727157272755981751014652561729453994627605142155982396493851949426028307991211456108621302930996694869150503416986168358794246370944762929994740565156019951734578724974264178041002330975984985484994609367002002353559015630679614420499025219732683215579064706208686310440392249842423807085784999762960219944 + + + 9976486860497205931127206925454827141354636545952567778399926308872180003863768561812288338512549905983271484448847012028647532341832812510976237007441732798745642161835063501261136700931555733946783614381152136589738255516733372718493679880511543761220802002869854951301018365719682480774334789213970630098212035446819574498279719369630954323047085101698346610887332596244119663607229750035477733882303093873911624378426830519506045565528710980149351220595589313520980988657885243915688014362614062637578955689138595958022501523118670528887126221411760451383807691160719670718359073227941652666055170425152561990912 + + + 3798474778070306850491271687422908467638822881149580220867946218392289206063086254476692564481727115371908450273724263351849127826520343261371257076337013831521878065598927872977678677548215339052611149991779101591279928290616045623045358277643506512195697216328257650166648938898865130430445800532486889459101417791092499360904113570715032783026065525498036433317657639104899164610491592141561424746468899863482643930411365674205839221241599305583273927360290787618714997288999500394401309333512280250489904445102409646336910636177847480759684774617516128365928176057449934162106878936551133187777659731231169802414 + + + 4976406883434652928561842529461897883004932887213143372410530399701467644330090399487094150499308513870769736099351148403100052716298230088956327627459488257063602585039453892692729710551643280944105689274497117616333984715745402863517492179487403463566304586402165395932161023077866898112010133432571347030434595062411873601989124983433260227168123500800105284742242838775495984499348918577681653831890867305955997920456339556704193498085718939836463154364808264153779966883467194113918403000582804948768000754795158606881944772632938585994435918478278803371367254131369238702629866869052348730700596686741799111827 + + + 13249566375225556480181908350761186315277975983365337915539326439224141127495329281995830088168729228942673364199313719787306810444829367720451809211513557676259338751747547637345943277019706444422500521250191139630821447348623734236135311589735973112387046114102783178569453031438821611103078676561199421156093312553242799683529346186982111446233975842668223572627403234205761650582164131657525644826255481525485478854267592144116518830579289447128968599069443238949150368391389561857082615094138851157053602305513726318248826419296993908583392525826396576116530326601526486334874620241934167290446183929437365550761 + + + 3776666136746233994536262448808454333817760775914311830109520038680849814431882872446428387818019617617193359689937768697702708610078659529398603411552843405611396837902455027114210817970538638347301330712504845133132758173098010239842719220282557798472581474036994111854842198980499960104086221145036656153010987180706853002964688653683921638060934737961058953534161162568565788401212746219592028813687707709687298670633236367480333113672314265877951478615907506826630905754975675127940564830519106046285284940797511132731395351875674857598744754689479484836529361351687088767340092581592200940181293113205180833872 + + + 14978305857198812444119809836664500670882187606570909319281438619176095951955374477069492102950430648697194735763854600286253840511462655569588529194223688730649134305500180682202114740407193349437777470983605405638227838381562283492466130338533599879407239235786283420666109232990707888850843739355415240455842694613810356489419783709952943992124054909171730136320471506754418286063092362084838441394687170749915834289092860803030345097947261559199255452695430618579546364000256019564058093435381947462603819506430859235047253575558270327621574660455487370749643875899822974746767955759177322344693702829475982971875 + + + 9402989008891468510792523012062894241540654042815318065584485299734149442345169706808717745500632294420944636003559141981030919174809407684215510380246711010957670997454179329394309006645106289032889465376095325139682838323790059602221028219611276868369749738007204269061358500417550477706071507516316661925999417734013059080408728292377331459992807281961357564718257334587616080995337348649353604678872101013649838319188106059493890280077384997543473554852608525979120328476887019725063038831867929143517803137567420933573943557816522578643028480323375685497486253768735799590246770293540384633610916283976688152412 + + + 3815310625099311862014688773831528918573641593183413537332665075850201102358235399955214215040601570771069093807256222490448100234300603401298805069492331004767529106175651955414055347435456117085621682909870737404447200955200238563426490365113677192472653739771478698458712973091236667277216342995855618830708414968535503316735955605850096615847086866293326711905631846616622597548402915125071040366538376451587917098035236789669274056890666245750605185445460162328233174004869673250961231575756814579238020182268905703173569811229538403692931576958525482948878145127724653522902050639733760757474426621076451740460 + + + 6346179374257649896751824646813934981828773769368545432161139585708237966757974394784192466507296423807950356469805667600414982991310837077023658734585446849757585191947068684774490200135965723332170397153175704209498046941482091632369172874598185497686227622607349057867764122254453915455030334906849127491074112994276663384037823824868990046104584820765374242415848468633678235050252396248295709599664655420911443340799586560779865610335311972665015377943891298909946095045244948614477931166676883029459085625114181168213250786572477823290628236866257075409970194195895457816533535159974979881229316970842472575041 + + + 13280184552966351982369430932600397756398895735371844484699133854973098952392221045640478827978434986506032887889390347214951610431679557276364044063769019354654417065746551957282483946602536134092254240163686944137386071538049204758951695728447211165264327202317239889107949194793874018251694567611608390410661445557842692910033679772965022856145156977197742681520023274445672566117436113348953459897733040200486342126563733640929041074461887128155226391080568034947543255163347415570636401862945903449687365397156976665475925592445202001051391914558527299934733764555228385889447394476611977406281629174747176123139 + + + 12858289436116476312938689405743047053277823042846342285877507602117658159921439484095429411571900541628470820246030639436163340940861358701961615607358952155019891808038571553939483669760140477472281841554781740235774550995979291680388894859425005113568280799528488125011545804588753837849284462221900859832126759200968811419684717142365955769204661365944112230714660644317841437872846663690043877876021369154394360559904405990424987096790942763169762868329964064596974047859011326535139905424647824239944116404520719957711725619464990721560129071128429453842267930846390780681622011265391879847607194330079257531798 + + + 16934631957756251178470342663203923888497095453526779804213489706507027240480803650579313857953313712539716784660664788550427643259557554462742519368374679276615970202976952754285557305574070284797927981781176313177771436402259824747316348036168255703031035168362266284337087149324104114483564749292273421562600988052060766635720688033559869074049559668593997670548811550088369673762337365452150907597212853618367454459108616416232118009728742159033523069472133342822935488481330016105841446244773379908336612841890514170359140343704486444625611743490493788963010661610314968738858895814970489023983975506013142161956 + + + 12259842486622974965358839619589243597178234093476071579779973043807717500437776458840820835077126101085296252552624467868821914227249601902419233582782700801045351538092923715306943647065513449430360536390122750047333960113764662596696005249134484159792564860236065969994479758226798812290922657714988874970493139710769629336944314979780819989067948480421881873548683450379955179556362579325907101846605058127531247673445480605855687439322597904141687265325510386274964793386127755283618287572352839955700047977002280931232844485658818663885080322073327248148213929076768374415879685976066698860871524432929432579670 + + + 6891272735810114993257553888161068789519930612407544725635036115839910440452184392759582660788161738438052296135363406808570944753588466416332111652865474107710855751267190219536034992101688531294781091428425260502936517606808976324150681655049584508263455945127537757075385823212144456314123680645472457981004800428328528995573163457714932694363755777111473113713907556983358854007886236573909951005082315639015815506070642200583393299405957061733777962438791577086361121723575493606564506285055118295554128579042962659686550649839173086720041809029080931234671996467206101748069260456704544104338054677291123487597 + + + 8963666961115922483772620162617251922036756158418792935855224026079055955448174892987583063206957109932815501543932614963127317126627780632623790043277619830157919542545383561379639138035396999552624970172082046787686621718301284309959573886177430538105975715935866980344896873287798498162622531248934517327720119130614179553442168735283177233359333641100337008164677666787946511280102412333100232601890488267729283577906136402322736736954380829317832241001173186488659101192241321777485186404781672580072829308963372602499628449854926235618816008122198438133285274019646671609537697930719101725813519983702827591828 + + + 10433913227215018489369567217505442627497723280874555994996804084153934267808657656392735257000981853210580161730270228381714205634246786508904246728723438828387374431525317517613578278704367819290217393649757833062345313839469534237760209192762810822053005054569945477019907911177671422107682556625799973761451743340677045772453191486888800999768845445225652411370299021876664525007856733079157717124676092442267005068850698396760093521764820136801217207292871730032776946118835557850340444676134459803912005570585811734306369148178675406059933573662989204165512119227293812816327026699515319965429581976035185123387 + + + 14938079668546578285032176130630528131508122718808476763216032502317900110495147894280825923763932455944474959227028672064800585653070712661192910868317834371969126387782684021130520864358138647134200469799366634155288440723655567443548410485535589427474573869155128567882251860846544233882708808863674581658773459068899630395626361731256592369484459299504421780656208226835727161388179788050230742007889324573609574134847281127430848096810495282277289294093440829997004414423484475502374125167875667269687006611296173337579905525631377538071386026016000081377837076593341168591868748591608669865526544457702184439572 + + + 17403806118406575784518363099906717127034637274629467271752424750467078625625378710726431797216202170688779378904071587811342013823321049373559724265389536273176754026155700772784502792821022503556331353699109521419517330290489468381545388684258502574508132986805841030971824225864366807496767350534410653888634339753578827723505003186086793569621263136418722165802033023275178739228229733707921715640357042092913722905768391126643747631637907757952801871246934393663096553538372524766804985938214077972861652638603985674526590518278149933664979596459180201443199678134552905243775430966433988576691024716138702137122 + + + 9695880535858490905583805565326143036704413146167208373681098258512481923215061731141240874073664741577990371041276622522081587899714122743360609111363419420835665404831012465872842147506849443588131248668471597365241810147946708554193260361196598543898592605608460585506270338053969745618808622191027833385355149539863659321918199396080560120678372919320853752484877409735699519211413354309991526339078433300544556364077006646897229483526044125510371598345436409654842275054863952918321726445599951406970052235553544712743049555271717807755655829593749662966791056520878250490040179251038923638334125052972965478826 + + + 13402564693903194642322659741525337643237038131499563445221811145240368845810276413195069509212562690287238660995604021374904255437886856156887855490862296712479274418213832018982417655093021639458580395379560481125556635578290871468408811106714010038824052328814069152704945719621103657482134822793106343269388358850771206445451431371902062183380480631015088375486946655950132100469547585408294360183578601282370687426211833454587151155178367093399694869284166192109498254348841055401670132571470677705910754870434328844963569433029830672232588126853526016609545465555850403048289961032384406980245630637925140246665 + + + 237808308907168029382966436860290913607823013046672946269713012259402966525491219185478813001700635964980942556541841859666052735285875865737426204801617333056215434577081394374378215528421401271130971367165066780842624219911319848165719252979132129663181733524671040779659854206566679407294913167918414881147224575968661172870138072632064889059837652865498561187954860855808247431680209405618571750519753323171681721218597562562714435099045179117609322759892923409515826353750469027935710306251764227655989577016927836535056830163901441475755843226426470954031596590160978796342204156211550935599158043992566780847 + + + 16159025186884996519381107963259511662248834758408576849490242464381985773629646830600136760352378094474000558655155935055392057972005961832464599562958312398279636217963326461881741467336333979675876244159723036541256282115552420425206722505341173795129839662090587901035217767068775041125319342266925856980339184793995764428695499453024220735955105374564011409574060394916688861375802509056809495836464569473385102207292258279314852137179327642819932277482706326214761362457800742163009730458374452715814605731019674766689770594182106979965283585925944861900871474289711730324554293915437912127358254567616058284602 + + + 10559142362169758313635738127318317409834778611814030520723507146773475525810179564925804550820796478898667162370408759851160526427122947704409713706080326770089623634209626510435604043683136105414875429660703627641404442430150924915201782631947701071466029310158855509619356277826508684815975229570755962856570450406008168317003206293077469180534750225856547366286871199961891033949854692718931851061825887955109289401942629854526467072856110719871358132749925399134775050052605846578531829967056580689083334511786367349528065725340285858631876552052635368604589652664028843422369733946107727413092340793813366345019 + + + 14903732482153499273973864955794779851528348232906588133797791572684882386754394720444385989484608715995006728800523576154220787699727406563290268222800830470241835723120300016692413120518630117101669772780854031081009513225334230095011674489525337904675189572760296912424570025168540435593219545596380226932575774306304388444494768659376570767636548490220032622048100258017658602370519641997667751993917115363789035875780671253944625408434376271747280229334156507524015965432310891712418822493011890085187462273059644570330901648074783772649279218700194814263429186901398537884755764771537464925880199728250032777045 + + + 16483267934232851704016181550686483507970907162286645847440136314617521995315015736647253743541741490266314119609827732136858793727005115205826563393828888270046449680914992565263875735390017312044946415048088812013772162580344968817100503725232081663096401460872817828561508340610241168448536676665570728775170973198494747516877415000796118619004902744633844951126441239911376720705553526233928982537639195637609080449665156086149400323676993977879120726819321882354814061070259352074771154899660608057326083293360236036996683500424950004370050449891193769486595558953171199040252430478623801795658431403221520875340 + + + 11388112299455180885927422840427638357732866867454992543042163969508244815966648234537209454638937874227556229601452325105188301690799940531744646493298381816245782770608189691887718966405885650584216016042840750722027673522949409276290932047617873234103093606083959431286172314367809102187357427721609558082371487871866340850037383960716230142099273240260637031928341297444647916881654699517843138726053198575099333865412099953272930170345200227937456081545076123673147561398941130624722324438362089354495559504943052712280345170341399661059733640192432277494091031464627354555028101574409649091415203361510099566586 + + + 5214468656808743414026654455580673176312266008607521509274935731820159642466956651069337905201146568693331623853566222207633531915732290315730359849854104272530001741663038800944348954735259723884374973248495388901495000155762573698297313031053411379144469807021689977672097267405464252970522728438444103176543602339552305496110727953705197101531735260036219137069981913737734266700826834534504007564012397093825170776920900656942049155955031712866494162792770841747686212145655974645749169400031899173022229597970835561634321458447227696411636707185223457619373477084963347136096416507268694748113583596251319083334 + + + 2145727433466682100295270299571896865640636786369945665472217131991068727837574999345327907136331415407738390835110226732056118988938033501119700492798110853001363132142450678849240281893951445143656174134268429559055126172632432510326775097406792686645880212618907776548847993649568458816853319638576297553636549877694459564144095447183585269828304161245519091153271990619217439231788056000870338333872628899202243219891435438225965307019263204561676665678883917860450016898796963866205584288520353800767879696411154582952866718254025962834854255649162572127480328962613610515551289642914383071183104029500657890791 + + + 990103965123454992212722133615647153661021082670731372572624160568683791118793379893750453512039916320090326442564118977150612162740243613907953837784435630620814782751840212222608755209592837866186557096966409053319514397367793953597454026585794327177381301885955478760928969251978470984019357388961011240723000203095759620569455405225726933210423642761361540800765390028030630321650158404666654835247769603066490336491433971407346402337352552713804372507969035229756837718008246704793828752527239576025348896559249516874304865922464070332236544093850930285798501824821791353914318412004469159080458022859603216933 + + + 9330295053702839874199800353140575974947631118808890071039640040922434356844824553588634027234070890840425489065716810383643014763417092184515806582993386580749726360878112116822894719790119333497883972398653620481497512443886156496263226045353589346771654172216236220728816521219981710587472541555057434437372205389340342920900822797850940084727412534247997383970938374374832216066807860012704121563569562788023952841207828575606798588418775047002975465405871920504598862832210793580812718747498038567300575545739233024765627801200192129102575091632217088043778333445117573400020032377532464186967599422907991168305 + + + 2768198352018820328598982356691143524633543742635052540391391947675729435053511329448691880526174331759156473230165938135486158835379924708711443390474690152530681273057249836909693653419608137453853450161736274721857287606686587284719548320356094577394752263326660241503049463297113525253097149008972511028414128153742473332089338915312880057533991585829856238782140400217140025406163001941417692686562404361528616162432348320828225372035087772194336881449572409658308592167159323027065172153789866038882143272731459395643564749047432385421839324125088659505574598020664546370121049927153128563882169436249715206091 + + + 3800879572224055502877354351557783152222363722622513329134037816648885754066726457700646719873330610004059980628302716641313580455013560798599461454842239734196761374051334028159076417037743418904554778887738661962552324320745506134288831925125614139962433485416243738073779266805461995342881386107828989197770978944063563372197979260968629673256784772142585765565124703900912494944330745700976144173894414517106628465203017967421989973212450388971055466432159941207021647169466281499660958600572629580986994389558957775005504358466512010700509366992514269334827911813596199961762473558727737745177769028337275923765 + + + 8174129577312250175543798941170789615971679462090701660556392795510305127187510061504560025153904337624788468244783447654885479227726430956471226985887872742632227056597536205034255528707273965556506494379664010195131700257729406861288569173446776366882523193978058019729559538242087930484962587868617440999322272001048636929576789253973615203529253546790840010068112761011136100917160562116165058480139107190906188580758577129928672866240888734373641397052919861433060370714955542145821238014837834230202615497361195639520914726568384655197098879851737062703266164653656390827796802786706634956853176149473118675985 + + + 2088732687496614004725705878154445282028647451546749570663597980047051175175856363962813479534796291698494118827642907321396670993988334234290746108511508544810594844887986100409272286592792970050905754403023017132749535504711744603967905551425527660223754344419554589655357733268071582064750800482870330765614870425397831815260386357934979759976424923185509958300488966247969784223783665101296578680857988726270018843900267136995254289603267532465890169349682355388251949704414336720843640975839593063148322047975195427700970415160083566921905293432373921848383164593619161243311859571004944448721463090961082375844 + + + 5664089936742012004822271339495256410371218176305227915579654791742776301279313159127038852145285966921408017692472130057355589549172304027038978231497321112112791954724733912016395373114947067668368051388560956448056608444273420939696771812015252119462075471031554200747579821949592734674466585799293748935416094079518493986945469249556672365190599317453214968602861642197698833230367577531076005772183573892085365165070165064958782776102850106307099247633721563078838706693988574856423742294585040859601637943303712195062266994444893508472794076629730759946459794844837384015946338549858381611805183387813668792266 + + + 8925444485093833971614692063498907173541605815162867734484441785213387461055411128722454296027579279279167438275939837561288125436947559416287382701875606668597161683268382605277164819054873271114798173575188709334090834161045115364830761393239770295519733577435322371449711691400915612644910836233747362539386551062052586630886917770271734378044159464736587565091738947512189200973939598907978384119525492435872895771628914445190500736724814922689060396943840814053101946640989184339260283822691257896196313922318742219855311133756545318388080312817106300078751308661927732888652734230291157575771539374478381159257 + + + 10539461980232769201688050607048661309712219617534007678911292651259515351121287046332584995893671100856597046013838069516841863482026328642971003231035449868444060451912355987525264342049900728269188829396038382588903750333391810828898277648394638526189913639902186560052340979662105741480973769360485040709554753749056190140536060718793004167032519867053453545011978934315214247531946596993018931064891444400315114612045491428232285683450789712010550406767352253474899161144061177171298276826028105407312291222275847551959400317107811351694052539906133125711646043394052565503177368381103123318042132305173011460165 + + + 6178811078664378714845560142177458443301338688672968888634865685514005542161533042446735765571761716530284800707853472880416072948919460546459961466981248678207984831101841066696644991555361745629701676601587262887025889892146985939153433509569951470794402358337483576965056639169210170002365874180564562377251440986245180314489481948202168257647465492048384229324554414366930941179211983574816599372208910903149143913929286252192583724992735066479506209046553779068783102588662164687887408256289863235123549946629094104371569780695262059693861494597368110683998436014262908091635985235895187751043940456731640749844 + + + 13170233220771959826576606245222211762599165824059144203955436453406683725198234578187965814469213962427750761071943615159278711819723559704762603596509091076978332873070570835462323077285442593067899806547109472896127945662129621902387401185943823563045320418397754719124428268255690804476420818233770317776159097360279098779023135012591807352452886161975885092479350435895438372901022758561134003584892371881629720779606973458057856500506060212316193528858510208959123437804909914191833393011161598985167116708516508287858862976935826980709848094856383899303265535885810941781383324595623615163970410537182516085715 + + + 12430643255632989036879113596599056910104272192875464794649231896989983958301073961230451051864990330353413483604540637339495773592144359576020162706754087548419376608454515766481389865122803461042920865328784823450805571657038514115913329046605735912147265980643064087222333283038339338210996243257076931845486643787769797514111104889408967023688237150750882137479127833143079777457371553445792538645916246815297894094881993172233131326818531219368165438937181480178855649606594280665850054769626750259491573420077089284727550805416271340029168007720507326342432638255313915740900357997272013829649606778104256539334 + + + 17931295996534556417075751739571462127441908628722472674790178352326149615899894816886565906465381025312839358615767363099371276471421728461302829170222519570615270549397373956266402130816377711737166521673698883129697590359176911454432507437614170731788192762348458606702244673818130250166881311061902264832157296241190585699745029346813431057341857454666535822082123405963308277560455722981449670513683649942745872529448096577979593923308064307374081788607841232971298805187315445211037763039811064791032845339332538645835870283738164001846912535024354172432146808676537793660373673470084217457503632297260054538620 + + + 8056079303368019542489817383404862683839052169130038716836473208659200265511205570553160963373992871045815996340867959881699830132974539411894535555065311166034257952728979094547571885427949508477912395396096773085382817372572962945287628228337633821986776831289401965785145132746187413785100752086932560712551563629486446923562545349950995181532381429387193991436997808728060265903108529896191281017568071406266661372531728846360318280970830017834774426344393604500538046580537926773459779801736503540146515910325136754541762157210728119363833245258392185372469618825087488671540111355643560475668185988241612390884 + + + 4681229109903475135613472514638749315051442015630005760113359085261673726902318938573047493136187330836372712983793241665511308581733167934054725664986246564697983028233906341701294648099327123787863676515957314880202189112001609647558663839743238581419010470328780856613910536750618587116848946448624266208817807281296819682091212945329592054670202503242909966639967565151138335803947671753200071859343872588523539053535190698414872640012911313571209081929264720624631125138509794433006210689470604017081845308711333656936797322885654493940892635478984831267584259698236021044418946204582456966352054813040452784959 + + + 12771815210056883203708156044087148654972445190875943692929684989567232884035629447650186303541849981282184736849929982313323191323155515368884086700761318584649796215499081151862691761048953131211384492715169983580855871050008783415579362187558076567602796258680218728601586680017718940005294883565658470825031558967196083099204580078149477531223663595391021306943620942711507703902644588062360486994064472061304965131919871441897580778382227068991088781982815762372737790060437131261966732752620532641361446949858034265965497042946432946852351381360060923055726098116267763282695992634537645981436490132742197440898 + + + 4966788640718061971852488991413635358159570328402611953517811214738380664874271862537757730763486665992752241513844273726960871247767878751732823951551712389110440809854273304364767075270252158093189016718316076716731949961746167968303729833335039950290890940916431159948026298608161452232041625143071730172882978053502514541505480033821566088095214423838479975990105494330640329865832018635074890068595527106661466120629980358171620284472438113428301831707259906378415466813211149005348195760570864119502867514888919317791189610838959351360289612989066387851793225502569874978385485674077307224297969768006296990570 + + + 7755063772076446967658154977408865268062888735192524547171207618885213149143970030156657547909371702793014377351480240537066185755614253156519677317208438574448560306762549381029685352411224277707519693046629282529040971575638520566365682159212410977735635859210178630932982727600925541557366245885037129524113455441887543482676841225703940524383461318176141728354335582848696394856969472457336262002701547638341381308905005281177310631932369509961602492146120887256919401508303012912141886128217387783018467059829013206253361383329921501199137761256289447167989161247063653417490479444483622229827489697841419825826 + + + 14088067356057578797529844653631046188928048791639213310585365763660228005915531107815146467437714224187421717948942145061737068154392423955728925526096833182379106546388159880846775393893526036328580527846472455288643490830862977730957835201534115018967641402109172646252376651532771724998807584602915458557913381455472237517469192146635325434735824437018294374892263934293192047408489953519215167939079716240989745169949746609581318802088696562690755152826504464230051822467906652794317587016836483104350503046394388492085308245609333862975874474899154269290966805638229739910670442428266336825218821550788642730082 + + + 8171816324212595322791203238504359865019303853512837071002995394109692381041670635427036763277371808566797263890695431572840892521264973424305453780225492795010240548637369451087074507610371444416701406875546033055924372471576280943511874470984897444949411259719503133735764453747117160128841505740083364068847676432583372578101155352305992811203623930489558489280461460972688648719908881547676692075003063259134717865590186114139642419877648058528495245027017186908442916575738304932732656518673867351693775403394229430675755567920240238436289328653192797043031447656043908880396689673346368720444673623575113948314 + + + 9554964053699684441084995051599779348337828709562857168895727146584422498835426347527014667262204348183997835313999840422399236524359944822159560772906028658151700186418850803754146289833435359934258049139098828962226600682353351590240208854679068047503225275728139962863596160893748397194113763347041241843457115532428455378922533883675113786800842358178133344125212496605258743807821961578013290260374569006373413316037336970424527192983612490820070883913775072290179196535827165675202407044298091212936171303108703508757890944760779118098369089305925447880496136966626754959635888867784130434080171433043991286371 + + + 2605150071163576624247581713115269488273924646346372829520934226427944897911038927731043199619566246643224923040767277872954828963494476892180674499345417430152472289251101149105587290817918259113705149120933986746119317489347510923434460986987540625048107810812848756210995508970404087011851825940584202910627178099657597665098883631148350812937807486379860338886948059567284212739403410517380363468268576086874686061922679256459885049612384375434258202164201821079112619542954211519524889831214234902357503436474973691132732680650808431334824609958225629458414006191599232660677367686811732228468451656523788598778 + + + 3998206809743418317871053275163811698493022135134722515801671861194061515270167327559272228283128678615349804110012815153960818039542853065508758844219040241211044567018875742374528496523459901953643708402865407927223636303290008109530464009741716400405410181462227964042917817541122046505420480927704336529160532481682313177958265217974691355198808968489436612326633837967136379037962328313759851341636359958150154142169052085440891269762959441995924833141224523573656203074421746221062839869344176150894333180053232744499003898122399346726205760693563075987396059020346703215620909741386115007690232608924303077834 + + + 4338574543207528240692809194189780376705636166039101340000315845974691523683235318060969039266832530551757410663794129634937886133172864375357758888807716764753559859177783067666326270879667551798002935915968666015119399302283039525275519340445785413581192800112455086119392548371437037501707313707557292623585735025428555039929786313220627598311166301578544302033475646891998887056688742166881916624360017355561743288280737671571035471732448588352917898835574542843057849412149352718378566350485842909946521668123827497726483306984932960835923450437092986649554188271532679234711732603800991169384434367430389295280 + + + 9228050701188742324828780513213165067353230987400413508222298210976526312442408337799083557865508221362369441088931378429429855917427934031598998645234542300751397812468298897513484579433074534349541905787229298570357830266798438383056481392278076976806495713924761574504728157980942027314000663433482158084421239786200447449471738901381538755202309377734425386343059053336659935096497325394489073019767922738502901536421989957817317144355526435626840309471363073497935517338299077095959577860116596400640979230619608616835334783047476930661687272579725789192977675056742054641686892893601236977829566819584832013048 + + + 984082963613488247647377475239351651438516932360794701145267724288268954397857673263585216367847917662683568184426276664926967672627542499584048002515417044035876343783508924712360888618592484557353243917384436817301522208182331861962075535271418195817813296531212733162657692237584005777453821320391668659832884800395943306773217776168088712385388582052877545970544805856916094222931856720316609200879136707363680831817053962755847724067767011890986565966272199356477511145670509159297728272780174083503508039917443725167791793998329536896283643668562635623411743362116881532179495263751006729291920366203121544699 + + + 12126678940784050034185737983679190540938822129719180966593144489950119492093326184543941469616489985047045691003485355175367360145539530687271559424511233424011509785368691152705393939368045947306281436007686822750533994864486137054888207010300896437275196475141949789595394116904410204347609329698271599365678225737192042006523859836947451232703988026466823063568606771458081265718659825795450140376758380638403997014574569653018843575913100130068328162050311537049875270099701096284427740976090728910789008289296901690735243124936543260718955917430102207482280055620712423935742513085872342267432049401899232917711 + + + 11334676124521370420094505685245021290088054486249140563668163484634623290290671034754413325981830459355191113937593879222055761270064324610959243848755705421053660978030897539385959047010616021030287333919412282485141020266572299180218979542277304414275776134040936815846020959152893399601580684441584618389993725410672384136537503152619394977266510066671470946897687637682932855001326300421500553126868805344970809565907525165799359493513195810255920219652773563674591826854415775374719164620189103941242836414824563188260118340132048687037127345619531995611982802976574787843869099028239798930806020089068457164188 + + + 7266344587718682302691118205953740859266766702456993402894042884238148771199849014407406894387693703892697615804537512306232527803151490388271054647628258766504652138228342988232339035987064662377072469703826888037468788544009679611343144697381227434898556440774734010308665550417067568462596251756952020105513857791837034905892322181692893596210602676064217371009628312300620200369435927775195006400276181940263658808574352071166199611715001755247652365452923089229500358992093761435649954763310524999240595555499327399223632975827890173544093822492931926257514611630748853265217762346848774677808756188614010949280 + + + 9854557709098789719617360081240602593904633988670338695718055898946617614189407164688072285929496289901959995401889341134476489526599247902087049929391770252307262650482742413742915292748875995670820683087698611212034734592021366419698326685854563828448363851143989158475069130923376900400387890003574333459115588271251191285549238784743481710029944069000801667488982481213876727729243576109179905145656268785198483463347597164929098635066339037848933998573693198542548552993472048151985200228664189392408615179442325213186007824373620085253815512660832015874245363930317725246313017755912153489425338995041118428871 + + + 7748246157597365703420888961497619501504614382233807021102596103597925977508332320503653174620191257929971370082572797895454588031670512680858598786396166659452116726724260862593724608387815334859110390379376080629457316528935621472424360720791690954596906294514994185293037778673419810953723673884634335727357431389133840568934681603431647425635496442416136687871403147193739609564155083977091492524170669351945159531475991781124635614798629134535628941388052733426630443986710480969913545827423077654308121723642530270759547311023679952363960776754347293402978210493627779562275544245559441122832103974387130286980 + + + 2444753839921814013055718681907290056312531253870567321759913103239929465451204934569046839024791068329989609488830550136802524941752739155300994266347510970002633969887369237592398209925411776668952350475008786345141382452135548495622224575751660734170804537099966999518962419383196238585325582515975596099838415653675686422989455780451519706679657263970493920302742394305104731981070512689214011617570985693224335957496097707155959770554635102692432573368791211999133705935107907421412398076560520747159507143199121926077490644594023119510654567964351957728682629937548414444030905738667851607685325766997520473931 + + + 12596748239673728602652334515981427092685965040169244865152900461237944143194319511755653188257332713229180800656596896777743626058017653098875965146884351574026043588302398867364386198130560923915211506073839474938412052499099534628161834392533497737795957117983694481658133098123103244295456092545741473746096246990484439468414750990760967005261415845058437097519284488950773612675918960843073018882064380093677308405887148942386966777544837869338710098202810950779552586715765899880904780040232621413429603129348544122027658160626322125269327263987780719773989730979671747740138447916821304247285223230727074231012 + + + 13561943700330481994687142381858410928626316642345982571211242666655569783621132767431705764940193021224080497937780531476496832411581479817006168423991456401761996974679766443150969650195360481279498197867690235082150873885402459188706796421674251910858412617573263158305020644727179739567922663584518839705158524420566901253311287009246752558526450626805199508804633084925850768484532124472509408800331999421873067543080952816168731385580286424737791544754711019152753412640582275098415278681472195969657411893724711394716129827880069864075651025452142129745437762701888751828139520685819601558730799702772916249096 + + + 365897366119330404396689994037173998355523643987863544650407829168052845879673204372470161172959388729547327758146258245660581020918089734204626135964143811726791850755144408582109717286202726723510500132868930685696815659908401811199884595319478792259917337541935528899469707615519339293469063921926591748639497248308927046080295431413964477474039942175676790053744487252261310148886845609307301188106199980530570024016333659932771904294872640187193973309936296055827587615463335499737401705002972354450982372627307451716780266920232508209905043114840998362852504751102770300043744841856107447691258968899197202071 + + + 10696536294742316497272763543660142882408458691170169070375977803799266872218641308133430680092397180024896117475793663409365698770639276936172708858122175362354574324527494847087493914559914293482227653170477314882834631585052369277790472422473064392651644561392850407873232277014555327828349382314688824237619336817735219654019436506374165227437621910873383362821644708123828142077106180652025993313235472448431406393372459345718396434841600043895414637662033546147859862861318193357565133821279509820083262913231761391325732471224858983922365347939931148241712788365121465515966160527840907822657009236410827128108 + + + 13500664701646445079005241361728421958921147386920784164206159488086544998780344068226486939926681614546937519312591758670973046380847773026681031043282921309846296005839522987932374088190621035303518617577052379286091965147105142816606826807346531068412809638526522911968546439117190549942237429798387481270091435692655923718375788206789619323450303682125821100240200540800124084683113640102565550154817364381765357035617288134731080116556462307817516045779292568543541929857337294257015110764402454840048551811621726887673776942805929652992413231672749101110920154182072628612085162543552281707409531134913332071887 + + + 6290865994071842024075676191926093999095693211172964669360867577330058162551697513323863544641531725177765888571502871200024563858451863583204887305248861651412721241658210269626470382610997267743064700769624443815485643390910896365942862671836553258279000097150111290255877709670108376297432700955723238388649879586058482949344708446281876362452138277741122355392356184438367750830469445888567106945496337619857509802634532129220502959708629309354753240930499186317456892596956585392774789001843227225764504018153522033893986341651422036668173083130853896805611557062964408091127602320762500412680086064519737331581 + + + 3187276915155234540700985766798859538760989123600101595342584824446877116337299353557022990588356348901659506251259222740289688789278850240844330836130992262930162598989745233936768540786179006208002947098903090913251814701948294675950374327218063046528847885690799901423287995675535885651454230245168172952027939165046378111303934390369152966190956564687162061410812905316562806125342462964693649171901837947543350737102884128703336981100973390367614947604436716534868346475758802591520384629163511650671777562795584530478746187847951262183799957203126783209792029496109183898344796887089398706596674035623552577692 + + + 13852240001123314175072880592745731855473490776520549160945566801115863543484704543945809144431668058498965176325794803243731670719840243972982180163900597619050176167841161123851564347057788633486188032754218674237085670372771755574920386582677698975142210822512155877747045356214791595042480723598482100718384882567629608032107911325026382603366673697155455445286221367440303915841674877101521314911014549081011182156474282968913037938386769044512173705098832346884928595796228185027094484743565085256356217047340947754007309883121892536390559173876951842779822605875961783359434667282135519480356728832089690021274 + + + 13669229413674211703102513867394899115960167894842283860876681658524332810758536270880336007489784127992481017683153650169801371189206566729878864516044214981369378308761506350233326495361557568375798477124000638901098171285456484488091489277066581620103692500754585275990040088922417804643734907366596622857370075413674648171044591935823837682803313221875501625681417018228952657354737192709490364331298693103383650303213404044538322376720227587742726091413548875309942738804317920112034486240219587511987164401048478930953798010088319182428794195370826619272077481610340992131414658053581962356594821215912048994118 + + + 16439755075318811851008228255700385149763945445297496410032798515745266652060247555102533651722982752365647635905674852172628779188615131750958736552362071830459894551502756904518376565471368291259942460395899847176005670878360663223286123966009459375001813309758718784304330740180174574211172269302286636416594268296499766779178093276248409197317536018634485410037319047126161688990985250801094883468668390226763345112601597371435405715733385840770005198447112619229619835917738649019201611009400596647530151564058296261010920808383979798723754592839337907910967120377848180923938069719499046263125530058751012504894 + + + 10314470395148496435601992631070940114625727395707190039228670529519934656951550941355456488866350302876643464017701534647426228556055063778121514709997100486498627579783241487007644906069326238292906074504592768091121839646785970620985393419919423369432761836695802038174515411195498321794669464811407646823540647805063798729469170877953489088304063118082308257023991025056013088354277900964819956263111521360692182876088771733549084747740746487007655284881636125291457082531794715775559578518653911931608895565207239792664541209954111850370026375319924252249104714745799826808445608455372344833676296492881567341307 + + + 14802702078798883681970538333292353413295986883686766848452119583317537513519143344416976738067504428357373514014417288150667502731494197482904489851749803624954551554604146656883073823259531122652172578456458634633184703766283245761686752950850292071563901654324612562062734857830826003149063210518654780380992441823859534869578086562207822146838707711908779374780828762348778692407166474544013209756089230819889079913449250638277476404555575606538604019677458531437487035067652404379847918096066451216730258361782337707738016021101286600457574682301637794802049220399482041073883174710776171856496734610822930245523 + + + 10403290444802377701510632372042002492483188737642534285270090756481520226224033933446501377736856143062162507539578490455822398789868012221697750899333884626679973457042106906924520765765830767289137769711313224622778867069990844245926624990354121025896927356492293333090295163878716855486331308909597137697203295591181776728778040187179702039441694651230522486068358834944623361514618555974495768936880807605620460886491660098523042571139047673904432082485423321040311505630943130714594466001370037883807768230648808309173066946179021006844018895765101748779689890116828557179603127496713507857542475535443184814015 + + + 10417761371739873992440787111425933304907691739114958119902469185842717246528776665802874628313751901739862274273674492035944413209499749304953134277086905663135005289226269611138848770237198868300250541667624106243296886848120090178341286961793639733418709605656724256556063005086897712426861421643870990981124530466728499522146701149821734332105809663908969883286151551224814932392306948335318583891089798858470621594251254794356855119767858845013617556410493476616048180728240238144341934564552328961611950592373053965195141099843802353688042560049233634807182370931776319937672644749976907814141992430777516295531 + + + 11672567769400627322643158485192138179874853867865729150260039942782764711786481143307671872453540337499658102724708062260653300956123624941740559716236084731141324084206859464442940306522475393416117445238626684409499297034687672470008621830389852618708339035125282417435079466395677379737008375511799152695574782822883706276397852964981791965399799218424905394340117559879151802944212265592710029773449628011822425515959430363512408193474426805609961884220195070727493872571570991924237202479677478312053990523682654312537598545251351418018441493314017722044696417239712210318146932088681408378317857035395404514456 + + + 17555969421397122392013356838295643449413011952841612415956855203958000568067546759233182905037563352996750930890120668916338073226457808373377883111040172288837163288198387191377653445044824289100975651519731565272501120109669328146600953707747892647074775819172151448938573103769279443532827277580651412637742931604146491149227182793941261456401238669517743597583217776945880149795803149273170206196219202005323972178642604124026244650719018913940725046103906134140782564174968878995213672177987252143437780992135692352082203728962654658348809159360229485095853987154614831236524507844069566291703437040185118773199 + + + 12448345744223771107283503977393348096964481536353499874269258069198374847928128830237428176843482629399778036184289905414163352472017320327661611575968811031023703511882891595899446969884020526823697422405838737087546955764371917960658797616323475449043077286936534042974482337706991359887580941357310019059085823504870757945641339217953493028869256260029044063033242472027449450777186581159431494636574656921148742116910597732834066677675919210129620326132806376695625756247119902927899546956601941164391365228764433834625259897231260798753372938200364716917737892325070227588549296188897130829027391439822427785925 + + + 9933874411362289474703733062231827227792838547589640645047388271734410539127153705340434392340708867677790507057099217891626403695988456669033556029034893188156683992745467494492832252699769071170349657861000895772008559961253246441499292901812257041519447696454614041497557321411158428758803959739379350642740717652756825650606762041950623302134258016764375740614762619504991998049253611325862902096470106867459193078215461320564189271883693381547574888464141063003240910528481452890267180660118165639467692368151700151398868644436884550162809518982185609159569322971949117802212586401837350386827861101095462237405 + + + 11324004937125758468515062112370641782163024943066873377653849450922062015890764614398399595705312011317374607374632234012604659228150690238058282400590986787252991514726780275050717054799503014036735633697546967188709665748142166197099969920642511205036437658356074217439341145948607686516168457944597673040375160722325836312505576661593732954827190874239807308891918789763685688032586348206830097289077798201238145901519826632321191356760270886428701292109021581522427687149735813383206935123948405771639008894416742918357302087666703647872055914344764369807061843298927619613838402180156299476001552554566425072694 + + + 7363916607678959159825057630204327468633490608384965055616726544082110140427729712423918722313607606563989772968248210235909072631211331468112247218181390562790168748955085812237380199708006208280634807563516401259807409146395469749367159654606463286063104389865470512420664186846092852200368507544545229913567542103798356505856450908122041469503290725791320655669375639863717006233195749403279519015274344112730634579048526512687064878273771732949532345334485616841017562942090584721510193217826186118683657791356795753896912267016698977481188071712648553744260112242623083738642326971529396031764368713760355175379 + + + 4605898011445101131025658774339299428596964374751964194885619696270775214332498007262098433546995612048598944999381562341806418627527111365389350555276963667961151807315792660489048487437853452800955258462725017537834201753797996529877446226413340308647522585533557801081905529620204757241326358785036961535273476394463139251849777847262199205034695873615469423282125442036497934044380780139085718289568485221440445189520252407471525719395746188221745796745697113987510253052140282870879137776869537733496916284224850669902716882018910826065869862988350871431002633269826855934777749491584964040739029976864530885151 + + + 4555305550888895508690326230240274804220163925068380854439122232976535373165197824899594092282083861216498115805354656811246356020095282610318328433003966464414621718731043373591607003962724603354601036306589979409896029869264588493024461518399131784332245617535287250535624026947789830212018195479940196713330299182863474884339870534589819257589712345061084580495566365685814896612289048121478038691579679838704992899905865041444202708924818314948959736217714792420365412388507294618997335829657138826924305928084939857485695084608510219233061026600755365574051182592964188064191558344677474841061110011076040276211 + + + 182846871563939960619018348791851310244850522163742927564607988352674746010987306639960683286796929638068154536218772177368195372425222866312466280741569379728869395432441097742730919211408357910545884468732276220046660009023722364965109010492373158374504831812132419669767059048802719749288788279894835704671158846886176908555052019524102338483799293848079024783616361761932469238135599403080184176807389237844887948449254612655243547701670372023526326543733781522452788555358668872570069932066190683836521401447375974722791192321003608379312035710007795162491416801439011157355945689142486819145315671275968904926 + + + 10909428437143809748948035812236865790517059348303853636577488019472098631268823345010280139223652141166033869650793854763657337003051671547113304997916629657754088712814821156532715599470937095517997620669565977364409702670690632762893845645012726584844467091639877502210790339089557821842300263533251720487932247947551713525233746101812942201583354449258615477068848579575259462511848995916010837242895382351409762117151026725177728368920549643661457377936344976958486571521415754080112570246871937621185146356560763013777155187701507142056394308588593766929982337555813708959104744671032469076384913112223029123007 + + + 17916931055775002064242985590128932881540768544754423703175297674846547144444107693835224966884793556778291870341712035817060356449491916691268307996356964130444630217606955169993229982058098580897833113621280589390238472902104860246823988808545767723182384083764955056901605328450639279450356162353604057250426022246347051092631057156690132777495369090876080998384797253174816300783238916453719000885756081817225487103046229006508232489193287693218019765222460317771712945465005634569633888930096241648922544977021624470120140760583390512720566929398975256512953825998910409929861233926208365373303148416415904587594 + + + 7441329387599452376950325306482255538514689324310982922693354107071023940214493623245472635166619433885521201390681822388296226342700668913686053981578128909382787629626691404918504647266945843797686855587654674571155411518718836124729766313904444571335011356391248677478131192210536671917459129563167854815378144795248046121523787546725316919280817901004880651735100310529487532798504055169214373823130926013250618775841985730575239437737555837331544840713013559440132853492984197167899917631778598458774094836265061394820414418737053730313650591032853472894754690039732867020830765682407067231566312926340807254733 + + + 6525303125631610745534577632342509558030978126232673844030821919105937754331879954808119452871068626934360367047158114908970535819151196835139015508109469986407953012993182860344928810827462330928926168150788050443609876051918964287214638158915488266654580049568643346944900257740268110173397553434072194613316396964615112984127419942575130292835514886894162669970490103480953600614167977936565289793090934738394045612031351431393725995995067184705170028739493092020982003654384669485597612138746283948080490563876279811068449462339279787948330128824782994120646151913615360406424162736936054212602206928284379544434 + + + 974133125266203862496600355113086976777524074724765120974760939401330109117136447756540202849201117195717825089007236453389322901790579083885174996104561635334462641669685099997494521234609520007962733240012992000065831317016951679855965660011834381875540288967736281227869794282128544213995801252066169650322108749521610363000899538491109921479187856562386900873236698260114038434243569418127446897608702843835073940412783864483182202810124594527219349606607640408531712505127485403538895828058514467970964056443186881798871976989716541336838296574955149132692403602198472935527971810553268694799404503601662777226 + + + 10070164382099328731971327074173257229885331657294941691783758820727312177038579741586653172027327505942975614301144313417138698335069157585758853357054729318244601414095756540685428026223615998340332175912523364620406949584102117391327762804653722135873873328620020483320107964233532574642139619453908737194633486819491447910538066205432719149677492160171302949580192253994021180445768726753212250597464655890548857356790338296427273714233666517139455025953047498254987400148006705319376295260142843850663838125480346200103977600680927522262568073502827189148140461514226337985692984180674668637010754291270030355527 + + + 6445990389292589098617756476337458238094139049302362171331043669417061340001742657500026563202620650913147291617898232519240377493467424947372417778110005867062850552765489079989836602600302451044712752170548370138358448643493169776172815840223307277603558580043674792977954943129858269966063283884226281956775870974954997326944017869942653275076078178472453922101323284406377104299485690728535650660238169521650916605141773321152907350336612613430059276201613342669615220288248157598202005849098738295812283378342498382460715088574571620730724843155445536703410787032768431193708123341982966572561894457409306546141 + + + 547872599821979632015265807381055547675057168614486641455068090560950987291909893878361678501238662924954136035126031160678907654504106565722127574630554446054565789592610153035400060566669664576129680666744283367629401219556696004166383443931267574374371693034612448539577856853559866107676034395312567047048385038478031026510808277674575578831396804807445827388719895686689536969617966156320761150062387538195054132417023983921654487226552732013956328978617073097484099542245397499455623868385509587643859117052217896162594360987584540354688120456024135950179084147074452175957460671672145275380847176478585353216 + + + 3030528031848384900530853716606621628196145984128442237469707356455374779616258931392193921703206910810024259199834550519804480656127899402255327114733782691716419219607602036602609720412354923630924559552454755403228872712360335081412019510479106057442978546498571940749814907351539021830938886141800326188849687315336546706818523002569793939431534083365173402846846307677202981176851528454804147882457059797862155399015555111383571034416599745485592266552121516779119462322321993782910332119290360392581897402626563854842271709363943768122007339460717397668534892681036277530374921245951547511669021304142630019873 + + + 4618576266657718119129615078433076223589282069145231478329326702325709460626844303372102957570382576778091888790013155875711562495910182418714439118742186183656478657540503660203236517302273368948400047504409554690653476296077717955164130532027323869498276618867356417973606702460750145503017535251179620846920972013359245082852527781882021271606568949402644848857547710623542597807248212137855164292799032858751139106231971077914175919506408114507479371995345183726185933143609232406943956297953273121947751314549699521316039403555132929417272309928982207615747703127859810334326451668501579238035687368951272708758 + + + 12793787319023982315187720731540068097929993204217349402091530330593466057540455975803310482049692938413869865205727103383234190593856106182391361697032029531528054172720330088528814640397603324312669364209963923404182378928358373040160964900935469633197872441153244730143079670087165673949251829863880551362081486006009551424590794027014630610349098641220765141596180333035356775525380962909233941047387945441364265779900576594172064712926611636051983904999282112147573301192403905850728765756366406264752511933104933772123879334334650354065208916047537111737305904805367351570555021398888260792381243391583443436488 + + + 2169568413371272471579087284484460890276531112540552513268535822168228749117241179634831531725480286281368474437723841195965441687490685403439272813880778000572037271073777500103454897270321459780198206980460141942416380308853484546515782442670137773006395320808992454819636928526052574277461110630801270229370857841139666533256296337925732902057508101393227760893704170455464153948420367444690212700635896445998552335883276222117914124968003189147385320234222292951182304762205549373689914477195055402205473163448093772536825641169716829478036831052645934748578430524560260036374468727607502122956121156706458153637 + + + 11492105279873832609637549933982756897758688697449533877604741734352265236012290635230230274800924737650889916149462361576013763840787871077057081723008628519190424295011746111358232942617580533541100764480079825213690225707329666295875384493834736248896619307255656925472081844289942523306339639581260005532685170347320592050376824108580257755808405398354059661955401032696135406275488081699426218241854375797361668657461991012915642783590097373240352550824866884236753551506405804086945188281123972671654503396779535501347159347129860912351925044551195151279386010850617951241181446308151391258353754718580798333175 + + + 759597979593730596301423744153006099871792309498754772627560668220784596609986873640685808966655484594609947160893261969929202948226283270354210995182664637837125445693061256810566137338820185117820265424068320769484964411417856399771833457064688112800005394401569047857380379822081348804488936938496997296605708521551336802087283903343694684941059512920937469803092245197803664077211970409667542106999257387413731813580350458572747344781925316756623809172498208021849113868889486712702297962436332720177069308638439814314802801656935062106151709370351151439594702761539597549742491368664006251640637607332707554843 + + + 3067732634939043719038455355477466164732991323184058087913713577486186848209519199861653966603808519813333354395740624115294509773183984092312530936010109670768582334255281129518689414067427933080840018076543437385418143684311645274974460954869060217321680011447809896650763003727786079698596622101339323390540277095209606015451229159383387699390537497186900570572992044812604273319994674625837079601717991874750305208710416403789165798422454776762494289411251465485643662974499515260180116534351645574543660025662259047060328411492346371293049458415590223886257065442225461654804572594650588689835432238302355039340 + + + 2253542731249751334112837601154575740033112715127843428152670062062512976455701278064430943479128895552535413804394452468817946840505270125990876247602331427457127042806116248517178229131147794250370053781401762319806769795356807918375280683873355000718026098575747675888901987778440600377892143869422244081952393317286870558226350206428882308389194294990764582701630933740866876968059546374609026498797817723535864644477296073067682114935861811045815449655046532756232576925412219194769404540234582488091856226724463638256152437494181798588953810190912306231426956151115312141581758050050819635392411470905751220143 + + + 3132730310431707387634245384096760721187724867473733150733706501441996236332122749314702826045842896996486811145732332921847197024245198385717218114865496149430357792407927185102368261680920063865096518504209833848203529435277533037236951278840856895665980930277571332558990216288462213398076396968977412153948902540382810158071662183608001785440300315571335671028444413738279462787450669251727060940280215786208093178978577164948845597143194484562667144880306394171420660734111028020157043895219851587815802059721078027668082198393262786651722874168834309520867379379707588542620309932193701243025768135273655044978 + + + 3973506463874682938926225983804191692943426062652893170357346097913792801853661491692024419504353233497458432404890643699247162166563084809422548358412842666632248351711950557269462461639505664015201627774344945907894463347862269028058310675303863637870854689260028480937861803046557016000560213332947598356806307054869448175296886051901157215435253183487387035281407896068178593931446558648480763456543085484146210543390730422975704093067749047239842262087445204769380160914498066809796218302041551217141172458005771706027906520524647387073381267701900588236100429999070014320969501682256317526441195201820812445757 + + + 15820266400923631111309136104937495767049577263143810457365957059042681420579620601383535209443126905867455347816820493122635574106420947722927350539106657630900822462847797630562081810326504802946731733356155709953303918010699319213563681688690279655001915028191046007604283349476502140108014730008358927819755708838026779103994611310118424316884885833269368563885104596760291862481610127435253797319513962504215288726741836835913227685810437248874375361548481959527640369430900319134650815638158521087274986656909241985872585658300313655244157092836951488593893100000150036061679802482354540842299545149985535156971 + + + 17648814174126559766596825308698341075661377236407809318410181973482806576157796418580304404527505656160290459542399768794207149146485721860343617633625661017987208334178960438138526803057471189132729012820719805672654566722600580911381784684983295221702319857542188019986047417387807783253684217935284104059028413103593534163837413489887816353660573472443200289605658966762123795261383233009343015669346482897975677359171407673495349696863700489093107714353990047164144121851127523302744980961461646199074042322875183218076117267069361438967201279241896108024344211245958337558667524802217744618903787117371292246581 + + + 6963807704634931500501434321685781611977650185546900177987744674153375403648765291602885324333297903149982739721056149076991267729816064124004338333763972024661232946447814057438243232283076289498259289059732487987139772771398095656250613017834376530279529523064487370169468405891394338902268363845322408249063619251908752863617407138286524634901578387397378333080633498508715050815013245100076807919131104486698279569492283925824028412000282625412943371476875667023192971145978389161478692631847950287076812342963351045355747290439214858330108930870946892709358948315526901752699062550249791538279896104641699094575 + + + 4131421028025234810891631847558581464700401555452270440493398280604484761740902662661914169521052022120476219854669357087182326286969581370954025385148546397061573882927815382584323238547464943704253710050169715004170721376336938585039626985561175662653956978685768854734977073572724778633073350349430010807986906641871129664492085616572039677140060891543094018189113239632189329274466532844569942096734684784302136975383253103149845164682032878994624040165806393276211686115769844386348446800601709440474124444993732833795886502214188624492051870732412864378382129961318995569996574832312131694214265947706140138082 + + + 17798989597376780635866295687621396289421479299258243865329244218867352188023293508789577327688380455937083396903614986081799921911929969127360523029969794856452614090022585307201100001110561306391796490455515162217850855239055439267492693599336782974489976967571277061465184931215084258181327892106873967835799325446853199436953333067930742484742722649356799966783990917878362393983724528455867010705419918451822540330557229849731656057339004524124380751735073512032667161024218328963519759825750092032255204095731335349628367058624305446247535198939844000186283287518663960176001752980665538162011539166185102313947 + + + 10826964189748683599764049720459638508140038825131565826733445654075227311278150934178781483136929944164726808212870330118221123959608819244583733395290337295753137754932454987882159772436836566366195369670015358937744242807676446354854555065480249847433729534597225880824791735931039415309392764303715906566673382646571402741157085748896225423470689769266303467287251204280536075666477297730510156047138650038726059495872611288301846264413111225330727856650640773677747886090334889167691005251999141458054441934351274833268308492743368179161340506967441530839530197583283282156887053688091391360795838216987586523512 + + + 10861489381697210305218456910154861389024726294851285110225696318349461510571761085892123627259925808176380749986340869938357048928388825021051129142352441676543972467229419162416464948310928591624373452629404476165160812663561674374583532604196396815455681272778235791125747690254047136577398050863026342289365413525477916918979992268873330621119621663965183013304365197659636736643999754796434425642686904961662597758929924889028108340633822749940644300568455196775536386622884040537486956798092104368288454744854093455629891327249552571294334707837627998413169807124922462238649605826175748842086736194236955630529 + + + 9142410381536794589249539341215055980661251762233377739612771727112060959958590674650808522052308942130262453037481836541904633600413473426522937472665818642638076368359258250613001350855561412016405369825421841928482577711555976276263045504600755976944237091057332768237842151214550726998419583828798328706105051054860338432850523560889795515026425801976188105532684469363127249800290775677508180762424742616572063780333719861428938854040760809686374614207274708818262876036694883922446830506988552348621334752061076924021213537148997246259528155773417379732225179523771042049375711814109908885632427895308040839071 + + + 5022224512155345122405893785022352424223351914308501277831477206706178341993294608234759688825596682113931024336164578312362141890779205793851789509341655009268022995149801612954221321820423180036918081068901878607141777226722868202716381900738562615877907314332724481184385046992520307031128057180921493450371419662286468170119637462889652012138590924591760920087679877552494081420715736965706971437601350892567703419933128886713011864980625748795942307272321946999606085120622027692737769675938430465847283935030937404459923851462538994591224313293613420806150804622362894369417220117571194392016905077973199084037 + + + 3594272532883290951865126424330084251864218490389083381707345410670892932222189736116781636564009970469925030032723388479474139745588171723055515496285491383616969834083694550158912759420983103378406947573945298251748380575639003344194316983583179002475110637224449757699646096057695740286428309813046184198412118615060390568409134473846175125434882687670948359374039072798865101260916822794108202459389246405246642206066954743310109326220393546478347089328206106124112159935909844584822197536063814365509338766364853954682937708801788353436615763469898218396844325564637927438891825705815132153659208908976208746711 + + + 7123341952693402406966365763000247897670697595191943402799041131679493316380666836416897261477503110833173529030755534035047443465255906396087103783348969365797770317522524022731958100531153240999713889773230674252964089515019299010396425768075426077137319416245254602162707377193019585258550633668936396733624020205248998424835300851777360712560539896259359502569789930370189215592240162197186015303088186816089783117046563341166610124166921645790687157347582454564760405876115442084946321164449070930398106067071683065950674975197252097975468437091492704733699675826198470151122410258098383203958923115705452491800 + + + 1789519956460763045812042732701143159447808396832101046042804776718252114469296799146509565503429213755218005265919402431373351441683247676391857140828353816380201114336519740736708961003209167398188501902702112832457274409210245509683513036020233743476607318916453535015200339238255775908336340109547920887467956215683241148448459989639045347424847249708567875109100872302538969797647256887795187969336138700692802598554541773337561331164201223539141506700083196689268218700928452188388445799232557578486505415602627193055795340137618748230330044982744088777825772375784025310104548330613031467341386602673790737422 + + + 1290097472145823552626111200707095853606090977742295825703916958623388204878093679149774971475377811959584603146536126716391126892790935252832470715019061476270315521588583328306055167995803961119865914206420429226195959970472761922050990462264966573132930357637393470816659229613530883326632135936014470393090838196569410497863077224436079078507173062522753255703552541316466777072024678288905968302360371778506226506481291323077987646213667053773852935337079260388211666757182485499087030208386908575292364371117296724252665695884800321309402831380923024153222300778499658947458734255516542149781760179353088652692 + + + 8183472894215864307944380684206972894814105450438459888834673851892778485341507356497417815669027688519159564426475143724896232710382034418538621225155599904716240390819780934214882039607985268126088886579645598296686664731143738221719533748098206877536861574913187800626568978668842825265721737072050265527828688248094172286437554254803414265669621739734086066993511553795397806817225417663780035720714282075275986179236312092706435241616438157909114684075243809393166166247856108766527312899172809013549041460767970716579242886963302081400607351410327181490410847256831475156913013194244416154280620943360833739546 + + + 8056355194254910916918270630041833125266826698690341889748422591972267035827292441548485275243473047225653196688444483207264295666882869492124896126859000838854654109642050988708882100173871497874012049989644363499198967442531669794100006398008842208439728443403825253361217359289674154281768197710589404722185988427688943846696450874124724208251798329660993577733106794439617712744863246565970410247176090158394084781549014692701410547630023435987268404461711149611373925486466190726051098531642444119927768124782711092268316806114694394270198399516140546099012786671022633126528409464533917488998550936168224714831 + + + 4345803290902130863650059207670722930728156197247252802458039168601995006224326780326874777810127638474841265985414901750519422362352834062888890877744019886759914230401894035363083394732087677907879289187611449757202353189191753208364407207807745671623259823037222997371726023113965608471459987307783826140629200464267370888193422990764785164214756384721034891818823802123687869665113869347367412303331265186851845046101370106182400856491276088924764014420416829120985473261242117940448048048045427446455584043574792428020970552626309062842848571561060063475259267473624198554702860865772918339201655752394852500584 + + + 8270074300845989861149443916920890257579377657394840287301914415934525340162406695437305652100897884833087597665582711572989796859424340428553865636017668862837306216793156675106458876658031306606788688932173883942153855077294250886448318271150051657655274677825476664316949372925886461028108927810014089791133025708787134675638541411993788993256066723248432343917260037743140289004301396113164250992737142731186478885977024859681971755206121549040887600560798264550222776333267475308324761842140362308287087756908557791526626623414939182193253179271148001068262979240793015906613052902483595504656784984345205443530 + + + 14359173530864094929851041241909715567531678965528518439366622241603799886952929021958657072494442484865578356964766463152143336755343880269165896714262679650412975516056513246031949496778915700492089762755407016166361931766896074243152635593792324512423032858126263486239388973974095920290093385622551288559325278834562543399233494083684001220319157208929511313372050933982994697605377773672054663869230577291243906625646329896323977191864545324324177366028258512735231442661692060272284592539824539586395039921961057448417302621899227201260054858988859292751900110833179557946247166405639901600250835752866479905894 + + + 4235292314861352127572334605508115679747538168938540496772024710917493848576973206248621035825724361945336496682647937814534989734661965124259732736299342043944425684318771228423539334032176693996709677430851971827423476363187138789792544285713933593767636179846466495953248523712339504919457311879912043931144865823390139618219045870588664701497080555488468939892910312180442424660801462068119408933274989354182530120272572602646507103654663227512053029562173588669844716851218100366181436628351125890083924705530320667216715620796194942261181953850279345228240616294646864465275156395903555882051987260063424845632 + + + 9416345820784457490679198481887751194863975168899804257100393209679541616378165778716185605111257298936220758104043573154067534810388578565021985690035329975769093843960886742882939391439082572935232814173980129477469963739740587426390893688305887236142076895623034066719768094107569587257232717488532279797635598929263314122045936317489146187876733759318833975190824023252469847696801038333265795387239874336626554721250155136773592316354769873954488055490044787873370084914771126715063622004441757286404570206311659003994354167964490117697213533739096943975999841160715578048430290900473339231796666409596259866841 + + + 15514573040801855402988010215550093275488518831233722319861061801734341244369378604506589508312257315879549373427127814202596388497191080467642717420959391828245302753518724726736286105199320520489093982591569293871594653939665001686698758149540856669960760328970934493953960556796422360257046134216609521609476341540722163462354504762898823792727264653258696865544722997152388179526302947115195823717760914347096332006654537268875449885315375342147086914649181967032996480661502818548447209203869665909248892967047590759352567457504087711769830904047515775706668607271211552865040066324799650907034970417864281713214 + + + 13561627892845173846272270009830443189705465983917423324689310983206569919444869574011933315854463995709687378070412301204294559868905897169772134227045291101623719303004562583081103609139125465144737067770791484348299219538649393159141707167856976439180727025208222067672199390873549876317307661846683849043013003711698994853732139147651524283295315957518437479345354293713460850850642628590808755732077816699123105177015268840185692729075596470258545006277120420882354940774220552064899778606504367725119531279663675273484619641345984209310973168615537101019521198269408781851072737848780053437939634406817567708123 + + + 8685684867502337029721101924581883084488766653196791517142588101230706466395684046305527726158636650040747970402777326489185837516287175975409727269324757259176807430741645329905949126377114342501020651544328514384307803989806298658391596067061893212274969398236072762880925417835644256478033437040417933403487131805855411081139426458242449898719999832868415156498344324323606151518610638878982445888181176295281600753751530531440468520848677611612813106069070231557387844854756254821487448091706318870312099934806707977724379052352501387033363545317075697236528287348647265976013390458238501500464202481890768004197 + + + 14551009400403204277659609990660940993688679349031265934915084708168677357683051253035816878545804911999122604814518966487552710165038276440506210342238487876522233449640606629467555336953944577038940870827478047567672583129429583174818962347128397470580379322400862191586397627650334484095629454328529842741578946390961148928418360287203866931283969493893322172971350627570536466455307720873075244477473572685844131625014511216618429336905071348464263330168886156084618433104331324152493347355908852212921748062674526732516201621262904360659260683882515822760879197645408275491726756682788933939866763439765804532631 + + + 10408175727204103163887796831455727988687856467563488166867468847812985323499530917480452046214173203527974937191800259462290704725742294261618368504839689895754693462814954201706251654055094101267131573255361883934188791248597858198519412333524412449500701346837535087823308172492092274084411138546524762300997742174202772105827872598977354748187288778523436674747746623184223050163744515759642047165629181820511691460747119745272968188312992600743456821943289469191310649001785449838200989093951712293364437525801562965417180057743395011075999909421578581414651722556760309618036311089656952977608690998499480014018 + + + 17139823647308673417447762983069184647825207312274689670889356378774096131993259546683019806008655536677855206162745737129877873976086952997599517209333400154031349203137129139907888567010655273211327298399270328094056427722252305436939028664834354001929275892978680586274218501563200569011745879355609391136289850385945106299404086081641175280655411661356204104550708041311510764172149112739512879652155091752304801316674767856184438415030047842848186278794853822560556716368374536738859815939915905033973689239950405629081075085332389990397613958177790761156342247056154973147575768831022799191871531889159808234385 + + + 9003043596008445576319958662586698429040321790287559397968767754370830250186574678527445866179499777493343751733564380607175025768898398837240242189997723529861317319610300058138945804440196780251325066166310754158039156127237314850486892789090219020874580000499633581675128579808511837952267925624655034855227910129227116938375270377376786100728758837761068196953205645130624746669437760794586385072056931295909930541672604007609118601220895819925279202109098312825147085130844890059860405710812736576762255595910565643352336954853325299534125914923487608077558165072046700429799064308182179086683961032292764762971 + + + 11560024637415300657354290291307300301375531166506043610419250750887637484072116565838124261062600983355272869349545973738809350754721331331132016549666305588606836449068471407552396430628029520648817384996299601908732123075428414915481333797006952482394762071812617725459769888352878345370736199849136245378651864750498482194001848460483834464700539774574684221364998248102819441376138442403683769418571527815119953209571861409380637647858406499482390392735433120778377331693586222924212029616892381088729064876418071189075770334999992056865113530609848914531474661013848795299535739378747932403776014035244216434314 + + + 15935680906937738536290617443756079414013459674600659628375578478030124217583609183320635942984702091504995763791673829642444158731478587943286947663451213407940097402162669058217392423619258114579292475789858790912697803614201354855919795554359552081964383537014460371077379117821732213924678791877054817961699394067813353753535784498303388083650854233099424906141938352797746693646708230561833507401220339882860412797730215792096115550755150014132470689009424950659040221820577544547633095595992555314382206807735404634859051597621737065375406851564378278858083359291068870228020315474710531419956172126979157666217 + + + 219423907904846476051497635290319784043723952536866016087070019826728122313638704260110249673368690159729967981950219505857249106439802336274493868782967137409422925072003726761518532508711584184650259406095912165196807946487462104686625720352921195070558041863457595810965150222018846259266406892791976754426926410835636035141271845153192086680252035267551300663059474372656738274597756082249625503254243427911345446513579078107413338495698802206925543238968879594229011008809738823530451204688831241483331311671280977585527527800383409807189127748024609553167660318640185073740956555817253374044990228780316421040 + + + 12631321806168269238110418992126884865535830177194173971018947782776462251390422207095998037951256426074133674477148922397374005003486403165415015576842825713036261197010065995896281805643158752270626454753183941051844022115304391473397170263983927012986298626181848161054137014124360160206029212391063413048436757794007708856509994479896407078596568327841060874444819073962428059502245228658660737089890573206426016950616725421938574637029405970841829501377920508169823317943736700061271778075109255930685258751926129730769862849918696288519481304178878652478794092024167560039368333422125567557613267220308334622468 + + + 10768968999579326191635136333795338822756601624902642395117441184206838142235308197056158341642865062333619274291240728426989450603466685835893966011677064583511674614244172400581609414343785783180220789616177623203942452520172145211517136319875829232954967050395678188040803706523960544236781400748899681606947777526218532413612302167100157321629435961744917577507355511183002200072485774403150687681322540948295720538053175567332616375833285176982141003536034267383412401824608444137162881881263902395361186942120029767471739675044792076716091963055366941624602151355037972417444746413458919071657531563911333786364 + + + 15430742591361740082024070225144248601973419227209701613510834495562695237573250564810006056303462053382921214006335464289252183191318081309766309561042556245317983461995295596730377820856711868667635032879257417970004218015475188389264173772015603104015105706425752645560293892337926786333328922463403733753726544954318391390712660453512202871320878220117006833643337099533912728845328127609222017291759138276897819579068038099605839079631937926929014791783994366329301556569742019797029681705010111752439302038730795371848548314768331390127291773957934716210760992012211845041209833082664778893114890705428613736197 + + + 11122838289495121530400640550946127001029601611511737910945029759676537361437870641050097829356907937823014440219518928723865485316801803818569778410421105514292905000563640402989267681779364913195466056166861805100705711179200553332818049791979085040245408770267606898094565174283603390535275690476417510578178010632326001659343173008348704766615723201547690872510324040603326172775829198405483887811808397168437395703630891303563248333604819012815528913684022024500704607683897040416272895545032112649835935731315732664275523470838161456708875047378263552158211625637757509880084081715843484740868699483839910360868 + + + 6806827205454799455735503883945756861554216068825315321434206884116453015276300686065046571706359841779761627880935699070749896666916173564762499866356789191502611613975700549999952852940313115703353202576121558417358128011982930096402266060871539571563370850100201313554041933218814074093899704263027389175985855286953535222760869203401444448326838685903870162920653224914664324225055228223345630422475835619995973004326641168276738652351056309744356741199272549224009937110857996012205849920162811860073093905321925144818181730238956240926816855546524173333632152201026289023019078160516743171506669958789569051447 + + + 7102971770680157404494712329760515827514176722515901506554882440114549179111652017851895828116520748479240675473770350337468587067189835806896280019848151231073988610472935585601669993896274675859355926907499359310185582534809082812973030994776517082721495336863456721413519833380271433517292070091164325231496439335721196048903609296130754149250549709826247878799809484942418861557048202045812342077888198026275844108820901023699753937589839517300894445597680276253922361517128268245013646861646974120004453203437303992332956416880417205181209615626446735130049393264447469173370371395680086098777040610613961344098 + + + 3223110132276456340186471900222461017912329926812080962182255758384838340475508126928906903106613922875017018303018443883567384691958651937281317891285071206976674021927272841753504200505796762603874311204396803498998817709694328307462612854381895405653393470684768377270579472715274200157537137138723974639407936796940537684910930032305773049188007501792056323332435690191061424449284614065497958390413326101888744960607062393709768942116499423850886293043989774976267893825008469778392950757968238907885789681769057022799972332077039325782160790719892646154901402364458474075943065096981957939128744007167533756422 + + + 8047846209191817583216314950383959440179471826044810481080587406603325937015783642913129318129532269901172831972731190060053335925194391347279645864969147805785508676374518133880349422933928826696657102204754107794109329639230237127441217361276663876006688096807171599415575195188390261534214132274215021098531941838100282420226533648776898679616184948376325975974337293546270229722887515774465369538052682409429972006948424556039135795531637260473066983691236646385298500739936512382182375781615142463939461874158091739424532117316427591678505633847168179901137046063441370422398852158950918303339468846287975852860 + + + 7526263993760868317486182195224950845774007203539354742888730948623718599998208282309154209772444856556097905321936255595983366689522256349850083173281592869447868277888170256597517016338719783668591710011850059061842975309439900515581005951396159234162579692904788339060717606348839324958585826228162806499753034912817339100350882094754841008592299929477013101333536550708124235809067965053408458386509249337463660768672278448067953301399883436637829450759611922576947583086659929723039464780534767123049824797692189943142164929733392661035878420955169372594749472553150266661961509634108374321692692694818161656830 + + + 5585647873840736520118499913356621776653385365544282195679047199193891909723415080354011887771628726404771779196244271118176278805669075188486450091139546343160146552762135812226353421695752747021175914747784869849156178832330867615143180249228642770838278467684619414810093896647212608979289295997461701144257645639670626563292710600337904812864269716926140991788722210980958002573324206687994612340714016989917187550472404565014807042285738475784191302436963757243133548901433764188921959563252576014042606802224333944971846544082917081333073999015754098613634324299818815549357538618105009312461378798582672555777 + + + 8076751100260952032099686817674746245829252209067837343633037550729981060053545491299274017869424270713834556596739676650116123157400082759748864567912750483181038809239279103986191411402232164627332878078014055291212127931864080112514315875549921945368312067615888292085669971451521218175370093099003434250443331760336919423331064603589765650317732926483877633420765423537281635205269073375099177417678998866427525128186878143390156021781578212046162347103359815630081225848632713410745851279510817234279959120157277682175335557713788007176057896058264577516453727642161725127366813327651761906369118351705426677172 + + + 7370821110778525753222999299553803611375874038714712566018356960834259376940845066591035801342481247053380022450321412743508932416832046245623166254336398508394435221002210213827485441232852553841155817070139579332680052302984688426436789765938121389334469268953916351874720062534819680832963775631963858203403736870020293490187682721166020227480035883903299697507828069359172957037219104829920777748789411276128421922098738830713692352457247757016270793870360850749223826408627025016577876881703274535006485619588413724932035207148527338862273898582637712502292729580855975197781740925283810645013625528319304663678 + + + 14724616614323110977589321287892928546762874523878136177752556567793195673458199342066195994709647245795754579031290705448390475805557619688296982580635597075500116919811761604075796497052515647294426183246104735539750847423278187164301854371931097811789329916838824149724869087673822022216018505220228891686960072880912294464884379087352309025773980008983547092761324012498550465954698915252315696923142178262009787956761437780950737500315013749861222050146420905940989138799565796283891923409029768548440693657334631178308443986067224340256913696203695136670975283293388297530547976955212475476397073807245757956636 + + + 17368658081694295334721939730375934274734635323579485157971880164013933269627916647368795297165982552410971694506734194739974208762382325233620835119065610943576418281115957611006439629909762290257992390284453326826800977921008000394871854269290190143203335604106984850973876847137509494996350619000087225157325781166882858705644175366668376750918598281587161148070025373196465294031172263887479037027388028948437267708825395067252787561844203192611399507523974569334395812189827444023918987710523046951830043683328114668498235317450798072197890835789495498696792063307172613432159360901126202886856791935278389584197 + + + 14726904952838803284145797995039585375587515696366389579238082711716394806079209548133346667706454492524185919597129573930278963954269389739450378369278705369429376651597368406995761162337773842941304040939901127758173037576494989948805152666824844156194475063630186927749140522469026089802093456460267767610298550850170475331413465746934481490356421106806741214909706689315252076321445136391196081536042324970139112509108357477806445330478592887019826205684419559841429358119163209770896836758028460183601573119838863328576674674201117180697975056393288852813422474951206383497332109264748166986366592493877469634562 + + + 8271977863549903701829438632194931380965769084789700828251548112313326374605772266019157485228951195100030274243438739438188826633833512538206637893627799077999482820009913349734664908069563467441634311005941347306289780249987644690983323806663438439410336379778740153910003976963212858969541341036214502019673445200350869117768100803198982837216454377715382887254804771867951371032322097932155415169117015296548310350254954771583407233622796195151524511759213899907073007015304800872065870403289159021113643079339871408757753553661881507589813172050240233123443341752063783675972250511796671909960490289650073116648 + + + 7404767853818615402543940246918256131474742919687771650376696381617849280486684673317861326398258853413488381191565349001213989981073808587372763466535489144626167330993432794464094981377717899419264820820192184837426904894093916619554386490143042129409622495302911257704152089912486881485027982792592710214472848845204733320784621526979234408781303696268455741859645415183648497608493932292093519891012521373331602202057854193866087977525408050090411854557493762077992296061843797909933207352396292757155891939988898141845880138260833043899953709692147919863189862066521252319442656235999811292040997793384049153771 + + + 14325909415125838611437742054721343009400800825683490011496997442027367813466262029846679159758438716268122689145368911684948796466851881876459836001824911334688567696447081927508326517142071967773068411744727959291868108026299013617704810881841401592266782192211939909496422396380716269523290895259755841639767967912003603179802618926957332531916719248550501200116196417315304434713157655686088376091884841673724266706454887841071139191630864433527376619017685217878949041953020366370064604895074254565348617238127731309362373684139799755165468115230133716728900127611791207198322272623078912993988496615775246507873 + + + 11633992766998023053657605431399982250866742311872772067741436768151800895350466123811825779458164611771064553612432040211521060466964420126534156698165504742298776094663535601181677995741494709375080420351143019403676974195665232119307355924046805053312893363210321162300975768871995776904859502373988976377181425746887974686269428049881015594856980185625622994577704337756609308195447241453087799286289017998214842274495476092079962036032711190016999707520328861392345984254393164520298013969366889820125932225742926815364191804985076459234366547229942836231482819081010643757700743821791373737676517356961258280560 + + + 853860514992766979076159968134664010464296226806597091207373775512101562764601496674537239920934264138765060232405284754774591005867864943348055165914505895533974181513710482102479581303943582852796755729535300731903412675238694093034953292333011617341650001138458523150101752380935490841485098192947290825135761419344095232492000054909342689194263986272543380086139146007215265048686716701193243248128202248340275268356606067276787465969202058835146287360826009084560803693263844073707340568901970875374707110048842604461557198544036976480847724754555329324660316855051062043761396482329940386065769193234377726498 + + + 16501504234008424082339912441597515330429316507101249058387542865841523426794974844817250854989129721717231163991641556728835494674996867382223966070749503922811119382784763050789117056233396837730370173314840562290581801629125250280053760898472524104638742432664607365239812872391111489029957338133961036090657951800706957803603783014077694725334972909114532682444482860589846318861046359001723337558355764344272770953108920299348915374118138043449724347729215433199011663135490737040732980425785115429566105249041892482825819536195130716059565601613434438877520912748979906827157540201899319875777387478164279703944 + + + 12785489414027014917875042749751935297804773361561728311365861702264839303030458356846679794576064219555727989225782428192966963041146787967535623025264363339585547656835179138995279064311227554990107922001480422194864180458760795828329245627722677214418930319280733157188195763911287506644630534758350341333351431751931025784141685811318326300020504787523113231354752642430785201449235893350443258927794619767819129002911331027487334671257741277184968871761842511079569752571385771703846024334053821718004164415645112929457307695123854670612785793794634109791054633578970779446305369931850889862729303972079626196671 + + + 8451684799280238944897819214601714181022112074475515169352487596464402399666425248110272241832945059842778439439724299445269879140293153172131855154977161755028420019941655126167743215187401512863609709923897654307237648784760831616423576981043576961080173471583041502058688979306032261888649096681993703189526175493614023182544890899036990722576261999331211524011810519736192684201889545507368663431884013675043572698551199919085896522131524829004462875858906691437486773978906482134955552563833995203036031091098458506498250208890255592768952074954228979420369365668024996217546684402371015998127489854264476448609 + + + 15261551606723884122332309706387079864560640384578442815929430356071620783527737034091588172443137034057929390613414367762869452212402963082303122159847252993502501583476103037548411896970924750018705610840349508794155436437753345971676274509400824289441621387103554062610381320467920350302823337694593927648811780386181698367767287506582449380403297266640150626877800394636559796795816541677656078563940645271858360934130918845547215207837608311006752969850508444916305679365440677126568979227904352141494659369282066938698120079139679865003130108980236343282430809468697492648217392529492790907048412605053865679613 + + + 16440821195354821752178999246804689165288608711263354118430292516613662000680602614746808003925731205530177698559056224900102654148615503905591651438094600693251880891045233115060206280868427919075197310863753831008099673978415715798233284642766880645561221769315018924371698707574434124351889060167727693821121705053731130004198699381285574252477608503889797487923124205080090942288536635882059995915009394278220649889276759911679597870765881387831673264062844599916353438379069335776954240488572430602138162355816400386948456874759324260591620480182975760761008017290970810947472551501016231887258208916962363361130 + + + 3918474543072091961030594349090543218124893333798812174548025956336904838328873702345633072472638444752099092538872253000923019199463827258711282146446181637788193866227778139590417019979222367687936889591664540416089617800738481665475500063210308972996024993664402747872984041572114972102902575616970258452707387822145107669531337620625426191318978601968146652092319541028790873243808445322222121194726728195727208286846046565716790026743003257221947494054644027048751751739022910570016983988245645125348637426977903121411987535218081742417156992166670665515283179932515464036188044194775322097813593874301465033140 + + + 8017922345616472611304275600559947863145615640563175343287682848691725106145368781953045529222339343824455006010173259563062287416816322400850074569642188617164232425644467193703899910892616607535009695573745624497590943323741598328664216243301984922137712320938993926296306527868456467450879889409392397988318582218253964623735538845623592352214258744210766521063529223313718320164438558565337331977228417810429849244780776107631304542256112075297848920545418534669943040473555858824854831942969827736672666148087842242848226496919417602657945129074976615540658834628828228896593967422471980461635320656259202024404 + + + 13693048985401746577154903386672109630781926161462449453295904226406506573722341500466182228445278218091554721965704882448373875893430943135273847763993276330927882750090651128581648800392537538957539864832173920688705266309703204264626327541096897943225592239696692515319499224695142727749230344202269800467301548128128662871253176575238677670851063704412137704099479144096080282744947622924105291575114833102163035081941177271780714664241170936723854236977124986545766261739254933322671515010838507449614937967295569175640319154892580822104579046091861885766110679207163639605146046103256839011087712985512436471756 + + + 13431818672595137903785578809873185186953198333108051878509612791108085062326582071224183862839980004679333247589736658963046794115820494089690992330896536629120052853240222298715936563995294383304256144141794160260019774700164206390115750131644088082836750633393427033709101302106522777363884687363326158161718311135340938500190703106209709738060589628960836636934857316813293610423887287018370782941617704416049081935090730210689415465694761259002961225074257313121558513322198387712336729249299990730602967717813020173924006783122926832385405975580809429383194900393967080491338679042311668116873092941748979145710 + + + 5833322952539213306717737932757910510063965185260049298158214852268428114789445818213891222938991621690169813780544593311229363143781263429540020095963473959245207557575417692296567755941337277283251047952371128430621744950635416380901867500847620909701163534953410621136764025206166740317886132234493855103623304480668338986756214275264018693304669338747306498128299040657276630749036311523335384132008971476289773598126680234414295025819800195193937789180174439784598630147252219536932835678628976805533203962833755364960845698630874909366559268557126553849533181762318523723550424725602400351313755060288261422807 + + + 8755697018985824809660180357219193859847121974203601151774964167622016450341496462973018213560788612360460831375673749144663741962852841618945165064155770948864409970860335190989736029236120586141291785912386479381813521473380509133608827747795745615725359904103508087226344356442876670081642464622390278935640582996143744270096598955418705358546637363976971348530461293069229460850570967222528966568315438020453616208281690571261414177948151327548901398967189194199212580535264108307630978277395926912442669090987055503851788162035440635424082541015370074087734620671153226472472549045104364158405429965022560594679 + + + 8666911511609506167125607966518171333758387900875947703054999795713985447956362302907595097925579042576773143343437025915045628390444968680805134862985040561956128931337921983112513865266623583866030511203437838399561399694468829226378342450548461135676798625215519511009476676713474480042657819609136083160011702607126435703242263896354287177409859381575147130290624040708881253578317387810916348660969488108019519201322668426102544740928641135235232726272262051201343768925800987124771199708308392404217645122016159589068255821626703863949334754457118586266081166120381519847097081179514122447083583845237288626110 + + + 5527195143875356494200762810556945554750608526052164862471304023907685260213457803836295494872383825147829921183004272419939027407818778148169237324262890356294323886426217177471668538824174851683755699353374939683375056597330613542761378459907690696498128768658360959662638963833569842379205745320672165553662925917347953437515682317783164244965229690105350556737462144387311185494091931223203450546162675687724814281856792853825172313679834607191085835557241591433021059340021767028318552732405502486484061250362994203093519474778527043107580774845247322627899513327701224664102856681256668796903269381668917545461 + + + 14689788251159533771264762893477736785651276663817634103863354712998239617478734067940899684447786882602020795990002744037250330057954576733848645939456893840275979032017282985501954666073009858745992990300065990225634328068783581575889138410515915560343103320540083004545306017224698154394932888196515874893463345286939605448019712762776200060633767584807776570265520706036165021679117206207557217808678691852496519446501448983220006479062767814151773967539408336839859082288640673236563047785269785319160689448512879441004435713843775696827156673050630982445390759483797715621349723378212496009302320123176246125419 + + + 14975951246248654203734475159146123724019823367216295965760886043529504531530664890858983787558090033582040067625587299696210636191840011050490895532288587989658152266235655289435590726545027068645644872849000615057932818108032233848066963248527794397518944022165274305003113761032996441979941251284161316125341439726587019296653534200697050197104818935165455951509682063445113659837749269994117712236021664606262599420847446202272483700557004369883574636997770979902783052533867116236372904392853327828207211849225297448793099495612243319781266462198901555213842009652189625306170098976240071142982208014073125456406 + + + 3800392839004246780437019328202909686310821333251147905263843040603166654641617334404127733509807998705049330250597241143544536464563354278678207395003198126631518960493325502672231758056489516981070665309665598373021722268384023125486748590708877246565976664134014156165124909425761272915962308118913359667525588502787851401037703340522169847267144425581258242849429813029585011174205819314505901759444067110188832557992984806832787266734774506079298072580568585446268095955622340010364320451609291350014123115312309769316067802808943912774815904664162949600521958022171807129978220490492917198413327556019718728082 + + + 10298962601748796548998846554245377003149951916678298403753121118410223765591265854111088074496526510970195456952008307218016246056315804431344137947649974008902433274849382500556901959960943745142083109908868279246355135950596937200898908964155282189547869880373099127416998547432265432589491437010594508592370036191587274799683028771559428718530464926401831950356614261746003098852709461150368036359656663011633035082821316299894767425033300483169893566235301766697253073642765743669393003409442790240874706115368525846862817260376824917849365064397382801647560432269802661149760082842728880732453624342117244854736 + + + 17482478557745259665955993283244430909047568993449197514158451938135480788474157236330886832438852863203144910649721233045810572627216740277427960073343513270001315486620253710274146948443021380968374060409238931707273657373022082475297702176411528204350886063739264991731554677344887474559389666335982913108512629771247129221265257309157327767081176934596117900519125535049948157021006139562069566878535321394972108825008492944726545605586237851922233430244717392235275276616548914835164890421086308771131488444616555876744420733655740457468285947555110716302579798969932358506283359625065617750960569734014632347354 + + + 11577618090513645820554718602043179416343206711812947814679009802774668149445557382836054920963296759929141567765567961238592230003725832003688875181852696635749781340381432742351143740107638081910917630479609112440982684034110571824551502637980353989378488005932976431063932195000766989685881212139414082129264133514736884892322302498383036821218031397792629552723867393768982354960778829645318950770132954151175245405929635041278880401561024002175079066207171372717006472541630442949163121957311794965399363199270592429762856824726817912533678652352113227346824036852695308053172614364809097527790576412498594600397 + + + 1841209975605701595365003387912129242390420486491962799460918558550672827869839667894763297102397848138535151497078045135966723560200568912875815457864731808332192280962557393458916568942333507397699139674530087400961449389548648703544938818080527146279828134878089817914716211184122680070595658151070230727905221957003231822662974972844447119152106646439812816935773786854274304764772570679888589709565148464491801158016069477730622608003022153533372499549891384414569284689614114728642432212819127196750523842550415519158175483064395701877108719504630746913319233437546152906612046454809955269791151693572610856947 + + + 15466193874637654008399007672294041685338372143008257092073655173576596978705451522105498048160362883212128611619074271466159777229518923452850761369417905604067498734459618462755976347950154156591205615227504210077268197825686763371678626076695679988886888411064630387476758719573210392543113420966144007909397482530198397075915143663533324846490927911047648653442666817981851955905417636355813998071248966603982630261406265669400630614703412433073063783785111942332253312876761932333137338702631310995692867331163907340627993713733981487057037652918747037323757493551660178457572116806992318424238126153058287260027 + + + 3539192957913619629120313804369114084351111047400316508298768441226085301752795762541416581472165239830788812309313363490174481900096551507129750258842868992024740283946865370560122807402261606915791758407071157200634201180838281501458296715756451154087292229484784260074907404426060989890768113393051564755022970766265123858036548431993946981027315451535769233266748792235293774706982691423103654274012370286504150626327360531188746337901125267367381453995795190273035158152925898884085619400015796270299744124257235189326908736475256500541579903215964327851642490479411466539212929917552264050976659064288309758958 + + + 3049007083976648058187918103167483063662408427242689108693269230496455870062702396587411349532802547012736982966894484673761340847794260482604425499428937042082279745840395704273510631782964034074853545568300699194567831652731627275075394059754503428352392801189768209170255457768686055573295709091651513010863738433567726119281464825155649430029691206710946241457194402037213883859421446103795245183040674482711055329252208238828329263966605854602932334617866391695627372865542241421568561322297293654123211327974647271099671770143365486577236486669184609682318321579356678269872691085403034528146794459947866369329 + + + 11744219759033052883913880202552834948896048585217580222318289804855573075882668763636275581288848989332880427436107932103322485541563033322265455787690421489958532733244064903899617970447050786712440387668820573056044944749420676344425755948683246823226293690019413595746909305436747848655820868187954443068142355433200517135603868532816531762442569168247837085616465701860919614387572326553016577315486085174321141116379382957430745494021447545255336444121740863004756380892457495430122654781254896313278814012849432730447741559477652544770497039771284259298078716810469148563941551871647053356348472841677707050129 + + + 15057303735021534844447176214215737800173680155753434157855129944103944224294420151474610056964595601095589893071827921966852232671311005618686133198876034048060057093843915192703090056912349377799191684037542097115515121736040543618098054722313989497553953951977886255787878126038349319391478686645239577652509755049062947430884686969509008293205354169054331295191646420855854796209005484615326288175387268621553253870172396232201772004347501845011101096343272407337746472101691211228791586827834499457016523338095947042637141297862361192501592445010904136826913314829662446366319096389022431523053100757612673646732 + + + 6159114768883278152763230282997919700480355192102231522904645788417150799391403342844914117533981993678879439137207443070597074301982172012663295434038689589238683373440574686392573330035217242065193693706181526194960501583018070383316366779191278434451426418662628016422573695428681514300885884055770464432759930153571539991784249636746813343808893879353502345116318234576286585221134260905405745973174437520698534083578852737673776802650347089843858993831113949774349502788056764772394086671807597545441972172095551477732563358250406551157836118356942300475667909149580551551637970015524308239794736631839959628416 + + + 7267143389817565014933794534267634028790628997339383736390524380264295061677583280742558327591825222626798208449374061259662822501446253324015809301701647928185157810629984455072641327320936480892068761230565826286403662697824804969058019824778088750729962102058586710444977817940710065406440676717356680868209354699676993745899815079617743309078977099103334861748908539429307950158979906843109579881985152474738766471672651437120727231010130188439040414705613615419691986492971543835811766018686197843217573874348060775459257861659792938985087757663487797112641837996409555474543339684117524225274614590348356798879 + + + 5342230672990080299619420732617364029714106729461040068116352154173009156800645346175781401457004417700974307402275018956693037506040941525978011174970698212281427929299006388282648794664133884657263949257482353252134103766099552442499200770212670069189602112738559434636296723448801296395569371887210778047492870450692613635385019982238894622917122684147350616105363725574764182553271650544071211116902159998282188465381893391145959329674045647487489683324204940207949495460986321687789241486808348462999565437131775800631365289203258299590067102567825851451314289357064281384018097347873440269716816907072909137894 + + + 284928620851245205945338261969007191154595449535410445759736881040954565378391395051596928590942473861003086894179468160658477398188696433330982534154244970881759805679227243072548397809070138639421882268985479213905761837544902986659363727473062540138967227388981184815448046798014029616116493333051356922975944389740946447779806595630473581654454747267090607142521654669094664530097731121846540513598916368289743267182181899577480127856335822450118663735206284479399904611189278082851843405023030412427800249888456212621217385136744289341662678854669645564194676053687093956063975718071203652060037247730543825963 + + + 13590339786918436457792124768604779362071012304313118613673483264497478522550592477716047000554046441079655157900412465893286418853900380318598452654986951370588595313368418708794424125755361414740636576419981394635179693070502829812185004298092694631856160604876298375093477868740449252472999025564804022975348920878291183612766112257125251053434162058480930043147592283048838283783378814600533304398222359102416408272152779260343128553842160642524437965311174229648295376894631876379859359000863821840473889079410953842622874114652309716957081105435253909842761415579153283508398445371789244451727234137468819065257 + + + 17210427969939532901638566316866518495862786808463103800996146826939658918585530334489110858710218044289339378393832404667463364644407189745107564741803782323566298053072832881543035104981340961449104595305407829185115718475357319679809004997101848910524981231181470399823989556962610019329948154171623776870094756941389081569455320957869221240060861640968200172831612566720594638902692038492221158049948046263563835546363877736557279563630234621601306226310439044472958249783755370353436216753366420605265418734359173304269389402393903102578886909956131880709625709138613208398073616270393401627089291160725812393373 + + + 1 + 0 + +

+ 0 +

+ + 0 + + 128 +
+ + 23809680491431891142738465691655665112113062202922884781130057911471162618797591181080472227175982265838552157623268620151859228940461680766221065702279245899986624551235793431597384416370415964986734693382180612249294074406813963115177946675184230801632375875912747950664082271721246062628603070737193229755438985630489545011298966598718777992419486655335021587430634184886143214587423546138839814603313890069795693571135726372706172200065108425773653931186599785747859220889263961647847041767062129988928077586691103249682083388060183694266620550871686307492282257374133012508856668481681671506479351662081854438633 + + + 1024 + 0 + + 83289768196896186130380152017159589998275264889153932048188195088149459035372862233039869845900498454919302587030149928180196206788756561050569806187180508265567602254752282733656051812214011508622721384441745732958283192353176995600518404140847873646406093867006829664699577446891423938667858592091804965166815465171573052713468455394991788025966021627572845189864906082117512925446845401769242633593613029171672317367674716848135767061776794198216119086242805125487956944953471940196747756152490695984848489636473459075386615720124157103508698871731830506363897808776098403054274235082086755431712422363639793864650817759757399895194943618211690269613199096488272907779581866765493305054468487210387980897619340488390573086860175017199349718074778643376181955380213229004906106122254084302091919377961545329729154993950763862275877577068093090399616598018781450011589724930145671047648276126926115260431506062315689016255177123804484572175072222761509487660426979470016290923775538935140641914645630403623543824080743199266415176288385228018815198427899901392624835617629393464876121313503527164116168582711949222433185596296752251957082444567461463193913745471997996027849902013134898168065589456087590188294906768815751354472790 + + + 468236854275027296789436417884669390042084059099462742378252621174313484901493835885550480030482260109675387309384527668629238172468959388072064004570156964957331478148783907792350168720481611727610991029357992908014090418147372474839690409250548062258575137734652222943494439198103627899770490505782717614727428663852158798442294435852584149310731635079208868989519578352204102679077729575411918093900087081371772520190286330455632843512845696934993455635504882055430469113879304062616975089163284582285843722714367681657977939794003256461617926369187645912436675931476974051459411965613468898965899971473933887272034971234393892233957714574999867486964633583903676015170869808570362531780314294292681141437607821010833600365943508361210805942234151756587133136504825728641251141619912244949403706695799298885767995224822788970112412033012812331538494628317187724117586222370211236318639478974392988170531992337028417595717977406417701617897947622670263629461614037017205660206092069076446459401205924397417287911840079121920668848727741399034326755438655768722796691240260926652320793190069865205396239141611265619061754308021749112334304053455800030419365412539439538373942945903303898849425882811717425214439559185470697430490705 + + + 331892860881740885414967336901256398838651570063257497780025008148379755612772439523426884274772058960140924499501024463840458554970896603137506133762888040933757516798340108484826529322688785123345736578586939160966882427098494210050782234150285535819988878535426409779084135527758294626506868899675650545845008139019597941314921500283203448477010991045130313741618499911775449838322579608141226285771231687336448881166469707592638124933306250575580324408256419723459860522711647643880653524698736569185981730647452780151445098939986158478565053465332287878345619199405125961429123639920080342164884000217250419194369422784380079216506729596432244975781750452035355989533746832004946727775926109374619922376446302169167199254162612590860726715459716074051774037341315168661205528539780005698734575018136423849826790705196375281120761156009911512171197115760455825872066620077458871591459214434467170180922333771491562878427164636730147897546518800863984581654140317495425417354092718273837772903288922074181078458988887624300251042732214858298724536295357020796874176349131570763375083894587528170174180198634299159539326339793340216293985473923164716986488113758740626094974999823161933879755612972726765319250540664487670261887215 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + + 23809680491431891142738465691655665112113062202922884781130057911471162618797591181080472227175982265838552157623268620151859228940461680766221065702279245899986624551235793431597384416370415964986734693382180612249294074406813963115177946675184230801632375875912747950664082271721246062628603070737193229755438985630489545011298966598718777992419486655335021587430634184886143214587423546138839814603313890069795693571135726372706172200065108425773653931186599785747859220889263961647847041767062129988928077586691103249682083388060183694266620550871686307492282257374133012508856668481681671506479351662081854438634 + + + 529403894192163445317144416049430187430435732645124744990241753966966156444470487336641247043984708708237341203765208244016723266217474802058248098719919472430162620795357706514573907496867592776927026021954354806541152912404883125941706599704853694526724911320696350384449741718001718019213743638446917368557001340255610789211377840184864224931411785706035416836385629693442601177822732211123896077042412494639371917064812300862083193984576879518894231779943531828533345084031533986080169196772240963001248747443242480330100602546847896387904493228762130165488751233079104003629369781701989148361058350464669772080848341213276318355875783002860916205180718929334755322316925484430642162263956680820340106972358781310475417479965503474317831036253888041304688675336794474926809640966925432407032962085028185673213907740815977105471987038705358796218358967355027331325428747210768586033587820704416542541381116460337167457355727228465267332133590429796020669805879205806265545414643259036481520664835934029749349139477601365132116246890431931153958796750844502729915984767221666945673349911584056785677729646910066888363697467618509543425971074785821420836009823432472489573913256875281779759087305556780465723770012679792759626607025 + + + 244206571989988725168531303896734282614846370628133318075184027122674957719132955379812723433327882910645719107734385971075024494480656137168440151248281104047467468106676852956367895052456167662423181165805026813167956568555663446288831625562476573559379934647526325128232644648994441768113003413553104112106336953079478432893805866220487884108461678072080512538103242594833285397441339395525900230360444486913325112247776096835729096551718300078872451347010446450436711083974326436073181652813032741544456873530203309525998162406199747032450311688028645107306395626920559182139276796474706466556620500586491923798394918529417472000305063843557971393656805765023597922766820866267253150682257279673957236012551254220196298570637537371147350749880963346051882810867591865361634835879675369240492697442032327305526206703070185238684658462871197235594105913964956092607360599294655594188894066888141553406377550478429700702956414293210393775090460384218150892341785272490069988924263782280038816947785916711218336561448311890463773728381858097199111557586478204271983204231146316597428377957061464634583521277935780430231244905784090573797771665675788967895168935113351981175602969475409526546594354096881501141391714129932724797115831 + + + 195489201507160732043511824339998179382556360476200116412116525529351027895254842611967948907386853818338529521067303591189359536990345756846507100029899529132843810017636314552727689704551606893214600802001606946036912625851820865090894535404232202439522934387185616614940143905747384208512561052848689462208025677995020351240916784942499639747041940835689599973392897719853982326006708010071605704147650362749991907979199433775650851866986312605804949481940610835962542744383096797166403138276180524498004214818218155397297944919878694795062743631297653149845403240972991132615640060466937184798467916113898134541163336522412831457613123709685796551079894963799882501784210139219065804956622625250541823300880063164682625557954671106132941420320037490219483430870456230265751290791267368910208287092495817501847691072975151304723111565724726798849513236137238056367310058266435183646942058160381762734187757348109661904923921178515216276459459590028316301964885205571604344182488928796252423871148147096856352331139639125838736787932981616649871962323256776173201282508794636442097372391584255019060834289638642514345656262986135675011611774481074904134446413477070992704564090162140159248498078202311779429616315250846423030168328 + + 0 + +
+
+ diff --git a/src/public.regular.80.arbiter b/src/public.regular.80.arbiter index 2024fc7..1a7464a 100644 --- a/src/public.regular.80.arbiter +++ b/src/public.regular.80.arbiter @@ -1,3091 +1,3091 @@ - + 1024 - 100330587879240643601194719709184181335011626680068504026777062753970084772298212283340591872326237701463522637098147730445620335179990581964227914349043990250212381971463845457330076943726930123827054060650981352932672131926501755391779820522171592983436323464354175593060535829109263868308676001214142536221 + 94836384803892638824117995789132634482195952270868994215826748984908869153793901088860747241224696418115703108674302399630637671188782893273657113184864662690443068160796842996671189834880158003941516805722263619284432858611075971537413772136662438909421338578041148782336924983435268250343719081886964959801 1024 1025 0 - 13193117905084548527263347762186116420288188516310097265858702726255392664155870075791914740219311014212595321106321761692773036287865062500900443459678158295272670469090740174662526472534878133444188697868365238350091399908990272046467280966937835707228621969489480693642307672532248823659672097398829073625 + 28628690555576767636749697774290185491940279513676706241306422890293703923061800503953138037347144087401922827665221638014945985342847864551153541925981426256309942606336716126401392680335920838438810065126576356377975697801204103582696059784982593810421090414224431668947405969548050595750335080989525167984 - 9607081437298923455968530857721834360303397916731407361640299786683385647161788118549878059299205581231610224979465710490227690046126777092238245568451624404512652507499363073102390591928643439366730700009294462282490266100143844591289618905633145895179005389352943223066212241447787744961927125474615447370 + 12704571413260033462061464754451074580382114173014224139014431276115694168827187805293997125113272343311324278099547730111636857343918161732729826829503095721079360301154347778598146984393353743303710301736898535862952817982088561340251050785007953162129111657805716500514120319695870467007573825409063699688 - 63222052956157032287707248172271929389900812085370748808404194366855505198500284714718891333844834747851131246963730619516012765496939913651967212941640196183798235452114995219674384402577336140337331260330720223634686921848006163981848406630554700629421865992965772688226261818633638380123146354231432907562 + 45227515007551577556218807394554795639782554114786566240816377599870659820546368006941208474813254386199493094911687799734757970217693820511125139219183723465993685585973309515639497431094006986068540552860410906344200121814156940685114842748826666215388232186681874215905068908372768496150840584696553675722 - 79915625601429218839549587901214307201165307986780834271930842661330406032231976710591451583389538545888093689290087573995162703431027793991118358029291014199531244010364846181855172314561525366554704657346963676344480580500147615488700960978318340286888719325428131669047485381833949424731804768353716892560 + 86492925491879434163914498450911657748150417249957478758084086162563205664026800151265448125596380943442372439272136227989925642200754633983103587916679081758035690802079500865977773110094907466835700423213457655121075772534776196297203229657104751498578084275940964029360375798869141451210851988376278109718 - 47701016665755849568612073566947987366879933214816917915268299953950412601700597127694469815543152076142271171711752583900087646289305387695179529483658057543596846160397140199383442494977266099630254524539790977060119208210570044319858165960177041648164257226301853376613163460916869223010199043653878720105 + 34169033322761192018370276424948631996199772331518271559243992239356341910132742770283049384839569694666972361644863718702825173681793296884351860361980094070307601790674146336993970437100512350349702810418222458602675266977562851793778848360775113646088196648287899814441069730802356606940617848817039500637 - 24850759097191950163143664591758381688826696320425274979749851903957046300796977298973543004363262594641140584386297479785806697869794733976791958187401130497226409771795061744681224136934303847190441593620202399768372095136918184735321735664603611144575788489557448727406447397803811473360877918759259831955 + 23617033310059654252479867777809752627544228003099634204116368399648674949222872702184711948816864198585783888739684164688625995476136090851512108845578157641229762272914787372776781293843183599428892883531459766238361726217665263839978835741638943885270164923600171930484244266394605033117999707136140523924 - 76193316006566705164547479404507434672303142743152232705658408410526978068383629979301280468158866041200868987905576789112521232473814827261509929878160505625768306411365136558267871439565016344376470950009820893648063480032276458882969686496128164261557683377210063868226373163371778431451711084026189812012 + 76178823264498322872026689457428571290276029860221063151039075897883830520156452493341335999154306366898316956903981992758809289493898717701729765994959254737106638982631012562834649725117228827909757771040101702706971237450667764212367417208733132928866149829798703383858416218714316107959063435139647797474 - 18205554957105399733761515002588283830469684098915553069676548155248800679421068674414561899843206768429286603009583589839433006990981521943233509779580120676512858605049482527492878490313173179308945123449206801588524890984371297255359345614005893009790126733460410017156161034863950715626017535054047246981 + 5638557982272521525189167512579455915021874798158896342885355199621907065483735899043984276974386970485059384872870484358944507706508882965643581920025879129518569034602972023621135730019835192511245731231515787424568467104605292785348797328103204493245834783555930592238776822953619374400709002986414501829 - 68804282224902341654532912356268845689984630622839027239152427939901001643685487911618104772931880751655011280307591422014171436352018478640602699746623291094834916778497262188221203180042304113509639106826930787829278831313048808708848247767229466915908483372288809262235061807355551935910463272245557784595 + 27480357729131502436767756665644955679853077993052325031138498519526165314625672915710347010850690518666383024609720232474399583066580200962081230950834133097595539593474609988589630560662293551254129039981028709780868682077806473609246482917392276176403914626605057356963162132690807940191107107726099548856 - 14710431759599955740591605813321984190038997598517105773484164041803549705417678554800768750042359395750990109487516864594413694904913886355372807277343229267591814802152696267291478810551625018428388267027648179050495058034408535421981603261563194488085656649671062271212513576449806049992674234192030777574 + 81806262851964456317711834014755776755356920296696004611648966526162434237725491703327615945855511507408095073269288498873361391540724755443913316968029706162380509788381394222544068022801297063909482203133029231461606026525117582407807023968949029541939572335382341656940489991762359806363948292889697571910 - 97335949731609236144316663640062514016851025541642839324533796090627959674938345579897468218460449654276452674757200265949125811999728574524889662446316375812810202041470260073999631862279833814369268555190075592375221980642563702670906125471734192930166695415063178530194617942068897622096539265080108559824 + 21355512868834606251992797328324414480054758010899398627061213705993340685290586987473873677178850523791712379743214662323580443534520266725491966348236567037202326214584423131366143717888276408085715981466588760396791984486952540781326827628144001879710643124410128036812807721668622219667809364696705210826 - 72068279995642290705968683473722682972437944412128786938029662878471449546935335004699626489552472509674789920868776551068184049092929010137921315602263556252534269487163254116463543732902075230217932375433334218193433624096963779560756193027301909089341626620553978382128137460344082797314447936004572457040 + 81660394535628823503892435093479102450629283684673527514364826992550962747113264059243386352290773413740471240591142165398754169138444103081865843549746034865234385392073641186701977361775527784839594001512361756410820717835615670847734053472945975428823636672357334192351065772823196105914902710856491933306 - 43261503997482822927354102954103224600610028567994671216449906044795600617287092428772161187394375144871951545888073613954037852564512971778323398568107467013996480258025726076449984719240410205358385835869647485743161788059731128097759642300321909861321582795004849833985872154749945682328197021360521753067 + 93443232343594221280116228685334986547320053798028799833920740940115107372631529652567009057048540447064087482464786372999140967311472891288811816116675694019255857206445130981965995851326320292615637190280200552347680131930564198239840424735085657760574337415826881269773051246406482015670407479427971247627 - 11402996270831833056473333336195335217533292594932562589196171486037167068173623799188025017024507830243824157572678705890902882684126083466348423106251087313356213063112549802638788736744323372287146095539294801646431234807726481010426239145849808815012719431562929467277886683551091656869306841073006745584 + 665457753462978321958066826133699345746877456158588620987637303190348021782228758129424552337789919840915809196362559635925074949969247448712224096416225490789807892698469361515538348896789400348306427502466976131467900408842165776492299599591866647501587145010110759124967847959274247283855576734021311255 - 26359053607170210363454332277816533081802270843974401786370944902714235985807127990902784181549947368166552433849434105756951336341606274643676940549651205519256275699400078597279077240964454669109967466430598307202660808744954008500655743241990054061626360796889932689259393139269437576357248455405931765898 + 87529552450044278171665673267168074518421775113755070076521444611934885487531844560650922788448839723986150001942529112077708402321635785197160575103073847689711454353305862439342464700271469704892185123982614298336173720945839998932284887028635203441153300114916201733371937265080280298178707023929366577144 - 96693544075252471440932077842431572501195898457811067386994861095427855669870802109848762460206346686847556538757853565233857968422390425651657283661522144817184992209175488341051755531709624434742513168671292004331587200183163525462581462555928693466050355263305703674435155547132637482234553751327383571765 + 46733134918332451822552461854768825469343265193931530101433280709527275715312590197162014516313880636995837687605499173972701076546820711699154326458999534818187481927255346245276546799162148010363338346620923542716944756976539233240344520945377392843314813462014157492564247997153200806905918815307212595200 - 60566385978298246362721837533290129745446948089070160766818814734860833213962587104742793842540758569841433582292214730604065074621132276996095320298525059682890761847683618695862394340972779068355346375751349935143637077344456944663878189923046693393543835521693948149200806501971117330064969905734155294177 + 12013709506346771852456177841053755601665741539562110091026384367294360537639778209075406205367160747736832561115008651566012049235766050442587021489952341183905561440090994775681745848616571811926564632064730679821253191531882600101381383971345689823272231552532266937458794232494271070442345355001359312572 - 17650049001047146826779927584533684191702018291615678330484244326749254365968410042018677125780745220023233964358728232947388463260321283616174826660873919708461559291622733589929816458292173934427315960906738236172663032959945552851357495410908059528726082063633983777569339270390459183344415820689796622996 + 34238996215210005673344992798622722522666913078442948193692709132286641592176947669015425539971581021871048377514923213443736740730506734786714747186703971537962660411201620756192890401314069347973609755132641866318018348179059884667992269253371972872850660369921415186688033221185169189546660422117754594687 - 94258919315510200669888561882313471797171047875523457445876765612391756166498289389093834651721098474511286465077494611763798413493236132750720844143274780422227502109237242105314067663827853292353627399196772901165764173670709400169601661654757178802194277645807561940879382633043336389731405156482875183050 + 70701289571536034505801552101766551157603637727319266012843079614112040967312277536130829722546500858617347890055441421374083266267321224231143599611417475916435970971049236340049754006261198694129562167759298477179694324773038550281271729056432913160625017605344086304416115979734180077456811896749721596052 - 81200044176264144068840451699319115897828985771860829791180035039846499846321778629497296834271518773925929718351307333633598296794782912459391670886112594505194395057592406478095599749307715551975159997433091300129145979385671904373989234748366147066364481989424143883907221407512297092483264089387098868171 + 50863697030073298733047607127396119023981100928545980598284157265072623857852289488246574201586953453820278646511521621037397743649271728577924818919827320673688332267392767860934572270631871355899663858316347956042312720476642459693883050648195789347630752166209094573931739290220063151503122252538382724849 - 25339194664193546979180718239644835459754771499336665710754293368930895591140475815612525630473309186004745247448658642603371688246814817780823666584747690512308474363048362085579375549987488941791035310583526812246571702975524642845811573551255281280133006363797457608777115702210145616204012131170055542344 + 88233092790171925307800819173305883091086435485076482146451117747744223815427840845940230430532749085835875160052759856167595057651183816668457030318440853329655350638199367531525005544390688410665409004643070687049953762146060828686525312598479691959856022057136638298642742832263775364257770929572822722286 - 41300523741053492629150434661625999746560913490690418429532902983897211778681016857047588024335047889162640824774424393416316936418022622709001119603404403990086859345450717837579752435957160590017064313335886904293753255608764520419416804899749175080773534997313037378420492265963766649736709262064589714409 + 20184259913213495031798491142252332760244638612666711744243868210182512105548371052223551606590888964166483590503734468457528381586171417923793589503442357186901875654743449889269167246060124761202000215963980853684312316212537419636288268480351261161273258098032552093928821051705628969362153071398853906503 - 3584515281141995569337255965436531695218123945218129584570499539528522665718837302347199724240561496793575144706704600266391369572626191496352665252924623915913234081400357111360821549698503926323191727150012005014359853222778338281898790505843398409686500145947057255586971503933173939069904685357342613306 + 69672732770109565573907729447446493763627189163481302906102808544915612747650358807583059347235092783897369685509361069535378710152591806590797562906591778983830882737505423973278003706867627240778518331523150949098959828365891152390572317437528382751121397890032903718698336991709522586569399861629652549297 - 20090969453467919404122390473356385630380330357311463845930876142809500717881724204262199412405587739654414770878564486085221177446522225635161899655571150943597384470379865883810431654152424227009019453340009046775141634086806272846924558522718506423614855558152558722046517697476292632173486567111392412098 + 23670196265160624947999169825087657430137286570066023620883321217793936983380889801784331346265490280975373355471713777299395352380314855078665225902611706323824457313746661412271695660211488909083821397447176882861454357619826883302184275598218846797861075888380811309625616207819088428276520369615853266868 - 57217422500964513331954980096008791231817222929476508599504136961337093550097404314202176182728643437906872846039617199564464749452811742325038235097362882947400254238049138673536789043612130306114621547654311670178769385280738238139932144933734357202407929206846032651661075216504909236544097334487840779226 + 85303266658324976455164516022007243890303808654748830878294469179152517345883905298310033221106800519384158052623054029043059135101638448825116730258282728096918672540655914196206764311914948589233530462829380642912189878285275672050910955052321564802571009338932064789362977800672849035696485787851386554083 - 13084308931052847600778250772715981080177184926668076570169061505335070284679848517089829161533895158116519163545683492109094242825354902150896290040810813230488399862043395340349178438589910733390539081533184521436805552259099194751928643309984880195429076212675163833615433490252456213849652613987785053574 + 84796394576424542413729348436703721036214167053071723433322831222039957379970758058518269556965319319986007987462741279902064888673827118002154927844697639139055212481814632825855504924282415544390162223409402504016492398974578883550814121912672790432260121978324424788619352683919259950804998646876782479352 - 40227090235273238118661097675501312033794692279156977945846758938370670316810689171305096463582979757439891746245006633492183962214328010387297579060458308829128671771437227592177190984203857495581717094227742441429000413938310568839635310000082339083840038283234892331990948579164269138059808815646315420671 + 23616774294167275764647430758317451023245466185550945532784149905259093867930231522181654116468800134882517133931250881081763606833152562122728354373859869768336188692596226580742005487449590032024257601488560665647183935366249364771345129751818726774896463595116882382130706081828810416481815656801293850540 - 21988466266196270578296365771698908030511716053291987506174402585748597092689754062528587667943320056787564869598109053863894456090570047755034757366827730962801169891307021694732062603574742503884388826060431930548366128019694755455839430609091267609521267289354526936307819042749017859537157058754962077335 + 43916849052270350847038558919951665010406087736387840118622629011434610934374611562680888662269831255905902472055380953693253871521960168728180960237456558725526686756933229331418554444582502143902921635825500623301591219251482239350287164952172384621226293304748605598460439681928237109494818626826251176427 - 89520120916193296805113071385337961513002436095676128973353460440128435404457739020924019430622587357948821488748246088898295934524908584068851435286217212830415169528212807010850982914171808128230251728361752889314477679269449337819137623488248691840196251403818401540801459183671089622934871766895094821065 + 9368999096796726498691530612091162854589713740628130275556581685818761383699189842084457551228306229454470306942790235115381212721607106877934541876468844996182948597186993703289358865781340455993925286966759266480650025333894168086829276400328352051488226716716157118927177866124656000487550684188153880902 - 5830647467433894114922965984239346925937071864097086633303281990246038982706584154333397373146031212318761749960398286250679370099713036360387130990445154978019868703158805705925467200976280146445815379251747003309206282688860460402805985660537073265255267932986882072072823449223069676194198004834390571792 + 6887526574030259126024913722215263145181631713489492377309359198805113616788189017758145837849774368159782668364727902571107907014225408099708503370076876697954430801538554765497788966242422677254927413622423228872864441747656081361055581228658275166501065107591279257187204970172958178725990268230995305286 - 37869639613896612053242238986560657772065126476359279330051340595148339032651527914692132650840742092755237509638386204840232619206255361281482452323265722997198920496587338402000028906704744458123297592907504340930575372063629908035891438333412245442273783415540269508954509663411428495235313989821573215712 + 90786202798865243325192491837884422679654157508048309818545353502817898646503562575644564593092963759174158824974539981797729061139363158661506644136669725222274521375756670943678074697345462386175206873247638506057935773747921854282423480951307379388031376891828987660423748900399518762097339027587666985111 - 61066736467344505727254434297107922441817606556492617567498347353134524506496560572011332253284109555828484806554899080057140688769070402883073819456942859750783841139834030683427372387136975303353618973278676684115368090301365810722734390009729746399473326395090143135905301951964598117980090793693975431140 + 45907139005242770658750347453123540315324737298330603271730335734026559487308352947819768850942557673095363050701053454589466768996885521746954560882387817819371815745859770014909633165847187067736081253828862185388670040800213330572544828859023342030905801149155194083141245549834491234436191364856725800870 - 73182148380549623984358439030820830718300926178635938834758803262176443081313613883822000216795974262590432065631606380547981193333502156502786523947163411754354957489568066351078556540668316657944113007725640894825135318254342802166664845037798239866834356509377681148107448671259313703199775793654842304362 + 74862712438940341391062729169880372804073347434493020180387962928647067240812503202681503807901122363679632999315638690723715585121233876375989780699457185065014490823087070666473443171181910904467014473131553818977406868855491854537919927217363492783591772636012535278070523727565658912903473019463167021437 - 39795340678038286568651669578659579301310056725619859124127430112888692465169476106380944591126976064024660327140814514895715727682252076385597009074981460189934927312468026066935983603907528121922572159694423393634690091508842134650342912626123672390099613821421316799525009680399842565273259242993386381850 + 16861494762481731393576446363981015666956561065806396907041576810801692286312403186519979527021520232294250044311394513768181186205923109392629139818447558289687304746884145313174923486680778884344892807086973051578344337317279233924903381040670112416065857953450094647077985029159484220645240446816515323275 - 79003878229605523425366684974212389013267207623724202031437030510601042349911933135962843729136571247756675857187230324841466891818894384217005223865055163879891901381899772040456423152014801299634924999338637013322575410310985723052595815990428893742255504511636027138919484490359404573190047011904866062387 + 71718097705939183936173398020212141859209059182303458921163158788703281151652713816325797184227108927136592324935489544131261965248699318570977917413228085466668556959512162096761051537933806230797518863633060807472690998667737874939282238057581159644193739651472476027965797158233817810024248472736412487030 - 19783920845806808135094225674035498483264004244734106127526560301099239498624800609385100913025652086573576377748132452595986998081621052464735521621134022009281344495242804021686468869088564374604042941489366982371149381207435116197017892957654984432452583884728968574466327824855459552205846587631657841350 + 78514820501846800750141281153173892001011587692826714038000932858772778559170458289003961777247337179937462362926604914978202105659759768215574865501241990106320926438625978213740963914252662267302946307528987652608915361848107054570879605801218191178622756707182567328840248692539433038977399875382493506845 - 8958467346544092935724174910692776655289809462241077898358897692217843206677864136919261300734081551974498849748693105960639660883706487532423264269474055527880800398926754798390837526535237839824672754370624554288553158556141786283055001199564213687498788019412604672369005427761893033789190883556804752322 + 9276186047531389200565502752558090046462596134925557171151054393867960770500802490459574125030504680254696384146608658619218084369561636744051821982501422935216642611828879333641958106811441908074572229022049638499972014170828490876530956719235149863392906235629286693817590893325449241972140345489514700746 - 39543715779571450237728793932964218848088590023060900315853574070248436879990827825694808872489002369894884087816671813117124155010750368918159908493842108316439085787469164674779700452512175157756672074435616722939196409495821619997607486275896569363380815674851196098748203103174021221502910395678244076868 + 62114054418180345888654853511453628038127632394870753592190341861211478716585601691498167407149865811421854785665780497191835381779014379326633643281782948330423801335658266298919492833413033682201824075076002356260353039812744041751828371619428669909244959299991653758413584848277263042991939957476333623838 - 85406627365695207032642728687305602145039436786515281103251891322487241930091847417407556049145743835097165895235799095595294843556790827009927835854766982612470425050992546589983469323514777696099921614760078085913493795066408189834664455176321459025331075556531601654896057332319670354995934521604820186863 + 36996356366933261471757474458454642576013535147695333450538934129447837353348159516148911077864083876943696079126236600757851741370021315076104549330572850487835194618880857596552874325421062537328152928603012714595527711422163823708132521434858022750882990617144882095357647453873601218156526078200885440576 - 77050762692328172558451160063944205755149316818986826314265110356879838279660811765179849697056365304743180077910968267625848610919987126598666692760801425365059960503014785645084147592689816037958938237397324261550093338718400709699005691202633845476251584728746255340805576262292256111976201128205077316868 + 35474667562374970636469338483949819381598248687726889659705371349617535414039688381803457379089659936970505055555159558911289566024033336092845863072370408653808751103139188427793624910572550558696442789490586641095584705633021126216623563995996179668619445675657885397327498388938901544013637149921015319994 - 32877704486080051435543765129862245265036616035041136540859434366584951137497418155024658808336190085699765202462292002743983358023376349174993858274608325619406776655302278107651701439893480482579354390553573367450169325741962709863282673721911055355642256594486146669873686201225310144290157034744758539273 + 40205604502211155622177776415604168845092345265363311670684684365042995270203368190838555994825332648531663345137097139055118594505801105832781254549012597161895703402494046128362291748205526840441976837379234248647321955582313618343709302146158701756426501799569792609338466973396572121639456732381602125391 - 83874133817297694843139673561037406157773513813954596648100659485132547213242114709650166512934983070249026318116033961199983147196219165416137348397200185129159223686362202144638690270328368526009939942757248763741328563587015084727923321793699356114834158544519464808933692273491456537525760086302100116654 + 39470190120430232879097805958271657168996971614017856055399722186278832153094912215441140540580818620127299103282846565034506888843771296500548199366110610689539562119001611140909295138521797909080383507911795843590860442792467575624677101515574356398911117611529312741134763244077770042684575386177793213440 - 17436192052976721936688075999202712422601943989341462714229018713769564441822825009575705027265674971219007609035324162560101751024969152907870342270417538429749790595551835132461511953454246757684617427829651030687654319152171010662847599324127471466321620591474429407871083053180530598964169967719948838298 + 67294791522037614298777628495706890884055876288715513943252770451668862536271420414843206990843257381394218473983279484523164281574098825154408697230540769856119237573988350985971720771244102679940167927852443032413891286376861570535970074635349386134207083793622732232848627027136461106581470503119728111060 - 82098446255692563850225336685451202353355883341302860947559836475427009031365939152849527318090023482017883249965910972796491344452948334012923657222434166192394548059356687101487940823309744705889830576902168518286062926306822280140164473961043932034032045297339836769682079993576941830248021668241083951747 + 65112856409705376447879589016418324386222508615208976196623771834819345605644940998162927906152958245018985555005003333956014119394638108669323200877656400623802397871568700895951386101114169823432370753434713213600462382913862245820375418803676020007771297946594332356459302486520260588047557680354333856124 - 38379118396831830799752886112008362625628986571139042525241254972495939307391790351271071136439839866169152779401572065032106025465254347857031493553703992805561789837592267307901022342767681559645136751316390267766920035889402260338894303878391078709316720663754739131499759152152459191430871620949388368758 + 22225621149469427167143522590441907638451161812079202129823552203973004877283814029163060922373004232923846312683647690645254655380005162914952968515420093772429940352675551083936142566929770714699874764766786788246969509155338212980171531176064437959973390827142448487122482959396448317385938881498134612697 - 66337505651846779052596725756255483915812129718127735477375525147857148507923121774214722130494106493321503310714446952413098269825977733449213128764762410001427124578347188720813052947128349133894493413594616627317926220478220768980540994600752695226594037271705236922080241681457786411097946780250195378698 + 42936425140928274141630691796462930917499300729065315255228396763291531226802651156304296638705959969783478212051762953465445664470589418887836846032005717017304800217780592931156154164374799545125261471751145122164850656638213095907957471859957455289481959992710100105808588362092812305819734578549612957130 - 67064877063169266563653744824967019572535770266124662010700970500457615482994312933170635815991684192151600273881746395090049436756336445912211467294982740636842875048817162317314085883861429373419160780339360946218220208936373450330861945535233022490480781817734555275199307470352640610512997509808407032960 + 3789873568162012345137664722249935366121726491751407090473319964311034209919349184606705830687292893325666450313078654783875661127123773601094637689966968399689943869882601758523070782123301224103173756517514633211877191445278619824987183081431792984326465357004957321093729556389788539757857292387167767527 - 85545935687863553548641838517081193360398842132078493680762125918252644618425982286405871358737520245318027198045321108232363040257240553322055631641600238372415796892645582989207700866040938769602241173680051595686757241084111476900297830880831336836224680032606224002321119455962807301034604469906447202672 + 18181162042165840859358544068083384139490654811872416119173177906130130492299230719930999765204784932847107541778741910967119982779061453589176048342103131595428587724771284384320784256827664517797775265818500955903871650142617662396112195758731073698437952003199186801128911818311564903152910530320703706068 - 9905169045003028218061327564726634714173321814684411683163178397002983252224078514611603481232058509517230352689418952001881047217674985131057740812367119756890865641818579963066409567987512807083376818926123948665313969847736981484469224104643527550323892355172109219021887786719598545593956832434519741145 + 40309060869128243458783473796447229484372078442203848514395048391112265393595954505765016952825874859855051157873330354005290949256367539656739141773371107334758762625082105590550743944275577662296509552999433331156777018635812428572525918615424485367573673225731548239814075953647568936029864224037858823689 - 86485430179543666785212724745110777746215003485866978444039717852339484866698559916416540651595442829553519191989920746988895566208437128693539244667352718343819228130772456995142430929048634117914096482849030848717558209273609356582309621443638414382314754243313138364672811387855656448723554363172225192430 + 73289404862745886286447172893442243102793327449558037167172703318501322208375440306863533041408777951144111687108821112008378158449892288017925377743605933235996600365219660246908352877873056410168946422535974723771051977168412647548510428603719781305338067217113423533587949810357459813026122008895188696152 - 71971138151385014458713842769848568203694245456704015067986193203238269849185002393843053298435883657205118929548135276469806040282804802625855339382128603062503963269401976019966855238067504327464528529976273234022101584047803160395226227064935894779235291531286154695111182646559763745142262268587103086877 + 80235971462673911301545685057667105926129492405417849229758466298978811639586641255774574962611745623306163289159330653081849211520116231959418524604695567607023044339619290999722996505742790402227154686209157737905389278278573549158210044348603031961532048800791654975078820843934672746239257981604847205391 - 40977945807548060290623814385060776932004865682050764553616869185171809295155942138782255320871035553247855230097152600404631650765079675900331800293215106364531507238880404626337520981093139768773669724547139321861225355695673789611173894500919026045804024157344579743737317956493339914515020346532696773320 + 42295188574234621979563799610494192587680661104600398088716313122178205413805343353431700845143543443586169738917236527958046087938314773562788570188023884517427675621834215174920701257798202976003582644320312958005631541589194335692516113708755464952532539616429244391057471767614567680928922233961246762082 - 97054919743646020812018091293114060344997941654106789754670378742823949180428827140463852010800361872279801496591648439745871582828307773295153247644571495913051406884262824138547868582717621899691988176592585222382438070057129099423628635968124600539005274852884729049309179040504614260203377022961398246293 + 23183812362991593058756422708016576275872360796423086806962787257478787949934630818847548304385127060800728082291010805480650350458225291838717730825276439730942613562416560516255532207929022306394774471542099651244780625663565962164628748159012770176568212525282826936636214700139100439899443783108568523066 - 71811204310918179962874320284578094882906945704957668978300978373763587133628929200500153372029781563530594496336161322222509487423913878347331172551545943150276211692955943315544811577516651390016612077120530711581324260410354986422403353154192925154809702675400823677909927957735551020148817627904520044113 + 4520487780712146224034198137360767232316658190678356833543363165481055594664896460683497892694013315075284724690053757347161898791306257597442442476992376910642725561109759594468046919148369590500984828765550082594038800050460761379194625492085519219989410548173153674548434794305940028053501548008394455531 - 50581888809575925005089980282567850698968911065600855810515452279271919435140405155832063743996414093275218121176764510896977120212614306305648293098789136431917738769491562217121225244774681479120986715315690196134618777718091502708523094079688161975232942135924723821279638434074743343898986953558639668286 + 41437625178975638994817188070666873871076166772909690432771276069430050934766966765840058401538773581072952115188263785807417475407620243472721593524544329587148199980311705761955499178358243991872149079047137929594470278884140234236448103884933093863707810382951676490197040377177871139973038628091378618855 - 93984565025009846109658649809455328893966163214376240558867756478127341033488195289131880220322031103973181253751253831368831922805672749281105132092523515792798581113720717441146021569456391942069858203179154971467699858891564169319865957853979440172689463433623441195899214393199213167615600511262319019921 + 73905427275118980061241189205045485337795830038376087184832578163473528687831127995628877306043562576510541487244576408442581838331911998776598657709353126126732495895244913168202941356033192385506515949918912437740253726410434083850595216984397618745764314214020924159895894945098961719455208109115069647229 - 99958201602061957118791428507671210123434734492501306913086085542771465947045876942287563989821164897232642885836248426349069809634558630895064202918307724206933910344208434270898661752315798481306969985172746608749740373028748848947961797634563598976845023416624197236984035504219837236311918280528243679689 + 41702098463282329190927382687279560107717794527958597433601924964094726479207379279349661578685901904992889411963095646026097230087668448325381220762248914332747865522634970546262400776052310529542872026875804520120838877476803734347636103681851941710027800255999208501110011820486749337132628711448491233463 - 56906756425291887175152945919886966417006085428177426276831235366871416769184764799717608644573996080747556207685899961377394471936237398014023868294336956428776939774448414257805435030514664249888312424964091797826531544959733285493892320589032848963908849821644311338353490167028189358782402221376380298294 + 41744323840040391609879486662267268518450701685162883674701760663494212645392370102444595091058220928770380019784262295668396498430606433238996977885086054573232403584609143274037849466832112016730748076152756320112372990283732166066961328446204999362610478917840336234674989707239455740507987409114899292572 - 95698036935195230820826421811736973186488896698911985287737042913879606028035640617275140518021637211540141865801745210219363451445622807908523601212569220619605445092263668961341236913144324168257703503255320797017808982822418955444822535310454208627563666850087255960317613582932003626053681388178202490254 + 65273463246824186047841498819348002378422341004577826960693540334516589182332746579568412153396016675543019033148329619142740064171897130271698783719287249823500526961895914754782900027795220936935953682420074921398563404003514724132632228276607091779714611810025691523768774215299875727726897290080565687964 - 36906345366574319077040611480082240979984610841548165233598836693287840508209756726305599979367922376046937430776957025889021599501394212484743187847498164477333347823597812138525028818053759396544776342441037792454615338608342084074896964880108789548747172692836303620767290691755675974440331617287240034808 + 63970861601905990469228888594605758772509799815307577533058543620630733765479870010849517699792861097166390317890696114966661468942186296749489295742740179587244143749941785834443423979321618578076964554383117407326539591696433996602004639894337499453393340492390003923387413075385694567041679035750533050987 - 18172042657336061284582386630623371922856885687608708848422104687183092241703946264329748482807774192784055443145392123868977080327657019988033579597606203112259425462952002521479539255087736974616479755125404193796149620095455620966780112796251774500372021930104454147006367090190546043200655633920466060861 + 20589921674333082911024075377507634344739161868616109382546398781085067483278545810549669943734896717843860285362428464899928967159057918962127476976908184736062628525359840677701848729974534297205341183893496000975680236265437196536638253437630062853764795140432484518464686331323335743533518400897442785367 - 72969247403052650622417012926355358600570004690476646184804812590076968306143096493303468200181867637226419062729503046314831350498391474627876878611252002512569951757027188144187068967820639198108006642646656080767669519907799615507981229096846455012674511378433856492841154727032831229411171333574676666195 + 21479620527508850685050048675053757265333297248883899719723344315473360278769954867714258778127582934276189721844725220231988955935788855901429436306451374244624353352573919961769148115227767801490818425078230735050266256303515172596098061235489996188502200551944566851609268434460947964590394249489297338383 - 10933698290771760348549288902999613519237906283154931485117623077926584838038603118758623647109995822270439823445315712744659730458607097408561163694654579937650331469354050060025963851383117571860450211286898513735435558586666562391278621516275465348600748291148512722965889529792843944913485258787560383454 + 22305198624427608038773343978273503501058453922509577519145454721230619559024604362611540549835556727207244127969376560996743920559323624017053731657447509319132159914005483464219636040139414856179602722240086471905650995713525667010927663109874963831344342185815443800328562966670325097985317890901105582807 - 73593366071606639589441618745872576316245257981295451453266858168696020893910990044123486940968472668404111852240632711320338536980722544272485637778358644651319305474839215552576157098624163220785460050838940449402101390490339957316448687862079103525791946644280295640470748877919974298149978814877393547033 + 60348084862683674946933550810824379535805327850433930485027075519981836343775050427589693786513392910228882049590917684059464700172518452052202644345518716727475043810483629957668575056966356679840182944618813659745999079411893733278789628547372980839551595021266822108238528459247504188440331831887194712986 - 34291199680766648693838952229880747854601956230666011639094850900683686260406401625727546121737660620362673624275574428270050716376976950292303182464137211138708397814536026467059121405096840912489858970983242038854552491779619853068241785570707737223012890348357390803704610158001641256070769064190949630482 + 14935333725823795521791735252810625272217402719359913358702922008468300311320263007094135279598170168766494362878548893762504099910087047244262150617288836395167231608582611197105639360388460947512721759699190919137557946859880436315557797239893249379151461302531193104245702115442044633264180294736419983151 - 32085258175904088791219650128523475662802370203625694588716249328174338920030217454750016240979093416112028734504323714341221458482376226938005257348510788895471288182093423628070245371948924993106284611196882244018417291908543802023173242425052857577895477011484203827855763803541241070250248287683557001321 + 82268640343611946532455392407585906418885115934751932554481502918658247754669351048645800743163123144190374586649068979598180777265336811935263660976866264771097977721779790504304300649041133657192122423830729824517174953926498550252568418249157309830636585958216231891718915720836711460959270362264356721793 - 49881748262533577976775571800324665318552990470496667542259971870836790968025710542519223093641256773482381575157240553573025922570601501199232081512905594745534445390276634676901625361527707303732497491791393422705088436112986376499357579837267820078022471354155128772723805299197218383018761193839115774989 + 66990883153710736647035574099315653808246505338903713348900297364771329857308641057186850702809510200186423783872953358776816958112467247052635498307953362458995511390682650301019732253903323351269146892207189871401626513671131008624367733124487754644468941803685288170359831038405468932652332413382949210596 - 52620180479081168434169172512178434004205020939107835665986082191025105821691274040250928789778540058825343427751529251373937141440378475371379150616246483319862716522011811327136447955766637107626027112672663040261395277947666224038571416334953238665878236149998515814533305530600852352343117530126825149889 + 80711151728202721457061246725853177780029238676825785661586765293615891096184265845723736430936688221417814995126070215214958741996224609976015193921652204076710013038828061898389281985024459695713272921761051119961674363934086701012789358593592004396497525667218901835280320275250105946541388255105319933819 - 82459464492031946806286929280503353751723321608518036066716662152672403836242969394672015102907630441617360942821682740898048861545377304358562282234887114244043235309222369956800499813007006167741009711403410039098945088134631500534674671798955326316194702703008839724237319083237390438462786111527500438742 + 24460024382193543921958635250450992920416924243178725146374081150108791257309010258809226423872896677829583944174534999810936718523010267049871600939266083817696800657106173906431774785650545009716742002932396154725498441397293944676566802110593471755400209504440128244084752501894974126226412732139194402871 - 55136510452570542710241410970837650933895566394354371780358882022163785658598846118839247749568885028609170013465758171261258122060103920192250752227642930065327971656354065286516622141799496596504781938543699523185359243926051234127395216788854374016454576979939120158184462787900817811774138885605388071320 + 61388793202732571805680312221229788420869772247189839896601292407973837835400345064294018736485114203756318522323336841258422712598998869817230963887733693558451475637960432121166544284177234089633533905820834742005248445151566620571441950440888107063575473465117559007655290348089102012195016619440692278519 - 10353977973135577150820897799455801706009172586127687407442005595222486772279193214164125208948125543455968841878614127634474242671815766430960991736624678243791758378147023147992618205286799132108476222662821722318168373694318300953734227094607303650859891056443209528533787276850725261960198621383895481211 + 30299463845484729003565219948448865634126457905300730521563529713498985291599796476855795413662493456751554984199647085165998705457399816216372540487750165891811055728536747992438664673496957435206270884631492312384606935796178432972810646899230042385507568621761124064297435180256032336472805422416348841630 - 48220001351777182076791614608431471513720655929300919160851694202489593977155246766095620225435137034839849928175660180414167225664843132650109373466628104663753056832285291705351176379769472105134597327295288741709918040488933117343128580945324159250988113706577541240885992150100789655755171944566505860953 + 86081826666035350091324082380880303667099160385154714458334324208406113521517616385428694394483324308303392571693512494915026799952286035760288267857233048864987011535930564884355380845363305550241706771888340398307540584451188836146718724364091476428079932333220015181219229795778467112852616089664216148480 - 66096915506403043035081869873657467295043635389302188476850027327841574799135469476779103173133633809514710149285496928960866388966772161062755449501395210638325425049897456698375030218462945671916011435135850554237884758377630865293892831302636325509242023027158429039420887121995276264623535426483362816351 + 79155609060509208722946020570024747228680640821125926888984184858068809818443486174473664805999167054296281010873624547313092582425195186339525056947392318256166739755625013651537361671837356617239340502407497136734800672922779433070568293860612189781239999457663876719772438967778174855503645553729928884499 - 23073126498860605856452479579571168396920621158092448965365292232793555676633738094871449486382880230650049159564401764136855405786502362733070548217914110030981281827666011767513061644908560642818948524718399123924062914161845117563389083285551891668296749633221794000628914680015566960025135684002653603790 + 31606651145401895163077652272353513312569794658659116973524847526174006775167651078649075626563804995905999526330714695977923522114454560421316385999954969495962052581499127896993360816368258614981590828289408661133840509427819350817735630105762020112027941680317635824870106718919632563057802114018764921295 - 83466416335546921285940782794380595632498955848532362124101833546455959020765274887471053546548388790971937989128428166632205697445195430079176946427621577767417061866866734635625210352143336286821950044612348186442190849537505148709496754051560588151334847093483659590946581343866570572527542945209965924498 + 33521841058097367141241833469331149086914030007411221129120585888059022268167845120757872294531412820665567260864892199150027242608694873926478672373902639707679345044525260152511165819143872993974959859753612629474469793962526272780484163682118908739534825697221219440039676031917333396786220966800593563988 - 38266472651708030035078148362330408140716592838021510684285268611214140309776314580608423573787465736268865436280544199986334430887482775901323355140354952104002796807908566693334312916093621009759248065102284893802770604337580360076886109856857158914468616619850233000314890524375900967788896335403026171198 + 12476392491830016603847794631805485444579535827613972065798585645729099504637450663065971361827241277522824612309115493352843550484163948536377160254965643029277636840536484427962498978267973824080760920116024856722858052221699354408629807747750858097835509631226188996203525446050467173237608527903247582639 - 23426939489765924669806095577501231815198109538873237950525700930354150666122701248550202734261097890577885237637626864497353220454738512826542306880417342342946046688765966892305831624183899912392524023064679072712284397552478029024772558257179580263907006934402420792973824174832037138785448168292204954626 + 6342278374410790888698181013861884973771840209806475374561601569412154533297660723453466895384193985714926759988023744089935108430795936344161688545052014208757937824486013440677954424143747619112079278657589644047793895709274371087771756013782782160091580347519095988446120246719500262878931222793376936703 - 93823942320536653066000614795502239465465790549779382643750948433173015329864468721408934535444382660046486414623583619136726363711582234381140902725423757149824227555700798595013464497939918504650250437726037527634415922309557834293412436660120777537805544571846457258918769374277314848064177497340112099441 + 61230617172379066503842536975123948944572992865424357824134830509573924367023147840774958235957272234730658838916619782406606010901128616082997584276153132968272565332115343591066016306164166819294873320693232540468289677323567570031189658110123481087679631556528092057737744380544255450280912885487829875329 - 73830266818738670230024429184683819206079941858933684938701428933940772572225760981766975949400654975098911096765257030811800304923433343645728642386676206215693250518102422549201978035170667114440036485559178059126840824413763386291547431284468554227034671750007415594125073361207727006815369636525210236904 + 36690399337630720580390806423535811195101537596491768534382559527753129466839050344345893205579177742425130693207405363790805241637746501401243073891173670192148863894873870258037495990082271106274226879597143765867205971046877970920642854451133882097747486361542282149026970956902281677206579777278733214242 - 92748408974022713464892680267423727330395291346928993959049635416584114074435436957016073958260678715749598316718581989282734295671855480545043769709796387139335226245625280532158800950655180982615108577239172662449453161519008629222678912773813419794895195880762828363020912533542913257460017883319877948211 + 74732234795876365086459418036167119775920118065951310846221739149167985110925434815138558953306772554660798709750331818869704915367715572344998663228694910170434833893947513132242521795773999102450175405583060783477290467683392685589915211551121628792193200394659296602505171219510635368752253543415481161309 - 13440968298887993940565592553670640829963535881668969321602026586290394756735272565810999195640713260941586554872357209551989721990168487032795597989205408945948490781327841620144015662312059434966290236304464582338781167838375744112467905887825584310685275241253277010334746496198438910146150868486345053303 + 78923844363050913046094853527930844717943242049416845053461415648138520019399284866146046020691193938466350194491511805325228992419762780562994816982659032987688371586730800491424341063901705278214641726010792125995407284639796951899189683525872504660395363823138406389575829834422311227788989584743654351203 - 57113493773898812438094864726624001918717007159679627050685708229983446830001488193496479662475021593116644305229079918293497481296105687876431256698263591131630702473534577909536802742579279252181456348652578318138724128069430507041009201855866622682103267637557395072663924162289685538695029674513797701738 + 81108706355671191372244538635313067818765299079572560576876609504792221491837336292156100617003624692427917746685336672793183226852293972668411370350547229379737817549040891729247500076040037688097044014978940776691448633283909432061222312968103934769500885402320199064460966235266669800348972995195776538857 - 73997094764000571395503743088023947423032925768510297693473648994579519455889308326837758082591337108764064405659558334769716018730082989338003363244044369401257065426661301501133357786279270181290467577350554512530064420278394013923180364317580349999743749352862950723894680890844524498968604807010815592717 + 68241545436168845669035637423666851470519919449185590076928878981988202960433829835769222601414196770763810863461679075698715076478428326601962585992256959439578582214198990661171888904353424425983674980531896211935680718801858633086354097674772248908398773381267491021006249441315511898094387843724636701547 - 67955823323582948117753642446982881881332930305588536969649251022210502062866021983387801068053700799384491893108260198769746890884878809343147763768779652654615204346320813035867920078429203507320771479130022883608244356300382963718001749119960394530282389972614649658276276774982316845680371511965749489689 + 27107317781554603714601458657064737851139301260023056769699028183609512014952555670607698337956587375918465156218172588672770963446398445276978065691478998182476134198825442116961118403210269960257908463169959321019382931676623565391738202735091583250960924204339254036187635404361608430982646728437118934515 - 74111218399535261973999851058395783023224455755417348246755114889056467745295334734219283818480824016266492011344415299351313716455931922317711704399556742086514760158779524419157479067445957139443723877836088518584263011359924426487904644405982926030792023560302518303839155090059050388029044899158642008366 + 82061430676977449397509618688228957283210782489479445577445061417942428707775839274148068564041617289098059490573178140684525706669109949385670323183344697574727537985658179243587136474250392823733351078872172399883690841943646593222234732775620748552712464091267594907874760889632594558469619768422719393095 - 62006593056685463007825791236052046478952397803478361530647423289910560282386826773926941909586875474866749044555540543849184740755856808129276676028542195197945141275147517742044682510065218948296781257120325602036639557982981587457069592454877522895780207945877750823456537365582509894072756750473088691636 + 39980315422569478092998763341860572206333819948724438319418919411000622726432367031261884689166903812311765079062444169820473236939279431927440622185761421999096556208324786372822663816226443053424392121498985957354496909532487597517900840140757202853668977833434493367510892298430806307115676220868345618839 - 59005161271661767440558755956402769732177833381094584868133655532152666676196142183928294584345491794007261826096649849648298069037806684077560878941932761063816468086125228708536791428072911153418189214937924580753531333639594061328431191530082504394594053447707427562597291392942867037556113940915731795476 + 58915338796417672089303619481246392165623662447699479079227293351918342153374069111948758103880110909947749497290101470897780161680606389449200816796567867094433172936340808735204966982831403153187989192553308876440312982156967870428064609561647697411486913737416230826884973545054861724041255181403945156151 - 73688698906546622032648684164976381241323035295353534089117018484040646975558298395333197670342656557700813070669033631508499855382786152410275480887874714801003242967429305474260744292806429346387296618728370125638984742144060469765008282895432575407800393943917381711964668457906972564893779339698608329128 + 59213913470705052150273110684413895819164254944535707879307181130481716024381585928650150283329878518354189321422652694063080088083714106972273295760534863381436329860091905407378275235739729522050230338420852744770327028936955668525214851394545997343402075890665737729886434715665828983673432756931135289025 - 68604899581408193562257132295877330291220687111851538606679273973966794401677264390910482222299736125454501076671378448171138009905020097267232547265773187153508155385993068751281125263267283075311254317473831768409227360851106630005157186077759174376119588564432137829374325852309543943331344344994145017477 + 28829363002351673802387505342998209558295752985290164203442705081817145985607588417310395105363303816035640734348332615458621592714646388620656744878899403723534351040098661027997469659678205077660554922263772363552781869978865365330431155055568557208170332039313738533663483825588903793104593773723450099586 - 35421958570320863471028548866271466127981635132487157952972297676567849561367371512218013971034558906074675042560598582416174442225759362569094985863349432203916362981829481180024209313858455960924234272532682679050448013046689295581681628796143971065790828502374883977623834016656575760004753624388753873950 + 38292207546184963763355498149852626119524275409872574876419208216383295318028455528084801079415025978422591550377315602356189351009927427713673761775482938472938154996163183534040848629819457625957084109534683248765540936086552526601462441306287128451226361769165992824573071663313201771835711089133032939549 - 45200448446263931870242012485263741519889815500242813631423881184135174017771062722830404380735491501173587966932204113814467019588388835628035263470439752756691171846170196665536104589842653692463854924286037435078296738849148428060403104206749183648390674193779700460290182656389959774955425102558054372539 + 13255123594119975159489955260476008707116194851777416308519310223093121207956252671512495759471028439877969434929846020801692081530253129090006444069563628891591550796441429087389504233046839872342417382037448013385528574149064555050371518555210302267426838146495252970579709932821637188987546038502193234022 - 30330314075646826591159289692058617110535431573394518191004391185565380559018183097962657783681641753103692357908326801345167083869553010761728439150059357118774966181651974412358912516660550587166353892764212362977779297028083936769385816795372071403038418034286682753896031886894044996533838237587953633586 + 84786604443798035327269381251838565365546901038022125572297980303952395962608242314772251943528140387798238732257274009868529805879279796184428362850297043075084189333551609015418916730313413718861178809265565509264000374970242493243531942113590362986589655347182008935726596679968654941730988841849281898001 - 81263854056663836576158121896856052239803671901685071681419444606099235320613817545506028660876299818564213220823141537475785587008536014907698536544184784536787284244900665847776381895002476929144374924127687180063155372860136291495175320915738467850741779047871826819590788195638695928570214944593749345782 + 44366978928663146892704223482165234526004691051739567065642669815314558274474920074203822303483453957240269201671072278858370667855921705697204191535103441974270496581384711051842727361946720151664882503515645035159161310513944943792785260769790540596551977849567184595989784209557384166289895905622822131452 - 23676683577778963686436457658634322626779608078990794696240950741919188537971689639693130180787351375298912566430544111179358708067257104315659282971167237460011328098510396224161116698026548240639131424921961748966464449049679399416097784729481485970684386596934526465935994329166587343269600098584390673315 + 69240036233814009965004938318469073937603352614202987493920332597441423983192660633584857443740006916789652901539515087484117185937671156519988859921287245234896744679230165687654546224906362260891385155041484414383800093373465515376063646347694765212745389098158523275895562524923091609979423256472082362319 - 50980257623794776906058536127353042929513473029089975207965118667344741449068411774054230895087213261670089069490749328947163955439974026783074707508862815320924440831866029005578532847575748696708230488559849957929549146389068797309656795716529514454226143750674311394827830620397090394780207634277209788777 + 71040234183182089984481762597620903132486343751113924645294863928391481600507772557716145970990663724469330319628127940553027008828682240755363495179156200269677937837852968462057240313575779907877648733027594158083962701597381365644103904357028956849518354084327326700052232490711331782802678257688673080002 - 40453484993664868974721146597570078062682916849744731743881817030790122660487458799321783157721085975175829245774618572108799172212852398289565955544993144933961872127887430086354197370073331287256614573822725722322505922159332042980817494114807999707215121834732464881427421583558886449624400727653584127049 + 66443991340518719221201910143886104948253558469788461555685539832193706179445173519325432629827506830225801154652811735769658438647700223087223727833446008124196838270346719061411984646627950278230574931529032743402029947234506234080525163279882223572604006098094713696399089323265605179962251070997334272951 - 13510385118182409932992775992766353910977120378241229557817051903062037692545586679104722778367113461679563114484734137658060652540553249510325839775588032581582592948707913504070148483308911463276896136504769723674338601446484219877654107185046571398095679485932837847028607184551447098871446849644349144744 + 16398048369876836128931403099323085186599631953504881442305542606731903231582578171257440043977893027571822537012016106046856102943713293031225919493907569370196734938876367726587946181982950734745549792291701981473194990599841045336687295671809782301685162300342293430916482526913869891021477413851934212035 - 38008718655926838571330360157436408958160500331194892305265455272387144889551598200272121847250096547950937906876173528488890100088762461699229273460245161080283752547443159725312127990530575795495707929712334316441350726189650726112986640587972679379087228258497656320773798698098400117098376905514419301558 + 61948715309022469313510292119649547852354304789231985551487181260270174869202559696070387281221409084949761424536544119990009828904772333691483766575627234557442862727259856497486348766083194839252429311619758094052663399005139215130714887968854527534222992285953486721983051333688494986334395251155322495335 - 89555425815170353866803494028832655526955974319586854970834459746022685205743972570132786567946341437021877484502708903427415892350377940770950660024293694454227158973212562330758883811718465239712926199145461106979245686699522829982756358527909468653401675906766780635276412210683876941844860027958612976488 + 52908225374872307594290100180149782989364285919983306843028090986453041997525464736843134597667414831268151561461019371895542195059452702851944778681923846136737965648131978706619449900110169879152507636304766522937032818790010125874146706769626086570558409338146126593521016259457979155755994058201592714816 - 15756453603553850228450558537146390874915622617506430156675932458698331372674201993252105635250400087668788727081846663201633056950303025549381408726534163949451488560932059983796405089817285302878492702376022679294203162904401563482979645693350997328822105635105390309847060246742088026443664940424223693430 + 1432815735138128457451417740456676736636984976853513563543502403966876408815565494104263781289444321491527984459305603163320147576440066898500630760758601687990209876788247657389875941866364144672127343762992493584320589969615861631916710109691569502955650591707353839324767315914721074711002270261604344734 - 17287495487734199024319475206920224162768224242979931470949084983886467340080790083079705366855454078627043926125982629505229168355938611262735468569436002429206948757719729765688880802929462766938625339983307452259230440128215941989519260586362664282182852468708316407677281585478873153443187163578743828174 + 31072394813931732840083028052230440579172525398083456166857257644819470412448623014900081680205835010940728828293282168623009256694808794669090662477025869371978882924120368089056868959656331942778621764758274689487733247598971172791072791779840172160120504520233367262341633668960444167207612743976732241351 - 57724752771163856025260734459162785774008872286289599369608259940298064008264576110051119797058274865721491725177873373943501743694980648242177493444509390634443744285695904902804997399154148574264673784586779469330785187521789354384192320513422435875967755206901681741156676279451080248357712534411054729094 + 15261810346858654595578228962231115528194667174703770176529936771343719771005875345887911260657871935676670087178533403450209741888185939030130180411900892571565403353009076967490831840052442657731886252249821186842263132772401986911050235801267971281150602132518918066355512722067496806903460036708680857353 - 84819541634669912843638571264657976240601968633333633678371369789619242418496835160740696200596435661568810450410357050066139410863150015378696329991412717435912072493082571495120560103351423669320116776310234545883114263312119350959933828196319744362057691426891475612443104895095281492912381742388465990028 + 73133311657393667355430029150664632397906681727984867728313472622257033368404714500772513011374048109755505376137042841802361736145781064190838543229793924268668859322325227244102899458818740310452592315141300628159819301184358888891923082899885056126735327860966362366140294928835837083155543086053293156399 - 54545565976669077273296584459907924453039817676469564605599114656714368105901725439907695237505347472389528423078812957563150593030104788571002585961031969548193048048870304539788137489348950071964269418834338856874302479388198045362949063981737845728312162446203918024964839497425022450125218800541873116315 + 58636507738197750692510990913952200426370443265945809921321688096276269510824835222905973382372381421727248286806047843627625802102654042535523302813913650553864837258374575481400612489352181835676012705062304449323168135685322683446429697583921542241443194632065686657901235169524945118943331611835542126469 - 60381163866337596003406087770096331469524133614857955582830429700349974405120958084201619874567476888885722745267922761422508502942469230087520881451783823682838734014479445032775941584764626090239338757860842848961491090214179145846124737310997205254879414042322123564725909402605777883018727826134461484030 + 45324435296620060826561171306531872966372905398503611567061313005410594543589776117799807191688868633602280032760243849324341786399417646008446958924047237664461308334017442827688958523295679790500847010390710344653894094720596883607808904039916103780662129693055909104597540312237777612961458935609785496912 - 33450258124759827129506220470779990302456152214046894190441269964325884772626148454663356011249919142580917322751013520191443876577600170093435067061965780961824365176039472555639200053844140863028435689377205862188884560175114167048277986127229422210898974799988369521936758685993441590385372368769561726446 + 1124993673920257340156032143561836934100257905730820287340660949370838326530810692418450767035842589008338222030239879752490864038936803977617687296298438385676595140097937048818852018947870484168791981854668277813161137771848303542892583871524493762132501407362849945409634499370533056056180716838676500239 - 48659480690345384839351847540856255853303166804634164091675634927950587319592356973359815502651852714315296508317019112755266773511787445426193156222560963482280070559620982594441738631178623211177294928535321721291086654357777252899434962607772418090211637800986740732706128726024378726001294212798317938094 + 32721811575324073474689467274591953899337514489826493077353767906572909956301210065572858806930599024402572058462786188042880822198039635350569898757364228379082599309399636354682311052082556213883629864501466530635944405892000999388340927315181266599967798564379840635227980756620474608029079627640182657136 - 53427621544225762404945649989265259861827443760274926566789912593178718494415945809189279880490263932753149234797964904807135013514173484102190841943493870443119237355232652214371189588300892737934557515498732697198349742475613030080647196605286736940389784042538122924848838230111805026588933825437032326555 + 60524988380247205160591848547341024472052540108811808203869710912192344798007764838008070580249450736646859999782620502083366779243586325743447414866726773868614489659968508209491346165116962591157320698130129085420722768067437568363509441318349930817426169458455366799297371373363975456817884942871988293525 - 1754577145127258367195692712573458619262347072171341407144197960559012312314250618883835433692941606104043599816755002974312899842113277077507775477341439216624261341003931694350950793586416117500843862952823912704219411237921303668232083265735420808362436350488749738120004840706179274977984668155162509762 + 47914865297902126092970000193212731763168804736997456213447179688947611769991304816399850525039001886404947731501172869756444918001877519853934264230131705332185804378793115099752902325350492725097920955037345203742368289847994850969857832906183829547510868957970308968334920279393129173454448761610841501053 - 29006034414605917753396993289752759682901806260399962905767941032926218646290520384559073877568540642075989396714872560315820661762700663093471722440474884575778529867261196623169439501008890772936563772333613917741079058981561880313228324069059351504945730729130346472648107899507732517898458825059588656890 + 2582588756541517775251377137162785967552702044712297447870768274589055565219263490461604430454318894651698716483011628323680241330214138072206027801346188788567052280600034742425307357034958483384152433480617370924408607603880448069993100177279837862770331696151838026879883046371662181510656615198696166586 - 58207882544079823673501460155663136263915510658279860446907059532486614658312087446213584590014703368083814263741436766159504811314884572891801962816180566109207512915504127170254340510713826700665961875203961822165081982556811797905043464526007994935824223254754437048821914557476943777986047646672034217840 + 26402751970843946198826414427600596452062939731662073118961917226041329349459999434374052119032579874547222522253903323356548774871560320785772570163127791956889246236267956358253477578319707801512855911461646720935673286741900635059510308300080790591242080603278132926247860998656562668400223904154133301057 - 26497906272962660073380152329016119343380607032391353347721109675516402547291005865194511595225194582890293434889526666579405059610006858980291609232134219465703507863005324501681493425969530173518282619178754929018206138443084194850157374049511237843250592498879044571744970675611428022348520001092513750334 + 82460358654789950880830824273439428244472194972702823493970498713383116224227636369693193593315338787733800948414637388374658235570390014740324250138937638386035934573192636335845192074954573186933356176504120220842147274431777029075578219445207175921379663357364818999096332248755841469572151389219159345989 - 39874364250830282949210989456404371986548259778009478866560806048663939553282604755452309263087499936654082367376302210293058587125117929629543148539462203264747376299947847892560262699868731347465496453176663656022683421203223067485114489453912880496046833152908841438280300760583424868731858937354296527751 + 63820550927757789571718442438473133664068026750310507501034231612335006913751452510332121834021672212052220152728227879820980865701017904416703769044265625634030354382867608584355461341280886596288520095865975264533776652032642020011240652288262738029704669743656779202210188268571237092513466415801140322855 - 16826424600603191479570416103851936067812901087922637213186419837435955329508541409064399427421635879054664622760378294039364383169763182155973417948048590679804007496698772122472281946939236488979445252274178573824885926812843867379363759353968766534812802992023536369362239408759584551281258100702045293934 + 20338566389586008283863277834591595288137913999283306547030317546081741963988306736552570597874385842637338016880901919470956429343703274134496918494706103815988201233782652965337333825393251095346941564134881199974301612928664994966003251671713987851982257886918194898598181669546431263669657591445200040770 - 52397541998777364493946146761333859173547838272823879194370770642631571446440260813933176399322146771918456599637794849035457661937020894169362542567734814708959104383381962489136776587342716447631446975395501308333258598525049668526904591079646531143597350042496900369948686104575891290126016156696061264714 + 24193698716504379197251960586172762741914444741375365269242567099479141373908432173565138035932620402155109652764796533296532747118129720120348828011766053358492458431638444442033741243983909734213346519640126078875080129421051441097940667243057690617034138724383803262356458967306196589383934562046094623055 - 36398525097762690966595089257691158164149592592800697927363774690650020884771949221553097093338331085396651885796095203279170881697086503926314420574871607489717220825681792706407947841627463129374844668470486643803121455778442997473355885411380656105910440623124639493450962054684196004900952946154118252204 + 69491731018856181420309595518753711580540960615704830003753573483918988972729084682732649426516364423243233259576752708641215669847207204197155659393957835079575981289652343359148249417738965140033176444334203132629442262009609571496350428678443664073989225914989042769712999546280527933419334473188852958107 - 73181601638325693986405453984632154621228982948630274619297393107154848161532109781969795395068169143000434314108741530319282585225106602334988765347859831682697374896751264238335623708410507591931342604676428217181735354453672820611234438916948427581215027168911913660786798249755043517525320687184681593244 + 7127627652861325422336080475597923023205520899979725263262343612606998343015061635089458685056979284865382077776073796343255543698806218055435767913304607935166129703418243983302011895185089637036986913970566841747677429062211819793339364716654376610414703402798641935660632742156696430581127905660489013811 - 58382482249356297729147797489724271624511271911886705164416089557696049972643408868235042300930232405277089012550414482891683711453425339863079725935354402771154458911362188203544195798223490950850755268921322661047219330888621154177133566446853826973712175749290173478368487010699935786206995200945315512065 + 17698062121321767315336850796547821064898614793996025794973901207050378634601402664642952534550654187600900044170522743626346905728651402036226326744905259078901589641539624933088231478516393602516006640688876250418198784684380021652289160049798511615064328156072162312434172929162882814863619302226498986642 - 31152030790442314589027317279090743086590186179029655872286169034914511045658356292265482196748060781926773521077864137739498383084680126633500930877184325329903652167609378774787243591713087103222207147371288318891212200454400990377265810801081780347815152183928416725825999722496555459235669683063892492739 + 87620594525997878015454083196970727216562916393785474935217541231350845059355063224810051113755869260918781882392731724982435805034282605907889556053013564692309789168494452737400722935497745518061934058895280223427200638152764439569326740665201699394038414577146763764010850199789878737916539513700142248274 - 21606828890886920636549279981599088380343076080504302726266577260572699829034959759712844434093688877592930975112151126803437349333913330356267459771288334579737525327494435217910734949338641551704731854380115634350014804935099941178965878917788754920495763390007795027863783579981761173319717167852465220497 + 38850374867619746863562963731297082932827459518124969716799289307162512005554679907551909998628521689121561615312112574842693439789528514367949841499297396544319543029564987103441807408686497902095708110612072252679700953139580339371719527605675735731553919063767529352742145678776433254793441236670261332935 - 16117740684482448517399108451392877898422792706650503545129977509530499513165339375917769461497523406848497786812172064243333454696561420730142008317718039655981546515349606421103068780829074467137267617166121328294686352505271247247561782448677140015824567894458336461753325991058862902733120956025130440673 + 2216801435771536450460392347538064994111908347041393607609726435004315414340398262162789645456031578056692488778230094916447692972668165927711153053159886071130469518179815430887775854636188647958820972497545386020674218739129439414292979219998048801629658604234953799110644045719753258059177801516345255804 - 49769989618559355077999961934400692722754788566189915767234559402414149177965042115966823889614782581770574371331778050850931265305431710586256122858429876613324178412521184129287897125354018586771779085094078947063135799731191890466186137962430947851440729590617460173457404150068343221818292415179462098202 + 40245524590817476388355390991904205640570393871351262682924719611920864948077824628666254791722679436596277972381344492532725523644007317350017955654825051496287712008087754114436930099028796980717434713646011997494422145309651407733849986110096826026782641388842722577336097896267760076010199501168052910324 - 9892898841459270355246445892340817726759971807589326596602636886597889995273836156349823902730448091722873921199287191100677461553306335819992918216180915052853510071924526058450134503819158728315183535608253349124324055507261173315974127786908222437618834274471258225119891328457947926570830202998104738178 + 13415359441333813109996585211954457380267229524891317855964314300888995191284994428505324651855967091709208057281022044381490881437373767305406270958261347840791794841855419821028184429300480256308844864690743692825722500549920610439191771122602886448083708659984884363490699600531817324080665470027121382557 - 20078654056600717165256215402516060720495551587964540694682004436089635658412985211912202201588728570094879908950686321222505552006624402175503408377933940644539140131666254936275571161496984949407465246662859194174565026539293329791403647220657395007760642464392251812894180274399972270127503529728072090032 + 36487937231618946440581662996511882733321744283175315061904594280874361952228344750621996173354362620130243490750428975579507805503174150656999484931763288225631061354135564391847321211337054839286943205126552581548787035124778612039226061406439345959332801856734356682506207869433770871030257627292362986425 - 29749172899354566892761712753686341584146612393295683351583375510796692333991530503346935877366755308722104369478861215940229885349560352705489155247224421882723758183165212238406708191626020277443641061114172765625156913260949864360024435938831166535443215636135615963784793380694824559465965679907112731630 + 10428926283172141456372404563325302991813897349605006902076932825388880596923101392846794068039036365160719251697065435927595147957655041880999886868432802234336427947325365404479679134739804313953982000575016224158364891976063170527898016021797046753341288953042899920904972379495692166347587474195974435643 - 33592960485607436171365961839155852340100570939248434785395883098026049108189035589826846990682486821817238463156626315526589273186192376721732455503109751084552893013875266710370680323313800871701299512428333225380872278758899884548305775567370792293385686565549334096063184684226756528557047421750978981711 + 89013431087608151233382751708157812354341365545834880180877606193180740004910938413440490392972768559821064723063360824397157665081949436787476034585302218073663796390579545391496219828497860900527894910242731688902839535079701761018414954017546876954261996220780619507784464736331512715856487326003445117305 - 53236584965725463581362724933366650718608313261712812476669302172230344492946469004978801300186922451998854462359691963351195797961543801994318455165631373161166767993435418081094233078497315776540614267241414652822440069444530648558012984949412589338359084981209113215755233618712953269536463799111695381240 + 56657861798739262888148758750832208685699872502247360213405945790141859907747482887814177555883032942454097327054014167532033812090452316605313804589543463875147055723033674183321242632820444150882326981189170718169485511573753987117084765088460248043136690594951632999572030064125088857081024425313658280856 - 26068445857976645767276522437206665572526258731958943654781250514856797955606971583950538126666375513849699233850275279386254217400147016849358101522749127259704927650344080105005626175005049248375484765997814179360092485450558033736175456766539285264971170095278148481325784991173710068945478954953167010176 + 26640257049195891514373729100606625923152330043152501470129238935236290874620444115309995833543654174648041046907951647833265080668924858625566205368874749029062262862949918720877133803292627837960922045086995912855777349728039946348863998558533915601136538183706218606769752343801658088712493115598711688108 - 82960556902458192658002700465668305141051917613260197552034750042985663610379932462046182023671172511244663906524061419660495120657148799900638940903368751358356532119223359024680799676782796075909950794724275592742802650543475100804361985470890286001685248711181894151094697239516732469629629206978103486328 + 89315485915756721812720904516790301398916176167321068932570021394345975872413352694178320929826053334220125471270779441245414955948228797267150574764792610446407506275352982263215770242687066489986502348787098723860844635398007134289275847313502681869295373956930038653616847875660965820725707575384769321603 - 90611339744204316761096559509717875217969771846989185774842959192338654876965720711145313908340471262271430442265400642330755133956656880902603130310358801821020558138511308142745126431277571117323952097847290871908512544333895702823296401365089449716042674583698480661116306983004097127195427103804585169212 + 85788983024651375330412425236117256750265726496667620029587149704117319086113599076551769144675917549362177967648298914260877061045422921800050350934346480841265781151685483346491303637260478069174946718457243436189211794248772722015250826482664402502487602090567878932178610029049208519050452119800798590095 - 35423933786144116221101077487494000734235149011034999497069983072193524761879134216611760787065300287827370403915176093260078022782611969757091701886192814457924684028364295488520794349853242004421688869923694881143313674721146326604144126822888567260963868216687682958286568988353339709262627090713978716634 + 72558441806729709159531880600222108306652398787952226348316184551382481431764209245385528602477952232106634438070610545466008388176262062617331498206457443279791819583198953712551299372051870420518867020475059673622504705917575214797292674581517236222388615233377176605699584781594985516736042377231750347103 - 83088365241284447763837636130134016627629123341057296900341263398203569897687579794693342184686672155452022047112933908220424178079498333911906769327288040595472348585325736758545693572530088005274982048354436057228226468884839657426008035777313250775263292753164836592633973396192075395467807028730104854089 + 82066353905179774576826663035615202893157098455153879484683477179224541814192413700028155090258256429721421437440200630717597232318978071315058635325554680093207621096692565501303092895473596516964017573029126219905028164332631343720011660362366117163809539281720992521965164194684874012707450519157392863834 - 74909644975673891796205202241745235229254652327698941130271051986834362115329129873257861241714524099181362881041596764758000215507993337690689968937597674133652847987326643829732292406842888852094985011905875428720583487872578017406349225090165624277487883464347967200588434232450765813343371996648316858624 + 26390406316621784994183711610697291186244370038352488989059964145088549875661111619245442938400762022569001281717548131236032422034848393063934837704803394012423185824627961731620039086296504475678162662679679870907710889722942174081815292159029768003071257529735341577556777256583969706358648387996045920000 - 47214513844421608704671014064491861235005949893663617269329436334044373706918659945681191896885361230666336200570942006188470874126351854883049925489144857607575363062786487310931900795047960255077546240858360519264414965275345130301522609560874650654572463896863583373251956994149934795326420245349670578415 + 80371057000266525375525500202728917959314635378787029142800198194478091209904440925225787131115697021759668692773498131876317814601235866697869967017076806919234238714167788415726924552847057118467045227163014473200180490818970150451467327144714399542238353619001562879311123589010660345475815350865324634005 - 81560715334209569302273635267732935308344761563002541448203509037564199169415845229185796564458400530205521920901153889434240413835768906573213787362665364270670589679815028035289044883762528179263535368651423781274963622803178554588727646901711666469917588211521216489778811432670478282740692027774308087635 + 23043443991327142453263452806063740250430665592385905072100667246517993680316442907115637214163463654535912996258877883881976590714914818126057801564089392157530490569316401525537371433595738484056504668930445604861304550164768793851695620663206040087039790672463657172622542003420786107510881905094402209133 - 33812648445188762373358039976430406493350888384782078493435008258356960450293664096185564762355463361837484573789643315237037929230563612428724077369816874441033033069866844312344047071652008016861583196828150713094500969849549435812167641803615324386894399829893261495804763381489367889522994810379619623194 + 60100765384470328170393502763376738711150248605956946860454075166043397939308664518059784472773037564441153045955339457674421595857118123537225080994759659143947221581018812867023591741302594594109341859575479458169867399344917539952696561800642319103438705394196956850706095518835195760241517908815697763607 - 62818993292565219191504242839633314769713998664814631841910339772484340215012988230750916668322600271537837064036943149021430348581894287568349371792549855777298922887186062493299262408398261602302358375838316235616318195426761828963436933016278773728724297488226652264291928176899523606702883337928297519470 + 21875792644444037547999096302336617003572471984935193334898511088529408875612950395684101615558542453605808892275140384852909604375135631139016854013738087090929666212279071017282606170080694717969555993523452833403775551480948067000417914492012104611173191920666632048199482669746090010250902316083272179919 - 63502167361127176320508231307091780421562670197436675131533875685735930579402984538100812450702528125631517151462847828959830107181815131294871091140670424083736791414705802727344627169915302626641941519812829077448151119438321700037185485221981276173672154238625366510075748522773031001043437451776357093035 + 69221580374817508823834010261393693725905768407719442275279221309270429261502483486209575232162447361848251292729896321417428681300898843854426851076647731221241965021672195226902065810246076006489897263261605825894536509574901066985296566758927266956348938126558882574201163034833933505453932150263671501194 - 26615034931618431324478581982624714015191335648535641465943802227639903621813277209932963145076569489355749188385887908966162787009807475549104926354830421401985609810552750538166993265598832227175297637159908766646099463365073971755285742214500542690212134266438459430423013149882690762326819677055311469179 + 56149108947151870724679239533463063486805175892509858344893726182817359285051538346124908121940736943759079828763311281499249839853565443309984356366816734977856676627750801493020693156323632257369457853852642671764129598322983602020085045625947767905055652314907726009946319248442721871439586734987053410711 - 44523772125827694893030938490769512175997490072445382926237851821157901697496734054969265468777002247888921227957700462124155740663283362828432412484412445065623475446415464286234735131706697389356343265911612076739272275696381090096056666925257289137596368720885198762853751542082602256480232532050356486694 + 55380125268263733891146722496502232061823772703416575190764711033163844741308287762920330918705834431766831064271878747860614415418938101997532543139169727383389035387056852674466828330277784196257070796972930443693535974803213160318821930190955827278802529116098552556317197286108743567075244263831431513341 - 70243481497516755269252957864654924260588378045286966012522941740484681378313319072220042143223476635101691590393764702591815891579375586329218519162284805012049714236946940999172003919411004078833858401954533530753617035949601790452685104756360933978567019267863606363768760011848551101594626289400545182134 + 40725100506085721940511334054415960913419449808756547846495037748044517660824898421514889820194468045945867349524783635291741327883482319765694523715160283216473753351897243111942987360716602761311354894974528180231999762093817172513742706898612399493651127211291341918193030895169460362992213918374917187373 - 92743380289728569332863286808894236370464007204251444631498276695594695195015038488360014550849543284271782629804895046652124485277424410297820723982491645155951822940968233594841209008344916304530779174375064569005828210266812443979045985367341959276050132955540491784145349764789503640179766331197647608970 + 29629645493928548093165808517398690833885220081753851962634719576151155012479273452103024104435369432011425012411523223568216696666289833008613571199299240002724454654344257669396057094398117398765951728121292682836374667108770102464145066229391102433051496358623373218030504926273986017040603923127731650811 - 93657210917702894324915176962040866661508895601427917073813932412502837257208739962719906213400856809530770754037443203471641297581282164722406837931071677970791952141272709621970145473454827590066345692165527066327671503994882700251797750412402662562168703732450802978858939394009397988871597068206443308350 + 31189054850147300385131742598346544919453991032534321590936283233955891934534445454793205859172809599496278452587107959806875225314674117777266838172308569472224520930579102383299184288721960373634454788552128619894326289949062212956838620503891962068601247979007938925333090962451709106403318563479202809373 - 90970009377576429181644532099355027592717753115377194959767024234486175637083499339271881192845319815861976431990334103261564134350329073388985266617098330214786327472369161800126961979780448983863312333044214486745837434161514727900444245752687761353434634240233485603078783343735791185867591736298053787105 + 13151291071199339090695741518270753225186910407326714405573839315403396406333032242719388957429440818209676632796111404934678987688339557413352820486908680509032853997410770051942653008608597874787355862366731677212141766081357441645196008406827394979683496386018029928330821455879715586289428926511023666581 - 84550318526386206847937816379004903869672215466169796067646137842606282459045706503569089851584359386713429185142320783299313825987961583710026480358706792639751213927729082815269987079898474357995550310738041871622384813819699983832340326898988349716153464127366741087063078263436369076233774350634188074176 + 82103874557165605885709122142183192866418280845306319540525900699414432323902549204102155265804344097662274195776701032296181638581845491549004440399793719947753855586988998818321825268352136312118000766861604555462864445598654720069826238177252266547988497105667445824000602098131531508561219067635876203721 - 81700309296936865893444004400489882727147024224635686322943469766587117606160576416660298814925051738326006913021809912024361129738869907914938659496503047842659524542217440748344195106856808439647200304194465901153428039298021125907244416196411224602184087093986406817866215839415927479909272440680034584696 + 80244066089045578678607679578917934608128624310272690439884876783257665890848445955280029197058721659398522491484136298839440944937258191909140416959296000505524765451363236359370301918055965831843946912980495316331889591766662884301781514447014538650045681062463717559147502049859240607455141325959426525081 - 60504635512747011585602243633252888352785959494939422417717415423196675588310815008800936491124202385086696179386298806712087886156122440100914474474602699599101201675764591397165231625642277867894019334130863809110127290680132753584800227142442885654945018336599932605146027304549405827524645343723388452116 + 37646707771143617441225205447307991841408821043350242678929189086832282556365627591050712427002828813220863929702804273119778175405633702771628411514019495175531836740386000315692791181248327384372621359832240583426235494862553037876112606408441991869034017483114715033901683235226045036375463090046725344641 - 5954009290625740144953373314281071371716092466088403496530267089070545904034199023874679389814057926737703866116294420003704828899354307306236563124009553587127087747487925684102127982213245604379162396081733284286080877762766701917471746554816677184710866344504817842366738314832112329510232338762026712483 + 36827195527179085275503013915392082646352850927167949237757216035752639561111172587907888853401558707169362259398341129414044500801097306078530141079372399055088425823402770211757203292548752171862702063228085655273936190489083632501347302554478049912564978025137496252113362763832915954502493503545088503308 - 48884919903374105292346649849463322491085272483147421021218934520879958357009506069697187514652492643920230735615275579369224660390062611555452026146606257073498551937335039318200439947244679638227217687072052644249419191904224069353745058422006647007279636048224677996782360179553959826474917048571993499751 + 28017477570152836018102032367250301647055890703829391940185969090867160127241221261278353764026373059313045525391385323705870376023320152542098095911255192317447757242708368230279787445413963751724877198044991885824142515994547070977050822918895139306979785195451824761772693005840375418044933131979599273577 - 95441374908013316660791957296603195798377015480393067779131837113124304539469438623844774704370917571221144540551854061347605824654713694651437491496002506691941063055581047608400217606117415390255164667525333862669823264536436189731481131069904074421653633969236813759860768803989300649553538279747553255436 + 51476886764477291646170862584856674679972700707904905882304406645315795424498867057633713776336883988216495793546926040372691925073744098269858968257036504429126569931704905407635411734794969248662340103176150456555835159176288264467389706760723830742402652226474074899070677464115540238302493083348877433340 - 28396366317413904906805825998288122607979281501187328962007989060917827920385931336118435559705270845440171784340673144365979310123083816002141334171369275797720562699567876459200512974266298581278387024239989981018160338363352662657536072601939170738069893148062498564839934983665037203855572275631515363699 + 37523275146310993949878183191756364194362828595099673441531043178299090396350826088324451349223008779570080150092246181177729671073730441500810765705848562425299503405140007190530082296455875407207377551835284333159611626106740565297255421961353706988289525972590582318363916064469272224326918023126607660099 - 32529334749501915629239275059780756568112319388427354134642306955834771074790571672816171893328997000776174903342078678188165009102813089651263639837709115800579371704135104375696412911248367564101976178817175449528583617028259840794305493030929720109472431389964340930400451635759717796591489186183913880748 + 76747842175089064057815931921333903797424937853533709987121678050384014837514910414240080011238593976275520009506761376043037542991469836610628382582740552455220324142940721551509358249940124774632109419407791223264379397119670120233966815293645440044334655462733421014495054399298993155325267007028367837533 - 43485339807485330421034033168909274664319771049882895860726946126425393971810923774960590259841205704573879756532426826087437446567496041193275991654223304755602976286978319859040500103387997355855963452912827995092027911553996915216863954615199013216376148248156196860708818568114469347394219164279263516161 + 88773001772032623751511622152995446885753082870594526011423477091516998382827834451327548819803882516749698938069700432447868803149038190246171070779847538443209396765087930820808801762481297916651633667116816898401823863787491239515010379723787533909841393770580304401144612430307881366923159729772858025956 - 40235246650577701470453728298935951880294180569235458119997786569960677867284724889351203436738193665122369286957744192796991787072870858003022514173647895856505450940563542047454561635500686015514436545902151536658696520455230874663285922020933659559929742279141244601568221357031504998973716260885478495894 + 94402428353389281971609741621824217035162281138272012209734421822872748757006990318086683477038761148976702738004618011296412220782724348640829487777503820952080585580890860610106377104018524646396810838081456514640851352265150718700856075198372754920037366984327958385435485897694097892837268846562499144287 - 99555302021292272874423687472961081538335871902679266318420924493744210654882084812618773953319648338863280940337659783211422984839227164544968050008178054825812765250638556497088223933239980178541444589265565382367267254319482586016726746587795860670952475660412597682960630977941451454058384313822012325564 + 65640239668708698702583953785658566170015967096257661508661209527730006107613214046146504513725091673350107698700181561231975310632259186045874359779092131841963340499906506811557396520059895346121858731795782638601519127318452405210330561664506302239090664964510892577861850330666419284122172916101453689967 - 19505641502275956664898584622072553893235085645300193522339258981670957471806294721544943151815397681330483965747292063347866785767195566475498693078845820556257750526269367261229183323289079066630046447534444813707867775677994168671417926076849288168008318425854326045990212740538324390906940107107376987284 + 57935512332376439857924773070817972343800587219421759275916051413362674526549137184678163653758642058640659417146510277505436763030578246643443167926151533560791415005892748090710580728174549962141461794062766046287608022743734526299601759249210873148214149031924294883720824061870523712152457432417510607661 - 22994028810133153652206441824444834281391352509496018964836258546244705775582863371098093740621282102043295850190645727383274493981825286520311213393809590130419780592992396095683376765798770484637108499001923380329329896935163070352573170131843256602779643630355724155935480411580322414412074419844578914624 + 28608894992927828437597662277776359320674661193674092256154628287827861478012752975533166923945659742173384219471283408992643034399813147741852844232665853619558056009563789442845744451036991042305647660584680204657084181164531009326423105089185393391211670178271105416028906903144624251159819063739954948858 - 35966091745214733414078385044098634704733705992995554608150642825972844346343206522285163408984612014788669092373943741944655776059837369889791973114914202885337001526051055475000123342099615557480716856573921386827086411540515070340215938560178241052983481532015921154609316570066674812622391987877879293854 + 22416674759077391541502469617182140121621521020236851628366198609929688482689141975836330885770279247373130833175321943716688915705139742659194215278636319401916678045729931968331793779004119813118570346224779375684014357232533677053863927520053406461551679568780236685310749806913281704387219695340249994703 - 40330577962571155786238042459266516083212920082345770885881255985403124387758568731691590521452444994029107058165850549748424193181589126239063797985651816431566962620555670132562776773459300544376056007247822210456153814979833943520100431493081038073276673562955930963473545667627689680440081621641454366897 + 16766373882297762755355466054440358684125114908131791498924629084619128726399205351967784304771086736877948728451037535660540892839057000051059672376898880918857947343759411426812450476325099107612741656821646687529676907661640207578363820913315305713375981348454350484605807667278927458202840655129235746334 - 6131907742241912576550631446982813557752584538792462548946182392151709022692681870625540065010565631535192822999338564541587726130760973990067991661444593712512505823711832515685120573959296746108756191572851670791797443335754496770231019342592622581019160632841636320368837395923185702558105109606541303977 + 88593942846707470725131269832338308683641219354769811978580124803550910982662013803948933165857710078600665579306120099739486028850268903039665943072117055989076815897636844853534271338217438427178915189811875027052517611167123993061922184955764759498719916900914903587230868393928450519319843660313009449765 - 12752790743995246317074534227341120029311565097714957497317569611132710276109363130946237276761628450133107925021944766131298998813599700359138133227674240979011108417015787537929951151549995961594555227229561496927246082808729871013224940091104363843657673051122000391933353965172163213647018964011557568644 + 23026199313101917764071589526453415443239307951724031941779687585446570684627227606430588092104852571139628885272917718455504627708882817047308185042828017936698106487050173510675012250317909492821011529530232449452502964417228265661624103283664329245543181414637905737358513635181787272930286023367932254843 - 2429430826737186773992704525301298768862408858372301167870044914155617825015900243319752349510246868929568036096434821032955431029017508162909197730918244725479721545167298349735105105560218346372258560946350958761765126847661292171869494149325957821188352581304202705646464324440858212827234509077508878035 + 65394285083018952200956959608927429105807141523438896051419662400168872847814838460017889981990642808174892186581275192178828835836684433286028065410457378057904711729208043858170056388579110835836590828382552230115632337375312442141425187671576860761141743169393472728351899625359889199225111275300325130894 - 46122378501876406813114745733740132610962030263639554748137841231047375106304234773564421057596540431458640467269392123240034338333072908630912825013055437439145961530806283604610740830966907509474431093457260050293232694358335520893575698366158313686621796720127282079033703256049634804284890014646329412140 + 88540591212205686106270602834314361825151166937243996068287313915707407544529883412569136622780001045816650506244930233660589049374824607867238346701680500830484845365845955829243364036941254979702081404089680596092950817353695699466874949748576026826390019263738162209765431176373259319067477943540231832878 - 3732271825286983366416287269299813952028882861956816610239556676041198080157990175982691112287310211615083563217446872050200157879853537910222549905329635219513843216529026977047406966752297272324134581941073656261795941303748631516662403027148342895004562156018075164115426746352532474527657844188489129799 + 60716925354480761984668113947366268505954012461881685723870953452260537293340192741250347901459706209325281605352902128747713845124809640042870302916547677786510481458070548789723937979094328520700306817428015672163507513341555109049367716210359688843542894513344589375402160490088876721941888511198847077053 - 56258778530033400615000980032240450615449790121550192729099454572216947668177473887960757437007551709455975350203846501012456417445371804452931963963501386369997622254519372391534556187212525405077486722919289592752625923423004046260187345157559704491472334600748633656888386811210323014975169944931328957537 + 39966195588595712663706591708914970055292781649240598413587989080742693036577116441136985171474886306714341190873094211702145168648135575019911735160176916381577630501764918297421896727282251089816895682158039653054422878368755490243909748350156398184634484023934374989366704253920176920694723627144947571351 - 93103080657881227954112729351970493541078115928778657701591408932575118324107282787524183751999279348777664209711124522288236821787327613876778997843260803896987745931313594813462540135248640244969546658983222321101444296984241952637154941171155043844839169379143752700727993149030049298282363471025338408144 + 61732884339146495785710466099668267080543711024526511031686747018549645451266399633267990480577161368541382043578785647345530278866189761340068391215647462430686597232748761565622029536681707681768964814293755744283954344159005543605048217981674058359363800690889916478551413453024939302829571278727379999549 - 4161858807071523892042728682853760249947823166421480949236572883622955252145098386936861624449773754117787379598299685369161049233848815225553511415892033543386542587631874144782970317955336220389847752442751176266386167923770657394952361920034120263878548310604564096949922612356618781652640387489662536549 + 57818676989680228177780317101861327914349972331818120267294129331559063637024043977264976611224771719685751854053514836628809137173849092448308598705781382086833844314714304290356818103865112266462827640313728277688519414093244528149185164128383832706764988885705506313658179600644712916819702892292453338129 - 39523874463273315964914841257501473458939802723743800398411124713573102696023054812321795398520686503334045810373868604386129373426226185224128432878864242361107829828441375916629331901286412818103054050499794109703444424945113137832728035866796366913854613762892133694764340515035486901329680471215900039888 + 69562791104654108367093211357328066234953204805372309896539947903011957093344573057234859978551379792195983219884393709500841396628871471955678490742216103292578517361593055854539186743847302370461258495554231191930496497939853527635173641626664584031783145730992375174744970105873057937756904344648107475216 - 37964647358068838130948483793261979670238241093543841960341814097041724893665570157124796452557291574384631003341639008011211621216157938740690348301994237110838992966029914674779657534541845456136442673632952502998739421548971503954002837255888721805730443913964971967794259028224747896587528709999082002721 + 88778316088328687779646559486450782501795911375914861897112233346583547807135570329519114478618542297387215351769782996772598659617568974856068452121394446594382416737443950366568480723014247292808832658150157151966742288780886961092341304900275521800976882061055547783691996332142653668469582298574526735319 - 90234726605149649897736278023048559432209159656275881412799516385281895925989619936934653113555563137134727953194225030210335295720190531198227003131608674802833268309845856574457068165913438986599814836931257803816250659828615466606571286136169751383517286158501295136753310231199175282587930917068282735084 + 77447621610133639990411370648947617993697914754382934606446837295794636793702560849043624575817385154884018616549969875806173713873993163896625669209096930451250200567207576182737117614143961518068910519113962618920552783319004516587478665606413926546447972936313485134980381125546626054168465788887252926169 - 20229238880760321527171788833230078230743350136926883892894298314262119815995409403143971465286710000228306829954394203888427702504650754304998286020141977402945483257266964294444635540286502088598209833116372362904507288422189506591696248897746196568652018616068031243632404315104188143075640045160425631295 + 48026064666960347249530904461979418573451490890902659735345509972851540854668029012439782291019783850382659053612890676657106948259238341936913006842697770337819431821712854885430559829303393514876125585213619293901100890257030514880193241750275803605170537567404696134983203240568758637060783651600720826920 - 49426320167192333842435835634001195112186605926352245310511694660850261664595270158175235080918735815773200063384845564981082177066906137282482124673080745489258557319473631377710887517040151719973325433975359459495268079021480705878707826525187203957045682611807680094732082156537125907105590709553760314957 + 3755156195134516615444014270629774753930070456123963076992109232616275549374999532999341981453813246977124900602833590914705913542502549203102460222969252130839168914718482224309904743015955415525366548220490605192113652161243332483360332754230945438702064437705329013202006460330048083010346770091922950213 - 88263177975644578890149321918549938346896135594535725140309003527013372074837924643225443631045441552326143825340773114081912580330274977354218810036192452724431924177599573952901646232826379110867965821436255157346304540961195302219654314791320589857336170352776204002390887313358908908201484864146359604412 + 41296827888776783636276163737070005288042186168863740522048008592984735106886407113130958190548977970577095776704420650697756689495246498855823317185240280487096626854636042194278955385632023193617003375452398935819724085921244216528158775292181828289969825147945318555288354759510059719867290318504726063749 - 20311423565507774843415289562359522787819520950451071706745314969511151083885894078149148958568326106976170390741322719008154149587811855232875503383298926489401583310123982895115191398138466623445312537007652244830240778536644404551226873170875119735349054009376677087077719868636631459211579648609363881296 + 91054201932021582179835659880295201872374922128677892101414909173169286404558153467287983355049457264222424711013266315220951807337863105391483449949059068913001616162506253660197517537044902090301980490950962869428186795704854707442734774386600320368201634807918595063046976313768944092709560055935951304206 - 60356183852123554840636026425558474965194970131760265236857068155493669199479564361238105875152385307649266278546007114925370055961389769019622424826794439602505778227403705879137620017354143571376998352794721984401227887262970400081246867002563502591273041345719232278277049262737363566119982962034934020681 + 22081282422094915139513681061092624942637657296405187551446476698043205792747840053638914962696063527262734711621522778972907001274227902018528848614752878692187459575918263685192639568941451592971399810577022923173651493691614319798331083653600230513050632027125618174112189636690164177881957286201501886112 - 3984517813031333869053894664719866284034698885450768797600946770288697341757913076919091382421286384681201795598224036890769316591325420602824329523977555672464216656847191549808929463511829831332810666237743786780567937996150837837718093259960590011380838357699056471541171269487990856215902379898460432172 + 31010551979628177573029458686284193813063546478526562314959040372964426058046477842477646711358050516049248718449291251419474125529285924100664375344610380167647111346707521193390613960738718207101046100878441788966013855399729223865321539863866551536916979371765463421886990643576796004362355661345492240292 - 3765600437209686153093334688869309220514453550435101775220118053479502268318141628170191733236386969435977029798099911851597551721449892908464762780665496932827438345106150877369514766697436267254397453311306174826523628347086910028467550850507755437769632483053654309354484312271337608144175409010196609830 + 67079534017535970595842352502939397785371375899006257928089722017665352520071445394313450779574449699318237580935874735975498986240627423709145540941537545052057200403401064378279584945391555726167026067444201187717316284605123249628181057585360711065311183044659500922029358985237038349176187736258521751098 - 4780361891306199647162555192942440285993967994743457366384035059336681115944505135597081603306241470670436811358542490950030765315856672826496613929116460673043487280463640314866177819304749508460659614955923897383957474680065640858623359743077204285192529908732587631786126145425370282176036323100453931926 + 57714578114794529296629169891575250127717126610626382480740270510054129042890728974497798365385081584276154148631892864612884033499938568496797861085692700942560308986586984875564462431132781275934533198891761530328357277317233589831008113435031106938145605382913745324823380441443221419046116752628356724254 - 96208260729611615781121583392945563184817289300493127556350915320203871951544631634387946939935185779520615674751215548069814156967122368819415778976980850194987540006700036099508807811198675117667638712432192555730423424891655374299481874988678875677665711386381655583408496050927757355369318512272716971447 + 2540405647369625682757267377038723364906635366175841511460876222420035057561822254762969890004077559329330729899208550054327057583703975931510915294360367593682028017879521278469591823163492291974677245999235719415946683233653373310684919973105690322149128126221622026586344138463035827030574080909649496085 - 73788507138955607538364588353455875508216956209335630218220968386109148180239571688277121872062892948562173523850024912803062504639938150662043928946788324389343985223254898977859048124918419939747190949938764588430345211295772155583143614714539837832828218270556360308569766862756597050182534488127037419440 + 49802708769267438758962881883102721408716241450067892120255789579370613124340644668619326515187223220284921336226935237236536878999292046449698656495436430465016021925841688215919790661506275697334284241435562868614100111609985856644316813073457819194122778144903037129942889905044739838735073696913586870969 - 33897584709514711673580360829512793407564434842961069077696679487359692936837278476630800603752718470631890013611945319268400892511188930594231884274755474710058125539680159511893503620027195153032182372719394957378505740396114866198231183330008229183811029701859787411967498216776685787765475838827117103576 + 62609028913821918197854568698297664708721575733047296981155706837516305897945112229126645846398094338385935189316892604246012430671687465237207063408256376458618860599672116170256841083641819058317519925982949752240115057113258744463704670165947831795340247114803729858874334626428097040488989320276514719951 - 9751528178939097820195835250206712445110180209139420584945433763300179861284483937677844390811921242535042649716050793205153510781992512228157040846789873414362936530749399964020661513517474498768196385396697175850891042225926755029611087414653836094796642541587351342724200504913581105530973663211251642344 + 59850942282025464943720809651981202068427491556007896134580154274340456730589416977351444005401734765627818068385734976650546157097300208681158487824411571577253948281152986570521632977341290962244287969468401151085574482480064408709660511625557113785537831718957243040943880487304822349268632355883130665624 - 19660816786276940722277947080451174048491991879334845155309864015933849213421447100177639598439304282316499916893541088684436293120921011105865588568419638767086514734618388762845582948296105212250830315095216319535339618704694869072000652555659999168640079536565855205035504034391908429230777287622488801519 + 15235844073123843644189440501004435729007287838423762537976017479501261069736981258868146953196603806838796632340254902940211603527615800779302926485139435624956596279670538833877342208142715070323362552423269870112829821684159295088709584866515360268432776920200629928200656753191484796136524723805764086829 - 44171383283593434881819217335408563415942541018488011376341928077352337164119216214328122190220450253302640898178101222508536720868805997065745658230168491524340155473585129364864092568121560258904040210153471782776901356685015019497682999989836493896853343436733384007636252668969593670761466552168484014999 + 92615465833703907395172029799779124533171714869161239142507611390195790843250324296043855240402287213798805347347591961365458238707597390314171331618961128501608779982946900489871630162145232321499350869037278637701233503547244727629988308625343046522718478909646725411299458704116443958575594000816042549839 - 64676928021111143172542708453698403417738659529077483019507121573028359937500136063354403486425699857894294698111777305335637345920074397309959814064632804368303550234978492923018881959833985438894971323345685679690796092096734105780539619446456679547096464432911246331762829401031683897496947518334580722315 + 89911015375225434386420720316747663807978647129870282735209299854303366618618313164909266900088926896237993292435652687237383748612071182577632072088388772765627844437580034494594252717786882465660058862359984752028353914357794081677285583718745782895976599591016093627753735687989096370959183668981616252033 - 48298521172524457645683945738476974490737235663321959960529260512989660648493196786881996544897434413725681524046649556379480369667399401791762456743805249991396434864875324621321883518094086866648235862013116721158508369565118348292054140083559333730734825637632057190077269673168700052141617112235263096801 + 52434059409248781980180483448085756116012610079849624039157948131881977802540180881592907048858764139211254530568616690226491761190291454733242010560540952685905149153389780512524248801835836672944117199039597342056806843717884385417919624154872764010577135697340722978713545367387763208942555137519747028524 - 68306476666999422869991220853908385946320800831586837072079193948481687786921138451010614417157293270351707397120207554008488025510844258627535467823677310035877993639857370941544349821897294044247797592397608473758931462237907705514301088780643028009807309215637918661224215364376336227855376890933025513912 + 61020356471426442602461542664114752213698844623447676156295816583097903825787670924948892895486157500641696731111119637064515399233471169416580504103735913490341268448951257460805591872218343543319936761061472173925918344589602104360989590999681253703148665529170949763335197776548461018033295555182252132340 - 59966919658956050668627675028151918908533384507906936394360947124450789445725124948757825355166004988105260065253479777749654837713786211737516500822133641275764633898954502080407868877500735898195026814196530466771147000079449846715966586193871740457770307932750224734079198362375832461156863148210937263432 + 70911292203634081123627339907008179954945353960106711730604294952007619759186171401240092721768401948540852747699168495043351479938810937240270813760502437596693182982425235446446712981683522891223914571643728239344877516198820928271538087416776079730677746823745459531101530514993057260627892465553502159111 - 65579516661221486358836263814079993240805924597754177137392897664358689268202717628956599492319679122686733221413397421810380525463726742815029654609500025822850788312311007678275473510190040173370330046432585319643358486063934085694461038087616813521595753177908929462819970610600609664857469598230539461045 + 40116967953020664319341043434761974592188439683288744102206622684842364103866746699635383392913693710023686136090108420140056863453979882577195895323616435474942165859069091665852746146144596225676884809051006223033610142179402576723458181449026411994411883586928835178002378243729695967265738810319152169034 - 87483020657784559554057127384387960228456297362550204306745327470755798634894852969202493842862135744134165529455390325699795753844277517907922028065684201111117821541150164310040822966858548514896218598984677051520741519215727217356812772539440618139259210492643420611212229459406633224585830772416052871712 + 82525091411636843174184647539693521689123798145693295478737539961955306060361170772408217546668894967642742106281518212543048033657471611263908177887862727460784981590481248850722315715806483401799063816700748894665414557559409775776167985924706219831290001764946338623211247140431839122054667779017550726715 - 11848018057088995335765047999638239393318843550587465576289682661489832301459458493684351081346511152097283845242483723267074239003410404283359183990325164329210385430614146878128066701750995070627215856684199723585764278071937918165229224153745316716798033023021542809792180664083665314307221566673847105636 + 78646187733217441386914806192097256620164699169306873343850712595089863452909662837591699855179100072510276445526801620114089059237392227293517083185084605772889221292382648889866362096647978553834412561671366856928379817661628921718968910988524738327087769895610126021100373328414834988538256172693619163232 - 66874458598872035741578162964793360186571675145309920865178658386303365858145567452957932504270644731823711188791246186041107521582070004750956371288109788025747613899484355447408057646839703818815644929386672548687203567414043297173386091184543200952871577501413885482766590131816790465705092909326680907593 + 32524820262536325472999105799640842651031046507937586989361236635442114328813925284439458172106071334732821336927025023464723453783968390820386014552849590214851020215282582075796025847083854556378982623197667091190633680443284544758316092606293903464532259161378905363261114219720409901637316126307306762770 - 28177482549552929270495410585034921296728325520194848064074412285154832650065759045273543693258714348903146280827590577018411971365446181445099196411221784898754659351134785917777089193421853459690002796560961026354185980015291001302873748560409514132776922721398333100555413103077934900988127978278169179939 + 23833886442124538309867825188597660757090514080900471045401929903045275321605265407542550470370213826531862724500567542141613018181531923107943899461404776247305251151617397040218976038807708256252603928691993897130437013519731757562075271938112115471822761317205149232665365039224561084966854782163020320141 - 55198133654834077332426037649666818307435495281258200582346304360321441356393473606421978587340823774137038196923739273321898761435664668814472509783468382414287607852738485409875472764954755936650587534016332615096382913284335434822991340147432397312638504403360656535260018633806497043750096109017598913641 + 51771152707305586397556107753550837184522243896745151286967724685884135331577468245309999793861338962322781385809200780502443974220604098450395386981315931591489695546782898805040097382872990474735988975088507058202690818633380359002081634222056289505822736130291239011438079551844983778287307018635917675824 - 2634954409012992712975344067576441180240081307400757823405316323937625798693568791191049338377535293040842905765300755266200823658783258271348732812327739586119618710684284273201952511605573695727150097432482671722790342436000610901465908512240425828366427901028667127436361280990728979372762653988903022309 + 74551839470287934070330911461118447569492381109717098173687808338564989755789713813254444778096624688102658002395705936214843429251873432568126612081071796956645110071348760348487213062825825147534842514325193264417698973586443975965444726043491740562882864006402128727362026218358707924075337278782241295615 - 8278421736061717253037682806378063437163963149170994998126337598245066077824256857602333184044866793797640634045622331333479493015225791911453774908512277183216582112432987889863576705863080394377199628991130580104890927634730619326381152622503036240859468760063717108409224434439699738960151855433293262743 + 89948421007989562417165267048356100468399200250256479883273011550970703196907172668421496560121252626833011190493486123637948858174547226080010645109580883049583039340832928104237261127291186502170740176861441053110700206466302403895846849297718945721020859340142392736278219205270152061942484188675321724355 - 68463044694507116534979632645386300388668455745454420941955257545218583081987533761423662890470860210815202947932117271971659890921756739711461926500317607539451808705446958612628341420477619741314284368154694533969496859347800015526184957681406235626320514183576856378523951417190351378880680806125771638442 + 12449796973193067504957369207872097854621930722229599942526804262407400221340110264628640856679873941979010332654652299133770669902953162858241357162473981092741408951838303378066595732757024713224206657282786664661400487164244825784726070401858813752025258956630630528989060514353545665526327804484527602132 - 60167000313105696067983775551569798823241811662681215531591262962278299937263758515010053593968481139332355337500535614075027701490357366786670716241889070407225162865164631650006557817154150111333615678972992612157130127143143591141190749484829324126305891243704608455822061603582275643991203789256342589210 + 81150963548487351473879268417972900586778470179076335770951262010325602191327303977578520465731435406516342480397787466173511682173253618338834142637396346324046755871356138308520223949462603368224330562300070135600817621445123158338526001798271483587392342698854770720639003663429551430169694624018397817734 - 89490507393805865809913617311510253370854581106974142288177302345485332991524800243284436671682244149220266767291916641503628041710450356747856450310559221209600130268432452400457623915986700740036520169119820459947304487577106730776375928317102762346860987273972579067453683992820210671184649995204955187674 + 25765654759714161861456650822848058369455766635346535788736458576413184073426323852456805655472920381975073187212633635694645408455832090488760205486020233181572545742191825690645121082585775775958030313301042815681973958677132313665915973494502928675662828713359204950955521680552143233703318277166354356574 - 98956479899273460567567398953033617115107214375051713345264638121478852054563135154007532393273311491402704944464470905153380095673545045317561833873044351675330004315879248350929106424563583426062887550831157108940914249895901344612574439080096271491618265903555415201110637936759900201743142101916747184929 + 68159252411121443106658373108079473828487605786049995280165837701247587355351621453430736317362853399666063855831751306293867765741964431591145421316337749882671732327656210086212742771592540769417350197800722853922086328766604512614211512434656332735538913667299489603026066984280484866501938028940881687332 - 39882429247847056269136477267122872342208629279852330693891507027566082309044556544012667228162722383874277438017436526052431853624187806959733294798682167432178513600087789171262144076162799526534926624660394050443645530009399051921542413728314136087185614939132411214801024593899495549474747163641337663559 + 55590010338077859483648450202541245060812942717766413152403022638214487592464298547312979945966722880696391131142602865457701825814774004904075075757253254566493932889652184903168464699382419871512658070508160388867507709756010924098879882192438157728046617044765853270102306949273396574922324571118101689436 - 78417918378266376465715041803203745198610662066246991643736222202458343350762166781170351347999028136445854920489275409967328606802973212539284368250598605964190401507727509512030020004443223472903184260094022283811398605974642639109266895964995077354467914493881643629638634804222332888002579358463988153177 + 17672700637961486457352760611712293613752049984555640123938012237710559513828927684563898805065397912238576615672335709516700949788085547017200529807388806553764240347959855828052901224816523317897922565126939538476319474910570249134720891753495834265095401099491915324297030516232165310572536619165237354675 - 90803227327957612660398748491282559787711938273567496718532595324654552330333919918840579268227866725640316831825766299737376023305180686577934619678031282267891766168550521877337082871605250288236001615099404253592830292603538150502700135523093093320178120471309238045314527669747846310519907573903900033341 + 27727213449979998208202685185704493392245280753632376406867617090092539048900263885763179055490684709024257047462448831812031428077269378345645772090690224068110883089161902329257753035498325708417149199207045699069371098538704427318266824271685799380441141756906415581666226965712789373201251795517818993621 - 34615813687647571661726605907634471985498543989253110104944354872082231209019555467618157769393984178607346374203797664919164380331710732763340689620904224613718047864146710923114562967273735002877091974821393463789650799241763505293807405626356038317893366275775730654710728468683619936788103946145623532269 + 3462420777539156015487337011978615101937122268919066540928614560354943255303124709223978560698070750703386896440139496078893626083068738437237689490965587963112700162539828667872050191438993434419840232396351698761012220463707072283194483760723122906777098690582500688037442623092536988188391955250265687916 - 48212752080231679524775936729120482599587777815610139800705827485764009981054453089813789126244665198480417725449301584893572431670195833793892352682083170119735016201034066500768020279964201623998714825421772888794727533544109311997345487977556862867685052555189794599463977751624282282590450506056070343311 + 92971622671774225451743092887537806591882305508073384897437453692815973916658838339272106959545130550854009244982561456160361847794090300909911268803982441771223951241775689336582586105261243616100924348213998699210809295485141924906819403934234501585422589161454693257383170447000002909979574863066979477879 - 22756215370683756426809997395321101447773435845576428593219755903192253476733068310312966180326646162814210372460962077710415553055560736533208786187621348961920848858118745633476413487580843568260955348731904718550495697788913695625982512802680985139240942522456921060040959170783190622935667772270732687493 + 40206873115630397758232408517710891223982100443768270354792469255121629359093248496272232943416128020978743639099335465323884333878833992631760016870756526710135172693877866272915841240510996757917731234077470107980285432201325116408685794011441974545103537065766719924059822799408232930990368567148915282109 - 77055295032314024822143653823383454476438172370021095354455071126821747670492920003169657393543367254571695113260596332758328289799608621049684114573610003674770070293820565628181090795935215923733381340019671677129880443256161625698158129010435821736196836121327801263915503348873049237087376217344952467659 + 86021129123100982324892213430143273226958539139680498274771605361364382850382343481433791803419331940063139306843727410658657937978393095812357035458246221035530637103709429374979739834511625054211942740102304921551227125300413909125754335208887402570224447779494254512279882274825179824376335900392612869327 - 36565357460481369425259565068912871677679012211288815453497964739069344082852517804991301531670435830260241802376183900557918661245079566605565003684510681155380583945714076753840209810262717503806591404425459841104576291304972208740919878284952876695581211823853731114122627360241871226326375920226934846642 + 30629499088707154548371379438857007203483641826800359181525368130221358702150084711185895844466860622026660995352724393949486450344127533718676261392759568549985539789377968427573731393080635607206023727128069169553300944153195149947478811671216025422303191543678188420155443126691302307767102837067530523505 - 18029235025252649467023294364493467135223458250890069836254308174017668165002506784115786527091369500089225653255353063179006641041782655872623773237644554219437612776614923017658113728647072927669270073911205281325159720019193147975631925463711871811688838273356038951991920081814499000554551393201637154753 + 54277125195505621388752975728826340887997720773469969407989648983786852693139685560034447800267048286549954477221606398160551188749873914783420459212527526178645837858670920038849094997453656906711970333777487992737865481570723931937316155889672911286983266135115552320279438920409614085413083309658030262332 - 49860020155690479231196104572413014261213526849720880180325653637223342156319352957277186345462937858825166707359360364007682797007429925544232505433085089409559691744934936343247930082619860688071598704041962596262972986678433943568587651758165882988736748880853607933955073541098733642770991315502583494101 + 23310314954331484926851225105514591664138829983598215185333286532336881578504070820654792388668441527869807023759746690276681312363299592215205158151080570307236717287179462761678812911723339305579524652177796018537654875016417898096294794226425360339840801595912062632724815936388403459049236328954240225854 - 1156118812008085465247187784315573683611150119856388423046715990608644829130908338585395377810590802091588518902590354058648181303955021131532175724851795938041115355456101359002107603992317372484717338347393497667594624655193776331475258502955196324407628022997860695494600229171864913854139685441637708623 + 17989293080125209865468415322295988242730244577631642150919389224367241714879928197595099325759372868119630819437351991895592444894657817900117149344063787052528381171440383793843453802930295037506928892819214622088103121163998475043661453249731057308767772870790347469165761441676509561455712947360504520475 - 87519853494826525465835194403197244200326958549605102650816008752563202003871354446436228576172130299583756888240359641371653097376434682579796239665127505946854311727167233447646865389054151027898858837730544740360551108197198566501943231683567750447308434030246190238382340882588355589494150433671939435191 + 8787235743183616094636099160299879830934015582112048592236257211697203046326013200132114834360810677674965792395283056480532451864200282555036907893598302396309138861437136821152772420259909415497246589659333792383116256708863660996235037659991843402475311732948797571825017189025863798319151132565500820558 - 57206765925329398829529021379845439680606216611455613461559115367316589222910402109803976341078377869955228107460321249930000331744914936659093319529263307646020212776721659159813561860735559234076501583942393234112055948055594008917718332712361139639461445493120559662534990481404998231350326795821608910684 + 33110462923626600931738487114169066760038785953740371223071041053150056708087761631389733712606824192614976488042859780369778169521414109532750491273242894339282788538855230297221861344639871780981514492635773426209460450837690005588099098932090553204992550404284359442901518116694005133142557805175240003319 - 8032074170638956475455910031500711683613614160643220366840443297068691957094961063712184062660438925533876955020967177807585415415046551913831153540045665133065272000888242136789557945843492314474430958224304100121317569529021509761740783070622132728204102212200967490333920500702351964311270793638376963812 + 18981749031283484306693067988106309321368985393658563650447318642887245771460404826126233268387723249105057065796655001107342912731867975366266558006915836777818247947160482880820984795792551699965069937347867865819047382564943646972006940332554553453192380607780734972887089226723465344680838993389692835338 - 51339773296269704666637971022821024540829948258805044486325430398959242763090786068954611995199988237435061593526871397387386739078118566743011753318092400533288779044272598277706996175137762694762201020592621867295495025531550021954399731933255652953941390565872174929315568868242633563496616278257608754691 + 13785139449013325174097578169547001518753235677973526525755823833642048616848029443671559575875515291081255260162915863792417945589115620797555393043936095673925388075814432971529724957585021416303769361295504487906045822720033194480253254078700742482871629495568412331793194087719288829122764223336902595768 - 50182438726732438693245717684826176744634087909015849917053880318979360350587208952260192193558904845874582969781004807533823114630295668199749803459111479958559496464384648064864848069857788533379430315969314173825868306827545550415681902881337841535400928878234657003251168241831912843555439975333647202733 + 1295622942595184269083509751729297244191474738634027735825210836320384497097013413048799542100610944068063065703848981016945923049863742084088969748112842966594535851437108691451279265210539534566253334887241670901529579268290469052902554081953382096901721138516528961078863250092781508092078951629855010441 - 52501668921558721286824144122673740345875296540364265742285792664249529156134561458786671121905878570076140452041793726608471477683150269866553586759959417342737912684517155796868015761312236438923937476263106906488719186712413691544639396899319193785804011608424872359716562955510194820809203891441272066127 + 2320144322845215910790986271462070005391989257481843729949951881297946737536074962448382019429826265304722675459560192864076804710352740898004386925213740252182373414792299174898915254241476142807307223412338894791564378967930437658298291166923928330955582858136792752629707225483887889726267173700435153198 - 94922934978309121958559791871561587023942024571759319557711402448925961339849708362541308787460404196603032861055332699586988554113442293777402041916707016561845198148390403810583114918648356445734106380754522329483556054120602554287137264343252321330038746120909513928841814494671980505841237825917900298689 + 64608323508910087871658098427959665117792136064242362101632056138748764140039076928505187237522872597128646831952255979000643367811578605377952638451615510481415080227992245132888206106141168137089642467402907673001555926530107028346646635409666467823985251967629120284322315718935433167896293919729250301541 - 46681887839759699102289404064556696030541218508208368684829830759354411656181418751087976977396625487222215418594912219317200062533596441298447992763970389252161366275681583340326597854864329865327994969701060008806109795173712390379831466895905826112386925389295766393165475939125463975593728360725359872957 + 4259686864111518841333764642271093463770613402483128551587668318832271770897019099148722023510595541575225496857916088303790761346242926511435253367418162532397555670286529618946601025796956785883404853619192145254176852432087492957343957706027658609111213264076193336357552815423963155750751567924236284427 - 39788914854921057578131120262501067159302006387779093125989575441140169660966997655143599575378409554417616089229806377956482213469274619851337707081283376014801578476969362817979535141357569735413350645217915815821285066139908091133654038338929855272595269292182950170923828060052353153112052176586801813328 + 73666999916079758059564745239259401325210888817478347637329284430233756847046053117159910334173949823900983458490854092886464115222165788399878245721704364072878522971340255776029752870370829074260721358629460985079615390993472523741719342257052073092392161449043840805917297229957538408073912615306116589543 - 67330692844962461034421345195524337154716122261371390913296452047290830428704136866465383131889403784510307055419865328276142822708103122773135946637639340337005453931252123593665429252108313438531217263561161087501284215898207123934190658712437075891591218891571459820695372829366344273208579698673328444303 + 52273797688126387708938359030293977880809864541333037699382488411661534387423078734902438123034812454115603767158764343277548141600119351015444934455435294133163002024608045389816145074448774080800493176308345546779629623117918506321234597885240361271323223748218470222507898044442142462808040498052885092144 - 6335234610066880832744775251454893164769364483694435216304695913329555913669886492264632597063275588900712081422413802466502157772623026252358930671965785363498059064176256312993786239596099698708065612873697627542922022188608910719666826305606103404806857101461953500894019912607554943591684260031233226547 + 38165852501438940843423917229012175987902379386692972046031565694884498576394195850372351369159442645662514387464127023583398385935986851768132182974223032187387077371535299246744089301082590018066222136110059974302461117669985132799597497473229879529754785455580522073296755097627409073521269007682743592852 - 26792524795990164610400947564771429186139610824151708422818475182820571768734475553696278611364126062693595229599997799543697397937598834815070452051480155236212357060266336229657474562273031182733734402701163847735072176375118037965201670119273318469529407634125750108921003127942091784106768296844130459777 + 25287943372272007312274284816666896930381511086649345100675328092803051507836491740439559974098902326790180799757917864032492540071066898428629981905995492027815452078561606320418814469873439610623804781754009144618115279691820759987884929040760637166154933589946289073085460527593275775171180127803145288916 - 53915331455896882841429883800318912671030560876955756818252157059522059903209935338480737150608730658075655118701237701757297076673157737550098975021158261558601130897881253185270790660670863110221435234344727633997192212990375873169201181242189216874293535880178498123070071491767706937436826984181831387232 + 58758217518307603633500546607417839914515111595680596118301008624278554582869774638611199090939662961465243159060410183151003135185078903845459775439051482994995628910361482518459036281213165560137138348682838659750402466702683508788166803254769533422274814586602147597582046852327535863334879744606062576815 - 1532829115773247855236920423121878046082174807413723337357622719053347920124000553751013573672809147862647687339855589128113115192538473680707673992328173402213875905821204315535794884311798135129100111675018864161816083306385770937046687670975404331374254127987145237594122079703516930786739151474398768154 + 80102594781486480507353602397232544504319177544070940258116271508067587959367193586759737356862117569192852730155044854867230740396591020003013294826590754037031696475599272452501319460702859663685900774428782269167959065521220886344597838125179465283072984546393889331279776094615974937454506599604822847879 - 27955077568450835821918343956489280638679354805076524349976946199940045922916348819141663923633205351005506090921015797781211237244146642483536827026739026370494141338345091926631799204244593749506371062913084861049708178205075644289977984985218864327654145510532508558911048524695202752975025586458916199910 + 32949614997982179072993810934089293383224288780273769101234709530132558033363451890107451264890118378360680515591420538750351645681219986975879706495756907159244804519019349165549880322890189047359462435246444173771193711431751368262221428910843257840247623194623019474909864108046637157333468990899165995374 - 36620250943768588199193639246119293349522788422578584239850195580714783211831169958398539672464674224414344249605926063117729831050931933699385987955180908267291631519431477623661662495106171022040410221582651320554367391216383837260677725473503025884701897012105870386933704920213330836889110791497199119085 + 94725540649082262121958209814551084630567819130440806087048886417460790204900468738466167168540902465688218167201062452886685139166121275159739039918588254360902532281507539555961400246292101993356589992674550411085878125180985300807570180574865383315833931736606620162835114986251333567834506752523043449180 - 97506260588454047029809129448640049019420638542331218264940178388634928027033442853593660009716026428203660108956975555766883262080858663993541040240655231233021059618013446833647311894301419714235010198808024651909308519897156974643244689675235474670215084473166413892664702946378381455876024161609811059419 + 92930304077939281857312355796621891265343960928256823528357628670040460140150105744029980468070547506411740435641263809844090326715810135089989065220781226319476169168823943705553701231639144050053914641406488706598491816262346576332112673959770597659200711273570602587352223997760050650668358835654368125110 - 98651216096740003575632190157935215424068285899911798938969073593555594475124529500113521943724964353951336196128197861320820374239096766990975245358937561111392187577329043282906692338588204744697926573518265976034283993810643788422170905394399476507029104193443573772466591278179680916767887488140340531984 + 63179936909330251127161814782119477653922731507365936293439014089563525909234812322853715526299670621261353082997951356799116623820728099427581722120976805285789315919610221028843155666992088462440701887414972931270230694032690895937588606413191153698922860674536957927107917372170895128713222683391212162424 - 89824271251307772719746459687635143798271938332389982960764084071895318089409310028130908172351088775341888125535555180887920527105758344126962706929226985874900749056065668313611727624245049895565524237493656435665889956957791495416160394589171015342326906780967327004981992343804667074947439244843766031346 + 27958028388417517923531031020545455025108524428454762614670893231225059051049989153788316426506586975657602286668711083746290610851368932615943765392541930229992714005344518055692876646899458093158002843794130586658034413743088255232343634031152741015649004907039787838364967520443327450948035166850927368353 - 61258214872390619367542402463095444835262511326380381550620761930346736438649697799053341842560700785521521790923005640955871171165884587336824622501078226030506328759920075703339024046158316558127128759374855889036822746956340973548341248049809119263691823325738085621785646627510899685351947309048207430110 + 62890479836510057564648180776795579698962495615107094118812347481615356475916365061028062777866819589515712783082389639018980598546053837391921802089118893767017659926420512589093076261139574614799598760388791475637824942087667883815224980651929740098325099384457940427216079642753757684714597309895425322002 - 19925108123349266558799701317201230987153381326989790147107964251237109731042200811232610837583445648527202560975034827990794329020499881031828118301865506515892954344226304947142322189104975818008448517819830534722538155096119824997437293144986604457670005067000424471637405643801345954068083608595176709783 + 35994553990493108103982245652832268373864532207578954702116882101373505399263975444755270547918829229034092302482375728258573460566271478649572901752983166548948157187802786992707774912074044340861087945541960690844299717009046410158618476230133852511515213872463564825521554909323800064004521094935168748264 - 42169676405270668223355288286134236728484048912443141821530062640908019457895828717513784461376245944968387249537687085867749934358280060371979808678308645573473192733407344471543251613312338480555220776604305176516158390273251475354256346556471880259618530962104450212445227681313219616807714473298323395334 + 62059694344751843788562319602606585300215494035037145541623605939209880490038632346322773976252371462599384841723525916928441241981525374093121632694889541109865748465936996594513775139020713528411648938269303172108231073966147572305629829424757202616847244444868353243717595239834197019035494164468749860931 - 68336184237997630456122621548404240084466794394936377469669467629678344264644436583336586864955591922396697357302796934290487261215426647057391834697072273049264529664362101521624438912292920790558974157421837118217797351200974622583676590340132712155599389134969980574797563301934040477413966214550233742901 + 20350945229899262837492845498219622780374197654575284482638994536653715513268358768795337606736528584383804440179407391804821745707854547313240806628001890755997419558434713891069723829252360841925668932021718975747941125000853165945106390322212237948793177603400595162352793145832798752500071301348099057482 - 69859175369109790954427771105317991692470784765124980645422278742609462728271746915962494562288061406545768699611106615859994082142348272823025751440370787768506709759788932567700740436824773896383740728310675606764187666648749512283312014798735625529827947218112796496586241841386766802985229444064430200878 + 25010101030125323572132471544940370607691419958769826500803126665513025913038659443464846293770287299228205942433356682334658528465213269597422573637114645636187318537347120026263650738188179639051772483886907596035649240898517247607289971514364250407445320944174959447258408277913663290626780513646740197686 - 62740945917966505510240839968465099372726158606554730194157319348601974085369400963917317698470501674892185284888912845400167032094425343422266539823481739870615610698284070995970889577235234661549039957197282752654446656324901776749421877515882849208308202268388479659651608879174371412281753803571550443909 + 24872877361807859268467930008855532426402880462176709452352264110631878151209632355437414603558006619452023491311354865149397392864377227221142637500032860842903272478654574139842403663820790073510393196206506783892408617658612420610074756685380082468420428688779866008215107845426084964281021610360286309952 - 75415620671446900477671214887011483112542219411457277072082448627305979441328778081936691622706326873339879268119536613885556939427157751444150114086060641690704488448577325133226963300715326148550381008292550256298742171805297147413131103725874018066314754832058864007068509372050954248286705313913278262641 + 91808233460125179992324555623776233445099543236172112668029173367320092659900296788790538821574480275518805562368290136379898719428315565692556318328512636239176782650592725656024991293617327951046115102837518450864283108888015075719452070211843986102416613654236210049175708880600997024992437732944718122637 - 23791016932497373915270531114903629698887176470331085991826837011556637950415557439061832749297581249655079422469306839539176022960655053301251736987209625250483319413575448924993398331405740668311773954526522592010121097050498417928797882645762602276034041180350380880648709073725430217112072886480965221054 + 68909059960152632110116721058064146268794785819522157928052161410965865790067115008773167958705592971045030828469178976671838584119289179481901877697161389986098603105893339258593084785314752674685366508536195049567923926572462226498648260615354575555462430640604858031099533132281251253435660105037898171394 - 57816578711617868066375020095457294923811779118150149662500821362273720787612669147145298878278689631872426794434970763280446097905873456384357806640269860495469042792610743722681314512304359325281834245238061265286298688663772240977024448509012422237587750804441581474119681087874112388266140745253356086364 + 29890505913957751907132842405618979854283574602640732894036490638090243146253550189345447179054475646564836533380567437622398621484260024972831863629690060033168375532450903322273996716384836090657669415823967283291773438338088475566494412898169569982638475702823249578715206063862651434352302964697105640618 - 86261456474288769983190528772178245605490510346071889037775388390289855014341551618967134607747853864385543479011976535103634884642310976371768525025326048470167440514581083695432097791910474134319489779776185099547100681685211523097853205190771607160670635862898267717171057084612929058542845463346166690827 + 29345911718851136302495671420021172701425314718486979678071595367858244334433445848826990251412973034499653958316674668484536521100420520082691566286290891349052231042288593343879678162255392488938778818033069970214873038921456644317723908928310272194859921494698990793001982977246644539940338884737869273624 - 89114616896438286550316539922746655800918093138647224201646325479276895349009248015153497885947627853566256013503721637452658405990866047528599809091388536924230334887763778715842043482714847870841356276681570338177575456770531476042756824685415176702250787669046162093092234421127017605311583785141048928561 + 37257977592298620128800785325069293761048180791532356505704991569674890253759346307555278860950832118234047254535971169959320268729996896582465334083553748545334794762526748105917818118456681640374842689077980842482760830089015793153958269080551996503363799178700030075676253837103009581087341944219262888461 - 77857608435921189103154056407096754776410414488578564603087326339522380450873889558219295069430184222405578334794584260135595765864047605726691566938913000797297995760780545890065113524965073761846515552494381064434946359316038897606692845508751677581350904411455105040146834995333323232081545501885112605811 + 38118536570648949490949237140652966800867041803283578161124533678829207656052499103663460569134862073013669090607592685566119395232561634777359227843200885453575666528284125912918452323153227900614404878491433229152674203256678918530171157444569115272324812451691505714829096083647880152846330371789099276454 - 99290214420279913687174701315207674233739754144385611545422205204246770001548084549388771701102396231037507439763240786302803378225243883943043102630581020428641161432448384521400224890390244500224670675512425925340055732651444019050423235773912592344049067881004728165127532746485417684319401623447670689398 + 79690015774009574113761277359405908286102274075139800668990431692718398215328085284268802265615621913069565787397454935231226587022571646734056580508484409216591269426195391182124232189533945317465839898545932472579071435402701880742545311889245084134113188934021261743249843640653823892446472851930535482587 - 52232173876289558327386884515207430657055405891678630350405920749562783970916494792208379061776375354591921811217955092845479620862200787686736467460635201744714246123416963264681214817822433545437084714904778563269818996459393332955959603550882810914064755847177830324590042616119288663093124803981029855002 + 56579572947094592535808528554654429303208460221080048409126362363063110899803758531747292664163317776726424293653392371579091456980660118448123271283324077775114060640793175652213187679916363999193689052437302872529504642779798458926305293679491150120977477851823063019976562320564537970556732083865326015841 - 56920193629155605329322050737313527483343851914065841024258959646470221423118528390352126456653936807125283455945223610630453241910809773020621064755965733954506163587347014749160071325491373742504671945363480047272471017381913709674226959466531256556248035449411828861175901919504792800434373566177430890339 + 60959157804029762199386484971573196180455405497226247752368470674344922734607185971599112767079092428396542169876236214317282003182226534370969227888865475165396635457833684190509066380867133660128397927764076324037948130548327200592147169999542143303058169666339242923595227943165991370402877136282021431733 - 95981313413021842608827194971097496070321450100623343713262057581801544671147375065460892178014244636722420389887176356254666003012795380853898069622520793522916160560756944192691141640947413409659586744656332654522246791579392672121431560554467420763128954584838549563927218329370051467586463252137696374534 + 30386402215918794733169970308283778272740409638846948731775070139351464809749206683917715807223540096081114192048344185849821954693977008256619036844022536821196393141283801971840403744460114017460155514650873791473596262489313076544822142730288324885704456605012439585409920946511114572001442700329432234243 - 52089833046568419673762640823245621329220414409115019669644097621115413980629290411144964878760245894786272147048116733070008787807631502129507395280674404785427227012548988322801365308136293196686238941595497974398163332034520748323700226729847660842529736115551950666541223275327546662759980647858021000503 + 77939194066691042002572406970640835527519680914942925652346717666551291763538641954601773455023640893776551708553610295891081619989102585748588220398087756733618209994312792821359393135810449984212361976303056653207402093494626986344394094846587529654860358327586546405903214865739099162938491758868702547755 - 83714059028475772058848203681919901688638330013485660019636122910166886716705665865652621587735156519882090199580611166261473962021639931628962198275927447078782522624365008092352660109971560593718119037458876974615784273911851114253208917712685403041484492613894053740106316296161575209306964263298940129520 + 58653409841934328718983197995116387285782801231210258309045969092900601924198156211642330161178295961094855500124801971772901898820326939904500439939231850229967158851479977632646461545413800751453972684409827926000218815881903901645252192197956313561862498858136051347699574850253093199646960100013610851278 - 9264989361334833463825543487206889067395190533985764224079675520410805549872201156623582442483493847988709058405468957423680163337596501994131880709867227093401490837727007440232624304490800449561160800407360301139915987691798656842856642930097294836188560265575965243232480156085273610615519377827952892556 + 71781219289786532349364200708005378526343865677185157252507686092173179880273475020779292365911138018596735965313105690767018239294879078386004606059944599034404758877139535134239155183656461772893337313288367509045955706978661320082714502861263957651547768425175404945872190891135172812953678733005812295424 - 95015886498986001624820938425805035545068694624269653715508746490589794079719068119602934957672331977109937266821077596400190951544404176680354205345588176119661822481206782664491819267476449725130397675472350597183863015088761354675450229394095563154596224867314477515524225698586534080188868528148707927556 + 60553053145767853554802612236485996683011524472947727291251814167884473818059433101547720499155265911716590756054853551737786690552601106566239364098226315941213605091692325333298973103716580902896793474931063539534403736921377950962508102443853705548877555818156898485135592104904475064427334564073888276606 - 1114103790634112923517454782196147155700698085255107393324076344903859460920982631116541120395926479649285340151579675760037322007949943344338708781485952169228181740664397448661064060597032166795756547667311330341474672767717813199279238537056785668197446254253263064889734634521244505976829897725240064299 + 62670964658929702818415270781042131686035476710693035613346673942339338744428040989539539835751057990504459773159386409188969761187019314636675547119866820866435605330246615350336836539374846630003274556852951968247866786250694012076691171217159625403552176704424909785286159968471267163019128658172612131317 - 34899970006786694384344824032648589925126324524601482651861620743157242015953069522725165415683143999743687293475249745603927932376600911518739466105796435272711263862046263427138912683475230107322761979958261170538415376634478295059252825067201506217039986577953525273226226075098484483043494320133329070753 + 93067415559960188456665187566674161630188428302572053383791744815482497132210740448105523026350445317574554956594812428326148343339722097337834570816441162083507982372315425532253076371297206091082586224816336910715673201544081936479355186478041696034562894028420289514533646910360072209760618021589307545333 - 91306003193522190257824576876616542209969975767294205617365070848529550954592310264945785162507143211996717329652654856365858867007717284003238858326292876407832684599777990632076361787756577819591989643355161973760738284131343932928225879531449551855903543749491642541453817680396283566948169414050428454662 + 81484780782245767981509165809861309600068151527283492136075245392225723145604946799001200580222504250062430388376399311229645390703295475907176296999303972098272069651920347720085290233901941958880703935003166402784900105458598497802163596917690963276401924413291247976421001641480128594413516127306317668476 - 70512783840306497539930190143356613806013978142335077967899653500231720349265801563447983265076894761963671860703265875365954004764009631097860271715343568025308027791023940079074983579429919397438160025458021914249084145001417616093568538716821228489148370439644855321342550126191014296847987519508846807041 + 6780685354472841875846988817253963533428534889185434277506819204247094735566105358031837944343575624848414747309958425021572342509142861021892004290402536223003883554621337421180165581168040094492547053723337255242872425900561814541330018346806295821669408584208311191125545252080620930950525181704449787601 - 16935087673416421504521578284962601732394206825583338968048172066867910686645514774464498002873890327378966772064462064343521537877175981793639674283560049681459525877319744887148783855458885435261542706782593731523924429889159113504618605551288342315803722896461985400206251867601535725452047588788689257718 + 66339742824877819916036821437181797916554565663266653493416163241747171307650351016076729299768394063662043957727767213276002046424240345718522404468938798494268999449676923583959060689167383987445077540823551894581488916892009774759797769242483851658886828362826320975976798722961213106354925446549964919997 - 13368446961928366861356813724167190781169177499389931298706744333307056908818961967466958598935889616797092886431244712888105475092862701461369241195583410976909303491476465583335790506829998001235382647799898570775951959555533790014876972718908186125264752497888526968510511165561413846338184786227380126715 + 56128336581820256169270808810576837804372405550721009335138622471339970633989972396195787012103837252215463333851233587418537639670217125952277021097178821168943924734020991521146114146266317765487140402737150882650473223067927951323308989017826968305900766060775331117183465406987835210786433634285495299236 - 75009733922623167916530983893835265220557221718653295016957948392972448684452864945683886401933384046390537191682681840801947887098502948661023400026842129729599188979299018946064951502979860357038272665711827699725600058784146900394808369431304621601141287024668795716986405843098738994522216558388260179733 + 7680884592759509530602929629489209022046537012344822070709986772384438244262813076652481004610224156356449923097940695233018099586315565666889460107543940009416298099089089956941557664385653654599643937280862484348197491384263225489252115080087029843695774052230482712661333949607967163341425376934368241101 - 38223202309739114123210160330335409048512172274387690589975453877213692018538871033322127372487129007737339411103636738893774280291438791542446557606557099157145297694078243756306744662652088441791260570158805752051716484615579365252244269824711162076215114525827071541571223200891980028874446999091787382651 + 63500528023019741208343054429674504317414890259699298912326420887224277257484209654674741267031589361435693110622621558423375057509043440552137867757174899712543330635986925195800369858743196862187733877367018722919222676596524306297273655720721992212429379792289903313205148354537051818011478037325976014704 - 11241633518684288098740163064243995658367088285236142685375809595935677723694165639270360672464270192210679222309387578107351922584996983793708842123708420175255841993056824501504269214721364247625712760014923377569602245233957257150977322093106989179529232312441740563818491865500872030693945850478845570135 + 93840869161494417661859404247945393080465483430870324348683598750215404104404211057476723294863283540226629333375969359022296898720190281131731546105227763111776046259715000666382708795984806146599562223742142077477377739551482403127571996048256454140066791519571253424923211132063444595707192954216763161896 - 100320006923990000923434786261712635863585886807865847950084918641447318232111403834047518426475225286009226560347956327951101680076714902593324261641296593395029233307963225133786772084014963167530486100018582248039281756656242049528374012678043277181892330734711571768607024962012385489320414970184203046862 + 28972484088393245734758575389789726276836541562348371895269805377395772769334501133777945538012359180442155472521078459474006198957545854289641718850954979367474186454994039502759485222967420870878843107929381049886001075489522581527336040067843751260877172292064477226135404637877414671933781598580923136771 - 21160226496435638082596917210056796554398827754465999520724848325573789300373873304427479625791405073229741024375155772851937198726633816575797881002770320084061006810221517637077148710920999031270918375070674200791170289774646084857420847482136043541012267029032354361320958713186242923498698749049457838230 + 38396387040922244892235710299090199709704484458634544697936302960119441121103352260283093078384318668366085706736430171768722771233689798886912923939845175826039316623585794993949096827695420687121008232159732031439846037698935567790689317533953030497025634681691991206806030522113570871429102073820480443945 - 16436934931319940798876329133959262990250401886833712514449102101201102295287345922153058995288728178252713844556643459426046377721723875296314141913388240474712696438331355166065326218526981653488490181699088994989230810485776754073385660102889831474512433771595215173463737863964836504236958677056108471916 + 18568980123229192556832092048644210853115903475003886252628724079194882681169577081415110785431475787746129018252760109027355813075576562234031398834928543337950227126228657075368144677624623505377286720871645789345840909126233783071529897327150420443228695599714054273238985390329222796604013180147540059760 - 51147960183268558736099722744500989680043755314965248752561776756931477345040729790856786011491599660781720377961134804091493752469484953848180614912828810129525471087757573512723553876635271640209244926512307169489459959771186770932965775245908462013310045346289617996984205304052164670126147069918086669795 + 92431976839323109193606798074885128354245307542509369458165354937166874483507027877880306301472391897233142521102317269355778476486763795934298163849283073739146708177841098935246963642792541061930159997965113954689385574245352959555533045596624370854879605240266623890540780892391674610128788990483576370308 - 51272636307517580450256300551031658416804708272075221981078647701795168589974203799959850534783268038461454810948433044742218055190331460417830045131901625497687263447243481355063875507113256685173304247494743133559516130149483164656009999220302253785946632048963021733471081079829225008175295210811933660254 + 4379881052397803085449279395487237539433333167385257536988491495110323972896177201620348230116639975898114628434087594365598884704010057767365158488083801177234181335216995142957234380709253245283499621036432111641029216141961785479320454282736726491142490239375630437067013646352245005244502420047464660620 - 36311694224217209962144088198150724361001885104997221461511914854379370292716575683319244552916787469269907891360869426675165161688690009338443948595127160861087573610081400885845778131233063210883293484042847915195618037455637917982114959599234124541140129720232670390331752830209632072833831740856330055641 + 91922330397490958790890483173412098721085967404258327244005886809709545318043949204579028787593735911100941975314647583477825729643746751693327881356596352191649780458014810889178957009484857143025102040137448502063061117960810303585723615154671726917242800184604568535045582422123093185975127801958904934947 - 53323715303680055584924871049815600790360797262831356029861735558253111208500457336129385215222276328445460874985484085539258268499225670649283294675793054149607579917065339096009817771144775495810692723672364319933096649297129906589785245456669305496148067992349697200334063085977121012937841846875026355511 + 43404109378723709832604037303701705915747107301331210950537790007402607930443327677416872358634484283586276826711599089610281673284766032857438242400073448319015477622391805872941369870444491222575946482266857219675574748439821305647392150750870090688005683376101400860396320767391684565523262971056066391793 - 18394580665154303606897244399422173572156815800111454802214465201575350532885512617703428654320729266141055583422011608808321490554355658679295752690758932104137610387527926861229030356061786053222477049690265812404232210449615306416383715169669754690479159066011443459474697751100965868507059460605280465230 + 75344575359644259570244624116971796292288442352964224989693162097230760623510626681843473676451144789584867054102434008627124737348917357674544948325978216662831657795842873553941297062957794880895254397761760375305138531148059886550217194700312329304422574697677091120798273480058925779941065706505839076613 - 95686152602949063584008456193978131319940528680015102422078194526530263363893676699545136154027190693267845356981463079367131006058586909888208108968693250284429127718405535853708681720397095177863063764443668761431523196448309290012326167732060546836644553692300196039837954232459701699423904285615935765510 + 37938537248211579066014873923588039106173929162675387994955754734699854807720696568564501955968250515400564498630255469193134873518689629554159722646526612432701694623307303312443263660674072090579213316470105799001911269218484949797875790816705822633042709546819757324448967727638109975532571157925403674284 - 33229303800833621177378515293812463218503334287694945474302266731096239726621579579437141577485455150220936927695053535912085901077258283882526718556265217400697793578638043963562729501760129024674620210005382332793278569809237255588328072519790677472281801625599873438188683776048264967075398184820687088336 + 91783158209760065641550972689561160594137950316863441979723745088183230014782703942306662219913824625043152092393767115632386260834397139364817179698712931470273649253838876870930855015690412226629370963270773416276242068020403684678825362512957536396484786754227689991379605685708559633388344607662573921390 - 2012734978969215170779818979939208865122155841059515732711750960584145740164335336290202537189159907526616344491516589627329415627761275582524612859681383070641506666276400814949006590462288410847797659735749224359622877571955430056489239322587871578344535972159813993205825421161372033763297376599958336009 + 56052820536517623550046811297008395650590365483280612294189320282813622107247105061207542479271344730473157938580291405432943594395186432693056199123779062877726398479475109141482931986812681007766626965842161652551594840809014602528372126271608063262144714899968128314152447187565974889498740842764631676091 - 87576423796779468956143320148538021345225479684240149450827821657267104859815735257779872585983613269445857746998623043194333787290634519708840555465702443701182176290397386940747147835878636837196605128919493707717563088396973204857042990963432337334298874264641854265768525018609596646140039773579595672 + 22388339167905430483085249742592282048440681015330696243077834037767144789109591616584418052140814094568823080961884914151802863705615508795296248764941035063831923302324940248843635953690775836594704828609651016758371712985431641827526504484644561673618210249787189926765800712457233223507816000391407802897 - 52933787053754718466536345398233654069352714688245160521885969869086292103327195161832280159107162775160998439178978628595637981896566137181217363081465548164152040951914892956440120459277501526252464482630041464125646381927967250047723585244083282645060636602996841785456791152292747095262664174371336041633 + 45879007145653026899646790024947973870325856993533877287895715333012280155765053060156562771985680318911034590425674121690068223706749259805090685838344996337455755673601967660536347662570393434573273539159020403050422038044360550881702118555505136512903380892186306833607004971052855816742337645919621655455 - 12286774300179914808053460714921509417175134127586064452377557297893498367820618722352541096676495683667655975864271505988472844760489027460981473385686643047477713892642603755669164053601426096332953143130731466709013328802317664931600606997291334158873973690875970845050861145173871511991825675251842543747 + 61819453850338239238241059679359509001452955425096277897191774104657127244871830046097603306070360973141089157281736722824217819089993890547963301199269114620668070622078272652425771859362891476463529712572621186754273277791110445174710939527721327681812981023752066793690019655559435626354140872007090661151 - 23024036113859040766209647137919841701982638470779136704203119466825694913245401023177787047760673191729610763814954086537063398823347595996602227623904183648334749551196201349654493227839978842535503783947762943358331370341382281203012562862267865586902118759964381163374140065504668946172332599788718736932 + 63973785640578087603672493252437607868370313223201519718411361086593897481619868792054257918180845368902353817831669883489214472154268212042529640936353206431737346083201001593943029444312089479331677166772397854266587943289964196689754992645672328059171654576036332777745439673505160146636679521795789424323 - 9382617132306671182518945923552845469542479512416024367884091047108471363323314017169380081186503026467363756330857194702410937339437994529850936568224363770790639783143427047264131443404197655796772638340611982664107606608342962087788871941344311101368641132011962148850149154912532813457717367375102293544 + 72593258294128703654686209931014531949236579693284274329881362291896689562579086664085011840616372824470344088233506590232303578833603871352657229344170117259395769238926602390352582313479556224403556244567686425404533686537534557247591550978064936090751571490603099598733252502230189490273658630492724928302 - 87239282803070187859713761089044416068391028394562581913573300014831933310413797137658399809289204604807491551557214887336443042691421938622918197238608959401403589719340386936876593347336794507243758581049389143935208050938409364686861841202817227976753541940163582037242548461835847824641317028193404720328 + 62809956951548016289062981700633929135411300135202381881733337603146497552018726179455561924230625060815319516675428290749456591536947244101265187859845213718512963508819345661948322917846132177606980242830403943186695162489040219701841349059561462814756535100111479806305837886881558088070690454514062869260 - 57829062485810337372164169630014683556559009111178918090449507865686916703246009020898696239374955031083366632915694530162144571714542611403549215661530276059588227365838137309630968904099354335176049474298990729231606111415592284562572236677237826731249959152711150480153510074209698411059121729105407294917 + 14177202335140429872479448752219555121317544277476425528406712587996339264103413855882383315134800257125521968531209807482399980741002841548722290635542208564874246718712912376235682722198538976883745683976821897805257618358812594697224150811861489682888066014191699243912466280142953938249599873277199474970 - 29579286543479525399946041039527345882786809375400637958563807189502803238316590393799862160626130486725976559084063361318526487173256779404190377692479897066522112690340255445604160507984544259087860523979149460143823718947812940624064404640481373898217975970862282099303206018900405754216372826222569636772 + 20568852275610186478503774907838459342874837960891684366640488238391705454824928887056132684644533444668367465747676968492024529294466635519524959351529125506068927258359801719951818253747685508068976786531510862202449809302189992106998417980707206353909956466842029941107913159900025097798848123273143429892 - 43497544662344813620344746103212973822476954869886819113686314396669312723083509777089052613696193891456649993820537671830668616990595692548736048313713044957087224516416165990621141561109737761401784947884202315114631959153667804125069967522681889192449546361137248607044483391732253524957172649145673939858 + 36139863578910284026725915724952188348030544825341408646888804873881698074078122732671974935700347803226376935361247567155403767046458616852111252807173945415192079378822264779485578441434294912976099779392344885427230833718618457252873349877991084909632514076381264174786997908205126259322778226916228210030 - 9626519181362312963515744203981102312959262669067472375470977331937122304869865390423361210253920640450552667252657835046776792645923715455865479661441408883885126835316334264739518584605633589319816477251061452161968513104856221406448306353229275060774424344382904508324506477924375324648509898968975195029 + 3768353098946078220394160822531990901172551124518413787866628577108407412954911420423105734474698026320353522654126877460988011341765622068025631340056839433980728071181377944298963335441021211078755692144565387484030916050141842532661221493185232119705623056594976744309592537984340956057121691962831601936 - 18307615203715993770028771537138096357798480073099221531027679932735379676978409247499781922014820816477694548503253788270453932167262192358215641818973965798004714601815504886899101382629917339569236122465067461952421455922956945284472071603047971549210268492835235567236276900448828952871098169520978379780 + 94547850602571092900433592099054794941946474841464542866463215093214364776110982023439677246704422616228954819609965552386064878642058051002880927333819751785199908992334134452448605543664355889337446311059876784045798366219954957686456483905099633215479107191727516393749745116864840474710545102885260611480 - 32676792823688415910231487734883359587311736759803064532972509229880229448339982600464046159162365463625119691662293645477488096804441180651725062027580286569980967534290983926402696551793854999873488253360206080410992879154660959887721089898498218315836410763472159741045794011878404740011298208380251983812 + 23182790883031749005333031843977868468378613078367238644852090620745657498261578318165781585399572106244572191715955857855150548583958829295969100134496975362580285825989488384533293961915455314205350636723041628288515478358633095924008491947189762228402732582605925768573295555098061973280816681148225170607 - 46630703077326097980842548980870756039112598854264556931104961642402755737756021443595826777098765316305890783497734327280243571624547208891215953662248953184043611152940987351250417764906840111495695447552660504061307199775149928945719568641110889089324758973803795223955732129180562280075762990308009770132 + 82067869670391547359618783931755426622078318083204892762605667026519846040256057849341829287655564324204102383798412755640007654458171670287046936798138616663751354904499964279811562782348418684717696480095780260356469759927145834355792852007344387946544291712818600652221522309796383112146614905230739087032 - 76139064109232959465648744603122563583531890961839706557011033672589625212683592116246288498014900777040994039289886988875509018844909963371997512523617604053875939142262538030355574366828202522198330879654415964696251587319870980998581508391775476798896738997181360961300544673030477410253836507064597389292 + 94665053152876035693771729470678859609944470792575957508514498146673534580652142218885418755904861292363529277737379344768827820582484657936904676442755461591178259437977374963332097892779437076761036937399573896266864062654753973272363893539323897716812589017535254093601241108956029146246369193406136508658 - 64083090802031795161049720009170398874749654888386864434261856929509884394841813328926503363714533232336188860507671609876537434980175808384254920846607283210706556213599974332879587952883901407534889289583999629575716323316240876426490375319850408250930268589790004716023247442228146338989167304174087191049 + 58817502425828958406394945196546258211094509187150967650764086735044073913082938391777834708254647750100232737825703322685895209405108257043343439885585344866623318251654541997117125531527884464765838633182541999332008252211666925786431610908430633892395149664446835726048044806526202245736241037939113275278 - 74653705706318446463864337727991020311607007903852112562935860167196741085992192729089603170953721545517941889722666262532026079101378510657743827926762570166234110644906400727990197762034219741411771335515257715341237828305152678560907672732657274940962504263054823281218248278983059853879890042162656215080 + 37745047291170159939481470077435906653192523788363408909941823496659368298941862460632702752178953441885942688717353544141345331235694073582518425445494278550999566840900929527111501650968782705645591288053204586132182776070614656776672778087272099772937023827617633864329816772977247256412200051554475660730 - 62762533840968310691663192112197286968566162636775920141711586932634791386543560757701072800254204416414750499465771941684678880679370703050806623109125869563604393431339348109260331596272318509065533674549908896574541797064670173635054996322228262518023498585283313687318813368258722437847007034107157952230 + 19846016312797738731211136140981693594311089126868873619032237858369813184700562117256006292984983687306963053312177122080670879760649925215434762368825651478832523449539762281457627405707270975360850636783612341023465212119967049049626030577222694953939069076173826695980041212230758350566732200327820113265 - 32437296992393766570108760520278447650847761328634564845867248665443001591367070768275455891194142313649902692789673428889479175882305211300713193718154825548330392730272733725379376599003634106531944373599943647593028977925113905995319631847295839416751103389152433383392255184396896395742680981894410586014 + 2783690563248958312571265315106235583095580776979334485725916847320177872992744719728986534366224657431907891583207108564903794434987883774779492633759159354114418029616221712733825828896235540552978569759738267951641186607261660704975243339820618546434886377140625751450379507666924407671630677935655869872 - 26567090200370491374751220506865430096955691081240476365785747889323344588473681095087165539368466737760413066631267557999737974970264302336655400699634913565199699385974197773148368010097792092469296528536714915682672604096003802729267098698851479429316421391272075647084933712926857947119963603618133705326 + 67068918214002977558815050973866242448059308332824455898252268459696010810905615036310056379596903803514529431881065023711193327212190606167810306149718525468600580683745229978183321074988548966005653689780905742511143100649115160397902870524356284600829604605061500800118410358027515681319225376002422493683 - 57557338813553234804483195080826449371064201209071343343082490106909384330712347336512909548511791204481321519025415186663539541430553837415906716753560550890919863710329956943694532402900545842914299813547333146587837118792959389217317040119069792290542638692960362683521492273457977659266064830549484424232 + 84771511224883070161547283107760584334664039333665578721123725724037231769616832559273662405089828528348902685355228809519072271976319690074059523935158266781825933027921681666426853405916651795507944358108082643942524415320548394059830534923297722781421186056081174838998744775444102746127020548684876331407 - 13117094606471506852721360013639523870067766037030406379694171790440106608088431344732929563254693763778473137937750616565989648879392546769754117740406743236757251489400400653818727798640747821273743457117975633797469051330964939566546667282810348461487441896066179490854326120964701869126617387530674077950 + 69561949677329563991978846295773763871461814331346542958393346158756268692733023318018207438776579203009553569974488896053349496746121608193258597892028401092867450514090124855767364765357492997001220877877664272740154292669069704260652792750047399990547798377191901777528722207673214692191858921579313356470 - 46708344998779627196855740268773341604708308032348839007819128089028501816266066653588018234826861659166051222029154556995001897752718485376573371432839637324334135790471518193678369315822051415705995983977238564024631880506175974971974222743395413525850143976997367988276731583808411744552019146131477439097 + 84701936082090735694047690301295850903053250944708308185929424273427998289226119996888016146920383679847229889074091152610147143791955237376531176432222571669258828111680412852462473380658396671154184942040568777770036357681719177745702989843812573920884442162752406912125403170876752194660520760352348570290 - 682034666727289788524464245119876890666033839794925812946701193637672807959638173239523216754911903576519169369838555274685349812763368640002930734182959728938246235857147820429672711180424124592926332912638352900718761781757935020412186188704788947026472488328064489671786330325841297779364749589212794668 + 2312230876198278139553587277237449583496926646874730069566577616872447463689680939799856651882979079291260842762291834688460807419207617887873153907764000811409813033277935924669494037253953371945437818292225822137378526856574299014613604333026413847759301222491805880690494464114151013429779999484430124983 - 62148988355548983041953258736052005177418132897632718140554815203424640210128420667410576957577532401536494887958734109182854868935059887035109286385855012836583129090688545486968003065644339738976453062543975558037344679479394606058150311979125776914343178357632825895909745630138917757591626407968401161625 + 70371979293890841536749410515340561444883518014589570113860624494182003173909553336412475270148479505325650185431490229050674924015304830073661718506559321070497618931869526391861891794091136521194997068124855336916772808735302587827791142342532519204473345169001881954306019843510179989636986529246234334280 - 74968448496605072657741706535485084652167402254265812954685421039278060237843175861439760882294430622459945965609666168685857164350382200878974539561481819979460762370491163983561220355725224043574257452375520359505946415833559127788678260249270708457085880820338401010587252868205702828584585441652194620996 + 82605229903148128580586814679798853107977480966745419306842995355376844334570348936171901956799609152518278291428898452802966882995858380471145125327199654958715048896404463878077856460574771100316202366189923086594093895797227104245482014828992181908891346432366951766234379117512023391983804354740636815582 - 65384944595069068131436799862468192398065005708964958641077475967034104090943886847182260728507278100980278291167898449800963696258988428431443137686487745502205612269512948447152159373507506411910548103547748102070304305008334276453406800186065921826614152700517231468322667252434335221722236436874917528095 + 38020522091845885545916238610430714338026712548213296838698114195552800203811407221774576750908882744559344263702166428559656141680708524732752800754480913325681550326741298379001341173374756146805998188517092288514660537770620097230309520847839690138238494100910791095129848598284951877247628469245092353926 - 62067668632438709523649366169680328866138912404373624602870126212004102592878015629509753179941814672300265450175843811859301315069383891778762665329862812761695307395146067632249232323616198709831423582603401998016817935104093389565703034930296800861946169511918621503623045857367738999302440790005492816762 + 77977304484877525342053273740556783776260443457677011598087070714227203831631305049542799377120204137470061344731660738135427559130053253505162999571504204648110377548526623311764860031746131573886429123863029963082655701390273029507629281731678692185467729424226785203844926244644678278890162991357743683834 - 56534093460581007688326549775120910451790788166266799022405131523498889057974052662291869766992661643013406273526605538485816409020037556990442549481684669068057739296201965595981416073609512728228761214688298780754783152017516707287709316029495248365902666531064939622047818039815385454799348641843214453614 + 54259479197985590522935319816120357998026009986608723714699095453023555677588563791526427529788474421561093194817028424802666475847067374184732059438163285947017098947212441698950714263724534381365727955009444760733290599650546294679635804438758851619247144677389393834458971049857636704486268786590869255510 - 27960568976971644583362397323955745897796424814461089272547720419623024098833292974140951567936853967446123615504443969097043097472126696209452452371124490891082933279257750312659077252170116306898534400508999123938606280904606125241463658451061743206244989538241142397316479511501523640917446185136152959830 + 51487464672004219167397380159203764885670657972767167491536445317442486109221833275797869102932198744387522057049731861864413501190353661431134539881799980531196652361711222832516699163324355208865573731977383673956478779793235680869087650920024793874322322897261634486404260402666259327242844734475839246777 - 79142498313185716246068362753394418051254435899173136933301497659232813674514122325525530044522438675627669805802366826449116931862526827479357540774512105332809813784270148554052931069981692183456753577992950385420573359238457239567626945504193725258870903484508234761100192964775282949043712426268934053545 + 23891652283987568260979600708514562405654164077542422842465552355728671217919896537044805672196470750021346969207401642223017852855402070092317892803430466133949407915381475078472569488582279613040745295021285115366798891886629778846395595788735291347192912172379600980898405668091214372020909974279058166759 - 15250744106355799093924737180374030758587425171652691505763629042359561264047362737794570913647413844120577623471609213537958908497354092371796175053787969850262108893669852264764542950032420932437095236333125773091042488387233443539641755330925732083320486568110193579161959025921623522275480485673008719796 + 52110546933329236705773894456570141991541908856520325128915814026717822969965438085992140659855757897093796201453983608470080538130609302770192702811327060111972194923512754145396731482687932121059809725390783560403585809316797016532233152483665804547202864982641440009812987642222581160068230243956136424470 - 3521774424756034528221038943568303752651962036911981522967776677313221278034740947419019990685113943676861022373545283368833561283679756011700530288865975847024712581193719726989466146841096177348450104745183082076519600593269013768757904345925000490418208019890585862460552895092576539747300966809305620874 + 44622100117435802892653716080735092851641239410243658383506231986344388692061909130299453808279329943503675941890664533405605865431067444034104978885649804714090407621655449028777049839649966757947337270524073640481403245815237119074320375333798082866450524745816140329871105384080079725755836690957731049576 - 70976002543370810365886938011658399185606126035886839647112470954835433991954425744729022137779770516829941784943351792986190477860195537823954848153345523769618173268856995611691840673806345684847862231673282386723533982400523167451633483094629699777394852571789355123237126006588257341729892992231821894616 + 82558822848573300470724696410791205946112476867365037951660070046641882753592477687549394203610785672262662384382725033246905066204547465418879066650432416293938683069538711261770216966107189710318131558996495646905608202349636214008048156926149674402260919051646637718031228397317178938178923690653774307481 - 21354792530022704023662548588211397912122128431037073512953283664197251885901806462518721526676774826216506145596842055686569964028525281716768252313483003070131303238171195528340162116458003343847219647868991180552391538223499169826614947712440516608233739853553370844441132437007545337934021967502772271144 + 73897632420417481304393157698910842467232232693472064393563046224094693240343911735397699015533976989558388804722225470961297340752120871781536913760689451543260172527904763187874977393661016106694625892333307693434682332135100544980234797753290465492241903725089975419670744141296371376414925953672375379081 - 46441267571798537984935813214051039074285367086742594422091088239392505520666285857406899009511407027183718878357093626979191947921987301667466525257254122071728654375212502065639881998340201706655382569707347675640119710920643328037898351689681103883712730564999240152579681014026388198988289809491247657981 + 61464114868871124599786950025859868162871637726212811157551840348963635763534004247680694662167253193334911039757022064012473074399018668466073122594299136075216430478121185423785842392849057381965641245824478037510846018059045395404958009668458240159712270419396829997597707201343497393807177817315941745233 - 96875668581306694661729032827891106828580836829703519004072861720568350631033660118847692017999163130439493359255628731991620875524198960149957493510419932765328245385469908260410999308644740583104803191051744111002886262442870978227962234785524467888471999918245199665780698169224066597355562436352881086130 + 82987254729900465883906796538103939015387748736770331946472650123168061996862638355512950072164538380760959712200552671912629545435124099372763956055471336399025502973363565554281115078633269063952051405592896406747001059701784558993978004898434438169580212672338445055245344324072691724366450695194992598693 - 61342853004840242298308686200850034749557891864747437992476989478847612359127317384484131800753796398783144488213073847682268914640487428121425801693473059998426881687887164556389837476975824872109762332808384988674710754085863670096211082107284915445741639861406982484062393516450696414008347120351576187097 + 29948829865539118963410172506684811479459672185613159209418908732929219043628427249790742468071937634770967541111612570315540199410290058252452519997156676156385004080593331942569738450805617600994904207802395195200101707436517656099511129913312283507841496946252517472085211191864170199632238051545804026048 - 2030264011544825449605996568443156914184453375930219780211472855678596001018782003516926997330711421269149585214899911729757951801695611304461497735695121753803470806149263713484234488834101702952132283041791206225689132315478267744747901624053071423327453300309471152231442530914362956677246672671001516512 + 12124870479154312772353436301890081025651988035529747864338620334293513100796001860146858133191801943081295319877792084426306668537520477275539723925587423270146656622742859391946632743093834061266602214899824871260380066444857886792751566590343297657694157195754787013843577450039503290253739282996688026638 - 85801631979756511240333964957157343079809539800775193842542918149726368624802750193978906236262689281148350289637527082711065701310714773129506995743735057137237058633564087639133024339191996431043284945023763117320752714135591931607118092209889554159881455081209010028018775590216307333949391610045162674533 + 92434681152430848671671236238621488729438799226223923040300592669863869170801267406827058115782062746500850988824350102606773493807222992148668580025710564757981642316889830190234085144945096284305241177143877289431245692938623094831369428568856239716275501290595990040949507985021811838671912697641806546689 - 24384958748608836570670347900348484825532399796119382334465527352670574781417643275939567221797815224426611066361767920782776747936742530027281868682346430742269497505715759067265087196885192848869326246780442579506355692014466809807248858260170116666000134110342060049057848184964215032541199736767980399816 + 75540881807425088097198579093361123953171722054384633412655389824641728550394208657976011149529520888805723198391002191158514181607453438779867796623821469218200844378808333037920560824668560366602199527957669046921033823395785754796274187952145245821503055893714865085015506585780034046897602472859794134384 - 10961626692034526102259283210451566974396601292692050782199017721187768849657354707503095285114719891931376658541413474161037186902173111007578126467651162437501847458054623322857654037154799014809058108089259025055847066635982979737910282382264073921782375742886892507968431780771536817879251089080120000577 + 5129342463401582783159341280339403180665661367157028112526066743774809930258427908184974224567114837648772711789304468211027727781076826363207529941703901433719650612113142480840313152050067787820381712567977542957301840481259652410910623707639868123028060340722851250138504397839143931799241210776136184504 - 22858963911885166224059395632198681982428014144762350252906159081306238137683358016019243802323604098442335592892429789423435782673025712464644589859920751143815094010993947950659196310445479945277431296536952414201128790501038123595875473063733805898330688790571241416249628668418496774167650812120198520786 + 18939759269823365690379401855689990905861363473377363232092949767065798547695842643171683502314494197376954751231241619396698976144713240846872256526027488219593060283607788051776705813924748097332150604832130099067883064111978832717029623032585441317567028708162674590956829105171448333344467781227583020533 - 27122262440006539192102747249818962384640909839165414014290348369548204292783383692075313831172621577231805320614353707295141182204658313729295533697797656296783307617266036890993954371837277551311609120471871061199155827050487292532129321724240401627698269277159630482300931583788400097854466099695157375566 + 58293709024263061937199493519852315382779342954379989702094570528539238261400682802736007025614835466621799377920418650668726936222894309200616030784901069631013904923932692101671519609808692217859246763845000931740872214152633486229699291272324678426747940552289374971347603144925949178310482080617745567271 - 47193721207228795059110847180421646537085667132839048502205691989167091757664657451151014683363877752717702425855225672583198028188273730642421886072870090409365361363225796807659339109481937938210502587601694381448303498417085423531838518091466217391576296291443736015555493608566463322483218047670240252193 + 76915086027679700408777330412500518769298947803187363022514029127782100015894067980969903089011513398448140405051057575280060790722941993202706155747972588482746827218246024600139306396667954611454729813127148896395730765992228824633279960377667498091661510340134988993718476016401256458232083854457724594703 - 47916777430098366445279074889272711432590258415463356118444124955095145855219689059557297771585615058542350042770687982342503959681878250170924458160846085659445028732287670899358236212428807827294586408387272780265414846126246229544188098773677361259581782212033183472688862546172726404368941874125744143062 + 58088856560436875526469206424441398148413179492624223546370040175524111771410849883777962952963654255671041549041344887271723887535719648237062587801392310190635901381436965047333357802789276649742901124891149750059812905221121564019744725319586006988059151505560048270755138039094229209343997264904655954845 - 58997381729124888082616464152767953261802808994251296771949285040984897502893644835427230732518726814572520143133615441947901754732234157644285297495749620339664655590532746989250107908050778762781337863233732942476207355463524312282460972971793287398908982597170448999793556212998831380306129977458721500641 + 56716021252420646209983821445512215640561841410984442091035894159849934068338386371262582497522730555723182231090539472204808726789635767070544610652470859979479826974880734201112427699948550629382297424059255895479643039722015324357437510232769972077978216636556834046313809989043782998240568786084013065678 - 23798826764222664604695894129872149544605598190152329945258114766906430404000947531989657317940470701125462296422697431795992434291081872632883112337371545828917022449875228018019175002157669668035707792048381844592954219676947588201200426132512591240588167761143897820721944162417120507632010002425576344541 + 4540186635519475774794317225271010411072752052252193650839681377660718651402012717645562291415602437733057008950086527729511861449460645408602156406761793719320956564883342872626536480597094466623690158909090792394762918454444380859694303025938917945654317792521667180962715338136896100559930127856395348146 - 65913838679258011235526677115447926459151122207485164179915875174146788557712981016174036802188571628106717532473916955925422432681436614783507213237221299441130451743174131349475431728447984530931649668318325325807498334987824687859522895088751259622603985342629116815245921504976147790615418661991241156563 + 54115649270092464787357255339342907995124374393480176331545883558571581064996366747668592872306074169667073720845971869740423502598157720902667715899822156521971888707545997809389564587376917503341732692443586955071374125868178759177812858054620114938250762589905252883853421197974509139034583368318412566432 - 68591097533767506799394988611971819185102062725220063597224256764320196140342493522699183955965653311727922692738246927704540476842561228595854897007692313258196962106188693435482731411241940418807816342406578576590015101239727172847899145190634327055747785095511209735254397565697280800010346087935833108582 + 4181108905556690331624582562817879161988364716821467658731945926799950714093431169742457649794163627813333201530539849916793295801580156092691589179490434488247049005264110165285331081606448264654901725479032283154080817358749919402675095080774597088398373423398570114138396879531371642409213866255404596565 - 46115465501406632962934697466580603749721560137395979148108032938098159856141146507506520333978325910638054435174962734727613644203662164787482200393700000126904900024918606280545698495009494253168182334658925641192440964862109587422706173145791727518841206212360581305065515979620651528055950944853137365645 + 45631081626302531307168652868374267347765981778243475210789911362425093938229321798984319625053479931372267718517934716630086789938611336216989012159808659797581354946461982352760942732825256962813427996001121693266157603023840797455792570326300584309919590206591239627918517142922887531129331324603496683171 - 68674934401795946014393981757936573324400260120867189005806601260031715512727326883435750586100758772703159264640845738305582721693482512746098290285513959967256381645730273245713122638580390119680306855037216083022379673557141686954003274901199098658327462523058995958666981839796480327666017945384612980591 + 40936471243068624461735318393865650309459061803916364079583555982229736852197214176727116093950414759030814885601364589453596996391550113374496015303863934885276482291536939388582031924030517401889086611354938680360997067469382067034893378853954601433044931180510538333543907010325554199042153290952762949927 - 63621786833109026296801322245997873868717430560525798260538849976441364826213686123192316416669123468498265597797251934292405525851482164090661839960318252957516727246399000948764726602513742871914847386896035798096892990455981512397133704220976332915260798773346277312172188294778868293384106924527510460429 + 89778205305954837308093101331258781876759407143705961086612013373455480100289875405667063485568345262891328877594764108163054229999717425186337082023077059620110122441881137782004001477715835150541941718312007367234865671571370488494045684471602487505870280117058572319305627913950971529586598787753129536822 - 36079676726265235393866618864748656128690702391532858420204887891741288749379656349061192682626421702411141878149500728517792613339292805065164845735468705259180962756238244607203044786181586280658039512808488253530681808772456933187757821138164365869590940769925506936385134268289058385358927346890793047864 + 1295161226513504167867643681131543192872306135825010759857856197180218740348590677566310107602662315248859540491212164595051195095175294389336316967561353746305152386508569649653313730374414834062491532077177754788629483859130972049117106833121601183579631906344247920546590814722384842981504144117519885930 - 72043628152799566487358522254092613056412953019663953547299153092454383764506451099281972879571219930436220139768735537957155191225264222555866089711843230328597597675239566451979274538059504399933793216551330052581892016609933567328872207392746831532128275948114443376564116570151788686264308239635898417575 + 34752675208523410864212501706295011490234935728835133925514119139791495324749420085676212272498133382529765888688333346385516136615338242288113273789780701477640153182919661032448484771564381345121126239441392580395059900119754919034267098523798620864712078023062872277321463926902462427397895708904225042928 - 61074205641346128310654150350506350415486525051125880512721723853105261334278133475977148006035482144437052814741697053025137140393514499870862972767354656619210797465436085017136723292639376388399878098752883398548543268780814227014500244887556761749583458149474271312649220880112430789159366602018970150042 + 65638280954216880332998839339252498240344751941626202620659246099839945762624659088692178634338271721541041579401205168148462014214403772704581703231153957241053469513355053328789029738704753314242349068682059488594284121888694331532652526737460872161109520092712341526512909532689056861448171619433888795627 - 53372410070076524798950710089694289916733276062877648156867433918124238320704597221129210504159496787446654576262543947699915509305447985300064576581403126071087052350060390300370729874135031405417964343514149639925636080875189665184746465704936559165739896433608893210168101157616262499320482168461957289667 + 25546326887869416196305571397436496954112306204679487707048013317650977940305017095401817796951485874125485185489979718646093344610768651998594773454469228933700774673786195454397961200632097112442736090291567219739392946602823204572522082408172908958207757947824647399279622893963406407541660265363506196591 - 71787940778595582537278956784825836657928255205813888139815587009348734108421962183159725116136938715861193274969205080578195575641020286211327010183525430228290973700669438138937323889086856469474485965118699691671295853855646011482897731501678190322239150889457435493820860610173114429059768188208956174019 + 30422803383970205758377987417218462089461583337863453824840575641453067612611842548141963200326309833846820113891902135240624289950265433593972625979580916576801108253132355009636696971228899048297095029355052692965710016352000386427528741721082316447177822962571637721138723569936216621043134038875753574382 - 26904510719197106384891223721870387633022388846476992653652285927508843345175956939882022542492413581848158723900676489746528027246013891821220227661172926170102644802435968736540655585261609301228761093584570693065679798377281519904345674947823221361589871588907982576200868592237848484030041742079130414801 + 68588774418846824026075347074701520165177807217642669445383888222185702764812385739972132856502842926525866902531526512381859508484027983555727244796607946708334007846660418718718902488052816278672382346124129777753620336520285362609303072557343054616215122712449573523551828858709889989221393164026568690397 - 58248199425080325185568644504439776615282400784662466000536546398868275015343050834726494875181721083860800014927228366596112450886957434179625506835860077202061232907245136998895650892151126814122830938353847106235253316136119432319405049457663636077308426188227514767927231166563322725771604310168873340154 + 14583012578230579919212651098878718289185414426839270534677253856992089558448004913221113780032489389336404104060497449483455661568835260780472145848780437525107760742686850621585273515673116908760009199985762345649409075826088927289872260507897314658887553597047156556807237866457737561706803083313717105914 - 45626971347283962987435838767623496006479852691674799455766304653926003566752721478768149746085745453927737170334259903234930067037492436824772496187691224253859265326103080743265465035201397356958018636515445889350558274727431513236885529096613726409851788456977742179402008179565700410374379192505782298500 + 87072789976862077590260629123343008996647517325518842779241265200284308557372191510097929798002478161718869369587507584738631193924696337227149745988547271098801114579845872672146461536736946960181312036433053890558478780114941158921137697998339399824390361388041699235417154835263047174659835463720710831616 - 97324082930804152639845572473743009845813875955927422546196808071300372096397628349701725836488975103948055501837545296810662980950296312830272189649106120053469150351770636142850008830867628641895928192833683094143250533412692605626547524175688652050357194087726494378467747879469510843502345282370295588859 + 74592401327237348205132503246590270557551499937523811457398159299621433073061836945092364178303351291606709287884184680532272868939784285008148920359873235456166966958897835906977455951169993249934270433478995852846853365483858006698512515330522783264019614382564059660659067434270575101239224953994859173356 - 25831291121538818753924177200816713436142768221040280240568010448608407785308507850991309075853333217596156537365326293182927202081220271182297680514415436690640244544305861872402348274676361025801850715781742366791347659925674640277143991309141248320559021735088556452883715696842555268478702952478245686399 + 2258051368382920966139781937640995075390142010181207901689696701855976965997508313055657062261606845071990697112536367765269166257264697176361820143407781847830855279948778082022405663702564425631919180038467726813235460488581113048639399368112079533469721122352983709293621313284795302250914487561872306501 - 50790332244327127831537753770194583499210412418713580658118713508597345151104967384257732485645274844585369767785272842835356066155244426279011167141893267159144961246934568525443104105934457746472822440386593347608415367686671925012261985570774335803691068207011554342195120120822343185738962515389882803650 + 47294427191262196213508589588915163397902040021560114982313477584554595115511591712501144985436982821479742945471129356788597110939028650902314805674397463104080758790745734205786162405115220925337771253688900219995781867222178937495182923511247958583576454292008763434571765213812941607539913201436717469871 - 18249835660392462139784186635069528508612321948088795236048809183556808089708824404120858615496430515692596011084879327487640443115515871432633128953425170793977532916672961104456365558898192189536511191876776650702664601247842059910835338120652914981626322440700576286977345360504328721197758116874687285101 + 87576073209609613397431769565376117076174321294168323091691140834422391524663875554138805501985638317750284398829768203941231082128360738063763435223369818422301971098952471816536405779650920322184455577733247923447571874511794894304383969341403744049474703033251609334913790114459090187503442986021139228104 - 80669067118112857721270237674920518192502090719394570218541248413008160982359380010874135700486656236387457926645079316905625980736108176209310512979268256930411205300955808183677230447618760345078077034028994304812689171491709027661451557984773838052103057787216729391554608568600815810747400043258554854941 + 53532972276394338052944028132892839903236060114682364640857973612992368138655227811085737458006971801390382834695833581634781907549555828978362904903420846737058469090640673375895488284368353258933201014829664710614302258574877334477194164869704816211959981682871005565309849734569362667542567218727040020223 - 64645721313540941103100921557328219056977556419942808131249243469898554600829440121234572322660633271603618314028814831280063349479695651719281079531597126937363144982811297705537063080997156491332757072619407005508058283793367561132648111499051319185447606601848535401242425231347724221358083091181220529696 + 65588478325995530726906881381076036056309800992689552347224093108156791620749013924832861095173729140059501755184544863447335555862130904626003015647435114844830320805104309051461360690056659399097990227576615411253200431564410784087351315242243183177325303776402373716798906596887057433836113532792818980492 - 90202686630887141001230655350474612054083283988455598328629640556103104283446010774444659773118158143540233781623311336751065359999023477354743920912562451040055531977867008936620007627436701983512363280332430559616213472825625867270387033154429330916419710406057119547948119762684384216302157388244548591944 + 33498552547994991046629946974263835733696882413935740043616859115857157044315031089814063139363292495759659813396174724984399951009451295571123676124599092209055409250585658128347445096394579358423709692532651828262352464810980849133962556965427757221370606569728650670881819833496720455107115660145403791286 - 3199594930618815620696519536396210677685122716030262735224572376002723015933909704188342017639935730394853769720469563610722415722905255191886229889330514096442611101015942374994552303308759796289081739948678889095229263116751099074485948416022003395025387773950653770636862543594870965787073023330979113336 + 7238306595712503789470327794049507816665807341124616917695511670748136720725483287741446477305317001432110508917469529994977574047452252573709920524790473657730691046085793093247586768962798951220291813133061883459049177766247193213667357936145175533818161804252846484505668657451702113538009970673606628011 - 15597500579286709373820738717133539036163880839376751957111258022626478060211149308469831738502918710215715076152531183053660341024731263280035522442099581854558667116870545666102979386435230593572150225780762340112981087667935475225505386859920333326709891296020762597139932383358478203318636569341920137757 + 65007593333037846153319952181301230292937445839079704461326983993141210480458594257544922890167804495702299649692446303125955359368403296225475400933832378236512981912858526593101080718758512549355559511986154901323662342388966534817680690089679746263161183231020912589243271034981129943180584117551671014689 - 61599989789463908571184523086912544477986831281639441461162069859295186261909852074550568245271825759152149958766243864449891780793529441506286742421067759963251304503341606899658101579788442913186059901298898745563243680409583813633817756251111789941733734787621687523032418082335039197749359101825051477717 + 91438752332522240353149026054003137955992504531297608620075439584159528344634636777153154074886368388812929983317598577312720989971864917295716581425471392100515641438552944823560523075903164643886475042563632525999757715063613293720704210696278445235189134274229310393595892381771006667293074903042411643042 - 72463432699121975079392595160566607070786161205552991241933185639045905935146591523555283904473822201451379637659648110274597289217459388020537080925156394519467502647234583099050162981077325609969974677250278083679386491193911402072526342642470177182619218139839931509783651365068239509832675494450460831737 + 36025174577980922530781780396743216630727929407399389228894590875349388028157526302251043427904711108049263388253481052959659871623550534494333854479413156130122407244438984198694875220505448345281708953651265152601009347917011621412119732176872507387242819945384645319296448512998156522508589121438115918127 - 29652490227498983783000364904485389985498947089934312968833908314410665922691882614608327981370175363451995864008461060570736361206103968779635501941463699180299160548462312200764384570839866696586147154641528214110971381378987443706329097139080740580023194060285597721460209988348554944534424988082258548228 + 74166709318762873271863256266713147715760822024093896900477255997615149633022474068855376185237871755627516816027340277669283935144639464851573582505258380095030625559151201195142453809756446961289750243791271558509814279553260418092996414505480596651776946877469356137891894724341551031898996985635676396484 - 75342090053000923363032912259700397696413447346118260870839764193835559590756961985956899300727144214447122651870697194991089876225828977856934962953547136760132198296249078412489713922100754169526860360207554459738751265775294027121077616967037742172476744584626886785271587258531997088708888838468191720948 + 69695032529161810012109932928916558814370574767557113911623302492000900258538771749758152912760453581449855068235401788899797025271712580467524531857487106750024444895369766947162335305901624424068969608492122396355851190827360973815472014276255107797278902834519087847065445429643687873248024406916735085404 - 71068842102957134338216743957888304454898858971022467214263297260878667674601131242666262027921446081957300593766124853691137104409007936843124960464324746528867858874122555092054974469830239276386333273106594885051067538564655663960303437022641216999554342234181545813636928277582462957119632201013659873965 + 7916072094984906847639775164491947163029583393452997815169476477264976670166952764377394755709054254685211849196852277437812825346148783856049109816020620645155001442015467801908376310992323825279881082097957356644543394332266818772710561519457340921839132880909511116505667225871094621570792437090487579223 - 823617127528994455476029902729921190299697939263584439050893973142363809164776972127326171283019646040024352238274219438053701427148955955457499556370760513497885521363506840548728307424253294938972831511650339104763567829417676484024204978300637896676949973158314385305583113136123206754562660299392296044 + 27109872432244750806398799745245359325388098723143686126349557374422328918645735588676377353571705855191789680709216803282049592248395958919574168887040893097405715939709124080728471208884237315856987520437250140267577570424833093831784405506447858163742137352756225179572783199233139690364840886251522606328 - 5490324876514091461690775973624442003045775058392232176499411030452645366967644641721292461941606410573269977583405748610474921252503306936105067029172461310325543340478554069712393963927742153598088352646366780549143560244936288175501041688000011115945451235502505014044975014263860980176306715224100318961 + 74833350827704654354599377281948751499720468578197082285671889298981598328106655010037485961256707381342366462415723508650229310438246491711033721976999051919363182398553688151447366503589574814675994987639389916090320692615833927375496771316379646169800947521649225611920544648172558448475511918861917823675 - 97283995859459539665939641839787433905197309709598403683842557176270961195238559381894023676930699112409510164318843669004066590706384118318421720750138144634923038377407382054443377371062603597845862873647995250823756494182160343149716046317782262915436621810122287713863210109326450725583694800776341858047 + 34566441076190455997568327495011378468480972085724655678675485675511611967987263742463787959086546718827749423084731931759155100792416849502405472746703397936089153541334343499649031151169090234545382393529636252727280583254002898518274268840831708306299709593996129705022323802298832216411338492015818686492 - 22032505290286482574215729140601433233239357670152263820104354377511426406413064304287753922085298804210572343015698599343782595519065774213912705794682605561763938059936786078684051890363742723515627982778430472429558461462811312447582341651709000002115529753992350072151594497451705421882919262132755863396 + 62152725425367653742845721706553152474035057137924682139341382879955754382243374362969262798369778987368103520176237520820865966267523167351237919895601007132783085680209101171625110867200937027966289346659010275258659689571267665819143831632927011743588126908028848435115965914435248319302869054036981289014 - 28419118993859704713192669406764375477989782612706560083371343214076402835532281263440315182165679655848665893520333829713832609647375231612290340855505177383733427205411879764344736967110073709480102544691739512570559482644552666742982433007043256405012531748457353047287187037951764266193985891537016333645 + 34418121628023466613666366556177508541118243582609790990449109301563307768012969858298355832810629606651308120676300449301419431190759540962708879029943839408476554882923887535462334917282827768484692688313360151571563677194565779204827004407690427258587120499932270901605840476035275626257033480440098281566 - 27303582953936009898143217022384834661545100723329778579681699442972922568698202574640892005834750312315045637582613922180590420745674465006199481394900326248257362845847312199774185351027430341381483450585389656042055323067494603121011325623953661507248748489001251295874198192573120065680473244714818117865 + 85682676785526507552519589916479800144115195762506104141730383409108359914137864764362551515857416095347987286449265105888437469143409352013238348569953185186598677497917384467899189099925712732271550808162490694035023650560520492197271709874940181738576103460642910246245045931690630603888911549136516617646 - 56959425106387899678516929145491708083867232614687629148466185827902579500969268643408719508279862914567267325235487899756079026816218738906264913165473708135965105961431059613224628055020672828721675957563451171802071718009271922426508293468253306299192164213762662609410405919708349371592245024228707374851 + 2050990117429515027682929230489674861617650270927413536748786201272463130280186538623512612979180210898995565234940214498764315510705568349682324826127580528998485329885046890357461782105323936408846148748226843170000967042626461046526171217109791762070234203351230081574990934608399534249473710308040701537 - 64878997863718219464673723220045407674561275222396308317324333740195712191817824981300062383705044400522487156131061376809583226694418562085364906203571084328722723382531292586953969871214756311747499192288304632142804428973242592329740448874473262205355770291281108396505079033798866633231801478678730721062 + 33093535271994325216103803676401607638233204738973636895592832292839620879410140808309829247074563419000659581369920586460424272713236455339454979881038705607946660139811304149293439023738770737039765948449495244796796936520401063403889406203127321789862715496204795763097485203413794319722811398557454729245 - 36895865935257938957577761428007808968579639133224485329696246285767131095700081712454660389099159983139023456136537832900665612160275476474007895776557564008434676865954416518126359978895630828129675216688110228851754685114694010072985915348918678216083301459193611453503979772201970586740995889492879237994 + 6040110782940977154794674617333401370376324032997658763318770208423025676921716324522723025107180165424035958120558248999444603992581384513849095100581204957114585365355336317880984134162882685009594422969831043675596746749204997204646954648239837027356807891777838064920002061954438875675043630329379686281 - 64589834826765623951220584830551046230008725546369391774076267354712431240117467328509123955308201703098029393701605054982344987552523245782335244192746089049229757555449310401045658041238986294655447804389122864877218228853132032699518154775050138773106748194559678754058787957808594763881237239645931744826 + 45118058848538899539514831520787092197472894647762932502320313410123298184872236691739115721636170522900404344278225606357632798989526224062106336576036772491284668359316650283530408597415531733756607758640544554061095997722501994827240492509821119700827256323424759850801841230929913517999579531290919347661 - 16039255549603912334575269193873526930968411452972931159191055147455178138374042043650413456691766420392296013185096119579520096888802198581101072765470689401586001814391328314991496259494992341665260335757365720739089088185081353796826499616045288124758368578876686150255703472150004081883969423988331867681 + 81487344073213948844190900042381627112789161612926255699306051387625069924845450921551828054778879783703262478100504319187717633204690639413249647752558160056288692616996610725853027105042878302394660721051148481025370033625866315806308077537164504721289646045302269108273422064664948478317175244183970209357 - 46118146835011208876603078407260058809316437852884300352389571637283571703007662668516272080643695799520686690439388759198161478139762534722355927133669652892098010616987312152583225424357699519422944556448268397281430789710742635588782287199415989041293395599312743087263667377423096692516212092192978265270 + 57037764864069767413406458071743494336957859049090940277651661686255511368666733116049436343694538963767467835753860647815985252627675614772244183123313687567691964903330863257915716409089739295210557520022537926153321464598277512866195119614727662752310306260220142566922516017960540889400118008610856600634 - 92902001715961611592605123517462548617030038243323708976838545642224452457124967197613585367839216576521449575528297761372560747574260441282058856092955661102673347108341831474145154951024605512719340877155175622572367695422288478592875503979735827091576662728061902042618021810505058411303233495686060330958 + 39056664908292191442682533131261062485292980392450051260376079352047402893066955065905811181695655253810765676975452262753628905460265669105854040204828455552274045521972953961883858830396908372125035304439847689543841994076212898591568346766875537031830621068365066016815915457439462511398378802717827163930 - 64800382679356787327312582041318041802883346870634013486067227280614441252910771087576404314428154004002013146777245644124216423193088416644138689061968997596969234328682248466957539129613059597974994211144794512729467664151467816750258568678106271851870721111349831264747706742730683645267285621743850546043 + 90503030597905445445674308856040898487061161203013943782248483411758458018557693462211450832369595291925804527385956238749949732368335692725530165710731931150029407803426208911317132574502680456018032926188807438066447205889326497201358209209966048900047794242347734941455778288799899378557037038496350017434 - 52241655404667079221761450411875062301864442811176474060867344138875682963609679696757430398557377051077036663103512267306981579822128925748532215365799479914050563391596875978692957727883526622241984163749482634789722828346522034541667432034035952290647030466390681674976973184333729312586204507330144837196 + 2572775843215978868116531658288761079394205198039722591243687440021840432761184081707677500189970633238343189283791100011428916321827120822442025568992159260366398656588080927342816321180059622150692654143504011600920084836731977321577951197121695462208949699433586880500806083035261424705056715145571630979 - 96832517589555504106689757063053022847161128947151229511250661312911365389855704203623638590986280853818979194783682692678046413814614810477384929489901705808505298222318691397507312458483070599287962566471781791930144372813776889793659742004177940197821018116623735269463538172126048233315106601214144949810 + 48059213836354425781916967577606157901690862274174406276736875374040506963423911194719282865770662262116778308430984128780392068259832147264251085196833907781723097163776089742911388842648833204069618752790615152281349081220597379970121418600312064346212560834138487981060407097822558802956653108834159773603 - 21203704781048285621474591239833404176234937361574724670720341564926422594161854402502694888605851954222412139393066319339860863674888877657286880738428354370076527683386527578967459691668519078011750488820203990413469222149816039676497821536601765466413557937352715822742998010799193299932095983969522866125 + 79590294479535497582160087445872588538858994968343709037390904709015488435860011751732352100621000431054184286776384213028424680120710179763421260648636848447094963209608240954346575459229522299573854449138194905408336546710329803183364957012965561578216380974669844906497640491411109834314778103962822568119 - 12454806076146852860091301609746129999715668573371501472810837937391210170068583099572477329467033134304348442651043832283435111667707751286541371970559886561936867931168472253166298698394399205265043882706653966388767747889321221908534960488719467134239902989014225661426400693598235320609899932814931940500 + 5580928087748377109592052170957061000297523380274443493382233524157209147916488847418498185795266529063725604788255820741994627008731988603640506865198762589684232236543311457163958476828794597126382696890115870407842261714197471099737815120052721429710073868612707643366162680446811562884028540125989534721 - 3375160568295910055428435329391721448009551099275894473845762006966146511067852118541974817590108502257478300673090465253694291398186718720422512987351179414115568675112748458003940721509524123051611647174048789120759003501592401850160175331035419140293273181346058478913652612808968910729113698016494058594 + 38729596840827068864626305358505968594606962714369340519218103281765292727289552811861391468106692838273330785068388104555128235026121488168426958062081784975637304538976469084186425096779994171966838622731435064406555820149179220623520592904350264815573186057977696269598773009347682993630132851543869498924 - 34677399637555220717034619462688167515608938115814444772860960592226827886816152556116882731396989135846672960675741517420507410157439345398350571295690792383802443718662869350321173692741432049961098389319511069028990515824544842022010240606707097922471697698514605389379215126404084179005374441035064990086 + 73140890969050195895127675865893668336233182712320138420813670166004644820535818688183152296005432888936241943023314756549181711591525626740252190203668627992715389038923388347982406659419523164446623509054763930386099428361397812851463504219217061608545494649983391468930153104634317599255954602726746740222 - 74188742711238340402526256996996849712957221808534735227888516605580397801158778073819713896736910436381399144897091134723013680044081675489614181407366924992817579553544630085247048584015783745492393302765287415658301094386775583533811374620250731674008682584405318472907695276756332845560896699662531266687 + 57552413766771738983539716273207054096119792139604188623121840789130953151634759434518727049814769356648711892589557266090642972724648376166699477215737404715055023573060467090917067128362001432520519161659872811847549552813636342053118727041693689739355193131522416492441925668407317611051985751109621497408 - 53895386207022836626854646215712775444948885946868348329573967034085637890496755987218035644185827069967423236295730082368013226613892327881287189353970196273026353770992862344327599941916526243630349807786029275793236297446824813374151112346716133154746713567781360287088019547216516791981209117598756423158 + 23154187139219802567072210595828810001303178702504618130578515848820245657567929320364780755718616309954997537435482533608511839502510143662592759385186393831300887108660649530848255278850532036967965649879012825957161220318267866991048170998947459505358114435514496080485910815470029794698185248332391087990 - 96286791563127318586770867601076037021305851540233298687285568964905932094854525578972381874188623030718558942599517298773045895091166130572717462516815397337069277199110434471323920332153357569175085269126553840288755612137930291001690781970596834762871159175353408765070288567041732543185062549099472856130 + 81898602515005203619649127626034871073369862007540253079038591594060555181404393365902890868615782823524026803435041302531522195978414637001437206146006597947245168082989145052529436778546795206973004575307190141185485223064200989851555141589988426951715202088184844403111504626781011508453126066059226188141 - 20533752463846882439528968410202433363844957638375558323647612736296822544122530377848884029919498182042358963667980431945480477119901469786622204776365009694260760815968846938802608152885786637605236947065781384658949449293522171417146556171285416422258192903021514373688008979490020017937484675788165093009 + 33117630075189782807087051115967037092452180132389542486741435183763098175627785947329470225570844445862252902836568646429741573139592734604028389168292169485602422243947217539341875475339743279434828125229981707580012503741140172012177152703499010155581130483585875966188981607346221295916053684750228136332 - 48490242000748797499900220667904888523156158199804978119859082364881621674162423835736167713967689483129085217259730819475655523313046858038543467544944962697390217091055238594830725563938751184084293702686834144547638568684273179648891211539139430271593969100207057494303653220441649336497952081580535802728 + 36786989091614124874477160957203310671418664893738195999790669199135537996375000600125645966625917494427536366086344649547638536156371582688104680635450820798303124785973546341160039792208506920349942730120284814130717096145070099171622406126924416112393748290554878509661498007820834292303482269683424534424 - 14348162964055881689312842779378285519587766329501691640158098912032601784964222720677474033197268617050134735446268240766313922530455601816562459294934715432025171169059885297913397473694564491731863903315913195804679412946956975562869879335859655881578655611132750079758024847334791002204066232135377347911 + 28438204697765299010512766956461104233424639457002587267574242975136104350083275136685780640054224372382583699776891050728553018348686927803977988943016817736211404703740897754272111072221511587189579173637883479845597806272116717925538947124357580537598793585269438494731955977767705661463108180592737066908 - 38962863384416218112607219049871803143299734363225947077979521888886179078430873925835637886464793086747742029631493635917853013131298323819889771691656916607254639208054485811746440970437792185298559146173745332475919662590938329191590963856513279846358406032641700286447073575720618472580069676868561968120 + 30180185130069543104127474147805003155626593365470178636298021672368206964823118034190268512184306387990315981485281883465356534457007780704270482427666652740138216799714751556772926657894607541700862426810957370699922883561186849918053610888372501304704529935760785171293737260293489780878112608105462593138 - 46403459851534639603865138032120616128588985321395532304063652026123454502407128366684633977514700683704419098716429604066558777741411476578408330341733904100875031291037989555579980467140039932676688816078190544736581163013173989202635962701610437553408359129120172006233725222392533037045584053031949680205 + 60986317875660574162030605849456513099359320236691339352682150374676749261441580744020628308495626851226954615287753897269328548643155861533676267564127677552945410632403046077867780086552489184847570610185456445371762179364968395532058943299877097800265037142132309016002265166135245039866533188566111210203 - 54006301318125024389734351654138266800812247763943342751450141275585027260707642332101064452536786065493232987021538589244165611487968321664976037365107178522691088434945870996414068313584421985985877620026042902035247412935163178272890698543999390595700894255599983717456281961502766401757904174411419416110 + 42548816541693090381081951529753422006131648804352543682647691495534714407428799483388808101303896599820785440284018589812367173740238180098682153082448798537413280164911575867992607517407234191283905424827594592430213071278572923146299569959042686653083394986828522045126585968408401981293779615807358921953 - 94721215451608954041122355473704010440053313649127995956727958189148883694347317242688911875460874213962598539174675248695917144041911266802589148563527935172507632645309176558519310595405646129763937699244817259713422475809525401231181151238389019830861914621080773395099244232742147723444966356795972128312 + 73203367310719329709422296355746714429710184464075874865262860580015191021378864234916578290763434602511573684961904930694388357669423574644572945951889217089798847720619499820421555429145167183949505110110046626079324361992323235801594421657577112671972569073965855297430428024373883586897687193911275541390 - 58666724309372233331539105203246386665889420491991110181448801863204486242375652027615576985163837953112762563037742765193393339999686888144174307647273114702757475202371738057781960119696999697023607968216791413973832254239167610955854501564840907120527840560688539926006497125470196601834466051365151652180 + 11057980914519421682751317895864397431469007047749825470470538169439169679636121850048258791803267097446215614301514513420886783553743382426021467517045004483597291007376534528942767313520647905331600106614617719152672224641281262416298194085141905458116091752741292447546044866118781390619488597740647768205 - 99914660439713302314210685524033659683859110551783784154137745476285087724691506999024315511427671323093709837689422886896356645359911608447370378996299584205100905952993299041562167536968065077884500580249425192397310249532376779217261505659702091098157897772298458691180653016530336222882105850575245195132 + 3654735115672741713912386129375561904157952076712922598338000487942059990365234910798424197946948369587928689126844429534084119247108134049625917415789630828307042072200676956927421659765951327959154874229810032282678444610781736128588599061580511231012176736566137004335867149719767192188599868592918496841 - 5096184135819790504486529782351855956038685654630437782194186270873069636465393114927680694839306152851369889296353602220122561176167109708798736101617980476850005693279908147641466056231960094984338190564363109142602178284537148329442407367891870440486405960953234334083323893139044546861730912909532385769 + 4850237685677481043740857913951453497496011564644052857990511403448134812765227446780406883502349555243795195798782869265237226520226959070901615474825260872777368456355430717427672756620923472578414861231012919762012179394209235060669126172908972010215137778955855923735082790670054257367383410280452268363 - 33990297635551341172740317948067844758358968209209625192795956344315713091592980470344541094136747461667800615022981588435283060942989956713634476183295884454572653202350520049852816276332310239318201035720270237187352179957353531882899093683078049807912720520499216998882061716179855105223320550665353947485 + 8281287639579301315467182179030120303009476407881549601870888717342368316795093785610701510974405903959602699470937735569377836732165796322108337575822135216734170962638931471908650027761407683913065190254042320270422415975674295815454282517702111970594337754015121108164502210172145287211531888037240594694 - 40136629614730201793623175676087197076073157576219780608407593489019295133884949788235411166181863541177646292842175705796299955657083583637733253393875218413891651493214514474386159589865649354368130520762642300576178671682040372926354554362247156680658027215482455246756379740047208287334448029867865013559 + 45983701394974003457931123189576545244393080539813950870294750642495136866928044420197583133383552436712734612583029170895995888562524440150270668512238216848710825317929597646248811358541587576884551688710632144178721829486824255020748870992012772111467258152638622053719310667742353701327905201740456736763 - 61485286603553321366124255587924648490084067246208313626818467294360323260848230527060195276601635474607089649605746897577579465348746482475526557061312175989673400001754265218358482136774888401143628691545469842305124820867186942470943309431694105283740414993803216013490117953997299058939681506029841584401 + 24630833937846861349428766580116730149554459755033834583599080643874311785465177111739716976219246727073825670033746575523635096700044427506238469902521750391822521580966793190213214329638957861865564673105980001702871203152708482941293017195025899767423950107754027945640001741207838750152509255284619452993 - 60886815824140251819312679072190736765201207795017104434663771063451107269348277533992243611399682636902064325744575619594991321646335133095671641465728776542416599591834018064639154605137305127828436664058785239662716470238406480125824886233875453806275555303176386710599323790647330064675903383541481449659 + 15439934051680094313325546606699020116046198177550011986522491544856021903378968378155155555364041892499847140333742718757365165210422968884441227972068348168838949191505949869569209743286235973755650900425167284367986615010176013842720901652760134931954210690550308532751343657822488595924707429515683382149 - 47823467578315391753256680632787373356948597051249116658504629406905779330191935519145357921184126375154305776586693208859593271871605465301571219523648634865726325504791066232086331680344787820662508306721866371686064452298233763735714527744494563237766621564809777036206710473674753862885945510473377558662 + 32146990916804471274665530785818129466990992866477221770060727480076003875707831879268011152571804579515832023538728790497313147480073985476436146824325002767099562877654409246499378327373762992536128608259156357715829995017076693680334756335507536397071210566351477095043978201156074639945922915452253352769 - 40268362601644646352139497373895071325298521666986756169455767629211898730911639951996196750616570962172033792520887988610402954921163677300770058763187014059708385997675330268300513789453719968291322815861968743958278192132567938401159721652907675167990374009759579845052290611832777657807065292025511364830 + 29364374316862869118323980876212879966434947004819191020191527173293789323658293742542592798751417087661920290749282674495447369715674674654992043084533610462563891457231943065781272644741884544964971733532236429423436897230811076296617961345408587569151670418052551107262704014166880812943042064035585458267 - 60705755711570743503755140705332232578444908785742085394679733343302228603263240945194270344314158121554275377605794979350892823060143278259482302481965469620087998136320102857264403754650070260732865134152440660299664033881788429369847996900751904543533604908639242651807844967787961553142373539291514420236 + 74732180157556758916669400163826622177544615158030427929749079717966852577841038087674737203393464254316499756821506193951285515346710772764306905412476959912805364017828229928184277441543775701945466544692299772735859769675806209371366640427700415178471349803311562703818327682777877495836497107525263034035 - 73318601457893872353051834500425007413155346688313715701575375198783227610991771476963617002496714030468550436028301701528598199388313265256884554327076231397139263656885521949145680192788887494432787098693981025718041050505877113507604999046647670685238578151100097681944760196748942279485203494507559119929 + 24619443726052325544136855846057682898073314033282198360775752510846577889770042734335294794836978337099666686430255547519131708725694780501601468251338143550309772879363160394662386693168935896525594078325443344103472456504823950070666599998039928995761616424111708225614938216565073961454235284203430617105 - 38843982722513123723403961199212633441787391997575180743157085091093619570921297474065626586474381612822324825426501983875083754201820520908723089494402752674961963626043506924936518136559402650019943256523697922285675003855247591513131125440339188661141642221936770772476152454874228728024707804357526947177 + 11226334949627016347109864381824875004431617748456787692432137671347532593630785494901800184710743310934295170825967447191237792187939608151177896225409300464250146258735042170733827172851174796784900067817966916420086698643813226248960292133081532872004323420921756241395731071838214294573758045659570503531 - 29120199283845053494819312015585533809557031349974691084187673966978451737995283490031634732417753853224955609919002983343807450204916764828900719986488740474370365287977691139173575033760574479934946001261433634700559340186752285333398314217315844661772811828994610679682907656332754127860867708443517360006 + 41151672148001452051689252994086048457315358996596198171050210527217053980309605820755695465270501140415663249145197979639732642325020349234848000387195860437586763201234811559109789545718300765361372063294504383058788305168809435070186244472593972467199853990050622344041220828269268645696725535850142774179 - 33930553095586201106984625064200481697071454126445277369122197382503573747622385010702697758101990880295043854182445749723179561425684804494383640060257148720332176590917764815274942692309723812182596604587988941300406512890289298442595580761697697637302795598107418747012231068148875383905356507658734547063 + 406001281493352899013830299588215363430680515876959081968430815865080858473064619934350338431326239321537550103242415888261318716046577946037513151634829748608780163392822300022018924063162180115050872359470119120740366460730416829334110670556474300702959386553030392092658288659857371209194648136884826207 - 39626357879684921968509287746101556344303822307956880946312542745133647760127389142855706475186682981864891995921521727978300754526252618549858874726737816770095845710458737856742706012422229070586411430406826699673632860288576040544532122435508211790011397898985278354849600536026504274492042662320462644662 + 78192834355567090189553285743843982291682149843351541832615939718627538164690406399137564857019666646106658902379961279534987197127710915959259684033305694683385833912104612680260309137129857238569128835295523604345710718255775073857829923254776545116712685139101355839270083062122291645330208913339721114028 - 23256996114691442539462023368912222493344769206793416902922927838094366130100922921735991664535944076328984177798253161498035899870534498153723329133963247449793090074338338839288129746285506955063961134020994511181176627594704722910747156242337433115643552571272458117470479518574890512535629868522793859812 + 38941240975625137672651999806690305613293849971293024350341735206101930199546493947733095041050706744054229364250599516009864950551957408068455213976059058429435168611994392305123871563767173534248424231079697056799201921489717146680693186177432389720723600597127584972585402399094320799817042901201474320069 - 57992485608841092706062979485281511765591686848195596433848681731380009048116175721496882514185549732455211556443017088036110020703473694372036302215484354470610851554086490455266403187700702658800531537719572396549037332206049786009936703356294718972739280829923039340501968217822924829377648180918126793003 + 62317474821345599735846844399317050677546684083503082867117544672975282933106582906519962761836277157557383706274672644712712084162312097794791854797280300696851896303097655106464300180215272755688183114466737094008454593045146169819884353604049741454828051114740987813860210540436978409688432876902194366954 - 24596332381919838346567442806363139540325950156144217955262524194237044088496236392745455527532414396603830941189057109487532769957940547783780732081705025579541984902903801193668680062345061009552685511568457828786279742215036871773386225460483323422121272862741669020232424496516724844469993092914764157840 + 28258715645018084214419386863135177147780186063657165745398510216007008213245399417187527736615924523609586394368093363266321472825356548281640944621459123825503526521430754608942069405279455584547039872279579565570655986120667785753397185075538647714386767215422868627648673996193197813607056771144270145664 - 22328496431600908119155829977166495911112844853720340197111580694799226783986878424323591063654219753100855327531542525529057050901631165507877384664382106058535717542976606408109935077198940311815642750403735922200446839566224424599211362546817261929316623395511172146318436547331669231608207223531747686256 + 77038589441318496863778840233926415393787087675088733946976845041929331641042289384338682082333215350599294064228864510864134194369677267141919132763422750395483442661434897761386452270232349045649385891606879269935956613023396155075555106421040639486519414517378517361254013765748119633984550666987135043434 - 44444018777164449670092176943232274513478736838370355891843556469498959783532488207996975717776843299035538855382937000169906634326525829580520288789777297478203379250071339422850488161720611250260833453458179641099152966977362792968297664328105035989407853522324325278858694268164539053206764180461918465793 + 7981145171045268973428886914002297721334167254094071433513960909830425715823830498747561349524797547388352186710090004575339328567443542705322533600650833798738553995584721018907701608860706902391738324337930291483908007502934089611198115277173202387124087508786839149735935015689262245917186387359619226839 - 37037432741853642387233761254097028114323877848272422214935472503813257897749727679414672210913968963361326881420810608278109873470832324487942810368525462998557918372273967297680692033127038617822032251694259331939326203575984018609040240216589752246603596217365946447544739133789671498672718402790762134223 + 8826958580710969409571526057995335626546438558875320835678193987976004645325728722360719664144767961319930302671813619834982816595692769922919475899267025484668408070190783908421488117001303703863985687414482166998401325531620536696264916222274239264787559315981183839610437198178475761574492382454263699086 - 16751580886781148953747920724819330819661323135574269437654476230567134987097108171406798162190752666810619826286418316800415951193870206752362738287054407218185195952061718281570583933053745833350235711059555210811080066919390873636559891689424598356268193924914988160156085891090582077538585593986733943876 + 43443661044010770752723015920663656179364108371562619862318159739262047700915757053217982568796934934084667791689445604222135938175293010217950100864180054539470914578221657227617812082634679781321107516068795682510218218558639984823776381096980936903262456979349710087286681322798287121364193888350362026014 - 37381967094133799118991718794219229997779340676742220709436726583648904591225488168903713770438152444022227911030935542641850224696680072517197596610110320752645611697497351188151625523193101827071854881810961702845653549363233956491074043111214777537387968878076630923286030874755025483900001504950810477248 + 82039830811312043114038534043282400126365995337242720606253449677465999841155825029425299882260378064722566654189478796491216048848561119367464048205846831321681633445348640815062492751711741790317039014727409626025998759489983292180422214312904253680640404679747317853641937372805837461671687207945646350150 - 13495728324355931022348166075111408074261810086897043576412202994311114919256941702336935828065568301216911964728887536317608264667871077977737041651655234804542815723529352756261073580263653313386421004855613860736060032928820167955837138897219387047408989573196099646429812440805621355633745711963496681343 + 76225686103491014243437240833699337874367082043836500572899503111699329308988320255986302861677423489790251197572753864469234257270546587104488194483732444366966920436062141425431909566508054894609302200292664986043430419875858072809638917963594501272884054306370414718958162144933503086284502433191019961495 - 6566231893197106172999242266245183097182802950866452277911079938522434117294916787365467080576114941018028324228748086581673825236050599340179029817661002103935090534667254967233772074979662203935506067722201998388962025018574193127178060300934174238814313843728627784073810232237859425038685922873752222599 + 91937010648210026611177901529318692953821525986843419677943541677466790031341311352837505651500109099860423102529209058782461054963030627296480548759715812085986895585455446326755939690758140501528676863467600043503352651114150597989775026486316400860049357306167508789444825168300696732743263896872074866215 - 90849415848791509082772365190889704701663563132713785114457317446786508884588390005095600041745853716912855431098389945833053421258974271300396025153028941928049274541044840894389589561177790278029590956020962257114272655106482458571801177852092381565846133701707856812667843763757517172365057331004246705527 + 44796027644629983670252995626168665132574901118429267717492068761633052500311510091210773351794475133893302020887666595076005618044464040069552996467887351197596145331623138356639540552411313967566245845372145306227668296042592186053533914037665198180843904600644884515413174385588993272618112684351154314210 - 69426607460648419680841362729655501247387985509380041898828936575624783924175241849471930331571400867819985246879923742448661560846415635806906767538526051234931632413693195300977122143560714947121768777687426212556714294602488468818042474212929623938860354274282121964633493796387494881312025618780299537003 + 67299923817157528273262171248091740981916110619597121905741353537820285389572837494978583862825425323044880511408705308445581950035173958644740882753195478219040088416668841358700213355465574792871180069415575628064309040329649553925195889296881147975453397221919585366934043363761794420198043721805708272582 - 56575749112766675680700306647345293986150769327199872708467567036179681730195452961880303111946907477143099538329945765824736691408693885135402996258444536147644926583239055108329131391558545622310323443993317777972315051875433319856983523831675012760114587991010146157106864816483994250461624279554713526315 + 956041908142377511836860714108984747188515966741698193762764866724670727187689187145594801832789534900833073991039600279078331327436954087451953679561299272259612238565764635484463701653507643965276029371033072473702940318414722095170216250822784234059947879797424833878834881075199502733591916100753503928 - 55531414344888271414135907417820309025304371172744847343442808286807990554129203054936080478576644543437851249660265722588514574984490856792561716482396685635256642574746881313654241812522283883279414013212903093597624552022138621112885624068149139303332746397407025742266060899280126690826716774308014600903 + 89278350703547179621199686646713855742414843580733841177048650313651707969026486277559415921947950884914944266159974951913321275819977405578579239128710289303610876900044139759238300061460213764547798607265603381456892707734456160150409238340442719264679371101019239145932619402809009468575773101632085881285 - 29893522269018862338048541466739945615584822484173573316474945858745616356867969060685493112929589209702881342789684956148442554681191291858188134668107889246841306903268115455713380806750704988713532751828666699606708847474102774365744800741236776644115448056274906078487340451567163837110514417432866157270 + 6931097358615680062050182587095022047624681619008010321654111906095538315472079989550025986450330696755752846815056391748913704444600817752431151019065434229874566919384308031150863089845775798500828351120995255853163540165402606096910618441584925835990144842497273189367478489943872341100871176761880888864 - 98512985311925282480305902482060667587075186057672538317290422329133558627138633982026229638019364264372515520622211359772410319547655348647408614623541295033128313145241652554600779278219756470785022466923445960102964540170361386197654275571323180180781446173665311120518092695128028018328502094917936608324 + 38510590796507314323544894686267528987119173549403085865574488258729111522587696685557314404548279543978805987216331509621176750623825935740751079731347475860584912282335379631532823424859794069111939906080871541462302555198182758048353733617018422572113885114613049303225627269082486301842773052919295385359 - 1679273604549544470749016283328974255395271174432564960805793349261268491400099723329098081687992865894912834027128769946069419335801225899043196911386740829722811023774818676306364121726081015910583529561476042250230391600270404340698011730866200294330685950239570738784402453991128350993399874057209385254 + 17589922629593351053995923108659555807152617581942346387789885957628704212854197332329447429477824883535898597234792492948107547938470117294796624632440652236954960430580372546184441046119891307738378340847301080888499111857048700934953665535071940229091542931867405768477361630186854349034061222393769683869 - 69123787138542247846456356100479603088527870333668792743223380393924984708029375423947933443392014721836990995098914372322467897727860292766237387985043856296126855875639400018084303978970507453135817399199756263807353561944007721369110032840906696175644735256319909661542534545583982982458626410137158126369 + 42106352592641707790864098657813835934835952389586203229118756563889136564989985606435371543925666804883038642906850238710718119371899985182860547231318346931524352876992349804556698983015713954124145993647284385715946052940388084254231782066745488074562523373235079376537265733072697654611330522992085861538 - 39086919360037836544509042194887797375406789378240539557900198436630479169987187829087259857384688117802364325911677682071511853530844979621249729414485108487571762666908216051865335723771520320315938863137912037711775431725168463458327429091850385192568903011535367153629317410001826406372697496807432082874 + 24576874630568840824243575587010019718219869288460757820205160849946992466449737334768290070397003736103936216152245345364529810545356916223612020044168883741360936186163814101923803079223748339363382787831985704151941641449219363507272238785000198124842786717564962845679487361524055136360151258791472366484 - 90016211099870796539304205360895044117234774212103820404830832017667221934007024171066006625873187224581846067152388351012430820404761771490669700249413764342582322601340300084707864340946708145830452480179794171823398403509199202989081463030260607801533048622337666510810214736596291439178134817131382764820 + 8938410734935308711366704825150385078772702789959702008412364487737692892507358292381247185470814393900786673687898489472585838633334799056690320723516076941012183452401375602999962294754465424276052692732874397591001501021137142800055035213213880065865540632156263257941813616100527344637033896721209507682 - 72108695516776569336297213534518584010059281772289108702994455872143254661443099229541388172042456408169480085848489548550069746155667357473512103798131268548109501628543759284740436095269319994320555372642048372567118567110062516273248437214460247819709049512043896446252942088730084425324672405544887507198 + 20545498474894153934195887064940927002316999767712619119458713936030162707189764188598885698036680289378011064133634121398061889721269817320056583619916030721426718301821387126916868264997561819757974141700242018507626968307922388731470451366740856124341597478690484861920785507953876507341737558840014828248 - 62839431867281115065318730405454777948066170231833797109604338587044167557492160850155089599475782311721877060202602486298897181557684015526131771820652057013562543232327480585303792881013886551437866617745422647975541930200065504710844812066522629240617865005721915875952759216519927600315295053089420492961 + 28954558562183246673547459056524894342786814333766054847868848461212333176734111283154470739563823930518354518025025699731343756816511617085721578526100808031064425766783144925648549331616580657406648426030899452818530410120273316421198648321504179969991704970029682387894480540264445105657908453650158954109 - 16334201528446064884397060540248892664378049764902530657984233879947364079200546538937445527443544642441123450666575149671730233970335194578385108672528784153606135808589265138230681831360761677562611569027348554102647122874739400562826573897102128641148362502002927719903481079176679365512712188088569523234 + 40108852345262112044865037643205160713930459058512906289206810794597899567367282953135486429600151329846701004923375000524885034939001970908098450829326697257289014370624201936960446402340539588722380206667862005989136282419916842698075611342018891707095302220945495551026635609807464709910497629183795924159 - 94180083668873019203693082207064000495945752258355626258426388121720752508652513442675171603094376079766460718117544300214746321906528957133004692053864446864013859144519879290725880715028192482089872443929769294309559781942030843989311664260219276921174001937027605350798445555859615621351144638226433754261 + 92154255077124138019523415830891969499017624241819812982944990440136997243977467620056430563838739523083674791658267524001291410563408294362018945474622726396121873654795461940798900774156824503972115115532556750509620327867334214989188740942697519265865104017930585168742921815939706334256628969695038646570 - 82730114004607106200499587924264129789810132903137933281952066696010181812327827015632076947232364632680085575056630214312397102267813585418891254705301889404064242015101907218179403866046020209081689088332865082458442474835008703503970578674186419500629727523279254642458230615322938863181312862616967029218 + 25418194448041914317114034410068878767496038314388396445156663877478048303481991826899893383836551620119022684958924543870682891403861371442760482790855607055574984883717098560155929248869066982177301313809823096792037059694364590316414934627135217391603253124382622590426538032293543696645344169424634977576 - 91547039045568403149966774872454684100414645937506831106525567960013906184667983573961814002429293269817730557521586519629718734613977965971386820475894167155348768093888990730643296492299265333457494205191538810375726078730113687487501955353002847321016589214201235211923668565717614256959786601593735725345 + 6220958945894018765682369436588369604913345072037058572655892162573161880509650071120835187623177569800056848029844849171148331228443496398065482530552032702135953429042034727010205900051194137848477059359056093067783444983202504455832522618765356959926413874014898313741293959850003905233298225966528535772 - 90178774530851231756683753474430706923802654991959552520932392094402006795635854088132136579412617817662083645554490634190763626940860099219803590953827996048115482302743344117436031762064957603430750500359542766181360075704392147204974735790485908729682119750107592951459809134389183046587433144900888664955 + 13768575571670830843975043623393132708013474273521307423815470686668370828185783586296258403796985275060790114612276791648137798002555217219635787038188850410255078140485978505768072252097645423282225318976559280009390278804387670941893522757869953109377238597013683892893176413497278076098892163502362423358 - 84856153985214073252546856167558870788898433481206278057006202878788450960006693160534767040761446682368604448683027854273578557937009403088969274316420179514234965783603315017424146410315662511649595752516909672665530668395683159946770718223536717191615555294273861925735409924292356348679882108487779756481 + 13124826531070454522854555611512478262405502388762977158492770477056349448653649876615801916551935791090786135258772418385986523033479717970348120665352763847022781453112561196504056508837339624992655923437083211214823637876474252760188173674270113359047643154385357278299801226505009347143926852826255100042 - 61624395765918059798629243223223612028744387970960396967400796042290677527151675975254946967400319145134382790561664607567740290417176605514337463307700170924709879574566291575931079788688122228771742858937301210594090015905244138744661839634867875891934155711949245556973305675983080565156049894933287646958 + 37069201038583791856310178248775388058115867077851183656165334281709623653726584674031902911827582112289934150923975011843236558930568285494450537688523553653377637806109046010646925830174957223485844287050146415211263323889253962335835245519221485209616243884733136916431883381940730767668886229062021651089 - 8013405165158671220640528116306178476828228937597899181753832875890429720363850415864851200300545150989861790247172847078129181265297020208081379449670948680089996244984697406861546961349726262349052948806836683918559315858423085351104752039071082755254278020811117915350108211353970123284682497796195260258 + 38069736402459247173549796015441160059914267598346823652077573791185569751347359054033757513884150030267836900729020847811849250802729455126585962895973854819543501698396372940393830662166536910088456349513592277716397565511270561227497079188719150851843414161859803192662983377679222908110931319501913258883 - 61599992051731661890441539889580053343867988447791256757918442833917430042828174149974093829225975743555355229632318207573928011978210774099488340159355458438846545619811184942711496236142931089770185015065899695226637486989547642577197372297693712467231676662095795940405092519554322421396481473739213457996 + 57844591178332064561901137940354242628876767832060085082435293189287536169746601211961805685935505236377470265417171204677182211253077807194434862957836218235659376128339278334848567211699426490495114195733228558252305491938823939507689743096997421512107154507184031258105796602235223202592557139180340744506 - 27066432701620308832697138752998660015825425727288295578809472354428109043692745588510717500069772763877373293073348004427372226852667612702234834855262077050137777253881275442331512346620524649101867506717916338890144359667713722476947365167402331991145920285097973390280612399347701227415879828067192375647 + 42847147489513944805618907070768337524744952754709879020118573223687221879533587382528880650039160609073893146697459507879036184783196385786857457471559375342162035339205195451126984907810364013906051220761529087911371617657855878203096306240142981259713338687111109643261324850831626925533342832970732216889 - 39328935256679707394618376004424473497685177623491401537221052301856148482923979837738036731836776537653815375286020321643731478839406364958395224680596656611722968371825942250171519262577000595520027459036921829725833569060624342954106243343381256836409088712033130628539647838976678710800438385180284579218 + 79067627351248114631657933794530036129462363023608152807868151357250866096895513479876516613631553847878244046062581987114234236135028665552956931443928964088778138554941691142410792899237478516824567594401779462952671479592919258602515567656748213553900073187935644009054386439491651922236752829133377422961 - 50233689126599496159313216596566316172272493067903420923315921370119144155374342528457832890188981846226614009819059984030350697717761264772520662958677008655196927497688902859204024547875941142948967814854396030959185913151463468793209234089502927730923705729320181445831776749344215039060093003893346943394 + 39292026464787052480493333202837840439501335075811664722044918935638445186924450778798433413849347316625402813977539407963780820923619307305327793252191412144824428879788421973688422862086709153960137744508327348304942670916309304971724319716116678474955957889143353234405675130293393218075961661209907560816 - 50938974485139688069395521207097153235548555443922064757927142276149508569606448276344847577933838458395886633877979934077325271788901749636307008401422111852710635534355497845210743737692111700664117075438174780170811461983399382557145110832043035123725966539780547702089439041320420413699060370471844170466 + 72500340109902378531262234171394841845018552627777833327591769287280684782918949978679513726726132555368344524929359594338840398070032353224915550700666900057014230467050186299945864000627125186381320675825913809116246491198056974763736276195783674072178123316481050142879924717733725479001196434062467960668 - 43020260117203300707100718506487538673539973683565131679101514845310906022468876351955958310408717845332950631956959379549310388100880549022608079882964961440066832556952320873403659269603913042635849972476266339955507855827904540342228535816560038621228697407862482010405200098977848783859554633255586414033 + 268606780992020495942300895237784108698679978983832633052861357863769176838615710930830789384653772349275060638832209556286158656983028649722345399219749764304100708432674855336177124236523812989509358674090358837149739842251957654361286598371791507977599685162031831028839321122905960151254989596166925444 - 76055910099429130560076180564332749004982139571856888091435059341734035257113204507060787451234929798756178738569892427929436577137653035622282902318813403529491487775368752925931973920748914539077709630931976830623341905151204615723321482573570540871481629893297427879649829801307496577310195417882842909693 + 65373375734215346537478086839937025847169079036025790918490674907310107192564176025776533250138766127291939841631389124477655982688808189181285410637715431984871573046497384868825725668758722791800476966812705616043201918091608264632213159543718157312249192480346198226157134389413182487227244181240441166322 - 54346165056565786537462908955245188697044964093883872360116448307110969144808149765282526355276791000838311858071205600747404296388529669269833798226184480486329900074652585105140007939325233234424860569852444728652004069419640102801797697867930069722303374124844377134003499991065414747493538333063172018768 + 24743956540865999470790566102291470527199690459106706794280915844838423753120797927963503524882445397664994860594226451504121123538072746189632052356103998223723400409487953002186649471159930796202103897740846418188731255739466998101254612599039661261380553641766939854687112227655792688997149356390735807990 - 52412350707242377056859116210766030772215102871611239951830996942446370728224491402875843175282625688139540160978947600157735772936148866777238626392194799575376901693446444749463467812985052193090384863080398158459504910397266239254130468132170791522375710168744003754004036604748942639353221187539037058362 + 6300504978385376686627098643954614221970781564000953358510758009592550732835266669586669528505637938868759275242826219568264160208287515959001873377158538224935466809182684231052762212495215999893526510051639020709770363294607968803530365446082157706893129536863091003742598901805777983614241355217901638838 - 82007558789644395554321981476722854898748374545291389182826616188973940462971894537920463521493331203365064729549737806271526556501161761090350488099777410937478421372335799555856388234446552780111569561797198680841724804744195326134977333670766895341023884373038543705509620736797111840951542577129389531253 + 43529831464068775461181134931050781281582750932628303594336617687889579702871969510501922307871074020214903399079258265468865934874717620399799610758587813914227787987941312724023447367956963337951747096307480965405159644778072019361973745204877788150171347919320908363216849723697326181143382111015976683062 - 53091399781059483789888858592092445576961999449419679677975689333090827760674405856116574754133894191377783050317543607336640118887855770961424331021682712969176326605015018254399591234179675843529331052027800769239752289002100185959420802187654468214170519301600650102898390177763156633340678552107617558668 + 80666519466592513667106518668619801086277012957685084427821147109302179534394467644124333202963443829567803327490852736644067354315299910460918596791211451215487946668133039446261914845657834398082037141022191345080559740805429349098729152940655636615057547594237945988409408939468084176995767317955549630005 - 73323452746879324934609575150392181076815196022393027488039876457641975778913680254950338016524501297538421861241895797701247749476948558679279510777845172508765300369346474953248159859585503731246963665049787393729970284461334584310781060231574452196099613849932050971331018689366599353376748012887553458121 + 42345934495020746338345969720738244608673658288060887295920723527496783413615788288976099939649399682928390251798403444195539553401647619826161489984703135123935122515734786842096161051861055218884846220019681925567838462925970537163890756339158537259548089329056269527106687093448909982194302023158443998228 - 48094639840446528322098901453105684947108588827608594698308614934189877299966355877868147410592356702804352031129249252328508097972923878664049051605879605076175385059577016314279273694367022850107416020005282480306975933761918045854193031689973590415787329553085730496617213076870466941901248211457025321770 + 25326506854652866860647054039062144728568322365598678190495616897390371644216956023001868219961090451484338731296238416366810425555554245523323203146314236078626733538114212319505107894020087514993748977723631370426054483382046427740321087374635210659444939902434720345051276008553462351338543956028377652001 - 16310162932019781117444738334867671795318222685198606690798935452673926566121690508338999503629266981628206772626064889835074985631692928246529495764649391421415967335155795336312874616310661452304744755625979288267117306707512365283679669574540752778135093084200543168227772100176289403479289059211770181086 + 24377426778530488540753061226395172258092668082252918813543780847557083568663821378117249174719787963322522027133714752226618611944120171800538914084256226260011646987086562665853103991021197290462771130439944039284601458420532267171085553765671953794922797297585263977752008226450893531914175390259553691017 - 34275951742699535303692013095668766147526121961435159711443582019194876936959131483780296652085431537696245467627408824180670966522056668841684924011600789143668682812760232766984594520019377557112580311352813759283717672273361500717235812137837667507652986647813611451671277691689101240401743490884299508217 + 69730658216686608002284122143937735901431928659131777457841075832864988410022866898433875378108924559230845507307718080824347239383940072695379022945049385399089282826583479950675189789705909616484522748199830968290721744082193162778543254987830707382286193288957561983562556730163564427682700785102085560960 - 85140911001435846984280362106780570660067033236006678211833299930756762077481848481684438974862131622831651239682360966271914949875188455827892408616225945663485235874567781404143303438343874951643536891277045301668166481793396283385333628105982500729722559950868600885629167252986921156393747992529151267595 + 22307093185885482694794118694719014739280053635464234649598736080795032606323730183356590786179621402625243663964439508244507602649760898691762671956630169518351857943270741119965531510831320660835672786865600827826503359400267087280853803434005416084991332713066687018356076432098907863384235703221251453054 - 68711197279700079198841314875901643666015654341170000348176459567685168214786049669612453580166157696362085258726166090194583818428985128751300636815708764253010786643487152904477406140076713884939055937386788410015493938596665864862974212686745574245863561290931157239846157569290405003080609896866071664509 + 63878361339054898317279422561220497358118243863385809369722234212925948027902383706244788818190584696689684597649219540399449537299360251475241502106031488430771815383374824965863192652573370166579130174905803743700535527568908598391890838972384244850770073804730185454015414864950437094840213368504360500243 - 76339396283209013987225804573974474721805051732992465079143331185156529173860048064030403710306330376245144863713974356918444324407144141627755307008893426835592637901922305625491154314723535987477117676308124054621269867855154807849488269607788724023519893359367800913854389325702680417913131881979395728769 + 94250067832550916889344733466812473179131149377656268769516282228289121104774983649432005047520256214474069262873296930890874383256101192089525904113396687691828327951622642056151552631792858639407059111283557067953103897272277194769973039920736040707204424874729197042851919822641739711381253034553828026472 - 50202344686339221667306974694751696360046224530974414111383653205890541593703196001331770411068628106861384660893839954429138323852618931183002670111981645535208296242560554224060664825513716356852687263698577580125973841391299723601621084750473047177119027464263508379946471645272323882197047516801112292863 + 13536500927146485488942121854450963604898540530514917592657618214540337670271112531721746067723325427878352163679546415783885128163112909779779096498013723308586062206657004520173361874467767086082996786146931557256658350159684206007380686697729465445283865140654134659754599554478712824020573789159008625801 - 81105579322058627482941098222882532159553149104638433764561441777872658469516986046023465170058486552303650561375957142580774231214627292341539465709744872759153563843666520271305180865321953555035189451008168555350735894174489775873779725382517578004826371356406273086980871908576100673631881244267208775193 + 8498409932798183665024405669175792568790259904897849198428066459559883234050043793820327803110013636017304018507595807019837268806942791328826793335917296981627978837949178706884976132800416381373623657621711219711411337541631175966702231892347643231906677137706099296356957950491250059658502883067089672315 - 33770514993433922957150754678407316300211376894412207517863243989275539781785346781348405130325377189555028260722979787565332027088012700384922142242342480750582574042561340983124457197391561240323092036574357557184256198111062580427988036769936088395051326666016636701074666462278121689815884306246657555302 + 16499428440697010147803485636853616407034420061912645750604884207461516711872462949055784499716241855682749933420579308136368218845565471978471177538456152576550528114922163765846777314248059748388109730466491827088983175897998298213364308134810776654726630371033524530703679285109991513398862519919425405753 - 66944820931465118402006534106033125396619367602889326890443132419656689792605597868035488655579509730593309199837122722614047794527900305813857382769189239467070510369694152866033049516695075444201628722435761198809166122105454018236235758066132374180226567685429713367353352670716096999245510871431285783128 + 46758806336274850848507965560881592881952328031661847471450802622000941247762811244368378985287326314924197604876350230377702615489586301726478173099488307668614118750508029872665865971680042571273494629021635464100051869097845846655589945181009131648448749533894655561518209650511644669236459873960761310051 - 81079439920381786304999235366219349307855340154012425471299322010447233924464041298658429643471055774501941304575210636768392093837427838719325680158940132754391373458486640159475109279186145973694794386475579281173528465564585799172014251790799877129355106564425592826719935580425721733419755265311213112679 + 62031409344738661369908116188412402719501195104489442238607336920369768235500692203706120176397071894204913411330180041554880041241407504824122430871689579009302652783028088749979575356342682776218738793419567024022567841404145088684568532820869795344672437626787223015033907742554128216603617952099068143036 - 78707888628869655970205842085930224763420609164535822034871677683696066885554657760956296003983998789594412911314385205857753994681862896615928498336481832609484955313290290163774396847268188919756000012443921256666806633094458607167955715437449372836648314617589582571284399156047302779556167043832375411405 + 1037398863648368743647396526855103687166683863055684130653755697992727845475919368803122950673542755510216067889188403838172933433772641393817114551509925465790797410405481707110310670355211475941093825769069230119547719022847877386606963400229237014124160904885480993198856421102945815092062390580530011571 - 72943543202681890249507912524374581827948300591880459571924948827228063282761401529394735371045807240457280813617877530758188092985672865173390725969407017198695812963943902058882965348151967348006899898031116301614078160712400854537168231850829855755801825676419016549173351937548899478327104005883110835543 + 71857533396754796341687783556342814978018694207596643307046526573898751623657220612500661860480881335023260530020207041247463058481584745449891412590048261836324287366159267722851692658436579936788339250261157905584306555730708726492785869879620441232666819275209334329311075831060738722842186661475498165416 - 62374334848525256910792754022151398800890197920718638445679307859199856269377861733179753323812647676978164071549854827007334807391573089989413865716195293741885005995388303470329221570341198965683263040959426515582308751619884013792059791383820342208825971730966080256863770579165135575795594906014563821179 + 34712738542293901317211900304159333344899618239614713702001181917496497374644675246315358749842855301423670093713590757729672452265278531102261036435838938227282468766528040172360720382304408339991391844314683322357283652635886956263354084630244898798255162567326369972092809435762916480906713555438013520047 - 73293520802024184309543280287422320929287945676505728745996479227704562457230739859495512391996995176881408206333750776356169794438603336548340029031276721070092623574028648312265069748492830144833960434277478683427614536357005684441902744928483529408270810747913788039154840217058495973636466863209930700237 + 17190083267588146349507043999754604654794612083132809947032835165766580456354209221298929675260859258134346405331706514381010381487076045495673193871125438365411659848352414737357541268752816717351235186291070424081228020073039736150146339902231359026562051470542748164094838508798639025772515302572586002436 - 39905476248748184352181598614350436186410983949014387870584876128707029156910956631431281294903101989805929457219759771497117314348646853513484668206420400102643856801590594345355810783713057650110778825077801303541549765505978685029391507059359808712880672154529751667422560499755178371895895677525049941155 + 80539511768194322784650718363908571893529561124027868685078162116679520141675063212839154556614788726425863667327208215268241632288774682001088559321454745140378048082671337610638941805884287615142801611717254008842995770588299015207480944180097298388280098386379829591665824584840513584162955731765475362414 - 78118341373196786833421172476461692603363086004777743601860736804902119072507312877581649725832265426274283866115410629832765646684459213096826161836585074885730191761909968838325471597313741024182449476568148306397604033846723441864147019113140573139639461064478429155253788914541413142482992805077086516656 + 6408518610355417698161397938948591077312591003504017032565171408978182647816714077659951457322738415288536233809366195218998886649437923223074120286017873895749104573542721609736313765170004948941131381833040032316616149405289459480593582418708857608511563288747300468855154924864841229575243620442409287938 - 100320785395488891959731809216760822113431071556980449725913116091185596376610990117629755422003272663040218588397818074015457111881979769694468321805716986104840200614942295525335477647260530998779310830989446144979051621825484569839065654380780235872350038838067532417568450729446143613866334529457088768366 + 28480561070843517391979097765750990445183995081596011906242662598691317114990842113127557730398442262497724305950987909766980591650321420365083952380443915384773644640571454292607950516984407010390226380415133256330691709282065344886544111023546114035431702316026582900154221417519340706609413606434537150100 - 21953189505008653155613584421262366904738614300011512902374213917218781789221330215796335659591260602030852438436263255248297895178005462444478497416705230763696976402751326991554373501858624858462641033902398472018435057511039639629616612672401959612861133007003161855054551128831701055996681632671872145238 + 69530700547799267463248262370838122361228441903516564148417462439051068911764350575556095698610844521459863902730697559162797233753232387832299727803711910593046693898617532234523102349830682983420702794991127808527661158075154731496086873027941340919416855924553747177796069906113859686531606390135092667600 - 3861940201147895954504931890063880339591295888854061358558569354938456177885281770719887141578721870640859039980165502645146473259291072541684473532733901602486419738229650918058403600291205088470668779928308205017939297053299791094152383678043204330423190536504813893762714158357391189740008237685390199031 + 73591106574717740966291750116901348841222117283411007126908965503224770566007026428427002644856337374895239982064705301802110447341304823376818011537368698865100761520941835166807941654399218116125312738589921461740142096734536858931237085543710635790591204042683743913739581943573383125121540638102145451472 - 47050773185141801910892299273423358364432301931439308977402709426978170624607721282160779383351437567031253814616860186553950322159378085611678249900624584744782683292849858860229904604874481207131990382585071585995315751292424003522536309700889425680003939531351648387342166439521456785228750704062774042982 + 35423060069012236191511443176307084530902626058131473022553628148654324149802994145991067070213211946280070352304668667631137259208853907422540359109091283053282519650055052456871847388819824738705761122259388761418491261725069407890926434171573133110650760647291172623691209652306073836039471573447237365599 - 86738660871505248537332968131362053729368443345673654161796976382286320870020118741075624740289446074859820315406177501728150650123217147212981657017835855622680092367063490361072356825777434229311007838400267286005930116387340356540939452781056107332098033270840998349317454964931604466518934803789273438164 + 41355634080303433952323358159339961338101335033649441540538110433255456660884210746504072627141858975515715835928655361959326163258078158567667250611367432742011084825327748484665409164169872181845906041846312537097351930619908204568634162247601366857021737439841263860821326065829131517021589096461477558798 - 30829124676157450868624180459959478247054692170229558592062848256158416405233182519314527749198477539133879258923591220223324614460686222475638893122650948660274766768796766209055639968583361191625556320305566995247945671211805194044896093090391391442190528214612318691510091719325500116477909048005001131007 + 62783351700496028071971430961298480057357868845135546940407225907686118299865192327801578276307673212311951746065710304333438708983466363149918026879590983988664824400935747070413175460355182323109500240886091628332591175490192325993583250525050802627693973383814415770316926028803788769807239131272027002279 - 33502705118111704161506374952258821454392284164655920593396524168018120450123464056719836688175467347157865049031261317339930584551386631079383611398279881638370047806494865926737383782372857938541464052475321505528691818064416766693126775241189575711145428929991722147316083887704544516824865851843481311339 + 48532645031046831619822034867373612007129663540994152949238922711890936512706223416420321215706064670654025007203342728753628737460339798214328255765107223532769753212225960890190148508643672868702106799207392120342604204162439335799938179782885495664203862853667750798317009451065682064722254422102528028011 - 63789014119728751106445501713930469091902780337437810058763136381008851354179175874034260247034309724741642322017950634382691494261159161036745757696296687903486260284865247824971626343827644546578000581794482786222024468978829726211610947485959043377074902909578113818086608471907594288495529409944886792452 + 73974697342759307432421737539588948142653279776515587953240346011511832149851921096775847156456598783807872810345677686232745791002968250834482399151306305674494136568588211081723351585630882506750584570539078892226247381141543759868611797458171334996794545380850332621996103994678837873595887198355438517684 - 859115907943400976856064840231360111696210581604227219063367672196813315335496416326538424473946119376620661065336515944319325381951160039248676506414292798776734456736599115441799680128033715004427243001309743236779340916635813283562920206527553730102456405599697981136010104741882518286473313902985731618 + 69752571928965435549285328752609526345045203555808306356143749877336428881893527186509196519134840800650109932838063828210854746230299107185850760164793844443290481361722859982603326214719511835969694479246423209392413331390363917218372148665329816035652374668434942196358112174019720162594580072480546143945 - 95674146963278967662009782908604179451380094028519607433055705988792675814723117058790504112251511875897304903193749542131974482976725304139273690089386731208542232526928534718580575135878141105877600436876741572069341110204574258009295681414640021883459362350985817220697186541578310344175404429485511871960 + 93866045786067114157145419968989678140622481834448338246090943764283422061961583866478371582603637165555413531167713407308735004280481151743093179425395343140668371634928692852532096192659352303671027619492255242520605896333587475900687631456461497762937675231894825844259737690934902827660258631043102057658 - 80711500105939291755055388995274298783784129009345547210705501277454996695026826927275426247452964952995440902017578077809690119317226204665654200933431221485631258236815795688765955466230115290836395839103380490840130537022347906231157085879440874905122573095018779316472168952580754333123028797050289702710 + 72220188790806141199478625623098619892425695063767778790658172269330308421902940002962867053231106806236961065584725733574350277236502478954386174928915399469718287516128554340895462254226233651375901221908384369372530881059445395759553930575088976788494473657507526565615096981035287206469064363611387679390 - 65262359443653594325200561626151168958364237573348192984814777035788814906933749743359247123807736295968236528422233552353031471691744013005934042659744004091402770786356231716163535993213520945832071908646909111993459572211659315759568633739670075719470199796374596893226335106176241451888376643875444957930 + 20946704095305540973435470941855952605998339972797875752477603945797993804608922451111666168400138753509003094508816852268168498221420557393625776787301005671516860717809872751268444210572416264186965293469645824768001802270312856539554184285352746599846385653723127327700272062388452242615127906658203992794 - 33903173013918623054058614496423606270829779571462740491844657437659473579117870190253741337116382400573119483335693750297731288921653290965028687614715447571913417591961079529755091238159986449763623842796878863523721393730233184347942495419088107887054442668629095937002907517503455512675270841380144728369 + 77125268902553173138504643409579295226400434849095636488327606195138652774680656171443229281546341803238676960339159890919068698153160948887616040083191139105819703594938577433422632392583516097262767350861225910594316611561758495435674811191647684653146751347377701876348062262814044967910934222052274961914 - 35711697627136557250912202364752170194649347326280091292527987787652210884241988779278250788417358476567775148688821135519680876313954775932687780919240843783777390222903328866489510285263114142545444761126649299343574258494371633216579357817102979078738892414244426036300285458104190915756550671099460858382 + 15086317383556199463243593287762157355613723781687114969201631636443115576516348781012035010465356338961856964395169199265668248456755502012086271428721597362163977726221004846010756198467776810091922380267409235617244003359754434032081644296292288468321535208077961361626283445860179432981931771094218197174 - 87548743253646253892706216440613131291491287776205695911195362070829789131346907465262613045827812974294568080596730817475972322866660971546850833483501285795208383748839502341440732204462909175704932648317605215830163362493250651234859436237734221646976276762528349683314413721748628863077746729576803835773 + 6277705936296912679869275315334933033775659559968596626259933048187087146500708452335092886630152743484184967602611582744263703971860945746845241642755880974246806260283684331487915054854834323365308840895992973499384584488773696842007667920344383160992280399851963362804869622901722804374643468173341754595 - 66322984005449808556374141337904562328142210399841568159582874197972631142749698588035706539566526760323428179199565427430941084134055645279205960041311219804693288683848849821524217053169995441087204770338497438920677019080139556089061629627388625377320880047762378976670709766264520226106457966948213565517 + 10912710732713598926306052551820252808655344337229143413198858836282650813397688543432287504827007687129837317484356847873974390504921912153504447414589279245949665947578119445320395901561272568462636284361169377172916101200611413887887650992740149394148631565473794928471456427149477829103552185234161036785 - 30198639798466547862757763674219211831661989195425096342356648866263163584184294852470437929753114265793122118333186254284186774274131761823986996521364798217594908878581687621041377380768942827060137644927721051600455420243468535423766917597648938484837328875262925116129529953321398969245426173491198907558 + 81011327902217368365291562858927216563858630696702699374279378756269521366723287379018085125724607243247585887402753795353085771509447997848246066480258926629354424352199712607191758464166541154969858003195013753045814390915108939271909830842521805909874881896809141551091085275004920348536458813196793711295 - 59678665902868158296553903747850227857189510851733093452038742393595561927888755963655935129190228360925820080690017544393009311613795667964277221377470742307744756535515141192656483683782539724677991264879519284112078425556943965243232600130683842504685797699966457998678338826765128659412684448976602059450 + 58441242130092566017841669089243352611220978650747192490853033153753169910067335734535378504138037385696700672019410402591972410907494180109098288105385620389416948666273220289852387169268941264952905757518391748782134424615336147381587140490035720510901703857889136518424156953582480460861472104330318296503 - 68922551548065820974272189242791873717093686115072386311238787716946364731815528482231364716264695221681901417540423683037173031507977570844215730419144929731029363299237385766967075598868190226421047277237365941734561180411488210059012809436354898899145552072832905835108200580152581219012393846418667589018 + 94315320208242381329917578325971629893959106514386439394908727833833255315012114783354790524806811442196875870394536171433408090475555540053062418547142048833756662410393485226018311201021009167489378477103935376135952603557664441497547483398969250492760405728553182735200684684132981234139848580689307544445 - 49275281175782462743642580479821225713568132074166153594199124649814398521110407533004611104178622268684731422878369194898206615831704930761729449089952089793702121236159748412664346518345025709848284740129028798145246853548715542502720975708896955380440132465194412997320841914119133376669903281602716875871 + 1366357445755651836624781840598697263888142767861876494140101675416338671256050697264497028889309041155792293494904254122782992036253195149023347523637444742455495705209855519114445660095326126440375346988848925368831946528809854522938097112962857655210599182568251146800693635758917925175936122183590847638 - 51314359005594402300471011383724406894023192498314368375749934349481953779035691872806577219757956802085389307768277662693231568442446914952789341747570595019108564278117413267843425816130101257562939254619145346500730540269518698690431412765052726723715627586726058340866151233976822421026688233340461163115 + 89503594000945212340706440438526344066503675430253353663390658117304945041581822599799368062299800689987403226939628898657672282401344243622006726539450677346987912727677110081683583755585611184578763711987087894822466854055724284001891405116305655797693615618262677246947112365350131533424110626632368520962 - 82779991237291567492876056267497902329505749722590019272530970828267580543299089732072771035573991553042886151872782862933867623140649421810929825430730901371312109494318599970308804888516523919292550183239992253584578325326847525704034211560522144711368911856722146213398118405767828057510943130124751777973 + 46682101065173181456183551267599787544096167942605687106990777313969170668220875149749626412384335869677007251110928680953633150038381618173084544432193257056739864425932127484963925524527891529580331431790458146463962022821182142942276921535682595573954695443739440138307766454333343582520481524524661314933 - 95643996039704935755392368748493101242716218949536798895845629751402478336180561445836527253652784229606871938058136816041538125291905003957810967865119945134282486121612357957663832780624977575917487892775900926449951281212024871648048947470174116055135745691895390455899471359691591320966953998458457494183 + 17601480565872246900079872863398475944849798082755191344239949720051568231817992039043338522362744499534156572651251636843545868178237949030577291773616994581384285679473510400092787607063756030320450888477827605434056254718811065597555012619702999343541305452700340177806564161865449041156086843251752300545 - 1290150784330494026826697959212954309422299068882187095362426273346511120872614697205054819245075128267500931461545502768030101200202368092967084428454051840313790703244023314824145618326671855268787298466385812510824122213682045636190402872822672909369558618769693525390825377948137745736030400441416136254 + 13631490988510225424889007746942499684976088012835429798743913309304539712486622918506531785946525832268358943163525174467299507791177529344780284117603141556593757957444931130375913726920589771739528732846510289588442006431979557925946854723710062957634997988706606997643734493041716443653748431247667998003 - 4547130437923555927172831597397680862753778555558951451743846753232347651587216847530175658391079484928245305098415128984908101740754559780961878721334351882634977156322917062043849801195309306257559686300290898055567708958585095611836380159932917377907725952256918624999491242156836739337404373681955451272 + 61311495155398515119548451603794989562996411711071337383646530377885219157062947856965121225099005329056001179029603507499574949600556446953357094743502322558548460546469802672017294616340090781860381201814146193024724881892712679271112507881673785159920718327138777484452611623654011157916829868990556189712 - 67242807567200405733535563494381958375662629411102741821479891858186614873843832088207133651329781810044583781497864536350909170249196323927640585198694276755687259326334360987897783181537661902347276505834672872660768459397730807544888728620246928577206498781654329648464945435793630343823013766187367511904 + 139572319287690075198221148700823975493618877207369590665087870618655022696926519438286371975269356408951055262941863986127356785800870868930543091432364078202650535642461679691384582204587741004913329943364163412395539597557132690048225947672159650545903116302078459602674018000232836738578930079263672743 - 36315923836303394881456536048122624163405769100437443351244342923866184663853453103268180626919882708905945723428324738642746041734172621318094432453245838096322065636660726125727955140180437047150519909052734759184385152486779914623311398977904584084283407658044817521787698528689870815011793662900961137954 + 73675528657684733961404066457977096612493027369168061931372366895964318578377092255016253976476696755494888263326292576133692239776246392642772363364502840225307944396321802230672100504854118208262331995083390503486213662859164067750456130161824714734786987349392802730013243449359620309627690783684103441197 - 66313436242666642440137005573625425398121391532913256348813860535436490262893954161322146602212993287323085875722297035683293939899635080880048432564272768226635164295895315627341158595676222230424537168203916753982733611289700101987773154089071386774343412811052257567694714254661598003789953861197587029116 + 28617270889835635517517806866703593694406349786870351359305429453847974650555581545287926211358616565343738889124902419574312788118093858474000040100293564987271965582247358996525613763898387565399811896811497546675732344100729362839880661053501298319175594781502220085807828524800743657940484578837703783601 - 24420692566126140044392406382644662095884142181101310512247657740293006490824651819931899645162838294638481287809912570438146695049296793511248215624603134392805026529953718468731758659592254136786797378807010765425448654809206850639128189953370185394165209993525097515522180498352530289054467452940897357057 + 14597049986458379784628629144819361191954473630698843776218125328413792743280642371612126173134054103589630330250696064004424775988417713732584739777264715763425832056307347368003103731924266713383516982863710789413997082566197545013091499940466396988937286192600213106361795235873841565976395304719164782660 - 92156778164544782127337716386569355577831332018863318115706167735909061804484807534742388894514134181026864112554813169081920400337908711800011693912901302473996707162481198561455240598493106378965881739015064626593094435242605692242479252276242377935489639851888853913451649050854936098717068571336936238420 + 8286137006903391366417332983658159001987613674453418824779061643247224343144251784284209856930478203381909507334299514169931907875736691605477328353373607966124621761561403489212308076125859533139234375381816795471095944103748835608999111074858108001665318762643751921519644129912619661787245183929315406744 - 16729760753036727554666284689959178999612008938295677429029356272084860726493799274267414215910522515847927881357073081494399188913132729290421617592554152394921983229562481656633380814491177709121212962101452092307392064847641173550001961970373139240174429967380840666131119880921354830820534011965024179983 + 54942790266454033971220170667387291096463663436366624196454229512773515903043448861648418038271211934042433639559928844120327054504809106109077875963062229416885812554678554697394118681455100717503416120980978581548376312862923496455677962021076020378189774418609765397625783960350219740993753900774707118122 - 47361482111731147369575948588742957162884676727275012603749928736802417218985512529300833448098761563280509393651497457968774621291802231363920750966071395459033218762570131496273785247916587751547765560232409731004979021406508098197251405731707140206607403326780233209189181480809048991759051793236629670874 + 13740455029944911629252053846082042511465538348924719097591364046560687886784635071674508103269456429351799119173442855933188343898113622754264829545725585141454128727630684844679246255720413281630609432707108773935021685297924970370821387455516914110036318358315894111538386771122419907807560621985806652008 - 2716242036703486235882663055732300007861217226625079287616787308670440801344175251153508445434049303634699963826737859070297739702803672410566510111228935380213938046382519393583863503439417440246816375893742834892865682768074981430339238744828652000809398703506182059078874462038443592440830600533161570521 + 8141442923651996509806032970157813969357289468582972759899415325098951143579424651495471870306219234580286608707050261096273918400450203643645429712934371130562686258448616979870649102370139882359854273445318702173836791451695790835019790288236636841254341352144484703213715546566078164372431187827776679220 - 17399968236156715937057782909467269746004004646692304817336374081065367079938550630597815363533097039368543668804020403447304375177590620675250200633014145935070709674817867834296373890900107638983629647866330522184343375901956014916928513680412816336599240905759459340986100859610524145357175469842510577656 + 40603145758338945553166068713623639847797133877510553372355531144712237496018191143318944758161119234480837543907076391345204163488514205980982917790587367257477029447744552706184826549483552825393901235534919409167710296744467786206039911076227707984359644254677334607296480091484780280203745744912976014907 - 92766903201696687630905811191440008409611561650811996602744545851765418994556601427005405412490174618306462332366873087476174196618624596949598567137970105267572259802086413938202434621499754489260069510451258107477229862399546384692722792220572325427719017378552538440966125943511181188886930512655316518960 + 90548927610898945424358433578424924162172588178405735577681817635679690391826584177996283546311389669989348292418823906505658409667225512394456057458935065476904723652099626216877485402988560577870962621366123689355451559982231571457045776940299164513159892955354597547825497864931998008358490498048766541881 - 41287257038379949688324995042147654420048919102534437291324159590547691034420656538624941200490855998336836413250529876244784513986086775360033735520263469699983495320156325773259624710798358659215327191270446278937444429950494151392911199381022368245381131981472100353303241221824977906655180206168755007753 + 80309588728185282313286027674238906214354811553310842645253373899097419600825481392437252674738572996943265594174181838737343142604073095709388887635253705610551755909077165629893160604796864083526695307523796994914428248511770656751838248477035323063442925095811767526566687848698348234550416502630765919276 - 40219907854112345753414725292791333002213265293927481397038235528918578434361021527129577323352532087389836386003213776797642933286886278704962523211140928331597320542352481123030390283266719489464609938116451696303319213428235944962970511759891920749800611639947784112943780628987172170623391581851626395266 + 53153242948027376792395497743792899554191381423433522062090497133687093325517613094285058757266506938326718273394438494858036018132314376235286613529207409274211560694992626287721299942883995812613175170369175154910026372836366752582754269286569638234997867726623284398207322889061923372570853099076857215553 - 92932595280860959060588189737054780052896315287206285906717033058572232245695995861066073978221864160217632480927709125762368203877991321065793959034158401346952008749043309837377773782162744401369879322109108254410030405853352191254796443843579703864101020189111718447196559315724923111138802654433451578100 + 61147204809926210065883392306795787144201138985849908716703636511309981914413780243666466590302967911032368984137611672054411272402062396000775647210806974266455335022338525056892474539324845806760439292177610860848514767572967202716068155819587281527597844421909108336794074092510599672951120413887248208395 - 71330475810751002640713559472874171422799047779694249214738379399447638340067566121202898892867655318829616117366966631669299334077952607035591922559425052102619200450853045018108645687730121420161083489757903916689680532840117213729554124518279933219836737109894559819926084800176817124385287680698918578320 + 56475603349011316852935135883079843337638101665675225139313982230098392210314477570808174714310252832876349823202376456346397232449795543626222901238481575683884818663457576869008023303961851398681775731752694030830703029045961871719934706134672487552245092420558968976179797962032001795174556625940526388735 - 91423182165512395173423825957853261385564172109647655371213582363543692679081523456210978229323873944626084637903650822447872839512180539574130136058974974821695873706283013799289751361326325409307159273224983140699933495473243632349400703066982621825667495650030836932866501049974513218354218747721470190328 + 74321064321741264661667868781505393429727122912761075457532177507550389276391293158530350865755599730751765174306414435223724198482173488443472089574704313931012714008518061082877516404106721282382635937478162356380876868381642472084523349617333196584828165277273936295578638438558570981199882839191672811061 - 7355108970895299746241440085160756230115592678721179610426767869671726478990232175990162870111931005115527283024161395700348837129556560099875204073129510897932122181982036524905317219276002675915162239084313956045692875791092669431007036703409006578252058451674105817992264058635290134260618308529877169161 + 6772056490951017718597033099386797283649390019431730600768014626521450004314725980777543518574891445852456521930807967732039848324384691999374160009288284166630951154375937035217333196989929319228407886808320824714627428639720144874858844867277587949347167524510834386165931370620428782011054268092786760078 - 95906322152146130274103072786242501392714051450782747900332099701779347541781759579635212797676256332672857045145615508988872346161341427133729312648589384211205885399664618185657313776368994558118084988603808151894807573673581959580542466432518019218823215869630611166776002173992757366021007354683442022016 + 22797779627723986743400193163802793114810424268816373907760051999839387224499119607054621509446955019847365916396357880917415089493092485088387817093897863001624575618960055662042523868876603685779388808828680568738010243928380728125947479062401265327671316461435860801230691045026730254094979189354050548865 - 62032251802071786299931555534919192616509815004350078525943290780545389799753338071244803778766840222017694860647892597996154305764806072634029622947262539617451642631904686869877248827259570536563298469277159615488408085174532626903012857363896764701507761216472226408882088320799707587135365579349838398574 + 6255303532810880593721255506368743045146060234968862228849343438049558340010077379152463620103654895019495358609196857823035167566532112124223048359181023109488245387400715273451974691676481942050656746143354055831698212713436451887500480763592778555845288872955416321200645331262749174916422613576144868912 - 26239637954855686355094945179352432480878405674410713984941462615461626307296740797722284284903539814940826965044186959093410083437847040665895096029616080058564757461894326039292422940940464068270714790483954549879531277105441813989132415091480391774313865619813976509567945472090675158107521839541843867666 + 76261415517739115948818589247063606830248751321266208052582795213425694670653585079929016686928888467775558109380004228492290884782512333740935724078313478004554966799218119794270780886769172980018410036457288481935502802734990104803147972491769955521194836897614302686116150256576573048149780095863690819318 - 79343216164833428699475679013026225734444767802365411382572595799066386139428418755115550758530454499186644223237098048292700640394924435591472098451564156458673365475689085204897882443941804560363987206850881333709454835787755457806185139032931844178325888529950217625254254982120858301180462497341526282286 + 91252695437251005803668582782331206009247005675673084758581272114443635663342368584599917743983850238146344681036885704998744594455816094065940098575459890222859478710950066499787587377740220251018379473968509718151587371816050198190798773976644797637044482179665385759436375410411452631984346009708869058403 - 99244899993302936738651997650246170344673390784062509052039456653973744951213098901606924883116561399253666499684857526726927683835266551713266505526328451372811293654166531622574313159617082163397795379885229172942951209198259734169740865540081299139268251813849880254856052920917795354758171480903374146903 + 42427031876935977333178576551249963275764905406904453983008732785835544921416997240268023584067342734414246135249989632389723962220225288527876677250286390804053197637781960915640018021455164238614381858312851935500248662343722522195356752861508883966765402862290291071906486788962918849470729544555779848933 - 4787629095892537488964835383981708835663149080496276505269798306242690086100436505754211295196568225535736593593800053991609851978037717388461905928431016580358796815923028223404012524221012363656654432497076258900623444855497575413797680920121240256550192902624222652949600151508663421533955313220687353971 + 68691558978714843640171070347507010300175376312136258011859628980975461897314144875642293201853741595984138067021813766850919198003475611430864047272725180318654447179807909858228047588117567172304883789616565188946787613856746458010179601883212589636872555748355362548773256393139974031868890394997400427330 - 87785366921024068863754989034283125436292213357559057511585855941085381580148815180918925217259960466561089127507982120017678269099297470986522898899144322210025374657948122233023520157532792225184965948799852873595019101055845800849924718850698797084562976135454196321352414198677760650458591379281345286648 + 92408918702503992974729142602528890352869495653918567213319544782141626210194431137175452803996308774171534708325460854921497007736562620331900607251321765286858339153831518005824488755526728654678745159585350938825980865987347954350151092855036405474335206806699282986799025279520355598396487109001754069191 - 74054099433005225418586791265539957226116416070678658705900552470920317407740504033942625931500111375525273468932096717592432012596326414664249321355201889046912587898769408280169782823699053457604318548363748547035733035858870225474848147964370694786893397875611629430595672838581360809409718291532857131870 + 31552761013143234503605274798348514909395954858727591780741751626353812981517805737735009211802063628607287391353804467726351868828294511937088359539021799561234977556780213343723030879343537413798030675183108810050773030415383974137733840702265405293237819922569535840982001494474213468885498073735966355321 - 33515682993416261781326928359484749388170116065365246047010891420049221392467587999761558762889225567940542030969122428033952930767336926119869747005510254118230708454610503170802168042332235886362833097285401175775831802025916783109065999324857344620079492606203896739365451721220957969150442286024927648410 + 21068373519955248559964412211441098935365143778867000985232968600182585886494833173599334697203638487029288704635591249715579134618152342321150966934438114865606794352492936935267062115847880875770046448524098189951544497223991200227306339175522881760486928620667915764225950126101223676498359055777475620595 - 49850356529629476379226215875100521128445915870022311372775299952637568457651031067779230969830667552269195385963047402895563758320374950609688938066802086757385000673031854552426280691782426903861853557441222736594210310232124077348567299575899619246456067753613390994434789192410581432058163605598431230656 + 26863923371374482940791431170124012066007128572360474957642603084589142791557782201326544741310555082406157115587403998705995188087366513553597343851612333079764765832239954093870457182406248816533092646986210689129249051511239978029511176094510328307701117619903119941176063448172090112310420160548434202478 - 83937283288170743811477336515006836532860327603054574294154218042634544162653626087027059003215058205755285915031143406823787397095208604351657048281247284277511688400795392949469451717599403633095777144165391598875271615976398550150583009978158330302058226734720106029360834938098870925447462714671152980269 + 35139201356027905505910438006887875198593016953058386326790550897146579643335517835330494262764139714170313783921100356252733247655122583269796673064323915862290184146663734279101684198246652828645395777580602757673140626642656795447349628782475139724687075642750963662918873312145830963046059824990830193698 - 75663995920493097039472730685119074207301200734719799349685345270612209454270737332505829470539079330268718785883834357382791784901331962391823992124024335335918283090949514791038612067982544821654416502145942469656382378335696297296738746222867672578305044929295462887471047356747256097332833988232827746207 + 16910207859280815144050741567795477159876276068820175617916162760722464707778686022948216238066563585522198312369794763514322011267274184151392911907733675215944744743420458035722753074989697382192799667139751237001159135459597775765634562336279389760836312218096628683304501947451990617682068840638469839668 - 74770473292078972078652086050550821879928698820525669876711619066498844255527237390958190379454063177772207164208127732589116499362066956417596102652253624587182726616941905249896483209919489543220300704060983522774175995071916074389335476583524764775524090154744004105064134153939600580900750387880134113003 + 77126980519068303420507890880796175950950394723160284091163514971998602956716949287716703928993813880068375441928010580111425406266914729888361435989323036482646874809512424851657992332399082113703821616048766828704289000437741057245190900559357556363148259433302050876403391374556119761479330455096343004953 - 18024988810479451683530651492756288729787466712669781110150898367980405130258351791936884392623378105811520824086889785208756119707554596809788805112237190154811967676200868581535256717226244759340505354452933616745812810871437670663514879607821215358167943997703096251202355254545793428954329051204193863672 + 51964341811268989079298551812602420599497444568792520630377964292081351775821570829485815014978960404978218251842731555582567673381592702568868922309030710257795670350579501445202020069147062547229157344127184466123949586179827253080979317575521955459694095194670985752339563367983419271088951936543692858794 - 21180255652930644321516601798274750721639196232076018789039802320558810163200650201745139530970501665548481542052076816731081548896008431522022594684103171200008144083879227662975149244971573070463825042105143775580613305996814830703285107529876016808774905854402598011637189088029025272477762922336937356328 + 66899783641545701537348748934245528676634420643732557959566515598685602629081140423290931178706771355074423934339352448028755408606849036590861215763403443583651419017870768632796972080867231185995580944424690534918282823770228255230048913131964210115218340716779750347226095358056243131054584914925786191694 - 68398943344826994817196638391423921334511480671819618982491753879803368048235105158826989029829860679336475833480204319384542974621165107080100375671727122242836136652986377823580451278073178002797868527542317344928587644893348077342066627117865617258525522736809110403793887776133306479755386376895531452168 + 43396367688307396644095771661346950776133214657734456199803898729649141267162926145792718427033598943545726101281794725960853767365973046307258232872835288121128045818458190091755460954109647578379977159912644700601332038404355905636886440669050774311741104166577789127376114052614877778885473864616469571581 - 60630211489787602152017239433759096468015984195512960078594287564168646004542853748186151897951144837338909001527430182496737441714270987233064973243923614776942630495607517003068521835736535175946032733995999553206590724066598280132055710280061294173121814327190205972291569539114379620801912818531660790303 + 34468718364962979210657106067743005249305242605869224219678696443769257243607314926713142768987608802787125684021250773153148084974704532797335834328352254691250386516445762592983036052817106834079081153449212820335081833752401686196263685125359155905398217425090556960076230832964826438925175276251368678772 - 85682656110562766543156006136307970987957874551591094048642751145795464133776121797478241627914762380371068757812740326356067595643033236635612942323439287900934133620247150793920918178666774407402472480052795601068867853915768295006476090106235063029058525015964472514665887447441557424899332173640524654938 + 2706617968196876816903469734035539518044357534601027752769966230312049811661913788240885642530861454554136027469131111090076173663933058964592883958969346027214961556421564153976230993526281115335731817672585299796625628691448525848452977100786545823466712948763986882719710708277110703799645470622004436221 - 65253178691994243057792711467539714913842143313679982529066414559619217577708254084171787222118560927107214368752124094915282399401517678770525470591098528364446341510991038023525877558487431254062438217591324353059136301002645222666798296097002975256105756704441980301912245482364321277077431155569351981911 + 8319970813792189637882883805365796784246393591985355633120513206833521270961158381518816099920769548189213751358738230764984947762900832261290306231905746186706639234549299446726697985421440925695752944546678674601541103265334506235354622079095943328533230728401441224642008037177667696691134685442723731391 - 90224917254632551163278043555258157265434032486261203748225179422546361369141448068730725223006266694904226405609371701322644784909030895740087946118793437808912359698044536042855469448519533165862706647834459130577397821299540350372677124551004289411978719437421033721496855404537629062888137440419006693063 + 68958131084245424923095654766255717351019082242957400653393193169834902780076155134615879300018758961628591028271459735792613430730355886678875990908099338522052523378623837310285727680253521929477652995160671262970164187077253782688464150409523487035088280877111665307038586168815884304541891157572286086304 - 72275043541550880159962225630118205960950875865374407457603460628350101642787220935411810711329482205739081043758305464244470088174831508982844601492623514627513635748665560891609425415935445832954495306349804325079306366914140736213322377687349825080990046989168263674101442367090409225288022463597907690813 + 29421956307589128125679981622833050029884333762737607965819381305953795746505262085398414437496967794264635971691498818087195527068163977140773882426422553444480305303142731666985068795709136510985355045442469343217559024156739646718730307278594433400700312958195320417540789130304310220478078321943689804023 - 21537820910564176696996384831702808471002107815004736974983962524042425853788289868450979977735922202746508599289947562841477774371404198841391872097285003414834882832228393730014216626575022069894942504279340357472193449152472833078766353326056645361214473849400461918933366923450234866509472587755522322972 + 9633143018036631208425217604217349710676455751266198110239138297318445791620294154652702799824963274055768231361898798247827305687914741105174750247553489239248081293949709787561787615025231436512460915253180294962192003059293647902110050855099455890072022798422684618469622623107432873383018474078492972287 - 44906285210225346018537274537095354943616619773633486500346502148041058913549198141877957394467562370873566935782453801447825019161753262045086580227773655241863170908597761391010185206560655181812241921808054517527186321355213371008419973442256649415756071012240297221079116506831647582739698705291118353681 + 24662378243588875106170195151176286356586277089365020471991273459156794340017916029615586776810905352800129336317791481260989018036794730631078962146735581735888760293437043598863907694587888288230966735907811330911350120504835781902200186482490587228692680271596254329343049670821032778524698872002935151570 - 54109328473486920096427337915351646657773835230583053533429793583047923778240031670408537963336157935289429147702408696515413419199428152412940492550984676589875716890732640908561124287619320295301832188772988473529733467420635704079651903534694360993714315106225031114557027849425658968699037793631655197428 + 123191571096687328302437733387433515209152290308384996043061964298607595191869322500889849148097832256376091278813074360408168408139155586240891340197053623614432481924332775729539581907012471884735586782704500932994620476591829609317576250963757461555535660416912113555745982315862060436390739553477943375 - 5579698550447041553714642552773952287597393684395108244882055380676956866213752422474667612374872995900030842286692824926553144963836819027950980684596400128620826403052756148833870005357996535536113984949339026774937766158984484322859168015769209679174755351594884302156290801730259133862210282161943005725 + 75468899443779638731628890258120258531586230147228943861037252059470366971009106771074137599511385950892393117881605743417334385862873443281521976291653111575217287992987970207878241737612776831111624948956763649171301013339759409353271653535432911577801300400121039361062821804318654115291495191397109289091 - 88654381580406084946155284384840383180480353881996946570283935213838230807186258405488774065550373251203734809053392512894559558710016428213574824896318292197476664494032058324937011909140879111587718949124591869978430245416360714439579556605842488654368861436689838769105179293091613438092042085069811491050 + 37546463630938841531902717946466527922000165685082890037393584843351205346652758845079137133494309002305572190356433553088442553961527940659942323706431555610040939955922606415280247446998314681537679305113891773374281887697853787943365476094203073597172843778396648968370974854022700186152964974312530898080 - 64119198275219855968105476161100911403668428488253172483124579363658940865589683527418059312551955706131187079305576015454467864699687869396036024191721295578574416984925070335178047835923427491963211661270773491171821801140099391516982724149554183434097241579206180548675453355164735470587480774845017942273 + 22563627428962192165595424026540695323005443196051377526619846999674088011870689205911912453021620981757136802245478286265466589637775722334015743375071458537003215987309859016860531095053891990433881408978949199958698209827390831647411712380436261732128843353558522413985345424376602092607202553311185831746 - 12191611569639974173167096589666635441661398988201151847257683624000497065795928683487973800387984925170329022735103648551099841393556279681684387943439105514323732417694503711176179544181447017241907037823840318569128311397030631823637646857825575765453616786697397010874012361227736225175742303421075725590 + 45048586219430677179073429643421097448171323857298142511278912161373831850780343417082249308174402154016659074959753639995990617984301849224682424939782391181900533033899938028649556575899408942845019248865967595236317277443804488109123130057732719037497130951472323947857615728671005071184337350900420014477 - 18117341411042721148111532896686971314456550441532000286847431994625393914475721739110048004979282158194779377888420176731189220173936140526876805464147336581415661247577865697585709526788096006688691539178351813772477885762498216319245826226895149585914254253823454562273669519877124469463438208733525980508 + 8482510597810083375603793526276326659011286686568832712490608559073817992410166566744561059194862262561671928407044880106498138424675336014935560743655734043387695851248847432473141012033453053944077132319821161204559575572428349300981624114048906140503383901667996454762108077525676814819389489134957866014 - 50552558491118568076648492657305739799114541908759891359603190885536900351246393565269595065144703215835993701598129985947207271854476051992550934368282993638807130135150684548526150245080200127863303304526766736126566601983136270131406073615693980539610340429952404057501060334405073650869192012436638345798 + 92874965654627527625683559470855845638686783200234892869009634303894327080707029037041548242762667536594548411850992408240075710273279047102106658824721510174854881420532478901364083386340156399804366944929974140689493500754551541151364883042673260166340507903413471866739868655640362563907124797710846781253 - 74404723408280613305757689820863751485470152159871951407305331931184439467871029411709198012493774755587152918864735832434499842629857142114782386655073322924531289814208416645729268310771753829669123308170404372423426581389143185690043719540634079900961880462666902148621512514947098268089398501332355411793 + 34245510096563907773434404002990018934781580041567472668067843009539093700886381485911663480264587530868534600648492718291059288809244382146447229352942900395456436757419067427646964770218285441264067108877433984110261803466817108310077299707905482912669782270362249155183469865574266986137489998084759617548 - 21175351219777266591950816829201954176000465598630471053746213035788601201047007151624788604696786814173011291147320993873149156376669174726686359897086044055226567780462495121547441619811099620731245024709986438486190218133745777769489629458327736848374233472307114958678137285695231642621957655754950613667 + 40978370805524189823234559610092536126557858132164084633731732270132204888780227294389129022177644016061958439940477535315031874146320902780176545238046660614695022988945742831127552548593029928894108648555021660759890659012371073711742616171023196424466823006081292624690752759077297736693636457606804685851 - 27121099380395711101046209201126859111399080865693982244486375872227893562639869768209334911597173149719743020074078042550681187817164518345251877915206934222541985378976731698878585860113827898069318149856200932280461529461900852865485112281228231235572312951818342069257895769532091076285071341541742292020 + 64813875500260853124858379377038212338472012147709788042362193203005022479061912106602525946840359660357597407743104365224535043335976000865539732930923720333855805583015662208249266471712043666675063809371719711903638084881027525662653931750996696968648780839001958074515843659929353246258108889965797911523 - 16361695072300374533487934822495281928514852132505877399113692841146903757489770155187246012298898965970447004280337842228203777045352304100274036529848453267931853729259065689634266152397182828288267645426748911910744626777094564930529561844062945972906519831210089327640172274113812787641410878937701988877 + 6602008530285954907065050918481291162569954616754309266051329394840896820584389770070447422843237953603568605321782660265008745228791432930062688788217709743828362709323462976023052195994933191086419999965254248001197957966697932044715221485990782912442681453253131424685082857099897514056642209062736211829 - 6684016449165670223950677374682559966125328607122066955983966369858131340487753787760326527334502349776062347620668209826791220791921167108006297410229814549451856694408079582936452742540294519360839621941890438399519188094368922840389445376382666419455624947667202813185718587677706384103799778812747463509 + 37588338592012433793645390959514206563523884699301763153776656279036822886681296510570967515296540228306712031282823646706789241928473358348764259657178858834796358428874943022565008860010869270484779788472162159070370938540443999331244183808153111036678418771740350363133345097594821499426256492987430104049 - 13052614416616843877120913221662657279301822337947295072776829958550689778267816557952910253292540000764509193927794776995129085258862631482433636514832748378404376075023454090032086630097635985576699737591087661987817584620570356142260418350113855580252654556489725906287485907467013460299846058642631013 + 23875092705711405607679623258094002282247882848884679171908017331396184334881541226039008157699392725910376338514884702555163275694933920849228536860502303735224029816756016454495733006649137181690478052186118737544014839016396910609992000654606225875559196311529325549105822869343106820658437327019007910511 - 49755412756358617456494413570316200754276208486114142734897171227455546013971399136438407357599948730794933067858442429708016794122391790080283568450372535690340280444077991985368513688659713308486081593408537840517444817052165416724164650414186162392927210863423913479024947539615888934532401047872625163318 + 78822801699170239888529712108527628851571334891061532233822803306729929416564579895651198242059123674592562421853747895966020329733376535340633745300204447652337119565744848944992250053146957032469695862990271301102493364745481665311510531906379493587959009050364667892241891090145892745379983075952781669106 - 92376200356569538660638633694297591530220798232509148182673503741459355345370816357064784194514575195308707811056599774101862868581040451342775460483096930138293048184300056162409309741659238867320011835328033040748568806580520236720850648631482552456883655887436194645397477179270152384318143935424219166107 + 45108221616316340093113650138383340443794331108894896493277130137622984905437159686445672704468444531785444147267810562965518507434602709831125065588986018843742050137736963023961857855788766666359453809139611512676704972897647128590863410572991306762916253002264354887968539835020039006773643868816604284437 - 63592863718243278936506428034335462778920519453855161144035395108531495932500061722704071397393459396175293391384850111894346687401093126982583443165268266556395943414656621426196287578684665666142022736276639146332089886016979667972250928194051760682089969371079090907619911937523557403396369554712301248735 + 40890961788101846588661049010633971361338934240093638047895833351775456840969628327083296893016061476557379573431258827604674192577950661123352883081152385669154695577876117968846324553742046115903647064178366557665583241513435669995165410740695491461448049454589596902941566978761432444173579955693394397931 - 23789680190946463377812878580266026468980296090596896776512357406685563183800866392136398996660160021243336255840699348813797473877608792015222218763301124531498446653407259088492387518777426507782179874379650177615738345811277281040874401551912793699337621810943528243718507640269256764480326520644564475053 + 84907889767304013924018171014775168067295512308466969585330816201688761176757940216770810860899537346929793457410994844869286146259814476975622817594489977430035633672299695264757861184146723397453355618082546748401116530210516059505923926297734479785243266914380092847029590823224920632391084520941339741946 - 51692618451725788561880730238920409785282740451710621959878052849420342006177864684372667482852621766263490428180052498956492675930825927807522392270932954794928495235974144157647512807159198375223811142632580753183119958426379587798110691342776610423279208636876480072954717910747628833547209799178484297204 + 70922074010810330483626698984320197278798989360753724078124984861642131528838419308001242424870266418489226288405512663924910861139212744547919419981467648505528390290224409643703477639465433156605164199614359573502017731039565248727787842815424515435560243417509488133325216911802238467040819482336461028109 - 2813351483358697640766074358907875654789901126124292592231138899837374568270648369080335914403833512845259541007480189004574917302905823687871156658443419071961520926650877863489525613763094788861458056234480218632318861126165652611792161489161382036217401128720609890003497096883840935458741736114408015758 + 43853692518303299117570838252270591355961362477874538310506582340134291153039974760386430324526789991527609845317914997818390052680806785142109424805324891090383145217253283639705603275632323935695595115460529858013060843387419829966691636121137269642697729681861854076081499609296778475211400298674606058115 - 38101729664801843201057935962839676511217416086731014378517228130001994526165225603162825124075989361011195694635367078045053412584692783174072399384146361331153956311140739275470454937791096083951911180817773433814758297937110636636806665627398142380994788315709918856167804636280598090783764299925850693211 + 80481737107092392601986009159758391354874116621950672503739982241659402920273781350059807187242852793148058114140525100805276506182142135285855044539263292862571336865667362002702143795286765187045551861075867695101173742332264165262654926617276017239728371457168568956607460326813322432122427231919064882510 - 68117825343927853637232458476673585572370414181251136237215318736571872544263324792893381676471973546822534583188510607544085340769071221348109258216237586806743150764736202193144535114327119962336442054940322129363713573477842159535700335338972368576824714388244630670523828509954966367587162705532307612716 + 15713358107547866334219384086943006902673194121308887342198381819766584585460360441154566643262514615605989308328752528035962548163722376564778557312315225532595678200423566712251680070204265292345724697377968536770280545009428590412607504614926230260870780987662150679821725290551515069387403318756373607684 - 42222873819147392441660188782398332746146777002604581110491809455930259861920723458601832169789609292336004907439939797888855099598476087097197072074763361203618786852993079477943047384015998415562336934347324481734564004012593049601128667257338328410952719640266398788846674999639422242883205792438564670585 + 22926198274632567000610580166932156742122123996892549208694531739738603816948821524005324100584291350190035334830417138755320365983053312757479149061520076162057615766520458069958751564607037060528092498800509160916888203504243081973981179584654050653480167885800186888927862800361888880180825903195429254621 - 55947455981705609565364363925692808196164908674539214336069148537181655632279530356431637698065452645995425396109650578130614039906416196171589812330377759147200961807527200507730322048187072806009616696134161408689255296373448560682242571968548047713762832886666408902133096801523007930785690413660934817900 + 80153124406588881694522155026789225527082628657350435318251246476042276679809483368844134216302279216199320761582563549740126847192986419379171515404208303686947906530258617048282433126270900422427761381299652314921636409074095630026845278989298534893535435219845077739742982452067776515260783218858136568059 - 85886229039393006968041747743349030129344641229645405538426302795768401178465728662731135612680898023306190955332688734046321054327382470140661115123645337109271201459269363626667304400456314252952609180273879491201017817502415982803596675916252767542695223111468881558738910311004251061568849434710271842490 + 89898722240757048087739994434212189855000788322502641204606541214747045864415587667338420712773726569522473573515212385731173571005778586760374794975689505737434591591832291621107283350195100628229280529383058117345893440748496075173185837057978556312033987838071254046162347808070513031169254721304592472340 - 3605118228054580789774687404309112759157046282603933245912645857746983017661064786190261000528088056839300292450233913022662421656863401340724375788948738583021030175148891524624493727584605200272329502596721875878814357150568891042741235121551620405853932117853782829631840344599109765887683119673419734222 + 79668706198632521419183214510237328094511735898813629739252119989737933905611791812667919786128621890326606783413180136027061540212823671572357343664055741624110432021497990183002329195010073964113444674417686826849886739773177267841431327251963108153982847465719273176037415383228139697159198414601906429272 - 83620974811733662973779393487968121821842502582666358469365982399568225935677374240044884084395074673194975746492436990376713667935780027843780801946033107967492183936657535634486879884252048851506121379740885692584252524202095371871639507006759539461017580728508057551815258359075944269501392613275576252860 + 72513300080738593572102530356371346940180314526630529212571091160114875015161853360658929897015248816459029240024780034818066531488298344566756210929253227754493883638956371920888278168052474314726113312110669215882515712088432088669878794940839395869561270078666210662101675300285027028714385511661108981715 - 53446670678715789492279624195137625236207027204194811867430342556730264654549539135149605994358670360219096038244121854872107835389973197598794485829645466555669349730403918493394435674660920900355394092194749883001610348052631573021074098672478798167540666773617555451640613276208337354860872950315519397574 + 10940928037764381164448101232691898340647155166909305118329530931140608891606863489743984453149263234060266418777397881088992917020364348045480688914170017086335508537243177586898216779264324016094544904901019679128979676420962707223462401917146408671715368554527611508144724090811510848850811303941646799472 - 43842763126235626121060882843558885594106982912995639508656206415020180977417710290852787209735083117732969769073822493637572548439997974042555501440099473778386014250591302432572114423169603239108289221323372445579823133952902556752375362321521771404886103841159401344471977993535456319951023925715975663312 + 42243325540285565276666729193604325948845983921893963739016788837218949518075791225553480077134874188922268060216014797245082442804843762207654597503474039672275131923234272236169843629503703723376980639630906268617129107747464558533683224267643469272553980944734702480210416594188324525781883122375165402180 - 23308994817519057758400437517996705565412262795192663891109154120850771322732511915252212870760406346035371643392116581340369622378741763457279880125235486644326369680470982368371104188315858285551973586890478659283568946339264200091519453182562997636414599398013501566157380199487122731122537036025202714431 + 27347426897496787510339953048974219869195383124009394136754210738461648755109344244053256552758104929958336434913332632404115193505914609637111765370629755485978504466393582530633722549827013314517751280278991515091042478641601405935707520150239882023151684076733797035205185437443861819100390970167487678752 - 70546695818523826532620354326316395788128468589815410551294118421084216643153640029363790002519422037069310306985649592434867383448236448668174925623379480030492167336882477126702869815640799887847925223183104580923754122443199295358351097268607034116619550024699817992816295937117373865230628935243853533027 + 55540728648160336314340873322487421670122955808324179282460802158807951122276435100400151284282175123720602606578740140004721021463568522869957994157653597730045540483190341368795249174607619098795064263477378481810519326816317983212808316523427422189525213364823377207238018644282329546145398909862676557342 - 66671908282400875436570502712913189578264390882645427736723395603681488352445324932238673504118168155226019505023613527967821550637623101710524003944214446537541455903632047490287715897574818607429272525805192466781507727034115496067787087097067648167234704917721131507073467442123507758527462683662846530792 + 54694052833061177982401595360526956001231549978223405696013628417477744660371616064989813862668763124311761836910032879356015724374330843517258646380376315576766486093875951998036696197970888392744013406002426546955368607577535753168264345059291174126355587670028087840459767083901633205949446165411224007106 - 37722751565240771440941785580942939461473694887162081764098417414796723029455076967799368303998289115021543075390888616460556539660011346088155230828313960665277581787356268962549250324405766573666959729185233465749867405631709771805263485654326549072956858635697494976249887179110417553487539144610508136353 + 62553797710794643978170056251173887897470393770824646587606484622746392261293916589464041788864548194481190342760912005922455017159466421037685750128604481587540852408006045917127268853646746008273542873795706330044261175253637360247865925417438740644805242749942020749019168819690804649056700597506930462990 - 12757722249083233105119393530989371536338670000702559598691465584550624225221303621139439690542574276707961371669652775196419771184511045137020703088051315752654087859114083778149668624667090748508202392050823313900118540357288294533921268907769800168625848140134944286753901049547025126995945763659075297095 + 25000680487372559757985069395751144996742236213077923396100896535821314945387296050231900685059493500909045763390056224544326547591309292031400564078210128362792354634840776691482732549958124539545821670655969676880093630682919983921792297608587198078331108240030288340697466898318710148096099266009981262477 - 82620625999052255399612129658581581125373826140425153915714200727487226956825687431602049609701709280300206716365635363781709031084623295342687835103861978440874716722960430884539299539735332848478014671505075311458683055620097496385889945605240950212662639206330748987755746951761770024301179414888546990569 + 16196827066645111356261328806577165494246848381916232731862235199834247595219154122427271725916133184173036403591004151982678699558375470535924893326019226916232495314155643458271195827050415548735282561461539839057348412631890316489119582908162784710525845259136253200429471177455578021080199301319149563023 - 52474522356246591613655456993333035257345898215888066116204370729862287995970985591249785723683490249107600105191874354033239185504298925504127525578929757851252360124251566063645443454526291923855172719791963824630009721431525769771344826714322427809854100314951635236943232393150559297008100754853806526653 + 12109220625305474879460127282721183631220376088064375334470436544498465738734107138264287452673803754857116911187434610699765223064898802706814930626944423683501923255397692416010142635936333047622119769938619689409313968247797661448050441093900160664546214289318420628272625846871364883025218123715881228525 - 85087875764403727913984419828801013566375429949356884932895318210988784459967676794291867947152735638321961090897987651733991768551082446400273266381136027296390104127736849201201161096543771479893820083465089505021604689103275904337656323743752460611172649414445311190961718812266118479414700646863606343397 + 52856864095263082816677687507245399123160649699547077409827747172836325677991804262575272481421251758471505581934558505400950068934738779092941826820791087615686537640376404831837179470462016901028097854761586195301424101043939730580154712021856846937256430151211914546993593132479457160251145675164622844434 - 99208391328094979429163706542221271357268829589148792262892382468317482301027904693613532825006337774964066295546947304415130660782296610803950046978438944068248285747458744084250997906540125533078600424668715139330720744426908959262866343501186009022423109720672161904638612033655441479936880997047502801180 + 58400484111211746350213309061390073587387699424558743208728844151927467619711214438649500942906125526361278865864123935758731807817772900106145925677637840821303069704749591530326693931534816870929752551862416014980799374448723737116305712572265956114291710668509663138986902791640488512797788268863431636056 - 54045931330669000174091852702501808459516734050099867022032930141277467174938861354840014476560829527478172338629513286548041942947870711670764965248304823716238858425413755278631925391003104893914920557925149936541965843861251365179245767807361009605212100235455018066595389746822980990354403603580106620128 + 83147970818289622974576156129608842964872280673835868446270287403857176167044028393110569625060114816697870184552044639397187070566905130837434423754238563716770850523792503317658398801194333562279033658429514456431739714318185571571557847472536139588958846828108286916971234448870805058369452935546420120386 - 70554697813123944612682497211206092856490963212398122867501237645305266207181755085220242922981617216092034254216648402113575995739439754787074423382087292188742987957489828291228916465758951197447275943339662477256280227745079860985038531469841046825200178848837571995993891081850384929136889129084922507968 + 22817884487555480141937274912994024942420955503630803769074966385266925114378260648416143175502381730474619475610837469870528707846692777879120001470098396133490204307159103078468808271899600824009287351143413982335765028101570035324235173112899775213896824334058450172893582075665831968111688798124668997122 - 74594941657552759388473381140373384712491521636736974164559027932236242150570507161040395837242291793499175211308827912233134343650866925589552550450031357940089743552297424841289684299881981945545296917458815445484199476749366545219646148225200239754638237039184896380712289100315878648104303645801787876691 + 33446050044747370075798193002456289687875134871830584490115764909939131261764993684098634326784491450198896692109051093217801299494094721332546720762031368213278361982797369517042792021858497839307630079129471445395712502700287013001422961171878702821570578903271598432409064807159119235304153652494556103482 - 1662939225509592522197933791350398108690505783035609692584630614655705996175949198766681281135853318154406171827058577552627323391519525681680713646256855648661907834966365950216129354776574362252712698225809043598327317726948511196630174142243510028164622101443038293380180887909067664479739642564544914252 + 17399871470507777563312504838117153938524639629198697216828311364624229919975804487241820940421064086104028226779471434608257517404515282490701894695452625338755004461046325637812917212806095883879665702489541554818933100662578309176086136971320700607213826212498338830565221960551746239664063397698811876746 - 72368970747724933155887377349845584479955191785604499873174278738265202090922138500615169713816321003120442460570376368948408286741651213888538996281614895857491597132892133822358040783890781302398339427020814332247959533236635714063596169097296865110833674822814032634793715923451366437285287593523247101743 + 75994442165105073364906236500655513111225831682304109591641277012383914565502524853724923690161884372002301025739880694281789428298521357874345710219785216904455965114938248780273356356713464189756975425397185396915933780373890613653412189495873251810378329662943121211869964445025817160531036387680796081045 - 95916907583165503164089878962617720072803007198098471368537640873517970691356117925312494417685508578676220986742089878132832868493269105758891989069913660792732575875181144253958072634921990804901028381323129709661141404342346945119763864505420220892900543342371822557305823735253845823115403123195860953395 + 70832548747131395852163931009989373681111031161647940992636673464355229172997126966909634034877621407037576217293510986941331015573391949118685642133054823005360004362688147664206808309549106519479293445102937239623436800380109905579071213682850171915696137027990486417828054936714983106787223342633141287982 - 12735916648850155373477367574083272888857601209564245211348471716832762016775540172056133427434451889540634911272763987323862303202367386166046321224058795863143440220679228669172157068815227390693398048344218146090977508207018880268065627560211127178684739116277807621926203608638097311020827488724432979704 + 59831959943105630085367428812248346753467605442316692157676045956774990274651533982791425671858577391487857660790794703022907255844401450446113468244727143174179302848308471628294371085501678859274472657325898821102617785419541744905428642369011974421932461303447741703442292631677232770012629381587861458027 - 96119927309200662354315926375814995867592655674584672776275338856325179341820994432712661667368363000907122140622169157027868153917275028633260461356314655055286953214411475077029736787464341586057796518773541435742670426314909194551453311544283086078295306141813264963099108839364309283036432122817656729287 + 83997658556826434569207862292869522104591204008098700499396408045857711951622448106462727494334685535601950773161964519472851366044971568605483704978997381799793054438849292975775434001461343740523215885803235114765631902665380385618763275862007926771887738936779748350588852466940004862247978939660856565275 - 28656086562123289403458781281040278354041713414094381187681862171902906435053945219056839513983771229098683052554734844113120176591150523618730286172752615906145553429742801749763582097118062679949868702729185282374233636131534640872473332014974318510984841685188271002933261262501246953878911094748357663629 + 33813811292927582166361023457019740209495864706577234402456453783804159554550301722783417170139273138094384318828281741980630340740808037394878771480626644246188568716248706478896060278106177395397560793963208598803177164007500209426353498421390264994961914734692721835028333285354096282196939436391430359895 - 52531594131398854733049778264692504741081408437903660760940113324902065703890589851175965837994019851191115486672913718691610478912639171173379875169065376121393994465562546446209531692760282736501168417018306966034800667088821579492388366048186945045802046858429147678956508462339279972925816591315029589647 + 16085302182363717143677056693582950208590592683824138244204793215091260338548567407732672825358314828351891136323810541454718647856617201153666991976070882956506708763619594440184711410739764952704426991101492789856975244300867031073761598811663321047662637495133739892957778821008829149265572344064160645237 - 38036573440621842717889325514946217024326913829373246871593111593231483781894987590125343891856433249008668908736923071885514838467295320629252329236343945141570261247465568934176899032990596639550938808239590166265505938523618745532394682322278924334905151190184693831853383948270050813665268775149650820444 + 60545065121645771749500231628631454054343157523465728634063855463109174453553225671529888801658651959923429339638098884658799612277959821087424843961964937705365985365555260009237950854625146727837725764206332993450838879202273184677291391147920879712222968287755952482955090717906448759329429914236160297934 - 30517705857210819700879157536941929761176638487330813774287117889674416200811344920299544008220189653710554589305260222961033087606426287979653504179298975076804403029466440872903849002814924544683506542555325284106456437226651428319484538742878592661254107470969259158786656299819181424477255795673471865852 + 43157722024943799522985579567732106493333274234485726087958110025747173115580757162810740446135799907731621968578072460822438075931802492387697043034859840257357820076512124043322142306450610562286519430303392387925901452113657997962325548342810483019523009712908353911119683083836068022000464655385415572246 - 97119750377088283142619114899412910985224937912510071022420302426315038677186432739695861377496895189700153067100026956174458549204039996438908657200900063869557649083245117537693702082273938372642447602024620192076773316658120440380216924546682291100672948523902802017321443306507464936769080253321265151416 + 21958872329643944470989520826901797595395020035319437811819605045654554928127682595485291379915592718177141588294675219038612807267574606574469120985115550816791824917581871315683463885902428784426024084335597272995645020289563121781849539254247561329463406240654336761915322679927561697572567042716979308311 - 42965240031804943737574929510900188670898304424703727465416884734571728543481059379018812819959263006307536299424589743029536359834445488923406447975262771578819479899530159172949354119973989877849002358608145759526819281661361721622815417184657719684915363936943438141707307259993488435434497053339303576361 + 59056165954943254792992935611663886544903787860610326686409428242745398536084094918683543152223340727802574614239976369602107709756019995523227170223762957650998514149044577626302151647059395294512223064652775826816435779231031645397416043139744679832691012515123844910529716562938458282729373024979093423415 - 68913079292403429172778961248274441425785457657957980671655732999494383450207524587654751645523207844403926006130612072413048342709026846429297838264752573605275773668090027708000510737207503426425944133277205135347054574299997666898222196552299892928759419459519215668703922472551807750394170030145846635508 + 15575014778425352563546386214447233224952078602592134396172448731846017286687199780894282345216318019962113327819228443129390076392451694401534448519877525032554526353625826091350169058947359930306610240330614509653962446260791392233650691944969681698499235045700521542508108709023782773037170507023292061613 - 71142111086943867865853331029580959331371836327694005348594906754019725079430150676544516538931877071733075534969208731975972965622802312922585114291783557036019062225661618465699817971600325831423724122763302723474531520048321684291120115324851217790521395307931614824922694897683624020423417078372768871771 + 12077907963330326129695852235405487482432763676975423256864063143968218051739204834890613584781122903802844800273648757850020366748642169897652815595491804608200976617254750148873333139030082881295316862624549514612331675787248888001209487090574659427852897703825492485881776081802765388046781853559516658576 - 37972611441192017278911419583135931553704740533317736250796594493035504853893102423673100701491902465716389023453119891617251446863286621882888723579345759740522086540060624983683753246239314854940033481497181569251804110219195232006300269836666699820573057027924199935964377408323308934591438165666966177415 + 20384954196315309347982257969624095238156103562888488263938575665713990322185992433933034971652064257653539475688092860706496279105487625079693709422711271645594951848450803213687252810090141622797329636527505364137808833747493540295371455320317241587691740867646642574130704068091353545192480248666143382039 - 70695982319941418125494259232694766701483834362304479316545167553116532200068005218387473490561892321988264989497935586828051583089709132824499163037555906825107285463099381119663817851573567865929064172562661632728346170565028692347596117310351872002935686062596100138879254619498725217584122212719382045292 + 31244481052134034050044931951325698959500382325191147022787687607432432310820192884951550133132656945728229969103092387639133472842668871962424098958007065781860346279734297993565096599078293078001348321103626974221290167968970000021448854207568001768946445019738372563941759086395984547272051740172111519473 - 77978847338448059133852940509739491557417527056782838238552735949901427584398339560219942335784533427542529904896360481252676297407326007549091715828468283082417029103813258363480712030159766532041631626169770389151617506393615967466030353248839334551652428711422077347168185422610936838689521383721650046863 + 48369237230461208378111290246959762050319598369701481878564591938667686163679656295709391620718088090704874098881339708241186048639924396620927299014868624543817382876809231087297328225345344036488562336760283441979357670021922846010612619991078644716204118032460905725778383782911841438665407236911963074074 - 42699524122718989528140726940852697352755739249890073549700350332284595971334040580408332698033691737985442808883297121038172926346350219406481214965120142134423105136387673108941136402769697172422858501655745493051153984216501021366395618304834822107103719071065272013783784392008277366174770454114938586405 + 33489191579513625108801232132015868118954341209076010257139268392270416487705908784388561402734341968922168986463489887578906427093007957166977762955433975235396183276117754773637488058983964521515462277512636005757901370679961678351527625905535512475955566977408289886839371734689797624069947995988621557174 - 18455301523486065910286763347411092836162717373227267218319188434859183704952152164049833781713459736618998954097378266702013949719232832248008415034175065662366440213226287330502381753273000019292285939106118101085863874203241775958497313935862690238382827107780119032354959273231216094249909667003939260811 + 64823477925749965376372984469875338155539342917668762745002277737807822464771279157284313578036488568685727887839208495779542987975667420237842212833527439865388815039480835851793703144112093192741737092869606442937373232871983759492150545358240175105713124804245503121683408593659526389518604324867839923274 - 95914689485003472584704509526953735033419467113987338891826657170867606721066384092714140268763636386958733194395235588923376394841665579042223820140322410237514180099645245171275171439737734731991775545629991495364815295666543985178872658600797355838246405031840351697135028054875111784764593250122665106860 + 79934207235136734067857754306220573822029449826707039060783592206881059167950690254091999852096231820782847154279809716997772302761602668382957828900396788716441640772298732465678396396750586249442428035653724464754339314574347403541180042083193028915939158359220988556534932186703982240975862206888426319680 - 68906848738005105801442100185365751235443897156458148395340318281319187098028938890271579637498537593758462417483788405674647655640102509692103724255120485201202338715157821715554996953161899765932054344990702701641354304453932277891805108657244485254119410688833460929567759916145934937302087448582179666467 + 56783020141800563050625520055518621735130301658841863546749848445689929080185030198183899436011569438720715902655010961581663565087292590753086935866572639212912963385158843291512481731772848843497693857242645637428994373948122399193344094631821395412792633090552748200572819675500755660854989173246852718172 - 74279862203437450137355795404397708316409093810134144766880069848382092913505260018141766147295008036912070597963426722482360530265091339568962913126649652024113688163518908802579620272665398565032997602657743519246038909440202251636777275048470604079395266331150231916416005111550133914484702405067201380672 + 13248900762657152048006535455280019155915254891346156855695505844397145129070264905901917279759469443387549199626041523035289173434379192884482034697964127368530362606856384551192939805508994907173383539916256005464386115897405467729413482396445201579089192386953428541701184171681551813351881034414785820448 - 49073437972905724155678101995478176290598425675917949396774899062004137134269337545373510247449485651863540458469077379417029027218772763948437602858407623659121345235293461048177049660072649684592922604921283039299306270925669888576687660457804847945810106906758833178505619477097012738657352790382743694496 + 41675218218341940222406378233284273445117798263847904944458910295301668853374554828541853791017952868119954995089444792695388502833734813794007528535555072133134059363569190707578344452298047369451583390939738318196988989224362198521256608375697870311615009511307946022267190503547465860368489662423722444367 - 51635421421245747491367291499996092315706696983272846878821576274753262123574463661476546878078298205468526801399120192314007099319646447027550958566039230722401848987374769375670758328490316417232584002112059899392005671959019001473794559358507678115035560110900057907922522602799038687241742244689216125497 + 29419121828024712006951666964941880378315738924463516104582162451149779739374037447914707339831626050472368230093893338171430074865399767545548046661882100241076816607485764344682620014663387945084319603153090882420695161796682509919230179772894200383151806478592240028077918540236072406229692821885571221294 - 15285273775638506075165753005905369355723865222177161266534961343587485666487198476179431773636269593777162995833320352842336479363574164179884178805130349281124970757317203260780359477958897246132282519092528354009724717914047038233050413369060995283256145431104653970154310611468305777916357313564764502880 + 32445200608597512541625822542561607749298405960599415964731503666823125348147700549901034166088724464826157148323441232252562970247371624320716811316365527789666568695746122045235022229170506597755390811453316716912090506405933927923359851119654924342369280254012145895438301052097034498086011112377442778610 - 66482961504170387053653547704581821836335318171942907414767033767900973437523147500996849484398512728694297508610718670439707978079451068439270989305785174616680458730028433031365613450327832597772340510825273969873248712459722512813755650240291138242110838912856075290237043771548410230961296622996720008241 + 20864968555291294310464334938981760380475336725985423598057411881613072562298676849239819869423056006426399637529306857586938458997112543115118689919267981906916817703830702409159100409525739653428432418616395789034681153078768601909247826758470392173520979563780891965306143193797278724533819859687489258293 - 64834221012587152698523073791737277392610933808035617859525776181939324221892123183392981270852035075781909487207042181156994604373651490111663633140827618579785244165781496295868152606220747496191727790476614556022801662788147522508386597249552001773379458746886779082472401365686143125072212068279254519145 + 63597988482370912341678828158499211217941223575515020818178911830370711718892957261234222140058387440698798184332455123146645217945699514213691152307792238522064475183582421825591357852450539464165501811692708494982697603284879879714421876759313554845595966077098092226134671314864945996931765128158345482329 - 41534456794071993595355066548929526740083232895084550050973152966520703016706101525420568822422287843187709638675651306738173304442423571008044504428203952784659611869078667226806372654409228130940951272655917709255393405639826006445434337335502840687462014871275397997958475898685228492867742480947294268703 + 31779679509404648265160067781148114886311931657219414381724335850209078394669711518689413469835153961217482359680477142835297188267863204371945361144459323869484893929614998571944962106990415459709930207333472101084985883849535625758382904338436256140320350558537444908416919181132927898174770674174792941150 - 12059729101106610681640971729516860894780748913138794440650496185448976469959307788179637775873673094417632289467000931939917719115676840498901995424612933953632373010390660947107643461488805033783414416425084508667681283021177372201502889189781425378988348481269181122477188407192389568186943845875714173408 + 67184034295804727324689307543825470384779319834470595962504138672462945216279788934309700217349709103271296918267785576297259310544083006687587923229848010716931640927408355239121148994045390437989127575387845379883694729698758029469131690199821978046498853191743286366196073875471718528574841756164887528948 - 26717647471024148775036498838587757935841007875304077074842481316051765628971957263498488322988291799119799509894445984084645367834434632995141561790716437608733302531681385712575485200175806439183239546080095496820864536097379704095464746798069888100890596228511546750626576999282362296110126095542090904633 + 7605763691859382147529552750691515725025442294097874898268656995475791940522797563281215162468988911433984859563122138280971138227761930254335097057833411220600259341980242235683556081069043099370802880673627022770217073852457613203449910963417560210896091089752648075880705473264769671055256159830679059043 - 100062713244635467019237201221979239593240062560102585563797759366696617036240689520834022659357900136802270691299437086865451005263400504948931975957912679226597631602393551987634405777999578933667609352489151951868683593269511115742697529903330941708002865509324508176679390351537483173485044183178457947730 + 82589838129638462171265837143978775132587416079396596369762003901791321578147509040102580360240986979181421656069249770557630843646852354016869275837887231733857385024240464127957533033328454414689763813021512771662454607803083476912152830376448450164182829469940860840395852723728991369583347528679372196815 - 33039311262146530815190529076040440832350563459183225135120176877171254657743834724596189392294951105182468111375039881755350470130622620531969246213922890243694255170044808802075723151739887516056714120976820680267585927048568247679939380517984196440261830077918235625084895506326217836826571404662398258033 + 43019489624517506600209763395565636905897524515863995279584893585332302500430800834653240009011260925977836606905818879177979496111661064321830144253493088424058829867167175329202347579506412919616744818423774992789321138667788565598844065528133292389698613441135772869650864164366440489285074640473108699296 - 48186140641902204831027636848598157205137506500198040417131315299865744167878371330493428881954725164426289104337294379841861013506565982584020273901735682424633454165054941259406834032978804590593165734659119457120251804132418440421093517933508432450619886811507732311410934755728099754257738706443309620677 + 33022215193339415953040447805384227234149799921854667592738519549339149097685404500073743584043458198796648636928793456579447992873202337925497069350623042538595260189459621439866918702080766732374754377649292910157391226695614141618283606797285522155918227901168797607019925175523412568761408449155170556288 - 93970800703197879764026785497881657287104074714886545092130360325319561766453264446042115207155285470524637925855368228367132800001306300814946880683305859145723233200840841071995198195184940330887981140120732654647535994560836414753033529134264716121313416900548941258294862509786467628592078765632017605803 + 30415062082001326881913861142791866423452798341515864183441599983577327812322894493594396288449397528145913494217772442810203815252506588527472909663121934782764850002388563634894171521054262305767412419763203645486657968590897673177255786273284523042412651071696406608024199522468177712708075235205376891665 - 8551188856668064399442831844364476893044630678324173977236848713413575032620836691356697457243808344488111816044112757584834239059115776006898679397699463970693974995231912225933393502749596336118801328158470339471005621400647259355840993818525423098184113036364672241311459888775746638634798286387902478320 + 94423065392854181613307528880155017734482482524854307738599947724573791679851769975029449005789546590893587146625638434453028955999884596492005777418357865364176106965683586943661773153925519493189693450787159869396736353530255913476919181305943433394506649094093787755766312229554400436807479908026234212666 - 32830123618615517851497305840997960550778373055678410594078450697130614086259162578956995725199134529554286191839001757677812963935048747978615923968594181673075048535033804416779422757574935662038806794021524548488626098032844713591295213210097875146810595139002635442691642215942366807247151994366910149069 + 20974185296534059484304084724697007568998964166903951606913640323673502795643269053072463819725092146979255694036179875147785113465044573015589769190455422448640373192342616163561143998286811958421392380060236772467613042666393489097869136049248417557814475428331739938553182878379497800432598144092382874715 - 41246119716141728891513762818565792395102180318293586222025626673219357658515083872471941714107107550388465828132045102933864343101941240646005063878269537587276216521433841787603051020421874258121747567524823713975567927831679989036856908966779496937494151429344411903700144125540415107554245718987385129107 + 40003546318218467082596406501437066140661053373063169699584091563029818587125367062553934140602361575882220982614131659434918705070012063676406791812482638513745369211971774032658564186213344272780209355312804828805017389023510566582130614072503998377019579294271804595991733549453595346643445802053268972972 - 67934529954363153966993583647478071928978885200570356568048249688124264414883539211908851143447160975332674540914563871665572768848999929104444554133127544918764475166053876804455531894975087035828870912406227639789915801105811115537513028249533529307029829617695401269875507784849800855189320383059874796769 + 53370126917509652574310985015309370273560213784453920877320971564301429668764486755128727308654575613384623739691017808993816773099495214568936842018123781278527345733138859569511641014734968280835500599347168351450037730349596169552844391370361989731302775616818296950942240410987698052763148007998331158035 - 81594501993216264081643155159941398458704780318653002221817011042347406218004092354007847556532225939821167611740173933863282817471922447241109422229913546310881878820460349072935613938085051287149711100365794219939747347360150293217187674131121215057538534241320946706217367767544062586539939083030281091155 + 53982513846121527173884165379714145124930573892405573648448488659457853128974779206702799300040917959826206112035530482918606812373323220381521105121072444441865134801783134180174822799228612477140497634353235949416886003533519681177384900182982306911718848359558459456465417752313218605580463855900054628155 - 98844046105855645309281822867430125071725747982815352018379349888122934639761093053857058459596343177229650648426588372824899928940207945695117272948272946529393640076784416246936726606351497065177791938246219596582874724471985783972257665549758959068447874418165664857043552238332133780435680194144153638478 + 76315760310792609630053866873354683148460181705928138590962003855080769144871885829615091053657115193822608250163334110824494868647406803116184596302825786390167588661007056877304012787427919058376299813458194925359514624625283690968471969473728312028137686063488373110827581344190632080579401613334745377884 - 96779281604224218368133692006026302318303014224673883542426824188885166904097305037446603015831917645794905393905143644445779562991702166936023356538972022329648679367922079148973914627837839994440949912075786886698811288592820190294426556715816875931436356657984024278207067569124190079461257549205109071944 + 77797489313413062454944879607373173196629742338032584841207788830982255821292113840294073913775863923904704645959422130990776241773698586515793659827839908482169209787215729582545808754979523361119965991907052071916505690857290949834221611188364386372250867644790920696477787400077700644209348030160696276728 - 70201474607147698039070366194346666539803162118430361682602440054443120108114540488091030077775395022777784251106060842936540017145957268725433897116756803608928505702984950900782023809482284031247666603527651199089329391375589931421028054460519721217295005484686602210731724577206867247417723529985543665186 + 8488673186677444499679139090916579127491401714751373224370878915805812210516409378094624116129127592772579888022251034806207804133359654421904780759673265326665730399217752634802373175023899272510114789806978329317596517169116099639001559322504901310095590452506604190257802415466844592735400687420566814865 - 10879272028076957334569518560920923451140355042495253298807919210601819988803776255443102734907741445319911836895969283582124434299089881114186758509641012622962307556182576982547629762803905042482830537634746418419579299263035363054252486332737719137255541058663962140112786197305720743660013366577227650221 + 3764865971335754845697711017056213687778570067612135279115945661501174010735048247529307974552462534473735918541601443983680527628383295032915155783936225201032807325819920835025012752381797077203020527553140266500583848270620414224546844517021873342624370042962508423180976909954933658349794039605385444079 - 55967613145493640632354761935100884805193956413523375736569265280875574672631708437315283013312986811305049949763945788725976305072803301029937538300206538500646132220559851476199118786726882657513335020756707335876799967648391804916473177974495541477332619333398576656585880140717413735743074611183903551983 + 19884264903790082767881475052266806086392098251397315653384530698861680546748257038089938267044408588487998325858021221378219457500889510027427622214978377198116763798118066318212497514385542784707412838912207904564412690977556884320780452094532538727400396470697629954164579095548003647480332259432140582559 - 59051755867171439770407580986102601204172782251815464358691147518199123052391064811840031388381572690814486743095970293265509099704764158091982865187280430727930174977586313350918893301084768037992501596823972414896439809124642672351470434833298248236163563707318368853439966247519663193451819365668747696396 + 91434509428525734743681154744274419715400340994038412176633715695319815315131564930324358099047375610047192200047248588543072142895055921156261289468322469354716216875438904303786156641792276589396654081634737515337928965155547394969922045950794323130401246411920465834256282346947978938464606382625704583651 - 72035166970761502751967315393679162252068395391886614422604447415356949512443704247125329935179740893725656022652748121422872128488167355653644327734509456095870196557297786236911170167347832353511009317128756699393170222417677872913837750800741576815273099329426249054657917923138521878882828691071206371497 + 69214666080189108428417482729139653422253342701876036961088886350499942618017862435924275699226322586794926998481646608990413664546368805617002591035891308511677058688716760571378871646556133256684422056129057724580678751726961680259571516786196882507230052531134542483938359521387678941270529227066570787820 - 59544072527501866234196086503824972282678518278720368609558207784103303370580050798905703635965524676167781262666461732884227915286943693428326756322004144604330541843566676205359907911671397192874204452318044038629855793356529809354322168161301585589259898550027731800515339590035538503648247026908399251649 + 73534345245038096201147512210111760953975797615544775647007605643615797317841513147753113139720688768943026581390712432859929646427105442915129708192940436339004394826612607089830145658388283820018617794518473248684359065540160909540885159443301714531722167185315953700704119333247410008951516914478179729450 - 98175592374309406850889850252973557646315072733241807678917287113175659017530718401015969921732213408230884259114699981964146059214922379389615199939299319817805714302437985974870707907829162759960767892623337442343255505652752090966597244788716493418180107577919747193029798271353094557233675636457567611624 + 78516670075791096328690157975111848261502634377514802645685956456643177276000694888694216760084272916134866592167310311879803810298790019442190096832519730084026073562371796661014895985048505280882179694248862121491851282698708321617655299145507254100815894395332158066943918900999929740208372940659955629515 - 45294028118119991290876808950650152123224470808138507198636138282642079795466639825477752677584659218237138494091029944163988893674781410341845243935637725426893735819986685178339799274899414318270927622521562556650477816138270034503298436618503122597191339818629415111604543131090905146585966471369389415014 + 54522060221646067910321642741884554112358702652937414121086269675281068497771863019784460478334039115436784119592175824008736939112900738090350342615736032111474382195211641036296879568960775993409314190742334516908322729321874611905510589977123928479459130775628079577928795893698143340225796349567312103958 - 55836156173281279616488061397173367375080331840914357784847989346411631657741376112685610534810857761055675632425213259475131435586265149016398927960932041573304895844677055900031339574521727556203089154515545089758806697341914977663437028852726476068157542870202656415596828589386661822396195355687706486601 + 92205674274975012098419869064643232770538047035881361679145806465400407912000688600415299672176089150484178703595449260325143895479632940931474178597669374330886322254426232739302909066252037219269672327752464890259390090453397248092519916708870120291401577012348012369863334324357992475061041451990459072921 - 19377245884454004259889457560825142980868526256516946353656049464676859500104454105391566284014953580676492486339377683398393717456002715334404991821240639338577514264251072034570208085939141277522541241895993522359026235827744546735108349384228385771280341725947515730053201983592392090504209607484043229805 + 57655754976845789896973098763401915416916819450081506007966655738097667621703461027947502088531762344923974706109655563620950907509341010940096570568441406539246163312053294473005406148803759688411462814229337163466685377916405570826930162894146833233924023096519131604576668352729392984629502925767797994364 - 61604543575638049233500312568823870283188555918132231752484414552876709710560456131682341736839116758190015879317019454211897399916530963808176663476683449714714305410221004284381278209650022527129608483232007601449315999942042868643574822439935865460586423838676524711724381953304453091202265936113389124889 + 30736938676441148279967400982417766787296827666016663948398422299413688725583774250655819974524303121452738990280000737525005444618066246385664579209417816097659680313057714671025281364099227755336544844395347925399779382504709885049961879041947397326993401895831742516584805472313302655069845383538023802585 - 25842571216302091516040869094703740913661682693640339766337337051857273244294272845442317181537656872577460550800186360330151946858263372425735823549868041832255647067747432937296983778517513709818877683433839092482112454301504245768565977158047399278854347687620808901738846828619186179478398341766303161695 + 72838715557927278911523518291257342869243833664340207916127368681670153293449973791358776012194979730561235776072405109615421258427620527523481657318737879932768566994976954048764291288135341779984992293965126174963733792576219146512410662630464264457446869970451992589834784890954561591480008947156162941793 - 96855304075095734044097265705618058277915537146303001067208361335708606085614679687576762552099257124545676495775813444560586050771541135711962667521483789266099655571401670410173442661200729023589790605741871124155427101085094215493016973009735753759593976893557043305169560150461770598839836300827935136858 + 49257393260520773044899586946604838051629572146729572421546023844660797991028690505527112388818529052054367884796117000615494031500194443639408826085664760614964969773503713410176514966390498086407962774108347267154669543596499964389846727706644633682530913797417090002509341092637217613907079073134677416931 - 34646034442378489183115633440281704387977137793198894499801460836906007283125810429886853539896158223493550551370015799625390057938824454010761238048942174073666295587095998547205447727677558463407419685157754742641749774734052610136873378399698187725330702081445912436202436315186323322048945502972361335454 + 51042583466180353937851298194490638154780497214214953890955148849554725582894437344095515357258317567748508559192622136284042450402236293439236887272107949344382061070301320209026724265976356541712621410751352415859422396094024621195019181962947311033706449047342500291450042120027234618672938523810181520961 - 32655672117916281561153247374692410737048125251255067296346085066553160430011297334638510541872786235377090340878482652835553284131936991202223649141172683952960469676483886326787776295273815735562368398355935119148827820190577411596090050700041933327914175005021918685125462913828876491276831595239672374689 + 22662205291442206857501442006391768671949650622156625201981637064982995187425564979892045413619930537553411732467746860123967576711629849234879032625872274278134220903633077238038719506115601289865532092647990528689042008435743568374811562316188614874269949454816578384504561824420883763027636511495497622517 - 18896627834557742300986313598437238486672668158811614618630770612397778810709131622552216960946477430155282248723267379684045658769064257233981223178353840862103774184644244346165717619984682617385377996853797561023089146891284007449093396337474353018633224150389150192027654513747338112905473762142714001548 + 52710716752883998185465671092301881591669140246139105141308575672154218391756323414446212538823081422374806870505735849373554018538779144133844817023029668900113869350602950196890825124213328367776452180532219937542520472182592509806512273246638222767988485372920671133742520571224962314000974831873399413989 - 22026796702667186967622316805555635764102419670132734356502673158494429898810292973161559184158247517145109530312915170866521857920252541861551878373176779793075649366182939640618591255474014380357629550907185822619388744922646532550295129344111346437563705801703320620582108587611159066044463365829938932904 + 28340638879274170076160681468215053777989923274642965806830359670458226018632970197988213071142282286374509335952773199463383397747074308958743187937002298996411051678311153291833252074001673196336694829045524685979065444662883170117618174849096743160621079379623992447976389074678405429042331965284563368111 - 47983912565097522496529031936703851825337639115797646097472334092228329134140275114529302555062929534353847708396909420380619692922906932372112476298317661619941398975203703508324009256851747601019757480178352711645735312996993746796713879820052240360111321277777709209829448320420744533519903153303292655020 + 37059379326247411916391332406072371400715423335333861201180086790502780865447018799806140766706462821150028042291838842002368998943457397595063251665843093337735324235430094794197097166245052201615537819625381131750710738085384728712100062664524546664110021110923645562011031401887794996111648703832754800686 - 99737334552629640902233332182823608858110332588099839133213710227806782771015783867521459275919987007525508281769627426148654351200432951974021724305477899720825652701184738936317723839758238455394141535182292476973584491977926592345842409103745198021349722977385398272416633235067596638116598775275221085059 + 75898235832178031150598505323058710679208727178894767443459782474711651357137682173116045637504237713263338634837523098961528129554827834145260062607112293804525850952089727999443385861777322458911136831081979491447920158132536082744072525202763043739607583747671848958600190802449631020737068780459268620672 - 37736397331301299724842207218366035366048765488922101294680866452359208408311896886258276424532892813792378893669399940453443204091227790281602117357674522980821297375229007494031499857353038146789593196807444228282505822737001563809237440360261729703506230881363431500510794443942077434758644667089892872963 + 78132519321266695739472793669040626210544564802625362358170168088172990780607749377430792695371741900951775133639139639250255831145803890293968080133554821623768064784461462878161185920749083569363523932233264633197911368112817528804784223252624054755169739059407461518668015796100982339837987901024094730185 - 2075699682232389469296073187891335012819661869671915339511461692149024410532873959816723344511063345970471034046740138971638687217833478731865508274018932448368733733025005549500094382714292377027388136813696048277008017641355555654407152849722423850816711948455033935653022375510220649024962781450063031931 + 80651843119103707906689412686835082419427472369033227119071206354342913518507925525466512135010602491329167055079282645351856666279243410712238933999848724134737041629922913537436725137245043845839781583979275938342702841598567773031384755467772127215197303155279483601988790857896940322431403138235518980950 - 2069419182489937016113853618364839734281225353994218548911654538625568559716640411368566405937708343630451453070851489094271661239683462736465621414859013408534499090563450032971148660608924359681542047903831535974496638998187337598832416201342366911111558514905733580036548020339671537831214810740565911778 + 24388194232867989144476802686056271620867363645033742780602031426475691332001904451808105050614220527495468117685561322030955418774297300543608459964488975545870306717777406522265405642905796229295315303553714611260494836230008240632558701714082972603137082483392701185996080405198171192687551257137045097646 - 65687359023764588383040935417856898799095404737053841831055881407599590512544394464861179850588454655257987776557074854500734599879206551857897502587821179508145989114541680167116493654557482254282212701635379847102693117612282721305833342684226199270534931091595067617013755334944256255559647036749343272626 + 25653269506897119822903120239839038929433725413880761335836670697204296096409119835634322663841049415155768428176914600425300798005283854028023391947115705930796874144996875210990584004627942867631534645409841666639565835450809717973927575583266280203137565183465657418332574924494549373121703253780769652784 - 22762671810269900775036680711264493796121917605145510621838331086300137032316926129064099598345468318203227523348233831952380067841277175756159673595737957874566083345349495679909096487217064522299708806739193436989805884345146320433179044849202339544782686982186127268447516877318309418498579213366646305422 + 31904516142547884937642780479061607647084113254620756283181035666002565311413463540084124613910697891625874866565149080760855480344256135819379777218675507539572950062459139465900492384806165773950303664157206017816459129670405456950335069599080189953841421639174375256505024250201189364958306026532990886279 - 73437374684090998522834090695698294602490390699257774931885414362579864176689572167092973624122683011175410046555482326895593636592550977298026318389068774963482998404157955986523874519792924345062345548286198448425256633659059129153952406377936164088752985424210165380802891681347551543530045190433822458032 + 34341956827709230700431990400561547315453964602586528250366193873218722632882603141749666058214608104295146348986909046457902156468835931548712707257126365344872764034357571525111567800727846597491299346776515322579053868694079759795946356971166541187720002874382966770159490298107774112345758735347775675266 - 73494115623877110299759335343549880488322681549058085879786640604096531267275536716447625086775539167680568470764775045723924040901188474392422980380999178642958643224583526902335754546016811217704080827055800275562111393356809876093295998469466466022807661310181141257024960608712152617405712125705816623195 + 2681173939047571624027179407917481111086737922348205540757474656696911071778197368134013157339068997523264857580458813942277889818227902759819348171655199063201214007778035250512709870246468662013638153246108041012178967130978578425046684662476936546041133553176758821040627698974646187405980335924688395585 - 82201424319382858763006779625775746241735620925561653592621397757164253080142242464908141516051102739334572753502153266910049145701613147286238163661601201716103397334883999151209694734940029142967392136558366438726286737179457106699114906687936654562316061839451047737007911158523355074644953272547801734136 + 59879455852539151246592842130965676712376300660972378132890142164806299984798984820116709665379878800524184984108461341247458119493536912934032895305900973565478487895747519044807667182160450359923383275725582436686259029090633391498279727902832583319653190446457350003580023328018263609344566312802511819531 - 85397041126727957875199535376670734518146058393209735835940057716870795651940124501349526307710298494265275215268356740587463690534441860793615096010962834739777540139370782820512398275696305806822579497748764562468979137696942024664671498445029741290972360452635187763144934885303054298927175393186740922438 + 56654084112573417020346292957231324429042275926184968894607411753671140944550098601682241215165289193650470398070548183287888475320016778469456014303225716161406815733203718827119162637679874806369427010408489675479320604326050476550086381903368099941202047627918053120356650291240430643914227623178854575987 - 73743514224366170688878382718868882146183242205539720989296142160996952829834198518075950132979439020925509683451931873958122466984549419387178373731799731293609740929238665565212098517534222296317032188773755377772892660536696074026743003129449159668288061071361881565167586259126093987504970560743656124300 + 8892019968034185277738936287178619173748107355785631421210441776746483943460041812072616086664023737770140996151986192392485409402389001660893699790447416221134625406044747104800123228677562761533946884845659084525801788061878171102077313420930688809573261099578941731119875040093934721737053599786119357214 - 50125162539054742153556564468882308971723953491553073962013822408659130367023526170205922721408021210622646243096912100563307304112759367158660810158250951823525858825178295924771775255154895911058440578157888846325804072139537721377244368351727588273849605628667020678495194418882107017882704760955258312948 + 32406033762838089102764031293533729241214621857358335491113474535154231061883772252198362047788864438371159122112697342158178925533680986019986073478654783051084494035451660067374899746661547021864859806275986709466746494793434349869925380243321562554098995824186805597577355130639048529513397299146453182016 - 78869711429004262161164898276539286672606217565139661595758821660891963353833292579854470168683856942421671236005780510562299314046184345407030212378785910886398222672280913206767518153029625141618509275014531743659847670955527466013532328043713761777795163744607563577750405455831592090573309807167060379788 + 57627518460183402412653996403396770904700062434506466847730502031703017712051018031574542711529840480954249822230440570421630017919165155330999753932311847608082451953225780803462035908309083191846279277790792193825033984218011556365224083476681288410556077854026355074981765273497703187034122565735545736624 - 71865431099432367241409800351443458199958630515379348556271133274844019009477657584127743943734738374044538963308804291663541256685794660619416329903836712915081416992103683322487339839492518610841222192427182267457626484334814286161007726886529540769134451657594737022565754815898062247428288388744477370527 + 73442237581307386305380264442444257934574255859180423743174861177945273626294008644982479129697489362331816404753641754734469528558603879667775962388766435058570158361156278452396334134133354429322821996302948836045892079684836612502931189976769308099016632140527610861160776563966755245790733912967808331840 - 77901303745968896221140941053138462993281202734835558033186713137717409176006301431229312107827838386539573745616711357678828238977304270445059544569861212000756613189986035455523304411479345417742493278746196596382817386340630065092864493009904889830390173534398165514022027644966706365739246606418558256508 + 46297846647428547455334466239513877908307239454854837887204554313706411538168820376719417781756808895069750481134097566824180202889920615621910906230603284873528432389533198471361502200982604218894235571351424873377711601583205289892055499071316225013455178650438351476734606158099757771075881239300351134311 - 67601210529470834886666616461757502459811634436568312869868108782104435993712337829725705305894987676708556912171955541189559476082745637809283667107812658775572162573343167254999949936346163800229002284474936235542392230376553586063730691826777733567760802265146161400152807958031893036595288859650815391158 + 53407342754893210309574819707001648801888640077008098098331315619727385618563819027991345316569740574874438563838251586243583829256160166630274270976969764041190546496118488620729711535553698075307097319465705769995663264013560160381585691949235083517110662447050749122598545866085958589088376291031744532494 - 1980184948125243681780523812534536827650315582334476363100113665131849259012046000327291085838924754930192258679685064538174501721007984813916733141718669838044706218000957721709245647458245666607935796203324600927727428250230003208280113682059579692896881415807578103608252432039986617057786066769953376583 + 37574446275206938621706328700156034483010795331357414033074917613812910729994669263542630853255719014790733168632233026545668784682303213488173323966655934067733326820863892820699733043080986957586175823567166337048273994897702373167630449236863560164862689352082416946142811156687480694385099795650650339255 - 89708118562388551385151346070572975448010820156054133295545832576284851438050462888261758325038620959686085315906729186492624352130983398821660953215964781092803712232613294256826996185243426345875647271621344435806561789431923084736480820488906410086508061743003708612784850423224852257893812864152092006067 + 77605080278681907103214276380000998693373464947327599503936548062338700804576889089917698107441115193537040394084792362617374540650110263076367867094335606749707526992910319664909105533363940981531139625706714494637349167324156782442482068213030054111634457952474889753720298363628109991053692794919898192249 - 6529471887964083231881338637777581427266725903353592764209032199825003457128255506233615558303279808690813038346338377244949833352877163398907049558272168518577354808859887944284284940043845734897091469984740804112459134882270925333427230737205419116239171854460930924986506929202186999036718390583244855681 + 27610111722835394937841960687706476278212591000386038778832659623803189324171522861580060509742804533693538308849278259140758080137259286941792342014647851613035432402888653883118025307907644602627967154079679887637936043689465815043294035003245006034658943400013684287095582235239620761567787133972424379458 - 64101539374364110416671523564949980696919441277958752509917037551735237148427229049835717152694169645031292864515247335763978038221534798029898759085389693815049461611245401455070739794749756681430330030600087176847117173884929693722132533377628412906613917102458399116942074721931948029274539597500712900451 + 124542007191783429774626564155316862699028715781424452396708336407157022337846290283975960870783476122428168148265579540650971416907541459990913278451727489332911548865799696385093716917184003066283707407020739306247798411150873883122619293711138582276018084163111306905220460950370296584909965804185822717 - 12844229700559216236667422512860061844164570916092382814054482843128191187849414042915925820576777335050497821349343940162314627274802114131348560985367836124980401684819912972932566101779465662584106494002420837428228570861200145469580791934042032697965852299337565324330565741224424793763332889536854169223 + 94077242702905440172652598471177622173519903484129389366228766947630134416054585205319063670544899574406697312143274453031373313010299692672417504472021386334352559249378479840730433930177188642141788696465837244901881491977093099688284897201201024197802179367727968105735367530493831620267998171747289140903 - 25179356630415149813049129586966689442115786252406012062687934919286814269776485976238282851774155129003833284866175678644575535831935093615047045290164304191773220227960594304869240643863908420044704917220512278845774684750306761658135281568582481044505325101213307082640363293348457695240587032249689869616 + 53879646861695633009153111150993902598337502784722070425671775540954905280991582050410418552375522604267494073675433878518332607056568849485606981042789542431334374593148174382695047993771708350195378485037161286657013328070873725321301622959839134477881015857727391631327205392285247916580125739408541295170 - 23811552810448429734694142494799216297884420764743257969319534171539530523104563079937340006781175976992890829780866672576675680796130933171099002171840772716804550407601606099504491727525990671128300046286080223771808281093514925626287465522652052563204998036964050173731646772974583898405277086276629033978 + 53403629039848107895199890896022320895050999021045398692420685390385243633993620788136066575092741312075383924855350368087043765163447427668357153503813251639043293670072339541308798604891524917348948191820580253329760889019359879332141870127587394185848517483322459829944264231079973735918617306247080708758 - 91772351512594806417053830688338562701134201246096303584338994112622396253148282146876511669793069673370323194783894332085912322209492785173135396430759374351257631526894748871549980759905138906873688147710199519313823633796136710741564587919982346576246312720030089747460704821430029984360545387441017066414 + 28318673531819163489442121656497851404506770262807812685115516052098737394548144922850851847744821385857477260791421520996779920816596997206078580318447646616596650329214871293041104886332381595871197041403975396276652261267774068149822904555196718486671931216445693773591032839613018638603697172897575243083 - 8665218586286284845538386201425836076127030556296155716954619847555926758705383466772667775491728165597544533029371312723576400621049689203458379472655713945276159035995366055891665334913585496522362580008334489664240513534132460965323010953267067308531167347316186846993853942565716449901600639914863955504 + 89048184466038834873351581999548977571429400875010221909748338572438000096838141345168737077553256438551157331005836389895587894079939327083148023696439127547176952419919273169931461662978041723149226533200377660099762418422669414236501017815737000939067693320958396795216450623543150183658668055647411633584 - 39659118931715582497106112500178506979084424594725089393631461077460326909885551684524699724467945198444715985917318640483180596701322273631535339793976545794321554403433568294908618238619309403496000058267553830363278787032464586198461320622579187410083735305944708318571808515464625754894332588005972623226 + 78911936041780885052407396454250988198192544206186883840596632138462041591386475402926866860048709550727270148788408368779649554648572675300975245663448325190718166575350997254520051050939468261987203113543682331871275825485794397238864585049793472799691121438302237036828857077705259254888949160274142217168 - 86774672238801756409707438547924739817317634745897241993407464489078472448679862627280719730133084934527953698855738619276047918849969847949409623753886424738376840208467321396098628809956998258673079121677267534963013768921858544117181457359476018303809338185762785688301061301016141154567672434139584149472 + 6067450842380073140283155078964452600243905637166452931883338443257440503899055668123308228196275879542244602535344319171572381240508464973907972270754755164992906388388643548345525942715288042444133039614562226900503782916123308449016292762894343447057252344905467706202078111459015266330435009082066478663 - 100117403605460785733498322316053640879190595850175148326980418848791455197934745079292413609986296142572579885190464070135831981668582985041157009041443288366919330976008485783822505266779801504983579360086789283548595740365837929410283562599534838797395591363755618570198755721665363702239571213161638432619 + 22452711672719778178550120349216786804305477020922915564307802386954655370165593832479882499467553691742304540216710885497853049875662807981380009369468281538879663402861794643204374581033740646090696734134404592121832948483013604142303101878095013707408450837143297193798796104132697803091934885480647085202 - 2158683112243925363853619354635004400370104560560068040647696512315434196247591889942878579544382651084100090434245072297944970607007443318182747406330140812069805676089976348938160692339818248559836182369288262946498519342891789235776959095271226312358911579122345858716598890331039007903518862642728197335 + 34404204576980763695714815405613489713290843159290204990509760058532073073189547959528680523921299126269776329637335260126850820589670546511635535255613195729991474408926711093887737706795802452479862062089560479577878732455000892673478133077065158599481883697831053463776980508570960820672436359591741259505 - 17691245070798568852361017144205857145814531105761516607635456103242770753299156354767945182061020816504321155598021761400759465931358038972273106924049333883502848574858775408417257471546417340753923063241283697460913986115937290199554900850809089276211366616561090913734627856741508925054781313975223698062 + 76475943189117631326972548246236156633701086843426596007525233955225445402432124193937687079973972512886458606063540280573551123190876253504344899342896150830852799851731824929768217397755528338652573918919720048962447601132292219472149315808871573519784765386243380726591796717804001456125999386181979002241 - 37461520743963477246589052372186351117236827661056577781846477803434966807494275767730709228583120633856399183973605454983120294153014417995654131293228201558705338040699574808995733711803215470707792216541323965364131302379620707617501801392884110925001538959678491635121799553609716298632506492066154822072 + 17995634593471994520444109918161630604569474023299144430104570974910265891147675258806453732147958484176282878328337246693519374823137621144406425447546298691999206961172857760708828392061842338498379864453716102617799654017773670457250752679415694164788912771526432135248397819055545582376605616842588753198 - 98764330103971439114905599840976519156096409151740276652974637676640894114146274418933675046419845836325529142630156208326881138269833654717575941376335124506462654081104222832023753262815123187645571654856477648693318209782512993107445584397664414647007035147158127752066963204577235940289486425010465090060 + 23930287341953673685225319747520711983776543207965685598094286236202623972063104912825759552473011853028496861479193333597213710985876491785505437282127702003017556078579192897481825273046763029445653069280829221993826362978058933266521140653584950822221058760336654199240130089166896631200916687587716146138 - 39311499785578244016801673513138483126752532732967463016408474965782043420044746357557251652620457899698667609560050860868156200607557882720626407792307706410539480031100514324022549667509834702706696157469594224598758748549266370567048033606364513061571299763682496748933781705916637854390243920301349597318 + 42369743251592110526097625950572803882825056372273150724168112448410439807978120479321478338705614703782058488091618616081810014229620570886189732785758807917012302585506492247030129960663416029979427756741117187240158348238413900553681922556606773053818073917913801395393816877544240129307510149394577023337 - 57682670659837676229521774247497382132945660850354663420896212027628956408972205797195242488801386272318102704309858183686757723276312418983295408525094327095569502258795397425777222840825908062672791875370467838147773284776152033283657772690099317587769893958343701482127053661184038381883438426339272697593 + 6745165718277949736910134886011957767420829502130829324446905007977470314834629308899605968723024095877055816492512032882691353151883407155171368461094113558094877739933048571095885843802158780567079506293621904848121245012016207735618408009158113089234220409985443473562956570552120250685505004852246437047 - 14109456498285905112339177094204514806949665293033741481346508785369939783221431998222853817141141814796188904774698696153353413715634082957089540532779466427338904266785473423473596447739341078027413267002833989722642050230436289774113016819105297791471767478615365759526931368060361421408310682447466741660 + 79674362236495930739088252263898228779359229149644602049941468355537068470700897020776473691881355648025469055074824278847451865744446129054947377350219092464198953878870973207983253667460481067612778153463332561552147753736406628192949318068763913191812307299979579967380006447161387355995023097113161953785 - 49368627543210012469275028362631240608768576186875242928777235949975576250443514577849457806197845829247429682746503862411390674501793584799088521954672936592537286863761493604871752595581423036430134961119405855979459193558192960088061844221379974643919427335575042277345917987326530674061586945880575607785 + 79350972131624538384817384753644213531770174556547762312573255329325780329656776533345132405389953674932702100121809128154131492110992694458869333766736867860463543282299235787608467914708841149550963330060824866917787253631573521999880868594894860987977540699490759665402548764875663192761990509282698899821 - 16338444739611039755971028168658885755843505928537415714213798094360591711818843342410129238969053805164380288618015368257022358736715069937228226834987700814453585671789859740520305478410492314713077714383564418043063462160981839097920256422914655141247252616201930055619414781408805231878345584270807955238 + 92273877394520843231917918799580405323929121374131785700804542679213004517473626256030821368848756738666044588527923052574702666564684532730599673894652353124575513650415130163945252775188539598039419627178082070399771957890992641607638236934036784132526392750552536025580283298825771813444572392248293288756 - 38338167157766138005865443256236555500540938531418352648556002197717423996417005165914512962945878713190692947251845728950304135596705839055815288096431914462400869187699968562590025527168856509587566177937757106619076786869970383284701935860320045887275275294552537641761890397113286425498678930918728266392 + 92240284461203313377531832127351134149584645228397354658945526765084295664646336119684927163232998638215088736835189546140142840617152696119534335000554451434557551854670360173766912944398118569204165933199393178136308119319729993638711812858448696702073771827736698814016952885167330078540810107134809787476 - 90257335575028735095465000357011342336736499681719571524946473308667204347194375022194785933565085376107865407247869444644269264119033778495982844611738326665838587879948273023272115624104562400942662036748611305149492270333199675848012601103817191211331547251601419640874346812785166642586676645575928510369 + 25997147402557995496814495964338728023337868543818815801330942244251141903345310259966683699355179986428570798766100556913277585716967363540643589903825220549189443668721619241367690573123931600340953659155249875930408044420095456889540028662197246770188802662505919857913635077055126761251075191386645900547 - 45584061933999921868666105510388285984791919471933721460223391085123110665412658482995880293098548157602842066913046272653659439899655469776385703794599892196610000851199579628265231482277865870091197426180926502331810361339648203432784908105378580905260266576274053287539341099246861351875734662604325879845 + 50433359482668499506365161654083961627397181496232989844833032712297141399084357991781943759574965188255790383567822688786496597417432803326428933383965087118098678650433167970801029320938261697649147966666962784439430197729676593454332228048202449244013428051356594193840581094873055163229225405147057907929 - 90337042081487332464768089474971587289400594711527019101372308327473123967966251867937994964326712852155347171987618006806498923041462059575495289605216127857528382631636297350273074564723075248109349545366914713303025316249328232245099230656812274322142045234290106399658653698192665944474936373576942826278 + 15583299479321342079017310397196160876546200707195037866717959039036027066308013527343899268274811420790953862617585485441951744701001454559951224879152263585346762702287518623461807680781832683405975207074901100137466336225538497550257986006734397534579119835787814233777793757320522520964858248419527417479 - 62903544043152381486119774318338305228665254301081429178122660112957643078692509861933396089440431207298667422651296277828183542349437916272129090174250419055899207916283683992478450569699856584257469876994085998333627696297173393074465987332353681228245568140292209407039183271268901544653114911210269416197 + 86581336854045884994223855222399955494853899885077393739184652790322689784387227688499256839954483779701982069810123440242992736272912323504470824058701162592026067463665650929507214730388109239617308662579643359339294487363741563799194137390914103788762973127701614865824420266443447123339477923927049029629 - 71583848161092404612179728440446175187540350451065129405363587666449530186723994700433150250572611073663165113701280105476267501606271043421688622954343415622307343913978781366485066015757659472978277757554743076952613666108733526793290810552051876145534305617345889938386913275670021723050211237067320755309 + 94059760839974719962462063658480722364776517551968642711628708287500902298646582325832346909711286906065922739560673573610796431395093248744118277106379500255616851708662823096899351610103774559080902570823944804799264015878261501919595715951520312203058122600581761060991852449604195742320790200132528468697 - 7824982255574810520248028280237264243438773105110886722762888484977780937622073422192066710414844877701167021077342888636906451428858167314662124900042973633318209335907358930254861156266948684790790471267202378360713287945087567926602412634229451779954506680026319071351399395628298806355098878001854815197 + 55649219294716240880577031453869356987402762921984025091264103203907350438827748644852680458649830553651655243821716094856352678407997786543804747291909173538227338005408424395719215996432701277037344919798036172672800411518156468885475715226983872920556174319759452859007450842504384024361699215598518138605 - 31901590453569312803354104437121143149138606403896615531690111586793173695821658692501681853966563681196689370902397433299018522407108518094901813674519584769124329726481392840316963480825976883261236572203793012104425118350694265169600319952883741422459472224915842590804813875939015497485227177494648361516 + 1238376337788796953147498765205287937188722996917250507533407669402768127645615888501628977845673728412833956000298934226744766965769902197996270726484435831492233431061493189766978949792620348437994048558371857087857862584043385434494551595268170155171761116608671872493625006234114598766824401565707277054 - 27395744389723458526223999176503103350090750027291253028610808181341620755257612107320343104260441655768793215240458576368884715527997651928202075365140803350646081717320114662236995734117495763536032525559668621430646517209570473600138679811518736797217005763988374369719164676622142892155376437853952363126 + 59873227743391003801002734415396801833521743799513728790147698765556082031977818414097215254844420390587866705381343240370013033899802531040323203981507898261783670107681874954867811875617894356528745665154726656679082989046632531720496532272234223965145345241580159249032698068642349181028519375120295574516 - 66100296905307054956619421681575447455054835537656099914123369029397361766758163174908799217733292267293780359117685651376733139001736825232294094223082805607580732429085382758002698482582803594915062212817833758836077798819030429583212732749449045230694092001492805985801324289374595708249457477219682686165 + 53253901348655581180120838256486479621594799404050990357985535571086966194716263286948799098007829073106061365126465260104851440423111656361247387967964978256218115968796024500767380988602183835771292503391107687838047825676770508030346384780458936819614980287731081291940099620612592293934119849590979527327 - 71522139718279845333957702463931504635196383929437918273040812745324606789997117374680396251194625400492702646960251782017347118754667125094791177518017697398518528175797661747423022869750020207111665791419183889802101862647661026708775831343094704877599910706602194087598962047126922842697482485303943232612 + 24586745738290830333222330349204119195559937236114530619461937981438783406452769059705065496069562008553438745954865895979840032174095688984229702382440366706141458345145437802236593625871005277243690681286840714869266577536131452506238419360033486482902662961057788460003811220707742196135155658653026830862 - 21930843311668491866792877164452718934977654324339018120208241097543213427026056425192800488622233206101988794200533950533043373069328821504692997626818418203539437879118134140095181420926925252765634363529728829712492708551193708222443666903830910784947878199725685942614858922098011270799364012255979588656 + 77682937193936808720966112935070110575483345287729623816825274329195942335560104016098666476685666335715055440690808940814092042072446137563852587858840632401756235197989212522657083421800940559863849159557756910967746338115179312769237718202744746950205188056983541468457263826666068612068557762109840477101 - 100085864073937863396448324123490539640704808782002161925831523226384482692010341234671810729386867300331010742305061799854857076723871984390540985359010224016352831131039730602321855123639153964643789675662346212458438350474482190257089194007667479676188927552155990329325697219856181353621511715461289477003 + 47245997654562232181921478354915832108723465754510177995095628778111894102271455579548404797198971322213619229694249882489214809057301727656615372094638743808437897937034752667318734979200830889937369228470894264949945174745623719447282438776376284972071186068391287964605813894659197140337670601442075110874 - 44865107567611098216203732945876290396688311592940106820987845042376881212645882134456950196141155535152497099245066613032061134371616612305900026357915037939611183078229347618799979173258366560970906239845143439424227696765479229536740864334693080465160565832270328502297235354244678453244268065419333238232 + 18369575120146745534240111278023894464253098237468996970923562777169415311482763290640420016743088176922120725703870811588881083489372879548782689544217454999374009860574573179301778390320581937397647884557702389613589017018910491889260121215022350958877097956898323981084042254909816579613309819774782650951 - 12637799244720127749082365015028390649305003362549843460133762226863001132096891910678033801099880380962435828664455224070218183001754790792071075040164476546854923570531293466715334694584723127979599286916210013497980086653861482448286070287970647424156470379323347208832701078363176539748556420721984948062 + 42287316824261159892021153391060578577059988106872938412358798058451730981245976682179341313823822142931534963589601400526482576216798094380423992426705776819249237602033891660967790551737310220189330354387355029337921533333642518333151229949747513454440297556262406230927768693892987958715434458861114125901 - 85270916694153733265943927069274412332833246459548964116586742207216831197707397039643452139374965104861913472708674225650461432846134313649531373171434662019257556677094714575561793065379924949852275761844771610814103376128944634852798019546630351124366642719297310023849236122539698105444503337387420526318 + 61348893069895079361158059361002820656921144616089338936800545811487736615948967849541350170006376779483883844354287587675824690277918870490919551820001756338612377321628955187690665951956010997355240482553261431948171154794832447890000793761756810328628413574298213367076283894467785921230865131193573499185 - 66758406454862410844610624984769224199784557456228087828124111810290613008355200012594537951475491452395340131005537643028286588187713614576727540902952285540308306105177343281712066434180117464864122120842220272173353257091750331249597262033085698814259154660368151773304686242364831879420816108903477549756 + 28323815483648687508987696778130213147507814019327611236806955157707439941808891622628863057113098350056025203085751217970012558067581399645889853754840752139574958408850421374749882839441603815087087296197528269918971160986158268659839443436823414070024426368133887378784278930521297175187600010584378350756 - 32571960299374536178920792486411133316059880768731833776516649028515109862915058438562225770313968037107047036612115855753021098472775016657700583194222093053487322034975987592792192833085565583047640400005723081644543345269004430787495870584636820197963854602319866144367507713346589803021742112100464836395 + 55118689684894428221706111949358325892648548106475714696906761251389360725540022189098640415980464515444447690734462867838588840677582152286323653120610546929696732890300786954730867771868414477362354534980371137960900260907470515817060382491172606650385064616224966170514119615007907261543468778255686681539 - 33115179011098046987777779132522147424486600660715090516382813081839070235519651904750380355021200642299238599306646974336603985214079978587649943556037120777168085198552850968180853503190670835893237505169714334895902334727305089596053985979565794957137840970016385882161635216035390317335138382505738915611 + 26952091020831903770504245704055074596347640926474213272834672544371215546842443097978479207933272418054106150626595988991903784986075165816447134585251009511075952361557531940395034726080601401687277232902358501989981036786238987599821394185394019480791632699330964240973925834046264917082886136666486431421 - 33231913646810747027198088390281455118268399647169910548252832548717762342748817750400938983371701129525970446742655085127877654422194305488146563409185386018310587369665266226005033806972510259820025498813487473635873707228982772719992364328113943068534748394048385006671135799812636543457858807318215241203 + 80255469933742397070251469706321183003819269248162923068302019223603222402080080532951424680192836147907073442165177400363996391685197058071647817960042459161181847525076376663630661647308791422547846357424880970032294376826838969447512607715575728626344238476635456064578001397499264334237994643421951098851 - 87962006994871847855576737245584646990466736009607039865521185411096702230669275503943381529864433146129589163556514438465278058673712093162972564124005833360691077793702140835155360465113323919108960997014057434509511225556233899277491915893741957659810587272560161897732430658573470015954025654998063872593 + 53997422916388816154447725845573700332662509532607665838295613609882712833028031518278976401228276601933129459902516174883434507356701417857054110887772737534588450067102570879386121313738171619421826503179266899135620695040109332426776359412793456042791994037974899454951540105777993896423563027635034975919 - 76344914524832467213854387707850572398921277920723856443611844542121489988014289026178050533939184192729119333391489442905524041583521212610484203831141285405013639597600020945663828907812571706798314455504089958241954159137932676344149264974681825269795269578436965846489649421212194272394110265729935001406 + 91444367944275938128157388591878125582697800227509645246195448050633774492399474284220187311145880361641328148193476743958989958577806784109576693468119454601369619137900741120736128017054057668683193613407059848309843216493197542735302502534257658878015818529051593555924720652037198196689900119093361936927 - 44813080762924735001685816601851890755463140927118879975171342267548673299744223609863886475798854665309543243966845697218501048569334733871949211930369628938865915552954911127683684235325305883427585607978005576062388000948847986794434305445724939398361196046702189033630908949556712275589699018308204745387 + 35063301049815227433657492151610934676144784165424075062642627918803593314369217716643514541222798799170526357800211738228107972088196515612820019502477550259320142262084955519319699825350088275834875304607509908854949462125578162369261963307618483094503999050089510472413848231279648536429376048714930875593 - 91310037463677189011357803499134587489363087015510030640976972158168254965845764545018382461475353524047420882329162809117785231086453451358304484269467751212916921148476248770443172390267072628415339434059848153192651460432707238396576658968150842909430630551204501490236740691115335054895485995584291084223 + 15001837370043676566637847760443337412803994323526032411369323913401251178970877074974752875973869383209637733679409426207823716908902973152613919253015570200376784309906656370896024912783126466057427790204923975249873916708867107554369011766965524738950036956751473353947599128467663847738650265387719793382 - 56699706730353547433423787786970466519454449081706492230996858370866384734520677651865119833751314417540260518415170390766037498511777462125314916369078435471772204502287545769366777952714910357174956023234697532653952101826810642416892464208308753852179150849959797515452050127714108915395112515702130105242 + 71401303854684979607248849908624787579193992507426704148329767074244609248021537728100777313409370842132089522421731647204588943585444184924414324971071585613027607696658263441170985223033463076293536455834462677484920440126049010049406191175576572929686278069138060334689707793045914386553677385306266299606 - 87196231263552015986829293539011283536967643207713305509076850928425101046793870704487489214789046764351656360142163172880037232602135116331977129228920221833479496426614947308936547527939452510004423725580834317483085498008570256080993747101303094398375365531264586104575883339061740588870306684988588554081 + 55006245356789124163402602837928830048281923333920745174549902838376565480319406926694503204260843151919769733617416973115796078933327261038267629366349624501953746973429508679611524696007247826266112653397925076385534692086186958544351149205361927959923255987936134935211207774003173526853845238940634721341 - 25203165105426014412114177122026661721481493508334947022863584233559776981870268781888402893152880205364935413777870729304654208736214891515789927076940188923079252119250506420797995554197151199061812026708056038876547476533769345836782130970245120213738324594311763148310727438290411944885546395333567918555 + 68308866603593543023292090124952154436783011473664571211905341277879542318338855824584369978925843506921735925557805861600909905205309141213553443667675921571364702723297289123328557493176063099201688758862147701188273344618635856483599859685755777540227394270297305378016715008383145701124713712096292532834 - 29194029144197873050891506841095611827235564831924072238620686945192836026004033498100658096176617517052840146598907131087433008962398341450275925465281425595253465788133567341098243251968989269695177823544520763204025009542966993237413757830962572988107904791931081634888419134709288843224821271146378543923 + 66169244807741001544902200229807745647506824362848008109118641444008631641839572524463328401603804844324944277574499222611718416214640845049600064742720420763824809090989077363254935392913960594474063634651756241241586169302422058075156352989518110383448054822932076167190585090617668975122730554892836095400 - 23381827231482577070074723815580786703993370387016653136038895616016529238431302570654323656968032902009063769890669784640688157262446597266826827464293711542545349053249643470267242941879308259392316740325865081775221938363221068087302117008501682095721000507860768484294066144948394016102690472006423256141 + 79914029162765570577196425027362569598639888119557056178383043304895855808978099656546440711554362316742835517366574832063020923939054670480762287491607643317989157633019543045973053242846399772608857517932431973525594512140755559586541476278948671347191076481690491291632208274169237955139267142796993985098 - 87796209180391612419957812095306747380801205359004962146417375024777785508050731897684318060361339375903880023800674325021158893993698068444421624115872931852800704877163409521824012268958480242678086546588009841379085602021575379624669237811194214493263134128653101534420725782998806239634607500418977344771 + 53484496901167451695848473454190607420588476489094119345982749053708627428293533322962771654855019469908355610829372143062196712836982926079788455504047024544961854239504883114690948892726923233955954636272813112803793305463252263311774924615973729231980860022862242423760204754620179842090033345185560436865 - 62834791119222094564479737264823592651911229946276827216643215479116923902249305352935798065904754909585466480836969318787471578346506316365412105555999082717731642847886472208050639987174012017228185911065596898427085182812529002630777131475835843888698524837720962171314656638776524302861230940770058414418 + 74009883240158280938771294619541823115424985298862230091551058988622847475145405864327704948712361313133996558780015269539228010999618315083523798192338148213042383205245547710055071080708185870627158916556574118588564565574900965820201097809814642033633669783423361380602952546010472773976236305928667595674 - 94666356966533049222792416678231174949740489622457690596603441202728559638744221918211455045030602074464021321682614858545800041213303507050581713789128562022333464334892980965027145259953274813571713171362898176333200454440686216777322357022533891293795480563494688131575714917593312700162673641402656587807 + 34496442663850579388217176318713147246756120210830783638301465448730181223158108387989794012307921152022046832055714310669788858360042786626143575270500309332140682389020539660820135333021698331046636879280142530454524626425767961963875657791064679116264052251226873397455570313845806512949372566521308665334 - 50413531580147795783694517328304255514847421031865131891831666295796825657412793357767007402057099884679615342380291597980325841597764558929100572927458104921704443953951298742099067752847061432757501391126814035619739330692254542320621438834381057673496810332605412509296724802379509981598739813831885629932 + 92374762245237709517936185961794788687853368011392309322927839766427147850866330101708504211061044963207997052240194081457741366741367506692286548757728243159436826588293803843775946105322962054686286945877659038833637424575609525821717857054247313409035530345435945758297007589346465536514237722110198698868 - 20805186111220867761766595922617207831823406659797224172234233918205202138477913439136700437468261924623418344623241167923563532011598851853901395581447149998307823250429207208081115086393179649605462140514566215647868305848512148684276450797320702687481457456037209216574299269129279429962084838213505212323 + 1996143004129506449682879727858751262041928727127923707255865937617760422157296687057674409032556530421592321006146340716212208390859677829928303949252016410757528560579060965417045033464482478616634319768249744854743677166072042292919229211892872190412967723918492580586604695648968437427435183063220083489 - 11681677863956086587739319742107445563921888381533264228385440253564206773527103159945440790284978250497499081400117544116569642145655429103814972531944654184142958723038372406750113648357142263575515643475263256028018820945129602504096455502630297448014901446820220994839735604472176745988892463229529673432 + 31778029863039921729940173030193276090863081710438091204711741328281683963991257929975274310730123702873225778997149366398155870626561011443828018836920592037434088154335060146420216211159606493169322867076604642642284463009283006987337649645096356692238040887850139893701568213378887514874948354168346213239 - 49574258784431810536432764102892163568045751540813541940859062442898159369429063563630511050111460906770335281242912904835710797783333645331007794971921593761129811717181897483453339716254461506790175199357386208161492976468548430079224308681919713683177813515890804066590422988716446370776790633564222176871 + 50385697164572611960716829787837006393220362250732007279920706137938779616603582748341627605481133938169463659238130229428859771952380702821118517207039936858190305821994995097484382185234102633953671173656233322183478330342915188294633454264325737018035748854054932871386638743681343205569837285748242190381 - 23374976213121895592704886433609112818944073710421794505555937745809588849564904187773995872437805236907799007681842144648343887058526235901283698580261693285252421662972932409291355599532319794620622480173594035242329735833590999905158021615908446929531903154087685019253078679484510623831549284971593949600 + 4686878594144988402214046843568670781842282541888493905639963840174777530356581241953943614506259775919722707385225620956778853955145886528510045468982101038149322164126602826455212721731053221287017466053723841186016420651558906645309446294444001109529244397322865269952222420385023342500909299294842841164 - 72372372535709560921165395055118787515365648096910801773560644626154706583961075159647892570216048492311999739357539868171150189974785741499965271071587182228398559572135769505485821190788905087344667643575347029742815478753301383235946211832737362868533375389059240394756901311061992283713030634870435385177 + 87197635499961892603276593094940997526116426341991323618696996370464746074270161029942965066587493341149148139010170086393480536058042910798983093518591553968665096914756034207893191518848945125934165745685117805702411169836204265633935205544150879132907938453792363859373187137912821738000357973515122077843 - 56856222773219420315448020754292758362265077844510142599214556845753424440835052933821275302171143724845206986531760493085288513532943353522628446925621478789498390804356585390800658810430752406789820551938477204984203700521247645617622731545734702794449829143955239854865945185806845995862463572509652214458 + 40445819054327358573600232475507935432363163535844527750003889781663311162744162768295615379981832305166154201500533205645688005717030891103457730276526120030864983261570969156260535196856542961719584143559031268624844451227902592904210551810156760432377874894841037974752870362262000703110208973826556481564 - 99017929116837240637825786685565185509858697678662139097414650493086743901443246848032236200007536557558189173604786272056523545637019522990497590880716135968143073465352144217819185528502107022021029951719867858278244647109317004183307903510076322948470442549878996797979474195197134703077326760828272872767 + 12493791196607082987325697544176633565535165498129082362184455817544628018705152736537619831441899687219213084430151089968006611307673941509679365617038890639274960188933483327087531503456953804901340071484841687210589200404391920994920921696836973541290032079786322447723272199766747363152629572899169384721 - 2074140155260939574149583714330013053357920262395371392261631646689281105862684636059007575299382499134725397837475658031312937835875519779487919466766321875067718815138033542083594502581063111810300949840567728537388623141948459348730540287454263705004355630535967704272820834229798679862285715827371911570 + 30116360348374074084751074813733053108218455794427082859378878872632600763837437464984828539021620684090328655253388115982256173701798476964293879570218779538074517178269569055746234821593867339411201898687550590890812985102959120597643912311254069895016750841709579639114375642076945119912284689670383432526 - 74377221426200659933952502145943864196984581314413349191842905151918889859249776234466063141139965202158496548616231421394574202881582046514342743240031638079114735441126715259138463088482377561930762922732550746617797583450423481923272984976070382525295819452231995959034137042760882955742322001068603546566 + 33758064568299582923880841577584148186752499969724764078764220460696966275406629077707046747881498001846034123252627238003076708688454877019298255735188488910232077391385703573154067802405582020508174407558392274449675639592574786657181910585959429411091232539939178374083841166525017389200706895793763457265 - 90501198951315663043957135067772010683020592874563720593290414435971487572883869613182289425715427981162190429619462875967861361862326352038955928192791562153184985108416341039549469675879552754259367133579864157769462248037697406498985431198560702716731139092870031543416751804653249325334659051184811174892 + 25003157018086513119362016929485672028324594088489483852366962067337591073267387483932824611411289982228673278626224657439854806102609086587083524637420926203514372122953877281889712896101325904674486555922961416364253663845416719583328807962982118554550119536194237873890300985324943604256061658131376318719 - 62136629836998933703010217333944111560452440125147547961531497671779977754567799523401629767647590530583825734815546588990923130965725684274045276145202830198228074817396947227122134909182904500125142972227475079379318699993549072447782430162313529540310583254989835230255528584096386648725391195615493804561 + 72046363884909551295948056970745024536488442610126415841208650542013214226711125737374726378826915132769501006125180931081832463211071626668530605568086264250432763755969346109736080863217161457708624355814152723956223001063208377181089613098619362408043353926877017694425759609065941936755610810012864148248 - 24073319637596568296505542257962824481598858878822525648725162107606086517373195773509072040864616818466698389332105428428691240805015770183749214006054061595440164714177584324032803546276121505006417143130850643291295832713817626955658585703238906663926396966593058042112688216877311627250833418098512735973 + 14788640789998637897108124391277007289564484824516573826401213926227416108546615060247688920491010646660702209564330389675791672200089351011832685270355682516429003448604138115646496135233447479119759181197460770489939712043776442892633344637818047277465573515239704656013465597392032168568469327056746717230 - 7502825674870373341747420116086273067471454004583967747269637425984479192891075661484905074606517656489299418219351416717255363232427240968107664601077764669135263862271998529813909228715075601417169247547429479224213344993179874084745906458771337513593281575811249757546513622580420752412524235876986929082 + 91512275769496626159291271965825570590226198747124438675866301016257130401529670439182158372269724694577440904773324771825823360163935070998669176501962304736165930625770676905572280252641991374663670281503429483743236955097701288052525969594307945142153094409994021016463579794180295299295546202534365274386 - 14349260579098784970215476671462976883023317786281813650800579789233510906165487229191686870496294788784142358962737609273639045280990724170056133718312988798254564069457759240827258573374048379546912640475936241030815605366893244069818586788120019581086051554868823706646919625073085961024729954693122202553 + 60980672084576192628511644967001357041383673415313201934182934190080144651741647569784949693451177561743598533155341864493123041261462482974884893224285127668901911442332128249097682587357461505195532946074015242004599184836578466267369491382722815339211203623490233858751876806417440026409823987288440601043 - 72393116453230353985868142760955630045367587386593075934020362552904692292436911466362813556238656740006403209733712953631867514622925599904721701683396406668990892105233109496734588910455620070610535547876751459009484922349799955629795781026617244230255813725718014912835218985417228301256887840745098913793 + 29940464906277479324853088926183012855325295499971992029441257566603608969413456518361653623170216765386867698373165768756424514104242841200665244607098496624900158578589432010920436164918008194478103275515240227502135372620535288056985864723385426774216752001630254034761144233743337303970661973242628493749 - 77079213151895023862950933416769619739537017042665584815864129319016505682358100594455993514768579614444522398851989280914053091717524567596770461363038929638140383832704734818784170373840026691076569690946218046278846599200888222727700167155897344285672822035937688932379244520834986296435201553753293884509 + 91050677575867876733738461632268477445766546115858004036948594127305052624521927448751837054109923616857088274263462807577637261942016702893053786585263794725005170871821920696922271069405233244795740455449924127006816129016944284141287988612665710104600451558416325024612995169634499376331736378817009425090 - 96107979313001518548139937481317424657187267482592604319363833425714701341073690237662700981328824749116666240583375983849584193581373286653472103950767682988037318071440682209657747379408804074409732987367787992635066169904837362561356937253860738245198355913165161902777637047357514913024896371374051324008 + 15458481251793268080269101861437438478546438501996695561808068735698208611444144154584591716224535910371102718390291830294733322189400525878933747751764715103494378368333466880616289818644041318917562025404747922170569931059852108277986900936493746135717614338518796585028894787178747045836080785550298855103 - 50999693478633731259020612662548743530453554899983514852931512490478727902720177945757627351109868418100179453666423897623287454096936926081921937305206013089264907340081291181518879591328734192737152635564559829035360550128136607784370116890254475323060303424868723398025154455734383888645460025543123341067 + 43752105241979940744435266661847166914813008426839634165514069686304656711063774907887306838616538907131325695756725156429480814994159854613057059755719958307000775012582705314725278000241555876334093507339643406658912278757290817879268707043428112279467327211395595482520624084072633879907507003040025669948 - 48740999646010115035578053231815694103361947648301259683046459837701674709772291711718215662451980236829840085862285294339136506762416768072201208125691447141068648284416318150561866735946756506499295457633855134339306955797309908478583724632191171015297301350093398390455032237133423077069064382026419573281 + 53094670354988930190078167619746528519783812352443382578709028525570654709289937977967852274006651114549716981676874388656027128931159760471072905958930372886729237465859499223723422122848148087007201586377644892352522762412571896450953696671334893564293248590364879289491602726022958769134752473132751042143 - 62868460823137502838733883335625406828346349534432451137380965103127427435361285457425511701215566332518723582288980131231545132998619616189226921919387957668088572925966791238037603607942110731499865806627424571247395292684505422650465212382840457993456665866678386597704545161441795689554252604812605959077 + 36703154577454982882218654911401914279480505509627347493770599704676667342003247427421578506302492179898359211933857479180439092822622090459011927291396031417838904694440738990822732922454191736835629331504158356839737882504629674598862094381794135279327702776139584664233836697115781944449980421915741114485 - 22396694479576290959324269624716286811184422692492100179122839790722217916224085527532127924657165524171769324492072654207546591739228886096852409167068299178230374652653754536500452877598011338570658585370631174801102367247852467949896958328151218908006442743232851657983214750069984949596477389384669820352 + 77625816871134309297788840624360411214503630348416802188471829704216696629899412819280971191123504582660261848142640464582463422294834886191718165161610243176348042909391426863399840913049104431590122507848377750732459928035134374113521770090235697594444197018815713061058861522250887714223079392686030615006 - 99395495946179673807440568016396815024143695637548543047445983191646325977573756761517969841201436870259955752701044196350507420129903315335581066320598140717894827508036141983028961056959005133015622674709349251927160202847733069456255007880783923384320537324564009290347750593536667081921706061229271326560 + 14319997295794758083646521024987308220438301813654239220508684117702625495946084958005995689431435238620968149991548166507554983552284793288837549892383667264167079289868969312736676044870877207512468744528258588539003943303400743648617368382779120740281727317124670552556664302395994790944640923257580783874 - 51194034302505024450251534066169923727065994211515469921313106241937643558416190747194270707015064802629117525549518981839531015896470450842605634020537559578136872070233416663818772341706860417319486751259144318765588803767000028186620733797764515730857406468172885964920785897960126317513115688809612281221 + 30445459440984131505381295973991795446365895148741964066644024521979904760853001241161890036388705147746903999297000832498821147956493139756276928749492433488047719330564636851832674816025235365761581216114576518978464807194226829988449438308995337610355727660795924347580167476160288265968804833748181222521 - 37733806935209204116254640956337642430021768089271242037335141922236788581662316098723831118383876927776324283633765708426589713496930828076190172086937814020519196098134584313812254671831999557889156768883985673773261210221834794771572921212112568903087296824510154729513585424588904376944040167950671425250 + 51522578982810130175332305137655817598895213623276308642384323566641451978498221157580681322708944653998368946549162499819650650563440571355048447189374108087980059029544465822025881073918532399692577543282468829593019471645980097770436170310500681672456943033454311451832603815916449974289081644188588549954 - 42164343552215811799034643001384398191281130521305278053759917738174312385253079027321858455922099458862122329094158985451489252641158775593444392530771831942292217020534901670875807499561541543327149634060025449484537786168837602533509476553826778234187413193783362067610337758929557649887471768921201774662 + 88506053729696137603491670913693337926753553614960728227116523113749302740836268513768287714700263778708932278226256411582003073906884087620908996132505438142834538993156548308212129621567307934363626864022305214067515945814541790723491971555218341893183818446185777529119513993359041754714516273676325927332 - 57146612267600124795805113904466063206387335515782552148393327419621108615507738107697536181820703998565119903228486669840331732262055474141853427393285380244211209064759118617023032260327741407381440244516558036156729437456607492385589786936645265623473128906940114125244798818298243582188345186001669440994 + 36043463635152271865950544072267087139028043681798270147102936853839708674339871318973076135836612719241405133137186046186412727891965511481364861519666621397992293174816773860984635789065285529090125084589748356063489812484851516902003070117196491791261024526044157690791613136813804111624956429854587045542 - 85327160593538698881105170169772250262141183086171825138813839824789868210904657179734322265661203021412051108564998810700800952216938423146651108440577641274725019613890673714642847260470491135675710434089131113990106766367736283336837388158186570772410829628773729311436696829815437258282560275974532153870 + 10707884958485376687440877711788021586603765439405534362940081945223677974977958704676987491406025894911071480427248239250162018742659782235589910332074826197055225549730547608776953554560501446791942761366207336152755509121893427804709259728542245084282327663165508215266764882788555249987353952061150286735 - 32625087000389939805212872692858900039161198318142913596516886379703833581322702577995013413262329043172607649922675021656036098973796456247163869111202020385943549922491184698802097344397691060194639969124990254802960573001443510355698139846546441873162908583468979153305901939927879306345129080094473969180 + 61912745129968124093670488654681926629364340111352575130508130899445851014055599598160880872169423685269783749188718604010590961318222770575214137301180364918642437638234432320337262353155054265901674204645177040102834072894024092503778932881094095457373892936967168601766977657508451812298673963295206092950 - 92299352364244723452839612426458399639826375164677700906823946145788164434095179785653007941182600629130449677452791667963274372983925654438540093551485162702221462982866069756766041453318404134766912065725407111263618898978419079462650187059785363254162825971927461572304038806006711215091169504564571595373 + 68672931664560081162058111420739936361234764718745505712419704147153194636256858011887538142749176911992139320605069014432040374429811700571100945627545770783180806716745012471013922456611258729903780850231876440596030091358800467693358143034479689995830681646385072997335678193825070177866899869073850950933 - 98049008169304190435814419867607290774447384622912621695498322112385350891514063717373544837281647605807440439405090885175280990039937876356012066879229889114705626188490617720212445556142326212612759701115889148192491587743527848420679316101397781898491965528471701077191987528450396012316814650991497381269 + 58716606881737333963291219285848400346523447340428358576993068506435308985796670337479501463336959061832975977218393571522808220336977302494528366658283885454479456423871175286338052617487902680579872533840433593171131690803590339149129367106516850118432052327021007252326873951578740129656636907752802660288 - 38024390062381985027374378834182793655228247990555319597139237522197465253440857554230943081131352749339493924527131506362967145608441811338654365084220950268247471453614094381182500184405574992667066942308367557956653263015520974944413537051098605608805104396637791140971522504968812909206122546506072543566 + 58929178872981281046586827919303600629809671105877281669907576261877388617748377653144135608679620456687044682806963490868230524509621808338868900445000783214666281228246469835921001580281109462826789356890302721300434341866058730351499147192965898495501910577770549499835265782389751387666542232328783931152 - 58175410040497731339740180948594253049328195240854727533046750114218398697468471458388303216129368894007557587589160141856864628846042038805874361697811687510459889215495541646561299658754577461281794743302518190001988561642086822619904206041248309864718810708672065820468655692968355589922941753739891443470 + 80575131492071101216718839855504217544553977199219860934283874030750005466840206062314692676007912379599192002016331203630129061669588218065629649154039392998500340912234202187151307549217554455367883676929562902828804002620359250675693186579060476455913376407900500431358316495944583674487961063604885043687 - 79852403637119199310052794241899971448917473176710066087837174704780844583379032556698072254917491709992255043956154897627507508278241058851617001540208224409797768886961977238024025107505879809316760508925717529860258606159739578373294221433507569906693830285130395693385529499896817633797798583195458743407 + 29817377894490068998340600145339161966034539428372621979843467911338622366522467569863872412068657255543566213591599203522986315672005545768464975247427309439923856338313021754425804717888286476523319427339724185948286727990984536947837449309031912483991151683560430818316469619636744849119707044829827169325 - 88044515526171790555545988988892884263793805433663738746686147914831836415583736374376801958912216268732480188496102301120830826376822328649977236902829743821838008338927800323516646441356752388978712955344915597840544313953631008035072840245386206873335407232015628899750406622209600413572788646686119251944 + 65070480242056853159693379748197473584513882606525163982838725985275106567376077670156830249089233151118670714811330020902202174944318808235219855191099719058435535734789442524916887446791893489615503361732410226431703978271889848858220062167142266241887740443994179746859617440843433478155392992907429912605 - 71932389476339481052013308800344910815314147178754275624109537698692590880287718118818810783261057804391970403770752324749955480325643980504728390959453670372604252459064844032239561135064431464628378920775570210579002282597947041125331146519049397471823606946873109833962696647577551202814813256037675574076 + 17325207366473400399182842480532144403125737011523371469150337069550264269153597513538485681552646326980976500710983580291909389018417917217563254807955649660213646404524285499555748253172733611669474098141315273613265748450616783112592611593745306921863865511659746530009999339628154502449731692826053070696 - 54442060692272477588778066422105690430552819698525211269479239915172904272203641496141685306738250579052848237993039530579758224030944385536749497311943324157034303040112242143939229899587949828413299795243917209243193715103245272003758864339073341966769726539054927567585415181053042293076060369613351697664 + 42684392841162406448291305301522618447015015573237651580468933000645284258791361375024046750134262044699335675803598077730568703336397129146536792066635815586354889250073875839778614343268626900464564787779254363316362933159598083864742189162867227373070854525855665643656243550044623588844556529538529080324 - 4840899021714536312394843737599577006470411043541677144652306970547750917322085605045048113579949042752987386968610539254601252720162330240413640246377397807500779697080792894978741228047743026829779678291465498774628881231264216670452717220773421271406518364270811995378993772893148467360208425635273556605 + 91005772286375990317592144489413712058598111147202612571875722993400254444176727263257751801663742556914603244103813618333174300778800455656116211787181856876682697884118087628471099587476671481071351524073356868797360009753388377502191547603626963147857664272599017309165997760584592516925375549266362063665 - 49766415201204431987350296871387302506418074683595733146740519292873095924821693887991246166954604373797929285859890382739119482059158520683440660591249015517313159489467286308466884652963789156571492566157755447648219816026716329538796868416278995263266424410540171472718081327517029883129351667695879897524 + 92232532318477928728763901583599639564580666331880742322212510260435257082584012869508110881785535802052018704842668555664522853155563251767835802002127771665532317802445427659118345403624510773411286318200849926090801688367238629886388840941891256040495598222085485029007684263121342683702069972501343117999 - 99993420719165057568257030540981407185307317916855225268198973187533150070871160302294154235389844702548769213794074442022034230885632353998733118376897215530400810780862623567626058352813818262824139528730166882846857164880617199030179956893249586512609082059629607628570642411461226318104798887078795791874 + 84122269146786451605870952112682344738184642163923498837763805075183421603505808528874324108304179441280833623516670232550945078000882678677849188426678676655148717925002939646760518026025074833914806067742144073039113497656800010615374865312462670176960037350214195329367416920591574111077120860837536706896 - 40083591041769580829175170361236706842969730756143382785332939372246370940693476827842281341975662408920943815438254694814481794701845125155191571093509737979071547533662281318211426762300071411440226387287452572445182704112900307864190787588943059488599091233230718460333256237475284178816040130459413791547 + 2590572152853772438834775906657728553512394679333958875653814108870172091038081397080831356137228227987179885904806396760204820903675622261937434843739220374220768001302443002202728409272790870447570136466375609992991451246291174478614848012679967984625557019332916052777999595490467453049021639553935844410 - 80288001069133171668660846335169413830916656929153749208397592877207143564282946117387431645555168918895774129628655182639938640091661781374133332607381424312997279115379773346697094635884405762824484230890341955321213197525832247842111870949861025407470066257618636710085540657425045447900674907319850890165 + 41416903769497232863319083057206894509450179015053897020400465255967768433499212093965124458994546326225742152182068899603973565677682737208433609667954533332596878536978199674786847423331778628488474244737796709935948040664832640953698953737328999405214494968252170917547589623909119544569045445898903541008 - 63873996273671085666376677433483345708408817639618539944377324921463084198211448289583140320714775747220365299872766861559640565621379337706705828799243276740737926035038051105164136693568002645794920849460746349109305033766672892719915934043429399063837651268804942793824061995021575799061151164378142805485 + 92332659561420745304184249168218534281964118052974214351890257632734699599205756752521092151455998066683018845857691588487956109444006454969034754188731800329289216250862610800073664646587536979400872395479980175609323879603236837147865130926197668031960999561400861706406182020775286972386507737063616713577 - 57556018744561036722729920328982823954358745817448602056005287979482839222621212179727224143593196717702639276635692615203911433476803311702578566826394362499505757217241266567707840340999945740141033108556360115455139348899496865831615388755583542849313002682291066281275545771727233846686073172727618025283 + 5860065414874221645347003726202425232745608516315534424823692614532777432724515010304121147307335014752348657370282725501950286816020126238391032324113425333518732798983147548398259020975592025544775284896731857291542448060399080112741188399152322991101527586341929126617562006707565045329278132851237397588 - 86626760779012568233671987426871609505812691060003556511617847671711968373405172428433898877374574324031700930805317167085996177112897695298869306826306490998274715783270387705741595631886040191773098475329533853444394136479009139025438817767771405203867525152112456274564199327686970665146456477866431367807 + 39706612449689286177846972325854676836251029674869597078963938951743644604861274467558468841237669267000008837782328462379328128170955295781220139850006433438188461504097895295975797202257584962057145953670115310700433816193083528857513535910358654211869394862397767992119016231155744922989119549086550729974 - 5146507240868403593467332315517638863698614573506085176095013703339939696195439480533745421927347100910563193023800649913716190057548492482739851309926448819356237742276240873130726426251887450324593591690861534610359211020070053344407987492962547650597601967005393357624630884636540201164923370942755115868 + 12296329121571460186537397103024223524973164450599877411075120753481785347011889377670070705504729559180075609054432779739311126398232883198502663298907842230267505419280558000528463936512581605103943345097471515957447356760782991828624632597824490698195819694154990148161108835566429111170076359553097448858 - 11129143204657845893122024163500377699724931986857925725378866603658506811143389979509140949390796988644505456418800723468190440283534535278917749436892453986175988796304740452468774681960183100991456093186107567120071276291888651031188189983911877933641023468763696824068924150310829954718212992965214427341 + 80563229235955997019050860455945356774785905529600049373373270381072714294669544377315562653714035892544148533437862881460121125115655779618725342678357206538828857499039493870133743891548517422640874449225528987514028265231026636943125564852834796981733091247817112333775887003976460265982707002090840712190 - 81027740012572031709059228744427481773443739181353858590720522521449457492323506019291994468866033280120696580040526908899320514674237447474320386149277303306191781697106865042248559239461140425265748704491254766070794573290064681142426853426310095360137827501299795972789849563111777433706150709871251777146 + 33647427175250429370810322713384893444786204065277441730503265180200739031022320693179575182319723336456569852708186423133068786743373282345333117975652578583755497600605063483267746392824975665963734761531609346954725631975056435822237836946165266811016814636996712036468149940952472980776021576370926235437 - 54254616559695506230504148493134352276986300566733813614086146755702607524129725396131111718219797438105883387959770298958333840736971460022686559457327421357703057312563216671477374975718937359109989761596399104973432357619174446971637701330461348474731072070959951453367141766151394240334550644748064715523 + 27504322609505199921865439774705710832115336873247562974097492969912325453361189382378690713906709193320255642408039490626573023068563941124644215370254588770626552087600801517396116212732789035649195496371694867811243890864602252691365338936055155402867524175849581232261315715595588300452226391422449735116 - 93107474795645303785169067677858818700083790423785827191085960562246437379939300018986529018667663008568802736227906427631710528933786782679784475123442228976813443617607368142898841045177959371228547541202095170799080541704301259722489566413421364707729366357186058141763407996535773548432041083370284970368 + 59584956076943809688491769141152598000118192587265608475613515028271923768605599086631424562449587071264550213158789273409225734223080338254711755393160419851798409416263204192781602563212281510078769124268393998589993621532500610066185778414541282584641889271309917253011939468391867677529557328439183188266 - 32371732437044361702348836407070350430372780947982313315159023948045700463271933901441773520555033355644748553088227735121490331522954363307358149165719042798536375842844714449212930138121752740715032972512639816013527257520960780059375340759592718668930926562683427322831070219621454553162822753371611958423 + 24327879121116101131569137500735329030797273235043287657081938355252770199828840472913220345497872649652992704934104356601653253960456798400940508148166692548672651904491240782911800769882121832224238389535333743379561050388845214062337250402047988267169945273434569943300968979773241093322117059829875691602 - 59894575667789478797441052588097291895925344393439081792297093296720133245020056073561413935446023490870162110999441387226537411338046023218521973915689576489831972657465967342469752599174112451163072020762781083957277601387382855638573048588289527045047991377357426552607025982006897300004905338273770054339 + 3410462344353081284079381065232270720159013783824056979047479322748624076963242100229827899686630492210844574767143570966744065481012207656987983982488028657356596087065034027160947109795523320104412770466552781648188568069251678541007833220813371492648638081612697569810534021958188897084955138031043092050 - 68944476463240589818290705865278257785594210002885543304372282116782337114104486012301371114682743605782882840526262346013674644397282787251222458801814432672221887142160561984835533629553922604979938960433775893948783834578638495334065518087474168929618995630049338622066754191540905957154580834711997452929 + 67471637242609192227511124905444880162264789459426027200480296192330712715937260337323579017134345636159914122779080904343311061406312936596537431887400988416420791945699808480969953647104719093033610635766892303431625760524878711229536310230054535465030363106937178885055383375991929700090599364825645379875 - 1113443744209246416054224831681688349816855935225712431929022744478389494640995597721114567966961480146507671977349406121069616782961763782784255488166141461436012601522850851479249797006455121961423511492617665715603972627259441653993753934118588522025764983904585121771799541663736035058531122077695556090 + 80421163486307066861677358773082587515093609967686450780616866798930708981355292980725254725425352954248846380169219307287778266900135977375067512554487748191656548419733731283979799175971850929325706231070711433571689293974832236997449160968332016545276756859947288311548036037388616688981239116422182492539 - 12601658698099462322042548481391227559525485686838221329789150891286572317232855555194786693222050655180033945624117076680035431887395735887013348639610140826528728268871566104806556860691931925151545917864030848286325260463898196357752113008720908361642162776836985141424894894722044735377715338020679236642 + 87396304863053784695320764538252180355543302519862120045686523777908165665391977155417293762948441106781346199170373376871942871702294264733335113941598521387660929076163798559494977833444112794067063991062501276491244687574578744557141440068747812406407600932338632516803356602493608581971468079193688524800 - 53026230486081177533159864441928046899351928361454969076866719273363705757333005816288604304756317678181172470582455273495088609928765445350832727977260601887481541972987191402424662533978440051340901041588075250527676306143241593900340482245625014658285415395612039993119448164964850669954363799953330963144 + 42734519896902931869315766158972719776464368369234228394811844581637074762773965665053038454247265994166734068030433826915293245748970870323993096403592575110257699898684888826345670067149196079508069670337999586218552847054764428582997692622255474583397459396994813131094751385320560655087166526588376674604 - 38812465840700798607280752412647915883516954009046760153919283148265016292461530966179435889162829843087490831130344582030180522112581935172658070899658833532938551687674945261398139634125005504811448995984228033775796918492024867318915172176822272668237687497567638650510574775235923124122386540585344854916 + 25500785878799354103092044755052035208556564701438303873917048839678424750209427526742555391442328438093284731338947806050487179690669652114591863054669040586695343430469286478917851891509033333474411252181012029463589923322404142909636917917784059404409580908279051921510012018511287436244071381531021084757 - 74112142481915814049894271908370979625274459729141946779480912714778424202286307160922000076623246626518325391688743620088452077851535727660620451203055627240262100943722977790180434909022816062340480651676029077252696597629539137270430244312282823259077545018542282849904083641759454574493048682510773867099 + 64716897089950655051294002935332705035697696009299352011971402260410584464483304712832856197494682414236070763456445215400547876055238723781137300200017564354363892360838905161276085548632680586830278941360348481243672102530299702390768343488558623904430559723167334676312558303703199607625032311840897475303 - 70892847011208177736880850206837928744747864913290526912364079577644850601239945504984063738354523118225576495617414191076977381965726894305812056760692770884860922946780520260499812374864760662594799842257412933550338767112325304096999070008129311581001866308354888628789621551434748075808379528350558603255 + 11661821983467927391463792432866807960388584399677991866512787033083901537061067394131011188113793005731906829937483370738606378970018591176054688384542767694770651965398946121765984572753514641440436459018436880795180848258154213005073727139065756544451333749167441376904801431017885739929073985047148362606 - 23666939607680120437236025485966491519843205054317241835595307494934591143085273449159493828188138378669740602883406341679432484720708125886840948336471859941873689208607151127484541064060382591066618844505875226860009847723959056559578285591860245935913537042932901557571212078896555097788006694381993954524 + 94691764582257983839923644007155383694174217518936148143909395670706401320245347669235618582877720133295078875786414917859881976900167886573476835019545961252473163141712566422908036959587522982189390106587252004730686066202567463366257856859314447106068656024623374805772065686454258218676067741499969424729 - 27860680145490834010992984522882657166025116957509509502350961654162143908688939053649126298747260654632557629527649128558771795803510633571325550619833653389447684503818462985531869205103612284804850629104450642697575021926499395614566781082602622800622342602367436541729852083897974772666488151437048326365 + 60131588698087055020499660125609944433985589624376226666507487083092352125601950661577407292431429576051815203238415497762401259858229767272287404187620872557202133381377274678262451422792015953083458154653652303174415089433652090592292357058043178861059076529856188949570914223428225971240246824034250789522 - 40674919155941918360640859096634605946831547390550762382990577961889322858291956750126540676424656458791810148015873307389471035798100988071004188898943372552062970057860874724266320250175950679573756085999660222350258446826341821140551507768131252164129634029277721597389317710160529881063909384941905920821 + 72062137011388767555925954670102618334301366080882098928820506044895795194550295408069515316719866905358273390683472238910342363825866872344633314805543031957038943372230869951163590330637443643367135756956532569984405701346905794615391410197289751928623655591347677563687000149369369480072670040059005570207 - 10275032504071895783320488479896687880118253192764146512104254944127626351573935407472490979174305419523839908393760964465502803110131460624106193184125317617764509989987032136517735618153509743373410030646683511412385220478667885604629274495459234249822306198645906469773566228945693303268006562378437154281 + 75814983625630500852576699533366871637838766512595298786970203148886727146847317109425148045659665062805554696964571285522679504145294050321101671219543639422762608831794009548364154000730356585978539977270946870120674458019844761804679923216196688196646450366668963612096147732079608469908497448483590372200 - 96825166108213415046197576922276470165193375007240838586571701830933992117808096858406694920016380987297895345794399192228528912517952198220139213479382077717508420476232233171935761399037027864377886824293044857345579614134717131549933815513189656864578705384928427191579152976620470870360218182110759807008 + 26496903718893623051010066479194123472801314345910806381070883108042556718089481634394941411696390445473365985023837477217435740246198109596809274832965069681362704664162364360585812007662632044935510735937099852458324975996560500178313345811823783662133915186156420099133690047560275918260008863110499725736 - 6614435170483163167280318395753671855599755890504182505298389734303027065450520515739546305495174023562165374309296143748566878701314947387561419761091213704358307141523569677879649430795567730130977274584602675426804741799119604146875296904319838651907704180479327813430484057333046507376570815951436146545 + 32672047070366985928791198661444755141392465744777057904542505581929445885618277949671762976530239627478401620798976392572403377213712103630298992412990507639215785370669735557663681694981259543543914014346661716450001457963236071497806450456712468695731015504802622188211343633520520806142967491685403697475 - 6823245995736061732463873735213325709273980814280147890169385058687828189709128175179563365691481910370804804464634450298942477523015265485187789053997169313650749513160558182656687144096431161826666147120023494088116482985939865742307952550889280430213304523363150039540132050358564294761130910736371811910 + 15810451674526045909739019898276058024403068740315802326566525638840465244539755840932704412500316970625047036796549190860534716107009964939320857896100956771462880647602144895029817848445567110532514633425460723486992641767127515803981723980990189727774778083767280575880149890753548828965934217864464090070 - 75865081751708335750284442202281498757756599502706303303285653508237010019896703732890716509789608460627284631612175755321919236548178468546161057338944474006873351947354715695111622477531239675327233727372400453593340154817371395696779856276327066377421017833211269187046719517059547352989085837870102165368 + 146148585524251724400220224806046013103412101875142120399428982332226131597549397312981911060022303976718519019804654037243992542838079984288764735854449896608760255122627362075723006953859689222961779042111566086744353405885698780179084655275859924227253212690587997565475151624895132707429242542317971955 - 1017882501184029551149232676563828524538211959052159450081976429576124965926520866202587578905923767343839733728924569627979335376421776013546952177293165571009621429810748216587292549996532911383658757550671865904353128111357994753369882763475416082577223874208171778469921479745021227196873130242298311018 + 56248001788243110299858573420666823408421506551162853192240352546899010917898287399870279943742020346737755886440841383115409788959709603357846396886018950800339788310654822558560134178440787579295087131085670708355096446016269302346087364500869543669962457356640338363512116487379552990738731490830669512177 - 56034150164034902296057719313447119825358645756213191091253585831775292733521710104967487076962937228973357557914732567160216730457778245202751035635176456295005833464265473307141924017406756296188199779527472761938749760370878690701579863272984909203865127627045126442063729198969105460915951495977766287377 + 50244908385552333458036264534431416305586888009828370096179365169977156456152301080915938805706634941256385180424025450300133792956677620707680864794656502045466468886169794522324546207713759874024049860640269313051590787552800410787159268297174296198951320334688427747668273697492462929406794688394708999448 - 13063434313157938581034286206178423402215901776278941740313026213554604207973564627384726424815425910376110995575226334539738282302813779639846247691798042577228282155604827287253478990339771852506050113270263358186720003840041226400065269624217442541472541067085528085429980889860193711690202078978809599037 + 19985394147107664362465036751122966260814081028077033300453894218296525608599813743680919874802198898343177391685638313343037254877496070325706522693057817569532511630582410315927497398244810619245365791297983265676801474034208245097619978517116533742096132124985896946173536942900899245389650498806633323162 - 81925447104305938329695922848379060634504774375892918195727714300072833811583889315942942679717788873796371871925715654629847458263262113668825026349508718443929217145013782636910724461549241443442674347160626389161155983235834505962973298118476734889464963501344635411342437483915805789694067247089908626185 + 41689918728271725469314352136066112098232474785222905750530882100392962085510657705865207798631217718341294146296500373988331362892669122910903121097611422637466947742528706185630394797151948868314197435328039081822223553408726136350730920972811644754653980230725859454286365364356241796740007578398279549901 - 14745914979672163351704168487796956105050896698331920661023498183804611279455719152524007036444261701361292986365059418146961662387899874688584058728803632281773302621742840884357977107501208485209143958450682375849684478402228870760871606768514482382379311013625104886746544440316800527284603152625041087019 + 65823582279088226222157165836147573267810949252047986523009637132472259268280625821849248569218147068985715758390481563255807983702633134657645136159825560845126791665518257208865151458289494010642363254782472056601653060503349972937216804589290334800033389762330008721931560267944530722467501672433314459647 - 15112674637224145642536071790727380087459441667611171107730224771253780538476354451266956294994329140501585348925979561905071692496412978537096283472805911951218947349022028699047705429133990576504259567753811089527121307928522732389067894130476900023748931542044610096439439690767190004707516609444509749036 + 71723493536912758504779803093187682291615513021205329329582093419159308380477091141564206568467973480578433534019635248940933489791888278705666354237951087126224595991249920933244004554889081631879904126813286608166328412965946883255967238256458259417944004913825021190764631501841201029412133533414485349267 - 71751863911776444206527025641997905837824233964756963349408762721723984842092278297018985523416129618620400820576739363482148922268098958909162599749970448701611137471445732809090546301077414976658263998701842889204343928856203957921995736237969003302095742998733750725839570753420050018733365191396594088744 + 88491008559242039072821919619077307934553589362265680749296483686150708609308559212246278024575496692920276382714258402338765494742393513980119990020967063484059975265088229600954320026813647302269641159546095969610819566165586555981580653367550493180049549824629761319032367966322310154249898058446932099030 - 63239991832057752097114645718487052099490768686874761899051325946891020932423905595467878452822501557725943051130929407306260209290555934142015675895653007437023656665829790086436287876966512391117291664082716134426109971726072853861041762734521557048475401028759584600506087500507783712444748551647383877509 + 3143227541893145331511140439650802429595415859746923778464532167628424168651052141009275529645429234264080094991993726154884625243231744822773414654893228535449473690348669294124152648640671308041443574765908816949353717242234761506132471569007494343528865404007323996434308903865382935372379979106240199920 - 31312842018338952220188089801953558269926182417268764928179033955855924320849665014209754451195412440929520000276708784862153923677828472263789146016987834193587399909157864912840343152678778625693592298602510102346981154770086047928869108219016346161943862939923785214735868153263962872898205319912984353782 + 3719051998406234976812389048415851365041438573181819218746544422001650782871627523106633359255734976636320989956295170783805246586625096479667879039294367097824951870981423583513484805455690557471267121104254116479276733396924183066813402003040010309706109719785086793725627909353332435878413055380747355148 - 49262091226812579723980042827648524594735748878296337722584324410213385608014462043224559873506578505575168515910971512237567052685134445242991466564813867673769650783479986402674943780430755632401120899036647965709347022838414635763131132574784987532706984841055603486124147203156893929159788601961280854504 + 21445189399165113757859743582383840733715158921291316556619803410473638500569988221545237527226015689232322569612356325573889665933643430681632220550877525331485908639548933948196068216214063283075599114821182581514419108520469179451130056022378553340526756369392100602679984024810868446320570472122976283899 - 13401522674721374254414473505953592382531052755322715985403893011032613262574309946738237053516800190344809808573739661218026186982987391645246999475325387675589487378134604174055639122164422111937840365263597961087098332085281483283414188359929187949095992139576197245116995377894524691185522222141160364622 + 16494010742405683513470417799808346656439259360500512036568698177199381245006195042636827781496986078894681557004499666493207688040860367048244462450411700986492672496700947124217067503440300986512728310438169751483723791080561894908773892229100806089568679157237846883140648822853182690188606835528747114 - 50792835377743078571745659682038542482089571863050022016759405199861794695998353458230004605759439731544587009601525640479073084844997210568659416140500884948668089766261479564127492210600257783161984699368406445966809455435690098445968820300054392725726334332931001213455699993525956016013389941108400459399 + 42048961145875899005039298804351554489756827707873216945428815956702170197503856413955839943360010368415129180648253729873283722881535478873160859242686224700415008034068823463774722650923167479072700033946700415251159439563451438133191841717027452151265687044945194049353132141979165222025554502986517877105 - 27039994189554624601995718608129700206866807348726770550601029001611953818920475618308101139661510795193371449196667208492870748296538706337905142324608735103308466403730992354221312052658462865312919907059823300457865025667900842001829368769922020716573661704094844766223332644068045224733671677916246325475 + 68253835766576631537205516172297918269010241694120181560864664326686790130245776972719832669519443904816126071073892332296487120774815250507456042943565097770318393535473024001279506341727440869540872596525203020112308607098561563693266718918127148659839600576809846211001618472075817619735617932966760190672 - 34845219318010131889189256118091728614702158760855671321965474812960293159288287559821064604559172550795168582365712262230643719569173954582539463650453546139484137519505736845771351074916678225734793030170247374010003109094298378965992848381452659047686684730939522272456104934769454792435046499142244967741 + 24453100228355734098159111408588556675968247814702489970568955663686235887672994382537074395672457985366685849702205923926688718292088046215336620254598375367148610122311831222734123698873606143212908378324970702243200572204383258493613905651626923502781884443169523890571826319631539844872409593233373033790 - 56747420620525878253646022147247116873647610886474674537453218054937753993957646037604219187263942731853315238763783559402956055330056322043248177773096627799567331074072624748458670930072194972901818979804630857833286838922049992642279483442630401562101045488552056133238609152928856994463241570731822490536 + 10472751506767403408870507886655692369639950940012314255263905610810321037384313959529694999568925691651110139280284752979225379831704553140590849134327843418314127860643497945561608362820564090593908889851543873860611141539898804389101867941478417236231726467485232821086090880007804879733443563483749710815 - 42235060931649031226470251397004367781305704193499943628041817613621247504849687504422066520339047913060443484921950412953402657814570390787113997128383326740744070267053937700720073310676463705249208437587073610952874699430476232912750274579036777950989208368162120740180924538045264081303394348872065709904 + 59131951354333904701206520877371432275418831365658597903321307732584756480984466274000197468027292206736815542333078049957424341439280425320530720596617000422454670555874760544723681650139564512257876835260186232591546145083006176254656543517619120958273684161564177672267905885853052210347197933571958093463 - 44389533657039350316877222738695803983018764777057497099088802967341730473394408338930053440280285252669718069792254643891646045703965128766657446577748976062398762495357277255459841358390897407124349654882878683009617462317484343564951516253425947819681492947304328198928451553379673647433326778174767896292 + 24472662212730325739445423157117823080451516544900956586911105642297745503837170451564740594367529450197056878711232561494205675746099080405604491965422164005296001208993043958221370605719952917573617593310820201251387344752373333601580734440579385832137805738695564713538337741207226334755548438641596383886 - 28218684573470281179979386061436888342739457903638912572900203442023729962439459074252805131032816804037760179540654196389055228516480096433556328017854133328098432600653597500468816458708132098196581874381050135362916738074366247565866505959355425595534282055649843116070698332561196874057853194523661748465 + 79134119915954340298148039307343467594632430888598467126732966575133246670842433296607213723127922524352408028168319845628332723415134678374482990926042402810183304856273578949269096233621559442995714547436462954744641270479148480698283501141497298632046355517077793649719321542448539800576656091306822945679 - 15184552330382545664226557822256506114528481433263420013612266453015640716226431107158288208522586104132394503613587163864820058555694247397228883975803369772955638778945206879970029978714146550270443393311528800371773505617641162246868592065903433786212554630245937793009945519639490701706565175789076992967 + 82389145879804255590242111987400536459142803839593136248448202057544725718349723879876656774492590536047973555869355212659571936420132696150816618172776569995977508141618624688257300166271564359474199269348042796062818989639892129952418392378426326855988237622033937233561632510218651073961879768198106729679 - 63541013999303794876734209557387670581631564529355515953780541184398593442676473925377490437170278674769572758206023091280528589720019218888406760666420225546090081970308564294036591722850102894132231700877212613841989853604468746511419607710101920182439090288342554109691846196156492879327166364492950865008 + 65861019438271792329006057129015578319361125975183533068680372519917556823900742722511507471693454767600582792167161421459379224107020171163540109461481404154578593136975165016159677151176535550469655376131577107689031570081019149497837075178118063884749646200898466912195089915451983897600190262926964312692 - 17152016594949575069103353862553337151220371202785866140345572592211749922548814761613855963529619647408240864315656819460185555490171746189705487635260885802788318593883836098084749363644818028405575638951058183359286124825189888380732605075603532108811098787517023535937358837803241997443757669050531634109 + 91694889001914615136114738023504658630609044778005243096992739666058469833481931851063314079188803554784485204042793834308181837018659094859375679168669740325363352329239925822954582762585335479137289441181348925462199754505528791162240976876359814687858836895214402943471912260919073915126390258634527662716 - 14247160623281148314481445274581016257995695503131882947052072160557433765552404753223353527546420179968633595434657420873538007632944064277372758750062831114537023550268523685578201424559659308956410262096202527820737955355014184427632514638559276779078802612040495520183315094963345067869069110105293526088 + 61581011702276453743563004189363641321540067149923348585002869467259924488128205367738316160940586124342327080895593033375233946781717518787760871257173057618483569162144197107967408860739360507905831535545984116308681055134018503048859558463274343186124686275553656913456323009489210982636335546065761596496 - 48318742722084061005726599504116212861964199009738198290174332586460125930243468519942630041445981571588655163602299156622891755535916333010884153239935466350140433384393498297122298142707540643381833257031472597548686107223410597723823370238960382138246444184873991451981841605721563634980095150644360187620 + 66252898475608344407417414051801207668893879174800605944194777889233886322338695219143687500368279822338880712761455785119808850016739222089933877018283659389997075192306987298517362828459239784607789934491511381583650705276572986044838901797138220878699470877197355152507732118997280715828739996109536660209 - 60137702653831402153332442012458013210365061560968593762938786577073157021369501503597344051274466139655509936526917043619005766570748601019936894554583924734767304622725721359828933407356276779707103469263836200280985149464840038057924611022595351172076635913684166806481033221488326748205875619523793127872 + 30721638906247405315797871148844997982086406544151119579606406832330788977350098741785999909404679032965285330938235162269769463725147376371024004754539053726655233719093087883000118143506929047432001038626397427578688620772775846723605079104087447569131129055547637976698410373362318203371459530136278476812 - 87034703940467196706987177868657258098665928169544825758008817783332611739973592972953472143847828573365368899531945605164276572083772248564184482494737417657854818013653984530934304932118140756361691198736916666457780026840907190014888853857388415234334128736167102620462457458749050409318829630117335992000 + 88821295825113727873065335535290376381132978259864061061163964603775468037352087367469481222726449639092880179440877049975267536579353801499882347145280106125657424754454985887469011256002038147915562909986457032955999576150186467436269377712581518011715870834483747760520580721258421621211300471267441121947 - 77783966505654383577226209901000717150100892015796561596826597080521283507126612649752046902800974967881916641727558500942412781841119032977126864303989061303194522372778663523220925792105046252486717256485066162585523024591236992126713557035811110339294830742281515100143442538042641197333547257809372376064 + 35310514003873703436692395670081709958208958805107686448735266754213412214283043870367069866993142536691060256777413824078315681333912669372381005389738820841128720911788634468127129064369325112072586775460008391505633706581168439448951811756066871796825229005632755596660591249716814342507279506442110410202 - 47829152652117729225993425708746521680859854832338878838797566913894675333948343570298788601660333598468371548574173942757878032785616299493725790824409164930510175323207399412452942776391064003219366982628802294420170869916290226489757611902618238480115776121865439594104524491145202991100905986183711367007 + 79409778082508924842841670511572601738619756109518021896951748242307115255778670677000239229808800082527788748909711731676026662077636012903300452541806607055750077672681793571845503011200286772702048892500717987453393959424633193606213531417907247925204509591226154645662377790217787526879391625756734729 - 13680835324609088560148200809921436204683870159020825746005409071499766344143360843188286230667557542236905701304109323740234068147725443487282402811306170511196013004411701422724929308451064595217730993910549747780138423924669505956657164003547233172613190744501189416020118636455482111183528515011237167006 + 67104828737920783803486881479291144953325837936301299804499868152320629988249133301672140185506600993140310564838622486983355951609456344546237978710251338126951231488888070046508370026215053998259783638015654434924600953083108029650916151999153143003747096529179888628377389664322625664472660507469168175440 - 50951616289601639791775820301066100771588850495483334080948419444093517431755872062700156675560985093072891462737267968519505011553745246166048993906106685421648133926819081307881573333624785726754408277341323098926739849595478336362456530405178885808309400244695910274793520196853573192329652522853570000214 + 15547966079903138563122124161090004610868294978514537277982547260968175157072681801991352724527086683773570896050007519983621173637705104084413905968462333619052105217824227985499377301815901657313232226204846642523760067825718824066080847929980196104989794787138988423974497485739114667417433575246653731039 - 86607579735651737386335303819559555711504620823921033875516123865544888882959475546698350256441801677014210054554765480528034680281748834344708917140472426255990499822666404212765163416426833470746410694984296886804308468827120969308367397038595960361211981244415383392398780971135289397098863286468508185679 + 34925584303003361784917150369204722628717406632035371241728414302240674629617574486351581896689900902217412608080108347471324660584404503218347272184040280017550666600479914446552579723054729749040163841106127040856324030308144979847367763227629907445550215713693931682510697646578211791757295372799886077640 - 48836039693997698975580778785989534575757473708418257822227062902324950540807537841484979625108678937955219835330152228809979154673218345365461850343601181761335460435113596373576373829762266702892652811093563108883727613790280677656917171219789610956406521437634686654949657806003620097300243094966431496498 + 10212478139957280522743402352182017086009011704733942556097994200407977298498886261815154093085747359827497377885959708275117717718097260190259246759930747906230375924644751729433831001467313331737448974422329896948229520108011382136770999385928045382724892057288488786002878752724790725338569520356521001375 - 6081213546060107443135847997940372114309952562412648774119800567710741378786955357693106888405861225176574919883750690769971727686260337537571176657000632000447282958966763523268949739093400614275552686965892521451569978466616031062099201386255484510314074218214878115363846772673024160523960265365176793519 + 64454936884266722759001382828458127765027405877800320413173628384635525783570342826179766604389347130175077095275364073429045918787802425495047757696273636815826199770061994671976058136400322528050194847918946955498837619887493627447008668065748969374260043072965148795078372433240573632727721761933558506808 - 70946245854742272525625532680423706909008842235496897056927594587635683000341053703071067417776706941886596228068897452795430523236411200127437232557535509313961907765709275657276740708323620863671375895144985673725097684410677316215070953498565297330714484707968719480292851749914682504972405357520803483826 + 68647405460548968981257204756983848710437676455421519834469324616276215189060911233802039388890495075314023505781153675242539099719458501691692998408458685530376158707310911974276157672709988256318174526017009035627170482448454443303882805030085174421984812090768971335412226066903664947384028632284235422245 - 21752913927482228504070975673404022333750652327010542477272588617205066835487085752728084369763146780680723344361012692307585001899059838194939549220175662263598173261063177319600259147698881092217441513030080413665824940729552128969790432911824529811485029564280202708907425604097840217332738288125058225537 + 9150233076599206474613707029081873027296425530825275948435575138139031478859541266632567921092553957801829985620464178804013172267035896576669462967271414879908925417573243648959456351105560053027033509655484475686922775152192292944724931971587050364440182549946146935951491763022830850566497174551190651942 - 59808370157207607035487269099526124260050848755328528348079807307444718128671357561660351131884627961306571739513664103006617528284219503995804356802205087498735370280141629755755173391162848315857858360886233228002090007085898534186210552833190827905889127175668931878464635702959936671910107439455526888970 + 41453466086690907344914047328973186297868494241443550517650186374870686714451226851148188793026866313246192978643551730080484904413748450713136476204794113105187187915834938299154126244706598669793840741063638383575268359328785757403016316995769279880835554872743126663617112689880672510918185198772702246741 - 92107282126407417017294038694499830529472669411632505288747635843864818357406558220923273349806945451639238115313103188264289097261519238374311185713870422546968972567815992194684176584490321202431634987452420582899100234068792906624150662291279607322329159763071614128064378570206673020243321324246930164684 + 13117680333682071271438667046191166187811717049159103211733979420228704628882809990242291178870236095207521012283534416292002845860291280671140454829438208845007827813456478990016245621638827664466338389316432941254736448699516456359875832178580790799341717002854105552867805263374070335651624836393350753142 - 30588545825091627556852590245254292361627664028167594293763808192323584570964902164227927959995753206551639061723970828233361712127584012173972920442131742864714088814653635263293281321291635454102038815463969785710516651614295780030953132610299322923624587344077273763842560712925883884864948749976102440962 + 53563758606107570867095109245168092762125892020156275111815227200823949373383313393094743771150244077922893944441062716737590917437681055164063517146076858830749030663913168785897230500035148318018258792997332117571854272508640212459875923883382307825810678291902818308050817097097556226457919399692307696015 - 31788543341884301509601180513503573277524847188016480096315100855691173062750613784484370084236671691781602938817286745702157894769255085044997245010289330292759250969428064062653490349359718631375211480352950869794152373117894083770601592432232898784649866353978092621135688222042336807459047272741055207355 + 45381865539281714907956555839888900756204992984276778786939911018753447432440211006894120821825567931276302082109501982497169264482984887295882341007538157684859420382087150174441872086660994886404742582648383605293576883539526882115606025428339997571583229503769916745646428292854889538587332535159621252431 - 16072439472477439738801493797984329263888240820375545196665992402748805674956336468951575514026403753730509418546236270386608143364671929890048565509343529326441037129940804344456617621215662194412974556184307394646622429397002148461919387557173611524461403889448417597178844112370087243444962332486614480818 + 80155500830656666214680709660411174803208145797001607379854800303223648213133030432830517125836564446639945913380063673018346700438835327022445494628079734603924763629002199347107401685745089240043334642484851062317555165126432337255026284950794839259207739459918324762057246540253566887375900958840196445979 - 4861307412317590794083600343416914311436089495397274825471084692210898131649588530967129902516419503464431511613468389770332671753072411135206397734456454307609825753069852340993464370636791136906079097723308251262056641181857191791316014514497915226515202859163432672912148648396149575021162508475499906349 + 47184464227381908135963839180960670142613958501369814431244651405824991647375684488384017583254584134583182521853163379110583975345138414171602230857198557870293690596352395144313882557635265997222754352311398595460580891654880595100196476171753277280264500473951696711708198419849820208393210830935763608199 - 67431254817909310974016674253397792122807250552223669311433004845513945198985923082361738792159698003962608012765166145366337836715799838716086946195194434905760829222086473157558131790538611076230280753007771001441342209477501146538747440722604529647134370072875711393311362285218934529596980855290341282817 + 69402131287898715535191702908763025254414380288053729201001089939153335010864891233773761537742023935203704567908477275730315878769392560628528242905164497141084496064049898040655462442967016203985650936856310554232787300869012910591609106295453278425779729198339244946763806645230198966622332106644878104425 - 5165397061293054333607642398786153764795806878726869534218013756761707294165261034749615451436163062986081221536756207453861720510083397496415993409918462646089767783293805225256778201599115503726361603288750005651084964577865973624204635730642261376340597813944752405416020724727046229348976778711480801763 + 5584590139380558584062485459042111826852567751296964889200466521673315193877413726265397305169526089226485615397081080464416179556086695621456082502717503404804729218953234347090157888731188648858110054340213196233451992914754363360141406455192644438980741671636902163639439380258840137424909858564357751550 - 57918161734610776060576247530522198613456644405176608974936143795440406948435455706036259882087238205094703280252188631451709915797842624664258104796914816903091552818802834070069213916922122911813374584134530259835951153121174055719878661975332571105270976340355002297699202068124825697787983207516859630943 + 1377519924039468356755904648443680567963953868378535225061179532141545101035009276152814727302313313110004272431292317058131696291663953649902382022747561186761309078556022884027976047226952496261959597291846360737927720872082426258902443020433840481444313248581172789797945905081669724364649257767141245703 - 31071517848141001912827181936507703692738375277061837814856269865251639726429425834446839126218505096961806035232969869272703110674802548379892675770204690874512205454999814241247388244026608173853418004339647427127383717443719437970101523048407613539022937434914150709755365169926248332038876438736343836191 + 62512753772470595507216284188456877587200976537565162110159370894818362081815977310591864732075081848793092069580476296709548780922264450858407047615569135360268771468464345349106369835116037347468079365120281625512428817616773355884440403935218357579918981788090788487950209807338478187193190663409484871159 - 40697015545150856033081084207008513840590966916524966480107005187685747518681782904576249710162318466498742177199592214744771388821223230106215589948463599308648524232250650094044104273660596683964695780301856078018121986174472853890090442249310149608202585880274472917444478764188827239929511403067633590997 + 8161108308496634861068883696969300854196405472270198997098153707206863947574973429727015793170342445847706139115713319809167545820209710508271804876000513020774962123296429282296195454144440596327672631553152569261808518217995855081264612125199071795839885592448644021589729800855493277567417306558460113863 - 15219948169476630321142281360653644527112758470421462469677953602501016091277251562860890373129727062714952349402172663554912067803824600604939655348055866951564920565245730344045073518736313309618144037196607623490504837245994732551982015404298286367639557614494488147683619696160409571992720320169948317935 + 73533204111791113727743664402816577282619640370140189143335783412907597145103634067116657786963745880778691896249403144029090277551061364124601248286201132029687043013803599990669393750661508209366751430634654887009447197788001651886279055206169664055163294638615357416534989933022015035891609060440100799574 - 83305421699175181087255688848903073776414445170870615378090260488577455026464297904636909184546249444303133309505191444364262447168792140017085628865946017034187469543564511137959037886967802706252741392411533523363015196533389994946681728719525969189251179688422461722560579002893365970454764095663419956969 + 88899529755181789931583009344928006592009619150111448566231096439902406065260923988017457632265084710786307711696185920292305244832990731189393349540640698996725714064716654066882175366225652267753266975434168984914897141986062622986144357620236537385355846158410238820783272939077281770585521276302761496157 - 11944694241387945129623752733713175371861403546858750412842012804799531590742399672233504750254633006148678031364679935783481133501868256461571484208674745720426706111497747757122366375660251613186953845157193319246751358109550323528326336316628036646962331102327813187762253252857098732194747931475749245447 + 15414001810442848447215390826258318918443834984866697100381819011025797722807147696379365050636761227440320759340014345098266942389045853825102034121851638407974229873554711852740896582394157227958948836729379874338162221520315998801193574565950557399153257884893365253999794662328034452905786123125784638709 - 67370539989754568978623111971089347206407315033034774159227809748661412649350310168975829375947717926321622694278433071828466122782127724322377125388670308821990661647228132665315489241692626844423267061982610844170911059718850209154801007791781639186891326551813585271235504647549391366532671820706450214188 + 4072161206445909102493018463594103312489230955753835238692378272133234373258190753945173397962712679943608608851440119562441075483212488176132745918051453419218181291225259725889999786377458082475648837536690023892688513946020487143124678104206591175706998672133540564528339124417997561820442472748165776356 - 67284782048572175592322955988367532552562781441412456188525541387467703818591749459455904150874675856589996002625068674566233127725240145654433882695532743158831304833581905929819938813613604199661922419947046426008674605106035949630723437157028915954490009184210176997519836333010365239108503295153859478987 + 34554948002837451735914979770114393878947690254741846019803891778194170044441733361995501705561894655134497458587870777377576410272788768757210945741305198588673167647831508349269852399757820650336673015052969128402492988201316994491923545120112950399280955824698621495204370540906248309871908941372550582122 - 25045201372302993726746781693338423514684212113985553706338864239811270039027870915239866033263433675750289691424693669051955868031466553154208815684060819833769126458226531267382111167653873172378175921153432167833734705883429111959684932721792238630788416530090924942159297760205177793118005420010952585149 + 81514005296719049208117704638950645180921487745108447802745641002503305901538683453248913673223693123210042713869207917502491899448693597166608023013805719720640779558188066972644470669772753481832535506104344676982561116839968227252249818872586902751872605429937842469883303956294111706062944965134961121523 - 52894168271713733974644294604915468167792805581100363853648271201093228118795829161234764489496648668401357460033413432471628742833508667793124353924634514453647195199670607691463989400688096258807023006156843933297629596831725858969751493153154598352684034935134154156248558447790134954082339856022487609755 + 87124154945901787928845186499862326363368665241332834591734488573411814879400026792102860099075694928713616547941291300661157570115673740565225656453608906902483837985261773859955036181828005527239961951732898390575209763982211528628540030425901033555680324708093508087739954791982698695062451122602878981936 - 95355398823849336016881417892160288213186650526437576247071993666513621724943219475805995300385681351718849358106538784512704293167578595407898779265610311273003504736284841113406154740634863719320809059835370073215337915213658879275408882098765250423608063074892464700384651743444571768434678321104656504293 + 71646712163655717610376104781863867031666798837156271152651704554987747374920863714625940034076213339655644128931648373813246897245836506979157355129048063355138120486721137066678010324202879125597012066967837046679108924302446603184570928082886551429404057332635369683596788723072872472548797790473211031522 - 79795519837583443996932764806141392993640214204420474973780623973007751495685887505087254691055612195567890827154485594931295093479611470164987202898641158529959566399696567131505901870444629502071838591069102549621111703026313080976886409181349115716727506256822740916045128370398994242001515570552104025482 + 69844570597494439760948967352121078634821676845030661841212872653295022292051057066761511789271743527470314225573037788496457691276143254810523207199979824999020831638228003912940276201649177867868755383634851260262201463167994760430968080672507370729286739543915282010716274778402449684576458379544380647593 - 95531142115744111276994617738232238974385272922549239534566441791508329307034946875854726578494325192214328228197961630556545421419978653749037347278053151673808977108270798552694034431544623710518284414055832563095930919245608747328464186390227734102731802481470884949583123450635771478935295770292990264354 + 75079378352750967782792166549971210168755016465752351316059989766864201298216187448335625155213287718592422754028268303530286454715558325474089164744044239363699281812370522549054573924977374349611262386569603652156606672143072831700586924228671451599168830763202039297789995728881563670697061762830454805800 - 58872631154837153574266401892765358978603425784605213136372994546492876723792818092782040942515909743415385228229426287680713633572298319824531059688443090224817892249419193381915209024572090024683786095619131648780392638144076275300592434637457705399071378656957873678024708433069656478934558388941187786611 + 8291439385013858162503870853024154115418050666310698669179752876414260554437864411146076309836403211039138265390812478958235900928547324328809107194953855674979532937884662443833872435377872414732525041425859344804933669804431424665594178162036733264537373428767460446311077970793905206650099034041940787916 - 45011292201060351855393376539751455164896493154002986967313440863694313592372618223621006834790492217976905734120034349012858822923623689608595904368896987114944566804597887024962316342737437975501904155827609474989505276417236795776737965825645026284496156593882153119276958551351599057327186136764965146200 + 7295391765470142617998949638936530619757669982455537635539622745699191342507670177709296485620675168139453020394419233540209570755139443880534944920012653955467406701751449519727067882792858747392689112015176645729454068564931439319724243443598069708145070010347550020623395933633411212736214017770354355910 - 75289789567624742368791374187638789499280105458011305792641080103095240479237872710191545538044513793885916239930253598098386889950695814581996563421779376249369614607433723609712613303258848469229654050383550536140468936826185601839806719604082242140060979519252290768837966414145297728244984460052248265866 + 89923850192321855838429344386071809672950079291172252692143053190730442206008563518684202485909688687613717307108661994697641960176545440224964578243092571101424528775325632027404191401371409059936321722659344735505346006093503023941690990760062821869284358710832033525637615079525514978338274302219283190760 - 11841209509145062285744849734016249253303607625144420140149694203181081322582509766533193026534685361058080543409032549064597823905623318340771152472861427165710461101540802582683698604483077501152084254300998653672150058332009876035061005327661444011480368377563770339596654411393676050379510814516136186442 + 35507400569635559210492493876237144208635340774302121356005230831487141250061222608916882327463146905521577563121576573383912999790976857972839301952040592039805088915880632474569868694383954734076273472518104078207482355053422512232765875757339253027984657345192981993096866427262219699003952983987488171148 - 49916893428549736253000332553752517909833592165961005984626432611528233071469806297555140230065646159584904833075237328358614455427994745551576029241482597071966251757790215239039749584752774842579445332729440919569939538854419742216564263927196057022077476580549530646225924272330102043834737251580111565268 + 64785987229618141934818584518685010302256220984708782326112754386369484894767581912664896239899592926841141042421797195122244006673033848529111144551830520991213558859094506665492068976821038051754427079375840461503433986732404217587393300717885953401465441771102476392853093295169669604053673932086077925528 - 36992688945702513478410476215760477069998316512245060073122549865709818719569700648407381074468161237478001842557588806321064253952102861496021546086733475096366347491340609916282660402739854828654280193354493968081513284975851144834741308609597957780990454617970790085038116347522103123902419483481844943953 + 61784807567267931323535033490416367269750163134290341584720546234862606589140680389604972765771586891925025894235518514922490343225037538706886209110337286168594943500055518971061917209344909018618254168737657104953795668138748579781611858884962436351045555426254125131898885520038469967249562284312800601243 - 12061890529060617941501385973578735050834512726100790781436198675443115281207247587833279670606574819335673643634392086534437412443861374650801879498089940407701840907903073699347881654331417015075379261837745489720033493287727346741060042238775896302311864899831100004441047352891556505199701228373452195133 + 67218447368309673056060115368103765981250534983702743428518352991537968309173441392701279934126134769343836701721095806356651675636479562974898955578181980439614654647929610820777864151905824728547885771853783166182653763197782465122184092688702657336592034495058158286623101508067743577926809494283693396967 - 98787776853369235485584241939438436853566619961786056487126719149039153066850629173409802172166250150032727231211535373388975066228409720387108218519154169086770131897849604907947054095072644442530600072643921701936539343180139207606333391047034822332002766444025945133774209181986394098046889710933837661708 + 32994000878597500668263604403997272101271882303329913145290218723887709006321189699923117918663358561423138529101543788650462552212732043077211343088287188629192141130729465982246585496654267154582574364578751891866587329682030337692368859442108793155585867321561422114251975647781332851438686515561667434264 - 73445688392737289316384655972769704852238865276098578515341682463937616639573443393521832000438026687050175632437873593810657092374298799888771842803216710465185903134929147124421365246512978073344781309743619682244681036999319126277923295432402300179468892783424535176559637356063783665606461160600721749849 + 61784323597235906572027918206402976702602982070652248832758848770691018958038040162018143542815769542077335502329746716589038569724069759338971850308206007993709860832527634560276675313383158975419134408277275311842453106782937274628535809645180984998629909489190437745751300379564317310173564907611298763264 - 19402830613957297864056905886222371383200348585144796112949833532587428002572566667025540814973593578521306051382839955388219818692951924274386114769080783806173376021861449092903718059793438536597958329461190208668029249466329801491440092403943622683610107955522362951616878057644270164520994186555862299737 + 31035931626897502732677867822574042729170199392579640199879130274515648939798751542017044765522452020212638124713815081384562572612194006954260922084856776889251728403502725815104867336428884897046013481923573494895690046059861810806825315865671941592316295854541444912160093468126897637779874548546137295011 - 92972917608921809861128163569597259247769387134624384715107217096081213549527400292787213836710723744181422820544018492844140169395579668917498388909835852169922552478253963753295337743856301899256720702734872706202729337812793376914405908264698492531355998918887306380176949279930085532071949424122940584 + 78855170255039479722514431176481849415142334599229586100002620790394536290667346526716716492643537557754173868413886637484616115466543394386688934369696613249905916346162426480136848101484626770776848246840493292843033174533964491833024526613606255617106637142782432256511504612385051180626803487387879229296 - 77063548435335645995532714190600003508333108926546051903077337633051900015475075473938808165257463287881686722628089715552591795558320993670006322824450904461411873852622147428680269695466283392695561892028171734907945585619571530293640689723270688515974091447012338627588196697893549907259879851853309272713 + 1094553578392737692087087042435324071777336214163865988154514114338743663734703544839956434809470066933674895332429541889226873260722639595638740152827995355655348878599713742287192639458939633073438166688024491770373038536321390635608625078995303529481269219471189572491351582012692262693963774435492521597 - 22494409495830158618655171270601462145733632839852131879162211787118596342977887712042837762025230012924387760216580873033961549154305965043207752264418864092735105309688113836766083784307957288319060964164489308126081832549639606816358582280500472970090365264061103456464269419085980942021762697489552827481 + 21296256354695281180206712381595732230961571082445285556508184740611414913563822951943928226656032457816350110447465035971649734341707682500889453609261671569505444451161696647641232097214928152488676698587991383932049183467810673318285988847968231548163645735360856116798013727601373074610038153361750511050 - 44128890454345214280180157173941398569596803353385686164818336694621607172993372505448620933386621113474689891865503802059094010961649326032194986754742226808843430782210921121744487843001671030519159222550860864208246347954829178011428434559242596458328605685262238701694341966378569323612180976191504623663 + 83995292233580521322091375534715951700498945616299214631659832177210054897500940207612555344302846371285176263023521446919277395289823180070923464361114835914660014256041746979453204508815754857694114555203255881693926198018993070497303690374287485704525877226950610080967363291249252861384438296506599809022 - 353054530326716880113258407834338272628296283352356823686905800829398079706781569875861644068965962856622327072079561962941889873201078455664171195698905814514421895520087984312814049455541531712596313994609784979135498545492971933188699501671792072210633026160994721527867436119925495049756018201564086603 + 59480583482824201519907866167147239361106754040280020111941292863307532059416778470483114758192677325026522184318616876343665777422502150705666933870869288865587215989914308695126746153323147209844902467302231828821081724119642641893820801609038402150571956478310861972251741204936634933675841316957401460160 - 87469388042947101817621618822418067202841913054507474874067793690933769775706658715511446271946919811350772954923737120571512007113276109772284478330332215490411581776684891246993334682556380639290597329085616839572138467719013618995354553663149108833233806059561961883553815372525552368292423445114143584917 + 48209072423040627485738863188132400540945310623012315317501289148826431761991844261671527966406656421699541833169163201391126430970908796880213400874396826620182387397544761226094306867270661534715381445108401608799347661744257174121641876345233603189313731884103324328484418256004323821554097463182713578704 - 68669990173768660680075637078912941050944304423566782956505711764271796361667710827072238529009409857181802380679439322358241547950383836153783073988347070102662899970703414102627444020416156518431872793939745157428750709660928297446232901128034098280253352565035320363706054882401581558219030633713617265290 + 8565183107115731598032230727073345160971512031774590381156682758072565192178295013833858006580690797592383315281634668223765579706081323524674618283694389265761527176143768462819668468443302368038885109829019845331488417077188269253389898660974885331238701565182208632180965973372173221831496498077627696959 - 97078171002465133419269604689385835261830661252129270309191783741063836724262830388689701281143539897870232940928386082545114120276227782628266981848421425807946091531281621044650295064437217239152799801611785513134608869957856623225766939769892940034479952922271983735694665112065973206014901795644481073299 + 10891398423682967358901523449637056216776986465960959570959061263625084067637545267111783627419823905934664523850149533858304301387624940750996349594007814448539510020953548380315622522706367809350251615612017037512886117056594554413544082764719992613915576695674279053530795817818489758106061336129986334708 - 89757553128376341498523980299393402285276791634203543471027150448772355270564218117631251333588622656910921130154699878935128980280419146917752371050259710710889332344732149506302606999394738228925726155360382161508844956190104842839706648813620269969799758009659684383611997213515130043702508052131168218463 + 155843137775878204219473802779135244767666941582469717859935320665104984540403153216670480845751731699610584383341473635777479445800366744430382039866155512274608041899674746938656510139992196695259595259852634903617944339208390804241124696042275729862663601111694534070528369171155769843878350537318931404 - 49162634074371609463898516872129695694895758591789409000773483383943605464650487905119543941965718882328364670418245382939835527248613319179127936962234585714276334484266430903304341416444678306610005797678325530226132597670255935749188154410659965471278725584031029243068745803848184119347973350173280717712 + 28797247767051426796204645770510865141680564482390787042723575511529293034716474032583445164891496713302713230973873734330923377803750189940838892988945883788351520724818109997073651292625741927149027077701226309943428757829970622264847923360671076719609002995905820322199639991352372513986718346381015201341 - 73096885082661042034654255245759372581341784635860096440842716011831646068789709745667601644195675774333692797860361765086881443827141825213239397454716016122404532872498976278893509063621739917708286633952936678761494248731639510658422375571675024125016434728074627013874882861796616651594161267124141056260 + 42966017530659301213757696521273487362333144190920538524702203398006559053031339280175319457286315079457452526629147965800288433338548766210361015756243416377336798026518124659671081511560198765948375052214527263502078440523958388857133183824921979977217940792365385904884327197109176466166972856593895864793 - 11960612437635225982730504908042347211652339972104684351056852290281227513936950151615159713413937857088314544737993465948041913857496122569032290941651186978676470652954087379264335075015116821308370545349810384944387483923141170566082111506155604427979930176933773400918154235406502775648771286669188525025 + 53431214595986719264497189218375818742506584999300015384826169402310936556275325041092749514596733043398380828614495172430371572574880710095578166793706037336063913334945549947491759770692452927168516563877921719743716430901508620402458197678008052638208287159474192550402939849586363567572826566794210905632 - 94365723146289586167593323528225165408351580934085116965149686073383912198526961313193055180165451033090114706569845098559714347328856112960304284779698569166044501081397336648864273617644810193139210242492334577678505112562696007857426031328109075542521846948369549949895143670800974974444227248368215156720 + 29693100144744072540666842239822639077907227246068810985332932792670228809141290137098694195412487573461220681972672244602475802258773875916749524722091224218381081912876641903235976067665836769661727353981179416285124090343649749069233534759106132528420150778860509274142997498389714871281701977191764068931 - 37198657534885081323818421656383518941022186351904779085553547296373252199490251190566450205729084723362505646732523005211839149502721086112396170052172689468949737768093017088095737897057322029202830890675132202477910708025615159055236282275198564612841155664835943960036319297892315956895931980443822216171 + 58426796157485789981068517760629862365053735894280723564510180387380095482308653303016670720064960293647818178186271217736225095239000960645530831022518633385870128773765778348094879961347180722720929111582999407940912873442610324795166682399707655812936827357471776651947998509374431985495759908691585685819 - 95290966745698642616652779279376182284266806632083534268063502465096905588290978049779751106971543149940904372579329733653390576116811985977682699932331151386087321304143952459247006735384232335579241092377263464436635075544831384820412576128760481982078679923031338329470438718778690820737827553886189867188 + 81379112509021162593056032288909799925690648426838030442792030925353976661685841146688052820162661854010789970572247478211107038401480507523800312397123252614048013048169291896885554930014798783022919076899516399999177495188956092662348691397885261182193642181070325194441960885894272899007541838675993952599 - 27061416205174557851164663569483174993952407612483210256011177100492899618491962823007018543854257043771424663167830282895605066144484755460089680604301689841215269429059459535766878881344164628446500530067679682423293449952606596260142185699937229369212281661985231021256905403366173170400417507285256255860 + 49611367422194513115035150551734582520298521030077584370031183308653547976181791903740898913282571064446151144695149690322615718047801521092351604722221930389131307470356870858984258278626056207259568815084343283366925379672888098203272194930480415832783713459616219587931803154543020247113475776647418904660 - 41496101146536460662020232103304771724843495787840441341704692505105288113665125981832903487117319515424032869070266076343052123038025577128547714509466689175221188663664778267965304020385776542982053477826516817650555997297202201338320229666602318818340546582308739956027282603318113085298917991341336152799 + 14427827293697826012050549547046674337305691151270335221448483883755195743929542043825846906384766070768314838868040539901555873628061689667420916859257407366907320074947244588437402598383515830777938900506374100195384135210725911768449422024174630910120180570210160173013245132111525346404920416937139913864 - 51193637119412205508210566875230456496183715352624100694765638017592716778323146381499576933114724139649724776136512725027704470501509435084485114224894484560374789864610610187087775199847265622230925515408373070422668290697173022089927383193438003005903148203744831872106054242852213411775718421674643826191 + 47284313076338140186963738739866910389991227485287730520951752416201695765652481569471520915535814869666314109187363009626738751849369505980118433674304792579783274698164789941409311978830852557490847101589911690359628587664521412888948784370206299746069621084711945134550768047648117194274127238388669275172 - 64305495654483726859874770101309322517911403540330891511012158866108998791847779517667685171083923104156033065977815298835520411183497584924072208054726861329336807805320853530444408883186097103308967249246682067323274050889948928842065176787770940643129964265285928043917319162443354032183269425086066116063 + 33578643693463388201451875951380717322471596840367759756432827309185363277142360271574483679693053879046077745129784657105846393551892973524070289715943637225166713617767796796900776107202656395951416507728845729499206422659015411183611989491833273660702702407951815038361214928553799974003224570879945506102 - 76703384036906826094663420140411814830456381742605229081043108683511321942319230059308696493513711542775919611041261817267595674204560577160285204996014863526282218504036277835470214078730262191051074108593563530329793049516516926654980089643423009301075812967447589406521118290834829610816776662696162124326 + 43717504550171150070898941705287590813990496540275562859866136777311944458436401066747643908162852402922714000594691776047610632379306122590902640610169116768969755982978095677090687000905821027990875999630770773455183527579706922920480221772515155509967129528442462593713287066151203653509801038028516092620 - 78097836823172450640876247460407540407243455118478847469187271128615641171189533076868251588438536442365843078948596825683704990103610756431197127674703975205362607793450909710820551122271552545858682362459134711699596236216427137890774237950860482548340501356622894333743132950861381672836186604643890160873 + 11329645033823635036191417135906926100880494089768743288385497414542239490137803055809656642167922033556925262825276582546909891588206623734190643966026075978236454766642130392666946699045740071510165711635048026036004591207190131325093675514691443735831365532604233890375003961355250800873579577609126940934 - 58715954796904417763855145317435440203550950674641847187276240586860030034062722659355547709495126273895809874605038330822799962564900593068379270575253879785704047681836109832079769408109150961036307675204862765674752104542916917612011830244206670824565399254425776330925466864138636400440776077857830638039 + 84094659536270120714514162783062649765204184632202063200986282540281886669943526141889916924676192071925589040752615235004357121004327862706774701631249741275003573545300533953994443123773854534816171890573826613925870738263465868626134278087732190014901250927700762574936215855786709940594244588988032958096 - 14084632393394995727729046450590533611755422837677876337549971400377701082466873770147844799609172223861693425301739878027867288553125376108626057613936381027849404261778836370676975014723400820219724841750329485772515585162922662860130648749806865675110318426699292888394776320194956845795646512644953926866 + 85008710662408376288151083179476187586189794193938053837561519964447418973315115878550674183453656237691288799688194105338259157696744515547902873256968777627222705353935221851918380276896604073136718698255514996208907399614026223133141867394510725026630731286355697205194533915395231622389549111025538167955 - 72446059675696647399843513215256979560960189070898151776911068558998469542633605537309230072661851432024576323316442909016608058878222240844450188675403013327666273431136498790469238955632175219053000227618450645417663848633441692942535454649645535189976838957007823115623973345248041748501955816448654536402 + 39650208899468487799495998579454348045302945494116317802957821664711564865824036865177768231735470629885587926647881784161396245569156455407042514738760380304249198068551574660335102516817617380108567483681153544703554704999391367318785985173557633280009162940955721472492057025118539934390819221183168418727 - 76566729170022490241021754513230669189078116053211042370004954606120508801236724614603342520106444758985848206977165560027015825020908296496726649328767695957844401788533367139772288478150388072591411876493623875860282119639464537902455019492134795978931898766639045979323511022240632254098423727904892631650 + 12334498867857905855731993244124403708876903321632541368522463169082031168867080197575538734855601147300612474851324290367516004011131847742360910933323657271202343521560577077538939453295489300275413666432978349071158237807686537477938750592447432516825523318759497956272623957727729518325907550285932346116 - 9009052909199544225980576068238090929873892448091313902097593058012616562008940989676579755576182669460956013000937139065448660574276870128354676117335483725267203855759392769698562017521501059578049232767369893423663220939348374321552278722367125450382720762407307496144791959545197207389632429559834156985 + 61731128090795469506101548532366853170428655215806815220551458895296307914023730165237996563085309427424298387728722556496334445269723642976394984832481454742037925203684834462330581031442259269755218456754173840656592337406054617829471939749477661888128275055768080017163595320273508011053371318115234972242 - 1774939540725536921019022575694184787610520982280951612125957499144089080787808923427756822132357501481823085168481694012225953594463494542503499201984647503716293807420537766316118133309425632028145381252384343541605342599797891032063144459303898742983468450141406618775246234263816460980077362650818023478 + 7678619016424395522876570495716980278436252703914149692473874560680442665956587923119158913041391547990983072702248629226514006634960028836484338329967859744756981836826650418932373116277108781076204332467544917810515716480766943277150511187447808340003563360749587013399672304513761588502089942341100905245 - 15480653562852179501423058598146665760299637515532790208622304472543502890731377883590053155864290656434097068437363961015692934190308477028172658021577236291171799020005257201994858619990943066159641870334614697147198824516380845609920199483161823400627304949613093599943545920426293067521393721554315096158 + 50637614207312021864911076337909851790415495125717438505135218716141998855382978515183023349390698599989447399953239800961477841832052005934492609647472573475907635363570446700097657064230090567157660929901188153758576604345575436862473253998999098981168936113508796782211252093535942013900291139259399645173 - 30422955428270232987155738746644895455221290798575974671724788297973596550871541297450743625200740676528357688836862398790697278740719349371797940461813510589338739197094915187817845000550412436576075801577028235535573069444132142628930283501220350198053669237625964810287478846854789312163139601090407986326 + 84937771374118247761599687964743046453531297470212526078839850353927561184038347814153378941414408422637901382398486131334716222154437724858982003682338636242190147039256053518985603961094969712745568313911669566450894903343997214383715262907949117933412391616900609768111969956888109782616950058302831516148 - 64628672839718572266543762212527770716486415818380475461713372352378064555696922358928232439630301188314651995852725473412476420696982527019294085567197210447767739093473545167619054335740448658984817755293551973019478969679169456396875082759792881876568575918833801058011077422908643873960687693487635893856 + 3362196400382998285652979046232367387492279589183488966742228613709749149809680107601565289173763354345280776723900861290364727191871427601173587943769089379713975454112405293281003310516264522994461871498581450174161396412035154500997448293893080071621056618690588627780897205331396819920529304621605953705 - 98649693084739185929699398923137891690209110998603467565446799611652513536360198792848195234014670199669343445433337177834945737468163437257472702710339738587744437050284031528885410171497107464340918419508686360619064515979235724567451972254736876027198478444040919343688049117938758268572060786439594717069 + 48231800076940609456779932049037903973849775843117433091407976101742628548649155756237634508875599731627528296547023046025943728983389525410222878820881927501091117303899426326132585698639273495744698963786601773276811610056789071799741100942113365261472229777606687806345545605346447207874569827159923021104 - 31466526830911678435224975283999087266586199878177426851950208828149403109652014829924915851013705853639062044201630859522503125013671394692867843056684638150939145276840259592533729015129198468804248574829711361957311395640901505304790577592013182964124935348822026084163812452933644627615614533429253154785 + 608855531928775025384234836428654641555821660622656327575081509190808460367541116351030139389439192856162615187189791882964023385172973691429071573312107735331301333019523488716730902160520603699393884672917459574849031951621729005827412201137315804211147526555603614023081424420212913775174514450129285109 - 26902279830959333937266701031459796745852858724398582263997977322711208571459115759802027007163336362085033733389779441243613313809811383025108437161021898052351148466969546605610537393623377457489790502601052356855513484751889808781981181510827664530897206731910870368851760093315075939748322571328334364514 + 36614077167684274377987231988859719412290470866937444772762205166095935148946964749027729946772701561040710934639688281872242463394101172593476387760957770633041556984538316994512947399460952579218742333250175001420193537792841408508797765423558464231014841017690148565574075652355437587633586232912834416063 - 4152317802750847956311118839465832869626602986630319436655126992187832258587806032657648505311909899572824960994089730024827936229282109957133258331595841344679840409544595040903284310631494385659116660256505079218259504807945339303174977584943583774177463367872343149311808121581303027259261213579415353928 + 54529289478720383661945852393319267334121324635613040777875505437499544339364451294710441235066119782558568505191299191060378087220624079977695579109507947589691667775114441168083605195058532896670226702268986641396075694636720885418162542734523254242750035216210179978712140892260310940102188765682077643786 - 6695388100704283682990472604586974703942202600235929311550760568348283058737088590662155756515459023982385770618731763833180008739413435619468494696827466821544786996319906288958200260791805138236897258289924601823625700238781498165603355335245811401153597693845647758824097919054445908909445307969226074962 + 20422102433630209381922393640174261052951848216043702059761396098558207232637204165980002381068519348538959460572529718179072091746413380268805706227381645028364122878585981174166197751168855667560045835662449408958567037001164984221084338429839972708196961055131504516448521415878884520645795899994817465125 - 66895073805911348865557875921159090719735670404584029568919806112834360175705439612073313109050534919798063502891065509044943097759026118281840433975758904634981783577810622272603230213963376514608618170159458399674342314036147052611402548123955788291965796229114045340289809255902617685809043544929211306356 + 25867226027745491942518000969114126473297783028469164231253430612060609933735982501706044805484497921170591325375394162409114891735276143406529779049525105359745625023747475540070644642973325531762201186351390164212828111705958933687897101173574840014538271661538642786179952611967080606031954000209683510085 - 4632462790711982230784786120742487192265641009198006243324014429999807335138584710284003295503426249028109360867464375257059117065589079872074949246162106912786365472684395124795143077713172397854135676008112025209409149299142658425946970109758016528467478027976421723637596626636784354621063874682621554250 + 93711531879359238996754137291652516297866121614102615981877057317358543783401507711550142243676790922114496297335807723383675768425848361661790370602492009133409517703112633393144202892312666027813616871223777310661889432293211979725228227786803749598647510580195826529000474939792591892514638464352372754415 - 16602495742839932368489652944833000052542511809202414342314807983617036438383225721391915316780136815321830636568869702475169515864887351766411390361225274142397114094250055638320694673575409824219454926923334707808210273273214955318880844107932799879889633565081792712433532355341259576310554733985208976660 + 25928674885095554021334946009090187855066067266646716761684328104257282534553280965787420652493465174504091571111884222378394760561607188504219539331190027472370121556974740214104748924363072661954374110136382573469241647767933585303394649755785369107436367925951744947808896720813765352552047908712219220845 - 10560642975543749841545340793270110524626354960849669115427118074346496080141607084344551909525970564510379854885304286275108625539578327383128753782468646824189232722871146861494864885752488862045694871249515375245048337230828577552409799394288311279753322389356755905119967869640647997971945111930171146588 + 7351219291781695275377254730717438543073608124385197408974728719593805380509973265149701125769616331695793470809091486827057280739858423859591484459129609970287846262886708229758377964786890095373571788198097083652837813094691067220691916252693944357355799066845929872605545151707925230577594378812058048971 - 78667590951702194564258034687653439731662840154097106393455831437951247029614663256754230250060911776462025588001503750736352394890682208433857077728339512444904474629216693446703520817870034876616406915320654414689575075776469482870793203925194543575788025160647660958471934069094582969677387444958235025830 + 28091555217973120543083405874354123755224787199265411239030278554729474843741012421230458858711667261022755967836048178109790350764957576696046398305759635153692186249455291106618639248800186721883435395633435072809935355349170834017569152744171127798734395361051465509944357502866888956457052995610239976841 - 20118251340461619885222444466374973776209596521186094874312801989226580916349245110809209313126545142673793891254724924846904625291112563071847398630613967286955604285358607578858044895780077672512233291107964423930729384453942418981335886802360323183024464760010127143341364095681752113756557383729469087689 + 54880481273297261299112162048425286495488456784534047822559567158554467962556375951242512777523300243960322592851735091548550865408721755218950381139173039406081409324427801204262564580854141263177516910715529260144997439240891850082527301038021475464839077365410355916515876734635990416159254307270117056118 - 27921070956045012609891670046839150173982621964133991807460771228904896446891926272211803740412794485295588142551748510949505983320979829993411045874457416707508249524649881314199414261572753176755881933430957527933136271966722440196136084530029994889870481659964508197119768484803313661710270521649140970171 + 12623747774272297988048862859947192831864904421232045965653526762059055013416567465636235989569703638316294500870993282059835168532409834341549339478072177926981455904733261376011836665447028541794772377896115199018335137428918819526362644244358654358101925177734010364889262618153466382175880456873475527766 - 74418531814195716192519467366786813343957833659162887786769941974026853403901616881690973008587161384029226552387195253806314790842582508330917666639086832810971308749811575186021210718837456203414762581366045147170923758238154239721862201436356450175217827445857212461250048809133445363806625341653969594897 + 58285372173089385828731565531136557388231243956972528446382570297300799107908450369491221336807535549503216028245718341060229623945751734964629570615233138548291722957431487544530144842430502935462574362878387157382678690603796164210842232517625305405199139287871585882148105539142003394476270415537601570015 - 82010711221548702280724479300622664806090279225391092233929595561638795049609590552120339077026560210572895519058427970042992855258153273909489983914088304671769543328331314239858172781182716671308882935524880753501625346937428968729429151146901682185837608982352194470803828884409044438579870646838583297941 + 2793474086579512147338868399056250510508600162483713322849667013202241337292592787492280026217429976496274295861421655288889936708734739851382887686517099527540965234223297294637108014233283676850057068310269695566054297861238819244833996522521160323470052931703762692386197461153382001099672697364258905714 - 34541823724286735582744866325885656588330630485556894711519076846302838071796580807452615961864303972446927913898591412552149951244792981631878545769877869147046930997956522225110825077238428010798555538150700068930843896796629837165168161386549927382100488616125332819910650230318846126645996790419417121054 + 25043442414631708709072498580244899895990691029085559207724617422467460232479131926243073159462616039625839034625781992485611071930008950911658107752249964223890562469152074290855127038088739125143369972229658892046476951235265251607577165358890317477491589503611562448397009513235426275145557684046291854440 - 3107964704808635465505830654543958394343659185920954790235015769332023736771182030041285724891988454288745604340371462405073106390953004101682119003791113670961914507527845737474266641448009148879275692218378165936902039912829113443932757432110679085147203885704514895215096733619442439047544181208874309384 + 19584217713060981331406395571426810687748304261431561100113118082296164472498354549544570866887874313270649461433500270165175976323698165563356060202286472311199068697041407427822861052033870954026459948158577757247702195979616262217351615733772692898319256287118272329458076255572949384860623462279991138701 - 68029256702527626022245251737834307841962326089909460244320094381254810840672757911275856083344861120541714881204595391993329815401469275533512413368231789056240366103705228273784218239494492940849973002238378922700234102173191385985951947041213791253609561693368023984184541013719339718333498842808894219347 + 39974259118894135765762117115727559908247998649709159595444906012373279562746759098013744276102690756994887109914534496154096533190788485652326763216034598262652245931564836978937408954365828322619020379054995293748058674602749366268227529365572439942632291538357154165663759177647329466588252237935614736126 - 86364997318341551904389686998662597608677954160239710680508251083969769927392592656265446843809568226281843702291037630326152097805433075975037377493838762926780383543232478955853009119763220114556817571304809816396585178549760828503490232457407535721735593937415802051551253435443611548623960884483325721361 + 71150532035213123432933145572973883781684837603873233112967023467506994288333691896795043280855063079009740463732024342521884073922359390747395156216871361621332453063657440824940482149731735545385830993816029056769888049408012780779830568270068350260829817169393607799607177403866345501597884239935532949403 - 57182798837545084504089707703894927135085116067103636145160448224506203093591944448134374293379501671132182172432939618740188659688572340384884787613818274346877211487802689604615373740123877735410737223431560011160148371601137121193589366722636076257478497209936920246567479675627235401068210529765996229575 + 58205806102637099648211360758768845130943199160410180462161558827901973475472243245355447186827285399910397672036619079616412478152016583547414238000975120513835510314270024907063511505676510137198019255851098831804996626463189276628206991329465262170949980597396788237503563374458749507010716511362408269123 - 80944517745924930131523463007365192881834467985616072646360651417945586839279131679312749090157253947373064093369022229696103041406599649601592386020911131757810122273233627851168883609600539283493139479467161606495494042573710972813010118133243668707316500270220269960986727638127651442746080256130932042161 + 83293436211278972468413448884911057668391317122755922984929904642122162605126986293073947386351130316103211651380555306828767141315625136245168207849988233303751564013934977162694231367336045080080220192646975449393809043478138665143235462820267479851309586827034278693772737765269652152985132925137744381798 - 85451403649673835546574006079892805560936759684418855937747755095112731214008242187745539190768891648780175975651951059737766660011358944711787525968644109903977771763914544994332644077861324128926191037663157053203025336385449389575530355930914761910179823317165103880119126854638185419594849084358799622418 + 73385658521192428420806881391958093350199301087951524332639127683214850942776389416801157479228483811476642261118685611907859409560885028803113683753195009277348171963483119291066903326400469300567773579061151603192777139033545195158690969317703556077056296103139126237953362626357362364124993005304599049052 - 18545344016935007453996646193135160703996120625889972113080162708366310275453151032498048784362026551449359383584405661050089170322071359877906465350357494820375649825810097293520940213984666680947502159462274185864748300338093062841863579950472110084792943708596430246309094078480412424634730950883202509535 + 16293654811276874943196317017121560054439582028122475424649541923694172623114639491646150619074012066070060058875798752685794812109630558439077488997950348701603844149173184216296119695987484987170864908385915608216255270703634261091479578430918887587684731728411799027729843024634928584983064549612180138564 - 4663681063180504106884864505191920258516381342801861802444882448443927506937014691209312872328826416354538851722738374666053378941603940930024993726315117031370948947090346006580122884644999268857863472324992859038031265497738648359227132250543283895132087956977224999182728691998580434274207948847328107994 + 13712351587272165549650304324183635422330453959109790871348512734893027032533089334269170810624964251284711262290899338183812135946745656763106176423218179323317125188919774774505702881403808016316072022407253803243513802845590733146408799585456006435316244956261920992218396259343692563631002114193547242885 - 54082923186473742009431709375405542648219053373362424824574244851116948436248876110799239103489984983689140793075794539368955991843032428956067191922852318539587464453282945797533918458903430562249697241710696401214384921595781805491477842789981805622123828878510622754769676845371712697529252225427910714112 + 87710457103913285211859077553862588521478602623563002580115248863301202258987113464356448309852561940406258649278813207280672934473445166625045126240587026382345469494077961874077130135415604411747988195064062705654623316792491365098797559869738394709111176691672733910289166640443388404587291203751526614743 - 80857594510307481235701151291456420700681424262594794042656513313630688611325519121212860956869628977416845447487565978903727099415984482644419752697339709442722169488459484429558431769237220950662651703264954011160495631972968255900608639483360796703016337018084594596538826048149884341783136385461200400158 + 57026957397314458755222668752419689505096219213213088736138678415179577445549110685499901210679821484025034388506101714170054722719148288510999909481553827772167799956598588396133597826757182665985678260091631304311928962793564164329416305400253500794787371017167465225628752350743939688678229959228630998695 - 33798330171491975254416137634001971924946946746270551410808575955838269541999348757658876455940044662576197444160072246873784606203227312031765179591439454050887912756450772236039523862037197892548226401535294100917147049962083370199504803059624306477075624181271903686749947790661514669365851679169407606565 + 73762524595569446523335219850147045455517750243996633441280551006500759977560780772555578616640173261952416416818508769604844170596235756459344284561152149610007256555079255729695410997260220039316572049047892151298268925129954620556100527771938309403054205188253907263210361377432549912954687396199645617216 - 14686639192487428099192448207930216250601682503642420496130039601678525194963590484793093243217835934702098016354151391670188562155220893590645217304834162832198287881577361055024488678486266199661403232511523679944461191750119660077661402366060084957301199612495364957294912778105784406743321935059768499060 + 64610192676075003973956039976533673369230387126918038033020143531277149828682479817708887864716759906708777639488638091587416601287165231950616905011822254712571422487957050878977743567473126055331069265011941535225005056067138502952773561459445031069452423281766625285217588670304647379871782866985838983132 - 66514608428602322090451654523496009568506030299464552989805162104214828367795157952949182561819063774610426618331767416756034514368987476890013020556086417927597316651872729615528983902409777314346111267685176549882386525420487078569672415521356683479339630916927470467655422117734362948092064485760347795281 + 55078620932227795696962027345881213567813699221678475884760641970149912432203740483792467961606582648601812524274278371252623013363609218946130596944444997815280941851358851700704714334351557925428431464879861093136485256997307728419255232200035449956298813073246943347315600296143421781333835754682454103508 - 89542644403031739833311274491085117507477410964353416585710288387551263511047229485173084873443002598879600565688202447578098822331404445267874444275998184108110200472054617471893553722694959768165352975485375071329018378698321526177609052628938234594128441305926629895454556851565171292514396178243677275629 + 36921906937668500603235585985199172360855378438757270424434902281815500343410823830479224007687840101612963545644463958674147536123155623669758407070258717523374426904915725484432847405669458065079359814647044269269007932836364445788131539654429759785330075899059635150485001714587474214618895566773470830164 - 54774719852816208705903769762952839148789480160830234604960453332640488763625705248827416139586753086755193104852931698624680188388581776955951238563086807918686467591150217173635230361313352117717260130945592396919984409230485635215539960298733110528390662287406265677107604205691056984846033273563149182 + 24877229943937846294872430727348474549730078176304755205898136108432666843906716836014192706811904225914800794559231174896400827726874225878000454819888785034192178271307046851729718310846657211828531836371342198409866560110866169173411171142073494973308211634745029568685127672275995920193579493230927715193 - 63770772733041372642300390384001255320693700525870139587511888082458302457640819047950444897953287056573825253848086821459983798956402157279294516582341237357873031312415049100046244057874232476710379379185342257390303567473612549957019692567081585949474450962835692183416035281568639737977035813488033582083 + 63979630919119240247770955251199770511808452035231803389370599935965324727540529587109238376931891127821354686300647831857640932625414159063745345519188937208849792662606164475002651496220296438782174091870411262759663881509920125536638846908995267705444255949109145739102458234982534797636376783934522376631 - 45565617396906769214842800591834247753672315052520690598961090384299450530844487267344605282163698584133740829751836331268522882803281421138234043795065456215023831929873144334340897219982982479175028322994939282024161701996903269417279184154466492775593578799135570934751850878563091416548668457875117632302 + 78822831504270398659680716657376287525115704309254809241421129527581812243248286600016643887097166101027154750899182712529034735104401850053710831517571898435225523567075804622680523214541927881889590837942994539892002787765619106709370583568165007530419212764660845624371927251934119730565399242794308771931 - 9596332714662800582224755186607211485547757345171691250385659139593200165555317289979902034144570618721297788242709384760739571449560897047796390685749109228884590455689478806402443719216667305435337948594839487500800608355453637903302615944264842183058465016685969954044748525049713606976579496173786901496 + 8327208084711808194401714545674140346481973658251888480980508994219884438990064504070630308556368601676637831442025482723980265184905774335456367479193033780662461762057848260780626701183136991195034158752424142272929366073627068785959132207309550801799549563076060371582859306788609270102739202312233769058 - 74712852960019448524463358785826346255054519784283775367192531934987425072162300608850195008126189671982150438672426429540541869685430311799723982714441935907058248022981682131775843089563971867527314402647519626754698673977126240597376385981019906654669929096056287461790650475146567779111391803699185967900 + 1512322558006616094630738237653691012346046560473278346639658151949567846575333269319454345378696180348329073628545509653029109715173462254970350587974769274815411871787656512530454705856073795574813977022297349425992660471387991587045383343943944356254022709142229882469825067555784034886816915272173073406 - 58052035124018503862935235474490649583620119146316097641603400854459561281117226009501747950116812630523077592959463683058393175848905777352241689524384367717237927960207018066827259740716199101668769893845682419294660367860310428575801080729591603494595197228474117038598616018586418895830148817982299530624 + 50390378233013981925554579560095670473194522867344987862207966187528576945760576843659014467972205174131239896735791669354761659296236206804543403667249338359692267440919711250229399471490414675223193181209225451761557818764165234631311282979976565493489137924495725612507359770090570891050427510180354138589 - 69560224502879072973677252760804934438718015315069715248287011266418301386859647278443738780872341646021334281459927208959308700150332796581761630702797897646833268472921168199569188314622017793181396082773970645049149339909375550856810171220317983927710765937921042033479576406011137164163557443329499763110 + 76177394035309426196928550251683329371891018793472493023902783425161452185868256823057697729706037359356273575547086380910316181103628401582220422523578073800275337740998493380683792349124045477788527231304551271313714744937255190688292724719629073187368287023067507201970196465236925993594840175793118392332 - 40174039820488266241661416762096559613595486524245527461732376899112791783032984673688418304997240332159438296927540821207455224000356524560321033987610637463063428593732002594356010763428789695789790719910571939672592193764987655498350790259267588656962203306696789034720009872563021893381729064867985222189 + 54747077369245311090156313792678588403012768849946102674391402334357217662369526220430046392634164985079833666935051604464298230835047421936836502608560964063884081837868780943380242944231037282922666068389313595296053565572254152166681373700413984238143810234711762540153723819288950170059934964165087585273 - 22238193144461554223885215079516991015588965893159559161872661912230351893289403355858620078002034911265448285966525681385395767641339187900998066073834524182978836421241094577420182848021375000243343048934769045798700159362086332927193977177512441637062839102384262544854227804407161152437101872782302862299 + 79945258775587781653933366194143248899083723499163738672124579546209706975400838016593094200219096799321178268351729592902635326993318307725392995522921136052590176192454329322379435755418145640941432820718352490426121052570805341615978830412370981530976292284001316589519870825105298399834623044417859344731 - 57291204879903394849034414463923508953763192632806294707890184639772439438629478773378376638030873087131657172186181764088635916244994106407571109945195144124530219791742914027857526233909879167996095357426790665083720439016496978496254317991985958793247432229231836854888629322014113317199769373859859702385 + 39929403834055318302630471825410619417951193966121806134964067257074422888938804205945449114783496668141609542668315419391039947123472991544791327003996382295207489248889801211647602199385016178031952319728239476111074789790806329129577640851520903374260412845710414124806117319690627755812919871228946246264 - 88532019100171791057813170224898586002579190518992170126873152876799061247680430574721351781087417136921399552603067312245216324773825332100277596559591985063833540578276064560909509268823691045133141111227842389757855801767468320578136572713834172701486185750816804879280107285264829862646737934814637493839 + 48258518829827837402604877865322082108008941243361478250159167621948474171359625393772109870155901486652479998453581945837831979706225975842299909786969490280935175956016031889009346386429411408083327969844058581155496756181721367461139525699825819805861947020456265696771744106242310669693774945754324349273 - 55542321846178534459266717301911148194310209413460343910936073613409756417908231682156990264758322960209338316702139944381755370065447021622065723295444048714230412337237377113407880826096740937626141030508953287631836120510824305397587931200999901985479429428504792889084593620201443190806554308182242931099 + 35593626715444011430448135321643811927315111126668403236639207881312676447240856250384989278405002369067166267298661777256906661136175201712491142412582727033441918565145391009591076071807099381999643495815144545771341054298728589498057978562198345573849858861681406774083951653429343539311978883253616563619 - 57958653199077762832941409371149017367612997137108689676020322295061718744631846566133413700959435716314214953509784337308321239901668802942837072915555286293995173741779385661363155697774602714813095682731727788355924806132030690436625572935668957118947284809041567605894826635458652722826501918778670481971 + 15887652775124497158081163053095269646252093294052417876198914827143474965688025078951531882487720030325037039592300126278990304575860426345439354245568838161658555432776989851784884527023260331503504323004776585965167474073278529413252238926515440035272971288786282986682761470315527642943035939562059532045 - 67372862154322853792963473551229570497327405874014497900683187293703147147414721535302266456068162281665594562510425686112533642048591345335888237256969074717306541387781773507290968394425971762796996435829490544554983591180053037214234020550616749543943327616549902392971150404274604622444720795597374433235 + 29871083690169393424116725908213132510972870352847685386477307892749800692645781585355476702899218270023212277783951642429782933380551611271087267473752398580806695014436463593959344947508816692990093006781110008434788480866800241482640869497752325117882320792693426462275654858502162643972665520249577863522 - 66627814648976742478236301227932925190651685630385288947789473942769525617866865883116960937377633290486410225320774695894912827108422673873296595865473349439286902448941806890746910722374804613996317688886969223019129664952142835852341677589197430819313564762631032720178800538478817895747833669499909306621 + 4062802923764775531325388778403679080955981480414752887495555563545369593803342029078013485438074923712654983516356468779556489523104695597642995973210418661906076827341776382939620559091747399563509309885686020858538269733368900945537462601139311097148555618027116869394437485982599429143275072096280168869 - 94799220990048815068121898000346762114079937227746397355156840190025015053134490703996543312371653086621185772647131972340273782378395200006954268101928174164309154884458514164995285912933406199920508879014504345528399762336212441993721162446694415215828831411502928109702695289208576307656381118695013928991 + 45119582759247221535881450985263971607970236163533941529723006305281921591519426001035363713173484374927812686204373484349722705405661167698683115018143969073632205306138412497294841596129503991682900521808874962148590586269472323981801849507957214808918189207351337344633212804268028977837490354078541174282 - 22897137734445407749472248367034992415639906534819390559446279022568864511353205838203031661611996625861663433547437315325148478983476202618249270447168291099122478998095152600146686759933448352971457517681874043208280401282337686951109242181217096888755311124187727206442210198891549532314413631195071737351 + 39056792983439344461320966444634230259414579193706857877048417867642272394339376339854118279605196631047644198979933092428202338466736678399406916396523676354980550235384426830536349564427358887003717756521741242918291711912919671877426947114646359518437500927805177546177974177018306223683486030144252288290 - 58903615451467800732184983672692530639676629536999228704034952763104019253363077129123434725754681981080841465631029571192060296749737577228950570505815669340660909909035528990989306252226551918450511243129629942365519236225792707149919797882327924707820880234438317802134848235687870188000611601277518282987 + 18337308594678289573904583297046152490882376471596199372563400572351629889572888168947785845122208852590997701633052496080665608854662579715735934380224777260338977259614061290188615107764842877490625792968147074823872714237656961384022083997905376810004929565006952984283789578533863107142736403026973528595 - 63068231203028396078152897599911024296000929884842348456453400877603447053112463180906216146004638946635724827481907393541685781673160237216972522807905174080760608293010919721276523553538913081677591754957879632886276747541848305101206884392731391750656763909290081014843257072867953807821373971049977828433 + 26108820330427729216438981619289051533748938939956393533904422218447040092359194341832668424414216632415520092552797480885431012978341913992827653114920791436826955808750616210240708230361656769987888477995760161201317597443834320753037483462896135362974763052676384905814280012167483954786748569742604054388 - 62662269884850057301867485385113903569787766224496001894437450505678430420012745587704334584938853752384150687988893572539854164106478675822525798934853520144066594555888095469776953192962456819128408197870674894431662975776851572721463984763094555628755136652481168165953331883749513213160795661586691171863 + 59132888662549167822846536060425845234230552550155994522455668512388896441654648006854205345141435991740321273496114692655628652911382854775774276866762174336864583376567572607495173316055985167380779865421103334460333660597605472801290209484181251054360949298443844799813242596817919853610324500400539394215 - 58750037441787625874873065375032078795594978860087425144582129944468305436755547688840429621222508230122924224674861817586551543174641317520060817739733921925343277120740982266222650950357174197926630798960525783328625109065845772874571010553713254432005609155380502298364760954543637491112636857435374024681 + 4971666850855203155974604294491411764887782468733015212551406014474500094383307250366731696747872260396541003362301837286020135258675348667296693790619847458215445258694157450179346204620799788344715739341205894789727953942639865979790062670159420274072009996666754615342458679912653786538584694796387654240 - 94951534765728412167983167028291196988218341650020604600834718189982332584944098290335484331125229221550397059967619273790769978752710247173237479908813374261093009927422976947745931357293122479210322277811143466212852247646525511244151811522085288726328885392629121566602957958981855842907950939281349271598 + 94324076177072481969652518369668159657982742172806331111432050300051955140017512806040360562988220534224119664075077083987779856648608856499490693654036425200448957440479121905990380598198495506579555125492213213716045632644769423928912081461387299258894683826334102111879626570240869946688923722619157180020 - 34597112100548717276838540365874133973557003851812866713182470475434927176462254344822470665831853451777580990642117627351530714860936976713457150331117617892282942230457706693923312502963108319250413775286964167239183819805021751307752329951674917705102167416655632925019315405230442627203219381406859472586 + 29411574348553478136045815278276621865979309541145330180197840647827582077103266316010463805817217979049450227499876096896894715083725805811697389024440589275070739579132744058752866832649684559982915517460925241466790441068526727552232892186864735544825714529616404486399363496580747572559130992475811358097 - 37716720235309558468378360565235275411961666887852394970179285908963024478461900935095645002511304043342032735226235320513492658933077382549713687260468055193561621404439995133633881044909876749182285067599822743572725064883621302370272993264835809783180158709655029425110169793200286680693797315054587521051 + 88897249590967184163635575721649457482251785663657788197144755747262831484461979619184583406011756518436014351233248739449342573648632258683044679088082539010804495675470654569653395778283208667464739801529206123441611474812075537253796984947711370792890529012933234332779163971544620976215480824370129598039 - 69613652813804540500788423451284854656121278556486184865552636655904533011477611936293465364065853656165607153794541165565467043822122115656311870108337204583340064259698929501154069590480988633196187114538052186791495179800603817423192060765275983875103420104866007338403249986796550065559685804789669302318 + 94279701573849193192027494165272149066727560732692513057240312265194348626903488477422569258668753799264342175659436897027993020803636869277000179861838411562799845339821028457093592461456449611626395387548986190632824397441147947380341864625144075414319210338864360045034203873839812628297666349794403479433 - 71404598293424029469315707580734447740142698895015100524431493895602702815046324662150041353619502829178676067782230393843244044017401999000382716028015799154299002778474830117192521161932700837189371453143303048141114288163301258271128953711616742462655232533696411545126110327021808232220162023784667414683 + 79336229268207361774030158611218418889800821818466879157651219138720606745840383350790655023785909803461851786283865062992168516485141272593213973514147847338129196274828182122840971764552102111728349053259289626389888208537799788324494316928074769715108791145444429691861125605446235854450549599089052131003 - 94611177637998903855604517460610377863003496021089450384940696061084077321974727622688369385806369671855407986538719271609613548093076788002669841361892615300667878467711107643568972917191861533045269257445181625371691608770999210014730425392693500119012762935073147410415279286875429611652947309974410914496 + 46494132397974661446818519423675095984403535991625947472469202355428605598340202457267446034567202717357645182492356388335313374516821501162326782438054865953154735005222749442830254864762417935912388823354427765053546991250736704019134528587823702146591401184211512522918655757132514360988825062649766177993 - 90285638874958635424281838062213487741869801624999677434899699274891052351368899309043890190083000404228480832230174621607157443714690055054252795255810115059945340408212005023229070359486119777121887701657901158103811162363681346470270851349276987592158462633025036145427072795560427357375950578405452307201 + 50996518427990172355246486225234603898439090870375938980556092842475849797143469714398891321778405512191230675723459319153380059467997409639812758260652381480259318437308985327897517939554518420198213890440664840385488374540766416004852276679114793632475455591898217524663013243956503809612285336717289531276 - 44592521789962888241551145630608625226721398990074988857528432630911001297742967009946063133866258432548347092603666111299114582898883576410960751668961505469912290795911990162743492321790405426589751603588568351167129623090997648858442336965691908965849284196279918624945638575462140434083949289669337208010 + 20820574846074334589920467350591159584026734439190756078969488251687796826742016667849355497873360903183319276348406821790104368204955775067550611156028864421863044671690432516273099191051618371825882501919113350702508084661381905205793855409656702136675829648535334135189281722157302569295966290246967644313 - 71916670020718519350483595433246936141914211952382960315885840682506399847968046677900346530621194004982193344043399388348111741190208268112225797461991891451265435363171384458452456539888490835579469526762254510431133342077473905133818155507407239742506027534193932268105208649885138921143381040359167034812 + 52989328005064142085492198397741959515809979118248481341846693703076236265697766463157785766030400176477300046603350907605287077211295878086686932127251801271564117217596077749609227530132907526090852578572669291814024941144306868222981172415061287327265147359002235606422015659054745600157069276866518297892 - 74276826024590434008698300236292527518806629898706408021079553427423148129468565734841178409812153828690534154361549521675756284768044762692538885367496712256501648313714137913570019457801452067919026194284171589553325372959885934722747706016101106116509420051990871439715038971117981607005871908867894848525 + 75692775287065700164691214477476224568278755674554518245620519182762474833326425554452045997269275581090161655029887415997629278204722227384682253421934119990527130127522572337006848196877209508021106299968339835603596184940520826257462791960444701410800121415109183445033851358539856823997012997858029867312 - 760524639631041032446814839305280660867633723794810690441961422191591478277841638921100819138379649879555554479487988727839537201990898722040379834753657678554226561774952656476436165147574544300631126110484461902134047894104792769246989991360994561650950949047991480466111032004823126235656858355825800401 + 13082476712404788628027537871386359842923603202358314890418133809262995070865285504649115228332333313176405851018835360763896216861526707296881614876508634277203526806985240319927802137194971969737477349094751256442268615721791304478865329184327600011572870325449862553408796055583522910702036225555857290716 - 80108808345944518283346139725165777187941435354930097688996375916364999627999860768836255636567004069412269639883284048826403275507666190719118473225875727421815669849696885041732356783163473551420187709097072332427829829617503030265303077874703072608936512639581032686376211472453705790778628737659682396390 + 53314293972268672245235291771742420516745513221355945460453973108585666125477435407911885320764518756733549396192237054458828189554960691190677586267354991819850512768280434451719610458806748167512907737142318979886886878844134995143925877784047130057808502034382060884404271860354663478601838781443982721365 - 22489112433450311392800706685968040964328058656686522693038182290349535878806145696945127663756034080422764643456987457856275776499342191145191640364141155324275318548409046551171735456079597099574277364869772983323619643052598349301379458843555539353708282424630848602064566510848526158779277039183931667113 + 39504276641425429229533530240156722057992973888293832575665341254913598965755544023083937450877956847481285759153299943955233561392841203448359438011911665577443660969332004324541894578102892372415727828289686928902455581067137131876769872496818094568619049023014985398189922507682882996495388329367257829943 - 7989933440537538438958029662676494232213740450623423665245161262863365045899917148646444401338830373150113834467183480271787462325600312606915027646079176790228157682103854995188630118236646066272299616059406549338259959914415710562045638024997348333224422707345695418463111012946551745896257465813848531083 + 68062045051015418821022135867449906730298744165156545565792130277693884405436729114920271824669908384992100265856283967000403329945013632174121202074605404946687566966061067998535948748345802908419647212003090663614848472016424448466900711049287844151848982183696172202209585241106757936212223591741348554488 - 17695176056534156547399403645709039875803216915321397152669909029687878247515231672694397712578289974859775839380484085598802596426119258876329385597147069426737723319516574457150035096158774390185692978300588560081123088139584975068022680717029493580632556083431760253207604018746660078538564891961784398758 + 16718547052971251484596869406871013026761856266159119569773756015544624757850774111409100706451079122611699067270434838165882101961119178770036635856108384481041826950013821155075917408279006448878838299880549377459812526722926974858655978080300152467836427356193517087285949590613198516643462073052310858221 - 91152504832743563749038896096752292951937126330155138059795481796268316556747269190200830539908549220075726864912090068068600808536019990780164194795807624760161512481532190283167529942829171530680216744748284844872641835636759143497925265535412653480274907911581321445042820000322957709501098039884983206789 + 77764028990247414600484134585349013301436556383210763836573497861942369328992126173261540854045538271531461136267654092952806276469050450741045804946531430918123380024606497589117069024162005722165826396993569104246121381376356626941425391535717439883445091561539568943047305297478336767415280826491434643927 - 81260550396239802135738785240387289198970482427080338348011165495359589101214148180431334622598807207692799110195633461682044193464803735353593222168862854582097490071011965934769243910751253539698959925997155702202381045056459417912771987947205591084489817020906193965503171077274436873109599743425165629654 + 23263969253626685642971327707426230425289854978912742333045583784576622708966226295748175260203154460499049483732578117444570159291689972589252466831842081479369772383292963775252119283493260747757470372679461807769700043564382077882358028624197468191907091248172331496104914673385873794474909066671167044845 - 4775062458031080255330182361476654335473027744728651128893821375676659892878762220775789206784425203503816007664727320622252575537245394480025950007494382417891435502367764757222726083265388316627023362897620754468251234989253561611258913400257736430465900226621127396374384420243078704676991582212726626459 + 59852320347157531352812935064330231646991525454242780738552451580037491849904083925141381629918288442316681862030645581715868880200945878950104556941323792717181630919251507939858052689172487878185792047807294798255260593146891522840981913441297723653540293191140161968967278007407641161370773412317024585346 - 71776557073162649308637429777461876974897369609466406285703381293133136098848271541957727611299386183320446872031232155974372817562448373601601052375018225743710846772845068306845171664726017910507044410789763482989031162040410324129226190889329423354750322629266954570833158851603609729144454994497294813812 + 38552706244848953082429203559406081207351121078163719740871781194334025804244988370142259703454029577689350458420663326563145973243461950960565626318752482108113559581137050871782028095328366228242150530329184081021016360555200919284164629917449480318871772826386337982067520211635726841707492366525715060153 - 10227709964011929550141987655324387339172096734810208162698533098772161884509048214668639384975999926161864293018648860200290341676155023451370126893991790126125923888855105591620883342440699426149888806461959927586188230834917275856875193817301992443480596380805284906718116399435993709169271538487215426427 + 18724074890380774162403471459387848963113839771936182519314759486528069772328039249321030982811104450558473427900476275225688307639792826690413900226825585480497309557662247760115740398903990543054555845165853152663616061199432507473250029783735160144879514732583517447851924767894421317129968267919937789320 - 40111237064732387190650443998548961870158960232122741176488672559066209375454572156148864847621527129824139019722843830128408198224681392529633628443111182400503275143707259307072074904435978386440085578601009429140562926121481253762878391503618843908899171739796953606620842236969787585835277760378137609538 + 85048716219427684763363948985444376366598238518958469159790696036756475437148417735701881497081832781837317652052085078016835191254369222189812140829878576029261777716185676160444338088047576065264548393204539011470810625514769268137591344470866921257616380646914611337071565862726457147782849838500394723682 - 26039972901685398817433743756436335110049133304472975122184009319052789022614299854905249296226981310837212814928628642449070005752930251095785032735229752272762889709086746256031616863525046057255539365712549315467904777536761966486537927139379125601105807774706603869127645780817766383902680999286205669516 + 30943365360874058101867086052412157973584122290585468474829759765278438619064909533533583796663149526091706586414686383077184716582491068322587127502548211552927592003909142082398925016575525290653355455547112448603411296442367377081758781485714475561337189574317370435659926161374346439602823273204885099471 - 68717889270251120608403303565064389375296583824265071421065745242573064473692584316812215659015288767607868007901411327939424067319540187651688647448339584394645895041809600294786462901716897260901505382187005261835923833221770020047318334189874864853859976374230861283456276368610989194233634282844716716506 + 72824902198138457586902574440972420737951596813428263657700853327894022751907428212388002801488341081394923049807626791609408295105734873330856904291654985363634096933636184051288867343597298472040844084843256620051109871232359459031064535583564261686766728727043513574375927775754152908887852544750989246378 - 78571308731262644234978476406387393931050398689193764743802701302566220291833943360867896403835962403375808757655207417802046572532514242291031941205325475011214100299690976913062861011579161697343923991313193683206731374658232872916411066165897765291636956709314372738004471998524088559552382917961062466405 + 73815444194523933011714359787601408453194760795435125687454114452002563393220863244433671443441220498772943752722182475960032158312283214347292805011888377012142510183352227456686442799615124817802192114790208526734167556165613224146723504576993601203993422032477589431166274605748751463726967688061361684078 - 47910273827183140017431535096479202450182729548334622519657952468081769435740429706018514167732043628977488944884371103792703563786024637369909960252475349741746897110371560083985554758420565336771610880618829502488640763962007527816513683469206328720623409040760749321045414677985768627845388328183769678256 + 55705967628614834283401078864857397975856569638899014433334748547633634441947956064502006830230746157980777541828037172499217715372450576770644568397639837067864638118892029589641358600616949470267618048779776505505057596292458062696284376556933729778611677858432004682194406941206234497010217810565057719883 - 48053916089303838741136694432244730649272505026685761188358364606032153930863145893953456390016177432186046052446452135717313353424987991433765294920606840924852590927587427179837261440161650367236652724910905845195057488319683278744468190002087521156204993182579452707700641268455573950405871942377820805585 + 48708061153449753283430800640894386225454047371241308128781657696347802396940893411174750142072148380054459806074022457243215012097888848516645368939756554366426916489533847100990510313210171808886635606396984031547392662227756553954115752121323240850697887429259553006400765522765729665424982341290418099023 - 28474558354698327522666682022194528335016707733419259751195575804436849669255232796291109678425337718335881645179165346274347352281207141996298456450299869268024877305925743700803166209925335769218654145746871742318628599895855765443124208234758211855891865362140137312981509602475203065555144756021663453415 + 27327577117466059286392248344589722110405566873719843451838253954255095226956265374041007563457526790127716299146695363985817713306860052615627181639425596874127592236094626806750236551771540074271774423513855077460325286341213193996147787028746778921303821567024818930385574550188739921134696871955610494598 - 57764128289225699315194507898603301141471022434368001216725525751866153026398684654591687156134243908773269358091832857679089934100840216016085737736970920219417968260519402459195406201317499763101145985098407603259345063910537528309997073818865140292949000807828615900272140522683190844868390631793934022764 + 94813004788560198278321389909173866299446597154947856302037072657994814901759825643989482360434049723650365579588771450799453505392508682375457429378090033873817252666875273921249719913437301282343832092782041623978933125291337750726944229563695168117894814194788698359274538464243113761563039117901787278981 - 27070629764460343985298009987685597332627548643810904621972759248826353540155887457205476932950170951847551551583955605239283118693601845669789931015036784028319139838911918871230121396659679123550927139695890422051906788343798474341513849880161760802883833692499282354857725341288321697331751781656310136112 + 51052579185557726241552724206756684553513085404509234538105768096430425103347882863354858898675027538024557030402270668889189263793577628567935078120415985915322489378418940674168172861185810013065940580693742160913227491110154851268447472409480279500991894772762869623896786402060129961029847756451293471906 - 34877345902362937793461971565823334303715215496383623354011425849956777965089489731768771881080779278317130744642229295707363168094976523867368933845657459270601133581267238152601752708343481684257925659633449731584288369553703845060483566177606881056230655632039987184876396703922930629643468336461389474123 + 58590143333806886110292762628031985143345182284911876953132521279456386081296559078709264941116114075229225000314196654761906504183240282918442011786809119058117085351807085828635819247001236583570876508944176149967797932204109407341028937077409386229527725254893699415022113705386705366059270752309008599707 - 68135615880301662480033317407203844715865391279204774262174377954174708105650727172845212871282137724957316957820336702488884262622812111762841114140745976297408145233377457656791894614778075785557626165163578170501226573107768908942542261222142053453055146291409110848144590694132374017541460494695462708482 + 6657268045754798426434570661600031275177635957301852337572839788691266993797223558105165442257039129143914554296022238574861945198358084523849984541977735588049231155606428349428870382561518926963895063200241961796243564081242431869534503685834066494060991025076848228596671931353969682646389586557677374142 - 71694215299962631653924616648015274860181337944571600367915901598443834487285621871578075268068280349399446532153003008302081907257496237800577641196453373126291896234008725733109498788455164914240212016926517504153766883202265377736630575524200002580640280385483169343710177897008533743830669104143121878433 + 48614446757732630856028020988906251595379006934656404389451195386842587694723894800625238154862585173785522947800065187002838091720537906115257567655854662372588964849982473948352327948199549268538165254294468013626544113163270912909052990171716977514148147804051567344641924445656571194663106685147654481555 - 99297765994812310602662838386034943773168924902437561119441738811161408389544359336250468133505491439836443746412691078792141577048806906028413168632215960077800752818492329457430830836291973155370916193223477322784261600253298735618869426335576164009437594833117378111213081298263366531854293824830671708713 + 41506804670883339415133127483833745164227817244714084698639058685689936735880508869350342121991145705473532411860860400823073149047973336168300035886762528979644583789962919912057957374955381652823527539023781059327084330118867559640091734923902136475730247644257739864617219663561199160519602624448201077998 - 64075301337960194881579112236310220699365465529254718166076237429028441984689073712002314620728446166028963342699078457678276574601838064692422388908847136804890758787534615266480884393940250957286160472006981099321613066678892256926968818281011449714681410440216881609922489555011036812462252408814613101452 + 61574218545571856507774431872359475812916135188199392077708027165869192539877014151652814420381055092200556734506425976289848764348589063889443938685277862356073343407016116026886568667604524647158683618637185181493364566971463743928313825482431145021236849574577470570142058308581678484453403555284201311610 - 73870565628733132741090671687551473940673646890004858530307807168490857083720421961665244260732698273634918885070912684680250192606574145369611349822975643492224319165452100388862418202075746747020650042192458200209748028029126895661240093079925631728818780297408905568088437026658313820243973409459151396898 + 54616025344662164510819488098335124303951765254527805212565512345912366996682452190978024489852998992834569748445971997686713176996614924723595192544483278092465287191433958517519029110249180390511705916591089493150473276904474174896842526258003018608523486615238287771387141670756711497050979931573089495505 - 45679099914228951012709423811940356810267468209868198510449350042213620199349304171534531218810938013694499308541168270861943176872026379120192576126204644122885857783842162260746249578274140656737970555472855371721570017038799347983989704467092587625526835164078992269251187636947027568922995720584946030722 + 82836401585252458753313421329108949277349814369341940643333112533485683449210238177258829297918836226753201044125783086763433195146000124251211421127229752613364503391738338119564894985219245733225644415049193330186201254090503464153546277916859228256334804479539406409966080449632504204580887932925297194181 - 44077527229172675226398171248684510252882246105764019578561074220092005975576232846841926162052923562445092356682211518359934182286220838364158912805712302354781501492316210427395375995175676029018933034167966589972554712348389289732201869858686851648736828688987578319911628932001580230799739817667906335584 + 14015604438998426193053014945993185163263164468069450001200718631699423589459664052304540833325296116811643715203413283432747916043866432652279239808527152725388668996088840929898792606972363403044042870202414914506823170540697145503018348102212055242302858049428588139695793223067770711381180512347587788015 - 33876189212545920352454036254888431735313056642836113614483779062324416215658306905188054939660216511170644589288039273057003882560480490021971173618765017342868489131501990485810918176755369727939910980356828466765810656751695688905659665773085368575444265117290079653385124430801329840249259119521105415191 + 74768771209537867073589824093681810176105684312258358430929500358326900551884036965835449968836142598517552075296094678077235157542397000497263762674599684368201121234287475564053406190175941020335516808633522082643965682308181371290652897141113261653800162579812768296769693785366592588169497784312691830557 - 13826524839248308372163900327790558543745997772764888457881212117845817395622651346964281383608668211019956089245988629223736824587705796716738858948185448975515829739431724773081996182230655521177927964324438980180499932103079158638552881977747373451182185995896607516089560288480362414129472297545750240772 + 15250191266408668397343584174305396838489111735474347224663454159680912113647229010367489161299689966854871095675511763575360811158941485885765148339003618844949943328586239439335156008499023307493102148949570808995980982474610138358365254201305363768577764014287846424215334999672755680406710334422012618241 - 84098650777883655741067220705208839293797976576021222604444054996557523744048244376913813009034904032172882393137067996211176234879495822282398559819056864260946725595644913151190995738389880719321623207219698201712964448697846215093960095138013259377893606722278875047664339104133184764904782016436434176404 + 31032410327838542138823753233548405764337964414357021112860457298555383401943784388643993080162870676831471420270636683583921227627198300675326525046703571340898654396118136233840500022379137257442055850781646759426607853265072733506716269178683760176512091445153070302112831288859359673123831312333608084539 - 94041114005512767105071598974859750265470022781322691304669732420280950398776505915427117255517500433598973056650300978850604912661422058904113015460708366408199565548888287125905700814762731505112600392820231133471529260090151217561214445846920340927942209450504022670011281573854870143204572241360735984667 + 66360288374817779397752034705131600098924614766243485623990532759311621942040843508132686280539409853991246245950399651923541546154527999710192042230535153610411905894553400729263360524959559255213933341718214902523937506182039875509459129892350765638339410111132125753067889781139139767261395811355913517301 - 25196123884032541208806026865396799743548248159918563949570276396779474597608814872999723680056490632650220289673660932642051416396669749450791515394339963368196519484106829769425622632601174031372992771839537031890673449798639697065858659628008059706625131977659028481375278491937222896794132237109757345713 + 8480201599621919288989104503788981364154164814146094679337912828405524576466906431289572368110378985742786430644342553516926686398628079694421633844335218122754767036127432269046118676280952133304765723400975590336280081621213754582738725644842581851920227893536101407371963117608053979235800964478798003001 - 89093145364029751566826903314912557321970315176044633020755080734851111569888080500882148121185269784822994487707569408000444193323588828110797759198065694537772162115706327460923468368790953319691658175108082154054349557536248573070365143127799217101061893258234086764707791141798576292254342178198873512821 + 17801428889279081951264508755961198508710767676598126036209043501653673680878114949745579174130541968002224378168512569839190960490913525380148826143624606993575277536589667610496153018189852349925527073232930332785971723077588835227743125849870210508109585391462636841114444833007354098148197373795799511558 - 91656824275075656636681059180196234518546462549134862852016129573322511591632114478053316876673926768808446895241859080108415134474710231084515905456412066463938168277738283781722689886088797286961561223122972277423339132696876958412703360975201471840332379577902550461408204358784000674616803278938668422845 + 69889685924254789888925283183938538866620508684295926263101295724728895778584819179642839066749045132503102248006054851290557044871074670940224362906199868474489389300686791556455846008754083957806408502969786441187850817925984227888203223529694091192513425420343366199634464511682385068785919284783415747533 - 81275294705298198345261373728120501320966434979397922037599752082550608285412676258131353831921107826067019216404617356196068677462464090742667824868218635816469256298415000324124411648787820552090542507961936637847527268221593873437871004482238882511063606517594547631148941899775621178201568908014348677098 + 33109426429011686252292463771165742978022942092720140539113362719774816955967814491799089575256494257145456597851889669900021479948358003277464921895200312404517515359709922515090356637832399276302568419818885910604063635244690274044036093975307081120306673248327645052594354497276201384959347118233595706978 - 41279776875798393686152458838962164829446525195193040377421491172163866527139061123975133447790316290322852998001371716299738863391969719650500442292958372692009023008947725211005508107829487298982077219809606014871760174469858932704129969785957434780630553146998624607085655411097218522920797861013056609769 + 24516778971446129686647570831195112731993836721640893789094797387595081598546722515285711779912980391136483714971539213102070689676394076890474672046770345311056249780257815171337240096472571887738914518861718959116713200245142754505477530813415778238530249785425473883424301589248701152645346492552672972231 - 13868184691283740325154066435194708130738524104795041971474636775923867951843611114259117699764878764480630590090199677064625344713517547307981335207982374931419496963146919434206354461462888259900753001682818524141365521471159663244954371617851214221907790017663432994109495968020902154025699442464315812361 + 52461914683866182555332831668209835981711588586855677890601347597510790413329038170278862010134326693558906403905853085542728242033118845036709923293196273581778932647428947041467650198743211614374550564341476910584915227482228794600118944860219704352750906102849743392980482660055974684047605051761369198596 - 21865870432441050162257430939430121581784088707334857300986487720661327693053006592663861414872209407551714415826049540842979174687457494302885250458980680555316064952302604259749308869310810466826808359330079827416272011275869762784634217588269597767333146276155657653953760533493524690235047992500052121721 + 7282262682396175996791848345933026569105639881627120579453469560803228182558211961987174204624399529147192663305042550758956029319317595246328911611318078165611727207573404318832507875575685453666383705182682425824897013520095151019915997644098596784590897945394223383255095572724651076923730354897132413780 - 3398876196118035004798755762013501318948514063571675808957319308201481697124942740181812617240524808252743701148524659251253317579261459193257967024528602029482204027493564342971305927036568020176616362080957652827464515197848588321672627111357486772177731319253597852654504032914789965611659826637340387032 + 89611511954143145773949236716305986053409778355240848724683158714741550328219921286891505985335497921675684475978747548826876108749860070609720361245873417539968182400066779005541741621820369198406329913968406956189280841691964971549933631571115716843115810384178819179647285221489531016649364905245553668775 - 70248404246175504095768756246653473345425090957287154026770192751971521498201561345385379953282261863054619260921807408274809760194536677629046912352015222091641547970119339064372769966110167483114453103500351160556382797425799996835633415295953573219666150819397568696449429913392021925722225026915263391263 + 39484824176142274739087422186344967456917544548578884914806432614037102563287727855139046310895855952853633101368812206536491142947804559248131416675952006694310864097583572084707028506678459336240421828294326450175747168760485694558474321003020862999442632936677142844182567038794910233582389937330285635038 - 74556146834980490614737058249997699021692789421803353485535504852931885888249324563197563034186362205900504999267915951993457290617870291449633621462434215553281984415144399095890605446723290004073020012646657203151961190353651994375738596386465287106115726336092045168049512144980602702147806059438161364066 + 47518749994940408659207813751052516431534593055261395714084648703964703144875220267684723643630434674057709726416436448811531544656393013172383232451413243775390888254742507494392705695321484280061958381013463348244761994024884665413018255992268656867349202834303084069964549884312456489196387513187852814749 - 55896701817946400217687018223364414969592566932665148501349234726964221617187711530818669856426660084393602110808363860351880814388518878228249743576593624854354758639406500343896971980789665215643322539928250582550728281878668726432964219129681180002621234765420044141479401087094723320941293494277012608204 + 91257199170035398829524467576529819218226559614989997215825993020012514124560643562401843079388665714614628244782324887728662927073603708668405534881585002578430731797725175007813800083513248332419773919963478620999692098319261095601072243763226578913865066621800294852116045425679841203862985316746155135222 - 80057658786804875457309330412139117101989407998713553397114741096988479238539658390402131157552891961636469982645470584697011794930582452604400572983742129685112004037006153323294130268241555571676357957371717113087662877362681275328396250009812444909677875016389442002106641911898596848009108979504988338197 + 8105478899213911620330598938850867921001323776003223114227349039877640975303192987490366419097821232057739031070492698081423481446452077807923554478322382331652992005584468223290926540201783904683879436113525960694179837264016073282126934725298777084678633261295942710541186254325166161206426594082033023663 - 11957312953242037249331675357467540179990312283536964245265670421095509478938582496175167528532387051842601548065152994263934685956849714705813084491176984143948644831793377392464028256547013489678228637454498092831866384515626450847446952627625251004662061182622813554926303538971808936671539657075155850185 + 26437755026381242643282917543904524095110338436347503994085138057639847011479678758797713045909528807769976304663380647544330763217608917848402457720074535743102828249400993934453980978468068367300686896403227066241262810206060296121681817023314599053045515347220424360157803408129010312094334168643919634843 - 26573263712422850088419497839265042128713244217185559505399150825897105862430278184322633231745464562548622835640785477028529758542980098564911090801554344539964657173917831494883023733572466518656193653839058478580069907852266446299422504987665654691607021658618854820972629363214285343989185610446847542115 + 30403726960442865135504374470339035117347926290918540535182161829524178693526801733245424939473377083778691736801592901209899993862280954058490586822464008023225920461243024592004974800073821285342522376849961315221057498498761749678578114642682220224827825763803580410629039860673506005887089114373128730090 - 4106377115418699650589787430193036111320871538317369726506249688977784551185382210405387181752690380476723388194005361120635216907777594248863304508532007763376889351333390829042042508988049921309666606697544181986749188101035918722219165800653933696621856320589824555977237066428463168806970504192740929871 + 37858496640646452646702792212337597911640352952858446870202368978374127348964607057173579665484724705006888065166005691351510356151390633488542143049969092376709877007937924101907141820090651223779571771865831543409912014449726509680339314220002020020855434807385798130300324014140917917736462893396011189600 - 88513056253323583318315362522993155283035886704333520275026687837130474437667431882776597874925346642911667075387428704224235594567559764518767548091335519930214502171972013756480874024378291887707605639121570629596368343763661291304770752119309800402521116295992843121687752071034311424369175297868253034066 + 6466101512511340787067091183827055335101819735695852233753732053799536717262890189770583672409980846366090574169574092934238769122782911698181079459415102302644442608704655237839919351409456094767698451637302515497123949294854457952635010029183563921650582957594627815220427462099799590152004039986884333251 - 3141252428212766227427860601672921044980185356726813233319270485787104041561358944250205280039620512246482469367268116877807188275713620475749317648783944659572340761475116833409754934710407146914631060668410834629223691128674119811489264964966728799118713139371026099992879228101783089097950828660678397611 + 12761545820954128966451623411475012971439332996873766923556174273041226426315171476074086031709189420750528306757318045589418253620640499365106329083252176318304168612953223786888245979748111570697502070919289686645678581692729579383245035778691201348837479167317205079448275531341011735236794631256185999598 - 277232603011628925867110505995556965862411198901049230231320706521660962850788619454894457880673444695404228461497212563859972575291635719734865867190889769922353083052853970698830347915120496568070730910662729561878869783292320919342878943602572982297064343584055980512364045016415382899698757468352000946 + 60173421488774433512807684123805747622799025281746654680164836590176900396974572863636406205485866591482315586404885654263092135744367275514703828409156766567804523141674099388564690402847355272242697270866244359849334369531218853511022363493436112044507560345152978955725468048215102222961729012069099437639 - 14671838145262748604546484567115868676800613091915538868805597478617839920280336454297958153873467016730960506777261239139066377548603705837057639932672344534566288366300183210819686785086274766166363691539853398701501043788587503638188592951284742307190981137186350558541511525901716337509364712626539173343 + 75544728084177189260235205396888452811878187959547823258685909912990568851563462650577948690609971749714367190670165491804769551898588953743301539410647446903713675400290700985131533895583610799189636752848182046697878500698558711907677776530684828342007442324738596996674192537059646577056121970736186861133 - 96924985843490730041622732376150267630831754751279944674674302515471864862834038589377416358430403080848616252323800032808785870183891639370915470978174769287602961265109710174942567125230905637983678442604541269988228364933839652099839634336159000869178751541210368677680112335828202581423855965953208850845 + 12669330228982983468084164995034862123532816704581481577009038191295578289985571275323866209886812865035033860139435504262688031965398699143126806857335174017076969915839442552729484352029013135095882662362193582834841404518215544113426995662547029107135280780160754223623106233102880485719589036189968098036 - 31664799254730770469710298747280139205328013998232026832964292956037107238608676653228224241522539578192793926923073623002790957228787222142151527382383292918823159301469000654832441492519708577766457391703697140200550668005900373598278872151840984271540764175445710160988260461049520248595844270905448498414 + 1561424608309616070590638324061780837592222222567883354030911922094969926445449860769178510869736975607405398903141054924699932723969813357613883436616830694251220617886784204726670186293512582495444404652999569846055536884302634821186920274671052714578861910560767885857285455380066422202200503017188577282 - 16050769697903218386950710618300740178395223499852066109617934101316402869187431677269298474119564837124285573722223864066676043150699489077342140166528327515724394484649196077953722389892844495415174289143413710570119866534467347560261814263467427590430087861196528246431585124725905734511767642922269197373 + 28058414052118193504560418792753667914449235854467721671916956051643669883490604346785650584331806436481867722721636958468518364323228797264447930309802729276191714646860626876361364636845868623760913316795130218997068327996487965222468267213761569579142095535377674023758309659637529150010545777187657390560 - 27799401260842815776408276209345530874258640647099113428926759976096472782010161094470893227178863714557752655761076411576940186497777169932013337761890914605721631287258461404217761032750404045273391573992256620266881202071477316413164691299578260186760491579278809511036196492898664391365711076315555508557 + 77798003345221357943742078968260625047633260034191237024976601657783600126713101429735888543580420138464159550170039734836185220685913062718062421736580398812029350562868540666710711559380929565169738752102595291164931185591854672396752552492962099544945279336806151006281886420712942856702812585267259932897 - 84819907929776457923342451527255718060345877233728009229022800100884208580287041359599218900934618650261592911751715546768807316615080414480871849528258477475677242557115565215803038002874932867982635033422898596328932293288173825338577060111744423273460021204888546412746754196583234114265660631457469229161 + 56080551342216645489242758201800596970649378781199503826352949261761161868197062397346196058283880330811833043483906006249178950136984281453426662002689675086003573509170360885550416178907978181202844813148483713343499912617794766317468179402531688470636339453742825122636484143207519777281037419785883601273 - 55216434985764220279621862716569554418249405943886456877566233171851903734909826586599928105261281345209848010756649050622296060514091087042679436285651527060932076537449556512550602904663674443845022475727168429754895414368176125434227365540023724698990651355040318961176203889052316424993185490338030818969 + 21962222782566485550197143323620457602190112880605358291702135913161798538345868351060308255234124169560288379143892595482406952599015838152604300257281943991791734419371498224333765562550330070993246457736784819996610745210031895672070017403834899920954471667250397549503024532447020565390948351505988855821 - 56552686082104088986296349245977734410517703674187757354094370340305813816451413446037809828071768291088201330440761167450301724189407933372126375764839264371108920509320399295569874454917156277235648956835076312402985259885938521050249008988040169395826757980816550637251971537902702726461518621695248056451 + 77335989085377632496529340493006636022287141059420032293824697527718542065108929197922910053715076490100401826462047375903686616660992517993531869069075175235473488484082907744433858897207325027936480656964912497235441709341354871028525474195148337027453922320851966215308694740452683487800505364822331216396 - 67032019532787096760957215600507749697534794335739117574132778864736713810432045338173402673870946378152585585405047684489986201213775337934846475847116136478793373692350802408920656860292405891069340011083252210567612933374142208817321236626529992545969616308627642161307211111826946411224817376187296040586 + 45981827117372623659978228870380054373952208088754761024337022236778138297133421784662585352653144069596427191699953329950543700215133890927663584379252552582867841997348634424226395432084209374231910174314840276343954602515636708251712124343548438829712929448377445086709965358388560161111451277784986261907 - 213255125291314923686704571180067987579635765076576378206985160564179802662740219352496940724390507197711674627645932314692024959113703795904751548158938067252807633534678520950503283683691304242365835375920226562966158284945895711440223270749425762303308860778984331100035024693400521503879844232709906748 + 58543150757221458160834942116171469489893402083609248862228020238937129694659720593211697953493906451952930457114382708031356383084690618394911690438387480497866912319924789433208574937938474387034565324604098957277306635224411328474621646366108630939717436338453182135376041215130039851922716419528745272631 - 38502667279203565540123634109356875492651141952687405330316976024884123894264872560859826501572381494536712991770977993265527744527648735730176890111356897905803596691769347616559764088641271823669655647347096707512428347918589760650039688153921444497643187220841622113480729258579243207028622276551757770325 + 49151510149211984686673207544600621421387495616261365702338216562107511177065022428195768062909721959387341178414004647726522482267835850985325987700291122253665274322992419746884673700779430319422997273800498362545824335557187847021806550557851209192961369378714392951983659703278672115982882860215855044321 - 21548459628472938030852095916294451056413422731770240765996211347806130731711878637400953547846610324306887127420346142994969469145742097193126760736221369605511358571587697016768842417292221486514056880118326839034400682680629445956083223040232055356525486859176979301784188399366107814298687571271746856692 + 82515514322340470084432214625962315580709167410642409986832134561683747757690381340302044254088977863589990525964954416946566632669342635180226210964943568040093260325343404903228846140280694852584126064070589030734204137616960998096394413508835651424467359185060825959351903651405127192135455632530027157233 - 78120344920015638979321770141667814293429873756880605311955304125956656961870644603931241276530331913058675081865064385491016071122136904023130981727981589977853147845512700921813344203067203876179871106949669089975407820141296316998259714928953966870570525831093589325523939002042486703101229708926870027321 + 88553757713579165402720613075375579001344811764098864483188983640760402828041448827372335042259054723639261842032912197168650750674192016294886446102408846990404494577500326021534011901797071067870766341259318693731222503587005042029649012514098857870190855705112769852131641613407402833908650759056233262422 - 66778114679966601172929099790832270599283604339640360547590985625887067770009600831425647793219932375896607017303477373762407900223141863343076518272656111894996806991601339783511590656786501285804220830413603923593353724849095020658860162935887851724540538369763083981338523388769799627630861563593671277997 + 29265485820351554281142489137662994675827790835423102118928525471409362858972526468357454495794660895375345263115687640991419966101345755235459786211911893985563542412877357859925807813573207137522023887541706268825523265956447324464626068441669600368774233464707333133899616202259860668509588377490893333600 - 28004135713377222035777938533119964313009028620158839057182578717234824216817179830434120129570169798171345489291459332838458589522855094122532720588425760004266979971435912739850562366315420279552020518305213467735371081683363605086417742629367300237437259943244783232264111265661430472230423170271146676357 + 62172482660414401627733080358599036741405736115533832351386411983393973581528444722048379461354035448454404701913108678903566743718003375910449305102697624874459291894406913930879139169497154797286328437001027136987575796059993571979658271116795288857345594972573544027959042068810359239821449066411244647665 - 87642347485875371300979139066543349588756081521351617442388887721368164676453892617611830173595058519329439418824201383393650061724185316532495468333396388214336979146593400257178917204014681089865460705323492333965346624211886350445691794916057964435154772196577217863532687243376132650915650119030805452240 + 42045679208966549911094938823378943310019719429376529938172288133382655756651852933248867482313868304419214213174065826931813850604023632468177630915811630730901711392579087843008323864684434745559961950075001809171760142806447094713563305525542443095895671424769992254488364242788566194266507805437448524557 - 43196986301247739459724224060264319697958866468631178071150276042824207636823060079015844339519749667117120809397099766559252141420702080533417487142507981702755750510142415606263128399008751070491039718344084284337990681791357555778333487628384102057442201799911011037034322795802703957209459964346973247262 + 73812379497446748330320530468434994202280399841066451351694761297440760895835591259463279258697797989180386391558238238555255569932495143930336636689890039207712306331598652786816498269144815504574526526768644409050915633797073742630378635051695337052255534363631853685275601273326184840579225198172461607544 - 89753907722416494927657436262889623351363156488748713092674752316977691566387164846590979098110559250707091197987587951223799509202618962379677657028564486961981602334369746450630372552305055990127508040885599447358166255245442557582456188274564814332714308712947888638120482833309549145922533027784202580021 + 53363264213775357220749788054399202852366376915426992806500132531392195555256831470903228016818305668844014764794654083282564173775449481697538308462893320335486586981283961036197588566032645314440204118352717752872327058239992475927009848971136229661714792203352714010066124643030695342436236455045751021521 - 58263647165236989745332618625046076382782769071980232476435234664787757516804711970513746817434821133356309093681982837616226192093246946636900813039681432509907512763773954362556339239495697271875149496792067333829583936357399554621976514324388959733840618814648627887235668165817170708976769031924529321875 + 72688357917738633320245565777292906425652165232586799833515428715463818377882530095835727813292165312373822975370423814104770668416717031182294586942464997465002094206152444329988941907523974331696505055735587879573810046358783079737621262274429632907857914840730548851607606513045188919579449007297498345801 - 35883383884665030797899685678012329935924291238560426298154149214532009702182540375876090176121000662524092610168753063620131876132540305412103056945801954636265454970996929928419629798597765451726954238691792017992654682958790214815860978052671219781584822161050468157131194709624993000522646723284975521048 + 45653686348853761717917307561878467893790024030167090823122955431628355352647490674834562505676186614528793967591480304740851712388761540423175716675553722019225310740708582482319379982027256655715771474588633276120283816407832465437237470799496235532525507964993498937964762941271849386402345037692012502189 - 85351590883114445153061449907452988692034898185527452436606297203144572808576228838109879565451174818819644131787541759780730387126964232774749668700317585932851619128306759119302051044230342412578103914645217804505215953364384460258481470428701243003990220448265014216109870557311749991331163263356571764885 + 55490873774771900163714177811399981912698754159961784184318888147118735229836452661145547956338002538994592627864940194007990901076602593020392188273056378985394868208623254959973839822574053037111568515158388893102795848746635407776448331143300497001498806270189630629162471630925656741374367151888988281622 - 45020897336809135482763354283096950895232462323886488114000022723435907929559391185807860286514716920147149280726878993858664741640485991008148507890534703437953734816630086865634752007683791556281998453231056426713019328509036495915127803941875766449430596696789647516037638383603184235034955458921468835212 + 49084137170588445082168780186211114742520528494332107656071848352327010851124766186791831532006831848787931498519481870913418652924766241088029422670907655818978479494726768140537534211165175133366875218761957437455035420932483133811683068105017589133321292612216370544860184992970434854647682419399471495565 - 28097013059665482303327121030755090840609138759835379216449504910469598553924885485641113514438030461065120404174494543405167144924574950874000946167840429880009958441412678826417354883737288353482793530898545437031460987555076028471339379727068081294147851697536351132696480383720958825183802977866742145051 + 44866008166083434567395004908885889041749653622568978366585649866821260524764249559496034667133705491764465637680559633229162784059803419266138484746909722195363552710575678447585147054641066538194145510127110248459717236632347386783660748780963639509727904853022718333237587282758547156607751759095417283220 - 6501696216045209572549579935286293108611224089019435378368134585805573407298996145388430648504211686864271183276773453694998234575858305338555024039846230580530622510048048010245175170733207468539666465216529322714564387927498055661905222731248295593728704344098533665270725221985966955046631557061899315340 + 50906876915203465610616580570253118561902001384601594970794441767779986076626229890416444707379514885440391466098012761559291986625972583326827037509959564015363416657418467889927359986742302914476094337641835721638174999314210442405238313596501591640300780763463042156253770474405806575973798776217402786075 - 12812190486824500228456912869025914184186303715862248133567243787692049907577829822609755502288382961054869334722642252607816735192341011120799321998683850172744172400550456259561275445222486711409877492489988566311481312471038370908978306401601746957371917218758052818694847869623187202069846142647571018298 + 44811335802379866102977739936264984876902565473701672005498657198088878498317082297533704267063722360825365509294378063830983139802571563299019168964109884663807777589059977495733266095325547615710541114002039952571708768566660795016530683193848126956860590617709287885431029573485923968310481273312004362853 - 96919762546443121018747788095351886380086020635426219263008051779916257313924289582145836296504372748773833646480182050370553981508316282773620149734161384868307597919559435851074541511896483766593829306495762615374021902659715974736539044598041908927469861920097229821950022033920662502702240064290771366245 + 56079808715464332704649707592670665489744335615205950827179479999720870164252866855863147620206767468683460846068430954532032679328387026664874812542435183145595700100339530693426535544133593396077542045869837069068686367090874526381341417021589584769286195179837468300357062091058780603121217512024443760872 - 2466157339763838367472705940436226246112663266767947325130868754648415607012561619274079476432560872356832793944401061245826417816359298351324595428496794693460037136450362933203846516709061902078532837283301126386106035867009885797941964691935762462073047036981960790702403365990584718547800799640447407488 + 21825669790129837716017050459466126918827943330545977478927810212703880072892404469247984672100976325756896643100015742566942000681348452204024082828966743214141264310292105560939623111170056844582137700082141282865519256320724078122242860362972927071460052612606495359800215963069350157393602190686611233710 - 32062739077145540467054677648058013446366045483658017994297947430977364176234043527731437243224030588236812216037803255340551450906440837695701028730051910230849921155484720082955018042646964946223708631004882891001882871759707504354130933180455850780907275135935794560970987076611976978778634598308716986731 + 68290026151883638236413478385526779930756478856796892598432737944460661132604766048802217956705305543250627925256583716602824979884010336578716705964642166874626271120690351526972468578074218742486743186660191596273538958569734205089247537391518961868324186112722695551610201973935541363389879808069777814989 - 35013784693530815489404965443719063518794964404087683082868556157489680396351410018915782427395282714930324045845506897912895953906208808267852061555311461545976600760610708306423669258706932101463293038462419150084375640767330869242914099936784081137381325588203839272508265537491138082790905825430373166115 + 60032986526990454321794930798425589379383558618288065186511589229562760614366226437571746942899908944094688598384830925908409943876375027377308029951405331400237679489395864073298593731658894481121917048894280587313334779089343848286065816761911760340267401501786872313928935087652086368352843815372263160954 - 46329964557942751846237310055055919298343287631627840710519133462102078334278598068924971877469723555464842711015161858246813486490569130500106155701095327326444739851835980783919278054309924250793936736661350648616152908858490672758255228675858087274933041099949692082784583409892452403386041359216442510212 + 45147194695478235184690558390567924754570067582620073677649774237434698626696203729911144502439238407829579257695980526885578172858334607905659273937880469366996791133074579277929186964033462306039237409265940109211259049500787466856305584187734986829134249122215116720540048598771734783696839943645407866618 - 74734111949750594529817559123079069885054790099467140236612837174116336109422182849682472821335864067905749022288939156048778300607865003509069102649485020139056483175050438153981976734069266844465147188270750485649606813765008803906714642402614084538954262368984849424856506753120867690954791704713983395840 + 92668812296968557725432873935364745215463203056290246022942246723557561964546099470636126276921667537467957117022503973154845762102529704442741398582045182587535573803174501616465717466947902935241970427390163682824196865056318740283631679130384306899933349858017611601516382186127464256937559019989058596248 - 81162899302465101718106795638923143753485893068210490230761211688314883405900699093101873461910143063538567508630545369704070653561646364446865713462774743253228761103308042160482388041541490137657195330999608348749951656008223004946745328535628798576404226245481157165256709821510161192332193286695936382602 + 74796474745399002891384696236337876309239964478940256694774447610986600236352429351788539673146110878875610222050743377772969960808884525405795361999235759027937567695706027424791544745433635098754151895097391103326922494712442510219441007189808559566412007890367330058118410208635833768798322278773986424657 - 88607776808178944117233783354690292814138208163647842520932314271322680556430399338292735107058625589786893965895096468648166777176250285481254027331079125185588215122569581505955986575296343485129718810866758271691232385180249957132245463229272154020569387213895919013727426937865551875564252786440033682357 + 6903280983210770892201269008290115328828319113057513704994649556993049339433328608528602957037953676743280376814232442319912561133089172403312050485421340832072278738834393722864932417633040834449058423147714463830882289990859489501416209705418467929663734276280632905070979698766414003957630996456966750776 - 4206993582513243448000727060934002918152303255064828851633344425164197164721681116003887106230631528327412126567335579986671106269993724895674377616646288854588091270064859747371888515180918414347789698327628113606778662627606179549762508526992622326006498263071167782440837020871913413023646330745051245392 + 40948736394615247723027182626275600419172031445833177284820552986764205889933950535325257514770327904707151941578628792936629120173313148529246957360384164763861156899545907895696394034954582164333823186353118362623302351259160464573344923958941922279159365676320808719750869788938170048169467613387675284473 - 58768073330116670613221682063367806836141367557927044546146728381209860008670372090032195596006219304171896461014319274118633214111887890716918341881384102653303416036730273542917667710635443435663679073215330820497301419491049972787176574349922853915193481842926007655961958677077763360033536721544364898165 + 73222751387849756313229022208297463839720012920409294916885586175745681385421873722260329972290563876173766274987533067302343728425661178597644325470073110156871023246196880959633456884911724796511390870871407274050370248745657661688994644893934552338987752064730503687612955949430261882021072266035960428731 - 86446339102053380207524579561306871167488139261608638642805639030064762431650496110019026636242887219752092627753493853790697771486763280316852381596907950187722408730408594631799911663150395868865434645364156554574996787347172065085221867496926724087994293362843819998366359760983133023326517148255477721340 + 17515137162921391881269144942078257031078400509982162499700071256086747974701749459848414271945522038356339704654012036230904088780920146154137852264504684533321999099856328655877037045622020892108579330345224440035676591202122181094647847368671513595394088584061503462892428448386650150599566116842531827722 - 16910264658714690620272245211133189015344424228601846760879473184551428827700936538177105748417025065354628355653008418954424105150973444316544290545884013916915594040674771752684932816999754729155741559075754140634827899236996865482547444512399786998151231503086068161373025575079153460235070481026371064317 + 79210565454524318332036313519802170687992188370895608361797878733510299916805145404011722809718279157241737624797152353555477965607425625770871564621467801981698123115048982263389468806546570170498290516178564911848341392475984320336607088152349088395401647778192295511971366332287962779038606042765069267298 - 48068511921864451977549549778745685758876087319594137715928575229692515689708252776171783795458099982574391995590487571590884003806847976166830191797548541374481761186696180375004934827444612975483031635589193950204229143889045867725877826048595642329690709904325971860433102488727116174544516563274117015158 + 91920550282777340609338090568957840921577008617389960622298663411867946390037492184731954529197177864659106413252710235923801950438742623565819325056008573118466407080371735878338444328159816502958683589214293035463130643838279888844866151375651490174666341267349496709045540864159294806684799696165747967825 - 74746294215935079172089038772106114420076683304784024354895043309130071957123897302124744063196808191709692444556152357199665232573884635324306833931503568120785239996941378157072251053664446293964467921764697035608909875519654356525049252570179303606661691621008715628963025701780058273380904400343870777229 + 41908206335226814842948460248564717032937955522666527225936496244731708682769627738157855182364600646501908567988237390506098201017718748527530656427711641350532130890004561201588984528602499818119811380893689676029890216036553460717264758616046049587815152143004193200997156017127084768095340952603289972814 - 62430923556128012494491268922872344427318596340651048900916935329260505317357828571227332715588275073403926926559263710674302297959838809470427270764281925673721721593619184477175708679195835743283602917747601264858230750660047250958980158825696151519626686928208304289444663134799395451124916434017836523353 + 77428094938778414051663824102132408087910836585416026526869788669373992948434193943534693549159632174212094306555999627698505736384484184987432547452622961159612378507382373078220436122693815573693857246493394134658824344753600787670731733750163664581219949505724881821552457585463013339777152270598554625455 - 37294311976772300445154570121044385477872481138224564464757498012858332918851586860946402909325130618076386767839305429161848989031774120388216106403740804988190150749333343864175145010204248480453768235030220958960850387084216922881601138664751812014655182219683090984693886424247274300596761789935646799860 + 54112142043084521941341216738144468073293513225698413858094976394199711764690333590636823238159585203751582774358180852387413585081351129882417493021819189100694736057437874561101090239707691333446812220293548792298064813785405234379097065714657994597973185084015439865531574211361409768694334180256407517362 - 22256386060402720250062419917272351405439721956313873936541347352556648847537161555030420439456836074167049735426282152872880540094359427520968697959152116142549956481347938566793484261377370697990832696297931238227817861725372719622173462365411457496618929335292209432221651751364685455005973921529129433767 + 20971270588230954178564688577519621737106503751364811730583644012033779274789001306121972870709248307749914257238763599666558201003333070722981940983148671102706838566271637477848588919613713585404377947536821578411545910408781898451616673064732478885528306497948378474021520728479018044332450836925903113868 - 51175712755786571384449006778279175152662161500087087541908347950673094706974133443812197690862926290814831784346426457898431764672161751246157470082673455487122689134518315541741499582515186506159770614170645929525189918402528699870308659559056052629647898955528452398057894909236570269588490944332225240114 + 78890043112608863695600737230890725312948369656693506891468462959723826466807211514289978415635342348704378344671046122540177576618944887065728756376823963650170103686129400408984918728289133603739675938046491105193789415806169612976436909558755163327091782770926060484260777454681727845449173012281841353198 - 67376078940430341914589107197059575887279032715889508582063727412768474192566903283314658070235649239513722961889445855277114450253557494524796914983970330113994912399577837023762036476108704175471773211560331346022735113152495992554569051062662139525286261936518589212941322664885817239196825931636000789051 + 25497190765505769820419033692513739324814148493219118423006194806834509037680939600071562291922198892370805347201341577752087166348698891032552237872476321386913964797968756291759368631240510950302994486748929293579443978093305843726310917394462848096095393818269530144669880932747670786420866181706761178078 - 64045557439052629355425795841847095395648055798102344300481245978252963560308448359332050418406339577674621289093564239410625384289434090506184438386605486082444919957205128944911244652807471778551060291400841767238122784762322158165989871354165564120757203501046074998188551678101327278875377549430469885940 + 44348967398515596911919186769619015588865881124611112446761295232500933247187832062200245045420549150113932017991355673834827465928982301701136511215531689037571573243310257910260892007103558326126897297060826045079662206018757025122259045413464400391088870886279170979602254997739763098141205503611600044692 - 20082482772924274366771081148253604644684575648194722126109654865929409646823813791319829965759953384505292986802588216875890509984608957899741609581918540579966032820996180518720797349779616800790175086768762772359662581286271036584860582442042533115873614697648083823710987993102611252340939434288259459894 + 62849922895012387875712929647219983634708469918763706636040386270097053544093083976426342322929158000655975265509470292654671302642528273730075942075440065199043677743955276391507361752898607080811789277234422884163325041958199167390837104149697917340396999194830590834817632134295706699513476061002541995788 - 1378245549805040260152343856649747500523775362329836117759858877793380748978725464905990630294180163058955854139512435387651190452696095296984917041267275808917321494365169459473179328863255528127310703485785374394771558124710772338919494171419544781681137485972715303742091356222448595325335865749127953003 + 19804985100969929454921225413008796357544819448557923881551306286904343824017588300790260657315717140045965389722283035481826675234342984105595302035665335427201760235897562393995008583559611293938390716312170722350874045835134488408972181814896660494840627742477237182925788027723288776123672207732900167379 - 75564116247923671222494370111564700710326994273176678991463288797394903891824878020553055409248955533172554135429113364176389398388588146572742379942972735626341309179630870954744731815389751405629500409248789501359563320985409088431575185890941063658701131774503310643966119115326920682082220184303733043991 + 92835327567097877613811485482506641074941730231409319022339672283906765818265490527032407363993745819093920343320682278309797439351385749589582817567246355583383694784530316280925789804720766402339237533295804382122851532971741718056945590177304745787538007453701037123399752516537364560183724420668235646800 - 60905750387411569601851272890950168327087837733412038134906042008885916017066404634304835933704517693941786549335402333216097303721310577454931281319411877025154228590848606235278213125815091423208852271093414719854797089344556395113914515200024380672089966142909158557876463272446595801045825673930783335412 + 40035211669633080705899144775398677385122502798906178427255596529209732861150179464848300537395065874667816661214694506464390791093782466051928923540581597543416166794310052174882247371367844807825151647868867832422599953910356423791569695878830278135088936743726493240520571110863490857969290227371431923294 - 57955433768878167308188094458175868119760823872191875028519785684721985222529826434672031057141114366181848440128759938947619986234229511803615933453487907415225329519256129282812288130023824320293040064051679362817511934388759109109526686492327424824325215501550754582314377549939490746101379934522561854835 + 55454365209699196284888814516829079808721948079182809886217831124357624969323895550413024532173791531444389989873987085696067273412904818646965624967098966259229100018470640038285891552631917154431383387871011127313181232142817904173124907113694044946951806277849219995065139579629359047651394348123756468940 - 64033191659789493364817207745979539442570688641827735115016367088350894483620601906963983554496918357704958845667824406443390597444576063293798375450904426803754333987939000179986185481080309932831332637104807826040116248034503818339777421944138965644213589953099627195140793792667468920001804874600388800471 + 14359598653461221478071415120390217379639044269864721564628086821794398963584759144010038765064695838923358419145551736782576180819948662698207649063065970422228547323040905485446904762023386329305287579991505968631997393071201616164885942698883459330132293243664123323127624965761061970109240479060877062892 - 50777288902502900595170458613921320460900775571293742606457586109279199149189753329447236293761225809860646343377883024780357443735996271463063101160436991620615811237027543360412850022630043918760226720741390235869611267258907279753496368372841041863063545273417591408156370437799915015911961223126650073349 + 40439579116086756651181498224182446869480933796194827895241115414816113476976482113596655532784526297054592906897315500623861840849818316794773322375454253223305121321816534862436526494079810132649467636204457030510661410562843013421828136624580313970069414950672727713551007081675744745826240005665812435 - 42817980663368704610212637819957509822108396564983348588859664994512396179818436620617821164646467376835833672010297114318364501497561845914858340789920005673455455158117198454395513302818836202550563104186545081036536820852284056896703085725812567458617867104869437832727204365234302656954507162248135248603 + 93983267269025734244999939733562959526281385933032608830820018750195917396187188577580932630365223259599059443503026155367054137384691396719140061465920709648202504085402387104103297793756445497108292734977503604554992428407070156854529666028346170011198602299381739307665441074887266920967588153445056326886 - 19036662329209663229928741832583732499405800336840731488226633559225431092281756032935464768857626074377483524563916552034407984674940635006347944857397709509605526640644999354256540626608591445674880098930603797113986403905354671328758081279266890860870680304005508422656581824659199370174962583457710510390 + 81577226104760956386553863083105794968514449485571091852403450514304140328667654652907811090415187057848924789172007690733938850595091228591319580728351913056297757128071827417089020452417081851642676803963898944558621909751503258360120343038553909953668103837554726182488934750764161755437321752264228435191 - 82043240299570525623126581820588811700624688811417153715976172099284923204686816183864349377048024406215821032995482412617824883561196213511927228932354396291404737320793772877492485404947538145447051907067972436301513894274068027146075855747695630984183321517390958159179060449461721092580434052229971814397 + 9676260848429091063545118991706866361756369944495710126680045919849058109243943101892649746448666667854107314565395881227830388953229933636110431647583454914724270222476000124316798303035195640484957358602605432649466998236790028584687531309963823620808022135420157596102760261560851972021239782688742874710 - 77392347277338421183675841624689476107284478052353015206756132057425140682360891856001366246361869928122121052618165625432780301489183787408666583999639201429433837861448775609638173397818041328597641356825701124604157942281899654267046976863410751577249108235689224126635413692749176740820338034415112067288 + 22633130246367693176160091468711817522132690183768227734048371636030360875390976099195800254680894827836873228800269863454890122283168471710690300432014177512776973022773791195893364435750712979610908647344375031617950120589984951976305342188197237105404718634863087569094881956121640646793297286731818068283 - 72028201067426546546280082443289275879671807529105776236956193821792471781779528007694490833884584192677763521850015371177787362912546648807840184076193319303528853741077617857163931825466460974533887028351907409050091168911014380387695934975416603234396007672655127952345883632548686679479903538028713634470 + 91931992010637851637815084629202293018206232316561299628640573483507136290919407399256057023714416535369422579578315096894857009198484322540057847736129418484522705821178748637242900749475228797402639334770941300423648224162930921002740085299414442324547638118431732559499544841135810754973627770644248648576 - 12255648878470423751068423356323893392774826341785614915630178383112307021981519280166335262223348671980908812513327532602806849422589646994153560358671104840595412244641278576057518522315667118428993602701705188968593223985960635990966294657084697428980878224753730345141873923062782847201012463005545665570 + 66967278711217201365942478391782082339856214654248103013373845652343518022681612244875981410806915442883551783563492873475670512801855276271069278170226693542358303519680611498649734886036927763033563714875277460810612382030106933037449883939232162147669144052262276309785793803677197578777325938184335550197 - 36095985016431144635721074681861188027656088662924712982168683799800873287290503618970903270621114283779155533494659724886314237029512882014708379039459052292469600187443339251381642304717774043207034647883034456246042706866206542805327322324708984095965938464964964647932741304295486397900670902552001310947 + 62138513049686917444235385070209047829274042490087626391215378369469461256422117801983135251673723800114920981335811458307129493504978994443454908855319548106114863464617760984412423841330559877222025347873191198562521030977652757430676217175796701808889098415741522648788136778453196754263354764673301111246 - 80948038559657430990371269337210335976365397953176278799248511323533788687307740373419627805023314580984391598252692995859432423559733661334781873444876184246249667314390576164130253099828067806765345382846512238710778217045064475252203640301017469517607340831891092382307669183509195706522593217384999335606 + 84024578237594122975312916558654569705691817568321905739509514113943770826850239392415753634243714224124783703326043031035089238234818585767172282238166815823585545732145881926156881615569437817620186714794384525329381129093890510532779676639512167771211247704314103273920696896067039264724830550401714881361 - 36693505821380412654377540650356529377754076801806582580557077840288804399880273436647186783774096874266703288256843983501253145676304106282190289367161464429096502598945585625428362306867850876699658776816426761917791566496037952936089784283977842575687407423260197722010684911243167084998688595473116853796 + 12053504377054915054503378051700437323140565423541774963243720835879574336985059941935664545545026791575674655201926266014047886918803063175728504849772873991778921115910878146309722168686441787004153589338795287003927965011071466509470066388099303330322560477620744313152977588241749588301209291041508935168 - 87921699573341397172848788592195376463537461500547227860924217115320623311402005854632799239880179110318877398935167125694676805057030906718075766168898962064451172965897499461676488693713844123952445781122259108083486782726392704632413291529321093066249465777701984090780425593734385188476988639834088214975 + 90301193825401896096971182397529081986709435914514033795210074437253954253075756304258308405150833910697400889831586096671389866469604363329185479965402656370109913476065403677255886876808503916182519301889025424327869753541405130815744295710373697763165068143910844021864335329563864668285766064095784407513 - 28295983024491714778342261597494194861485291845301417917097402861651218052676512941414045326049854821849606858935962077994401330445881266422078217290772308553187620668720718316578049210982733768122792851997176605014437351501429648404355898472461393202589321265524022769646212392898833227166541657756165398719 + 34165239730407632167215445229447874740280792011250835686760537793783663382327224211067880673232894087976703846131397233101367579504430570196137989824640162107189613485053252608636398349262318951647116001884145793230177545899530372911617688836339290386797333274621320525708889887064842900413484750465575344756 - 14743407889625628345451749057435585944032213125741413353890821655926107307092509646081048361777402642831687186396731521339881061161472126019597674131293013456041132838849498439913897972396890197173634951585848064927309263021273756794469930841836503781301735288068867254281959878575928090948418574811083968560 + 71050415886101912505218594738786512547085473026256836166797814405351439161502171530488113499204389398571194652849526814749869411294250842468678948516854880394862184661067576922587287257576818970199151440907630655813500928491752152674035287248950719547667467036311247393750526321147461984763817058577704147304 - 78774632241340755432391616241054653570221183144534020156134717303516631020858041405321944410779499492797615732769575516469720807352610090094174185117967990287342962505116453051565702982386950518970984784583600590823655192929569361912155312476675246872145649018021897005154554015598988146820922419816638686844 + 36895101542795714741483779970439905600430579138092309820241291760950619681437562920766743077295873452349686513765055321951146194905792209011783049250242528930774911512338156824630984978932796731804313666997303972806085633087855830781341030617926149728243393519850220435865707402383192532351662074408668434382 - 8608597194986575540138943074164691258353792448169560408088274148832751510632699408827804360189617359517460142624084294758175038615172188054115219579782749706795227964299938111221987173735640875885802213915710093194296414764964003890616725750349639697110133263751866597675681075301422872804736713548175854270 + 31844104778664009173191654873322988272071303461045671375643631746401132564611719275629131490984644156243043176629129341035382011693987218984912714667164281118271250289503667106133106432930000960703296209735418221124912606129194715979216605319276842723455157563545751662161986530784225014132973192372839219829 - 95321270149220772491085732140908669768062957161988640420465889282775958396335867153620040814710996731396221998483581364112489717716767725917689030874378836748387132739182552301692886678570277090169871658004619748740785306221050662377580229544846222979059218422418241102959977265588779664575231865688916010595 + 77935453069745657434231143892691307693775498200066844999429151221376424705977029468837829861101892352866735202115162124064369758565200325834245219519627961444536661521725326187729076436414962886214015497724337507061529137220406839626216804630268341739115440067889651039700268519679907018646019857186650513790 - 92620381175417193969837521767276508855550571213582259979301188346058066291184295443044664963386881736408058708530855549668350521126416693382612947310687859002921988372760828845384017506169062566513074597018730128630800160202781981297501060845072839970306411832006950009166536731693972203226450440341475272421 + 8710795858568997442968077041672817087275204709223068915103965031447516234951170468958754519235319639378004999901146196420583218948404990387274762326970335422986482213671012041831151847810684375184026707353423240087435213362039750446498323482730328833784402332088531301627434416765744288761449598809141230917 - 60676186009366673359652791439849982596902499680001839017366581429117175097296422622434499443380774113111195787807237866530277984690725597870353239784493406700883963993491585950810371582891805120819568352413277024729947683099570324723006900300966020099791094270971255085101062506566337745885277400374823537352 + 40491082473990116639872868596505601997501995071857406162690490694369128340877419412828839964496437955064378062192302354584409104627854748905185997865573510227671608980533378678755501707380397546157047265967697048703022457346136461577610981707819655778826153766008946750498138367984399253321467372580153520177 - 84030202672879387255655095649673829169071972413910635736537927580700617795271117969466414595217267623656424784391250160958986581508154360360927409135938783215559809915478819620874425324405312596273480446692203942727287295397698100018294919617013698350742669728573957947648794044942238458052843027508514712988 + 21879183509626234250544740747307893151002885500318612358986043095462326529792102259527469188133541040293441283790163712818645291539941621231082794324667105054785355669684365602589616867326519696400666690908326067487766858058575664033753800195028329220355169932854577254629652942287439480124304512101475398977 - 85364523320881670605607726353360763884633315032694188741835760262651472369757176956514373366766514420695705665814702820386096004511798959124480076564948471715694665282686379899041580479771826797669630637130344783197842256137596245451115923799005515624239398671665122261312530784511583359377337384421170573714 + 73627684165859730120104877303864576536570441317747742673654227087361524667101417837252247061903499529485848359516648011968537254355003482551572023922401141333734169502284742881567178730598200776970734990514605873206298069567634759326649894907533080764359355889739677636250205124791772948786634695735903423179 - 94526443803376936297558920998755419494369939016861955746502888782433405887027959272481718585817150653104720343423343658449822581582386515510518817957371207892915687075345722068317322990095497440182646314648597821879236560272141379562373488262236719101318571943275516265265154463368505297229237809461494195229 + 22689899155899415285010390604855574985507370023932135167778943529204236424993146655330175604095186977449618683217833193617495233595973937242787883651799840824694552506382839054095141605336217637781804081563299530202635167315413627892621316930353348004652123765791594703737366785220025948695134588249738775594 - 36633791893948601902938117698779427379582680411016678016067388076863482516422336276729302659260207582615854535477813474749770307132271479186548597106706866033915736260835598879798593853188595369971985478073752407448525901752975210846024067823083296665755307015014713685730203188253107977710147322712010273292 + 47172931685978369723683993573957272261469135488374255613854436816826459877029443518756740895709508426570377973468828940772437737934219594572246202984725605845702729589868424419872990566356544644574400387330518815086693570746911119561941341913664539259252712340874046866913088270766247068723793044530970439931 - 20144126585201130680459240221315249416561321832275428757784662316801974524597017019128536330440783762029243892200958095501659749727866598895727145731355046383226204994170175981856481203069401041988753152722768892296412439284270663164806103724854050300903410489064683714099981809697035799320834224928000036042 + 88053920553355123899464146090567499798771140577373494891905858560558106117567882004719792253183894559858858710823589997299083417218338374944805802231772290022245922286572831243229245238011188416237345712997215186960592787043886153718820026851502824629641922306966117758582340105587473419801997712933393458066 - 91967422334048853263118034372394538190047769448051176953668939933197641000850956757415236912303562100865911135949859831474644817174160579982893682208864513005427614145409888083502569258498335433541714268054587227469040295897731881855806353718295281152531447608225128652528919582916341279075057743749696126780 + 69728537587418436801731351104202375075413148826604444705849183741316379278336477778008749780417853922945500802540579889665457548464173178232542875638800019149145613638245893462073455619348465182208086871348240499865807061551238556196662116693525438073714745758907547813975013385383469536209891975629062412258 1 @@ -3100,19 +3100,19 @@ 80 - 120564857984981324941747962638798678911890598350314358244615815993849736816819193507576550583331521236807169704468731979188293212071320917852050436446938927215973092029399232335334040084182839533089293167034542686596582362373862152138785507048489762718277659042773568200478938203654693305750451022860962728393 + 121510506979280294475555951515618042220902760560244114936256082999728584045727004956635112530507536748299124440626763662691229078997534701112144714061943187836221268869197848804330480194827683432918373397308601572042723905779878861471616318688723323278134584874507289378643006693831141299214475770968077890149 1024 0 - 6931253855226216702082726229019879568408812238335167724938168162402957355824140125795575798405108015232153219938235461101102140211843747711425134583009380339463962425432993764600478760366114868892042504569437038191714498703477845748876335655989939977200538503858776176020115232343320744830654007424364957422376790871093904374255278612091846360806695155830880866355857081556989338049386630303992480203901552238771879666635864614942823475160328395649851598024524435643111118956582925187250584479891100869842273052145077667569496129962738605829132982826709769124357486451832181569656115441640771303920829738310701643482 + 10786113024139632806027821329411813376394553532754720801987724968039111307010407533206104817963382736081619149325548696301956466730330964812736228032635136704276953684675186717353928168908207991646217890427364048686875063974030706985824355230281962421699045683299328552366905159269699165524103957009454444867933959900404864269490872706826410124496941475156763365992899709690565996005427314663002306586630867555511772982630755407674591390268574657383503554640562617598774916389727621109632047922917491355710039753095981109590128724621251169051774876508599352543250242610623735912915977694004470585292205683411987663056 - 1547408525747782385878721687756966527704844152514299050519786083575933489899924096234213239446958694073535980775958095943755863584801133901899824071616644088546308486010886683519869148788215596482090887803403023270529211538357828109221366655028615673610109519123841260460059416441663493658764639163323919918610201832884408542339253226114270256897017951690060760640275848556384905248269033067418216028193826423531025206555292715807692101803929407066982833831179159622922353556967800277725631723963526215097861010091852898024841817782972248157985874930596284240920137834222621039122430701764496273529408269503232074133 + 12265742590555795337112275423316364429787893555390044392086577126923261211406720602521697557602273193373875148608736275687596912617522142724778013615655753700165411186156887869713064103113785395469589326430632728836622451323259552720475436900442662106611254613813633373690889042655646171787318060314118464601403569110633561521126654593291480540948355917795074477301644072921931428487257292688398864933361063951268198001768696293963218255359788860315012067953961363316647303672442047557272846591014095765179085873691505586802372492873704885031344784674827568416673317138797046556950646706136363400446112253168142749694 - 5983205571717586282867622811889452986210815444775894002054743437675055869900630144778323787996588271884487273946922150803615812045963665775874779643398126185754185650873544306063155504621083208420364944965569450507615369442187442061763136406050455691527431054977013308024971167991167080225078997906587742289587882012562174062353234425248704230813590472624352205954691305985505962905748797440429727372194378381743159891088522190919235627615615112684590371619834559944398617907684814951011816104253296302993138050949231086265648341220792035744547797891158269232896347049905209936169154555643758259376470488899088432586 + 6657994001188806419886894807218694240426739032031826163752185189756478153651379259613647431501466293577185699621005510312940659940692971682470467207220148443107057331572412443275548313574269510610111723871507751123028613421947573896683102294237228819014282010358536035610141132903740592832988179804731916594110990881555271138012621630576975357221775494879066961089995888791466928329693333653959455139590750223922835299822378978257266467888718801464320015079025432275884702211559419713554062931905121103357336135080737661398073037818364333687705160217385235403999082883957900512482523116414980755358445725487016341584 0 @@ -6179,16 +6179,16 @@ - 120564857984981324941747962638798678911890598350314358244615815993849736816819193507576550583331521236807169704468731979188293212071320917852050436446938927215973092029399232335334040084182839533089293167034542686596582362373862152138785507048489762718277659042773568200478938203654693305750451022860962728394 + 121510506979280294475555951515618042220902760560244114936256082999728584045727004956635112530507536748299124440626763662691229078997534701112144714061943187836221268869197848804330480194827683432918373397308601572042723905779878861471616318688723323278134584874507289378643006693831141299214475770968077890150 - 4336028385111726147815001043095701215937251679400249464731668584636841122187073549844651287375263704297608321911861040859240865398968411315793275495057442543634161674187583292972523057358303022975460123460973316240363003476761186104218669702937985844483808757216718994429378855063558961362272063389775774887094302093102088538169867756780017163724756017616992840918412434953159547643483005723879640892396659264613971961929529314304509552454209739093300578596121342350549600259933439699845561796943901879095696527902841918660535695939330902847200316672365204574795202496714891137126390505195181991733254740574997797514 + 5796895974172437492544144793427626883248313188238611533776743346431752971712060062337672102675596289145984033691057997756737899504455407414862532161716330517853997822442007830944642817148859544393139376525529865566910132319394100321123786732989942311506999412008183302795698689803657529549855867766592208044289773972721861492613052051296563436656848017662202314004966736562267376820710374444085150889495204445812366361013684032242122125275783200084255553552950197870971751079706748184976821223163847338132962987467483986231029156030776519302013622470367907340792615470661258486400540066173071824937985804725727465307 - 7111715156719203441579511627343093316880563209062864802806344276742499366464158817829138718775930588594218749123943787713590326860947639373864564282824029947268088349805860550108730280387658339981190232482623484982374439174834877116686436671195580514131470778427654725084924629124448799196612265828022580359080248927532900898991124300932285010863954221254827726392012299607441168423436461031643163700425820384325069503460207782150973529472882052866114136529491268932133627587055849810303416630873100179797429930633760363177954466759343655727282199980438264767603897418531060032264242921774884579783768607084722365056 + 9334132150899210655595588812755101315334075756790948098975718459582686698914156481642817789029351041195469981109319181472786979100849229198795661561040445224585835473352568655076936514299207844405611645694763879315234916931699279541384735429588781493731214524894392779314165210355489928106112093012441560956288322150222719475465869765945562698229929374996439045182136076768649193259071329181655931705216974675171900159485698629682677204945191805613337103123557869007218401870803385992752766657957727512822751282569474838764256310064650322668877568639278136933641304297309245221973894369077877640396449482840043170085 - 7594416920264591198246990827002814216876333969507908996382959111492475454959381784174004749315854372591307786303926241373739058438322429951092562629907810687835019383619418840558596533768375242252843494774218720637561305197606256889639034116996829562661654229364703748916037123737242498089172398937675621060703293253420944951902799121396834782171380734244936766937893161730433295210962165992299238940278476645656300084820356472016188530947424601157142119571397162364347095852810306018656555424218207019484461609598151813619378344961997581415589516523250920455797871447665870949649808840157094144294416353692580560776 + 1377790254071645059947324094549676487254515645714809274535732945222449082053135944301202084111214567282126503500710609291655107325518738390019266148400683954579791768476823262603373638083688673441594535337185519655360457520671379515665179956830347209351632655993557731304406978695219687532703720569445559697961932318517252513749339855720326967831606853651067972748586213693047293440568237514004939420549277247963684148708551273307331878538932870140325722762588995988763827156755069409002417932549076986338492703029818120064758834223611982741823551550973278205666167127739874368907487253085306159377733594944490614712 0 diff --git a/src/secret.128.arbiter b/src/secret.128.arbiter new file mode 100644 index 0000000..6a5b0d9 --- /dev/null +++ b/src/secret.128.arbiter @@ -0,0 +1,38 @@ + + + + + + 155690360652223685087311216612362041247419793012950651570839862615036822838103792681889321002639737704060555513308568386200347462837775352585553099505006380177254241050749568464020185408557664637812503731701933904305228007108939263680064462713058524782890183527115928558975188740111410351764800726576014266787 + + + 149998686153696907697719057817112285395889824038788341885035028186488689127555179662891176571418012051458009418159681265069710456919014435718938869536081277802577187700921774049393741471736076512253050433401185374434599013853315839042084410130776891219467973771837319183094764015565067195964156231506695394547 + + + 3 + 0 + + 3676489766588664538941997679342835114285487884344819398039275883431359468819547362972581155963984698510835684251460053267697014673243848903823085404902047992391756000709970584279309202477568780680478686932810685434533934117059753328119553201042498794148609095818579847428739602621744326102042928218891394179539278276592412958004305117469927189013949467485341577799513073637769919814362652932243061779585436168040440135455702292925738192394922320127974686997599115438580141652137915852090425796036202531557328112268359565203875332355523267673118147829016060708941830294989462739912073565729236959788102597607645896497 + + + 408762053438388852864047214144348406094296300075870525506765752284695519704866757649046084226309960418673086545743126118520169471609189511052706139694109275521055961279377916725037439620730265630019099075306257939095574852136794308418888537609923719515590548769721728025294072692622363595836924110204852251972392083647452460914097829403181922470442186047454654908886124999015389431448196363082513833113128143989011758957714779397621177873198291872807755867918578745470111150113019217149728958880323636864229142730645374316648502869229327268952586419503329102614123159330562024545385391152976264561621693240704365615 + + + 4280573910602064365711479633673979520594719775157117868777377949186886794222481253913226138667944103729552210746546762083178390339923675910656691162535066263743810010382411188077862026158833886978466030232070776950863308137089975691875007716027363871972459038803950218602537836674070199931513216878012751795392494451821390492414782647479746721880024686079954253877756717030499477463382393611580895717497541015595603873000754115493645782608544194116413654096476832674025089016432324352533604844404344376908308073489346338555506820230928647797354990519822208823179820283548810401919215393374851486637980532528076757986 + + + + 140087279040957710083700221456164378855270570577692337495484125626622218841720613841262707062936591478555618454094280655803432341525727006596519730751181454813689806618832698862831448885693275845617022432388419262142499061596350839831056025641245510847597415366563079109276583793860339061843645223895924667721878912067870336345140788174272533725470507517357539617809020306342261953817926422161011315724606776685530347549469209850924792001525515694565617163494755123673105799941327400113801887829003186801682287610724036653625804421417601851902188986010305379441499893059221983998071980047267038488068712648794302232 + + + 1691217127015437603918675899684993279754549104266891235043281650309240141923890558766807713020523010326398425780478511019449793983457761570645466946521187240250799298437051406147640782692914344509038399289212885321408822326774057123506680809524688715847331627873451070990864604870309415199497874833073269010906960587195483502665570000264196091440869402397235632106742756492029033310414768372311257247633381178825391156702230100151731887778329090295167477632133820197461356068392651012851178686928242607745513635300892604429659464455292860902149552096531076479226171714295396926495627535498027408185644110852744792249 + +

+ 127465945436653851322265878540633129153538529186189396396191971708073733838795758082483099421145280857825496286168402964846681021841161045025319313180487341121141415877667080973431815026375649889099833946739589656751908475287744650539886081373382547853774069718968749902061657144732312058094877239184822030443 +

+ + 140606704589033668883904515116475415403034206075333077119191509494317591517733751227546422701979166780770126587281117858142526577531409651748637037446156397893554287915928235091217384041600188180413944799257486302633448099824257080234930620589837646838673975029391246280580599437484317392377303986392419439539 + +
+
+ diff --git a/src/secret.80.arbiter b/src/secret.80.arbiter index a30c65b..f00d9e8 100644 --- a/src/secret.80.arbiter +++ b/src/secret.80.arbiter @@ -1,37 +1,37 @@ - + - 10282347821454933222114367259934963600584842331613258034979183471219458985301353069286988588019730544515940721670026399066894272541897181478208100453249683 + 11950762107909537350060952269521020645878695760193930282760603525846057587806554815094523521104902266848862172073516396515293981266544222696303689575679263 - 11486929698068003991713838123742033135102868789643744235934348692989339071682296444934992570666629524370002876271921671162450307785667540706284771187955059 + 13175783950272342600841924601347314399988046001945487321821990428621231814214489767799354025148174545769231329723983315405166911333852088488706008391567087 3 0 - 27576314348896240107935315148787601324999825534947770418096910443189298027000129443373204593660342985224137906670068716812530062952204086543882451270981361409171002899652664096586758489731826311646745494478079928696982967754383742490023935431297732471224094003773431222033011577711969004714859954567583192492 + 2073294799707653017600145110113538326076491881541614117155069117475770807788056380147172015008226254918870505627195399079504586518341255785418322476075347261809964780571883426558126627787563134374296616179709841449508701761670364531532017633926960733359282203911554312041013822982717389240288447427481400 - 23370310784392652256912539083514142000156427498019822366618404188824508148336336354578128893176737210382273552439487929149138286792047317962217410388510757439733128342711666933050005233307636449404961248127334683260365692535234736124017766101709424192757283995149305691379422722311088336336061828489627117035 + 32869779204267556481097979646175248862123143248406604586013185278235816782547762141511971743455189972295801791425549499760521131535722874944681895765477180087891797293976655011148725964783373960852179322296375723285025689891087519327148311046438493274309598075601966212871272729260992155581127366427603089680 - 28665211416056774056851382521483752712846263576458100005687280816584022591101309257856315196097533413659611167005121087395200754263475646770651687549485555122015099223683571062680661609344558502608586689081235028230875891600113649294366375194035407366147804579283395995888816217128285630613679619468877063872 + 6574765771239051510693575395150673141350165411264972578631984466590196664108918513128311267551787187021890904835602988245841793056951022092841756401312668985234779270034693340894544747106335466599232384082818857856277326796544095150805438065952231398688169834121612874031122346106967928429944978467439038441 - 24984185750096843857931258351198940277416948422038420854677388344673550155049614407337235309670644547658119218251281854249762860778789354325419475883236927989204453523639434801882711016828985336039623372849840391694580784351823299072289911467280557578995979887676808967636996328601018227442070981419961603517 + 20830196608545726163291137862504872988569216212697564417058132657171140003981777343448876479560846488125961087153395589954336722703613499422338069568951371123100290649616555364861908642298014457843621538152417165857616518248777664019971191724471058705408808809133425429464534115323644093725545260127901083283 - 12587858771911797646065646736656758746526526977337778112833043130079559567204472196561143335986013805974180245703022255091339305593737940434929801492824616044947827555409875489628143631057091002364693253342698589904253438198591804307310095564622260811267963449774957218347921393936271551137454576430282690890 + 30959894024025487399815803016677268168168848463290107105427427304865211257075937673941582824655085305788321986576266868035134816336724750617485986751447491347606598495920659760406490691264397440272616134889579708053813822657677648437818238806499736869640350363505868205375048374360538571959860296488869277908

- 12139850353136591772048403577597257332922970665698715334076815268515004900145884278253342074791588635537328389030295898413321402694938958474557186170624659 + 12096005960577363388999260155101637833179507043784036849982630910527682037172629899443002486906950113408067270161084188224671326426990944810878072329020463

- 8112911051666375987896535852127402223185608319363464964336276132344608253778082137271025372933175583979290611033445715930838932933598860911028995847306687 + 8903774041731621234481378127279740442077762742782883931060847898894971336062306473430985998563797951762537249119050564412958767262408804295089316397565079
diff --git a/src/secret.regular.128.arbiter b/src/secret.regular.128.arbiter new file mode 100644 index 0000000..002c81a --- /dev/null +++ b/src/secret.regular.128.arbiter @@ -0,0 +1,3101 @@ + + + + + + 153472649259884163631881425320990310679086093019471224583041269433385532327367735595927747997998168737611373607955128516302027167924731670755305282928441809343212376774120099602844034471714620511313976513783768260670115694166056798358519207314651846429103703103416498426760280161597001280861930186661666619767 + + + 155139567905116267925406367962087202075634988210133849726429070887558553212940671334262263820567108023108572926785633904429147129279803999848722333181812873384747775248238597397057457425935333615274699734779294324157412688052634761795967216324038637760767226006433731016745549129509165634479141509457961815199 + + + 1024 + 0 + + 3019895108316930302051173695553615624413801906204689248072328247437722660993353119663682796204013793612500637040323151528386146312849687803394818419967636699171402258708231424776622452328418922490348122037811269073043350439979461802736416337228790196768171657753602584615789021415533032521102872097185477230390032140503094610964364360246795298429002432410737683689233631549036530558067469922250819348128335442132230050356102373328734882478086574659929994956741092314755990531733026459097197528257508428881675627985077453230173752461286898316486921175054994431466395276596062231359140635692099270848729553299844414834 + + + 3378254740915529906931267919643713807033864450211307803749132898273090422186144196980645682442830882566217120548145231441778345081863801905673397529195169427689935958726030691900571821961263958501190649457486708354162149730686917406599931819895640365158758602481518739544725898441534686038395996594033289665618011942078798150055284784617203525513764380432308266952788386901005947342225268986675939976549665676963760150861808828968446062391752253561511587562120399703704731221163569778802822797732675160341718922939253755745858501448574542078611912757883247521330363725575853519064064152647461817195583483687575005276 + + + 1928287552529753709160269976411530093090868099353152219484079517356623609566453849203409306576593139873739695601286026148769530789646908340703525573108560510310530344798348650660188739166384314890425619728367492449879198711180348069269370520435887797107723180238323548037719274012319063415018870477399597892968040375528693442345853496102153813244779109742939871335227029191209676411578484774372934245060882604984449183682689279314267626138280319103417088946980916136834430989056397557938566559419932569988489810539757051500489976400808985256481360815228272247355658257283585530186405342037242239385020371386445727407 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + + 2202452434733418355736401619257927515946965948096131313613202986238939158522115971690336166150717577281662993522693416357928013915199682646960613342696896247407557036540563974389207461874936646505929592943366356463417943244601606549836730513680602390477071035293826242907985725534767788847174902955810129150294019391802368081389059451361775215992041870049697491383399206097092383881969135319421521555377838997844029944978660400660187003823430535420681887672251917552966093729435900528250186615951664940445266253972205529013915788306757784372403267171968750345445324594119932857980648673037697590014896325459427574124 + + + 5524151498770724982183809020412586751665332108053699385803524986446403142141120694960251614392444107186852541224988940064389086658655477003870861817429665338801743102016281689710514649517892405950914510450308079994847970558024238566090487011836185434905204833714793629172960626867168051494005930820824564271733647803502278599606756118558701691404561051203734021815274775586966165473017722097440244761715002960332650246298170500768302234106203920200820835904998418840500982486988041541869506935622736160150756001295521880920508636845250995157207773034690060723254781379190275219234833890679920239967309584822681280408 + +

+ 157059661353448561896999757217868541062890055362287145109837809192924578544053438882099697733167597276827844026931583313801087097913156904758863734656091087355590173679070615637072824227591634982136949366250350251352098284022022427113329570013491389654662032654883435064016645975327349591881942990634914697267 +

+ + 114286656489236912319210047575382363266546053021426398945195120485233067793895432447500075831667115002795709679896626525113182692721703475929718238828283466112989732668629294148060915018975724576471948259422078368341900130775893848266098277020237527259674373458459563012177216032497049483665055618611502646407 + +
+
+ diff --git a/src/secret.regular.80.arbiter b/src/secret.regular.80.arbiter index b3d4795..21a3c79 100644 --- a/src/secret.regular.80.arbiter +++ b/src/secret.regular.80.arbiter @@ -1,24 +1,24 @@ - + - 13143170417187957660470938716526764314614999982520858138330616413537957849879029023907334328885507695722907393486222731500951984475455784007651142848362699 + 9389546402921297587627049645265788268434092503338963492977327595532238933961807871220944819362533546753322479715354900107739479950030310351001827811230163 - 9173194454460762910538659620385629780501596413677481287851521098236703277029176205272438350898384179260440415763276056833543564627235251036946361489160507 + 12941041213820048005326563903335903511963884344433311048946244530033474686637914605177227700802400909002395876610026225659032555703934092684401608696782823 1024 0 - 16202643365771618391911125338654107656810060001437980336808887424425772297754972383209333510421686639802523756538939097727988433003188391972788988871384331742129451657084720040087027002621079454985653553165030654566400993391878546704788135265238084029718002909000444018352266047926472175867452305859467197869 + 4985122580899764308016543291009045351432340410485834641143997046182230494318531341784629894246378583182145628505794089122734533671674900297851335419555271433807230937440194752355059938665077394806899897086995732966335201711096579137071318924795172512717759099203468052253098448099487298954360992374532441164 - 11794240395271436725376772771251152323644279896555905165205104981546737137229265649614618521556004136648254173162813582852247045170379046873827360818326858087117766789999453416201976879373940813679639412763250588064467394920813689899308258704148207068880105583331224911952259893934935376623255655122271901759 + 4593017798380916808117102598593963776676495536836863737939721441995182560333040268481761163428396193592984583557088838042866220264691214376342562039035903424691865479144522392162696642929672904881406359255590391671683294386142432680321616588793522349184510007956525389816786472260045233498954112459620012950 - 24094659181840289375832479918363146488702754148915379150787630744504609942953350369038560345305503619317373466839289898488240518420228639205813354734297738701645622117167952896009381076471911100909119001870889738904545697081809563207317718159556037238235877444972358298370786496968875514247575916812543984939 + 5046860187275098808537211055919895289087039000160969924671798597186438018075236177205005281038054178876424924796279496134353179059237500004237553257389695949122651201109016834114649242455069501137672740770292651833617610289733772318934405113710644257808286610368501748739635971319619547755083784933024776296 0 @@ -3085,16 +3085,16 @@ - 8987127124980906595781131165060294232527198180826928135329250972599100514017375837789799328837035819916841989748856713355046154926281300171424839881413478659374822285865786064234713073966724487058656785865564258777006978678154097307519340442183501679184098565065246382775920016882022856366797576163742194976 + 15512069615105703501201070972971727879258238790865429468676370995234894726657914414800181461389948298692364798915968284935626546775620991405989016943536420025144257337384301549777569446149741999478277206437943449574035556507280611593129973294580187525571679034921117411820757414247218492729859502690092277139 - 29424262169693791573611582126825052598076388449903262987897330381075027511796727613296565125962667650334317356200476367183434132480556995979159584257829569807955609440168497394042675712806286823569222150651940737877603775080532455966070811928549739148656974096498263669449358797545125193683508224872460204458 + 17466794227879290150547031702573153810897503540743553068714427290654890175227727833912782999227798411664453979012321112101506750397292188099015366941797129403773875124552968633288106907570806387134009147201504002452150412804309332897008848891676261354033810828680083855498408368306717652980773608654460548925

- 7559880015594227641906889620140363423704488283094187347221729133243693715777672894025379442102091647050815289469432855855319751683773023003059175344890379 + 12939252621117348557466829025072698227591178241330747225816236400402170913718989815188692742388322135806460603057239236281647863437299346482518901810324067

- 13271452413567754187273414590927400852826960789987393665173541086007681524642920729367956489446182497753633765156230212188245008240822682653261079924225399 + 7329355688528414697446371844848994425964194917646002458970895014983732951555833828797559176218795748311711522340828708808952354633389340539393828319802803
diff --git a/src/tool.128.bank b/src/tool.128.bank new file mode 100644 index 0000000..8a7ebb0 --- /dev/null +++ b/src/tool.128.bank @@ -0,0 +1,875 @@ + + + + + 128 + 256 + 1 + + + 1 + + + + 1024 + + 90000278626803335022071328928549219898885302384625475495696392398041617532339176000781540756682863545809747716887032755416794808588346560036356164136120481509791718483984106496955595265188352354812499812418959904332704497109194612021405713759146559536486405580066561793963466329799894446251125233278254413761 + + 256 + + 5 + 0 + + 84952928249130151973298415363181405934425632655632115778308463282059463338236865931296101426297526563658948002184139200999561648482881839074260566238572499825086270525185681999983976048752950468110441838444302174536840077824800149658497720596712765680466487230694643780160720986569161115381394045270542636932 + + + 83823422347071832310202241797538871759236875794554776551486639777920752474612093767516062853883710596935352567774526909794499891200906130963998176677545477005366895241130475505211733945760424486160628732385405224275208066995806606801340910680568282711150291170703079865519290710972910144663841430640073036682 + + + 35849089841289364253948714258020208204685671356192581855290227852019018717483998411587574342873073385258079658259115340273378168186154479042131730008910591593996492861747136750988844665985839953392124822100746029014207531228044262221891487246321361562775577782777086133079091066696462712996192835906944242313 + + + 44993111468035458127411254007557303514163354764312226352950806441073903717588225250519315301972483469299887688008374022117971393356091547860989811367738243460295286919643706409540086559785015845310269696573602593867769133816054050072346574989513809640700623477366965793690586571852070177920494937227461227038 + + + 47782751121904984867222975138034478658259829592117370523490446306353366571924009941190387774146363339850170365479666714437521691944370239748413195524036565698748289347186014293129251732791859921500089288180751097409013466303883577937739199270126924794903240806647241648473248286304241245639154764388575161214 + + + 1 + 1 + + + 58833984347066500481753679622935614690148767231727264912768190102759804491277 + + 128 + + 1529732851269842743606688651498541651235063375097047922528069742157086152065901175156893928008071924464798570438896914537414484496691904452286113910073258123605413924828169154006478218771173871524710107131729509569405208275205170880 + + + + + 11 + 1 + + + + 1024 + + 141616585298119217169938673619272677876305616664907670349462441847709088908557544251515175474998451124985776273719472516186975914732010747332385402556781605861230647217768774351246547532123486873407558305048213544186544101822289439187078298382239897163140169395914127785862389362310917083618805462620101257137 + + 1024 + + 6 + 0 + + 123727109476116790943807606276979081317838052696320038195918991980066492632864230426852841587692914942820131088423410904298112220663912397253955152150290232236846510050561379085907165419811686059157224902031906975841439950319087019658750534314932635772345543751326282412575589843075956716620069519309950766707 + + + 16739121827871785835444215380519805044105898801943828077420183146702251620562505157459967480939750191428737889787196437057661410936990325964940540163810527097601732711128952991104601176625485059333229818650182275857725956838887432973203079413493497365404762545005809784649881008806121874429232135314954947917 + + + 97375614112970569625132790069438867798598419085320275283540878783046350758057833265530242045591945091677132469614875083251494123223089424487413371352813662970634592209020959244089334944705716985296045040371417323190053606559785249013795448858403251609474416639759372147128274432987243250064036746349255269947 + + + 114687961738740033823889195608051804089459927982231308182683629888028268120493097845984745816632701845729587764997735825504425814728087113961943899377369172330181661859437490500588891277289700129684963041235091146245110205297670695195877570309282199688173517697376859702369996333750969206200170937896165130673 + + + 98956556245296456584577093682467520726488330699184024849705470892885919464790997973099467460411363147058204306005745127138920560984804957598832063633882251526703968694422432450762300036047912913590078648344136687298222920345966641507711224727734216915549548491251597779292132585329078814277644874144204440913 + + + 8218711316109398818437555174328187884834609897538691761989679256437380592327815751286455401090985919653442559863520717095645205034753676592015185588845079128092994088741444345604130626340515428779578880076398800383782584834593428970597993920696951877096600611130564303813235201917584729022486546946822366933 + + + 1 + 0 + +

+ 0 +

+ + 0 + + 128 +
+
+ + + + 1024 + + 100677872533448097220099073817927225589055475630822761961661319507436767260247962574830306797547399857781154385436014063488669402763403415091104567315393691654026955705776261657176967138613165736148127307375877404250329399909273377427494681955673966773158210439868638545758901431523257149533857118548573695153 + + 1024 + + 6 + 0 + + 5839377183160546196138319897119413819533325290939250174575593045995174313475312205945945357055929040779579042794701761682029074264866480789865312953609056002821973716478508653340243227365822718890898045365725287867056213748842174512563251603915175595564725054642781273676797433229430878858389245500824743808 + + + 9151338872365456247032717330023984817312003721470040367866914325835929050847541512893356563960746271338592363780657094336983072614756949921658742346136022440773075267625363772764997118641654642047453514303934687316270160956126363474797775317059257977306640676186579158098468551494846968917059541160224014758 + + + 15860462078020594899446488453060204383074528911840636642395812152658404384773630788846753886078318028031717908550692048913327346694538337028843405557564091344380651382749368521326303402847923001644830121385004337342100353523944772816711424003643263838603214628799049788306385167746279563912796396209660261753 + + + 59280453386284268103722404818421935125349847117062067877062879155069052841403836024105963069599655887155452164105099176021228094793764216693782009423613079455095372318275672973730755562706833809477508488161501575489132985770359851116797381555522798604015448469012986551202142312190104532872642555400431538917 + + + 11959326964505022176122057605248516896052345863763775335139405757193376929752494791885391469975876878766319851839438096353807580046606579780023620923841047087539991803724304310957287998745435684644513096501010121155383206845327287587823058414357025978022388111255752075553240302618911479039393027325471320781 + + + 6177579976638129693210753607638242900276262970293481477769650385199343455249855440373112796330681567779910729221138363049080433151875368596183841470489471223925643244016045037076031268774299214810121690782623205005340682907161134695923622607473741383050943010143072228547358500840387692910435578143502761692 + + + 1 + 0 + +

+ 0 +

+ + 0 + + 128 +
+
+ + + + 1024 + + 158549598880497910400619284184066653665884514457464725056768436866603595915335001503460851844850974358715989372194927287779149005186564988331891384665053217634456737547126364758858138872586892253255394750999169616944724727592844850714668934638393746312666960759504183331319204851426992765085999107926643694481 + + 1024 + + 6 + 0 + + 93135385672767619151614708098349472889111574862403895832900403488405262294311700071780221413175865192127505467287235249436679093528332912073950460319914480237801229576091653612981537747710960008601195559264248334535596264374321659435352642578799838762400334615105834863748637436012737070473309049538807423034 + + + 51100805918688964402505526106672810654026246094743783076423842041266350504540434099536162579888280257996838643916583635000431040359595396270367484548169882088538657541370581945648014016634266024081155709079844574500049887926900203053504468337355562894716369800630590510955477576372293377576414984286865704516 + + + 40954138852584501330557995609393362851788163581790148849132930469568667958967552504567618785551372519169424010215341566815088956328709957140638967201399600875219375387078406843464165429103571413475420280161660676675443278274258717907664987423391379274991438613260930984339735930912060988881640179932205929786 + + + 67567910533597432321299232485429791401290139019339932236975647058342373771138400522776905613039749025127200528960954291337962462027684428991102623967412192986506526414473491728042679629287568729837940385955692113018499901903221157048158330248546449889241970747356866640637156679384285844113917011752158630971 + + + 73237829702573440741759249754215968389862198041217609745558420493153015170848295065344233533687319549910089232836984105194853553144015141580533929822733376074860918542845474984944112360873464441170015339755000503279087804538873573693087194749158449305674497676544329941057553745545296134364423900244799497350 + + + 82179444756948194708930468703603675936773896864340106471506598591147013312113289913205405582188002889610362402757220689034199206170748124751053730159295889149537374801068158132723024332374266469665711966308941584660089635333076756110609522964449574631097337185494199508229283997828204144978253951475448199211 + + + 1 + 0 + +

+ 0 +

+ + 0 + + 128 +
+
+ + + + 1024 + + 112226024163060325842497082935242911437822799361715040011764225873823841843362665021097286568627125826054818959335508843522200127557421761424207477974910332835451361279761825290721561724151982532242025782107278639207167210365399280901214574230356879066098545048360997676978954992541835427725637711352089258997 + + 1024 + + 6 + 0 + + 71239922071560696057686325157017099561452940720553826325791509522173483093195766789627023245511877959611783139495828307887148219033725560935896850524309494654992978845037383316444089224033283522194927612931729319559092231538361639065660999098247872642416122519724346666921704520413018260380294916115859324475 + + + 104100661273376270465886769879169851505531293946822966310792246023467407855645974808863782309856374904477476292149951550740825062715024964707645151979144037592534671919520398388018624170324976513148395020892578490738063518282942080270412870732319083237028161450116841595726751222449069356050605483543771779243 + + + 110488868124325694000473049416595622980239420675299669611969175422326466813764904082172231659718170199735458215194796472884939819081256706093075218364801100605862923768360082238898809025226720468034843518384983904015745724070908862094049352305342943596509289086463976573372882658180863414903750573928633852267 + + + 25410228806705654077148682147097332357839890944247165564190684922840298388299867638438827012677532576086018749376404828171035283387647200245053023769111444077837804914597953847390409288178866420637004013666503923354082254710390384221283970252579173635674446010775881895161898242766536161821771080834657772966 + + + 8700465729485478716436679387374808038842851134149874623524593122226981420347470308842049813402269673151224856853073297143325064623726495354598387296949669243141564189391203779852508624676043820972832102539278773465602710364558074063858793656203754150771289330924164853335287990948557683276550122862479787734 + + + 4590915121025968668304639606926756883325865873477544481474572578490074803478225104926374593330488341308936918650623315112092392991210275489461309706062948223964695542976508808980472334651279799360416574108887150627444457044425727368708654119214936977048615234462350878487398563250522004179490745502733804427 + + + 1 + 0 + +

+ 0 +

+ + 0 + + 128 +
+
+ + + + 1024 + + 110508930023534740162738784191716106396266335164397270938431638503656165107659850330942905570953139940993657700596611415015607996088094999591509442279914455127708604959099069404688874088746699227873907624992382646997626069790294936781645163137238191771425911876338378552905914927709093135968272189138379267781 + + 1024 + + 6 + 0 + + 16190252281963301459787670341671658629584528013767349213762859480468912549003876067650185735368277305827860774447519281507342480468379511248984320380597596488155420581524852768209199457326484571591741160741133450056641461305735721099040547991891766427962276214315415989497188352902633732196066899033086212891 + + + 38826277848371273930615545685144151653881579668858046356703460477374467440986812234109754499967493373876482112740873179936925901985617887446499078394479826073834356951775431338400653339847270609580889890760782492450607831490636597980084536315344012754358523394495776843986421653605957824956062545579741203078 + + + 71646312009953726585550999318016381728894835203227651601905196263732648675495704743394057456680994475015688133021194892503509352062802874345113499510264292034852826077782353596162892893546954580749714902607471358408536121219401940038604527833559852950095486320467926298856159034774928058008762284219448719448 + + + 21874682139468327413608068754387545052399338719612361230844170368285314628799275547483736572943076800516046110251464024901652994004988699192583423511184828762535276498355160755435749895493906535665270038315334007057838458556523945211028789483453870687979556847570031469514412547221075372398639896255331415712 + + + 96485886870303326345904211454959767604603492416819624580214167931710430644807998515456945236664931372874407149454966426025549280311056741149653492504887840522444962154099454509666362392794676843546287394031538028146586973611391186630631976452692930091569234770634565514877707049005506297517217351335976772644 + + + 12785877239137418417784292919330214786540476069274047307555303653719482893838360620072099761662940232951539617367229428631511122705967065826801788799962011105574136753009905808872237581618957162579208042634433180768694671453748498981034084039730230512577739611331291227312701253806873170015239680554532602932 + + + 1 + 0 + +

+ 0 +

+ + 0 + + 128 +
+
+ + + + 1024 + + 114320904105962694045397744642742670738048257184310093494555991444797482813541118111089781291973630159615166108623145340076966157058763576254419730586523987064937573255477687360566485912548770462482964712896247855433748205951273000550785436521127560965961207101500452024629042283206406224736658616285564030357 + + 1024 + + 6 + 0 + + 7634980763917251336810352442357448371998689864333667880034797625983922573956604927507091153057925834966557368153665350952469635289997623199645010366672568755268366132281637350085786040653129895114097176398518818254163092526258937460259952070799536897171676497277456147895219443314951763502209309659091052046 + + + 39513914270257186999045123068986181195448982016797938866373057019566828837955513133438599189868275845622617299770436258975352809529287933910551502311896583318371095881740366452813502219840573856677630193614218375755742299659756715459463943851653507238741255733611459003393383900876162248979536493885002255277 + + + 18167369757222349874149183086362367126461854444912423618804351161500550590220283466858584901575245048167478301321712034958573217907589648518102523082969954103472047111844471497564088614618941728636204609814701518261137512280812036585646045975899141794125470429012289420146864294415569547756913918243318752134 + + + 115659157727664268206450535430401805063622559678330348748619885867341499736258484564346053283108051768579166247030304386659132072868555723898339395057157927971925643873235951706157077387599251633769178185066973826635598142353897168084539609732401905046581761008472697206388538828572770767797878372630530401 + + + 3426664709529533437391571211205253199061329661076698960247127381685666234868514959022963068658977893643991317246165092367331894188404086082503039904120328585856135644459126243353178497330006112686726485264532000169430991453593080490018030232649130523173383244316414940044730285810446847065836212299135305477 + + + 9720276364157748428375729186584353075775686541908983001018862454608298347400073748391355173902141296635314362147841513011916232556770801476014443006534901959642238002225992691396906805833800927736878352540861324108974447578594233665142983632777115139851230952161253915149829416505746009019992709649626348347 + + + 1 + 0 + +

+ 0 +

+ + 0 + + 128 +
+
+ + + + 1024 + + 114018788189557511817784680777759550591059300446069489825990203391278774682846379925121383247445026704680855939747076538617338346952583982823150625163847912360243751931641735204142746397358989487244980883569001075104105660503422089073982203603946209495964255659336268090771693239026629518847066637797329341449 + + 1024 + + 6 + 0 + + 105771865854712726031661312805356691041156950978664071233717840702230721173775166963435908803130293365277028420399947505708472971343434936146777505026203385690681745673746190215396150188524463510950391373552417104994016598945888250670295709770381365086544152932230892285140494283570873464274417511277726277858 + + + 56067960422996654785503196659679662304784257095572295353596495065904724904864214411957167404534503933390444473647257997043968292686758056607523867033460296191837077415497301294901578368869369840880476488916426512905326045817765043732231060238810512889645188362774849394525869257622061386047025902399957411486 + + + 76555359344532961834469727383761748263588667663975541670526178407628858671688631277865774606980738342324272796712506007955347037594215608252218446487558094405278068719697426233828695948978338404991606284163255665414548757594746306210665091019929309221874628420870709257137216644157695962606948404671774530883 + + + 97448860338293536080426214067977203384642545230487574516933699965496862196802646188108694813109456872158119087697029021789943723211502840824288861022543499621397452299411423155443449323435716318577089161392178509859404220013166899433161872516817639102994784126761826914611504520508993927516110127071353793555 + + + 39333754459659265538526105439959580098386355384151393724409360053973465878634502742658655012636443629348197646057376691378886609795106875409633567281446864754343766250188743435873546886306344018718387853638437800170990059987019086375527632585332181910853736306151318161619900142689696759878795420294633150799 + + + 62340770600149789755116185666878218403396738536592892859569892681203814186908713160885886348719267305078966166556976443038011866368088500335522559518997169439834664718165286652304289398463954725683679672008133900387070879967524926113851148447956549098233397127209776910303688311821508750738841808688984022961 + + + 1 + 0 + +

+ 0 +

+ + 0 + + 128 +
+
+ + + + 1024 + + 145755358828725794629657224569476512892816619644030296533983977452645470112017832485255279476798424646174051887315858677594074945302422016021799731467824127362191624021497454803516739911480772154941148324780431861239176828348183403935055337558417115851468054465579102211659096249603340357997186792408089510413 + + 1024 + + 6 + 0 + + 31523735331381975048528908771169248998373451704138540195275403351002056512371837911719890574231052620902463198358325054233883049782594600769036053959342191289602146282724390442412115041087052203520381288237161272062714625554850251131909886563148460405270347042318069277356651515553233700901811776733807993221 + + + 4856419463547700820745826759190793841701274325485230250981359113763415733004485008713948552664551916489650202249096660011827581814591723621885087405965926091857973706384714735525849416076095340486432886015064528227235173106098777452566208591266769671595049385254386712107179341222797766180010225291855300476 + + + 31126278372771606359234231911014554624034489388082366028676138643722940825165929165067089166398251984026648502966591171726229763912060018724027658449621680847861758655071966344333256823776538706716540300966280411627881332015355120657749891093002965506976878361398644291178038284164057680745379443782519744074 + + + 14505227187755127088024357096249485912310033473904690580573823596773137142463129181272166831437409332235014325772035604544897900780170315386674110053799130639907676517366386806046884983510700934353166750867929712932641292497154893019775617644759290075202353526068537558179626685810937288374235411056904506462 + + + 12591770697879890948400188490168447225201120882113455897093276083809722399686209674637490920508480142532225013763006271486178289067193021951259921168690169086395720351413746928992790068800280023014140030745978087461414486248827420092302677283587910768747115600699344909469148345176919368048135713450091879705 + + + 61963811858450059484094292226459874610628156491789118681061770657183581668334089970264680381954154464594402671493337174367454195720412385050194560857225798954395231201367739182412366239062972376674861346887183469596295917970740075776709065993546490082814731595048922758051526458335652593747622887360146590584 + + + 1 + 0 + +

+ 0 +

+ + 0 + + 128 +
+
+ + + + 1024 + + 91159619497500033197884536815445959810175409515386487837855394240105314257873356934593868632132878001605281568188244384557179829505944147504880979013467676016416235398009487473343738074973916668769840200013444982872977779907890602171748578135333184461760418234539076233954818280793933041180932968884490908269 + + 1024 + + 6 + 0 + + 851568058585399899937372232705434423536952847430565821565766740217001032646042191958749447838500427918671175845515895824168019446995478001439311307050713185427794346680912504202828615386316667679673330874054783503489172070360663685622061913230263919551874901320088371742057397260601282646611223691006443751 + + + 32853481178481306662809213899238190730085008930191818876938337647623384172585236018500528741630068002074355773321052999161717874566115974326843836891547682882694099906355149962039196672446849544660965770031512758879047559223876646292061992711486938453084596030346962561348683900323712583330663562482221197252 + + + 34821630985221854261082769032381272381889335079115317454594613279201651424060863976307958093345069887661788541272077905768279548978092749172436991258111611785111031639869013335062241661177501133089670418516594765359676479830500698674545744272864957111745168610586941119390624143496100355537247102220565125639 + + + 39701953805260571638469049449691835239853134691939309256700403354554836879758252676652302276665164254297831698163047921022762575660356659994728788420610448500042959049629515326684247604813383958855794143730808203410803226791390099230252998419624372655348850970634963424417793986834969073688135684887367027883 + + + 29102816744006481949922051536647157073416693426053833714560784125052861984877696461610084509770379744109649790378172039960416596777455186767557728516511071122873283107812481567613267778992249393262570114077799095283611024119101424901204459337010870960869064119548524952731647436544574215554906082308834659921 + + + 32974936530171477426558926657295070590730606099588594703485031901034392895235354214912037047196552839479577074742266989855931041464052716865470322846484487128028154869801955066047347108551355865253253586500416370694357777624538379474512556176521939937160375514993050845196770742383544826662501396150957423109 + + + 1 + 0 + +

+ 0 +

+ + 0 + + 128 +
+
+ + + + 1024 + + 112714347547092648743627817624088578213968013751572306140005777569417788627034861548627030618210536511972670209192802693425052532524071823425541785153877392095531364840175519689871958031940426012176629731724076153477808129684217007187843243383002059060567768991081310625185556025948667300903236326347927671153 + + 1024 + + 6 + 0 + + 41453190700847065246269778898852141912639219706248915701165628007851815942083621302391511900783289860613782906294104422830007190688668507600477793932716807567672278887509305765714280068794057434538394015116339344703501375893423066377924705073474230723019195711249481995028512130408101561137355440864266889011 + + + 96415473406497856667236110185119678021609839806444362560942490898772794655825836680251611594710297459293856136100308291899266023943624303948669941021882453080969342857718276992715105728166762740103353100224946268582284532435394981387666771302313544340616355675582128146757985518033153723015048993545771680411 + + + 5329771000113845362591261372882676498247347752026309010372759444191286820466993656801815402621479673604280095352453435140876825130762923962832777307385134557257387448392537204029000791203936139360913899555546748267799257960246583213855295127569947108519594262943400940582226834642581611875182359279188137365 + + + 70825465947181369379016766145109007631092060526829443000571323931479984439416579538946250685062921177121149520176090390069424053862437014080717521460006192745939354416571922457649873969883045662320737566496738458149568266569804262889119363706737911970041890864991893722216615934529285708102659412333240436514 + + + 73991179277760330038195415092823191193387632706282678107189783050146939524299427404575923452035567234547018641575084961229435181302012865072480304587370096188699743453085613121532257939129709105940300864243324811978033055046100048427785469341560204912813061289508780279815105705562417449080508228178367200728 + + + 31461687701241355840202272347802592236794985127490032010364094325610277487618212189243380506649234733982547483029134406617715040782953181897339929518135167288016440191503889749676267123243816545961641823288904946612888502090166210728064150949885531980896752883252889154649675823535367077881030273857334448377 + + + 1 + 0 + +

+ 0 +

+ + 0 + + 128 +
+
+ + + + 1024 + + 90709850988183634883747146504520812305479616362544762717264767624480713843787484468715945022848706801815793588306393524025802655805229453394177222515245400623164925000957490861514300185291366427334011741079978619317279902405535111362511891805977098467575343342798240483468745456622946654384413405714727111049 + + 1024 + + 6 + 0 + + 84919799314745735832787810125873543828065655104516783839565647691248215516359835680325809877446500234093245505337708761327514836455069648943537283941371069748836618942896405098164011082131455690036708374862628669201291724015337105884416281199271404498957591588666105937717599340402548102129688608671172346488 + + + 27592679420801014730715929720577911639178387223364096917099445894820948297106503183856084215556731845565010736083520611595677924955301145714878769981153202834608139649181574210484004057187171534099812954364473224451272658221245570585294103435378349057982473974869866578077162069304472547230546020087797051297 + + + 33829734038452341058501623833341351574562143156927976338141417157628211716738456683032489788533911482646850127137345110538297989627447238997872569111103407878351511889741396804506828238334901865903850154295339748009238515549751976866660542500739535545983390456708509155386761320270406660928912906646720547244 + + + 11124479801627523239560573811320263546870760761274494405626513519688011602709990162807279614911932381926257437778864781726042301387825810466192780508342318812522861430074353719597599129926767958390249454965081195805817855672203611757794583827186340414504862159428296513760018549704081177357871925356586429427 + + + 32880992540294033643928779972503468005205696794031699830392654616829919979722756470717860586107870645791429893323265370512750961837989273283871013146249685784109354110756530910036429057128129752940811337653870209208256903275898953200512500172584636259421754371306492955086813582817806744254291489143226383387 + + + 64488809336695391318011568983078364916500775881097605639096343959579383387461043844483578842238766681280882600828703088524166085956024741191119425065692954008717449256641788315388984961945826338689782533654764325185225279957376013706222894155012908069205181312321319521791430494808333769902714988147244616292 + + + 1 + 0 + +

+ 0 +

+ + 0 + + 128 +
+
+
+ + 11 + 0 + + + + + 256 + + + + + + 1024 + + + + + + 32 + + + + + + 512 + + + + + + 128 + + + + + + 1 + + + + + + 16 + + + + + + 2 + + + + + + 4 + + + + + + 8 + + + + + + 64 + + + + 11 + 0 + + 1 + + + + + + 2 + + + + + + 4 + + + + + + 8 + + + + + + 16 + + + + + + 32 + + + + + + 64 + + + + + + 128 + + + + + + 256 + + + + + + 512 + + + + + + 1024 + + + + + + + 11 + 0 + 1 + 2 + 4 + 8 + 16 + 32 + 64 + 128 + 256 + 512 + 1024 + +
+
+ + + 0 + + + + + 11 + 1 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + 11 + 0 + + + + + 256 + + + + + + 1024 + + + + + + 32 + + + + + + 512 + + + + + + 128 + + + + + + 1 + + + + + + 16 + + + + + + 2 + + + + + + 4 + + + + + + 8 + + + + + + 64 + + + + 11 + 0 + + 1 + + + + + + 2 + + + + + + 4 + + + + + + 8 + + + + + + 16 + + + + + + 32 + + + + + + 64 + + + + + + 128 + + + + + + 256 + + + + + + 512 + + + + + + 1024 + + + + + + + 11 + 0 + 1 + 2 + 4 + 8 + 16 + 32 + 64 + 128 + 256 + 512 + 1024 + + + +
+
+ diff --git a/src/tool.128.user b/src/tool.128.user new file mode 100644 index 0000000..8963025 --- /dev/null +++ b/src/tool.128.user @@ -0,0 +1,49 @@ + + + + + 128 + 256 + + 42466557833230605994405638570097334820843613541727034581353940132570827998224 + + + 68270668044144095275726670918608038909375395196409124680757105547929242832825271109482493504281570478135988413542702600891854071063212506736930806332468126469503356929158429601180534652258436627389806348897617930893973109934113436693678510669883778536797354503754021484378861027433976679315826436713553882892 + + 1 + + + 1 + 0 + + pk_u = (g)^(sk_u) in G + + 84422461049440299775442491644197637218422194625556984773996900013470412970454179489588279722531869559267506920385575354041284165925774811015509161856319048828469037036964593179580920812775849367337015916873254051057450028692387229061357059651051090156024351724359703820506400048223099372523067424636149837706 + + + + + 1 + 0 + + sk_u + + 3833157154811092374075778369981150502529457413851881779702353601855164446850950241959865058289567164072522868344385222673401251322717164651965722120516572 + + + + 1 + + 1 + 0 + + pk_u = (g)^(sk_u) in G + + 68270668044144095275726670918608038909375395196409124680757105547929242832825271109482493504281570478135988413542702600891854071063212506736930806332468126469503356929158429601180534652258436627389806348897617930893973109934113436693678510669883778536797354503754021484378861027433976679315826436713553882892 + + + + + + + diff --git a/src/tool.80.bank b/src/tool.80.bank index 2bf4136..67527f0 100644 --- a/src/tool.80.bank +++ b/src/tool.80.bank @@ -1,6 +1,6 @@ - + 80 160 @@ -13,37 +13,37 @@ 1024 - 133514169406519291856741071482152092986830711653805432236049101860748679948255167015586973279637205031175362709763820655668225828023894758021880067077065504052565748905906694850545234255047042654145643283874645230503132929228035928153484073905895258887219253064882319961297665121131916709880607734650721226103 + 102680714876620505251519589456529850089969700556564489253162684638539597335736793998411151385396668678457395604056076455447346438315008567850445832409559094642617108516105196798178870587832997740211486024550117558968151215813802257578385470372409470175519459389641067956632237921585676408120047405305262039181 160 5 0 - 94407493022606357864805633027122711421215663077905008263774968164035012176011572617691072943814994191148393051024993721835315521681758131064676532643252609770612176241071149702914553042913231377946461976950086431204888208745392304208963757933619019425403873801118477268077877896621571737928518011990140563529 + 22923320959192453636423682385738922848216151492993760467429386172337582699603626592667966029063069617300543105850468927060751138940226489398256413607978816318065423599404211058602051331171774528282150565237472007558045410089374975467684411005456109694572501365211023547108753818220756570663968723659519304097 - 60876396496328682724097189067742896920729147349048265034433293478584151028846489695084196248986066630031991356096243255322100960388658243651677577289640120725516441620242280434129302299332905863156247397640098201527237751017533828511235119313794130211703569638743646227046196461621665179029678407970528688409 + 53945843214081887230506825685162514221944851452590973433147320105768347799035010333040104182762421540976644457898523154200390719416111152133906850059276116624692455403920555815325946146027238316284576081046322930997100925534589898400045746221732607763907326046366956881978962788748138738898197865947329746712 - 16121046626221472427047751773363913362974048990766154828871688671127428775447979844645572385001509702306477295325242354456782158124350935269066301880960134943074997659934554179554195604220270207074654587462102008232851521149184541486088101866695754053797858201040921279096905137524685107305175160336906418452 + 84070450444178810764801942593139363675201942216375234211388549548441399502573647392486982654665114331690463175765687779989817013063882187163233753732167024252613425512245014453169195391341163601305650730846456990348521068770085139213305228501503975315987245346014618040731218552889355850011776660968387243547 - 121141365231466073732580863259433586249476061813949627712529179498916008769053166588786965207007787500705353318146531687568175831821291010939781915466584167820414666799448726753535192924031547862879268463002905040503696964624426975606423366915257680903002938806600630068207161742151292518910647295361588443118 + 44698200531549202972232618323671999010830294896874839743157702137836602383560583870323823976773804259743506237545914357368122833664632525931647018821826400373691255566854594204199447306752422310463080619172699838408810456076477752430884838822369737010719356000558487625372180909172327760255616921931423991248 - 33224314461995781736519314217203018617785247730857387776163308491747362205194443026254482638590245033389225074027255480484590167701410741184233295699962334880861393829214748659537994405489406434431530722514907615173145959919085846684149179289734587238229307522746341982285541391125592028510085508219582487692 + 51872694200042776418703861731161005597647063174327775542825481250710848362720927717796283168056945768526737370976647132055902410582742570384884317599347064382929720903764261035793509472519152983496873672379499058845114238849894388800999929829175350045958631291831128454260459997110600204624172747502759593173 1 1 - 1316339470914471129151760768523498072453239604329 + 1381926471275670696491547928550620506717346803979 80 - 101428371903006125064816550802147348331863457871463502755733431817197461065801788822033216731636393277352980645348510209962447083315259924556325636320920818893079058726763004376179447886097544377332981309377503984706350117896307481213330735384282162062083570438 + 74302589183225406744708406598986697445626235129332961159539629660099003864681279676025057169598059221346100246653275027988998552977043535171844663879396255745429680604118860556814772359887881646573360468171271074105943974872534642719266485854337939537007792420 @@ -55,29 +55,29 @@ 1024 - 117884827860446563781748820406944154868475576600056082227519892174509471939864928225082965627109723952518920653247492719570823152187792896510133067342200887708846589512704292911831151048649360382622812569691999626824883040806504671579138444829886940892254765946039569794976422303781816507549109049679998239933 + 128057967809655946190316507735155452831314572900315216081434860144597217324346737671800302572587640910078110732912465466684478941477363845874613925338791275068167816621932721309235605381772586248486970010063355049965746801462578755831359666996420724229475198439645105729191854361248312605304734475323680662913 1024 6 0 - 31942355189938305852400278253491349150729688128553144232246584639541711212090413545313826597682193557038043490057947105939176590836354753386733329966113979903437456252437032911749027125960613408259246704939227078007939748329163439671977914324835146281052742998866232945211038725583265687929565458344264054347 + 60811636929475187479807521649087606074793642064167945690350627603203118950323257675713133373687111123714663109087066267073458476631246485001894677569393649603260477149691339449729864039552273625864812610179069562367245786370215607199308088083101677805342992837524421920973047652387594443568045299878715104011 - 4550021649489174116472140519929523416228107123011278739084333317553282015055539078606776876259628738087448376993801193251451673296510925225577265203286603857602536786561404759589364246308126556696956729928635529542832761098354583198224869243960094566241455964353338979039983428692851228856978392423794950949 + 71560986262474260038579847733152867125395323692136727882523150181177145526050032346646815633503819181049097447083396963116870388315714388861158191811280162852633670260478236187402519672391362381543748430716574725648848677812893437556332455280083345503039177361800148373565541695573258846852919928924249154877 - 98525615558768553523914561253376055119761542268821255250597253028346424125130350074868274485947435823641586985792345325497433954872969407934951660169794190560333173906597212226368946582250749168564730926579316927997191630230129715348247908903813833686806420864813754316389284017259958075073700483383393704799 + 5358493014159018151110306019414188401443366482533390828878588153924237270657211162207396455592545292115596564966717448066974022571552087820343845293928484045368156700279200787884399405557838594314421227423879077160333472477688129275324340290022874614042967407069455935447388415804019834527557283355835583238 - 89663797310710481585546636879600940040870845166614120702021429261401463257347897163074462334789769421900452608925911291895572355565706941920835495798437301038956908515027090193540437888963515498057343871368193272565241944254509568583688844659457132999087383206998150658836175132856858909250296732497537741490 + 9440403911953510704955609199118462522546969159294361115679964001969095067128208202978671380235142495494192920664243060842431049236464627103331285996753378993464968648353139689202039972946351834805543874912252883016750152554402795151625609573033493183190907610839726606922080056808873159110535921110839225918 - 21457799638701886404948321513754559680118192619039196726922001229633285404795091272801906087942814278147982783234165733955591079274024965234492215069316229534452749185795475149435384522743874369634225464873507029089660645472377290801538517394750755050835750498882822488302061240043291880701805970006302143093 + 34601241858178235153992489154363566911322825930412755051942961530163789553279237024169967243263931210587905323687670939702730687998131084839805896091785126613296047470576600055262500331821637746680489652121076447750079042944735474064557177506619768477733608759334395601504750316910835074596407622363931297695 - 24879191227362488219377381481381577049957493151049769929102026087396701785224290633708100552404086846452744391838304415822891188453192492898176159610061346564782016034128553619840613515194166673287601988923324419982793733683797161684438643192675577287333186394307864482202453182364510091630821947512259705046 + 103450953660312905541961327136746359534991486059040490771968614429013794227835017626759804639288113432551732347712210332460709755012800755979360542019454727242090797411218789006851073710562599252458946620552051918314153874747184637728072116094587384838416002546398982033848043597058533784377942968102172250659 1 @@ -97,29 +97,29 @@ 1024 - 92435280162899905227818541573305957665639782478377037313648510745437811817555025601483783005628430969232699108353806975298468602730274201576631930706196603478050594879475102858698719560485267244320059109718904786781293125558241769432373971408541617163594457153761480240604957087650552090980962289898118336333 + 91338861134529173742636614734321283317712406433818139285229062454925111527732609262828687047423080667973258817589805005737017416371360314088086808443898371429020158735259589920882443779130428607594850787634565846387075036083051955856286100630464641033224957452092909212599715224401427904042049536509604893693 1024 6 0 - 61516019093539692013889522697286036751162217165758828070676191516869766297678416976269631962539278818264514649210773243551046294938085009932344325798670899473301492122911085724309342816888922377412459516289367281872129147128430336758646855410421759958716822027587807362922711228417719722839395907964513862658 + 88481512963655310506095083872998303955363103665395614689748950761935149130592150567352051526842435768907883513122638406071951993833483039104880894260670448994086429616644971856997369229550170174238792300740232364024915015016653492885640971890845653859579668498528250516917066920672069528744730214455335881003 - 86195764223387104034899139867022229450119089616066033008791071547934482828715292874302963805552889935464649997789968881823966010789216481131065557800140492761661914684115444687908240220491740505876075546249934530273063882017882729659422081016447947600980580175537319215595989718394304054636476498268020887557 + 71420609539497237732868765033013438071208066944625734387424793864620282249588182875061993503837717471514509627177747945260865425509223920765478106067601828682271744524355493795121669193837190303641492443480194307599715826281960573836394123684702869297115710345424755375986644023739445330856168082010838417938 - 66090880709908820440926264632961239993160670449209213713065113125659161881569535642744015944108361417649865322192754854750656897747581780302210023874052123025509488799461322138861808485422246123702913641512293891767156217416260726435923437923621235163974924046349645735951219936256285520248551621357984200192 + 36213374277915021187960501154206429350509009943784937342853640962344665273661370341432812162660134104129081769292257555453657933322026058920570002011215114885632603237420344104120014493999772566832623489577942137696416594059207873047026684531831127098662368796483679106715230357303209903005563129291440998125 - 81125320860070179938880065848584819614630717544442228467872330762439573624113353518044223443413956249653250229963865332588219177607026039053375006342887614760726174965389629354184063324949460856934792129381057726723761089976497782913975637313665436807476439299644379836438720037542937274030887765022332950404 + 88784875219103004490867409187796580439336028275646934064032325734642172796350750877782655631487263690600595545185986973949637793376040039529334242727841787186152368722684829777472113434707623526142748869410906573019822447060135044716736888756586491608663760971724703067383426197232527066117239191970436021914 - 42948191024853372336781821822838469391534701059252248238922760174581267393299467364101875293266698319938587952303110295432741540429597838239579971674213937597007233804673654039095038171298200108271416407429017881551898207445919625982511569321505626555444703146552854257930612423674523893871305333301482115766 + 57669682815414213701829150785790139820922208365396385382451270040015047105011059602270677532141334599848749895445377163377797098101769663138915670832338561398070313576223809679656089041902001668549387570675942187547921753080749715443394968434937329744189522351133848627606864859717699163427995004551470140014 - 87698069206530146708416569926089359158707926074712914895677294244720457855104722936588485298177092433221658425594437337314375482226768898429874945852464258724477090828692398398144898128906117276775843354058069732745353466733091900500154881956508874379162035891509934700427671262452014036729680705529492099380 + 19430387956073665040008742545168228237366626380409449215616316415682054432029605888008345798193251163116713132110293851289775570086405711097037612492724618955613522669964620645767675728759532995017555557036656920568589220029848250912688353596366989096421783410644212433994547565209779383923475304673100010441 1 @@ -139,29 +139,29 @@ 1024 - 120242265353891692554300045922047481873580412081814852312316278622610012412349699141085216431251446316868063073124296564519534495060068779191495303283627533326627116847544544804997593350195611118016048754703736074548349446801901360185268478166518784640348397414405147608143291973682476695126277116966216169181 + 171795367802537336198216850040760302817719433285673072064016704297509263294972920968862879995019333546807716681922194952612358665832924006994420672781322683935998563828829629166676961578310364216820723333284118541610355614763234524893877254301205676826968663616237843247997193664755408992255295724018758287453 1024 6 0 - 90258808835373211266855694770655044928868185145409526443615154154191997944839992853769564627311147578697876919149739812953847181213933287549862005241929231372257096606500152342587674117722279312186256165834197309493940159973417538085035126055798524687669587894223403279211403653760632211817983476637894304079 + 138781939743420141798085654234587085378791442750844156618218315519623156030775014083940843628427157991650536995512183146050090364430217798889903276779395691314769341501283521555441395248293145295446229257598584303226472282606025256289516823083353133125249557574662930559464988881796972570415006594877835195261 - 95635760315469768841556933363272102346560676094633536874989656401813066226987733867860013275552737427738418730187137928849636066572005798639578189573626173484609652276380254298282553868702479356631031823069006860356338776077617044925000861133490081420034654499982624171571752176555774509704693342254549319854 + 168420371175596160385314346470541456127930556988792934601264980767954150761074401191883764002057676025574635595559453082438403114835695017344400960903147888338845250647685131378444914574667053754042483424927960459645361430078126904416924147233083786086593890435155965855696708192722757613306648217414021209339 - 90809018349256846647085079930808746464320966250951060891589388261560943833410922406369114896370501540909240081233789871643257253089156607856732076276514044636902151971445366184364318741027669227160232321267327121969454955011265415575482275183909976122110710181814691280753616147233693076187996032716203387686 + 164599507864917269230220181044130466242640054454386799153052272100119238662434506377210871322725801768535465849520862187042461522458751851837119010844326508994699806461980159073458635731317238484887665362257435016594387971946664996341942792674855452076757886270233668811767159399329679444242304826944461878356 - 112132297991559111282309568934986106372227545332776511795209348369586562428716345400127899442176291678476205959109869119623540619046127607537731277578177859025918559240273126067892577156097899600362383247721738309891854219841641551677630501223221768927686994784480299553651383548009458572445476844510419444688 + 112022954554594868430694861746706902810007259966892035372848716164773714721760248918761857377457366770462246217862095078291990529093104794681337350992919876990886726535142991553290065736768419334005963502455897767959870639353796998608846837617297713305741565185682566104560690180553705181428610482999491959762 - 5789538500428997302152053765650149031024869665962513738258606889955438829279876194740040809078811031990471347239725229280802228731211608783856103005519400004691433538942100949165453901328015475435322021383557989188105222750099545067041611616030258483633056143002925555086488519819730112780351452167807906751 + 20795710379390313360149837901235593902809611922782438280826554162582584185176550436631972790505407403299851110962435492486911884529635673218790787915570636384717044595376003628898518022547995524968409598599237503027024128328270655662334146591298270627006489949537312823974893037600566816074625503584300399503 - 103528436909609892521762337424623938814102752421274507158451483493684724861097190831700506383121848310049592559612821637042177463512802670355983232078856256022574919435935414921922732720648430254040655899791362394520080079567135623369841064679602672188076510258361308829687727029943321584418119828221246053484 + 4461068203835146920397273122878996496925951644023334909782795888195924230363311467297500231054245083629066539839024032350563196843805187870921285704555947110972472049763739700924273806542377974583744547273338787688284998293736197541473212310650426901783545952048410414287416361433915264087521382790658628498 1 @@ -181,29 +181,29 @@ 1024 - 113974307390270829704595349578913310066722675531921575347137523148981703426268705549020835166781529161701493646571840430557158177891602008370788878183990720643046884785630470230010981532651847891407035655981145786954186376179864063254465988631797188768347843073277670841142392732297237312085416165057383775689 + 107678493864345648666726963381598843005045134906745773568855127179729298765945796229988935480734186762723475076589458553114861073591179889992284613957887798550444135071834300620151269193028269405467525155137973905598460168964059816679287733081423902287277428322195154969572934367847409309681954541961841211929 1024 6 0 - 6143898232765286145077892477541836045632297291014786325302713400992132298271213296221332308996378104555543752783908808080870783020716085260639775842626416308448085260622406024209346821632861627259504519975501548599876346806760533975070027843440034675089073283329862593112803470393290357751556498842796719860 + 34780567649645587652662047318280460216197594322629290659397343806640717111602043777551795972363990570490561518129361133754971748815062877457811980871870613895746761204692874944262181605786891503668206019069701677551111685254064897625906904673396799614054762342291638726110702862138766341205373553864835127477 - 45047482677736838274299288716528407647175537765347948824711027643041704760288870740282898402913040978889979962245541990130335022898385886574447509499743699981594370456407584374111495111435806897457488183267190020187277576068699128913434781769902021871890426617208889662327838109855812184713851004924404598526 + 76770578985664099191449798911850613016440202975139749844785468106943538467941487623782662375335620379715667015148235397661770125559100524256505138827952950374296533996410404476470347577736554558794350087928716157046782489969073300743386412321573188949782078100848155826141059164451205262811577282438487833155 - 82795697583534266367376842511520190853446581226742226985762912111941208390541590347878324548963363215104083195843496963031072570334386362588214202064108457053405651153780670929192329770227149165245609972443851221676045774787349013613321978666414216036883233557120172098965309143739178407520621356057220556901 + 19375132007991059652876546182462672768720429677050803522934111565324016495763732172744623907045335493048740541182304274405106110493850369225158004210873483104238595711350247509966292622988932139561490663242014148110393502548086758118819001913181597386000596861820476450726333113377798106479230138706277155435 - 25880229906355987417048443339662745683496025929307390603325798098758557774630310189948529708618013477536719327095324879057805823082814710910504642840272322506338772144746395730377654904280294077049515958084088262251276481705776256600484578926821230685483486549704470274617768442869210622846367240329758009381 + 60332745111136671951489671083751897003291069716229419557442175701860610038139875996851654495020782497922916125497030526867835842055895873784260108184155213565134969114645958871640895775675472360543614497922018081777590790520072701770098022598964534954182431602697737796983390272144688966305745888541862833949 - 36744980390861858983016817581565444641560245335842609931402378876909295379769553524692397442661219757977701813033692377191780367467046935305316012100496956922085951918230841441997581526084427034406129464810799799799593083126824682509812576708954752699947843008307672414478391229642727756912714571481107882237 + 33206030625501357397902828493305862279894195856045523813806319914644617357371406587381751252409214237464923457683937662308696252667537129026830911327626477920950026367523422037741403916073653057335758700270326029776865721695045422550695292453931419295319756838382198216938790815705554550670037002167896435708 - 93931746498890597103118733257782712061507278165609115823000161580218749262918351236671005232490390488711179832465561874334923731589555445823082537357787848231793992771931809400771008819473644215961618693484941638519012030342118706580926098868741184821463506056147426825693726869982947485920885661024914645550 + 33699591887245320183352886957374795158953603724548326397696125237452265579267587282433792785552885615789973016310923276732538075279246287329477093697179355796742915804057038950601496710139911151519055346593812515824483642829165138763105492040862107512334441962031341198253373030460133402288720613467576919651 1 @@ -223,29 +223,29 @@ 1024 - 98807423102492429930268745630975757312710442265987489391626974722444583414454367047761528660033504216704156558226635445104894448714152726863223308098442320251156137488156682811350460534966144962169777948722446229012470785374308691808247430118092391490829696229412962154174967136729426052883542780187389840317 + 123460587970465722399480599701446111042791049424678164510782348298178989524706869827218072757318065802572872977206189692439610889543998303448261820274781115343738147716328254096174904353808537339736300386924394267507766388682907861666597761952802807474810395363126049870826035575374238638068965983199376357813 1024 6 0 - 64549827282573569661223821683778433142336875611542593274904848250938069885911249987175542946946869658654282518380184975606622371835551768003315199613988394666484889185955670078231084737208632907726374304014481300575717327888290179385195747538532425373380009611168886639127584368747545237913900986215352505640 + 117318302352368229229163809607702479318456428030157262995598611780776136494163450278418011369672196225024705223924157260734348678181103931116903595932563324645629923260513068155684589997607606713365161836567403767936006638718885167253192939940642824452024816730744123545240701916149057716603434108694989710429 - 73636250453944878341096432696334200702698206531871285264430397543104072874763632445610561788692826208691030515907933400338408612798517044523261111179649288751848730442741693053895368332285597955086557305203862706452223373741422033959305849205040367245396977521877380037962376194077376744163370557253796629545 + 79166656374368484214654356495255053395213742590584206280310930719755653489957925930346542517512620192097650425359579247070837443830862748231859562053718573394014868991678211219437490529223024342458612272327848652593110612340785752785585712120010687405752536405399684337596148008796260805479427829450136814686 - 90047699371842887045795925098160727351604892636180734457001718284143134011696968894946980166755598291233833586774200056899638788187572346966643153567962585437259829811315743909634908909082662481035546710725615427445514230073864976224268279022603497482873805177426913822874578427060538362292293084071476767061 + 40871868938993875410426205996751811587721008167871813439166564189762055623031521920195950886062485740929198925966775524584648439881883879228755988003547754790287586711275993853306093079373185290320968524077798129432974504079981251722944994855192019937284992580655570885903256271403090577186422692725459831875 - 9115882300533110533320125402430271883728240251993668377826596639411369393262321640454776088641577536813664997052927197442219365129684692546950544551008194436381949150276163843112366070082676673254884778299152128272748494200409822832169555332974121225603697420301650511304992668583600108610303388286957045975 + 89892620900640290140283566392805476442834511036692916092709883776370123872836264775868321860590685970283545083118729182759253902758383167687729739268452078465233562037688700620432639773342196188561501129246210605848453748122752153274263445164184465697547705606339433632142128437959746969173608800415728397931 - 64290257130120726933698021141152470681302465088538506851346181746788653877595161786119540130822567920477312949950982718070648964511867563833771395006562083493221576148599839934618407836746231775029691749613004808232713345896320469909812943026675413252169526568723297467597805871308793216708661264167033142319 + 121709777035471737364513670422914240357059445755508125094002474776054087244214559702633254647901247822895427221568520569724729995389163298559564480170015494003587855303221851200035414262844476231232261394773812801023837394666069091883472673028207084029985001140015089782123008327089253959339518752984564005371 - 26845809112830748951213424348778157379493334928631845602203489071032159000331814254666954321270335392941976157317373195459864559584016635745815797217483247587359120905027502821188835036257799309335618326919938054255712160946337422482063900351741886195278935583707209842416244504622114437222075089838837886709 + 118368291349285147157585550327202423335817645258822478079337019930721123815468331635525068128544253736950377216631099734999157547924851998471340790034858629390897530180532960195293567558086925678406847565038276833217752653830262850771875793504960255927890257698780412927440166594709334246027496966288743344300 1 @@ -265,29 +265,29 @@ 1024 - 101508066458492758073831514391925207728099012205679652123307354514934932734195822482169528209118418236549720855145624504946315772713373263971122898931978448309382517459432566431767420930512398053933909962008429517559844882055507365161791227718388693079346988835714646724856579563155533056841840764923482911741 + 115193322549187017758632085674974727024742715278872315780926012027804032179761766503288065034565716892785818153660349164554433828067796365626741896969380114418490544104123599167386238983295022270967054328089602503480562145153230657099035975059011144762714926206594556617956114445259820923651026107726741377073 1024 6 0 - 18094966270666600341757615203803958899771441588807403731653637889633185672846680622295925722601058367035900949809123968437072145633871030146419062724323629362621422178964934836125666825322583977098750643218772327199992871774885105970723817310453460139848128595957114499840166274261548332434662918275912562326 + 24958892788118393840566891402925212894261112686881756396217607457946596306978104211815943994414797105011718075194617345672726305027536665064724927900756862036945765691966423524893153682261745384165128816990435797199717205467355245097126693946214610135412865735012562961328364927779026079460708512689938357459 - 14519911411498662202350190289153079450960998218836862510262716271183656169763576646798026314706174683373201052543945420646503458773715132775635944615831483316942230235827414686195242147536461207965078368457369405716788284400327552776573272826443021111242598213194457713242796289163855980809869567692435243061 + 24288255554756812624762197103340158750190223778765519768405807403357684268583138358422886605098116268755079717463816662298139317595939687753107981126116196500860143071528623840509966635777831057754249172610936632021767758934196939105040316041127363794901161035243044698624148907282589708017305528332080549401 - 100829822604118715123148536176722814436072482852093886315881279658513551790405251018005350575582092689997344944250083661855004161854646534370764614148220116518252981194897290980503650663034332261761867902281915726459650291968214075577051702923706567392314103476661712678735115666275518472786274656847904898857 + 98573529002331715221466911082616318301300017750678680593832916072820765087229700809543111818625003499979817183312145679122909425246500434114287363675204505267732119319754784623466080567913652584576116756111506044251229410873182774035682045895464671545948436513530383740487677985431898275771829011975467387636 - 36758619800988867408554878881417837105069663192880003669872796599022231882132182770823159932605886945571779971084253648386944001078974922999576213946881031655276217832482121846933216754595936270608288445584519714020183665843778047016075233874031641473851910344486972578252635123798061401162697925291763818124 + 15353985435509734717647205939924424374297140311254436480413662376519872061599819892959995176175891437756042491481998969903341756892089428475760114248462830393435227191729623914880110584220456903870872511626091038462298582250901312945423814102221099309496784542055234964849111850334835617876760601457927418206 - 98954422490737878802687577073751348339761851462939759356912069691530214107182670740567414245254063263249264911730535276239211847311355135218241999853903438057185589465587228360001065925880392474421677199678509409007188573134169996457141436012554787080165773882777594876976452953008534605307630575224450701816 + 17455735070449738054682884370746228687686045089020396998083887583650988955042976829464912841928464950070337180970573621151968757420751546020224392735386909098113189353739054276774294071884697288831510878855213838041505870499205405393921909645992766577060606810395305981595413168173038810933707942671713337798 - 94651555423243727925284836770595215446033632966373930842930348982337095973921116325578222087213892295955414708791768767604608023678940852466452458914636595705401909589557837187572153271612758886005290729697645320266548149309389746386152913646486076746529707125841746516540210381399967115662271604255517413799 + 99078282433460334122518009685435268135390495565166370788375980674406524442600154170383521782130678737146346515697587435130336220692226983416874121180076768315197607852814628471856417469605509753709709939138595158453850817740160745949448738764045233343710173080910805476352529406131342795794391893459845853249 1 @@ -307,29 +307,29 @@ 1024 - 115905442434334203435132030544363120268524352413227438005896621348074275338040717306850044416905034343632867520965599747469172782203400980983630741823323943057580839927465570558565483424088928521501290827464658510566828325445473358000628142454989523014953064689031322340286882493752816338186368925981219432469 + 153256019031673973848391853908671616024035351852333113222956212092935054851555144537037154882131071118335109565772920677334385665987953763710322752551766091084637014937633351768184250877579165516584609222393690507834529036303945036774013832353124798268158248184389671641362425541416312746250270416649359548041 1024 6 0 - 103143446315737471829082018856156260406954006844151030128697141592050942723618091433391809283342209458536672169365730057120090346793397152165987123553892129060449489457979013897620539685162986136801165135141937188268214662182715789151398082138968131043082929543088462857916821829536740403295702055175095598126 + 15220542722079887934163021578416557040815588753014948049895358680874401987354756483638187693890778200226187944576153001580318905767308325025251868319513838639170229388887094978609944368236261084829465326382756814026047924860100572370509240911903760108844191920274365232194821110327754051188671927504786123847 - 21093465283395374439124846403749798935063364734560099156636978868310227496863538821086544738303350518658093170146346808049259906216185082462855222489769641277255000407021891287322265304591178496166873893520819194979043135142624917331665674639130067796039052804092101272103572693044811271392604926388251703731 + 143004036495287445500008244565089775614807488065311228319771443644042556939728810959906482515000410036341359319395672341423672298834030730662358936098971678898328809479500096931876973317120818472883465991015596717523641856810286626439287667681040066261020458108584755098587931772918575340120380122391279580630 - 105151249446495986005765875051158158755947238850758463317422621112390878337383240153148379880370092346800008824264379404671662956855814974133259278244329840344446075991005107496919710989594420384704764989485250758107128357896269609463718710814344737596073369019327376455733926447818113105507625453962069909607 + 25677830626343122473800267766987258667661454338633409925057452295050792502934635228012969731952432090824067546127184820674269109763072029928071755085679552707171555102523382002859000834013865264250888579699016146722510456747010192496630995123022435395781861793364259724814673958020662700602026307416209911222 - 61283933228608684419290795465645764344828540004925936906714687714555336357892232894989249781579179024102093894785668325502689663735762444771431173254788111349508550746367454027076673709606263161971293566586615407282583327678882950530025384283758978476202435841309787228243218133194418332399507845652872341542 + 62246636121089263731371807945897520167051837454698735241698439734694730001470335211863614247823007078485077900778766898167190790567301408855375740484748340320700390073275392868823940948653806683445411202776990790067823595294042946536030310357110325099679964532575421698733314704640641895828452919877756100011 - 49930744498336662181889151989204055105279236092828545858836893186940055185938177721837847596120377695235132423481308807995549601244142648702684428675952371139939449031842925865964588468162060345934576026669553663079853709071934669626745050547661854436198831062735632699655522347568180307658967101565763493932 + 109179195904717079139512297958344482754488860947001124419866306632211947700557001412569449694611680557227002345132253379015047209028361122554436255825724641792181226048045416132300441370043533054296640636019094847912470011225895961907747561407131402046285049780521232862899425601689434905370686341564422790289 - 44829684898021575993286660294598884158901788951731868330942301576440477841143427209536779165651036231914133684408695168475861763616827163141782429368799554964942252555412245179755130594670036342985806080785698319091152870648452879512582177672829292309817942236855923963950699629201136751220460749324252717791 + 72256199900300051197332501127222934244256559778006179914521739477500706464599171904600643790797361089413358501039731833363101680832368594873645195342133343135647784788351460716476460798313313942000048638227363109185805859595520325671335898545619147866290785844770980165710956429961244551737499380764677597447 1 @@ -349,29 +349,29 @@ 1024 - 93324302492808199130140038489542321888348853071302806650239414385244723974211537483002520341183837059316506964556579623620186543669899937696064920977911668256597669280463423116955319717917019567307329889476298137481841952456027055233366000222074063733100318307941039564854618790300804147830985687325329262549 + 135358305767271858027595880716111530935123928737890043873187024055476620530906467130993033452699358704424795550755169128359841746123492797756886097936671355386621176058979935393331413499392989299082084359031846630046001377108741347076252627789379769344457517235001038532356319713316214499718115421425871569433 1024 6 0 - 42518891212784696725875858055650600604108246670012265276077895513552577725321677717588029878060259738949894497402002060357228400555391259209731917943432365444873826285643244113485444162188406783343509644219109678872983469142088638641874489401990559140873264641726808645962550714591319523042987950285592368824 + 54594747011594798877885888974944176740233826058214590608446121481719016646101845365461669609593284564003581366359995275781810124519910313811380876256508679688339828939491429288889804388749815124253867496416627880709040603044538402764027705232404679640769755327219879688706197760711345784098387646185164981152 - 75291549751536791992105257420743345182482577809046353784700594093704881364358216074711299705488101138734376783695106693695251538471182399552271475151254734544700337045526308828125956898392019280265133388132621200543975423058804645856787811148851522717906121145694781740895433259432498460659911075052464607143 + 132783808999394318707408962088834983207010415125168788915872658758155889296838532193150695880199623917302322850691457856799843846471181568246727469377964494204689790089312937443605415487457400789095132034217110410411016988079403293808537223974569707930874192773033393470383855778863425429691879481694667628909 - 50978175916447700088518240216053667684870673847420036235002792619092589262136497544266464200349207480546365928164339934414367595072612018614325531165268369051297212383456749468294457604921766282135927832621122626928487667454146002755546119901194327747621462854007838543528858175885057609806673983395026231342 + 9473430635930700050486617160141204494342095550189134899476751191276019107931129114087093973056080555668662930307913633328246702572209665502366737090850431132340577394193612418080423291630390780237790223606432359088325373896719506291987815760514899446327539193574576164858114835145863147018536204496364575294 - 45639252938396072705778302104880130705153407772406002471321793384411905992500567210171883135004287934787044232716973226648803660269945284537097639427885903326635965087238403327182838075317269650299400949646770303956474277388670860553468893703708785465699418684174038665570413912436960118383352524822143726731 + 90024838355001075777783195974135066596911088933953254044502969121509346778938214241043930641227033089129624800092043075809246544470625613932569785625492513957934084324845138958744207292453298491639912468882105563813341034734148686353752495183156303339463108993280522860556963638419864094636988429994370751743 - 38013186874210547666062861075258166760615109425952150905181518861143222559954119912199951265061172878298238833639914869507920009913414182196010461381624209332240497098198012120091419433781364518831155899265689531191334639603576651285598143897328961102301057307254274334431610639636216634019801125227946348709 + 45914980508142788475969536593414423447529386876252836641757988714678457126161180788769040893130014877283087923780361131128613703067760746100124401445607902733176021029401905908890233576832489405771907746137014120822037941005000384307118527309121044551993381248785336586579186345829608419256901639247803554604 - 85049252916548353233861447384935486895006861567202700674588370555757614508798103563404758820605122800698832233699934570829491701014686369240227289569232647169872898587084339236738875298924166128821057679454903543115766248069551533282505816819884277101573939884857407325991499258590780403494195166284580087207 + 32911404065014905616571735182748738235851543040766582724263411775153690607184929086994340376410140178669625764641435927432683863591301353627927154715686151567872995056710033783341401210111884942070839872351093132272880604910175334910646752963148483903851675232134333338877843861382949858872798355076941765109 1 @@ -391,29 +391,29 @@ 1024 - 96947677654641129432053692801590282848867445537697451493922736175932291779820071272672626959724413690236039490294379429939123866825860419240206384732740627914281920798370575149622345956768221264142334426239991826383023910494298980445754886848334676015820676920651561493284042469908663704880008961798734003457 + 154218268867696507002031865996832738977246724680896068886617497685938467688459935868916544652628785991317792030286811386804084216509428288684761196875989322260388889257097276677216400072227578520525641529006704269719639306215286673007408730828431211470630255070235631883821820735534893283207489831811866541573 1024 6 0 - 93749302618648808070217897839932241759814415997415916946749411987545856635461536614952884256460594397007965222927679175539693559402752396538067995516788344068508116895475192183259651494693509551606332501288659599202246155185544645331923459679475888979221040142045149331365734109627405766434268339318300158731 + 27428799928169371477008314260818876148937722875877046040065001415256050285544612261240610068898749426541489168818274025311879557094462504325465143718226701031270459513481171715674711056192203762896591318737473272520615104809732143483277690473125331986133481516425478801944037361281857855867037438256343773679 - 88591976259173129145635694202044266099805031201434247443121595993691017165775654441584946313634153970992495586909998094664721713372347775101011059850875572354717680369332688950128197230872808349269309706809734510460321403576514431412365323583804364538511077443962739519476627485839118989389915056902685823558 + 105450822515849266246824784593332752863996144824625198279966526580096181889146860866466836912483527896334247490301097916546476481609859267630501968068493335890437763132841945935390933265030348476193713724966585347250648751479602155322327667705579310128424156557476020295924929348119910434857695122123769715348 - 42575950840114286718689661351970111621686309493145709681590708158718759438529792314889983671083215003326041806393612339006301068034992931241850342792545649841897953309666223399999914234439350528155564258900577268951586989099519930473331582145218329466694762252396903587607667346075594592830912128475741773066 + 17917586169419969792153843627847724624582303970451816452874219660498616008632452910042480347537075057133325092544315346979734775101435525533629606020738633039620963234297245636824119587829479049303232294479234284130684993231299911772911374146097317218619653947965414360245657311825149559284315208240541584049 - 43064496291705458504524336076225049346473054921477695649886760113387187082672578485621759269622589065305002049069497915413893351575042650143454495938325980146518181479040258392048864545346376346585971672448094055650954566712096872329823465436163567068615396750693796350283840033257854477203383297630587368938 + 83614794643827277304010494713733702635853026857962232621115526420680432673836574945397242148810823271595098760695291447287587902753143969200514260996554707598388279117974226336910323931721647138761776637137666044994683003226962992826724806567215542394880283109239037221417111570642218445097975627548527092539 - 81900749380819745213546459754756719091332758119155758830804852008037016512803399844299304649149941960381423540431141486712755371132899745008359589903830860830434478987247676636962895590526179977137867362906973481166910794944997738649236165802384325814575656461706345495588898502027050522613609818469969609015 + 98025334882817542595051261918088236466491396073054003041122381828466061599594157519317917789905097080123705591326984935802933433391754654298972150414662017901502818342450898330664054579806253102093229112778500389727696035428993861323041972409204375141288230032727654233984733937127115582284964721572192907628 - 73333627947886430331559491955680856474978748460266600669037694456728286563389073586185721800259632662405592201658385016537795533052015985764876784938717609438086082631886977403727912391035896539429294934105757813712263919387011949889257183319012131022883624273967219415795768809726875302581528242985914413533 + 103461867044654386108007921528414895482662948754475387341985070060736686576950492180848716520576397704988373242928703953709705994705234961029080392502757613196202086877221834313994327801773914413507546181585432001324248533541087174089562102726527826866350806480335498036140946354815641124317115290718066663234 1 @@ -433,29 +433,29 @@ 1024 - 167727354177575283296235069997706944355353371402089918180577267057334678418188810520847166932310275524601433320415852610631142842447656986744375591938652455411091898712330522049939659059253815074066643588980422099815823821431425085733238494031338015875267847707383566217173126797858012105681092131354068669933 + 120098847776259535343644334068493409247155794818213113642226621008837548248809756144435391881962615325304472487122528549774300242072619974184058684501061116769021957277559333567971936578385761656133295119311274656165996325688816719676095627842254071860445539705183362636859341285726107647847880667038640384469 1024 6 0 - 55212528739765004956720425923944299817655186482742196153935612638315971089606710371791470971887300374978844183586506653486075371900381182898430539066219084106652951743708316804834474071492387692170605664852204193872958998318760673106406411891449815553933844588162513102725642256312542518804750070757616604443 + 78341596191867165364462798149613513767187976045933270925524314074332359105916239984156112944388741605555584315673330918240662669972383036695380216369645786077675668119525313091263106903931060310783249892173696572488213764160500898695655888234795022024571259931035380458667979043363731060752523060256425326493 - 125521134130018008881051161583842438871352764638574693694804582800910273289734389525646179331302084640744732360170705515742155640895254805301554658063613366304840857712092749922337120635191634218375909427765307324094526971694236979991076690133107301520235674510926743255560077520910623929468465293282770246345 + 92197697267850835637041615816893083978440979223485010849369520091954329556817022954840969220750091574955501530801737742911131398158522167774789346516688492204741057116830688290864687904235809951324327245011263476463848478977798273152839939981363192465690825435376744018481972214855855772912890637337396617871 - 27303183713310647270239430513109683240286173819802954448123370716826579313726560171659538820140717874966904907786980144568651508762043982373023040473117328625610211903440801516265401761189709812839322672290141710111675811234378045537265033060794014611679093546390659077026035074869442774684438338813479119618 + 4748293030592378955093724566571489011651125070696427417853949295886768378111152102495476227775576523833542397763054262265966439448479602453489588304595952626064095178127493676309959239982750742094802606536171334162655130645407695836907472484934442915849957480725551564249920896993846998541219569493436633204 - 20517582242241300162739877859035007047878076436157927684042252369814854182910736051330481835470387047390838383944925852375538128360809392771407702990039516320549241146543080697815027348163425712152993328929677268692798986107555590893251957475287165017431351063386066168339776732974946091902042063287264280620 + 104584900904542556799078527703080866806316560026256596079705108220072609345471701770134318641946110143937813605502326970885364040335672893811516334052832715982398959853556119074396097391674101956889279124105778371957287930683941038772719876857983940733827806167120908159325650830304989434548687189098427086091 - 125835559924500361026951681300241222847765186627319590560094438352472863980544039143615177234020520882988338756341863707312405580760526056693953575468465964827542336485315943814807501888912677108769795118067849939434629344637352963175567421289586227655302796471491914750593107108792591241163338619713760565646 + 91477000374004348014105246188180409651649243135776551322813142142044628230484208001614477763449794744746082101984365227478095962810916246503069968738835364911647338508489896420278550004430041982623071421860079472688566117689119362544066175205618057687399701666608286724650867268340276001512993623664623275609 - 39455839416613969853839100198709761408356671979111856804339072840007840765670719865497340923297196652474258832084384211032896876448437811056389073015037846251382190261051583382825547944914289815592218399755293578703245716253260448083550156430721377021938994781258611779235943999768121074336608266875538728464 + 27335022029071511973872915368479831202151720242800820669365572158467591925687227633305136848793235934543162969534704442560517668695149887836214069200974132339079102773406068766037767764420212459478276529948373667413279044542607587605142289772231063326758841771162863193523221664294299814482921047353670436699 1 @@ -475,29 +475,29 @@ 1024 - 149156752675457829484492338921857926395681371289126433584047116593076369987747241360787492801209497129390401289011665250581771280217972173170615740750310394068113974975250202470798361382772362253952464329096594868484705113979621434446377598628246250036954003709660905146740293851838116686170958097567892794609 + 167849747908102684615783031952151303487318618058226134276355868669627336908402995742916429082816062902544246840315676375600682020395918653886440543549039685487527686497944229453172069154889512786032054308546997135806844060341575216655718028005098196791080486235476250761566643135320439910817103719665970114189 1024 6 0 - 11352908387747846374372382544228049271726588897582672087730260980437542587303031785369398769863666016131812336180790399373380928834263083455154052747498583106051460044488432536118827569329724006374986945162805013925839836495643941497350480016011233155251229927856315435525160642066187837424075704643901546975 + 124697971864257013069199803276420735672381775609467161633368671004811398338592994292357677388507254846498502768389738866111523924342131234320910182832156897093603904400854292861082845611922732284956492433793209240106822872232125951145778177387397679039918621121927819973078906987741480262525622005602565399227 - 5924580563988316371103504749836805976866443182621838060168972348147805336044130858428361533207561584380432240890820748952337209665476242473843453104633480324663638050418289377486524710747064211208972874942925445061968821377185536287994789022308227017184318180048755277868646206644875967439434398651548324609 + 108887781890361525299548949264309573612532412215054221866945026350960909252554790687820537292488822159239096136095460817189450475839784419203908369203805504902414189148576907397548005367318289848718165066768409808513010231990171238509327686404013042691377114557387525251911427307934702480124889546002434153883 - 83860846070653179149971826330632184013457318647561735410747487053401978313658858920025339960888588834770910085631773586928930125338075262176791867769023543921197219909615115600759359245696576488172992510798761693224064657506266221986536956797341772968085239357580496615776718932269765843251044263512436015136 + 99965937256071531833352267584518740705187568678398481975025487900445929854870225696845831801035897840798993192645749908958835960887390699965754669201895122689762609842067032782947025374191336414827383420980245403487860703320619493841364508653990560873053561052051848165272882782658715485304580849894447481984 - 89144604640946879518870372719545566701496234805285239542316606982530333628450626702450928058204589715273784804359866235259218654233659016527471314878440750019724734697724739198635890891822991381467431972117399010037996038726427898442538884429809140658590531970908625826945108365768468397326164790721051678234 + 135464487014068006350241183417277199933512080629319393539084556152088647569462879342427336794694607292779308330281931121306851709112290516904611886868248721653328973827011082831762202172003407136709090048796766379233700381954200275601566017619852103033202510881086909114257203408422383001855075728038739087666 - 102820865676316346957912018152813405266463198626305524734449245075212023016341056381052983510125315953429184981187357888235332912350574250059015810340837866406426404037716528557357317424782799396883279997347840149250126073547177628090959516190544390191869883221552750620613996888907802058011003802412315246930 + 116087460929649477650719239236850579624411409915463138669472799334909075618371332653913172377800254417621211492605964716808216033497729198457377469580439281611985552152638264761588841398460105860435413320874653840732276755863584448068058447432518834882323032920701627821579231087160538498920135097072056339130 - 56343229955516400442946814456064441447178515408962047510610551463883512547127372526397886490097437294364011273783512771407939447206290009393075915985489490489534298740530908251463050477206993005369528943662202499020792507060230580415898683720172996453846014541031314731050938341036493335244923473917023102041 + 87022481899114200452477329439521478334907267121400160768484310083510672665816499561166856734334611173826744984646636728146751086237799447687536072677043559995690196109619136304467129246411278102278767648846219215263506982413472377610126752110280476180152080765605425555155921191279654185124388043571147181327 1 @@ -518,69 +518,69 @@ 0 - + - 4 + 32 - + - 1 + 64 - + - 512 + 16 - + - 64 + 512 - + - 128 + 1024 - + - 8 + 128 - + - 32 + 4 - + - 2 + 1 - + - 16 + 256 - + - 256 + 8 - + - 1024 + 2 @@ -718,69 +718,69 @@ 0 - + - 4 + 32 - + - 1 + 64 - + - 512 + 16 - + - 64 + 512 - + - 128 + 1024 - + - 8 + 128 - + - 32 + 4 - + - 2 + 1 - + - 16 + 256 - + - 256 + 8 - + - 1024 + 2 diff --git a/src/tool.80.user b/src/tool.80.user index 23fdaf0..3c48e6c 100644 --- a/src/tool.80.user +++ b/src/tool.80.user @@ -1,14 +1,14 @@ - + 80 160 - 364377267103062194801167078319285525525691530041 + 1221497820309034144252477697639221506041274072737 - 41835396562664248741893261578012507759357710350671891296505002798209710544349703373635217758667394877973029080004230485300004526764178512226941308806819650018366408779146285349904687298130791493665576550574150935462460201932369397327244468843029758839084498535833807799978888571595690248084042325221868241295 + 46595090496836219329758375093148588632444610893519141484167148248006992830821253282042390919028254358115157648668133863270649812817455449562766026403117693967002997445182573517098844620990728767294115963258577004010875215536547892464360125852879806390124390444522420382015966075500780657059956400651100497552 0 @@ -18,7 +18,7 @@ pk_u = (g)^(sk_u) in G - 23960970452790471771290901204248478186899374164835483574143965049167428535334697144998820754351692193924776512541783718791693339940742242419666647217925673092400565221480597721318984236993183002277437659427668775043184144691866033469176943061465580669619070004296537074538112192138752681779361586406138542788 + 29624695559255996981573654014457685746380963860972658536548118357563146036540291511543368813303433781280391202748072499145041357851200552297409091457980366612614954865906701583854493796742533764096458955429450568660399553817694286663970325864002737229485177070483451432877326131301283666627457911024561259597 @@ -28,7 +28,7 @@ sk_u - 78784872916820569155668554244162448642445112228949601018657086695112934013436982731746121817688 + 1227361645207151049290540178790069739366052447475710776877430459919613060108917457848894914968548 @@ -39,7 +39,7 @@ pk_u = (g)^(sk_u) in G - 41835396562664248741893261578012507759357710350671891296505002798209710544349703373635217758667394877973029080004230485300004526764178512226941308806819650018366408779146285349904687298130791493665576550574150935462460201932369397327244468843029758839084498535833807799978888571595690248084042325221868241295 + 46595090496836219329758375093148588632444610893519141484167148248006992830821253282042390919028254358115157648668133863270649812817455449562766026403117693967002997445182573517098844620990728767294115963258577004010875215536547892464360125852879806390124390444522420382015966075500780657059956400651100497552 diff --git a/src/wallet.80 b/src/wallet.80 index 81db692..45985a1 100644 --- a/src/wallet.80 +++ b/src/wallet.80 @@ -1,15 +1,15 @@ - + - 1221497820309034144252477697639221506041274072737 + 667226553671457351738317759666136159767990013827 - 1253932919667407502567582782575083966882554940671 + 1304812917138001187250313018057709069257638849972 - 640673782412955503747947116702446413720379155657 + 724264729288115371476436097222112688715972891600 100 512 @@ -21,118 +21,118 @@ 3 0 - 93382980843653883025762890886083409827607527193228789447271856528752096544087553429050463606190265498596154000815557432733908395732443745252956186362456673161553823344975032912682070157166069852069336154009036924783332731004173119463490793794707861374357535971351736236154736002902486868695733220033838804649 + 16187182996085939501955383827731271349087121458512114198530535100215006655889475301379536677146640482624899440620693940334381618173558141232797434991621629583065062128092904054663860062332686712914079486547683219499846333158182202579367794676142074373599714011700974568309597322718497837449578160962587882493 - 4608750384956787750586686299568109016423255065583 + 4588027194694127158990390468143099702765212202433 - 300499248208397369986794189434567819278810363998418257225892040135078181463591359705233791759248242503724785750168829666458234554520003855006156457096482396496601742633165704234336134578845247386631417524024589960104791843311261137171973588036911160310836018925761778895678813593759531219022906493835276571347823275301202705007136515965706812095662355573308279870074966198819040965 + 198402662554797572310216255192735749114314650654588354140825203172076441805854008634110605825579584680112590466138559938693198628199654884550662986701214916479003707968926386098628318579162046215398223438409980142572908004088721306410423980125283201743316514007907142856008237377265899673815059615148816460863160498947494232971455971302428342609654650839849474575454209984490534993 100 0 - 12 - 39 - 55 - 74 - 43 - 2 - 46 - 24 - 79 + 54 + 69 + 83 + 59 + 89 + 47 0 - 37 - 22 - 34 35 + 70 + 34 + 65 + 74 + 38 + 81 + 23 + 72 87 - 6 - 41 - 73 - 76 - 10 - 25 - 4 - 78 + 45 + 99 28 - 51 - 21 - 81 - 68 + 78 + 42 + 60 + 16 + 95 + 92 + 20 64 - 69 + 2 + 96 + 32 + 61 3 - 45 - 94 - 63 - 83 - 31 - 54 - 15 - 38 - 20 - 30 + 76 + 27 9 - 33 - 36 - 29 - 56 - 84 98 1 - 58 - 59 - 8 - 71 - 82 - 72 - 16 - 62 + 53 + 51 50 - 80 - 92 - 61 75 - 32 - 95 - 97 - 5 + 85 + 88 77 - 52 - 66 - 53 - 96 - 26 + 43 + 68 + 14 + 24 + 91 + 55 + 4 + 37 + 8 + 33 + 80 + 97 67 - 19 - 65 + 58 + 13 + 82 + 12 + 71 + 5 40 - 14 - 99 - 85 + 66 + 7 + 30 + 56 + 17 + 18 + 21 11 - 57 + 63 + 10 44 - 23 - 13 - 49 - 47 - 91 - 18 - 42 - 86 - 60 - 48 - 90 + 62 + 79 + 73 + 52 + 46 + 22 + 39 + 31 + 94 93 - 89 - 70 - 27 - 17 - 7 - 88 + 90 + 29 + 19 + 48 + 84 + 15 + 26 + 36 + 57 + 41 + 6 + 86 + 49 + 25 From 1edc573a5979cf47dd72f14c38c0d7a369601d8a Mon Sep 17 00:00:00 2001 From: chris erway Date: Sun, 19 Dec 2010 06:51:42 -0500 Subject: [PATCH 08/31] imitate the way copying new groups worked with old BankParameters --- src/BankParameters.cpp | 13 ++++++++++--- src/BankParameters.h | 3 +++ src/VEDecrypter.cpp | 2 +- 3 files changed, 14 insertions(+), 4 deletions(-) diff --git a/src/BankParameters.cpp b/src/BankParameters.cpp index 13cd80a..aa10357 100644 --- a/src/BankParameters.cpp +++ b/src/BankParameters.cpp @@ -3,12 +3,12 @@ BankParameters::BankParameters(const vector > &secrets, Ptr ecashGrp, const vector &denoms) - : ecashGroup(ecashGrp), - type(BankParameters::TYPE_SECRET), + : type(BankParameters::TYPE_SECRET), coinDenominations(denoms) { + ecashGroup = new_ptr(*ecashGrp); for (unsigned i = 0; i < secrets.size(); i++) { - secretKeys.push_back(secrets[i]); + secretKeys.push_back(new_ptr(*secrets[i])); } // set up maps that associate a given key with a denomination @@ -18,6 +18,13 @@ BankParameters::BankParameters(const vector > &secrets, } } +BankParameters::BankParameters(const BankParameters &o) + : ecashGroup(new_ptr(*o.ecashGroup)), type(o.type), + secretKeys(o.secretKeys), groupToDenom(o.groupToDenom), + denomToGroup(o.denomToGroup), coinDenominations(o.coinDenominations) +{ +} + Ptr BankParameters::getBankKey(int denomination) const { map >::const_iterator i = denomToGroup.find(denomination); if (i == denomToGroup.end()) { diff --git a/src/BankParameters.h b/src/BankParameters.h index fa3bfd0..dfe8e87 100644 --- a/src/BankParameters.h +++ b/src/BankParameters.h @@ -22,6 +22,9 @@ class BankParameters { BankParameters(const char* fname) { loadFile(make_nvp("BankParameters", *this), fname); } + /*! copy constructor */ + BankParameters(const BankParameters &o); + /*! determines whether RSA groups have had secrets cleared or not */ static const int TYPE_SECRET = 1; static const int TYPE_PUBLIC = 0; diff --git a/src/VEDecrypter.cpp b/src/VEDecrypter.cpp index 2c48303..7bed7e5 100644 --- a/src/VEDecrypter.cpp +++ b/src/VEDecrypter.cpp @@ -64,7 +64,7 @@ void VEDecrypter::setup(const int m, const int modLength, group2 = createSecondGroup(m, modLength, stat); } else { - group2 = auxGroup; + group2 = new_ptr(*auxGroup); // calls clearSecrets later } ZZ n = group2->getModulus(); From df9db2194b58d6655ee62c2e84edb8eec626dee3 Mon Sep 17 00:00:00 2001 From: chris erway Date: Thu, 3 Feb 2011 02:33:18 +0000 Subject: [PATCH 09/31] use loadString instead of loadGZString for client tests --- src/BuyMessage.h | 2 +- src/Coin.h | 2 +- src/FESetupMessage.h | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/src/BuyMessage.h b/src/BuyMessage.h index af8c263..567d336 100644 --- a/src/BuyMessage.h +++ b/src/BuyMessage.h @@ -28,7 +28,7 @@ class BuyMessage { BuyMessage(const string& s, const BankParameters *params) { // need to set params for Coin contained in message - loadGZString(make_nvp("BuyMessage", *this), s); + loadString(make_nvp("BuyMessage", *this), s); coinPrime.setParameters(params); } diff --git a/src/Coin.h b/src/Coin.h index 135767a..488f086 100644 --- a/src/Coin.h +++ b/src/Coin.h @@ -24,7 +24,7 @@ class Coin { Coin(const string& s, const BankParameters *params) : parameters(params) - { loadGZString(make_nvp("Coin", *this), s); } + { loadString(make_nvp("Coin", *this), s); } Coin(const Coin &o); diff --git a/src/FESetupMessage.h b/src/FESetupMessage.h index 8ef8757..8c0032b 100644 --- a/src/FESetupMessage.h +++ b/src/FESetupMessage.h @@ -31,7 +31,7 @@ class FESetupMessage { FESetupMessage(const string& s, const BankParameters *params) { // need to set params for Coin contained in message - loadGZString(make_nvp("FESetupMessage", *this), s); + loadString(make_nvp("FESetupMessage", *this), s); coinPrime.setParameters(params); } From 80a4991686c9763fa0f58a0cf6c1d54770a5a0e6 Mon Sep 17 00:00:00 2001 From: chris erway Date: Thu, 3 Feb 2011 05:19:32 +0000 Subject: [PATCH 10/31] params from master --- src/bank.80.params | 196 ++-- src/public.80.arbiter | 28 +- src/public.regular.80.arbiter | 2070 ++++++++++++++++----------------- src/secret.80.arbiter | 20 +- src/secret.regular.80.arbiter | 20 +- src/tool.80.bank | 426 +++---- src/tool.80.user | 12 +- src/wallet.80 | 184 +-- 8 files changed, 1478 insertions(+), 1478 deletions(-) diff --git a/src/bank.80.params b/src/bank.80.params index 0366986..f363ace 100644 --- a/src/bank.80.params +++ b/src/bank.80.params @@ -1,43 +1,43 @@ - + 0 1024 - 102680714876620505251519589456529850089969700556564489253162684638539597335736793998411151385396668678457395604056076455447346438315008567850445832409559094642617108516105196798178870587832997740211486024550117558968151215813802257578385470372409470175519459389641067956632237921585676408120047405305262039181 + 135218297597036027447710869998207208754674606065213053565477328119318307615909175526780620233213961426236879812016724358445271350587363396402647314849305621510012071242662065255846791249159498224132174763132326817952843159753470530205099792627946188037319629342446887089368727200769772054196948434863869529351 160 5 0 - 22923320959192453636423682385738922848216151492993760467429386172337582699603626592667966029063069617300543105850468927060751138940226489398256413607978816318065423599404211058602051331171774528282150565237472007558045410089374975467684411005456109694572501365211023547108753818220756570663968723659519304097 + 18208244590241069583945724715874667682021402381869122752191191011908431102922032101750150575398954442568433700325906936509940645446026799664167551673847031697308843403021189608647351053797462122799257330721911677799321262955518693413213492091091575031816278740442189255351713608125699206715386379787631136553 - 53945843214081887230506825685162514221944851452590973433147320105768347799035010333040104182762421540976644457898523154200390719416111152133906850059276116624692455403920555815325946146027238316284576081046322930997100925534589898400045746221732607763907326046366956881978962788748138738898197865947329746712 + 131540008933434439797345948918394261880173787648911427732001625350824200688345754946399083539327263132740551020405739246247253074652019164142804882841356667895761572327083692446423627850400085866440853738034890285736115428435401625648425367295082976489978122036860020082169538328537073357748608207155548379323 - 84070450444178810764801942593139363675201942216375234211388549548441399502573647392486982654665114331690463175765687779989817013063882187163233753732167024252613425512245014453169195391341163601305650730846456990348521068770085139213305228501503975315987245346014618040731218552889355850011776660968387243547 + 91272725802016999926151875073739471182280652070511760378850930760962342713681923927240228531890954606645620919696449005573523123959193016212029127692446066052985178174169442856720775137926238522268128669447003671386368122267146212347585948046238834952090600178685872531305631839437669077746419434508311013383 - 44698200531549202972232618323671999010830294896874839743157702137836602383560583870323823976773804259743506237545914357368122833664632525931647018821826400373691255566854594204199447306752422310463080619172699838408810456076477752430884838822369737010719356000558487625372180909172327760255616921931423991248 + 3469882655055659224110796061184855363317387895617202437236151222595676437356010103862254518369649822515215063723506132692782175600271281713617198794137567836935269721890075460941750695290740788356081320228309732607034651115489632489205897080536002378820247683062542665099079636940180095369957072814768593231 - 51872694200042776418703861731161005597647063174327775542825481250710848362720927717796283168056945768526737370976647132055902410582742570384884317599347064382929720903764261035793509472519152983496873672379499058845114238849894388800999929829175350045958631291831128454260459997110600204624172747502759593173 + 30597361783781676797521480522484587284592145075325385388829200913267968937767278691821499603927812902193661100233957450599038048910138756474842188339778893991336983286399329800775281795383858969341862563509964623791941848182839037452532512334863582834255155110971223966672416785184918358620159650430082221670 1 1 - 1381926471275670696491547928550620506717346803979 + 1244736658805837004330109075480297814211691129853 80 - 74302589183225406744708406598986697445626235129332961159539629660099003864681279676025057169598059221346100246653275027988998552977043535171844663879396255745429680604118860556814772359887881646573360468171271074105943974872534642719266485854337939537007792420 + 108632052121579197510727782738809674259658270667513999458233547257208694922342747151016335495460550311128145055639237925983221319028074946360737371864153589540779403314101093667591328047044940954750182782695379846347426671180342818611100418161230058992137373950 @@ -47,29 +47,29 @@ 1024 - 128057967809655946190316507735155452831314572900315216081434860144597217324346737671800302572587640910078110732912465466684478941477363845874613925338791275068167816621932721309235605381772586248486970010063355049965746801462578755831359666996420724229475198439645105729191854361248312605304734475323680662913 + 95288621726635968872770037150784213196985326131676843097938547136462929264841295546771500388417671294966257595433760953200547360249349740933546921081522125275115437397098973842360250826812492033263835470045512007784622189487961151941432994089813647862969606517420125770262374746820810455414109837014665020593 1024 6 0 - 60811636929475187479807521649087606074793642064167945690350627603203118950323257675713133373687111123714663109087066267073458476631246485001894677569393649603260477149691339449729864039552273625864812610179069562367245786370215607199308088083101677805342992837524421920973047652387594443568045299878715104011 + 91765448215067823325795421667963131269512371058001714218791999926519624355910110183970996302294343489487711637666736326993210098027018038695140474955963214538087467579370979300852114793975820201555823972904294803171664470191975084609410844843699562290002166572267125918023256183462931816866438417011288387597 - 71560986262474260038579847733152867125395323692136727882523150181177145526050032346646815633503819181049097447083396963116870388315714388861158191811280162852633670260478236187402519672391362381543748430716574725648848677812893437556332455280083345503039177361800148373565541695573258846852919928924249154877 + 40294104858917502207884187657330535256083121883845488158774475159839995768781522379296790456727414484487297945298577860348991280709907143209769263860571497761805544744736759396126801492587046865066754602032016892804265697920244305298307566030270409229660322389503909826850364964925423148539479481422269333081 - 5358493014159018151110306019414188401443366482533390828878588153924237270657211162207396455592545292115596564966717448066974022571552087820343845293928484045368156700279200787884399405557838594314421227423879077160333472477688129275324340290022874614042967407069455935447388415804019834527557283355835583238 + 37181927301328601230229509824050779944931890417371371899093425328383585668806438133965151915167895804116880861939436384092456427888455471167585465876401001715893034711967342076190251284011995257843683345831106685333128346207762133410990676468736935851749651853413574904157556618055537455150277384533267079125 - 9440403911953510704955609199118462522546969159294361115679964001969095067128208202978671380235142495494192920664243060842431049236464627103331285996753378993464968648353139689202039972946351834805543874912252883016750152554402795151625609573033493183190907610839726606922080056808873159110535921110839225918 + 67347955068046617987078271939584408214616385355082946652652558963004113886368419385065451148614904475564270298464228947932932400883150877198113111247417898333396047869562351233676189346740404229714576046346513957179597233959209788707913957203885684064580064021423353037303259164004893420671864177938248968460 - 34601241858178235153992489154363566911322825930412755051942961530163789553279237024169967243263931210587905323687670939702730687998131084839805896091785126613296047470576600055262500331821637746680489652121076447750079042944735474064557177506619768477733608759334395601504750316910835074596407622363931297695 + 57669000393863291465997741294941801999274879223745070978194979170456208486599787020905477696350469460233194798640650624252822592978323224264539104432394194340083276480589910796208101428768941276014721718948586671096753212427551901667894807759957845419273976923255392385335476551662714791721228240704492903472 - 103450953660312905541961327136746359534991486059040490771968614429013794227835017626759804639288113432551732347712210332460709755012800755979360542019454727242090797411218789006851073710562599252458946620552051918314153874747184637728072116094587384838416002546398982033848043597058533784377942968102172250659 + 26693245241650097930528211048506005550361754351170897843150689991780056709581651682450255357597353232814904745727236148991266683037674349270826986976517570248012352181812879805573443388140013853869016411689779861764052607477431441788218487198174043217144077012585519677983607140788959524397744180396725947903 1 @@ -87,29 +87,29 @@ 1024 - 91338861134529173742636614734321283317712406433818139285229062454925111527732609262828687047423080667973258817589805005737017416371360314088086808443898371429020158735259589920882443779130428607594850787634565846387075036083051955856286100630464641033224957452092909212599715224401427904042049536509604893693 + 93754528746270947617601056633800291364861682298136548284561953146489022955904322738006597336491255826850217147425593207106178206216828010702018655449477593047795515376414948882934704904553519186055641276786533221369873508841086692167716664918409533164054262959579372586508029429553217016081926497726561694521 1024 6 0 - 88481512963655310506095083872998303955363103665395614689748950761935149130592150567352051526842435768907883513122638406071951993833483039104880894260670448994086429616644971856997369229550170174238792300740232364024915015016653492885640971890845653859579668498528250516917066920672069528744730214455335881003 + 18718193641957314100730569270853083678067699981231377053218236440200570748514195983062189820845228989708114721036335865296839656769486571188331480498517073112230023384223396819136721032148578078215922950710122782193152236503585708948416278154158382262317851500701694633329332013554441192971028421049617669489 - 71420609539497237732868765033013438071208066944625734387424793864620282249588182875061993503837717471514509627177747945260865425509223920765478106067601828682271744524355493795121669193837190303641492443480194307599715826281960573836394123684702869297115710345424755375986644023739445330856168082010838417938 + 82896076754196599390958700658750134011593697922866943134696485394164355313829104791709121309680409072619102123137695639536409295590399553682662365861769296142916411017933128214043071624336717400223646514016780377509575552315798740608282027520372471946643222670649888877298101008604716866742635601384004923854 - 36213374277915021187960501154206429350509009943784937342853640962344665273661370341432812162660134104129081769292257555453657933322026058920570002011215114885632603237420344104120014493999772566832623489577942137696416594059207873047026684531831127098662368796483679106715230357303209903005563129291440998125 + 21409157001559082435198762389634006574011661991672395549556344452730268173323934115852207531740777161515961701461098746369193405027011628705790585563246956558634006855496001853186543137136893612905388690157500633486730387558679778087776089487182622558762079085605279790603515779276275365424877533098872706670 - 88784875219103004490867409187796580439336028275646934064032325734642172796350750877782655631487263690600595545185986973949637793376040039529334242727841787186152368722684829777472113434707623526142748869410906573019822447060135044716736888756586491608663760971724703067383426197232527066117239191970436021914 + 70565991640659014530782020171678876734088049089005570216201610770536518351424325792391149871467733547040543767770865459680906464111242548129734433235362473871904159393238510211564669982290551880614995619280240162572467822996375606151081508022082119563011842579690659846853164036860838326243732394765514573431 - 57669682815414213701829150785790139820922208365396385382451270040015047105011059602270677532141334599848749895445377163377797098101769663138915670832338561398070313576223809679656089041902001668549387570675942187547921753080749715443394968434937329744189522351133848627606864859717699163427995004551470140014 + 77371797128912592221963604938094942633911707145381583508738772419154024425791944438183290768376322858296041782716140964031431791761038113224908751332497360736934697933992269356158706338071119510267730514533442260161070478749011694884944792352277737582112505303044197289488663410941538147133378198748067540370 - 19430387956073665040008742545168228237366626380409449215616316415682054432029605888008345798193251163116713132110293851289775570086405711097037612492724618955613522669964620645767675728759532995017555557036656920568589220029848250912688353596366989096421783410644212433994547565209779383923475304673100010441 + 82906267256926337774982154418825451735160292585995227482630966060005770865073506792587615848461940397794441648783258220198681551004852811134622576927680502421722981730340736873927483483912074641562013505776184518064639060490292519532693639651522247920944720222077401382740855126956599277073236976642634255886 1 @@ -127,29 +127,29 @@ 1024 - 171795367802537336198216850040760302817719433285673072064016704297509263294972920968862879995019333546807716681922194952612358665832924006994420672781322683935998563828829629166676961578310364216820723333284118541610355614763234524893877254301205676826968663616237843247997193664755408992255295724018758287453 + 117121510340484883218702815716016593017369400197866007284904378631159197139001634351397099006348261090254639042478158024516471273585541723720875693552232460895578362633596275449655253304174140947289638902997286514465275801294597279338210032808446791251347509758362087729471534556332712094330499939197910698121 1024 6 0 - 138781939743420141798085654234587085378791442750844156618218315519623156030775014083940843628427157991650536995512183146050090364430217798889903276779395691314769341501283521555441395248293145295446229257598584303226472282606025256289516823083353133125249557574662930559464988881796972570415006594877835195261 + 15107464790949779810848925539036116589164680473165481843812014434604020175520176471688364414295094594789131782714144993286259674728780246748998301348736396420755743906492330603688120075762111416310712907772599039447961132953865243297778270824554218777752426713792107606639541765351560469580417085799109151109 - 168420371175596160385314346470541456127930556988792934601264980767954150761074401191883764002057676025574635595559453082438403114835695017344400960903147888338845250647685131378444914574667053754042483424927960459645361430078126904416924147233083786086593890435155965855696708192722757613306648217414021209339 + 113132619367906663802193126722604452247067407379700239211440005578163970000183414500162238958023667292239182925037826362117516957239919821570280746619833192108348188339728009997904509491615767024576962472478540005115623781145645859430146502168842179897232042057741008928306919479034320821732539898654106307802 - 164599507864917269230220181044130466242640054454386799153052272100119238662434506377210871322725801768535465849520862187042461522458751851837119010844326508994699806461980159073458635731317238484887665362257435016594387971946664996341942792674855452076757886270233668811767159399329679444242304826944461878356 + 78831244758190029101616472362891555519371645829273483715261840379070989387145987292415360310610897488118375589143503280479343341807586436831967002903765461858758240031822865686048256893617339372987036343650345119947926372267957827867520649710294149310400270822176566699466347972287709536682523581276108603165 - 112022954554594868430694861746706902810007259966892035372848716164773714721760248918761857377457366770462246217862095078291990529093104794681337350992919876990886726535142991553290065736768419334005963502455897767959870639353796998608846837617297713305741565185682566104560690180553705181428610482999491959762 + 89583752214253883440042346912037084568006500039317399385601176574344374326678906556169715887314185264099152754269356405558198400381910728064450965723135896789762010431669178119883031744022651457596440185119193793176699852604878873526015261656614848828142855743809311777609303941862248597137943126610861447582 - 20795710379390313360149837901235593902809611922782438280826554162582584185176550436631972790505407403299851110962435492486911884529635673218790787915570636384717044595376003628898518022547995524968409598599237503027024128328270655662334146591298270627006489949537312823974893037600566816074625503584300399503 + 684918354387786416205491044839255104512468520452805205068164464332390890861013726899159853659380168702172547004069779846306014103550976054178864271837177474931121067671438226162027556594210608928930392798386737184879547657514532124037440133147012810854365196162946992675626655050241753400618846478941872959 - 4461068203835146920397273122878996496925951644023334909782795888195924230363311467297500231054245083629066539839024032350563196843805187870921285704555947110972472049763739700924273806542377974583744547273338787688284998293736197541473212310650426901783545952048410414287416361433915264087521382790658628498 + 2827090550656972121690688796630460105969591925581289110535338322165933007662678927433743438230413437638688120784053460847485119328516825633705134738699602887927163627101863584369718271691217967413302030401970248252827616171028363054960352533790801024629520084292963540458837640796067532543489914339488634793 1 @@ -167,29 +167,29 @@ 1024 - 107678493864345648666726963381598843005045134906745773568855127179729298765945796229988935480734186762723475076589458553114861073591179889992284613957887798550444135071834300620151269193028269405467525155137973905598460168964059816679287733081423902287277428322195154969572934367847409309681954541961841211929 + 99079153840397804685867478704958595964211219785958155284881016629530195136827933093286116921421314259616351394960959112126590774558615068567723955791014044034246784512429519014013254580736277387087599956862163226669530087515094282327896617665735736838287894898186772994803726158745804341613911571374382274217 1024 6 0 - 34780567649645587652662047318280460216197594322629290659397343806640717111602043777551795972363990570490561518129361133754971748815062877457811980871870613895746761204692874944262181605786891503668206019069701677551111685254064897625906904673396799614054762342291638726110702862138766341205373553864835127477 + 35578547039971283982645110066508624345573610232317627247471510693463768653398865835272238114026351004271431932575111890233938763056151590366620841232654704061531541940982892684581803302511323727831984614028154198292407031303845418948998407737432474830158607617228291146032822031461125981880732591780383080312 - 76770578985664099191449798911850613016440202975139749844785468106943538467941487623782662375335620379715667015148235397661770125559100524256505138827952950374296533996410404476470347577736554558794350087928716157046782489969073300743386412321573188949782078100848155826141059164451205262811577282438487833155 + 2839520020939910414585072396053942201285418477164512070052267230831770336300588444747762843759096401075210098436532138784880804799932247566970642529121364066612216811270441923475539213363391876709967520432970001189613754468394504726917294243804597283185825885394444717803465042728107614758510510324174671273 - 19375132007991059652876546182462672768720429677050803522934111565324016495763732172744623907045335493048740541182304274405106110493850369225158004210873483104238595711350247509966292622988932139561490663242014148110393502548086758118819001913181597386000596861820476450726333113377798106479230138706277155435 + 4257103436738693167679988473229289136213965822055009836429122086227208976617015158554335685934033709081255434321021922411600352023894639658729306158101602153035636660388068573921523812704376829383643150036396507460136150352573845700348414072481768647411162438985157824104787655967389449019995413270282384725 - 60332745111136671951489671083751897003291069716229419557442175701860610038139875996851654495020782497922916125497030526867835842055895873784260108184155213565134969114645958871640895775675472360543614497922018081777590790520072701770098022598964534954182431602697737796983390272144688966305745888541862833949 + 31273849552494023387697146195164619556065892108955510829954275657213643062645495427357887929042406068050763274296028240982751299109488666543364710271423257790548527234106226429899957206169892445232737790590754462461209360892073592865787825317580388584134032992457155327142814088810984081589994609099547807103 - 33206030625501357397902828493305862279894195856045523813806319914644617357371406587381751252409214237464923457683937662308696252667537129026830911327626477920950026367523422037741403916073653057335758700270326029776865721695045422550695292453931419295319756838382198216938790815705554550670037002167896435708 + 35347178693259636224425976955506604359014275201911436639125947893572572942967879891723093129361271536461729305849344256272804438952413715869305278809953911268349508791262359453574584301723678348219958163537617880479600787349102851371503927614310858588626874124144067272631324900475250505683917036436021292017 - 33699591887245320183352886957374795158953603724548326397696125237452265579267587282433792785552885615789973016310923276732538075279246287329477093697179355796742915804057038950601496710139911151519055346593812515824483642829165138763105492040862107512334441962031341198253373030460133402288720613467576919651 + 52102732689033856356640226142441703447547338607766799410243675288006455786150047981514503689756076319154821254787434210207714021249333494274124947142471750583698934512751038996632656769981162124907250526920201757770741572757079121833484338311748881797371896129073537143638484841938341861907569264174122123347 1 @@ -207,29 +207,29 @@ 1024 - 123460587970465722399480599701446111042791049424678164510782348298178989524706869827218072757318065802572872977206189692439610889543998303448261820274781115343738147716328254096174904353808537339736300386924394267507766388682907861666597761952802807474810395363126049870826035575374238638068965983199376357813 + 99954730175178004845131539653721707390533824134606712982410587911600868971245047100506766033962983317090892319656867952029116781250661480710843185739353918573345334339835797435830424130435498802133973879689630984537203490181103875802086600280921230328725473474449200859216711406629174468133378669755826399289 1024 6 0 - 117318302352368229229163809607702479318456428030157262995598611780776136494163450278418011369672196225024705223924157260734348678181103931116903595932563324645629923260513068155684589997607606713365161836567403767936006638718885167253192939940642824452024816730744123545240701916149057716603434108694989710429 + 58613911232307388786240529740987000882039067599860437772060847031357515586839511997150614558368535541427251986791314469299365847701391023351538654534248928653505326544257910522636722321510290544008094306357049503882695532643010370246985543037398842826556465466041122607877993972401850373499349505467940128480 - 79166656374368484214654356495255053395213742590584206280310930719755653489957925930346542517512620192097650425359579247070837443830862748231859562053718573394014868991678211219437490529223024342458612272327848652593110612340785752785585712120010687405752536405399684337596148008796260805479427829450136814686 + 23759200450495340002812814650036411105104184704810382581836582136381499246372180158982092762319176354865585492876056145343997330165572678887761521089111659694764726321928033912931120570410344269003877152629946202983994387902650140832036058989562136543699053859110798004475607769263425530430095499690012867361 - 40871868938993875410426205996751811587721008167871813439166564189762055623031521920195950886062485740929198925966775524584648439881883879228755988003547754790287586711275993853306093079373185290320968524077798129432974504079981251722944994855192019937284992580655570885903256271403090577186422692725459831875 + 27782425796445607511552503734068694227876277361913927009841359267890284063272744867098761749380021187439414183495224952502774379338236771979358642185898028829503362239763322899537168530813926957477896747390629838050847130063594861856714553628317263751461531880058526762279151869539133638780577291661705004927 - 89892620900640290140283566392805476442834511036692916092709883776370123872836264775868321860590685970283545083118729182759253902758383167687729739268452078465233562037688700620432639773342196188561501129246210605848453748122752153274263445164184465697547705606339433632142128437959746969173608800415728397931 + 8784981056185286950712849504706542909851983675476684831378521579437874438781947443207971368861700013318831210277930183684008548888491900029215961830883091576228665510223450239592867424261582734977160146810093587216625525411002439629017874997945384679431426050351258078369390184459312181275581036833509779471 - 121709777035471737364513670422914240357059445755508125094002474776054087244214559702633254647901247822895427221568520569724729995389163298559564480170015494003587855303221851200035414262844476231232261394773812801023837394666069091883472673028207084029985001140015089782123008327089253959339518752984564005371 + 67438312305077819888962412973544875116933726924127002079831365096482645787717754904826762149733256426407804919023613760756645934824283717354322616471896981039882491744840529505847451034873496543558273551287489104242041014171297514449081571270617393454781665775168456916896840386566994664178411923865986659586 - 118368291349285147157585550327202423335817645258822478079337019930721123815468331635525068128544253736950377216631099734999157547924851998471340790034858629390897530180532960195293567558086925678406847565038276833217752653830262850771875793504960255927890257698780412927440166594709334246027496966288743344300 + 3464604326727829206934168876456004920457656854740648111041341919379642725442948759261114328466645767790382904740245997674525442848992126187113268087612395494538879214628114838356903347298883717235497237827971476139254978851080082281176240683715669897361209280214505681097167531557140873892635301719665778459 1 @@ -247,29 +247,29 @@ 1024 - 115193322549187017758632085674974727024742715278872315780926012027804032179761766503288065034565716892785818153660349164554433828067796365626741896969380114418490544104123599167386238983295022270967054328089602503480562145153230657099035975059011144762714926206594556617956114445259820923651026107726741377073 + 148196264683866983246056824641461916553727188878286846814207149952700786295989140546602219816499052248745376771762136245911508160658056925812311366238900528068507706459965567045224239023241599326102923853309769022811634949971343037071212919062146382997355248278317770400104265846506381194883209546789678257953 1024 6 0 - 24958892788118393840566891402925212894261112686881756396217607457946596306978104211815943994414797105011718075194617345672726305027536665064724927900756862036945765691966423524893153682261745384165128816990435797199717205467355245097126693946214610135412865735012562961328364927779026079460708512689938357459 + 18228509827232960358109377366125905423396651073282009255000634400639380520576157033263066403255727758538148196007410118445711222636928632798833981031757422495552319975431175939254099574893434799433886121282995060105902206634281977941044087776314177795281177970367372303622719093916858010157621949175537375437 - 24288255554756812624762197103340158750190223778765519768405807403357684268583138358422886605098116268755079717463816662298139317595939687753107981126116196500860143071528623840509966635777831057754249172610936632021767758934196939105040316041127363794901161035243044698624148907282589708017305528332080549401 + 90741052971361642071954400353930918473049330103806494303478914341240604429740160266927238572355901048839288876493430663768138981859097012674365597674038606403261541063513022898915424660284139220319595247352870395164358600167094743461905071137254013807294601497510689150945162000419459659619999603827775332678 - 98573529002331715221466911082616318301300017750678680593832916072820765087229700809543111818625003499979817183312145679122909425246500434114287363675204505267732119319754784623466080567913652584576116756111506044251229410873182774035682045895464671545948436513530383740487677985431898275771829011975467387636 + 52734335451280775701279135902793102618804746933648573572440269533476207593955736723943187629344792274001509257176599036967710480587413456988273865241932371090713054609684326983191462176991220730297153396836508515256005211749658852141138853888828449929462905950872738295586503848336537871567551750808215082154 - 15353985435509734717647205939924424374297140311254436480413662376519872061599819892959995176175891437756042491481998969903341756892089428475760114248462830393435227191729623914880110584220456903870872511626091038462298582250901312945423814102221099309496784542055234964849111850334835617876760601457927418206 + 121858449637190773866676289376800522277568993915277707214462950174058584758252432920947572621722050668109626466687582272873980762806089036347506636343533340986613090442509515739606515227484919838200607799752117413416448281331606056270182334689643276303764467680282413521568568120011182673925501023231082406153 - 17455735070449738054682884370746228687686045089020396998083887583650988955042976829464912841928464950070337180970573621151968757420751546020224392735386909098113189353739054276774294071884697288831510878855213838041505870499205405393921909645992766577060606810395305981595413168173038810933707942671713337798 + 37196825733132964338623996101449346202869180967029642202058352423341650421724872464278502908541095717874629388572535601572954340968281300632852357761510380827733721910298105144168674114000458492760192448497375493358162287626785807975379359987001469882105036987321265846856757528606901421058839136798700287397 - 99078282433460334122518009685435268135390495565166370788375980674406524442600154170383521782130678737146346515697587435130336220692226983416874121180076768315197607852814628471856417469605509753709709939138595158453850817740160745949448738764045233343710173080910805476352529406131342795794391893459845853249 + 75089855211101765747300894547085312949871336795292159964546821502857006262710931284436535591390767143045054287236700353745766551337135697641239389214003872913304473085672132743841053938472186773425817048000547738177259207808092058727324924409903592113635766451695610110034720923274183936484960662875433336362 1 @@ -287,29 +287,29 @@ 1024 - 153256019031673973848391853908671616024035351852333113222956212092935054851555144537037154882131071118335109565772920677334385665987953763710322752551766091084637014937633351768184250877579165516584609222393690507834529036303945036774013832353124798268158248184389671641362425541416312746250270416649359548041 + 105921949191653130859423411775455174812642918848669759359209486362932598819678144087209481182550147678529129567658791265359717569767628215894734409001006779022322289698515237895707269420956251973406350695311822182673083730764296195817297540780868975477123852203726080688004629860517990328589192081987644050229 1024 6 0 - 15220542722079887934163021578416557040815588753014948049895358680874401987354756483638187693890778200226187944576153001580318905767308325025251868319513838639170229388887094978609944368236261084829465326382756814026047924860100572370509240911903760108844191920274365232194821110327754051188671927504786123847 + 86809400749152861743901567276848272927167445497006079265900998087562865265602440835156566344510296704141655423477235937471795088316625845837856447310120665238699640116252577611027501208177910037535632605368178096550493728239151536133777140960209848761693689914935806579004427834951787425614424456419297157510 - 143004036495287445500008244565089775614807488065311228319771443644042556939728810959906482515000410036341359319395672341423672298834030730662358936098971678898328809479500096931876973317120818472883465991015596717523641856810286626439287667681040066261020458108584755098587931772918575340120380122391279580630 + 84986197247511436399667031576140728639886927069411759928791244212693888161425776856726174455028312620459053949666751815466973657597394187896486659471058818599622253530061625009497213318036240988480751591194064567662021711447798444988895990719137206080680744526229981752063726938789038885269097160956167285566 - 25677830626343122473800267766987258667661454338633409925057452295050792502934635228012969731952432090824067546127184820674269109763072029928071755085679552707171555102523382002859000834013865264250888579699016146722510456747010192496630995123022435395781861793364259724814673958020662700602026307416209911222 + 12431205654625222881707000710728606382090929111990041388059059946907607046548243604353853640940005905715357216784232240313960881905454724897804957781475751038209721410086085767242939434308439807150162545625051293193433624790643565812552903666506190662522259255795554682338285362255530961345229551611440343519 - 62246636121089263731371807945897520167051837454698735241698439734694730001470335211863614247823007078485077900778766898167190790567301408855375740484748340320700390073275392868823940948653806683445411202776990790067823595294042946536030310357110325099679964532575421698733314704640641895828452919877756100011 + 62883235755082005523686546548606789143770348860378546277745391562811162140335817900845352214174699090463099544541601029119065647315851429798873533063329837639373217180256975002663524244050145680516763942257347656552764882712032814090180931672955198158069467918914707575354901887685922556718370751575138342589 - 109179195904717079139512297958344482754488860947001124419866306632211947700557001412569449694611680557227002345132253379015047209028361122554436255825724641792181226048045416132300441370043533054296640636019094847912470011225895961907747561407131402046285049780521232862899425601689434905370686341564422790289 + 39849433607740902504402507874016885026871507213461501810264903771866537152481854388265980706007990086277706589042473112769024003147970075181100851394556059066286357588607531753104924164102535180160270351409239344423986742160630582682803306956751475609550461013854012988551751425448894542674892017443824734012 - 72256199900300051197332501127222934244256559778006179914521739477500706464599171904600643790797361089413358501039731833363101680832368594873645195342133343135647784788351460716476460798313313942000048638227363109185805859595520325671335898545619147866290785844770980165710956429961244551737499380764677597447 + 85402225442112559560680078698274218019993940361574204599118634528616463142138719233262976451961276991618853156780942664995492868531530624507421313975512606915096058618792443156198101790705909662504630168187270536791683734761412420713398341369713188166278602069035350011783353145233527044956434445304512600650 1 @@ -327,29 +327,29 @@ 1024 - 135358305767271858027595880716111530935123928737890043873187024055476620530906467130993033452699358704424795550755169128359841746123492797756886097936671355386621176058979935393331413499392989299082084359031846630046001377108741347076252627789379769344457517235001038532356319713316214499718115421425871569433 + 108440748919252450268428286731731896396610163026933503975849925663492334776921174398497109505538747057893434317250808469760213233529336913398085925870706542294714657431121759666156575676722682156151413720356321723309169997769639095210994084916522091702333943625021802404556103531364881274617202822828310848153 1024 6 0 - 54594747011594798877885888974944176740233826058214590608446121481719016646101845365461669609593284564003581366359995275781810124519910313811380876256508679688339828939491429288889804388749815124253867496416627880709040603044538402764027705232404679640769755327219879688706197760711345784098387646185164981152 + 66366383659085004160581858686068110323987677633068554408731820055937312391603116323527462447105256578555787138213126535928787848971976541459974948337601213550884956798828607581314470984305212507805730810283981952589260529852613686591965244366260752647049304254010848262444064395193144695135425020863379006256 - 132783808999394318707408962088834983207010415125168788915872658758155889296838532193150695880199623917302322850691457856799843846471181568246727469377964494204689790089312937443605415487457400789095132034217110410411016988079403293808537223974569707930874192773033393470383855778863425429691879481694667628909 + 76945724108134514476845806024636683902509514081378625453698025707233689344313131316105525545539579926429167457073332412872790363136331080030707890397365463990420679800561805613345351927011441895347629470989024367971421806479256556337062265729708476344598157347724009574637722602080586962935931878380448404266 - 9473430635930700050486617160141204494342095550189134899476751191276019107931129114087093973056080555668662930307913633328246702572209665502366737090850431132340577394193612418080423291630390780237790223606432359088325373896719506291987815760514899446327539193574576164858114835145863147018536204496364575294 + 91945329973224060248558889328744255046597767263343203901720894520436658305695307815971264787080717251578623712083670325402817260476998336830698287676420656098045289735223431738396971319193824104754894276305608143683285127818367138056317944418094268645782094697587442950453451099229969927726915095865444522094 - 90024838355001075777783195974135066596911088933953254044502969121509346778938214241043930641227033089129624800092043075809246544470625613932569785625492513957934084324845138958744207292453298491639912468882105563813341034734148686353752495183156303339463108993280522860556963638419864094636988429994370751743 + 71371194814401374673127041666269343887336750774645785365973831168673801465656031844499219442062352660855087164791888562838903522706610239539435340535864232794707954647487039513635041583341855480149907762844377270478905725702421973086424891767443863000735666109119321036123589669276816773800922411249576027546 - 45914980508142788475969536593414423447529386876252836641757988714678457126161180788769040893130014877283087923780361131128613703067760746100124401445607902733176021029401905908890233576832489405771907746137014120822037941005000384307118527309121044551993381248785336586579186345829608419256901639247803554604 + 53718436417526636858730643071130396923526708450985497713286303484760405006322845800085165613155450183026982545846694095243620426398424635300019928951028659679765785677107062221527213905354703614993367947430698278405310236478443546679988798318205559042482374923767602250464637773429717300281505631064612985081 - 32911404065014905616571735182748738235851543040766582724263411775153690607184929086994340376410140178669625764641435927432683863591301353627927154715686151567872995056710033783341401210111884942070839872351093132272880604910175334910646752963148483903851675232134333338877843861382949858872798355076941765109 + 85230469722743515304402648589847925000201154330027354125047810198070022725031542612895149579396712621532910796627591852488733918035116059401887268218978788971949898670298569884150675654662295808772549913103127258327197135266119807509485752123513682985319604190596813804839912737937728219384325250171411540887 1 @@ -367,29 +367,29 @@ 1024 - 154218268867696507002031865996832738977246724680896068886617497685938467688459935868916544652628785991317792030286811386804084216509428288684761196875989322260388889257097276677216400072227578520525641529006704269719639306215286673007408730828431211470630255070235631883821820735534893283207489831811866541573 + 103432042254953094027999928574250715964500891045142387105955201932618522113984190182166706020884933161447941491385637733523319614167734344468728413306447688694643223282152714640407364090919183137006284201884535802398403524505317171875956878874168571207572265824173861602627771714795571730952163007208142820237 1024 6 0 - 27428799928169371477008314260818876148937722875877046040065001415256050285544612261240610068898749426541489168818274025311879557094462504325465143718226701031270459513481171715674711056192203762896591318737473272520615104809732143483277690473125331986133481516425478801944037361281857855867037438256343773679 + 72735857654996330036308578750037768707512446485674661426090344826756269113965804188268267650912305793719752190143646093227347682752079327651194810856984810512909164395531967789876907601998849500709695834360721633503971686727031033634428158149145749257438769804777610989050845392734398678464304671042690689175 - 105450822515849266246824784593332752863996144824625198279966526580096181889146860866466836912483527896334247490301097916546476481609859267630501968068493335890437763132841945935390933265030348476193713724966585347250648751479602155322327667705579310128424156557476020295924929348119910434857695122123769715348 + 40354197327776309644557445446598247511877805740566355719587647166808789073448238334020156687581688473278073371655120817040636086978579601886371654352774729778337067600125687099708508209515703504788115675665658396923040920295778105284271940275617551147714430295447383909281391532478964687175643491947382829869 - 17917586169419969792153843627847724624582303970451816452874219660498616008632452910042480347537075057133325092544315346979734775101435525533629606020738633039620963234297245636824119587829479049303232294479234284130684993231299911772911374146097317218619653947965414360245657311825149559284315208240541584049 + 26968813628185832884730391035851987751870560318430849916723371498400782087349207710865186129239304189549444082550532948832976767259584865952574643740037079740215589837871761474656629795571319987839311742585360362081712716843606865678855283492160943131234448889819908044401388366435372206735181092989882690610 - 83614794643827277304010494713733702635853026857962232621115526420680432673836574945397242148810823271595098760695291447287587902753143969200514260996554707598388279117974226336910323931721647138761776637137666044994683003226962992826724806567215542394880283109239037221417111570642218445097975627548527092539 + 44457756325918210432882749039045279802693637901659165506229652641196771463619711136701874027949976037693870830860638977238468910265640234729073206675396560391192913720942212407458029980943194950742066637775931509413627536969881602485810181257639579907992687706506901124298572869645460421266928082601925747112 - 98025334882817542595051261918088236466491396073054003041122381828466061599594157519317917789905097080123705591326984935802933433391754654298972150414662017901502818342450898330664054579806253102093229112778500389727696035428993861323041972409204375141288230032727654233984733937127115582284964721572192907628 + 17923816029308169688209802751254596783750808205473920711963121223110109870977619253002898105372250772280013117032657917924973651135856341002576602124287460305553253303790018252719017423511552791332813099369856129658602326535776342375244816034773978221082034151281828464402757244302554451737031177234874936733 - 103461867044654386108007921528414895482662948754475387341985070060736686576950492180848716520576397704988373242928703953709705994705234961029080392502757613196202086877221834313994327801773914413507546181585432001324248533541087174089562102726527826866350806480335498036140946354815641124317115290718066663234 + 58173516169174283964719668683473056584525739571524859721047404025100657870657926179915235481899922046403049387657375246255178245370444590309046031552510281811181831088860285782828294445034384018959362706962339714212986805788263200055409728428500955125311148857260741294606734880811179920282935017488093954695 1 @@ -407,29 +407,29 @@ 1024 - 120098847776259535343644334068493409247155794818213113642226621008837548248809756144435391881962615325304472487122528549774300242072619974184058684501061116769021957277559333567971936578385761656133295119311274656165996325688816719676095627842254071860445539705183362636859341285726107647847880667038640384469 + 126228903767442190738148096183580491175038013895363063255063879407638776222007762640020963679700983981505819346117331332097744171511439132259106773717665842976406975673619367222219945376954037887793874062977933096988373359681541459886631958588231575466518127177060945684448323334830138905052399414218163921421 1024 6 0 - 78341596191867165364462798149613513767187976045933270925524314074332359105916239984156112944388741605555584315673330918240662669972383036695380216369645786077675668119525313091263106903931060310783249892173696572488213764160500898695655888234795022024571259931035380458667979043363731060752523060256425326493 + 97539931636318677461475619122054540059104052317022399756575154292552051870858044057227021169523273160051067173161809677608371202374236595169900819410518245929982550711392322042314682950608013639486222401760902052975068868934717538248202265198283607804041217016155626510986296204640357633562628725262540901308 - 92197697267850835637041615816893083978440979223485010849369520091954329556817022954840969220750091574955501530801737742911131398158522167774789346516688492204741057116830688290864687904235809951324327245011263476463848478977798273152839939981363192465690825435376744018481972214855855772912890637337396617871 + 17056048088041119848885497185187738234341957332739548911174241850674169289366712176470014650655283087514808671532359181973245193579686505807246886039638542093762471617521947338468427670697788979094939538614633506767486848270358174624110579657908121127644226601122674835651841028567546912507950233461561314311 - 4748293030592378955093724566571489011651125070696427417853949295886768378111152102495476227775576523833542397763054262265966439448479602453489588304595952626064095178127493676309959239982750742094802606536171334162655130645407695836907472484934442915849957480725551564249920896993846998541219569493436633204 + 31717709189699030137875842801316834424645064031847570293530325225334129025771209881989868755679274813087722642958802113724122792623999410285511001585168859463078978573404425652982888882289493612951079566418713192311092484146177732644672658032091895076062007702891319957382778438919270892273974397851698486802 - 104584900904542556799078527703080866806316560026256596079705108220072609345471701770134318641946110143937813605502326970885364040335672893811516334052832715982398959853556119074396097391674101956889279124105778371957287930683941038772719876857983940733827806167120908159325650830304989434548687189098427086091 + 52701408784517534567979255300945480765809161198465471154967839240963141730818870689354317216286196381556788622550165176263143040912951902845119716643679329549799829193894570784536684136260779179477022420722664058284142073288038418969152156881985103589172969912151842893647108788505003435443026642491812317969 - 91477000374004348014105246188180409651649243135776551322813142142044628230484208001614477763449794744746082101984365227478095962810916246503069968738835364911647338508489896420278550004430041982623071421860079472688566117689119362544066175205618057687399701666608286724650867268340276001512993623664623275609 + 15916170466240831405710269071326971495003989098632832660085003103077847286202099441873708133501162524440579674719437136363718867648113746692100804664108054776712148615544501485090998986423172752761257930805965506564375676115179462856206417265463968081226820646414689722755150455107075664424251782354607115997 - 27335022029071511973872915368479831202151720242800820669365572158467591925687227633305136848793235934543162969534704442560517668695149887836214069200974132339079102773406068766037767764420212459478276529948373667413279044542607587605142289772231063326758841771162863193523221664294299814482921047353670436699 + 119874392493908971774593399912229045812669019257958357082614870704163802485902701553073252681759628404556483986983935409150939979774709275900622818557001714033801638980212024983490579855036873618987603097875751122714671577192226926342520061281357579934217951516213006849868891095137524137512935354897389930481 1 @@ -447,29 +447,29 @@ 1024 - 167849747908102684615783031952151303487318618058226134276355868669627336908402995742916429082816062902544246840315676375600682020395918653886440543549039685487527686497944229453172069154889512786032054308546997135806844060341575216655718028005098196791080486235476250761566643135320439910817103719665970114189 + 130984031670979893855543842480345875518508410205548385455401787667182043276909712853992897091674870836021665068146327054461603450458407290201372558787290109357683738428013567907514516775559018701817491758213188304978093675528268199327422042148541505303706207770150984130237176790872039958140095900892697292761 1024 6 0 - 124697971864257013069199803276420735672381775609467161633368671004811398338592994292357677388507254846498502768389738866111523924342131234320910182832156897093603904400854292861082845611922732284956492433793209240106822872232125951145778177387397679039918621121927819973078906987741480262525622005602565399227 + 77111031511076776748383055590862571648674736492772474529961718646938316725304876527853934806892564363406371656844786106299018421240298065574103119127179436601308127134820838280671592776233104655784461864696507484750746141074714338613753312756700370784915468572345403051130346709078319417883115672974802169835 - 108887781890361525299548949264309573612532412215054221866945026350960909252554790687820537292488822159239096136095460817189450475839784419203908369203805504902414189148576907397548005367318289848718165066768409808513010231990171238509327686404013042691377114557387525251911427307934702480124889546002434153883 + 3128131951563621685781519514589290396078543084150675317713253716044387307905521327893562744421717071028534528094967705348771755396568977554185830341410613830519127494248441161017549347924906597526952413022501285246828769224407661000067457541358719277808165554742389274830650941000817519093291137439421649691 - 99965937256071531833352267584518740705187568678398481975025487900445929854870225696845831801035897840798993192645749908958835960887390699965754669201895122689762609842067032782947025374191336414827383420980245403487860703320619493841364508653990560873053561052051848165272882782658715485304580849894447481984 + 24954141405440090689976175252555167972525713681839903660616337028203242900712021559077665304276350472093427384187451836674689185805100258168917640061516156543626305008035523276260649599372451478761753446079713760095403758829516730955461756588789162979921765890451415813246841487242760610785376086909463933797 - 135464487014068006350241183417277199933512080629319393539084556152088647569462879342427336794694607292779308330281931121306851709112290516904611886868248721653328973827011082831762202172003407136709090048796766379233700381954200275601566017619852103033202510881086909114257203408422383001855075728038739087666 + 10083134356469565434820655937850585425146227225076587201691007206376287612169498960565670490848694021370067252342213688465673488420651484169267195969254736060823678091580860232493159013856793525376166944993634152015542702135847543328581535175016508032979250811181479986919377039311967364297745111283924007008 - 116087460929649477650719239236850579624411409915463138669472799334909075618371332653913172377800254417621211492605964716808216033497729198457377469580439281611985552152638264761588841398460105860435413320874653840732276755863584448068058447432518834882323032920701627821579231087160538498920135097072056339130 + 113848733397666003768323762636821213490695764177128020789115723590466213187341258833452173134117916819367401260647045106530664613037790726812093687986435876985971021971510207916178699329669683834822651456959414265166368467473058891635488094103090980035908623302936245578454636917795970043625492656294734023452 - 87022481899114200452477329439521478334907267121400160768484310083510672665816499561166856734334611173826744984646636728146751086237799447687536072677043559995690196109619136304467129246411278102278767648846219215263506982413472377610126752110280476180152080765605425555155921191279654185124388043571147181327 + 86136816068775947939443892035798452754540048307990163601582410345529875583874238629932272530008216513299726778108060514260087906788536911056614574118478556477474027724459155894339604045879892134387001046080544595464847107133404856959533587474371075416239607580582640652535022808207241217726978029145005615879 1 @@ -488,18 +488,6 @@ 11 0 - - 256 - - - - 512 - - - - 1024 - - 1 @@ -531,6 +519,18 @@ 128
+ + + 256 + + + + 512 + + + + 1024 + 11 diff --git a/src/public.80.arbiter b/src/public.80.arbiter index 3fec28c..1c1dbd9 100644 --- a/src/public.80.arbiter +++ b/src/public.80.arbiter @@ -1,28 +1,28 @@ - + 1024 - 107700103880419692328367116189192966476991676044247270066988388682573412093995268127675329714869524882503283365433153067855777886711347755822415223285014370367907204226030855736100505094124667563432075907093753495448179510420086019113880211206042464143856137333804828018569350350077616346808261528042365211577 + 144170976074442789633983107720812281636831493890379871906787928656361496141630954481171789878922117317597881692156452921035341622818820997437128131939421191758553556013894872714046871899449247182299001867291572298463169447225166408746784323306962750801506303981484585244824291489519750898628009536609567257373 1024 4 0 - 49811239464878860274132453853118165567665132210498504237556572205909237528328968498933157656819613038620525455717236154422037318811347718104464880183252784002775465873092109328767022450835336038160313127256576724501524692907461024498436304787113822855161241721807247837541332450629698681312954571290009537051 + 102167314698774588654423585575807195813386320099505085954591484440510450019565006083809908126072889138849880553432760605779776329527612978044112903373860536694374931924179023839245264077860593363743355346541545021061682562619006375321044610853089295750210183872471305158283184919540389779582725681838056158168 - 17027168056076136391244849220951406305025813907508505982424809616929763646484280951528565172757897527053158579076495409131598179754969112120098885067744704657427753131869192016296254510901103944346847132094870989107467130103758421548956090998324832190968916423862712013007538578966963387587264785458280703622 + 79558062077455367743392037217956916812213349397820505050159263473493933731383178460036717204138935625285374625016400011831665158139500804499801167215454652328950641790950217810257808162924527535997213318494779807692621607182758878914550008280090367747948227913172684529749190978275600204694665014126047068767 - 42098709706440231891911748316231304841709350817768399579904282560957213554536386217901333587362029920885504180001839385889984845992260847425081760408769181946074519190294064905186606469192775053518087508245771765781558881708990486421009836756982229253107658121862326056529457376882972066640895392475655180497 + 29917219784102933954061407623289928623253809976174568801723492246847838975308001183988921631537547768354083610253061645107799983051210135111594450656681532330637918442525981541243761819695119333412955114427507322359979276789876901559456926908464555235532780317065480996889965098326875193708628798327950044538 - 27269494522790090735140959017359712614909438372077400292428155977842585299426100566659205458117020850798869425566533595495660629106252948862453459224252401830860280837157699181944673145121322079771187566123199358313444080388463054343347767294799630662050886709742907169795252338316105781197007706038593065838 + 32808921291185200067398522140293639225134448609752742861088287277024375760863494167566155685020227624615879619766646031250212139646836727091085883199660855643691490771884365702183297274760510272282340298286075419019660507478845538084255712884067559705581249405330972486440534214731134875937014626799811072159 1 @@ -37,32 +37,32 @@ 80 - 157460659574917351903369831024682175861597550158671163721833850074414895158604236530506554842287380041099667143154867046310050936379396147526924595991190388023049746134418297422151991403446948124736499697681419850182522464548659344906515520430666954119044562241871279705915585957813296923491903613099059216881 + 109621814999543178994664299620770313737202289023745797590367311817448907043710064448860083510439273775922315698372336051724579680094541416786280181823824022411818684244538359050831732027081079679813756346073618836447841319532690642670177823538548450184825626829582186658750429944169447402160737265159281032921 3 0 - 11067118663010135296825619533583648316963784982800157913323680145939789427861210464656192171540359819691399019074826112071701662334944814753088826371806595727517417884634884177279029951631584592818224553798280996290345970642584493295920258952083453101143840363110566262628203047938988764866723563029285378933270306548039327751799434665394724779395183778018527642180905673305470196129102073647921409217113690218859394396380683463026560691784469672569799690284703401782299091452848252938314873203599160258404973950778456209077938143908694778803223397448244608033662442251623160531516052447842935834946186706593746365710 + 2347937209187681221933400396019228561830405849725757587911820091499251056310114835943085431738610138327724079079589530950047195039640064789194395947668029964280929265602866361297757844805715084246971457793588305772750703066697079157834104722215980129387427235883378985150777176914989789011699063135268557074482795230870101360394872298227164069283841717793512198589474862080008002005536521870117607795079649374368616583884789499931960637666258520671585982129165083394621651280622562151713900960687712772486619427776444467869140005045706886195070964842138297949840721570792135339731833843570013364280546510674322691882 - 16142411064787572582402712991822708008440904611000549124982011635934782759183243976092352168298545334830263696515225974760161375664542096683114491428285696613863250591013580262107096123895664621603880058142056573759358128749891689824226109424246215238780682189657232579312460661149169529371978742213355186353868008613716259803866452524343963828902729508888535859917733801171404986642820520029255269968872112935449965444202333911259523419568480026592307589711498096241673266337911998084564534655849090434500980859390579383826874758960993074503326135445518699147339596284180781816936460336171765561266397187072034860360 + 7685892279220969148316460515434773703468709695988833717207499040185869981237339338705982169157398418958714236102685618854436487792620675508583021242723545816280550951164389102224072049790095553745530285499486654230279223318060016071080048643783775140479379310078287425871427449837579408360393236497072310678840034592075869900756981801991714580473240669089436629633510037775789631110179402316394430362789968939349164827384382548889832966852999022669546256249719232886003817696139063051658319837108699604423117989234018247992842098751660626912589997771594135615058371999187906762080078482043964331763963494198896908789 - 21734791425473334528982709475692823122610665879921574652954906635597705292253499482704361502719926324213592867725042985003764162823843798891627328776144515056149609188796069222828234328241795776901244039962098712542008775131517086747471893470000694763152058194866973876674119639133039282871481817552345284845547043910563229775411878908627783538065669269975974019564013736077054916038446796617730143701554504692776941699173638262672611562364284300715761900012926344475686775028021477133128114344138004356540767501472336542888800684334732252341880557675234676057226715622177772904897420535624879927402839031825542901290 + 8548063763522968473147660667552551086798489783644791298145743886165281857767182762386743795706504020014802599542788656083683954346255803729433926586722982839243472903732722942965226535265492284965578195162427821658086945736241325871030692816966127394816129003529139213411392977309662153467297538747557449244600811122025725651779062218439160640893114838571908342332694080520633759105702976333032695803216256513493459636760465938671016751214674305864003539568326036373428221019625673329798754881740447330456182279235517958808121816299458786579398696085367214341968900093997337343974697366009865355993779868250686917724 - 157460659574917351903369831024682175861597550158671163721833850074414895158604236530506554842287380041099667143154867046310050936379396147526924595991190388023049746134418297422151991403446948124736499697681419850182522464548659344906515520430666954119044562241871279705915585957813296923491903613099059216882 + 109621814999543178994664299620770313737202289023745797590367311817448907043710064448860083510439273775922315698372336051724579680094541416786280181823824022411818684244538359050831732027081079679813756346073618836447841319532690642670177823538548450184825626829582186658750429944169447402160737265159281032922 - 9641942891476563589217261538484918854990974580794528153732670387705786929936678402614481870862494718802796228074622677383651612896631855399866334138844542063264266274408006966341520123665131820124846307201692061179918953903257645409414586349197295665838027185670434370790311026971084955699605318610800281504594587652936179566972590561485856364469624734305908964633168724692041482113246295823772221670247584658138141036064853144219886478203024977770468009490348195931060424415228011959660739896586266424580892013266094375734947778562662712879029151968655887317889704813707693815227446976882589110010744282841648595233 + 10761898997336652834524666984668608238142781781165970600436237602598831502574309426166812995708768125838002413449045299853938812846358189512117249163916073458106681755456197897822095992130573212449787846743061386661373434482192109100499829913070148422722242883576907806637993935204677634762939049254356243770397668534726405701822123079116178390317934209281125067917114357148512657112913730469554785422141406709436131581398280917475334620234471288833728902200333395930877094335323049314933743558131153954301096118905512793865710302231197798693862139582850825078577362943508728993241301434078253220682078907723716910371 - 22543213951839230687308595083155844134840987857765008968524760881474103072657980357672437508895495474256585743773182287060615200802673359124129549644998575931955281835043570985388000252097330649917218150828912124614225506322213387355061345852894754476841012617301213305311654288602667713533522035353052143029290199340266400806589662518193757328194937473416895431563034637475978602839452170977002409620956744637774954554161327924033375106469974827129122791481179130884548002656596097609157598351335529636451395125730417175755007951777966600850324517557749023562997395128202354022727616564382075218451186168864254960450 + 3720648006313320957145023943005132227060536792073485745679870445047893827729031757343770827591498355621969789002949201790677922928466489914010246146305093811649866505293799724715015565115200815683839147604227760656261727167461434754829732538953462559513727226682730754261416245086206078958642846157210862875117168671013072851976275946457754429610564090997714196324363100970604775337795687580639952083786484646390174804014401198781174398297866971168329873721200250390868344004628509817018717134823574028254733988904601481192585913000756729900642165274086770792000099931433466936305024485290013974910909206954244617396 - 16007126132335876296358530597585430668989383123512222504951907430189157595935200594489042448702835422933998848981064638305589551075875746673848577507980797228243724317600217360314181993056200836552057047962300075482540048514702268474315911666963796510402707215680162558424230157686502673031715075423100813779740170990903612111095246884075603475966218624374397662701403896492835672835403014275752741826594459849398988413852036094784856296261380809521230991241670141007070552065727531399542077489688765118197856596892056504182847437654763318575990493801734767349298809594541650702120954829706069313104468398535370731785 + 10573859509130516817416042490348852657559027224329552410329095787632203050586519608231932571299119471545903304268702588803280272018280735510397569541955402276318879549863893445794681053880405169316741147256920422801654766225334338841887110053705989784534685952305072298455416558313951502275624882332800946341442266349865871205287758357807438018244121713529409887988042455629378322716406212172270817088346492827864178033171019353914976124838459320987662662455469136346883877327760200958283005429081522528268806188385147991557108418356064007108940150743500635708977428566884588097557121708542294200829926120965403340250 0 diff --git a/src/public.regular.80.arbiter b/src/public.regular.80.arbiter index 1a7464a..045153e 100644 --- a/src/public.regular.80.arbiter +++ b/src/public.regular.80.arbiter @@ -1,3091 +1,3091 @@ - + 1024 - 94836384803892638824117995789132634482195952270868994215826748984908869153793901088860747241224696418115703108674302399630637671188782893273657113184864662690443068160796842996671189834880158003941516805722263619284432858611075971537413772136662438909421338578041148782336924983435268250343719081886964959801 + 91627777388925608683661594735129665756971992609234738363553590116863208273109740622734997458398356211508803688504319979761871694283491572466845390005106655327461306854683056708352579361238543869836202184825244894198944604021145654204600406451415847322510390048548032414650759947954875769173861773777140505813 1024 1025 0 - 28628690555576767636749697774290185491940279513676706241306422890293703923061800503953138037347144087401922827665221638014945985342847864551153541925981426256309942606336716126401392680335920838438810065126576356377975697801204103582696059784982593810421090414224431668947405969548050595750335080989525167984 + 89845043926975683159263323710310590201310684997997473373553917305323305264555600593770533334283739403697589872149385838932031902272621369170883440435502639262430636475655836016841636300838867128946669110229959624249371532015150558100720771369342979639552464068774105148357596229441248470744242800484987237017 - 12704571413260033462061464754451074580382114173014224139014431276115694168827187805293997125113272343311324278099547730111636857343918161732729826829503095721079360301154347778598146984393353743303710301736898535862952817982088561340251050785007953162129111657805716500514120319695870467007573825409063699688 + 25788042180093120547385301539479156696076119969001818097741918188986947614647945632330937074393360200827940552221704128085862294628946638623955492302331370133602307936104364242017943131669429604283388403571108041182460395984612694343190000274974757745568647419429386808463866351225889111733587423376447148257 - 45227515007551577556218807394554795639782554114786566240816377599870659820546368006941208474813254386199493094911687799734757970217693820511125139219183723465993685585973309515639497431094006986068540552860410906344200121814156940685114842748826666215388232186681874215905068908372768496150840584696553675722 + 31997719206379712570660342659362526386249492213858280833132090392793381279815690919642402002932967091296841515829379410267156074910689223612125191904714437929746987800455403147328492858919562811801883951825714580873962182170487347551175283688813089570111795619936497603786158671783707662726937518742942018556 - 86492925491879434163914498450911657748150417249957478758084086162563205664026800151265448125596380943442372439272136227989925642200754633983103587916679081758035690802079500865977773110094907466835700423213457655121075772534776196297203229657104751498578084275940964029360375798869141451210851988376278109718 + 74896448033637695500659870509438026030306667352555164586241518611339010740763918978040212245435141760809971412563723681142978198710842179297414000561614965960991096447255896395671984469561240832521409683096397552387654885844955516676333783072604259140677029761210314494181458261454014966222694177813488062219 - 34169033322761192018370276424948631996199772331518271559243992239356341910132742770283049384839569694666972361644863718702825173681793296884351860361980094070307601790674146336993970437100512350349702810418222458602675266977562851793778848360775113646088196648287899814441069730802356606940617848817039500637 + 30825614612122104007355481950159243286385517359984350971483773643346222072996100946558783009299610414299540229759440314692291884596279513128771374389276439099528073556687397962646249322174014150805574831962684516846546746882938163014372368550199009356051222859483069981479047571925098151787910298212777432139 - 23617033310059654252479867777809752627544228003099634204116368399648674949222872702184711948816864198585783888739684164688625995476136090851512108845578157641229762272914787372776781293843183599428892883531459766238361726217665263839978835741638943885270164923600171930484244266394605033117999707136140523924 + 21759193287538622323834732060897238734174415558432489950416178177927517305159068393955246109589586220223323214950006459407835048505176623350706014596035746731335318786993952544272071756701255056142144219496659556524370079281521442246746530218250463419106918544500190147588060422924208614772006819628177434377 - 76178823264498322872026689457428571290276029860221063151039075897883830520156452493341335999154306366898316956903981992758809289493898717701729765994959254737106638982631012562834649725117228827909757771040101702706971237450667764212367417208733132928866149829798703383858416218714316107959063435139647797474 + 44854802839000925610619876518204865431805146423223907296565947354508379767127668112377593669190648199204586569655401643445306644019044001985919644017335560914420714292548675688702010716460350137150988377246483432200831943199111349146466188684655503942305541074924649039359266999386713846684309611009465460745 - 5638557982272521525189167512579455915021874798158896342885355199621907065483735899043984276974386970485059384872870484358944507706508882965643581920025879129518569034602972023621135730019835192511245731231515787424568467104605292785348797328103204493245834783555930592238776822953619374400709002986414501829 + 26525278295672055025365859522771397377910191618475943268205652419415251601077712468899555292615843570639924741194456378921182695742319922072274404239442664135094098437960013336245639414093924246726267065304443641392639424822905961646172535021256537341202105018325071158595903048662076122622989845083660733418 - 27480357729131502436767756665644955679853077993052325031138498519526165314625672915710347010850690518666383024609720232474399583066580200962081230950834133097595539593474609988589630560662293551254129039981028709780868682077806473609246482917392276176403914626605057356963162132690807940191107107726099548856 + 73332173769643781334232172187787132231290309257822839378284048650864044607274224046725179169151715846057954033992178051692366878375610365333390564353796626110741365164102472818577384701038685165448645809101363697963595663725234759745474435072144023019949292152495630296375675140206023120622158470281827527877 - 81806262851964456317711834014755776755356920296696004611648966526162434237725491703327615945855511507408095073269288498873361391540724755443913316968029706162380509788381394222544068022801297063909482203133029231461606026525117582407807023968949029541939572335382341656940489991762359806363948292889697571910 + 3065620399966367053161643306262427071625854865993282620182703432324516737833457086642655472168608497664514310855048933769773163001116765422958498840193894649317491759363192266185483355224616771601783956909291005485557535274491976740800103479191121239887122299092076196934654968403273123396101616060855626442 - 21355512868834606251992797328324414480054758010899398627061213705993340685290586987473873677178850523791712379743214662323580443534520266725491966348236567037202326214584423131366143717888276408085715981466588760396791984486952540781326827628144001879710643124410128036812807721668622219667809364696705210826 + 63513066951321223269723854620639202990986998875419209609753104818902601077311001662563564425021900279890881655842681030206421817623739821042433090153915120077845711379799524987654112731316073167121261786925757607947030006232678598830651529046512541197771437622589793083144960940593910322697709947576496082986 - 81660394535628823503892435093479102450629283684673527514364826992550962747113264059243386352290773413740471240591142165398754169138444103081865843549746034865234385392073641186701977361775527784839594001512361756410820717835615670847734053472945975428823636672357334192351065772823196105914902710856491933306 + 1058322501991716479165319179294432263776222576910227593624447523980926326651183736325759522172254294114701262353767394958379732302951173704072643168637179747842260825969151632025432711174429988846207171772965620380433463626066857185566519053826182772790527228812011899080240886584761182478390705856882693289 - 93443232343594221280116228685334986547320053798028799833920740940115107372631529652567009057048540447064087482464786372999140967311472891288811816116675694019255857206445130981965995851326320292615637190280200552347680131930564198239840424735085657760574337415826881269773051246406482015670407479427971247627 + 66002012813823019701285725797277378555557347001492169694984195939211116921853386027960476141882382054282925011887108459890113052668649036300082210696819665823782308338343381013108658403947131018260396409277457728782579130506983403839684504869912678842000880506378333846139382177339406688084747583846997271193 - 665457753462978321958066826133699345746877456158588620987637303190348021782228758129424552337789919840915809196362559635925074949969247448712224096416225490789807892698469361515538348896789400348306427502466976131467900408842165776492299599591866647501587145010110759124967847959274247283855576734021311255 + 59246576504029245547000785851685025033873851505280972629004680148316652974873514499987748480226514328115453308043116970425806257237163538487090483060721652125959841401485197385959325920266405995370351894335568877543559355402141312947613556320245407097275328679549315113110383617060529412394023008684311736891 - 87529552450044278171665673267168074518421775113755070076521444611934885487531844560650922788448839723986150001942529112077708402321635785197160575103073847689711454353305862439342464700271469704892185123982614298336173720945839998932284887028635203441153300114916201733371937265080280298178707023929366577144 + 52356719908817597041372826587850023794034573909462755981518422088104793232032419580404568215448920010465035214428297854398383769429012582345132421410200594157015864165814781366920052330511085120035616684763708562031555665255760045000799275652518846485638800011194223812115459351871007732046791921085890088404 - 46733134918332451822552461854768825469343265193931530101433280709527275715312590197162014516313880636995837687605499173972701076546820711699154326458999534818187481927255346245276546799162148010363338346620923542716944756976539233240344520945377392843314813462014157492564247997153200806905918815307212595200 + 49582197466804579237880646278053869641641348978349935454635953493132746300207766300399274680342029657516241485498069761496973293336271333611123402003599769833308563482458340980959601720868768403181807923120711855807785853355294235958421774447483729017471129111116545293103643212999049016171915032291321439478 - 12013709506346771852456177841053755601665741539562110091026384367294360537639778209075406205367160747736832561115008651566012049235766050442587021489952341183905561440090994775681745848616571811926564632064730679821253191531882600101381383971345689823272231552532266937458794232494271070442345355001359312572 + 48212654888983892913439772190302524231847335921028015517658556798251852533044133492167391000647347876572848835188427079772431881292736673648463194085272461428623124167931443101329677004261727880148893071804204551203113798711879661925582493487878244207942219375635686515934804902983876367797672359495284092339 - 34238996215210005673344992798622722522666913078442948193692709132286641592176947669015425539971581021871048377514923213443736740730506734786714747186703971537962660411201620756192890401314069347973609755132641866318018348179059884667992269253371972872850660369921415186688033221185169189546660422117754594687 + 22052997465901393270910402780844995460132859939353808231709037271502833420251077256049848457973778403117599225615154886616447321745787187367611509882355007910625636777816142522771442402242653798190579583204274450973345218870108257244179466668223428840298124550127011952802370663423407742570771752684780200693 - 70701289571536034505801552101766551157603637727319266012843079614112040967312277536130829722546500858617347890055441421374083266267321224231143599611417475916435970971049236340049754006261198694129562167759298477179694324773038550281271729056432913160625017605344086304416115979734180077456811896749721596052 + 77197231507704363366216564364180013881807405795070118535669310035213038945480948675305433203055975569191701918221016332573938511196832337299535842555002685917139613891068455959631061341935776951929369814732813786065037896515649142956121934395533908341640129277155856339931269183463299980151938921842976383056 - 50863697030073298733047607127396119023981100928545980598284157265072623857852289488246574201586953453820278646511521621037397743649271728577924818919827320673688332267392767860934572270631871355899663858316347956042312720476642459693883050648195789347630752166209094573931739290220063151503122252538382724849 + 45701510256378770054710160460107041896151549553041891799723175742911223998453613649164826948234478357766779773382128749152059229704619894600532382011445527373461861862292321017725136373337110271935018882342272627710141953342648926749514170951202490644204006227967961568646786109370505489757672594026399687876 - 88233092790171925307800819173305883091086435485076482146451117747744223815427840845940230430532749085835875160052759856167595057651183816668457030318440853329655350638199367531525005544390688410665409004643070687049953762146060828686525312598479691959856022057136638298642742832263775364257770929572822722286 + 21382906397982541765652802656760504382683463419903238113489762875424941789953855596806546957184603958344822870991262766546971123555744904544835178097578394503338656646855857715002294654946102003667995356118109039396732809754384292478077563102921475647245384348660760764673490002745938164847311453546450721192 - 20184259913213495031798491142252332760244638612666711744243868210182512105548371052223551606590888964166483590503734468457528381586171417923793589503442357186901875654743449889269167246060124761202000215963980853684312316212537419636288268480351261161273258098032552093928821051705628969362153071398853906503 + 75015677382277413106342149351014979889309314309114066322813807665610846733113754620848893114709094782281963469294763571668421400104475615691726973103458250398662223787835438546720625875719831050090209943092504765082407137802229279221337310389993194772937183477589052868627821314378952838076916386627144176907 - 69672732770109565573907729447446493763627189163481302906102808544915612747650358807583059347235092783897369685509361069535378710152591806590797562906591778983830882737505423973278003706867627240778518331523150949098959828365891152390572317437528382751121397890032903718698336991709522586569399861629652549297 + 34707700239368805732470982837646198912451981955307066372364469719494532842523417722718694722152046724045838189776300110848546381970356754566096401563486025087604061728062958531395227122017963133922112320075376762879507202614445381472475619104043608823166070951505837429787465800943466419367656840269002437473 - 23670196265160624947999169825087657430137286570066023620883321217793936983380889801784331346265490280975373355471713777299395352380314855078665225902611706323824457313746661412271695660211488909083821397447176882861454357619826883302184275598218846797861075888380811309625616207819088428276520369615853266868 + 520578142211239995797616963877640319455916475182352190023012986487926592579038131169636566691726287491548437502613279761923995029503933054607761720439279723730727641549086725899240896837989607170861717035054629283264825720971034750629611952377301399125662262973943441611113086577594175044730716320042860343 - 85303266658324976455164516022007243890303808654748830878294469179152517345883905298310033221106800519384158052623054029043059135101638448825116730258282728096918672540655914196206764311914948589233530462829380642912189878285275672050910955052321564802571009338932064789362977800672849035696485787851386554083 + 80216009101690201763929057756068229959874918427776833137988972257816249104489142958406321073315663212909922462495351488626658278171218640013137348859838624805860660330026766010116064607007157390273654404945250163075154912507938345212741054275872288462477848440235866755898072895165126278790471460940260646173 - 84796394576424542413729348436703721036214167053071723433322831222039957379970758058518269556965319319986007987462741279902064888673827118002154927844697639139055212481814632825855504924282415544390162223409402504016492398974578883550814121912672790432260121978324424788619352683919259950804998646876782479352 + 80278916618988287713584330535765929625923269499289860182630365518456307707915676274304403307894732911187046503278038200947255899275359583976864064512513824633603190825749674645715011529591826085042984850622651661434608829952610587546868329005303972206647761699298056071772853067050468306801724566212322899718 - 23616774294167275764647430758317451023245466185550945532784149905259093867930231522181654116468800134882517133931250881081763606833152562122728354373859869768336188692596226580742005487449590032024257601488560665647183935366249364771345129751818726774896463595116882382130706081828810416481815656801293850540 + 64589912396055693789783237133503540772631422183344270284570983981124658128154896718572740239549917740575386431755601620831217609990354721236435693692260724285853997768082579084546438193333480691014552877404611619474434616938172809271533791179876201854087070437573491480371071119912449487727488349312419082895 - 43916849052270350847038558919951665010406087736387840118622629011434610934374611562680888662269831255905902472055380953693253871521960168728180960237456558725526686756933229331418554444582502143902921635825500623301591219251482239350287164952172384621226293304748605598460439681928237109494818626826251176427 + 55747685032633349793562745755048855235462951646124096399639693910916076857986139385923745899291477873446509137314172707279970560201897938668665720116096448788894924562560110441924078660267070432335575879673487743892370808939592249421023661200587046822608521764790365764905301989412545801459118232739892439758 - 9368999096796726498691530612091162854589713740628130275556581685818761383699189842084457551228306229454470306942790235115381212721607106877934541876468844996182948597186993703289358865781340455993925286966759266480650025333894168086829276400328352051488226716716157118927177866124656000487550684188153880902 + 68460291741095452697456718552020511986960734869922757775678354853955531833817423352907967521237787929510731160058202683161773580664170417774631832586387527172383165189201010931030682958398293344405170919934916842476451386830548053142171127395090489253075529481581561151097985114536467210218402388770899997346 - 6887526574030259126024913722215263145181631713489492377309359198805113616788189017758145837849774368159782668364727902571107907014225408099708503370076876697954430801538554765497788966242422677254927413622423228872864441747656081361055581228658275166501065107591279257187204970172958178725990268230995305286 + 22996102970207813464326919164707188443471398185693077549240862457596308908542284970635625683525708651167119677302462526973953529765694341649625141093967584752399618071759996465439336679612872681900459337748040037495598259623899477910426455898902732906066089530261662191922336718112121886666422251099457868095 - 90786202798865243325192491837884422679654157508048309818545353502817898646503562575644564593092963759174158824974539981797729061139363158661506644136669725222274521375756670943678074697345462386175206873247638506057935773747921854282423480951307379388031376891828987660423748900399518762097339027587666985111 + 78819215946780737052943028785487218932862180290075783581050807945759876444480072891328617074528386440993678608760657736384998334953693290966588296748057402261666281612077902300708894669841609435658481310861132468694807767394298451936557627640253717616394432788280891800220860747813262518305607518128346677900 - 45907139005242770658750347453123540315324737298330603271730335734026559487308352947819768850942557673095363050701053454589466768996885521746954560882387817819371815745859770014909633165847187067736081253828862185388670040800213330572544828859023342030905801149155194083141245549834491234436191364856725800870 + 61718899640441782041648822868263552696994606745554055281089599692657703472492177543567162592484893954422367886395031172764914264657964598601419753157563622473959651459170448455391586982228254479625249930107659884327149606664311271034157390144651675817723526153911115622274977809372212079146420949606048036637 - 74862712438940341391062729169880372804073347434493020180387962928647067240812503202681503807901122363679632999315638690723715585121233876375989780699457185065014490823087070666473443171181910904467014473131553818977406868855491854537919927217363492783591772636012535278070523727565658912903473019463167021437 + 39667721852318699040556133215656897233714187703191264414126557227647433068958926579935226562629839249909291638949120725506046737022390074048536773538887900636192883252867628431943211185150503828119091005284696171380019898645053246146174756971255614200540341729101663144113295569012903332837633759393465304112 - 16861494762481731393576446363981015666956561065806396907041576810801692286312403186519979527021520232294250044311394513768181186205923109392629139818447558289687304746884145313174923486680778884344892807086973051578344337317279233924903381040670112416065857953450094647077985029159484220645240446816515323275 + 10618984736827201268058165201877897411159379995961524966842800993706007402499357615427664983200738925389924371561490794404488992981804567465163521609027245877470650581509446760478760059997842395036119260349898645366504081135525574878373156536506716661916407717806182600876792240811820539530862057092765075956 - 71718097705939183936173398020212141859209059182303458921163158788703281151652713816325797184227108927136592324935489544131261965248699318570977917413228085466668556959512162096761051537933806230797518863633060807472690998667737874939282238057581159644193739651472476027965797158233817810024248472736412487030 + 5245912802192332060831710965504282231663737110952994218099770626399311178002761887482307048866117436458346209056767416909085340408659293595949527285985660569882607884007023786359345282532082649722764945025718374922855368578429773967424443063907108091148821606674983075119091463099719688760020564806672482546 - 78514820501846800750141281153173892001011587692826714038000932858772778559170458289003961777247337179937462362926604914978202105659759768215574865501241990106320926438625978213740963914252662267302946307528987652608915361848107054570879605801218191178622756707182567328840248692539433038977399875382493506845 + 38268666852909898365366328469029287210841349113247759491106733045010784103918585647036344879764958188199579131245025048931380372459961006695910362898765940307122976760617727069943335211028104178499028754656020965187854333987252791134010476929903408865244769369548411165251386449693054144769338759218178215094 - 9276186047531389200565502752558090046462596134925557171151054393867960770500802490459574125030504680254696384146608658619218084369561636744051821982501422935216642611828879333641958106811441908074572229022049638499972014170828490876530956719235149863392906235629286693817590893325449241972140345489514700746 + 45320262051841924951738374945550454723368962189693622775304973562878693135593553883815515791875312878404759959711216856723998850226152692714792966913236412429239894374671877766255595361404522033207159310326580936349834022040958852298956799232967030016635316425486688096396076606541074282987213782046069379310 - 62114054418180345888654853511453628038127632394870753592190341861211478716585601691498167407149865811421854785665780497191835381779014379326633643281782948330423801335658266298919492833413033682201824075076002356260353039812744041751828371619428669909244959299991653758413584848277263042991939957476333623838 + 34679454167423802350724308426580495255972877263149838581217924809615789464031029029085827813574774509398458615409440085093248821613442337404890244360832498124356652281937412619173261336792498725809476490555561041103535384240261422434290867957856916339715587997218263309783650796526711417137740913870067028104 - 36996356366933261471757474458454642576013535147695333450538934129447837353348159516148911077864083876943696079126236600757851741370021315076104549330572850487835194618880857596552874325421062537328152928603012714595527711422163823708132521434858022750882990617144882095357647453873601218156526078200885440576 + 5088563817353881512339446356778555299223227263749621005003618474845163755694047859854652535883148446811523267880240546790237236016295539386292383377601923591015777429071002723265815864699934661831328978571719298290741878756048574407136732057612949772015957526904025343603166035127616192442940430699743465232 - 35474667562374970636469338483949819381598248687726889659705371349617535414039688381803457379089659936970505055555159558911289566024033336092845863072370408653808751103139188427793624910572550558696442789490586641095584705633021126216623563995996179668619445675657885397327498388938901544013637149921015319994 + 89347213656182286642238490414449416502685187530033684181146394606624262819175030841476668505915949207620007916488043808790284798849059166321821152137129864099100326228976294198771446284109094236240464332395035606569792342179324451349059865264029877959591265445455791430177165573819203339343132220202207258234 - 40205604502211155622177776415604168845092345265363311670684684365042995270203368190838555994825332648531663345137097139055118594505801105832781254549012597161895703402494046128362291748205526840441976837379234248647321955582313618343709302146158701756426501799569792609338466973396572121639456732381602125391 + 65278626293269410817181088466924555172567073090776846533671619901838313086316360904139074166446133877804266273265631092771538975569405045913293961880085134596921836107786350748646593060050072521048602884307756653198392682700479856213258145713196933760349882732967068938174483164121712469219335058349143915984 - 39470190120430232879097805958271657168996971614017856055399722186278832153094912215441140540580818620127299103282846565034506888843771296500548199366110610689539562119001611140909295138521797909080383507911795843590860442792467575624677101515574356398911117611529312741134763244077770042684575386177793213440 + 62717576013107773313382028226973160523992006879035783984235257863388669714199768719346606828306446905438338546545154662431602918849348550852498665989229693078235640364373411285968051027917567006939005051549466181722027342838754855708501399661625325622518877772233595061977366177223785221628060151623288172246 - 67294791522037614298777628495706890884055876288715513943252770451668862536271420414843206990843257381394218473983279484523164281574098825154408697230540769856119237573988350985971720771244102679940167927852443032413891286376861570535970074635349386134207083793622732232848627027136461106581470503119728111060 + 59257183272660247317104813336313514187492406101936022890915330585882288383145930960208234483495968661341052196302913713498904056344155595820915305344427741160737319658384129316341452813920621165161403940450017477786529850190652638403273126850201685672482745755530035293556469211272141920146658278441763630346 - 65112856409705376447879589016418324386222508615208976196623771834819345605644940998162927906152958245018985555005003333956014119394638108669323200877656400623802397871568700895951386101114169823432370753434713213600462382913862245820375418803676020007771297946594332356459302486520260588047557680354333856124 + 71070599224541035969519600042126058352470633665843215375697964566771665151012144654581836120140371475238295035836062959774217733031263135587826908955165029857782032957892404491015413375147162482295296539916887524892025745838865390899348767072938427010682082416541383308583480364524888345064276405938258954603 - 22225621149469427167143522590441907638451161812079202129823552203973004877283814029163060922373004232923846312683647690645254655380005162914952968515420093772429940352675551083936142566929770714699874764766786788246969509155338212980171531176064437959973390827142448487122482959396448317385938881498134612697 + 29713116989423756428582500199364469182047467345245854114238134566067794232303480903198213229671973598286731585797379649167368093675189808759303736612917892048642326261025208053810260585538675340320020793772600263280919455793662401020922543518285814594439783895722823672689699124000653300208361071478968974234 - 42936425140928274141630691796462930917499300729065315255228396763291531226802651156304296638705959969783478212051762953465445664470589418887836846032005717017304800217780592931156154164374799545125261471751145122164850656638213095907957471859957455289481959992710100105808588362092812305819734578549612957130 + 1748662500587434025344355974206121986630121973496098263922232125484611438088486680101085576680048417511525422291689304050993642793432502721545323521958656302665419641945882238510023235567807662887843840530662904574077390042617969933877144004194019128827327497173786376483371508839574134792549655656596156255 - 3789873568162012345137664722249935366121726491751407090473319964311034209919349184606705830687292893325666450313078654783875661127123773601094637689966968399689943869882601758523070782123301224103173756517514633211877191445278619824987183081431792984326465357004957321093729556389788539757857292387167767527 + 80704978037126228626828584790734038897439084300590098838918778632132531036765185769528902776289473351327476222832061136644310337258339622319745535423566764179710739706392614214434054841023378193678203085215047590601979172802628268081751645446061437556269773587151807410541637852440477089965046386833902025754 - 18181162042165840859358544068083384139490654811872416119173177906130130492299230719930999765204784932847107541778741910967119982779061453589176048342103131595428587724771284384320784256827664517797775265818500955903871650142617662396112195758731073698437952003199186801128911818311564903152910530320703706068 + 20682919086622540192002012175907236727722979576312270107088875815850607234575292759375354658438860138331860100601686936326973086983218498130475855102395212244638908110772131416974854724662050213936920101324086652054781479423730446300317335990904068771983629167681568944013332856402143362114427199147557682758 - 40309060869128243458783473796447229484372078442203848514395048391112265393595954505765016952825874859855051157873330354005290949256367539656739141773371107334758762625082105590550743944275577662296509552999433331156777018635812428572525918615424485367573673225731548239814075953647568936029864224037858823689 + 56579286120513815906204631055302563756286129317088729415054619508992953322107443968537979623596376967737468825676794011743717404136489951270018877017474379006609956975179671712833512523687385941129006372718500150716984969516761842390008679695694647067742209700907500090271380094231551794409747606012939320180 - 73289404862745886286447172893442243102793327449558037167172703318501322208375440306863533041408777951144111687108821112008378158449892288017925377743605933235996600365219660246908352877873056410168946422535974723771051977168412647548510428603719781305338067217113423533587949810357459813026122008895188696152 + 6665489562719029377340148482631336343535472197737319997233824099665097762257087391952358978166297100079418570714447172179604477428282910439471435431576531262135535558617867274686120375166165764076866178246919596880746654347699330777472072489262362846548354222414084030797838939231780769567325079942636125563 - 80235971462673911301545685057667105926129492405417849229758466298978811639586641255774574962611745623306163289159330653081849211520116231959418524604695567607023044339619290999722996505742790402227154686209157737905389278278573549158210044348603031961532048800791654975078820843934672746239257981604847205391 + 73098664122044828524757810565161646800690384428121132169132740051708003722950275863765634281220099135347795027309293561897287762847060127251280262182855904070337358968759782103550701625426958992790243702214198508309618142376408005818103369184949966403652817035311243293217291046800830552442153141912922071821 - 42295188574234621979563799610494192587680661104600398088716313122178205413805343353431700845143543443586169738917236527958046087938314773562788570188023884517427675621834215174920701257798202976003582644320312958005631541589194335692516113708755464952532539616429244391057471767614567680928922233961246762082 + 22842511184508471192438615541745618038688006954704449733719324228659186409144797566348373485703790355341289681675540009787550053007797550856479794438605770772516495358893359406747403168452150345589632730058190006119438274480046770730943010766302423314501123239402489967881433833724557284954722762545224841573 - 23183812362991593058756422708016576275872360796423086806962787257478787949934630818847548304385127060800728082291010805480650350458225291838717730825276439730942613562416560516255532207929022306394774471542099651244780625663565962164628748159012770176568212525282826936636214700139100439899443783108568523066 + 72747943992727916347725627771890526917174634214597974094066528937974600644926027858540082681277678541857639627035962491479983929359250077121210771023528047122315742588144997073164271946064536233163008127689933861675686165622210448324440063925177346033758827638171602358494921254089886033021760222771704518434 - 4520487780712146224034198137360767232316658190678356833543363165481055594664896460683497892694013315075284724690053757347161898791306257597442442476992376910642725561109759594468046919148369590500984828765550082594038800050460761379194625492085519219989410548173153674548434794305940028053501548008394455531 + 58289631433468633833613693137798307671760630382250436611943766831403224583585358135430406820424782671044358716658724913836685011055967717465369472524829288610166833542675743239792208997409865984834031127281091230601476328896363290577049586128748621861118002464459726760933374092834364698944219682822818431398 - 41437625178975638994817188070666873871076166772909690432771276069430050934766966765840058401538773581072952115188263785807417475407620243472721593524544329587148199980311705761955499178358243991872149079047137929594470278884140234236448103884933093863707810382951676490197040377177871139973038628091378618855 + 24559049128300315981286951374414711426855547028363825636946470946116301478026059034150161658456784003503523960414982918908320107143143685659870585190396443766561658381023326994091240050449451966799944634613076083042079521207245622966604075774728228908574798490233731759924812453881465027988478900645513540179 - 73905427275118980061241189205045485337795830038376087184832578163473528687831127995628877306043562576510541487244576408442581838331911998776598657709353126126732495895244913168202941356033192385506515949918912437740253726410434083850595216984397618745764314214020924159895894945098961719455208109115069647229 + 53638901552308473068334750610208724509768406868539679498675770705804698048186146149533273612668052113337727952572676759751628003515788096938942801109088201959380537328918785535579424788833410068935321724712931351203806725823269941575686210599681558077723826126542618102746310822974246671026749685781383372922 - 41702098463282329190927382687279560107717794527958597433601924964094726479207379279349661578685901904992889411963095646026097230087668448325381220762248914332747865522634970546262400776052310529542872026875804520120838877476803734347636103681851941710027800255999208501110011820486749337132628711448491233463 + 11904798156344871723213921458611860183808379062366486569546448801413434264094445794988075951777290862990035567828187852721028492642013149004385107021930613909102936819736912123513495051216115925814196285295347474129881989198072883472340037191900410460693264998427893889638789229674321253440178880334525755209 - 41744323840040391609879486662267268518450701685162883674701760663494212645392370102444595091058220928770380019784262295668396498430606433238996977885086054573232403584609143274037849466832112016730748076152756320112372990283732166066961328446204999362610478917840336234674989707239455740507987409114899292572 + 30169547006024751034929605396204178076373413981587178928913435168967773615425040823107835332285059141830940797346389364384691571417485203073116216216763951012077424479946521492573826794486395475888427032495344332463285869182348651111535035270244780865500787373124857427415348062181248962043935228940505970468 - 65273463246824186047841498819348002378422341004577826960693540334516589182332746579568412153396016675543019033148329619142740064171897130271698783719287249823500526961895914754782900027795220936935953682420074921398563404003514724132632228276607091779714611810025691523768774215299875727726897290080565687964 + 13784836778497661950275411900029501870581601032957034971130115280983207531582475181947455903169034299371318944837405830731087062085147639380580150736078373005997950608121933961436402876588231708704116796426160451237233984539399679047775886453202035979809741571425955103100678710999443440213285330675805729872 - 63970861601905990469228888594605758772509799815307577533058543620630733765479870010849517699792861097166390317890696114966661468942186296749489295742740179587244143749941785834443423979321618578076964554383117407326539591696433996602004639894337499453393340492390003923387413075385694567041679035750533050987 + 22943252057748232996739659452485847584477337362851255711868494429310887376152455767017263124750363021801694425596899202009362046625871359747322852168353482662413068029044471276083874986856145456556462643567487241167976254671198781809711000926067200205585522227227886291671183171479094019553930405852618914287 - 20589921674333082911024075377507634344739161868616109382546398781085067483278545810549669943734896717843860285362428464899928967159057918962127476976908184736062628525359840677701848729974534297205341183893496000975680236265437196536638253437630062853764795140432484518464686331323335743533518400897442785367 + 20810983396439398689815761439867592490286920417471845055119598588071538308509509415237608105167491723847745116091300897805914119657076053089338402587217380152394826072397125117231810681095226878263045814139831431658495436315946696398204554396946457388840840750956311628201642740284640160044809624384033471814 - 21479620527508850685050048675053757265333297248883899719723344315473360278769954867714258778127582934276189721844725220231988955935788855901429436306451374244624353352573919961769148115227767801490818425078230735050266256303515172596098061235489996188502200551944566851609268434460947964590394249489297338383 + 38693000251978715581008500724310286343246768597496976121107388658317619512662849922293484687767944751854925219493590247017811622997751823796093330245321300451557100104054059096366992298511970389240825739745538950110767495844477297901374522328259079955091164692368861335898373988715033626284306397555365381548 - 22305198624427608038773343978273503501058453922509577519145454721230619559024604362611540549835556727207244127969376560996743920559323624017053731657447509319132159914005483464219636040139414856179602722240086471905650995713525667010927663109874963831344342185815443800328562966670325097985317890901105582807 + 1465882253189654280356102799978022423296968514393261827886089351210370988506446118730691432128773008618635281822781320647259461139649741601848952917860477154397395693641490857477030448341761361289351607106308022789318970461535766635919934096321679324944579656353355769615577590232672736238547983496528537767 - 60348084862683674946933550810824379535805327850433930485027075519981836343775050427589693786513392910228882049590917684059464700172518452052202644345518716727475043810483629957668575056966356679840182944618813659745999079411893733278789628547372980839551595021266822108238528459247504188440331831887194712986 + 46961381978995430066452027029525636704410551680993762061598085656900405155563737782416900157954335316096235080724107477475034211227818999399868217833150021129186378747770638270898679781848872588999803401559744824182803780543918789554217091603073146485277816171621676632410173830420678326101368762331694891318 - 14935333725823795521791735252810625272217402719359913358702922008468300311320263007094135279598170168766494362878548893762504099910087047244262150617288836395167231608582611197105639360388460947512721759699190919137557946859880436315557797239893249379151461302531193104245702115442044633264180294736419983151 + 23512755982994802230085835405123328288245950027773334378798757837612411734638919911687223275426660463173239491022183476063667676232546496130116104497726166774030530445712224192703990580640988088441564888519614951927485948690066051850591782035607721868334777196298533852429524405746999239975060521616770004693 - 82268640343611946532455392407585906418885115934751932554481502918658247754669351048645800743163123144190374586649068979598180777265336811935263660976866264771097977721779790504304300649041133657192122423830729824517174953926498550252568418249157309830636585958216231891718915720836711460959270362264356721793 + 82646235177878086332973092581501782498185248964174642144326214336007614860400061652672465579868208713908256398661226558414309521456032669429866892381925498741197968365730398960431107125352138837761082675822863696759298659657041959714821097447390907882330854638267823464108922400776800163543105928644562228809 - 66990883153710736647035574099315653808246505338903713348900297364771329857308641057186850702809510200186423783872953358776816958112467247052635498307953362458995511390682650301019732253903323351269146892207189871401626513671131008624367733124487754644468941803685288170359831038405468932652332413382949210596 + 18267622003300471913784557227561428785074894123586911638766423883092921649548272555444564949222706145423402894808031578927396548613657987881613416650132081117833993475931682806700349431294346118751719304030776867396547066206214295763426371135413543586161635211866207890328657964629304194888022623003753269734 - 80711151728202721457061246725853177780029238676825785661586765293615891096184265845723736430936688221417814995126070215214958741996224609976015193921652204076710013038828061898389281985024459695713272921761051119961674363934086701012789358593592004396497525667218901835280320275250105946541388255105319933819 + 90706930147193200150786898105585726460052341329611713463772791099626180660593212435722380688955743962589194641474179615220393250568965936536702399449468495765350407064310301252508317483505279873031695946806638383586533234534292216655947747360444551058365683407838968154014223326822048677383647200117279270082 - 24460024382193543921958635250450992920416924243178725146374081150108791257309010258809226423872896677829583944174534999810936718523010267049871600939266083817696800657106173906431774785650545009716742002932396154725498441397293944676566802110593471755400209504440128244084752501894974126226412732139194402871 + 37627266214004525811836232935099456912227730448557465042387075884592319694459254097272791693564706327752417021109092339163991821973019438596821345104375898970890576556526296371858173679709695633597872780624003306202399118359005517452154959643411955737402707755640920647642174115288034517182382776930501320087 - 61388793202732571805680312221229788420869772247189839896601292407973837835400345064294018736485114203756318522323336841258422712598998869817230963887733693558451475637960432121166544284177234089633533905820834742005248445151566620571441950440888107063575473465117559007655290348089102012195016619440692278519 + 32140762533780784014799947929279163919560466946698433468053529199455489348654698514363909492135066320249313509991610464095389916383540828885798115686335006769249247253268022798764543237930822901105518730287038142505649602248761089980790243194278800366308573552778521936596507417482616633957316972351068950663 - 30299463845484729003565219948448865634126457905300730521563529713498985291599796476855795413662493456751554984199647085165998705457399816216372540487750165891811055728536747992438664673496957435206270884631492312384606935796178432972810646899230042385507568621761124064297435180256032336472805422416348841630 + 48249515066553210252409323991757049625061053815041501326546634200347687570962364722600275486828425919288605870931978889089293826155471568937539079056703382913097663716162013167672883229190782493263322379280216561178870773000057612958982215760199874847321678261311738612131947906945356070116343845067599975492 - 86081826666035350091324082380880303667099160385154714458334324208406113521517616385428694394483324308303392571693512494915026799952286035760288267857233048864987011535930564884355380845363305550241706771888340398307540584451188836146718724364091476428079932333220015181219229795778467112852616089664216148480 + 71770550480953590731300644428391798740230940207821360137509572906023253646255672767402912492073834496761636246762960375790660731572190041352153104777022389906859901906276588187571744736029003768995299825373148670545555911690898436944141448585568000881561369655139434275290537878620351827572383090651100924543 - 79155609060509208722946020570024747228680640821125926888984184858068809818443486174473664805999167054296281010873624547313092582425195186339525056947392318256166739755625013651537361671837356617239340502407497136734800672922779433070568293860612189781239999457663876719772438967778174855503645553729928884499 + 12831773264899432186470905211684807720868119800217727770114515712046314958855344469080718230086778092336063267326361486696133875001074799689010832737257745944695751010243308577638945893567274286458466309979948349375396182931362838793049229990639381649428593404926048793681281812843526808160019147391735055808 - 31606651145401895163077652272353513312569794658659116973524847526174006775167651078649075626563804995905999526330714695977923522114454560421316385999954969495962052581499127896993360816368258614981590828289408661133840509427819350817735630105762020112027941680317635824870106718919632563057802114018764921295 + 57360948532178479579085800441097140586652438394717537316906576722937939217270421316475214287408544650520765002919656614881966599904265651796345638040734327320439340450301786439660935816810982278969035206869568429743763788426371548568657465779331633355945957083102005847476589342501153656036702939846659877847 - 33521841058097367141241833469331149086914030007411221129120585888059022268167845120757872294531412820665567260864892199150027242608694873926478672373902639707679345044525260152511165819143872993974959859753612629474469793962526272780484163682118908739534825697221219440039676031917333396786220966800593563988 + 19613792525532106458180365927515709726265248860438529567158620087009539445738467040156515198532814805414690458435654642378547216146910015885137472410849131675129456192034746979788215821576022657634140433677793925272308689607971119515884287522771527403627347848808468083319264544098133095275858580354134141094 - 12476392491830016603847794631805485444579535827613972065798585645729099504637450663065971361827241277522824612309115493352843550484163948536377160254965643029277636840536484427962498978267973824080760920116024856722858052221699354408629807747750858097835509631226188996203525446050467173237608527903247582639 + 8900323061016887334762062060712057488847691995189504339697007247807550103266034065945073232724120227405314400535237726230279998343137879696900378388782615204791540530460516252385223762661873542305950201142283380751942830826550519442495540429918893083050197352574463292051597674199341832070858709865067793653 - 6342278374410790888698181013861884973771840209806475374561601569412154533297660723453466895384193985714926759988023744089935108430795936344161688545052014208757937824486013440677954424143747619112079278657589644047793895709274371087771756013782782160091580347519095988446120246719500262878931222793376936703 + 63166858012693821335022535306314340901514381905792517341210778851226050184439068380815192079546130403829879496407976432218182939308410811074445004049225596446554434562044859024119643030025172117803005490555053661435440094914235959356752421271897905047359259640020726273291138086926234845246612728564756314926 - 61230617172379066503842536975123948944572992865424357824134830509573924367023147840774958235957272234730658838916619782406606010901128616082997584276153132968272565332115343591066016306164166819294873320693232540468289677323567570031189658110123481087679631556528092057737744380544255450280912885487829875329 + 70535680362032626281260297760798110087156078171038860252769499540443285337188585632735680969285486514600173485741674952692455620020163106278670030818436205898304773000167753942125442155838563393462620096193968783492069777728967656495723024452234336923348486224536673945205495750883759278129146866308790766390 - 36690399337630720580390806423535811195101537596491768534382559527753129466839050344345893205579177742425130693207405363790805241637746501401243073891173670192148863894873870258037495990082271106274226879597143765867205971046877970920642854451133882097747486361542282149026970956902281677206579777278733214242 + 26327760808842189915738369646476152784826232925860748256301597681990741964748550906455617400148887107896710789858213352718550604535953727397568142087008915061950229216211434729459471976027897743166782096612303888543281840142060948374908378867601310451911617522441135414177999639176915853022741380361505051948 - 74732234795876365086459418036167119775920118065951310846221739149167985110925434815138558953306772554660798709750331818869704915367715572344998663228694910170434833893947513132242521795773999102450175405583060783477290467683392685589915211551121628792193200394659296602505171219510635368752253543415481161309 + 80877033876431588426741786167453836934971296761455924262533058579594501705377752411442133474031085325261988199930708474590621580823022875464658841947061879492421480580436865382196113702817217270161499514855111002371283680375472249377509451346094934583341979129701444765968614815231849252856283341320339094578 - 78923844363050913046094853527930844717943242049416845053461415648138520019399284866146046020691193938466350194491511805325228992419762780562994816982659032987688371586730800491424341063901705278214641726010792125995407284639796951899189683525872504660395363823138406389575829834422311227788989584743654351203 + 26558521390068687044139564302177270378220930533434204548120244878649087689282540215334463661199425915193768063119770883361706114020932010885004847757919835668904342969540674000511964655850531650725602877840068786156719234392159317102030069681086643277894930675992763436326632853951051010390657734903111255160 - 81108706355671191372244538635313067818765299079572560576876609504792221491837336292156100617003624692427917746685336672793183226852293972668411370350547229379737817549040891729247500076040037688097044014978940776691448633283909432061222312968103934769500885402320199064460966235266669800348972995195776538857 + 6912196273430380457260311550109261458708687718714526438314823127464594950365213938417847421460808395106923954544395943819543431027208116960004942336306813903766889734951765677989731319663455725461111955190641544340621459807367758925509211008288409760686526508041523815669678088600673235642567856635801983518 - 68241545436168845669035637423666851470519919449185590076928878981988202960433829835769222601414196770763810863461679075698715076478428326601962585992256959439578582214198990661171888904353424425983674980531896211935680718801858633086354097674772248908398773381267491021006249441315511898094387843724636701547 + 87193969175315203654114909477039913417986192328883834509663190365972740265610201615729981425238670812313855831143558773103911100128890946516966929501589816513618181433755531602803609805688701535932989277463547321932235496418329166444282771100113080504013099414262820906260242971348912528207078235906672883906 - 27107317781554603714601458657064737851139301260023056769699028183609512014952555670607698337956587375918465156218172588672770963446398445276978065691478998182476134198825442116961118403210269960257908463169959321019382931676623565391738202735091583250960924204339254036187635404361608430982646728437118934515 + 73568067875280555590443050054842071166870497373008014056812634545282771657048633430922898344521353081589523081388998104433121195298692891887564481504505980820147763639647649456123898365667985520470320602826243106313342155508016038790235370985610133690611609347019960483162313760191086009968778103928358142727 - 82061430676977449397509618688228957283210782489479445577445061417942428707775839274148068564041617289098059490573178140684525706669109949385670323183344697574727537985658179243587136474250392823733351078872172399883690841943646593222234732775620748552712464091267594907874760889632594558469619768422719393095 + 20159169754341872039751792291364420937124269386646851106977594262927438794173936556072741475943834960286921745226556829987134018623454507820868573252734609041989366385648050379021161278633522838253836572961920636348632294211001736966492115637559721263418389041472564898139478069798737927749882738146467376911 - 39980315422569478092998763341860572206333819948724438319418919411000622726432367031261884689166903812311765079062444169820473236939279431927440622185761421999096556208324786372822663816226443053424392121498985957354496909532487597517900840140757202853668977833434493367510892298430806307115676220868345618839 + 3283236770844763109356156467823658882311629843312460250175377916351024744393319880780148943541921369061061149285253073211730719865022238256711531151467653584927384823178417397861146412659263853254188984112447762784460574630114960729191647809696312275198052037337878364144002290183801345505087799150991269971 - 58915338796417672089303619481246392165623662447699479079227293351918342153374069111948758103880110909947749497290101470897780161680606389449200816796567867094433172936340808735204966982831403153187989192553308876440312982156967870428064609561647697411486913737416230826884973545054861724041255181403945156151 + 55609098120894698997012427507726528369379743128047411809093609020413988243068065497847107457046180831839979291246074640446496421829859482605768890830595404856020959345133097022350177902243547299907268513325050452903375290376989106977698620953173509349229148039574865227899817207627788471531993006558735143845 - 59213913470705052150273110684413895819164254944535707879307181130481716024381585928650150283329878518354189321422652694063080088083714106972273295760534863381436329860091905407378275235739729522050230338420852744770327028936955668525214851394545997343402075890665737729886434715665828983673432756931135289025 + 47336362021970991294969582584526902970948037012375530983577976912923155197421494738526251660601326547808812841228303537811317859876424278232330834876700661876608331630990701908839646965295368855821543592232758294948929342200152854563478391098778382484484803964352183161792603393785165738738473158569758924775 - 28829363002351673802387505342998209558295752985290164203442705081817145985607588417310395105363303816035640734348332615458621592714646388620656744878899403723534351040098661027997469659678205077660554922263772363552781869978865365330431155055568557208170332039313738533663483825588903793104593773723450099586 + 73737601067799006462317403464499873732973263757444478952481757089636075164380271438799389785684844222478760386528743653519169086242894900626452781641028716250343823696378701401237130366438040141399487725797334223362395393346304457660300106288141360954638291968663388144228069355022325434187291720362440431777 - 38292207546184963763355498149852626119524275409872574876419208216383295318028455528084801079415025978422591550377315602356189351009927427713673761775482938472938154996163183534040848629819457625957084109534683248765540936086552526601462441306287128451226361769165992824573071663313201771835711089133032939549 + 51736342562597590184327364309621284103748621720889035364977335051173807559356852471422097150731959369019345632744886032057117998408011336737186678324433115715052713524811133357794455673698802978999985721076280133310261810770068682369056655083971237866142517369143111079172276613700300789405980278726964412924 - 13255123594119975159489955260476008707116194851777416308519310223093121207956252671512495759471028439877969434929846020801692081530253129090006444069563628891591550796441429087389504233046839872342417382037448013385528574149064555050371518555210302267426838146495252970579709932821637188987546038502193234022 + 58726369186045016486614759588319655239418318192255545196333227359581638162913538710489820051783786506767869285396533324311914819893942536228842008379438692937492973852994524921246779237626387969602285836484821494722338657948535996268203601169248454694093842119454213796828524799783614631216146879052886862959 - 84786604443798035327269381251838565365546901038022125572297980303952395962608242314772251943528140387798238732257274009868529805879279796184428362850297043075084189333551609015418916730313413718861178809265565509264000374970242493243531942113590362986589655347182008935726596679968654941730988841849281898001 + 76994009066054387227753461587852205402972705909353907094771027462786809147765786379939598927025515340513118536671791937572814691187617601655212298551026941408948477765316480697665730336621183604815236956265528847432695634318167787506047570209712545279873932344023133940478317421550959818049668760426468847418 - 44366978928663146892704223482165234526004691051739567065642669815314558274474920074203822303483453957240269201671072278858370667855921705697204191535103441974270496581384711051842727361946720151664882503515645035159161310513944943792785260769790540596551977849567184595989784209557384166289895905622822131452 + 68972391942952386296624344163449418314976992127441869114902658244447858858714419823246887339192275507023239413604135042641464661479749948584360981573863776036846215766365683744245387280033120756372677885075394744922391911456504673874435210489748543998374394847637502730294714816230231895181590415968561717789 - 69240036233814009965004938318469073937603352614202987493920332597441423983192660633584857443740006916789652901539515087484117185937671156519988859921287245234896744679230165687654546224906362260891385155041484414383800093373465515376063646347694765212745389098158523275895562524923091609979423256472082362319 + 68186401914015943020284778837511963591248133216984541783399316982810883371519423701887391542096522876804534027805878916390866432758333240405099849356337162386488460998064837764003089308418743447763716967148254760112374125467102801086651924519416211296229266400246502273725320897755885863842887928886829244953 - 71040234183182089984481762597620903132486343751113924645294863928391481600507772557716145970990663724469330319628127940553027008828682240755363495179156200269677937837852968462057240313575779907877648733027594158083962701597381365644103904357028956849518354084327326700052232490711331782802678257688673080002 + 25653577868628338218891207497406769821185448782127435889366493880162536078229381203508054779370684639387102469733879066340729906614600707591951775744769142802019659885957023931236034964434478070735594210244906526622267389197240816105114537073523293336063187070219505118090638120184673525560775234771559582399 - 66443991340518719221201910143886104948253558469788461555685539832193706179445173519325432629827506830225801154652811735769658438647700223087223727833446008124196838270346719061411984646627950278230574931529032743402029947234506234080525163279882223572604006098094713696399089323265605179962251070997334272951 + 90375498152995079124690279181270914983559849073085142870174540886819436644409839800067632330752408337510619128609402872614757248761876059448544827528243002025037496749074807917740544188425902849450900654348879119812879861803680866305250424366294331103671278234414725995492872326035592598280167816983285968474 - 16398048369876836128931403099323085186599631953504881442305542606731903231582578171257440043977893027571822537012016106046856102943713293031225919493907569370196734938876367726587946181982950734745549792291701981473194990599841045336687295671809782301685162300342293430916482526913869891021477413851934212035 + 65452166671169710026002479362153760237721076260938415970343841951307580249654014377890643989028074745223000055381580146379233983429391517530076083686225523250947328130776431192903744696850192703355778830625818659958329709431350935625007184259955848171561971326696575520668510513173994549172047749843195403133 - 61948715309022469313510292119649547852354304789231985551487181260270174869202559696070387281221409084949761424536544119990009828904772333691483766575627234557442862727259856497486348766083194839252429311619758094052663399005139215130714887968854527534222992285953486721983051333688494986334395251155322495335 + 76378742619931767516876592269609989795544768882290755407257356150046930436723301786220846647668662484383924278333056146291016874119544073011899132053546260155285426158598715356538380734054487668198557110472263064308564378769909825164044985498996635925599905291235857802433647663160053625003111548238625599062 - 52908225374872307594290100180149782989364285919983306843028090986453041997525464736843134597667414831268151561461019371895542195059452702851944778681923846136737965648131978706619449900110169879152507636304766522937032818790010125874146706769626086570558409338146126593521016259457979155755994058201592714816 + 53031717606002511352940052815587682125801314787391689737677909538900476337528638334665198881355599842203502264827267567174997776295787228531827145181566211605456776259023974674719156475431459294065755473665109376000301904191305645617573782730657696408205920385528772788500939460126176488505391567764386279845 - 1432815735138128457451417740456676736636984976853513563543502403966876408815565494104263781289444321491527984459305603163320147576440066898500630760758601687990209876788247657389875941866364144672127343762992493584320589969615861631916710109691569502955650591707353839324767315914721074711002270261604344734 + 16624241749613834649011524844081461939861223424428308119346978783619008751539213874924207084697904561291071755605261787981418140478627150338244449163139253515741091734390507393863943457355655432107789357421634959840158899970317131553978090424880002249818798485673232210120280717359993378796739450333338939684 - 31072394813931732840083028052230440579172525398083456166857257644819470412448623014900081680205835010940728828293282168623009256694808794669090662477025869371978882924120368089056868959656331942778621764758274689487733247598971172791072791779840172160120504520233367262341633668960444167207612743976732241351 + 19734161994304600816170884018988829621750774956622097383542322607448577933593022306455921823443714163161262998669557212483949269917943035332246575369650227807424098203962446442339451497785967142145587017066258445057632183867678514738544035062860335616597568524241125694456113399712905099601360546145042642570 - 15261810346858654595578228962231115528194667174703770176529936771343719771005875345887911260657871935676670087178533403450209741888185939030130180411900892571565403353009076967490831840052442657731886252249821186842263132772401986911050235801267971281150602132518918066355512722067496806903460036708680857353 + 30512325242978669295664782843870905602660226119912459971588918869460921266208004777293696469555321110643160384991613298153104883763525668709766381402892880405946470066903202612462055574250766640536947959105789427240681911133618937162440449871912886496595924859386666065558410771146692727892156877366914508835 - 73133311657393667355430029150664632397906681727984867728313472622257033368404714500772513011374048109755505376137042841802361736145781064190838543229793924268668859322325227244102899458818740310452592315141300628159819301184358888891923082899885056126735327860966362366140294928835837083155543086053293156399 + 43927869694773201085710165926957887649905054523302328658782559018710231029577197664431429156287244061380531332299358236880942294569553408323192675435983976268157848451164671892357417302834260779257571017559803547520751451579292217207136341682561874320189378456990536468904675721403968439742770764423312745208 - 58636507738197750692510990913952200426370443265945809921321688096276269510824835222905973382372381421727248286806047843627625802102654042535523302813913650553864837258374575481400612489352181835676012705062304449323168135685322683446429697583921542241443194632065686657901235169524945118943331611835542126469 + 29661061633814529668835079675844430106530720659551479144822890179081610757724458946592592223458814502792941111287883003174544785314024352854927587737671455732128036035790327381756034410035464619623221557668338623943462472454629199000075792682619487680141330095093873585847535436993996657033691716868296992431 - 45324435296620060826561171306531872966372905398503611567061313005410594543589776117799807191688868633602280032760243849324341786399417646008446958924047237664461308334017442827688958523295679790500847010390710344653894094720596883607808904039916103780662129693055909104597540312237777612961458935609785496912 + 18093585289944261090355165579759273053547653878504157932940197511599841321686257714391049275969373812644167378590257736093748633409841920111207849533635065704426427472539960912249868041346411698772972384672226801745611295956987612968572020901707159212851211643703786947790046433471383930726440300167801787052 - 1124993673920257340156032143561836934100257905730820287340660949370838326530810692418450767035842589008338222030239879752490864038936803977617687296298438385676595140097937048818852018947870484168791981854668277813161137771848303542892583871524493762132501407362849945409634499370533056056180716838676500239 + 14235250227897891177715825823420840000590122950247044553335315592303964990109837645678354768784307141418101716005403535354799903575860938948866153357179698252893662565561630394148018426460273698615002210056457821112106031523667324403957935700525336057185118012970002935818701883914969596667063596238104475550 - 32721811575324073474689467274591953899337514489826493077353767906572909956301210065572858806930599024402572058462786188042880822198039635350569898757364228379082599309399636354682311052082556213883629864501466530635944405892000999388340927315181266599967798564379840635227980756620474608029079627640182657136 + 30773899557128966650830679274599357910533076686042986563677880095260195774301707951279247897948613016493913541353688581388689403756909679372177557502345010212182862715345221674955461964852663934202558344959798341787913608366813023737218821825905802817681985248900634022439818427950480310626049311671091259583 - 60524988380247205160591848547341024472052540108811808203869710912192344798007764838008070580249450736646859999782620502083366779243586325743447414866726773868614489659968508209491346165116962591157320698130129085420722768067437568363509441318349930817426169458455366799297371373363975456817884942871988293525 + 5104230323346188378474534082724126576760950090911726508208383209499068931624755582162755878116141094548227321077341314266075847242612990095146297220267191599883196933760905511073867282622138288193684987911809381455001822404940315572433224709958321104870046550721676199170850034126892955134707465384521775475 - 47914865297902126092970000193212731763168804736997456213447179688947611769991304816399850525039001886404947731501172869756444918001877519853934264230131705332185804378793115099752902325350492725097920955037345203742368289847994850969857832906183829547510868957970308968334920279393129173454448761610841501053 + 79453049874352308633523485892233685821989315436511541874799196132724275329348359775574520492227699359373190086010726200819560175374719591178890433392036174927205722086551215046407770564171522168604651195428053754247428753929225813953633504500433898432855647629436199592544772384584910117969862512523800936048 - 2582588756541517775251377137162785967552702044712297447870768274589055565219263490461604430454318894651698716483011628323680241330214138072206027801346188788567052280600034742425307357034958483384152433480617370924408607603880448069993100177279837862770331696151838026879883046371662181510656615198696166586 + 83160873823572429143055399298951124197011277947196170791287594182837358843288952148910023806834398080233535639509956376087221131990687125703218430239432706010699519425655822798452417953806331709590310540738423981040970803062296099401703241787319008697611864451965440219601570565462363359052725217269807911694 - 26402751970843946198826414427600596452062939731662073118961917226041329349459999434374052119032579874547222522253903323356548774871560320785772570163127791956889246236267956358253477578319707801512855911461646720935673286741900635059510308300080790591242080603278132926247860998656562668400223904154133301057 + 31940476695683898264204524180490565668632159954159261996140281681878431921844186488354398256745886520833957111814739729935330891190459234758532642242266949519119299766477093672403713853569201260887593309926489298787841060518690664608095796482312760337241400276601175094217078207195930407284303229942737750775 - 82460358654789950880830824273439428244472194972702823493970498713383116224227636369693193593315338787733800948414637388374658235570390014740324250138937638386035934573192636335845192074954573186933356176504120220842147274431777029075578219445207175921379663357364818999096332248755841469572151389219159345989 + 22591571971943422074320911506507064761296667082104254207814838431385213016967246442450421879349110214750842259975612916238037705959268578691696951763445238662496757502380374039554650767606705695652506455134954415511181012860918578979746792765609494091788253957999817413718212143355190333504011596390406879298 - 63820550927757789571718442438473133664068026750310507501034231612335006913751452510332121834021672212052220152728227879820980865701017904416703769044265625634030354382867608584355461341280886596288520095865975264533776652032642020011240652288262738029704669743656779202210188268571237092513466415801140322855 + 41747347702962730799695229535640398081184278327584657225862005657431008557729956057945912869814019637557569589312737478464323371703275029575612884097932369335059836301918246697437039578012982766684021035672659603156898053541603081645108491732887089295139129472456645469533166563657325534183431101638082839963 - 20338566389586008283863277834591595288137913999283306547030317546081741963988306736552570597874385842637338016880901919470956429343703274134496918494706103815988201233782652965337333825393251095346941564134881199974301612928664994966003251671713987851982257886918194898598181669546431263669657591445200040770 + 34428197677369103885614698096796884159053422911134200216140006759372641125879131860275906616871638630357509501125039076283400535419055128355327940991451736948045422834130637798759233417139028025499863573790921940769359093062595753670203950932882813932178821599577552788943741006440695554633076164599373975219 - 24193698716504379197251960586172762741914444741375365269242567099479141373908432173565138035932620402155109652764796533296532747118129720120348828011766053358492458431638444442033741243983909734213346519640126078875080129421051441097940667243057690617034138724383803262356458967306196589383934562046094623055 + 19657533573466580590641691125236588929219601184932526968486949182366688427543282196286273327450521460446403776918289955192426198345321401712200208245369496699271447556330210076777359698317287366699894454143392606695011164137379295783815120696205532419694243434231515052310906750474601764238611771447745834403 - 69491731018856181420309595518753711580540960615704830003753573483918988972729084682732649426516364423243233259576752708641215669847207204197155659393957835079575981289652343359148249417738965140033176444334203132629442262009609571496350428678443664073989225914989042769712999546280527933419334473188852958107 + 29493536232166419859791118413421975052629196426358629563728596972582817421857775383051742130120684496694067379946441296717354197440238645693168056745734257227102917472836972758648702871048726015055667602204367258343995312982252515337847663391072488624899965300489436416568788108681678380577000478954267036643 - 7127627652861325422336080475597923023205520899979725263262343612606998343015061635089458685056979284865382077776073796343255543698806218055435767913304607935166129703418243983302011895185089637036986913970566841747677429062211819793339364716654376610414703402798641935660632742156696430581127905660489013811 + 24064319807430707351842790314794183340485323131950755007304331095105520946916130585101735206654967956148623057342754856396335720231796576751653184262954712572379943697980376396274729709623041929291589025409382017089912352744386452761834189333267399295869862812842434447477165511393249624722026675442207536940 - 17698062121321767315336850796547821064898614793996025794973901207050378634601402664642952534550654187600900044170522743626346905728651402036226326744905259078901589641539624933088231478516393602516006640688876250418198784684380021652289160049798511615064328156072162312434172929162882814863619302226498986642 + 74858613671008116256867821718952874432282903945179959985392619762274635098836900718178739493487775319141508021560519539409517087991118369017249925267318569354900591074224586352099675982145919061548067656699786557207020270892605998438347466063019084340834872990768013261226547595058098998660610596774568246878 - 87620594525997878015454083196970727216562916393785474935217541231350845059355063224810051113755869260918781882392731724982435805034282605907889556053013564692309789168494452737400722935497745518061934058895280223427200638152764439569326740665201699394038414577146763764010850199789878737916539513700142248274 + 2633308077869696883429422306049954287009380003715095208634906214820098041326980441833661904208951529467643888223932197454686539141944878739678235523806821414303068447960138774512771342150338059498375365154692510914088739270010265834560302758706289348520381898237999516251430100034081181700061695094465742065 - 38850374867619746863562963731297082932827459518124969716799289307162512005554679907551909998628521689121561615312112574842693439789528514367949841499297396544319543029564987103441807408686497902095708110612072252679700953139580339371719527605675735731553919063767529352742145678776433254793441236670261332935 + 62556469974302649725275302619773188302962313876253325411477069985628983872016946928067265477416876122880564694414085482460680640723583112954602943672886964364278540281476349173289812979300392827276686572010083024385285399032423843871418968377481390778924099659082499854037388757926193746102963616996853177904 - 2216801435771536450460392347538064994111908347041393607609726435004315414340398262162789645456031578056692488778230094916447692972668165927711153053159886071130469518179815430887775854636188647958820972497545386020674218739129439414292979219998048801629658604234953799110644045719753258059177801516345255804 + 76865328079188693916908487409135636495220741751568354659601427910464634974523144023564810738456890753707757278814160353344944469726963113735570938353136707865204564044817821667334579251407025748775428081524780460100921350559702401263136831713525678882055455056430970913176026331583221824710270322730506947698 - 40245524590817476388355390991904205640570393871351262682924719611920864948077824628666254791722679436596277972381344492532725523644007317350017955654825051496287712008087754114436930099028796980717434713646011997494422145309651407733849986110096826026782641388842722577336097896267760076010199501168052910324 + 28315446765259777169001076613767076760414666624627531885993927077287595847117424858011776309924332834102006578976313049723166963031222710332355113292382721871334324320154756252255392836579174551829133871143578658638299366216338289326037183370125430250868185289163742819735970092592933329865855108837648293018 - 13415359441333813109996585211954457380267229524891317855964314300888995191284994428505324651855967091709208057281022044381490881437373767305406270958261347840791794841855419821028184429300480256308844864690743692825722500549920610439191771122602886448083708659984884363490699600531817324080665470027121382557 + 67977972374594513351749722437378466087705184517040558202365636263540646682071602035854004705143313198261821559212582568348543412077167006158375335789302352625182902210428173104619757349402251990960997592021887114815413956792761271907792748060805551073221655088655438501728477449054125240107463493690394745499 - 36487937231618946440581662996511882733321744283175315061904594280874361952228344750621996173354362620130243490750428975579507805503174150656999484931763288225631061354135564391847321211337054839286943205126552581548787035124778612039226061406439345959332801856734356682506207869433770871030257627292362986425 + 90125209945665083617145087636353410572329219727926602026691928200035124876787044801092379623789253711976676652740350448066099986341610818822471308125764491620953567809339148422720501130131472145460143044142729406034952008474849204191491939655267658003161758417846985032804992727222888222009827627648001164153 - 10428926283172141456372404563325302991813897349605006902076932825388880596923101392846794068039036365160719251697065435927595147957655041880999886868432802234336427947325365404479679134739804313953982000575016224158364891976063170527898016021797046753341288953042899920904972379495692166347587474195974435643 + 18833759585388944188535908638220252588434844879558729849311602926087592939063176967389150613531664481867132558995812226992465761421518877813420523082409532428789617025302547628738593111915017346986814399061654069610428109548309312632073957518783797993245137342055882265564857777894308580252310953247624529376 - 89013431087608151233382751708157812354341365545834880180877606193180740004910938413440490392972768559821064723063360824397157665081949436787476034585302218073663796390579545391496219828497860900527894910242731688902839535079701761018414954017546876954261996220780619507784464736331512715856487326003445117305 + 44840673197093646571600649184130013227203242540278546477536992189994612005270427068224929953552817664933563092203931450738124607916053117262346175444803142104744080809234706340173693041735107510998215688958734466904398377097426883570172612255581003452224293420763972889366480512701936130476059175700119633065 - 56657861798739262888148758750832208685699872502247360213405945790141859907747482887814177555883032942454097327054014167532033812090452316605313804589543463875147055723033674183321242632820444150882326981189170718169485511573753987117084765088460248043136690594951632999572030064125088857081024425313658280856 + 19663387714834004708102733028371579030628976473417924190875501478544352098912154850939156360442020629811931043946437189093211720265903559715882541900191392904982950726268312973373592370835178318610257856803647072320840775083361899495312927624769803004013526167941189002973418021319271397437471627215918308544 - 26640257049195891514373729100606625923152330043152501470129238935236290874620444115309995833543654174648041046907951647833265080668924858625566205368874749029062262862949918720877133803292627837960922045086995912855777349728039946348863998558533915601136538183706218606769752343801658088712493115598711688108 + 26225467854248985120444410984298380495258328419846877491088886870046510855122266616849936989514734973641411281060290310330565863697363158453136959872915606048699197279380268962267969447881490784119238321941083951743622784375265208571307128745751015258381460782035197840304479009392442107452067976438981301534 - 89315485915756721812720904516790301398916176167321068932570021394345975872413352694178320929826053334220125471270779441245414955948228797267150574764792610446407506275352982263215770242687066489986502348787098723860844635398007134289275847313502681869295373956930038653616847875660965820725707575384769321603 + 70258990324162959411965372805173712891277413808570570160526167583505733208476784433752535734391058546920012568493245413927713914630273337226863371944070547493121846010111929395941911381198528997768594331874220904550100431856764878316747450093245627868279815719706404085452003549393178131071334903882514325689 - 85788983024651375330412425236117256750265726496667620029587149704117319086113599076551769144675917549362177967648298914260877061045422921800050350934346480841265781151685483346491303637260478069174946718457243436189211794248772722015250826482664402502487602090567878932178610029049208519050452119800798590095 + 14065341512090081409597131731105052512430981287582706485290940540295290660296869837631840843934570983365958493878779624441850082705754371169439800810090601855250510506102624888936789450953259776563472786774656857765785805312194850269800831455150790022670387201074106416907248413242648264931479294981876307158 - 72558441806729709159531880600222108306652398787952226348316184551382481431764209245385528602477952232106634438070610545466008388176262062617331498206457443279791819583198953712551299372051870420518867020475059673622504705917575214797292674581517236222388615233377176605699584781594985516736042377231750347103 + 83368858164116425197756010795803426737306370776745649988036355517524227139743709858129882715810123579034601752038853957307925452145383546145318364576311075437015863726509943576151382527575494675311722511896037696519085494435914984802842215233835292594585888164727207092665619495927301112364698678207957590175 - 82066353905179774576826663035615202893157098455153879484683477179224541814192413700028155090258256429721421437440200630717597232318978071315058635325554680093207621096692565501303092895473596516964017573029126219905028164332631343720011660362366117163809539281720992521965164194684874012707450519157392863834 + 70715913568327112096159816681092438121607790473252837278119587464093788540556277805979499527254806696647634559540665944930711608812336319105245752790093401659978717547320692821956814938945413694854705400556841417976801419425635607012384090679035991091954769326759560174908775748795447810660949008912479937154 - 26390406316621784994183711610697291186244370038352488989059964145088549875661111619245442938400762022569001281717548131236032422034848393063934837704803394012423185824627961731620039086296504475678162662679679870907710889722942174081815292159029768003071257529735341577556777256583969706358648387996045920000 + 90453912815188233751807658999640243691732897861733393288549545762787685409608549035500910343470296291794662785488713280553619418458565248770032052162748512616184977131725374789518770374762883928255978456093344710224860141005983528280270635715085767018058890963715335328820625899364246153815233542630411507449 - 80371057000266525375525500202728917959314635378787029142800198194478091209904440925225787131115697021759668692773498131876317814601235866697869967017076806919234238714167788415726924552847057118467045227163014473200180490818970150451467327144714399542238353619001562879311123589010660345475815350865324634005 + 69722834808829109296005514674063781164622961031970535461060782763271051527672398844554135283988024982313477173347852674250355661081200088774819432853022901200306789938154308133480477749827255140336306943799864215118726080284236110437387974042023059435552962383894416261199354496698559895217316568205841567304 - 23043443991327142453263452806063740250430665592385905072100667246517993680316442907115637214163463654535912996258877883881976590714914818126057801564089392157530490569316401525537371433595738484056504668930445604861304550164768793851695620663206040087039790672463657172622542003420786107510881905094402209133 + 66183540778876949441409472038198249570978692269740632900438070395248551793422085392920597350670409728682089196953567537936844623744794732551740139521212883668050102749852614111190524020437732645777446885510188988732054819320610258147235113100113947298670865685609392433029289159072784230045856219190844007291 - 60100765384470328170393502763376738711150248605956946860454075166043397939308664518059784472773037564441153045955339457674421595857118123537225080994759659143947221581018812867023591741302594594109341859575479458169867399344917539952696561800642319103438705394196956850706095518835195760241517908815697763607 + 5526199531592948246576260233084874292528736993702811652906549691955649111248699378318373929827611801300153080471497923321875677980245275781432949841790886726015175400300988163936686249455552195525919993904321820611995785100103636428917281330671147665616946068380416819257655734549902118505149728822758457699 - 21875792644444037547999096302336617003572471984935193334898511088529408875612950395684101615558542453605808892275140384852909604375135631139016854013738087090929666212279071017282606170080694717969555993523452833403775551480948067000417914492012104611173191920666632048199482669746090010250902316083272179919 + 5533200230092020160744506032054585909435214593629125740904228631007899444476445333826586222648481886131391293725941607974858636723923619646606092768461515666171386618459317288555628495357337924788852802578775306505468683519969600913490325770510806855620797717397723513911319544241973684830779198975543690893 - 69221580374817508823834010261393693725905768407719442275279221309270429261502483486209575232162447361848251292729896321417428681300898843854426851076647731221241965021672195226902065810246076006489897263261605825894536509574901066985296566758927266956348938126558882574201163034833933505453932150263671501194 + 32658700612116035059848507969096020122197292873925036976744327097720174715053307383032206718773720332986202128581255769068096536632292316227135110321323500838510409343197687943224396083597543346582427804400292213746654315211875236836649583940785356076873202784695929919408510386450877795734542058256771436915 - 56149108947151870724679239533463063486805175892509858344893726182817359285051538346124908121940736943759079828763311281499249839853565443309984356366816734977856676627750801493020693156323632257369457853852642671764129598322983602020085045625947767905055652314907726009946319248442721871439586734987053410711 + 29196430281938330269872268900185115790140257913966262291032079787363787859900126309981096673353084947189578005539176521372675870166250722067792249771383614677043120488439730011644206172218410204995960602356677188523081601208128256018090369752618799099952890758227268397889579293756895690057306829788851783605 - 55380125268263733891146722496502232061823772703416575190764711033163844741308287762920330918705834431766831064271878747860614415418938101997532543139169727383389035387056852674466828330277784196257070796972930443693535974803213160318821930190955827278802529116098552556317197286108743567075244263831431513341 + 86287903757737817034110371912461288116182366879063553943825385538804850686266669932382486658955981131872506716835052710109906242021910385662752455588803037469355956700585501923460630107683378697605310870491780456118783816444512739000037895644695772988525605824001274289193602334113150215100432703511728120081 - 40725100506085721940511334054415960913419449808756547846495037748044517660824898421514889820194468045945867349524783635291741327883482319765694523715160283216473753351897243111942987360716602761311354894974528180231999762093817172513742706898612399493651127211291341918193030895169460362992213918374917187373 + 69822707937152731732831977341974669632499742996322571395258245852376677486721992957394926657641343715137677437154005215276461608698536360162347694006231926140940413211022703485127843966088581094366299573429679480985544789872773138328335537505698627014786190941806516480006780431535053280477729235382354616342 - 29629645493928548093165808517398690833885220081753851962634719576151155012479273452103024104435369432011425012411523223568216696666289833008613571199299240002724454654344257669396057094398117398765951728121292682836374667108770102464145066229391102433051496358623373218030504926273986017040603923127731650811 + 24793943107711564420324065979218385329089048854620898800257362961493898863821101096369879852395107845242465397254639458535219574988980116820474266297845831607319331328176516892734544981133627867569352197432074431118723569168938119529951317259262141099217866417427016605837340559544676844908327437271856629808 - 31189054850147300385131742598346544919453991032534321590936283233955891934534445454793205859172809599496278452587107959806875225314674117777266838172308569472224520930579102383299184288721960373634454788552128619894326289949062212956838620503891962068601247979007938925333090962451709106403318563479202809373 + 25238251819310256122953280265341719280202321878525245147872217945793617097863911934117723389376189729560650219761042397400271098716178146513620500385804371680122331321860489581996051110116825302096058920851596602352007429968817599078754310983914721000812077811616512238065380971725449761664840537510021243222 - 13151291071199339090695741518270753225186910407326714405573839315403396406333032242719388957429440818209676632796111404934678987688339557413352820486908680509032853997410770051942653008608597874787355862366731677212141766081357441645196008406827394979683496386018029928330821455879715586289428926511023666581 + 9449425160202254161446597906244371176583265262320117264447305827431795965625762725342210110286237974145559024166697625646404755682648558856726674051572600222687598003842982757378783495144370497375969015282834686746201534716470367491509229067040784063750117901258942168262969767308202612396293385660076824357 - 82103874557165605885709122142183192866418280845306319540525900699414432323902549204102155265804344097662274195776701032296181638581845491549004440399793719947753855586988998818321825268352136312118000766861604555462864445598654720069826238177252266547988497105667445824000602098131531508561219067635876203721 + 80642497271598545474732247910709606521204684616493751570427490071027864333186606013525011347783767564709323438158574102483028609021739376629931117236245099831523821576805266420186607864661178666030102313652091575926412648890108084538996577673261058024465268150342871932744513093156894464504402895577199973882 - 80244066089045578678607679578917934608128624310272690439884876783257665890848445955280029197058721659398522491484136298839440944937258191909140416959296000505524765451363236359370301918055965831843946912980495316331889591766662884301781514447014538650045681062463717559147502049859240607455141325959426525081 + 6743699124874330304767617676670154415712697981169024831510821878506479434556455788893830815074452855343338211184358179866501050848322968927378812652925777192851595836701758414227366518570804324511653112893415455467608152567399234694071931597216467744378243177874659446470853175918567448721495784131426993105 - 37646707771143617441225205447307991841408821043350242678929189086832282556365627591050712427002828813220863929702804273119778175405633702771628411514019495175531836740386000315692791181248327384372621359832240583426235494862553037876112606408441991869034017483114715033901683235226045036375463090046725344641 + 83263100711504230928757818089352846965479796198651803900047390310833615875645568509183316644843223756089468106048367190644482631749270875701262082485185493675332810793430249251221050839713074577197316057309692818469800052326040526200963706260789672429240644898854464914026206943358112795873842143856352658868 - 36827195527179085275503013915392082646352850927167949237757216035752639561111172587907888853401558707169362259398341129414044500801097306078530141079372399055088425823402770211757203292548752171862702063228085655273936190489083632501347302554478049912564978025137496252113362763832915954502493503545088503308 + 86787804379057334749390946439277078030489343971787728291945283477445447139647798842989696783953510187910491248694262585563470021543231638623707363831500043440378686637711918149120267717546023250563910989734415667503362613059020081153948188383190771136487254062990375604329712925041096929067850252048912437920 - 28017477570152836018102032367250301647055890703829391940185969090867160127241221261278353764026373059313045525391385323705870376023320152542098095911255192317447757242708368230279787445413963751724877198044991885824142515994547070977050822918895139306979785195451824761772693005840375418044933131979599273577 + 67622745237057841519897644842549012282512448764463594163299163471550414259324260342777293424750072091787119702966909386089056042836259398441059587758470791090665845495255466681744499595161289178915461646810656480740689661554797265491229445947779923904105335657773704324030686446152167606049686170519843378392 - 51476886764477291646170862584856674679972700707904905882304406645315795424498867057633713776336883988216495793546926040372691925073744098269858968257036504429126569931704905407635411734794969248662340103176150456555835159176288264467389706760723830742402652226474074899070677464115540238302493083348877433340 + 29586233442343629455784612621386098109641726115944346288596822027752815823135869612962498000589047927004156684413350017450028460281535134585899471312238266211096768291120672207871694298625425018428340685159019778656448042534207076899267598129526866084611807979612690327808859987646534899710702358494076504641 - 37523275146310993949878183191756364194362828595099673441531043178299090396350826088324451349223008779570080150092246181177729671073730441500810765705848562425299503405140007190530082296455875407207377551835284333159611626106740565297255421961353706988289525972590582318363916064469272224326918023126607660099 + 51542796366976364598857939963519942952052196589657375389320486824106715030249007829575590297998838695992821129672112286982470839101803354976014257937387231910956697061084369826215596212199210646104161142285030619828104590275452250495465147425713099925741526301111697300543290864571082169547253810817481485444 - 76747842175089064057815931921333903797424937853533709987121678050384014837514910414240080011238593976275520009506761376043037542991469836610628382582740552455220324142940721551509358249940124774632109419407791223264379397119670120233966815293645440044334655462733421014495054399298993155325267007028367837533 + 3682940128363377628112837946003735920586671396193321026752334699155751265773914933282748449830374675044064734921728234388791987179890631052748238959979852404926777021512032579751178690768814836310341214806450489489325971410197448257781832905318227436123576920502071242763960751745384105528537957865628313685 - 88773001772032623751511622152995446885753082870594526011423477091516998382827834451327548819803882516749698938069700432447868803149038190246171070779847538443209396765087930820808801762481297916651633667116816898401823863787491239515010379723787533909841393770580304401144612430307881366923159729772858025956 + 4060538770227830331408329837680948382650965473635603745968221731297575416158168030602462261312121111764025057196030815135518911682048041857896297834621427603392541754867563161684531135793121706141176725515899369503967401316499035191308419289729033810965230776523506471609138473901501747430083896369390681033 - 94402428353389281971609741621824217035162281138272012209734421822872748757006990318086683477038761148976702738004618011296412220782724348640829487777503820952080585580890860610106377104018524646396810838081456514640851352265150718700856075198372754920037366984327958385435485897694097892837268846562499144287 + 91428571105945234714374282355262619142227885544663317401175165521148560044211679910891785670997245065464545096481169850175118792967281112171749252459610381226348606494993305843308785845869942579965058334959055443052704393865051337933289915108318053379848787285942914905767339950032907978818753871756981755990 - 65640239668708698702583953785658566170015967096257661508661209527730006107613214046146504513725091673350107698700181561231975310632259186045874359779092131841963340499906506811557396520059895346121858731795782638601519127318452405210330561664506302239090664964510892577861850330666419284122172916101453689967 + 86908899068286552514704971041306531936251329261062503893662158235615489008742522049866711398037490403825684791915911594754564860541120584955141423198601223914127098072304337500704004666199032094736948701646666282657162307222645108874412545562538245317352456013713951855628742727528171569955966223584532981289 - 57935512332376439857924773070817972343800587219421759275916051413362674526549137184678163653758642058640659417146510277505436763030578246643443167926151533560791415005892748090710580728174549962141461794062766046287608022743734526299601759249210873148214149031924294883720824061870523712152457432417510607661 + 32490804095759886211436342592352064193952268529070829525359724308439366898455025336702685940922614200567563852879055754968612719330639413790332883790886463642727663454146558233510635620880318871211291524541844254666041366041113970420467424347074458933073857460169559598037447363289230542774947426559411848756 - 28608894992927828437597662277776359320674661193674092256154628287827861478012752975533166923945659742173384219471283408992643034399813147741852844232665853619558056009563789442845744451036991042305647660584680204657084181164531009326423105089185393391211670178271105416028906903144624251159819063739954948858 + 74706481953008303258410067522248322127685727219068952516182204008879981264915298262074850523600353771164737616396123219782883773993505991714435443695144284583557697293106894228422483194561445067524843625520868455689968970715477952447732263350776616319867000580918454039804958231951604850486819527831768044714 - 22416674759077391541502469617182140121621521020236851628366198609929688482689141975836330885770279247373130833175321943716688915705139742659194215278636319401916678045729931968331793779004119813118570346224779375684014357232533677053863927520053406461551679568780236685310749806913281704387219695340249994703 + 88902735507573070418189280793176200494297717473744878167547198258095746853524088465441550692485234838219988000506516218356954094200317509703326486617067212626643723119579053758436107361173921758481865495521088998470231537219449194854963991869768933002044649330693985197107035103940111785135799990250137910046 - 16766373882297762755355466054440358684125114908131791498924629084619128726399205351967784304771086736877948728451037535660540892839057000051059672376898880918857947343759411426812450476325099107612741656821646687529676907661640207578363820913315305713375981348454350484605807667278927458202840655129235746334 + 88045061220800927564999946745644273627988180627108376109888897034333726479972360344880967337289639222018757830120000896522476306203798973906667300010300083115442381911240598264359754391898589539074427407139055621452114086601085857492409396807683687484821537292350453747507073907834597488054365021267361999552 - 88593942846707470725131269832338308683641219354769811978580124803550910982662013803948933165857710078600665579306120099739486028850268903039665943072117055989076815897636844853534271338217438427178915189811875027052517611167123993061922184955764759498719916900914903587230868393928450519319843660313009449765 + 68164769205950579687575532084261328850590885403645454277963151655833555395642765649666238649612884552334850858792141867014327496644228647305076235895951024914584252933883952589593555621383072452313887656783638145347483484248571140115561539958447852270904660306389725106661994728318620315927279598583778840507 - 23026199313101917764071589526453415443239307951724031941779687585446570684627227606430588092104852571139628885272917718455504627708882817047308185042828017936698106487050173510675012250317909492821011529530232449452502964417228265661624103283664329245543181414637905737358513635181787272930286023367932254843 + 54643094861190005480885099739229116955734859518484367824580751929306774066720690538877706786754115786369868073825696047450900261453166987021739683788259664000396324178208214499118031849768685551859041015487838660210407333866885227521744343057781509229522379426389788671228593703066950008648189126991621215429 - 65394285083018952200956959608927429105807141523438896051419662400168872847814838460017889981990642808174892186581275192178828835836684433286028065410457378057904711729208043858170056388579110835836590828382552230115632337375312442141425187671576860761141743169393472728351899625359889199225111275300325130894 + 20947826927363988230335675279641273672232616842476384016647107040347227443498444656172346804731733531440109786529477048849963055087994801372248380927361261335110822981321566650937546903606006744435796056399255221049735629934016045056063761806614322485912180872589842717045971898681399646585601078194090007371 - 88540591212205686106270602834314361825151166937243996068287313915707407544529883412569136622780001045816650506244930233660589049374824607867238346701680500830484845365845955829243364036941254979702081404089680596092950817353695699466874949748576026826390019263738162209765431176373259319067477943540231832878 + 65280291027105398338864128566609138820966941475934482530507525414982858504571977244049739023418940620916276312074933405072061551100558829657015345602323230813145871194131856979990335942431834963746081952913179241497713109676352613779526391504060303309069958771422663521885716429734485197493525089135400382505 - 60716925354480761984668113947366268505954012461881685723870953452260537293340192741250347901459706209325281605352902128747713845124809640042870302916547677786510481458070548789723937979094328520700306817428015672163507513341555109049367716210359688843542894513344589375402160490088876721941888511198847077053 + 57455707886074557264691642949004626975825326992055902544281635007075055423734397513886231524738046358026056877264048755286178282436859278554938293048167401753349631823563704766542965640221793859225939056863301155464827554108664551872438424411667103237460821953722062174121141155422889593857006093438865860397 - 39966195588595712663706591708914970055292781649240598413587989080742693036577116441136985171474886306714341190873094211702145168648135575019911735160176916381577630501764918297421896727282251089816895682158039653054422878368755490243909748350156398184634484023934374989366704253920176920694723627144947571351 + 56178367312015801478131659871194748863500965207649773777954519824008760065144838037648324129371795140280405012673300798664407564637814198368447282397659598367794774766559005705875392148980152805005333422117162087624690950645977176292889672454837782543760034932164818193064443741045641384424748731328885456203 - 61732884339146495785710466099668267080543711024526511031686747018549645451266399633267990480577161368541382043578785647345530278866189761340068391215647462430686597232748761565622029536681707681768964814293755744283954344159005543605048217981674058359363800690889916478551413453024939302829571278727379999549 + 69356756248881546328538684651453466731362797343324104455585885670348217121862270959552087327651050674033365813756691569011603184200597350894957474476454549740891668835895951704454527487151333246013778875180743266260386834250529115427523269211210557885577336317546352866088950465998893720617617531543812557016 - 57818676989680228177780317101861327914349972331818120267294129331559063637024043977264976611224771719685751854053514836628809137173849092448308598705781382086833844314714304290356818103865112266462827640313728277688519414093244528149185164128383832706764988885705506313658179600644712916819702892292453338129 + 43448804993296577868969093814941445340493408026892359607453964831584058565469932287102880402556999811926119414341519252275655224324630835705832092135536504066179500858334597871928056075931541345100852973394764989358055576244610364324803691655140897460694919795917188240236443418587320929541949938155334508076 - 69562791104654108367093211357328066234953204805372309896539947903011957093344573057234859978551379792195983219884393709500841396628871471955678490742216103292578517361593055854539186743847302370461258495554231191930496497939853527635173641626664584031783145730992375174744970105873057937756904344648107475216 + 68210383170251353444397385182437205439362713176879617115062961792826901300452611032241409400204369579522365389967917228879021619388732750316921895077496980994609275953044362685735907656648715808738194789461014826725187854733730792233424987594792581851243059105105417094913833293196634562517085069780376286923 - 88778316088328687779646559486450782501795911375914861897112233346583547807135570329519114478618542297387215351769782996772598659617568974856068452121394446594382416737443950366568480723014247292808832658150157151966742288780886961092341304900275521800976882061055547783691996332142653668469582298574526735319 + 87907735148593796170467198621271554200025457862712278645185161363094094104331633849965951987100578973238528685516319297852991051816592519856873264619662594126303502801728335419100447589620966911942352621156382638322979992126111496293696113774013449267999283932687021402228950454546552833817293046051884560842 - 77447621610133639990411370648947617993697914754382934606446837295794636793702560849043624575817385154884018616549969875806173713873993163896625669209096930451250200567207576182737117614143961518068910519113962618920552783319004516587478665606413926546447972936313485134980381125546626054168465788887252926169 + 27574581837363566497025452176284094466926707290061887542415614589368211508921413131087382218977064650886775648938794123055873238919417273917811590368422997765345667608150918842518892837720086712194307368603596016063660573376257510911889013521953705484462875106047759696706297372955215704652912485434658222229 - 48026064666960347249530904461979418573451490890902659735345509972851540854668029012439782291019783850382659053612890676657106948259238341936913006842697770337819431821712854885430559829303393514876125585213619293901100890257030514880193241750275803605170537567404696134983203240568758637060783651600720826920 + 49544647789408264123877172531286892404206744464556924412014999135372523472859562071158097155328004575680114520350845890053873840137632977902932000723529913000584676204432239705613930980690351548444680126028751031434395062085756055603203872970995503810987537752114332377759724316619076548856569980928544532426 - 3755156195134516615444014270629774753930070456123963076992109232616275549374999532999341981453813246977124900602833590914705913542502549203102460222969252130839168914718482224309904743015955415525366548220490605192113652161243332483360332754230945438702064437705329013202006460330048083010346770091922950213 + 14689164707657601578602709783150960839393960152049160238268471846275506073921535084406556190930309929515271130946840927076103695734000299477414454743682301965711637296560906528027373200213912451548944826827766017587490152502960696793747313349467884606207283607054773237914013750700225519506168401171546790837 - 41296827888776783636276163737070005288042186168863740522048008592984735106886407113130958190548977970577095776704420650697756689495246498855823317185240280487096626854636042194278955385632023193617003375452398935819724085921244216528158775292181828289969825147945318555288354759510059719867290318504726063749 + 55837442551314819915844463385659974916285673004960781734407547813539148219805132551140581076294735368116856193739033417035437962957379846654311610590220068172713205257257502847566726022981942322661629342527549796834935584794916653647142473749285779245597017227750322296311796344362995594526268113367100944263 - 91054201932021582179835659880295201872374922128677892101414909173169286404558153467287983355049457264222424711013266315220951807337863105391483449949059068913001616162506253660197517537044902090301980490950962869428186795704854707442734774386600320368201634807918595063046976313768944092709560055935951304206 + 26220445263404296713913424927418210145906797322647206253190752741507589135199177647686034880671819303063659766905571583718779987336962688046573289166391230770799214432608881583760102806089941242180722516154214995539623730794728493520559714300550714153348243272322184021315042463581487562718654075264343409866 - 22081282422094915139513681061092624942637657296405187551446476698043205792747840053638914962696063527262734711621522778972907001274227902018528848614752878692187459575918263685192639568941451592971399810577022923173651493691614319798331083653600230513050632027125618174112189636690164177881957286201501886112 + 87718048424616946117304827269635717412373344814955872768397864236990660682681350670135498321514962303748782694127551485770980638504618883919896237687351923887237139505010585558589550785026850037571627569948831896922996994475983762181680642104518572300960834948763023602170989739669142681778298292648344518216 - 31010551979628177573029458686284193813063546478526562314959040372964426058046477842477646711358050516049248718449291251419474125529285924100664375344610380167647111346707521193390613960738718207101046100878441788966013855399729223865321539863866551536916979371765463421886990643576796004362355661345492240292 + 38111423516112604680084293751635601960542342659070911637618624637737615447898544677113985493571554487721911973756978482854894259344035142457155819708262239009660485831048888441769501754745066881951326077870273265031732204568919159886581208932572668092435047969596227983999902430551110245464402661014537400959 - 67079534017535970595842352502939397785371375899006257928089722017665352520071445394313450779574449699318237580935874735975498986240627423709145540941537545052057200403401064378279584945391555726167026067444201187717316284605123249628181057585360711065311183044659500922029358985237038349176187736258521751098 + 85812695531581809067061850389273523263984212757868973983000842782819967222255774332155009101151360775096685622863717660483655836149274254837204614548216143275155975161891900929572292568567647190635477361791446536663591814099454762077011363298727847411660430383246653639806539323585043110364948547185888520156 - 57714578114794529296629169891575250127717126610626382480740270510054129042890728974497798365385081584276154148631892864612884033499938568496797861085692700942560308986586984875564462431132781275934533198891761530328357277317233589831008113435031106938145605382913745324823380441443221419046116752628356724254 + 47456954107000056180732069605775903383152757022264791491313500986804152698881402647300430447566817079359740623789924248964439093878193295755574411529454011094148223044518337208231390505530032694476701749805870142492368603115028725706688898720770278176391952282298659497406431231102376697154568297669178163662 - 2540405647369625682757267377038723364906635366175841511460876222420035057561822254762969890004077559329330729899208550054327057583703975931510915294360367593682028017879521278469591823163492291974677245999235719415946683233653373310684919973105690322149128126221622026586344138463035827030574080909649496085 + 6348631129546966902621678011778536014353501093976042256077488902096347051587443882641935435081004804026908063043483462731912543400725474334031870070491145829616686827051967264630225011916997324855104844183511536187938034175041240958385717681183985206656950572548793910701238510878264081646850493252868772594 - 49802708769267438758962881883102721408716241450067892120255789579370613124340644668619326515187223220284921336226935237236536878999292046449698656495436430465016021925841688215919790661506275697334284241435562868614100111609985856644316813073457819194122778144903037129942889905044739838735073696913586870969 + 10845308044068212046066367749884897196073637141089494238574918636917062662992197990310278491841606959459686320856948748307308900630616241060011256898664246150369465671188696677798990915184635485885301533589210036685421351182773689153198295547244912064759868066788627794693201863090816405649890864441427517553 - 62609028913821918197854568698297664708721575733047296981155706837516305897945112229126645846398094338385935189316892604246012430671687465237207063408256376458618860599672116170256841083641819058317519925982949752240115057113258744463704670165947831795340247114803729858874334626428097040488989320276514719951 + 84086386446600232183964774438670084481408134582464604265632892981894058130650699956548552877971568058281867591088963516662450057310503457858691861964164365198112606381550345681796841132355303414130084139721733836037217906064217913126648510951647005381286779047716955097186225875008611365857369981676272911017 - 59850942282025464943720809651981202068427491556007896134580154274340456730589416977351444005401734765627818068385734976650546157097300208681158487824411571577253948281152986570521632977341290962244287969468401151085574482480064408709660511625557113785537831718957243040943880487304822349268632355883130665624 + 872877303436597578581743891204391543046464196936319056575075321749878907695392617365819529619652701954770515390785170136655489435169552644291652940038832290148291428875916391998619123482664184145396154861012021008920362261791422036536117582585890382073721628679972163649392614194639763698112039882022773494 - 15235844073123843644189440501004435729007287838423762537976017479501261069736981258868146953196603806838796632340254902940211603527615800779302926485139435624956596279670538833877342208142715070323362552423269870112829821684159295088709584866515360268432776920200629928200656753191484796136524723805764086829 + 57290443252910887833865085653460422768947729292159874803923839389197954678073284361113502788295787921483574353098340308126704203348176326190369748315466771574460546104600120959278641548395859290250443309967041455725321967035759293639709193329047075199270633449945285768820753758841460920568301026580925399796 - 92615465833703907395172029799779124533171714869161239142507611390195790843250324296043855240402287213798805347347591961365458238707597390314171331618961128501608779982946900489871630162145232321499350869037278637701233503547244727629988308625343046522718478909646725411299458704116443958575594000816042549839 + 84452319649836450630609365520186118060365609203846580295175050651363054011720822763347969388515791139109542587231266335339785720870195393007324864667392493710355874896402976346725477778655955031692772003656787883279630780099160733070137326941923459985858818273103154791518370624875606657781333718924037910874 - 89911015375225434386420720316747663807978647129870282735209299854303366618618313164909266900088926896237993292435652687237383748612071182577632072088388772765627844437580034494594252717786882465660058862359984752028353914357794081677285583718745782895976599591016093627753735687989096370959183668981616252033 + 71009766757263962961798937559189933849771700478418235573742543227048853924350487500371813760555701538419241582770502624215369357778448924603332765258425716416689323156463045995699959617479296569451155819409641503225849514173523669048663120983246104459473371673175092482541611989804853151329927792895980606953 - 52434059409248781980180483448085756116012610079849624039157948131881977802540180881592907048858764139211254530568616690226491761190291454733242010560540952685905149153389780512524248801835836672944117199039597342056806843717884385417919624154872764010577135697340722978713545367387763208942555137519747028524 + 68914902392203966918173882248760084657796279796080045143328973881692739890900911709692488868515419847439298302248047086644702841850779121430320959620136969274851671821063241945347867872483450700361693096562238187902730695629828307039864603390876106709239477299158783564734953056452781993662788532806284194170 - 61020356471426442602461542664114752213698844623447676156295816583097903825787670924948892895486157500641696731111119637064515399233471169416580504103735913490341268448951257460805591872218343543319936761061472173925918344589602104360989590999681253703148665529170949763335197776548461018033295555182252132340 + 82564956044934693009635605686607919998582867449086117825643835217911106911951521350345272313021231351520853169781573546539065880789628671050676850317906660692593129231331770937171485615461062421346132643878760418826920899965070493556087281492501486355174278344866682012792108535559229828950230922196047459875 - 70911292203634081123627339907008179954945353960106711730604294952007619759186171401240092721768401948540852747699168495043351479938810937240270813760502437596693182982425235446446712981683522891223914571643728239344877516198820928271538087416776079730677746823745459531101530514993057260627892465553502159111 + 27878809407316459240484440240720467421245554962138439403462911785524754938117932292261455515168416965334405725969850600439754781393962818541617142676215876238187829263384238444278153905118567381782376416995663623490332534745971318592994943097794195052083232105706692218186631687371744086920929197216838451081 - 40116967953020664319341043434761974592188439683288744102206622684842364103866746699635383392913693710023686136090108420140056863453979882577195895323616435474942165859069091665852746146144596225676884809051006223033610142179402576723458181449026411994411883586928835178002378243729695967265738810319152169034 + 62409827267212999469878061572225846170258072555481218637356876056833750473626647666756994886660420194026844565708845920463382117200469927283071879610815742161513841800942695456656726926662692989702684726768350171355263872041642561501552277494934084291247294352460902973989425872649637262139590890498992118167 - 82525091411636843174184647539693521689123798145693295478737539961955306060361170772408217546668894967642742106281518212543048033657471611263908177887862727460784981590481248850722315715806483401799063816700748894665414557559409775776167985924706219831290001764946338623211247140431839122054667779017550726715 + 12632112932858155316773012502180188468923751857252639556617342224093916463531364501851847879569200992980972927377077688537187054071063520697516891171374730846426948485874285801177393997868083857404745660246832565852412890866720535953239580303944343740739511491966475417650292291677317383680083381743277977357 - 78646187733217441386914806192097256620164699169306873343850712595089863452909662837591699855179100072510276445526801620114089059237392227293517083185084605772889221292382648889866362096647978553834412561671366856928379817661628921718968910988524738327087769895610126021100373328414834988538256172693619163232 + 44314642933585861329159777524605789327271337053250781524906846155123435241392182017245232180079624436625742884623056119762233285506690874470620320129240862495506258778185748764837096955822662512426135311191752613060216717928237914660489881564899622485246164215053835393437578884214353582962120407540164583141 - 32524820262536325472999105799640842651031046507937586989361236635442114328813925284439458172106071334732821336927025023464723453783968390820386014552849590214851020215282582075796025847083854556378982623197667091190633680443284544758316092606293903464532259161378905363261114219720409901637316126307306762770 + 58995192110345614351862594214764006734107377862490384718606347388208135547460912063346472317435696980600360364892770006687028447068223333418683149886092347846377969567734642671297921296059000727249304333147034816832594564346198962274728000133212417663655389179429228054510880018827524474461182400429879570469 - 23833886442124538309867825188597660757090514080900471045401929903045275321605265407542550470370213826531862724500567542141613018181531923107943899461404776247305251151617397040218976038807708256252603928691993897130437013519731757562075271938112115471822761317205149232665365039224561084966854782163020320141 + 4475835927689962879367814282875087375979324839408013451654099482406751379379744946610678301487168144566455011530244658020103430239409747408744610246061176675597366755896205325393811277114418206179517821610867271091821631796899795927942200684527318213077888059339707802895290367179881330262461183712333857218 - 51771152707305586397556107753550837184522243896745151286967724685884135331577468245309999793861338962322781385809200780502443974220604098450395386981315931591489695546782898805040097382872990474735988975088507058202690818633380359002081634222056289505822736130291239011438079551844983778287307018635917675824 + 12733918624007170523040997167504959015471697555907397862066240797353805037299324404691694488975883875371168613519222203857182370893046009024010586840607866242393559592880463130435543062474770168810946178987901626707878678743034805263650912658659573240691312003607738568627683034548699344349915991257960658915 - 74551839470287934070330911461118447569492381109717098173687808338564989755789713813254444778096624688102658002395705936214843429251873432568126612081071796956645110071348760348487213062825825147534842514325193264417698973586443975965444726043491740562882864006402128727362026218358707924075337278782241295615 + 77824980586525596076661070688734888064876463941989934999160418399958050018941717929980782377607094533043380188715256124507850373976126483074356797958701032398997771992130068729821836772451717728320748335393029270631291482652320985077317252487852168333548612003769043536238203298958611142300218039426910323397 - 89948421007989562417165267048356100468399200250256479883273011550970703196907172668421496560121252626833011190493486123637948858174547226080010645109580883049583039340832928104237261127291186502170740176861441053110700206466302403895846849297718945721020859340142392736278219205270152061942484188675321724355 + 87371234411755067423399515355736662432072724407533042528536901701700195558403257481722772355704269101339650294452829925379358784985933628493080360406955402330333291461697241058695182567844319091676652943992178617279749546849809819702846507595620856885851896492529534197159560580308698280951205994072317707757 - 12449796973193067504957369207872097854621930722229599942526804262407400221340110264628640856679873941979010332654652299133770669902953162858241357162473981092741408951838303378066595732757024713224206657282786664661400487164244825784726070401858813752025258956630630528989060514353545665526327804484527602132 + 47925815271497679311857754732603496040248511672195840032397925144022965779162276285472031552368156708725511347190210336624342150734345466399826785750593140359625361329772263003135515234855658095441316570999838938806891296631596863507704235089785403455304602912038655170808373257978726272798158598978048940921 - 81150963548487351473879268417972900586778470179076335770951262010325602191327303977578520465731435406516342480397787466173511682173253618338834142637396346324046755871356138308520223949462603368224330562300070135600817621445123158338526001798271483587392342698854770720639003663429551430169694624018397817734 + 49486025867273787485527522020342526480259797328135898294949627062692963139828762722332499611196284411710137543322411744456565610310545572891746737528919931621404229187230685809322704746802859681776152503845191296092542506406419431465539691724999407805947865605137142551593266459185421912395620636114151030347 - 25765654759714161861456650822848058369455766635346535788736458576413184073426323852456805655472920381975073187212633635694645408455832090488760205486020233181572545742191825690645121082585775775958030313301042815681973958677132313665915973494502928675662828713359204950955521680552143233703318277166354356574 + 49255486689241224809572512825346035873167186180382759425511271890177684426695470356085850285231820823284590442843124336737158324139881044957963456155500616755696837572105732468950824408267599267897012913516054178558208708010293622799436242837639788437829871051000305277100341606419070870757721011362531417099 - 68159252411121443106658373108079473828487605786049995280165837701247587355351621453430736317362853399666063855831751306293867765741964431591145421316337749882671732327656210086212742771592540769417350197800722853922086328766604512614211512434656332735538913667299489603026066984280484866501938028940881687332 + 47536683548528549512084240573968520060121121517547283105413884181731986415660598694620342905976748741165853495246665313011561944766870860988030793394458564701379708045998346258697585892603996495897649209417613230675276925894743893168917560436053397139311501961974843656801469202054442960364078291719733502934 - 55590010338077859483648450202541245060812942717766413152403022638214487592464298547312979945966722880696391131142602865457701825814774004904075075757253254566493932889652184903168464699382419871512658070508160388867507709756010924098879882192438157728046617044765853270102306949273396574922324571118101689436 + 15214645847763729233235176225266824491553994241765748084983101247601307254557390944405931211995044176451313399830462632375485197034710186334641220519965207206453069987727191747420889118345673937976394168422549859776333070739769217766750623708645905070328491826909004240199146512297803455243419910483154600223 - 17672700637961486457352760611712293613752049984555640123938012237710559513828927684563898805065397912238576615672335709516700949788085547017200529807388806553764240347959855828052901224816523317897922565126939538476319474910570249134720891753495834265095401099491915324297030516232165310572536619165237354675 + 40519777729731625505583691572562342662118124410677963985227890864800012371489416927737627174955426040177684955734940435539083176640423120317455168958640354237055417689284767818069279865295452838410971591920930024901457279105605682909850283908040625400509063167023008070817506980315259253745346937042353562423 - 27727213449979998208202685185704493392245280753632376406867617090092539048900263885763179055490684709024257047462448831812031428077269378345645772090690224068110883089161902329257753035498325708417149199207045699069371098538704427318266824271685799380441141756906415581666226965712789373201251795517818993621 + 77981095517536456376321040697543410370857547289619876710593901845431459040638288308976931083537220584137105878726032036567958578480932015062164967598485716902469230190402205236615136357746560955394524071653527568177520497931954875334762707024095312224877639842377614259201934871767276571508744186964047922079 - 3462420777539156015487337011978615101937122268919066540928614560354943255303124709223978560698070750703386896440139496078893626083068738437237689490965587963112700162539828667872050191438993434419840232396351698761012220463707072283194483760723122906777098690582500688037442623092536988188391955250265687916 + 83237835723716077119392266244311635038786604054190876416258986046077582220194441873264120553448129590392209298192015408789412992609140894283828869731892406619858678073606944930036589592558699966402404168251704744701905981533721626051187546883688102872888478205581377889847879274343994846180921767534249691698 - 92971622671774225451743092887537806591882305508073384897437453692815973916658838339272106959545130550854009244982561456160361847794090300909911268803982441771223951241775689336582586105261243616100924348213998699210809295485141924906819403934234501585422589161454693257383170447000002909979574863066979477879 + 64884591893204995475560858068187632088622040303135675520748689952379377418330412579041087298176169075453044640071271668928346135282267801105585342222027227110847225456109192811838164363624413752795786157609554440397689438720232655519924678468828096092773702325047042098852672625776986624329274605121956210290 - 40206873115630397758232408517710891223982100443768270354792469255121629359093248496272232943416128020978743639099335465323884333878833992631760016870756526710135172693877866272915841240510996757917731234077470107980285432201325116408685794011441974545103537065766719924059822799408232930990368567148915282109 + 89892843540967127626995186218899623742635163708940892761147504416781747464891861879937886035316112598178748910698671769360522314777963538692089702619689920312950868965606080762468050484571126713210250902964407473308748840898578528498016440506864153173534745848804290502804262311671752531350301046412924820414 - 86021129123100982324892213430143273226958539139680498274771605361364382850382343481433791803419331940063139306843727410658657937978393095812357035458246221035530637103709429374979739834511625054211942740102304921551227125300413909125754335208887402570224447779494254512279882274825179824376335900392612869327 + 72925445867394595181993459116059657711164763749813634626514014305725450362878231431241413373426158689612861068496489647173609479243018141643707002495328121704186583980088679804529225914591667799189348288970777405505885452195719898874251306677954129174150853044269648412405724919526260534537428112260266334498 - 30629499088707154548371379438857007203483641826800359181525368130221358702150084711185895844466860622026660995352724393949486450344127533718676261392759568549985539789377968427573731393080635607206023727128069169553300944153195149947478811671216025422303191543678188420155443126691302307767102837067530523505 + 68127345354625809182422359294296132351992905316151586407641545673610005854381740126807460720807356493059199684154081271252767120204309060602962363260703330993679449279306829541055774214398686541999511763426835797310077675312963932176008065145338480354202348384019618556216762874651100483754368577452011063234 - 54277125195505621388752975728826340887997720773469969407989648983786852693139685560034447800267048286549954477221606398160551188749873914783420459212527526178645837858670920038849094997453656906711970333777487992737865481570723931937316155889672911286983266135115552320279438920409614085413083309658030262332 + 8329041423486378935123305740742842764048791148197659126840212478291688285131296881349680469518832977149259530450373457614142904565101805434244628574319214324692641539772694565232441722090663163559508634156571563057296148696716253072188987334167111585285831827016201589647765191779303668883480090132518398627 - 23310314954331484926851225105514591664138829983598215185333286532336881578504070820654792388668441527869807023759746690276681312363299592215205158151080570307236717287179462761678812911723339305579524652177796018537654875016417898096294794226425360339840801595912062632724815936388403459049236328954240225854 + 89135916419350515767589008249148247564125977605474894598447109138737659114860987804312196612800831412139097306609238540464297037033355584029015793614914752935393911394678629366704077497594680179623045348822888945084058026530631575063728366355085819896818210879685611917272828827639495759415724207862226768001 - 17989293080125209865468415322295988242730244577631642150919389224367241714879928197595099325759372868119630819437351991895592444894657817900117149344063787052528381171440383793843453802930295037506928892819214622088103121163998475043661453249731057308767772870790347469165761441676509561455712947360504520475 + 83710675579481352972591063432457058979178694493809311716853816235560797812363210015597132451582250234446410424325209903855657792492487515382914147519244327754133013684625011240278110090396505572722060306916016719777197683199431325099139219494721481686754607843540929312124974087258510515357768001588656139400 - 8787235743183616094636099160299879830934015582112048592236257211697203046326013200132114834360810677674965792395283056480532451864200282555036907893598302396309138861437136821152772420259909415497246589659333792383116256708863660996235037659991843402475311732948797571825017189025863798319151132565500820558 + 71205025098375468784274810458412046863336071183637939263699995849236824014356084860020660116271810872807477080216813701015166087865895886017206090731480191905234143793927885363611791043718903746773442937004284593385304650629503547003542968487387498665046423497472909225202011145324879801986357998023074847451 - 33110462923626600931738487114169066760038785953740371223071041053150056708087761631389733712606824192614976488042859780369778169521414109532750491273242894339282788538855230297221861344639871780981514492635773426209460450837690005588099098932090553204992550404284359442901518116694005133142557805175240003319 + 71197075950704484192624302687514999037942306853435786418206229040361707940489092946699516420682869729995515008226604880265134288344782759497833742309387867663401137040031162549349154229168167428886739030339543136833961602972778322884706121016312178093224672990237881843661510728207712901862961860077476456036 - 18981749031283484306693067988106309321368985393658563650447318642887245771460404826126233268387723249105057065796655001107342912731867975366266558006915836777818247947160482880820984795792551699965069937347867865819047382564943646972006940332554553453192380607780734972887089226723465344680838993389692835338 + 76077650603564479527911336986235006857268156256788281830522186081152734587816220368610221942097219206103848380530279635753356055625617782419019313552670669060351096002380939312282903569798638967724738571166021066663308556935659021473162827899357274327609735077930545945077118632942450677208495461475041853634 - 13785139449013325174097578169547001518753235677973526525755823833642048616848029443671559575875515291081255260162915863792417945589115620797555393043936095673925388075814432971529724957585021416303769361295504487906045822720033194480253254078700742482871629495568412331793194087719288829122764223336902595768 + 50874573094226557600828539947844268375751868769454399163689523969271502486919131953493248616044147684418515719667353825469645680241130070176887983413043848182596301759886056132134601719294050861765588018204159637975793741620902935012557412306601008877756255301615898216760724838759429525022723403580468931611 - 1295622942595184269083509751729297244191474738634027735825210836320384497097013413048799542100610944068063065703848981016945923049863742084088969748112842966594535851437108691451279265210539534566253334887241670901529579268290469052902554081953382096901721138516528961078863250092781508092078951629855010441 + 85993557376710260784734047161187361685780506213842816801559624564375613269889439312342345668025328553276834061723744177757429579256848574386430404131235853154283909725123927803283721655358982809335850971510586582399308081807322665120321456168368979061116626578985113290382437530954895658021405704681253739190 - 2320144322845215910790986271462070005391989257481843729949951881297946737536074962448382019429826265304722675459560192864076804710352740898004386925213740252182373414792299174898915254241476142807307223412338894791564378967930437658298291166923928330955582858136792752629707225483887889726267173700435153198 + 8205763852307011440779373313835764303503315481972626516332633116295460792451202589850288876822176564925614235711643086828715674914583824119540617059972724207493235790726997286851130221679963082111697605290479541824863579253980929727431210320231717819175144845602659839605761849779414120239184288674660364383 - 64608323508910087871658098427959665117792136064242362101632056138748764140039076928505187237522872597128646831952255979000643367811578605377952638451615510481415080227992245132888206106141168137089642467402907673001555926530107028346646635409666467823985251967629120284322315718935433167896293919729250301541 + 2558996747918894318139005695432478483874952651096855859003151182368181871490440172213494860550727001007409390182265931707210233515120620337401045720189261345530639663338490876491957945194007774271519861096974200738196075719633377801476015135799376644897583396922659672048194812348070143756237554413091299367 - 4259686864111518841333764642271093463770613402483128551587668318832271770897019099148722023510595541575225496857916088303790761346242926511435253367418162532397555670286529618946601025796956785883404853619192145254176852432087492957343957706027658609111213264076193336357552815423963155750751567924236284427 + 11847361046531282988134518538220131309244247905148041780202741954115776519808190647771134500122284889179421161432593826718964062960393440055594733988059540370834683188851939274509833204924728424737497245064892376373077736367642428585434298853565394580319514182453833043417245411629047270804051784638633567859 - 73666999916079758059564745239259401325210888817478347637329284430233756847046053117159910334173949823900983458490854092886464115222165788399878245721704364072878522971340255776029752870370829074260721358629460985079615390993472523741719342257052073092392161449043840805917297229957538408073912615306116589543 + 91441351448428683066259756415435366064283835018122202366505156865483342513802205791800246245555940852697933047112151205886201684721201203391103745928039840409817029595645795922805384736281771382406606581482051814981785045648212480471113710601193839175919786789695130445774698750789631616456972015054577279477 - 52273797688126387708938359030293977880809864541333037699382488411661534387423078734902438123034812454115603767158764343277548141600119351015444934455435294133163002024608045389816145074448774080800493176308345546779629623117918506321234597885240361271323223748218470222507898044442142462808040498052885092144 + 78382955790430688295015879778545314574872982530057339040301104940863047327755521638114168150154820011576768210924426485476461692541813646631482843938897441772265262853198104822102178630680940850269892617798537959648628155762552833002441172802957807935482908483767005646472168181790607101081762897470828674798 - 38165852501438940843423917229012175987902379386692972046031565694884498576394195850372351369159442645662514387464127023583398385935986851768132182974223032187387077371535299246744089301082590018066222136110059974302461117669985132799597497473229879529754785455580522073296755097627409073521269007682743592852 + 89999413243929527543407395754831074007840368205291366886713370783809256576756915705410554409659760352229493973100522851331057976543046625716014277611063619039782722790466855905397243598851035123865719664472764284183428487622076074422272065281674754413351089591035260588263914566490462028691151538944115239503 - 25287943372272007312274284816666896930381511086649345100675328092803051507836491740439559974098902326790180799757917864032492540071066898428629981905995492027815452078561606320418814469873439610623804781754009144618115279691820759987884929040760637166154933589946289073085460527593275775171180127803145288916 + 6722526387504880352273731379255408216387451244309394535635016784377819904810031443031259408675557278757511681383204292684833940249042868700360391421735212239130212968543937708300381161854011811707013522851610927891915906215596035906070175126947694014501806225196253225216628265195104164347231331645335792532 - 58758217518307603633500546607417839914515111595680596118301008624278554582869774638611199090939662961465243159060410183151003135185078903845459775439051482994995628910361482518459036281213165560137138348682838659750402466702683508788166803254769533422274814586602147597582046852327535863334879744606062576815 + 76538363327718581279847356624534216042131850998561520218578582365221563960398414519055642435207992398087387960547407224216802035686242699757659883899059139886514983631665227420884995670523527831384717490509644281530449761670684580130833474529136268441479676911227374685545644382091222509515796161225768221965 - 80102594781486480507353602397232544504319177544070940258116271508067587959367193586759737356862117569192852730155044854867230740396591020003013294826590754037031696475599272452501319460702859663685900774428782269167959065521220886344597838125179465283072984546393889331279776094615974937454506599604822847879 + 86539064665035272696171427816565427613532971354309852994353282702883435240864851277363593664358961125705597718159725407074123183760374483403020006435419625904873484544333618358373276389302965643632390243547966122145089816840118628345541995189760284830031516787270424519546683739093817722906354622831933006489 - 32949614997982179072993810934089293383224288780273769101234709530132558033363451890107451264890118378360680515591420538750351645681219986975879706495756907159244804519019349165549880322890189047359462435246444173771193711431751368262221428910843257840247623194623019474909864108046637157333468990899165995374 + 27604013616928550420324981328699887106711864905342937683707841344457027037225909740816479286724997274045016048372211483654115788911402179136474211215176485031543292222913892724883973189193549908275456493151734925566433337472127240995742456313579305586912115843315603588452107401143698681912489920185047830668 - 94725540649082262121958209814551084630567819130440806087048886417460790204900468738466167168540902465688218167201062452886685139166121275159739039918588254360902532281507539555961400246292101993356589992674550411085878125180985300807570180574865383315833931736606620162835114986251333567834506752523043449180 + 80093164937589445315408981346597434260648606782961780677923052215252763106752610808561511671785420768036907240562539497865001683661291982289404423745206965625096473753963625901001995502834372510134525210892801270056663098744766507721135552689225237346182362293819047617550401293806093392864669869120168002081 - 92930304077939281857312355796621891265343960928256823528357628670040460140150105744029980468070547506411740435641263809844090326715810135089989065220781226319476169168823943705553701231639144050053914641406488706598491816262346576332112673959770597659200711273570602587352223997760050650668358835654368125110 + 40300909731984204687788968905973998038502406940625455085357584465989255056096490695994495077062000413676516761219522331149661749786202867499257487975452863153862295480342769783646632551614987730402104817048931630921609582097108751494092505689902733681858400631249009579807609146611016000560017819495454072445 - 63179936909330251127161814782119477653922731507365936293439014089563525909234812322853715526299670621261353082997951356799116623820728099427581722120976805285789315919610221028843155666992088462440701887414972931270230694032690895937588606413191153698922860674536957927107917372170895128713222683391212162424 + 30711747015649487232889461019243142625411483990668890824807716935829262745372740924730958891630019631894676466900270328072118407294704899471734935940593230009455226195146882151135447851813802406028443247035332181055128628557402997357506623058018450053763910435307885561116091335813402803265682817614330032783 - 27958028388417517923531031020545455025108524428454762614670893231225059051049989153788316426506586975657602286668711083746290610851368932615943765392541930229992714005344518055692876646899458093158002843794130586658034413743088255232343634031152741015649004907039787838364967520443327450948035166850927368353 + 31453176651990871093120958113106811489385805753533590242310876685342444186614597280262123959798106446559950425180008307064939248446197393568132956041370650224920365537633572716734255286210289688737031334579926092051728633476628272638044987207078451319445370312910223625821171465536753973138504352638275737476 - 62890479836510057564648180776795579698962495615107094118812347481615356475916365061028062777866819589515712783082389639018980598546053837391921802089118893767017659926420512589093076261139574614799598760388791475637824942087667883815224980651929740098325099384457940427216079642753757684714597309895425322002 + 66312449824073214987726931032041338768658130032576665017179719584729731429797074272784031109525037145567399217848001611194251536884356498434572773083151451012747523423725248974238000942610292715473666540619606563623479356801949676421679820256822188707782457260846506536672348004317853672317071516389823471717 - 35994553990493108103982245652832268373864532207578954702116882101373505399263975444755270547918829229034092302482375728258573460566271478649572901752983166548948157187802786992707774912074044340861087945541960690844299717009046410158618476230133852511515213872463564825521554909323800064004521094935168748264 + 49077971948343197525096538332254897673652282750462354303612188798260202653445590500193813662683797691353274593844572128649858477464016538003532863372465111012449761355071562370980992928673701594421240029691985902074460220775447807522686918866441528698648948604158165411964651853693991553275101108047347626988 - 62059694344751843788562319602606585300215494035037145541623605939209880490038632346322773976252371462599384841723525916928441241981525374093121632694889541109865748465936996594513775139020713528411648938269303172108231073966147572305629829424757202616847244444868353243717595239834197019035494164468749860931 + 33089917991803692553066831939032269095920705845840962044090907253921732162705499185992250656862801518955652920634434557748465934841256607378666735584026856893403446657192879134978527232259227035197377591197906816728910955345765658486776316973385270991954956281682096216748558063533006275470936829006484449984 - 20350945229899262837492845498219622780374197654575284482638994536653715513268358768795337606736528584383804440179407391804821745707854547313240806628001890755997419558434713891069723829252360841925668932021718975747941125000853165945106390322212237948793177603400595162352793145832798752500071301348099057482 + 5083408038305834170490364013141741277265544840916749094198541740264652686045544740764719806425878202351250949167386008058508973953165909581445239766198077370341407935960013931873659222171747491681490380122280158155275438226960443505452616193755948350156645179807385201888748931569551351877110452798526382789 - 25010101030125323572132471544940370607691419958769826500803126665513025913038659443464846293770287299228205942433356682334658528465213269597422573637114645636187318537347120026263650738188179639051772483886907596035649240898517247607289971514364250407445320944174959447258408277913663290626780513646740197686 + 86842597800283499832453213714167427520642170083529272169665828080547407782094697544577075238369976508489656042158294483531446189334757067014898504109827910117961927083985487272712635370796634269142481143838953498408957207790343571620170911406221981350280229483549766715183952876370397369988739206639328717386 - 24872877361807859268467930008855532426402880462176709452352264110631878151209632355437414603558006619452023491311354865149397392864377227221142637500032860842903272478654574139842403663820790073510393196206506783892408617658612420610074756685380082468420428688779866008215107845426084964281021610360286309952 + 42899002821745409191273742656482050807227011242672950003994688294606320761297736531948437347043891417908750200828946307120445498141320624314086688246999319488723776550989533726839391775020687983663427324963209609019734335567990365071612336726705182023079362155752972650978921200409832035853384819230968903455 - 91808233460125179992324555623776233445099543236172112668029173367320092659900296788790538821574480275518805562368290136379898719428315565692556318328512636239176782650592725656024991293617327951046115102837518450864283108888015075719452070211843986102416613654236210049175708880600997024992437732944718122637 + 85227209905656033644443085536251081611017812632205958879630862249400788716180321137664424062663316386564860935513588115798646067032368426441139965567858723265657957312812623248662587327860698532878590174146204251260661802709043840534538481640033874042958552859234363344112702377994312499013448257026590722776 - 68909059960152632110116721058064146268794785819522157928052161410965865790067115008773167958705592971045030828469178976671838584119289179481901877697161389986098603105893339258593084785314752674685366508536195049567923926572462226498648260615354575555462430640604858031099533132281251253435660105037898171394 + 59207172803510489214321334169155158085819262799759341877456754363434907168328176488979535769252047855602838346683326134174507077237821069647892598424529978839478622759605824489278761709345966746608188412555175293033147566109130284608797068322348129230871365113481270941099955044480221855224658682649984903817 - 29890505913957751907132842405618979854283574602640732894036490638090243146253550189345447179054475646564836533380567437622398621484260024972831863629690060033168375532450903322273996716384836090657669415823967283291773438338088475566494412898169569982638475702823249578715206063862651434352302964697105640618 + 83019942748038953476000063566113779779524360893404756195214805512139847375239086652556511198440673783073314887606572081983159493580864690792691547316284717318876715313847382338066744771139130253976942851698780085916949459372698676604403197612380717152580543497893758517674885410479629223862149032747227591563 - 29345911718851136302495671420021172701425314718486979678071595367858244334433445848826990251412973034499653958316674668484536521100420520082691566286290891349052231042288593343879678162255392488938778818033069970214873038921456644317723908928310272194859921494698990793001982977246644539940338884737869273624 + 82439625474398256150082537168629513742299162975851466135136654858201363025776433932224905521219182498018585305985973837766244579187129883831970912969124715635942858386385189371813066858356537173351067879064002443245813724720708400413218831922016332203480877997959540725277416110526500133466004275883357298547 - 37257977592298620128800785325069293761048180791532356505704991569674890253759346307555278860950832118234047254535971169959320268729996896582465334083553748545334794762526748105917818118456681640374842689077980842482760830089015793153958269080551996503363799178700030075676253837103009581087341944219262888461 + 39276575500633489491279253308479388172901692876576160769758562424935107806504060215721398654935633173329968948841337750955449679371304561363928527577249866578917110153754102596869586298841650242179353816852080962294366169916498202448908551059070202333085819133863033167298434507572426827302928974748254463564 - 38118536570648949490949237140652966800867041803283578161124533678829207656052499103663460569134862073013669090607592685566119395232561634777359227843200885453575666528284125912918452323153227900614404878491433229152674203256678918530171157444569115272324812451691505714829096083647880152846330371789099276454 + 53471382950887635202262334286450464700097587287029135426051695075447179923445065670962216210246289733217624094755576288835457874256831272788841978058843761020061928945738984983171007842698987487565416272260535810824121285255352245649591798811691221872455105736921084503791857313698708473097207080678492324082 - 79690015774009574113761277359405908286102274075139800668990431692718398215328085284268802265615621913069565787397454935231226587022571646734056580508484409216591269426195391182124232189533945317465839898545932472579071435402701880742545311889245084134113188934021261743249843640653823892446472851930535482587 + 1275784477140122276133711584910696000861786205103345241913213903804290653184771121501055105174301982614947552061195256614870096518907293704335506569015203895514501117483871297498253741913338599422605497347351060859586409074043635295595032616373539735238145828087073828535969783147915359645096025206314383876 - 56579572947094592535808528554654429303208460221080048409126362363063110899803758531747292664163317776726424293653392371579091456980660118448123271283324077775114060640793175652213187679916363999193689052437302872529504642779798458926305293679491150120977477851823063019976562320564537970556732083865326015841 + 28960246213381012739479377678870101287623217530703411458982283540621305626460079904023905728871151766599425495342526221643157719559602095168549203863959714567199737580437197739321338202464138497389820602286293080784581917068314958544132086826934162490257273413004575718118816496477897623877927772395264440095 - 60959157804029762199386484971573196180455405497226247752368470674344922734607185971599112767079092428396542169876236214317282003182226534370969227888865475165396635457833684190509066380867133660128397927764076324037948130548327200592147169999542143303058169666339242923595227943165991370402877136282021431733 + 64397317302924513945976085518784439519183067454332014056267915229810197022909363438686659140310118113255719402735760266938158764384076499473608170068487764756064378450192582200365473161405090353777430924821925483887945263239110635161912416150954367623493809058980887682079758703488322678784972755135010640583 - 30386402215918794733169970308283778272740409638846948731775070139351464809749206683917715807223540096081114192048344185849821954693977008256619036844022536821196393141283801971840403744460114017460155514650873791473596262489313076544822142730288324885704456605012439585409920946511114572001442700329432234243 + 6459118399651546277130647029185973215604202702530488471119800735427511010114489975281966334912402196019421092419487141265582299516219437318355649702983868510801193695390739206301254131043627922792134982318337608612044150940252028664823557308506886523959872746558960538129079162417503346092884218787579002425 - 77939194066691042002572406970640835527519680914942925652346717666551291763538641954601773455023640893776551708553610295891081619989102585748588220398087756733618209994312792821359393135810449984212361976303056653207402093494626986344394094846587529654860358327586546405903214865739099162938491758868702547755 + 54853365874042509065562999551203343114758578729476998538586451129092158178292067555696044140177217456892225649773902403373812459651580815899842902336551665107647672984823042332332220589185096440028805478708766940319302996820552687052657284981148405116570541062661126985040621429537513208806875593266561732801 - 58653409841934328718983197995116387285782801231210258309045969092900601924198156211642330161178295961094855500124801971772901898820326939904500439939231850229967158851479977632646461545413800751453972684409827926000218815881903901645252192197956313561862498858136051347699574850253093199646960100013610851278 + 57731642827734383818248453706387899969695728827213675199893827813177130023373322486988511045005097722893053489311390801700390892413126037941759537073593835195934492600661158282851529077815944548721008434077631182337391484662557739500103333112382924753188493184638600193951164978739075675571831656462804494643 - 71781219289786532349364200708005378526343865677185157252507686092173179880273475020779292365911138018596735965313105690767018239294879078386004606059944599034404758877139535134239155183656461772893337313288367509045955706978661320082714502861263957651547768425175404945872190891135172812953678733005812295424 + 60162509391172086633856592956421550056008010063352461188882848488253705614247087560815834041824809711234239104259859351213153355987670807702472347265441085862204943362315917679591529043734266997386832071889149744499260707553126874914616374391198841975149094885198685716811608989663465424346455765145903765860 - 60553053145767853554802612236485996683011524472947727291251814167884473818059433101547720499155265911716590756054853551737786690552601106566239364098226315941213605091692325333298973103716580902896793474931063539534403736921377950962508102443853705548877555818156898485135592104904475064427334564073888276606 + 61876136147913711686482784056295186668839167207877869676057352043934268165398570822218831066245024462438107606494255263410831528222662178567441267528436663190755930627615478583082771369195692567979643539880871247132616362633702969310631580478581658922624078256755349888763245593077305882077494544831932321798 - 62670964658929702818415270781042131686035476710693035613346673942339338744428040989539539835751057990504459773159386409188969761187019314636675547119866820866435605330246615350336836539374846630003274556852951968247866786250694012076691171217159625403552176704424909785286159968471267163019128658172612131317 + 24648066285243313086779453400449239625459414282008819430727824373488141226313939873409554164160636962366084291424775637909416840142145508289650817758762950794641468878392346829271066192860333923609406795389820124808679060513921431541213137891698653704991940215953538969199797840648802719853380748523673272889 - 93067415559960188456665187566674161630188428302572053383791744815482497132210740448105523026350445317574554956594812428326148343339722097337834570816441162083507982372315425532253076371297206091082586224816336910715673201544081936479355186478041696034562894028420289514533646910360072209760618021589307545333 + 52624567538740860181304054280138583737759562447372624031340651589707320392331529832344872920854155093583953936057092329562132935528441334260423079647219983007408538509552544519634259848613888158003138401749223244568819390287255731003176880926400073813509385928595946362719823518620538107639603791923550779059 - 81484780782245767981509165809861309600068151527283492136075245392225723145604946799001200580222504250062430388376399311229645390703295475907176296999303972098272069651920347720085290233901941958880703935003166402784900105458598497802163596917690963276401924413291247976421001641480128594413516127306317668476 + 11526114682948367945635117072053748293971514790865578808850655950459873809712835460338717740581959530061402965427898179108032142161959226199472129921861614960720309290839328929526954068417618439876047083455871476662804288241457581260798668206298334244653542575582934720379044423460384755910427579405295314660 - 6780685354472841875846988817253963533428534889185434277506819204247094735566105358031837944343575624848414747309958425021572342509142861021892004290402536223003883554621337421180165581168040094492547053723337255242872425900561814541330018346806295821669408584208311191125545252080620930950525181704449787601 + 1934197260577809229659479818156839525768840115757498547215264318612517692915506904097592882653628374611803710959063004879795692405860500408387081495178654016492879745184777947683031743552296962419031195940054055417258341595890163712275259872657194238041589997194300686511745340714735890423615674544573875932 - 66339742824877819916036821437181797916554565663266653493416163241747171307650351016076729299768394063662043957727767213276002046424240345718522404468938798494268999449676923583959060689167383987445077540823551894581488916892009774759797769242483851658886828362826320975976798722961213106354925446549964919997 + 22550813004373274354515891336647866522850950526189862488992116109901991798966291388416504104966031451766327570559417058309695330704727891526380654137055432886596847281297010093703194702464454417473114064335711958605859328518136847241435391307199896214283320771938115777520865248102809765106281185147203640652 - 56128336581820256169270808810576837804372405550721009335138622471339970633989972396195787012103837252215463333851233587418537639670217125952277021097178821168943924734020991521146114146266317765487140402737150882650473223067927951323308989017826968305900766060775331117183465406987835210786433634285495299236 + 34995804725000057273123308730239758612127251803026866251704094143902780061901602552925758370913101826350859183807950965120188869868378105253550082621000648421223022919055924264928361954167986085086755969804695142759304843102706439076969855548201804972601443880305319693805865427697023905306335902912348190764 - 7680884592759509530602929629489209022046537012344822070709986772384438244262813076652481004610224156356449923097940695233018099586315565666889460107543940009416298099089089956941557664385653654599643937280862484348197491384263225489252115080087029843695774052230482712661333949607967163341425376934368241101 + 79840888370782923323505708958852959931644782406934081576572343718921833523094829148036061668459693061500174516036778596674833148650603863821314263027766064109730588199260204484084465868727705398552792902652765688618126494240113491483828632515281021137825294566030345491468870089369350876448591924869428685504 - 63500528023019741208343054429674504317414890259699298912326420887224277257484209654674741267031589361435693110622621558423375057509043440552137867757174899712543330635986925195800369858743196862187733877367018722919222676596524306297273655720721992212429379792289903313205148354537051818011478037325976014704 + 69453194934102555367579396462531002583197147440995617178448234352226667552643422724181568785132091158661782538742649370633030860657327282462798106743954122210194081219521420050525099063977115982629454352528386643132560158874734173336242493072617120241972665705294283597413709599496334409725993280560553989553 - 93840869161494417661859404247945393080465483430870324348683598750215404104404211057476723294863283540226629333375969359022296898720190281131731546105227763111776046259715000666382708795984806146599562223742142077477377739551482403127571996048256454140066791519571253424923211132063444595707192954216763161896 + 4357635159202866686932235946693845430933799258652020503563955898536761714934612826072646730936040920716454389932526224892586643061273379991684712592176981310180904917801506749749320159985216901344299408932627640146074810480595495096033946388798730124110674821015536466819816635926017910620550622114011503815 - 28972484088393245734758575389789726276836541562348371895269805377395772769334501133777945538012359180442155472521078459474006198957545854289641718850954979367474186454994039502759485222967420870878843107929381049886001075489522581527336040067843751260877172292064477226135404637877414671933781598580923136771 + 58472692840141160846191507639718438712098061513364048173664862353118889515137864968117725987710434171471819529240710622691118478423491891634983944205875213388773054234549885036602094545117120343818135077821020542268745478988590725580554288515560964453855412157182902861833898762504373943766182531879859326282 - 38396387040922244892235710299090199709704484458634544697936302960119441121103352260283093078384318668366085706736430171768722771233689798886912923939845175826039316623585794993949096827695420687121008232159732031439846037698935567790689317533953030497025634681691991206806030522113570871429102073820480443945 + 7070141874691531825636530688298525293636953294357185220984732792900445494034393917620021935656636795510241209247558775423732040952861149669245166268549800977208453076913326275654211481262353555377969583668367411038038125617289693393684253149305407596572693203284195287925771619789091272155399851792202565946 - 18568980123229192556832092048644210853115903475003886252628724079194882681169577081415110785431475787746129018252760109027355813075576562234031398834928543337950227126228657075368144677624623505377286720871645789345840909126233783071529897327150420443228695599714054273238985390329222796604013180147540059760 + 27532215249215359366341713055272302086764271912130340835324368651000419271450576721620428398577773141059347879872176549803482698563433330042092489956656580167730966278618406722604639167450210879436105894931487270764245766321266215622180423293466653752383883655308060647409583812289659883011541160762102483503 - 92431976839323109193606798074885128354245307542509369458165354937166874483507027877880306301472391897233142521102317269355778476486763795934298163849283073739146708177841098935246963642792541061930159997965113954689385574245352959555533045596624370854879605240266623890540780892391674610128788990483576370308 + 44462166623119109510873947742265170385576421590577621620576192221678592223853411468356652541840858760056255314723552355483508242200231868652404288621573799350311186279161316717778862709615756753207717624241009280067647172884616623126062361928221933968370753345032357702590796021314795926420917526637437877975 - 4379881052397803085449279395487237539433333167385257536988491495110323972896177201620348230116639975898114628434087594365598884704010057767365158488083801177234181335216995142957234380709253245283499621036432111641029216141961785479320454282736726491142490239375630437067013646352245005244502420047464660620 + 56541957882693300969150665622651272398849243544587909393991139577634670303179302279997989570071365935569581315133284584940034785759892187521646122792291039122059286892318260611150023696358107400859435082106129436797215512875429717869468539326845279271954127934797545371904301435032192283076452391950450155712 - 91922330397490958790890483173412098721085967404258327244005886809709545318043949204579028787593735911100941975314647583477825729643746751693327881356596352191649780458014810889178957009484857143025102040137448502063061117960810303585723615154671726917242800184604568535045582422123093185975127801958904934947 + 29322868060713645853845198389786121047968945301204574556658294854511435969498660692755003181810697730203032639923746322816725049097446346342388870090341721021742120373754096843772116160353191924972937439321845464388264055630916042280222822191178032188387598095154799418013745652402592628663536729916677207464 - 43404109378723709832604037303701705915747107301331210950537790007402607930443327677416872358634484283586276826711599089610281673284766032857438242400073448319015477622391805872941369870444491222575946482266857219675574748439821305647392150750870090688005683376101400860396320767391684565523262971056066391793 + 5584973121537429105328493987646630073075385960411639090932475745037995299036695508931973117814469902095107683452739877467691110511985285727233215635803497441468049858901673454357324523581160386998963431547573639240438850008778432962508567509686452406310189779267317631963069546703168404104058545080524901599 - 75344575359644259570244624116971796292288442352964224989693162097230760623510626681843473676451144789584867054102434008627124737348917357674544948325978216662831657795842873553941297062957794880895254397761760375305138531148059886550217194700312329304422574697677091120798273480058925779941065706505839076613 + 65293973292939974689783614025673397424913172759848673130111237589012667179141086765503839036439120583292935869934835641703596315965660144855372961744180620595857672696115718317771381050718822969147952100702056433071409943295564360363995413933120488735596108550812424613835168287306414037656124149585153130848 - 37938537248211579066014873923588039106173929162675387994955754734699854807720696568564501955968250515400564498630255469193134873518689629554159722646526612432701694623307303312443263660674072090579213316470105799001911269218484949797875790816705822633042709546819757324448967727638109975532571157925403674284 + 77338709387286453436617990500731367939974315011105553965412341314418592510766446084726232364061797908044678083293987940654995622643213406875945763224630850682702538007581417225741829140517884714886958511639039968706292787061252585611134716731646074242254079970225757336124480840154463896490340520753783701560 - 91783158209760065641550972689561160594137950316863441979723745088183230014782703942306662219913824625043152092393767115632386260834397139364817179698712931470273649253838876870930855015690412226629370963270773416276242068020403684678825362512957536396484786754227689991379605685708559633388344607662573921390 + 32855705979524571167219482665477960592242428981922393852532946288533911968704695571677946747325430653924195077056100103584778560450177188129750396348680878101373259722560514789592635489487744012951854917468037022769000621565884063997421671764131921124360406446939795226326128327122809625653524662170456135194 - 56052820536517623550046811297008395650590365483280612294189320282813622107247105061207542479271344730473157938580291405432943594395186432693056199123779062877726398479475109141482931986812681007766626965842161652551594840809014602528372126271608063262144714899968128314152447187565974889498740842764631676091 + 52961443333013756691657619980998627978998600031339122357671585227491791114029378419441540691509910962251247696628946192145582753112661803519434132788758889057201505273679337238639661969539068325464051184882845232642209166863575091020330567557909432002554617091377501785316285935947000056236004540021054578038 - 22388339167905430483085249742592282048440681015330696243077834037767144789109591616584418052140814094568823080961884914151802863705615508795296248764941035063831923302324940248843635953690775836594704828609651016758371712985431641827526504484644561673618210249787189926765800712457233223507816000391407802897 + 47935496031808834821659243741840997777004457464246918099274638890643498708965962911666482976478934578611486037570594395547204954807173338191580814355627500624937487224177211954902863035140904597405581966980287504226266499364205588191079855269282179935875537117390245903417049392984804333945698533008407477471 - 45879007145653026899646790024947973870325856993533877287895715333012280155765053060156562771985680318911034590425674121690068223706749259805090685838344996337455755673601967660536347662570393434573273539159020403050422038044360550881702118555505136512903380892186306833607004971052855816742337645919621655455 + 51160645029816634056326669223941242981080795593475184161491485844500227132663670070611006298391216063265257675821309346138410559954089484026733628891823208098285293052722354884391607442299168031173696516583889689933028762077701483676133861470301585627078442127705104373715838265623730512925764423243995081006 - 61819453850338239238241059679359509001452955425096277897191774104657127244871830046097603306070360973141089157281736722824217819089993890547963301199269114620668070622078272652425771859362891476463529712572621186754273277791110445174710939527721327681812981023752066793690019655559435626354140872007090661151 + 4709123640115513939119860968264188252324426173004117845874071955690478186568169024272023692840383220116846724220217856791840391008716579258888994943936168386215177036098973184041636121378576249114518882706467654683954654235312741892033233491895658563025051763045379566365247846015570292909175097909083966381 - 63973785640578087603672493252437607868370313223201519718411361086593897481619868792054257918180845368902353817831669883489214472154268212042529640936353206431737346083201001593943029444312089479331677166772397854266587943289964196689754992645672328059171654576036332777745439673505160146636679521795789424323 + 55316798894306499655875908108410562908271572064303570695174871610166282402402033865210664091071566229833807638775901346603306496447275099289577053490039087697309267591552558446684971759775710908184480728242920095835286594649708084628737961266092422684706924261741174749940645573770572342191833835003385188408 - 72593258294128703654686209931014531949236579693284274329881362291896689562579086664085011840616372824470344088233506590232303578833603871352657229344170117259395769238926602390352582313479556224403556244567686425404533686537534557247591550978064936090751571490603099598733252502230189490273658630492724928302 + 41389172019355625760810066891907203944366187516361325392945372038066304274982902224069371300588826474477186656431778635300249682168626564348413114120157203031261132766184440285387188436214634681392054989434107036504772567846180069055713444818412950290522073217474220736120291788479982221863658759432151112280 - 62809956951548016289062981700633929135411300135202381881733337603146497552018726179455561924230625060815319516675428290749456591536947244101265187859845213718512963508819345661948322917846132177606980242830403943186695162489040219701841349059561462814756535100111479806305837886881558088070690454514062869260 + 62111187036130388103930052677290802790497197944586731832381837477559480568744260122665957320691469134944617181341308457159299316159264326700884991293701093010182269577757117479447941277510635140797762345766024232106490312109478786509289593109902185958763341003062642079549132577171583132967572013211682379290 - 14177202335140429872479448752219555121317544277476425528406712587996339264103413855882383315134800257125521968531209807482399980741002841548722290635542208564874246718712912376235682722198538976883745683976821897805257618358812594697224150811861489682888066014191699243912466280142953938249599873277199474970 + 62214236077404392159661867530609640541175964234743646719281717017186756168678012400733069950999840046781326093297163425305295927823183010389529040096296936960421653173405914790038521346007646831298707880649887200406203279700456564039660124529414011678661677450423216744611786240452107806870539946235863614427 - 20568852275610186478503774907838459342874837960891684366640488238391705454824928887056132684644533444668367465747676968492024529294466635519524959351529125506068927258359801719951818253747685508068976786531510862202449809302189992106998417980707206353909956466842029941107913159900025097798848123273143429892 + 26962242001864299019473640776815484512561427389921880371617196421494741324397318662283452012796359730024753838327620202285142311142585004143971787960112820957295230171800426049928485955631692369602900257115678735621409337066678732233532999839356781362801023260914764189314176045555614283317646715199671764590 - 36139863578910284026725915724952188348030544825341408646888804873881698074078122732671974935700347803226376935361247567155403767046458616852111252807173945415192079378822264779485578441434294912976099779392344885427230833718618457252873349877991084909632514076381264174786997908205126259322778226916228210030 + 65986854155918641886896271406145303298523459634206157099131584883577370854539467439616754107699825344099048591991615788482027964646764100885754195027585887352407868342192054181378699332263574277409298382661593514435703024239659013278889951265051503587025805687860670198126589713640336769264998129437171506853 - 3768353098946078220394160822531990901172551124518413787866628577108407412954911420423105734474698026320353522654126877460988011341765622068025631340056839433980728071181377944298963335441021211078755692144565387484030916050141842532661221493185232119705623056594976744309592537984340956057121691962831601936 + 36811074585526631971214374995799454594197488967924975221535785276267486030767147301458934522510811984510975220463114373187106673693706929369159132960667441760955379927007288384783107728071681030809093193500073758637673130439401527301315178391206610418595447197230777520383665654241866599935161549754912019522 - 94547850602571092900433592099054794941946474841464542866463215093214364776110982023439677246704422616228954819609965552386064878642058051002880927333819751785199908992334134452448605543664355889337446311059876784045798366219954957686456483905099633215479107191727516393749745116864840474710545102885260611480 + 27708490427531263222564266229636605702201818868799173175836270541189079468386943438921141035455200353729285372632603662969772442470492476994528723707167431212562513925104322168775525143170975972300428835955449053878224768502007020788960147578849364678544929884774225399856183733087094209209809680984543046780 - 23182790883031749005333031843977868468378613078367238644852090620745657498261578318165781585399572106244572191715955857855150548583958829295969100134496975362580285825989488384533293961915455314205350636723041628288515478358633095924008491947189762228402732582605925768573295555098061973280816681148225170607 + 16342759441082342244354391387759339207386109129081071305828280974875687993542142269075224497136622608076672970337453939364042738920573059577999314664913526281372546080720808510027243907287731739528895860452690601593348841043048765366168253215214993615226091837633152141202423794554453826305072922454394828138 - 82067869670391547359618783931755426622078318083204892762605667026519846040256057849341829287655564324204102383798412755640007654458171670287046936798138616663751354904499964279811562782348418684717696480095780260356469759927145834355792852007344387946544291712818600652221522309796383112146614905230739087032 + 55538695004955800898820341842451526315713350286781712549531088941676127151948107005551816840010000806409621038671546243492021005384136898635875116006542769809446052628251808561604710772366609619467198320007328180096469291748037060252447759701601274875519311622462139677129477555521207788782072978829867842657 - 94665053152876035693771729470678859609944470792575957508514498146673534580652142218885418755904861292363529277737379344768827820582484657936904676442755461591178259437977374963332097892779437076761036937399573896266864062654753973272363893539323897716812589017535254093601241108956029146246369193406136508658 + 9733998978990855412640255120385267732477279683224040359558207533002559079591227843210555623837737173157698702388419748105797477291066742081746736207459984543897754378667557320703424847868035826949442383671683996453355377604362394605567180471427031645013367339927439437067405178766663831238526838339781770376 - 58817502425828958406394945196546258211094509187150967650764086735044073913082938391777834708254647750100232737825703322685895209405108257043343439885585344866623318251654541997117125531527884464765838633182541999332008252211666925786431610908430633892395149664446835726048044806526202245736241037939113275278 + 77493186718099692369418412296702285156700255634930361204732255106695707716750281311726597093571060339676243392787061098709520637632054737298282800134048076665342778430687413203626961907668358936562566039817825219973537687284166495753501454657339180331037973990995308487489491041479959439464031762099851139613 - 37745047291170159939481470077435906653192523788363408909941823496659368298941862460632702752178953441885942688717353544141345331235694073582518425445494278550999566840900929527111501650968782705645591288053204586132182776070614656776672778087272099772937023827617633864329816772977247256412200051554475660730 + 89707628589571367654251097413531987695750080325031265103042011823978656391077393870029004741656008350854988882067627253086239852526937077322502483533818021608334039329275377775870838953638482123984717822324039631513665499873851911893887995096303021179406371173795220795462552154288267949375813537569559798735 - 19846016312797738731211136140981693594311089126868873619032237858369813184700562117256006292984983687306963053312177122080670879760649925215434762368825651478832523449539762281457627405707270975360850636783612341023465212119967049049626030577222694953939069076173826695980041212230758350566732200327820113265 + 65693032702204218532816859954626937186431097931906305669599783048635795062428188526683486326928384791058500941557734723673978006878016115669733781011004534594006656240386666148120172420925800192575532502824391405602308166841024726696226701935348736570712445222493244290354692509739047019574152609883034500993 - 2783690563248958312571265315106235583095580776979334485725916847320177872992744719728986534366224657431907891583207108564903794434987883774779492633759159354114418029616221712733825828896235540552978569759738267951641186607261660704975243339820618546434886377140625751450379507666924407671630677935655869872 + 86691221253494745455398404757851584966050973790609918397887730766982234249468603306545859367645733001619029115045746505631260860407700536250528457722365967231208850532476842074615276392999160329780443828268667080638356836519548628199762476770222029719832801616892095042914940322352221140105798562615109350102 - 67068918214002977558815050973866242448059308332824455898252268459696010810905615036310056379596903803514529431881065023711193327212190606167810306149718525468600580683745229978183321074988548966005653689780905742511143100649115160397902870524356284600829604605061500800118410358027515681319225376002422493683 + 9037676643466495613439198393433141189534735819235190582097932164836195735554377730954917857871128894485739322307602867302793308641898026901486593104459148044888430342903397225429776788262514416556940442652952067336112235572034186281176199878169770443926577195200917432189892005561209295788831586088863184403 - 84771511224883070161547283107760584334664039333665578721123725724037231769616832559273662405089828528348902685355228809519072271976319690074059523935158266781825933027921681666426853405916651795507944358108082643942524415320548394059830534923297722781421186056081174838998744775444102746127020548684876331407 + 65052397015756621824877137870296325830137431684908920679216465635697927788246473939472150499361151529433530855320314279434407963591660499254735955932114349641952174098075516212834389231502360982861821665398179354614756868835191428659274754303543699221553147706028727874579583988628357427554180913312194485071 - 69561949677329563991978846295773763871461814331346542958393346158756268692733023318018207438776579203009553569974488896053349496746121608193258597892028401092867450514090124855767364765357492997001220877877664272740154292669069704260652792750047399990547798377191901777528722207673214692191858921579313356470 + 56170385096781165834853857545690901856235909772934123538062632943860620801404846532988945446759608843290497997048499689105989180894273882403287721564240879790740929470946794808314413461983780032603690095129781727365193988225270265220889284835520616428477841592887840897275024625249094980593875677712617847288 - 84701936082090735694047690301295850903053250944708308185929424273427998289226119996888016146920383679847229889074091152610147143791955237376531176432222571669258828111680412852462473380658396671154184942040568777770036357681719177745702989843812573920884442162752406912125403170876752194660520760352348570290 + 70612763138708054272660013509675890999388631847592871517678765926391088544162313013907914248203713777235480005507457864282222374639119507450530931338132860502834459277670599176931420479512068773606906227600258813710330242879343832533011760930342799389798424808360638634189144902004931019749134979117875612558 - 2312230876198278139553587277237449583496926646874730069566577616872447463689680939799856651882979079291260842762291834688460807419207617887873153907764000811409813033277935924669494037253953371945437818292225822137378526856574299014613604333026413847759301222491805880690494464114151013429779999484430124983 + 12463213689949262244053302932874981246591309150118647002558474674498607350495957029188059758398732603808823952554670379230926037515424721824639178470506305011099890240076627792974296758194392651497207880955328143778177248055982562287863290338130361562404442178485254721146202820630180406024966341806216357456 - 70371979293890841536749410515340561444883518014589570113860624494182003173909553336412475270148479505325650185431490229050674924015304830073661718506559321070497618931869526391861891794091136521194997068124855336916772808735302587827791142342532519204473345169001881954306019843510179989636986529246234334280 + 9673395787568605223996073326489111162835919638684578424668050970678048016781238148749671883847620296605473472331089302353180021518925562604163892456545513208757206464777071534969288103820418242508826729049088642405383106008180723148311541231141427284793395491111685079839631736709028056531848032338014841426 - 82605229903148128580586814679798853107977480966745419306842995355376844334570348936171901956799609152518278291428898452802966882995858380471145125327199654958715048896404463878077856460574771100316202366189923086594093895797227104245482014828992181908891346432366951766234379117512023391983804354740636815582 + 35200718618563575888702296352003227618374481751075242932758664389815782164266326863642799509086159817482268855874375740874371122909664521656865196858847767605876119894214197501154468023424686802738024034377630632601673746952879867602469308291720744221375512651846863786502078205116006193975211783265312164301 - 38020522091845885545916238610430714338026712548213296838698114195552800203811407221774576750908882744559344263702166428559656141680708524732752800754480913325681550326741298379001341173374756146805998188517092288514660537770620097230309520847839690138238494100910791095129848598284951877247628469245092353926 + 23051585837423301225552435990154094727303098060376062260922436438938714556168441688414390694434844121791255312908779728817409464581788389466149281215266060993876986569432510661446675181655180934908590958659560245749641138951381893711122006422788128865986427154353654654512087288695650074527833327216364418404 - 77977304484877525342053273740556783776260443457677011598087070714227203831631305049542799377120204137470061344731660738135427559130053253505162999571504204648110377548526623311764860031746131573886429123863029963082655701390273029507629281731678692185467729424226785203844926244644678278890162991357743683834 + 61684809963852510396837234882888805418569311246485228311031301738514578517423978761352549911447792015588511592918415535925930317654064527534104480127571929836646189232361664245757033793583129133398847958266300209410115375419964239645284590161082588157454567089051185202843307470620744288534139936369509264462 - 54259479197985590522935319816120357998026009986608723714699095453023555677588563791526427529788474421561093194817028424802666475847067374184732059438163285947017098947212441698950714263724534381365727955009444760733290599650546294679635804438758851619247144677389393834458971049857636704486268786590869255510 + 66423267363849635948736033732514073239994477568475674018640275059709431634436986060952815738289225823220923996461254819889062529279284295842357780585616243132808712458989117568471175959156289490253287670907457521911608329142354438835952283230498977801040031181568290822446110775973262615571848389772264597464 - 51487464672004219167397380159203764885670657972767167491536445317442486109221833275797869102932198744387522057049731861864413501190353661431134539881799980531196652361711222832516699163324355208865573731977383673956478779793235680869087650920024793874322322897261634486404260402666259327242844734475839246777 + 70683069208690958758133705941122042053069160789187332739654660052968285668820102098117297103275144035107402308153313333775133897111037688091831314373358134979054384992628301782895975279413966610391919908151474824470856516627755019493801783379818823249852313397940797092634921361238587520908058597233010804834 - 23891652283987568260979600708514562405654164077542422842465552355728671217919896537044805672196470750021346969207401642223017852855402070092317892803430466133949407915381475078472569488582279613040745295021285115366798891886629778846395595788735291347192912172379600980898405668091214372020909974279058166759 + 39288032775382483009484149793735149937169459981628674004371517637567441190022089749045525692383088734215921832995402520096401327959642815548350523942951971224803246623240363476136976519978264424824334417451361660290330239582431287003224764503856752336541895904568683990796031080446989152743449018416967042537 - 52110546933329236705773894456570141991541908856520325128915814026717822969965438085992140659855757897093796201453983608470080538130609302770192702811327060111972194923512754145396731482687932121059809725390783560403585809316797016532233152483665804547202864982641440009812987642222581160068230243956136424470 + 12231282815427319443785876822238430085655781913034611935444968480750972502480922892371497103948079048551761498793003976218674536825636221148094373341697800566677878846977438207522624017880620469160166757308241643814699365789541123430909564724458094880814999979256268934038182668466750797036405619543912331239 - 44622100117435802892653716080735092851641239410243658383506231986344388692061909130299453808279329943503675941890664533405605865431067444034104978885649804714090407621655449028777049839649966757947337270524073640481403245815237119074320375333798082866450524745816140329871105384080079725755836690957731049576 + 21299226919798541913567375804628207776916244370237535998579979901646648077688533327922795373606009408459586575720826964717339279080792303308867207935991524404596253725654930629868963908918146721221384889380929612420838811996948102914099141304903864998326775215463534619940537447835214484655752033797721794172 - 82558822848573300470724696410791205946112476867365037951660070046641882753592477687549394203610785672262662384382725033246905066204547465418879066650432416293938683069538711261770216966107189710318131558996495646905608202349636214008048156926149674402260919051646637718031228397317178938178923690653774307481 + 9687385811277666016309700999820427656185495674520165722532341921481976530588613622896586551311679416283097391995133093816331261940481288854378548652548484377624503031740871514908603818486940116779958320773055205800332508871337183999399945053515287220692251484413919736561132507615089267310571926801024268052 - 73897632420417481304393157698910842467232232693472064393563046224094693240343911735397699015533976989558388804722225470961297340752120871781536913760689451543260172527904763187874977393661016106694625892333307693434682332135100544980234797753290465492241903725089975419670744141296371376414925953672375379081 + 71815344971470775640804253984345641523236283125094752229183627780053196327555229207691369341762231207519300404707446797827246477558764874666082092528401365592381611755488055755688375019635407810428766989685448299666983105122603522249237760084748529064289990958349945448102714632764877263617017372936860202601 - 61464114868871124599786950025859868162871637726212811157551840348963635763534004247680694662167253193334911039757022064012473074399018668466073122594299136075216430478121185423785842392849057381965641245824478037510846018059045395404958009668458240159712270419396829997597707201343497393807177817315941745233 + 89533738191404289351120021430051624098111856242813519363746260849488509941747287084166610797087065043006395512291173632901137388586253031866014984700264187512649240299288219857261164905703080979371686934173430171645057938948938502864843571732395330672524063732375449000055280408363483903656648928101102645522 - 82987254729900465883906796538103939015387748736770331946472650123168061996862638355512950072164538380760959712200552671912629545435124099372763956055471336399025502973363565554281115078633269063952051405592896406747001059701784558993978004898434438169580212672338445055245344324072691724366450695194992598693 + 29851967234869869670789260965018787796945568235296573536412271137902144740280538154114133565223226475518528843375243338488140848973660754616056798229139850198730913692866523595822128904636899165160393959948554584658070234637628139640907399894710249906155756314686568705014095782308225698471486946134633703174 - 29948829865539118963410172506684811479459672185613159209418908732929219043628427249790742468071937634770967541111612570315540199410290058252452519997156676156385004080593331942569738450805617600994904207802395195200101707436517656099511129913312283507841496946252517472085211191864170199632238051545804026048 + 46365018442772313498372074558723132600061086902824138923182791574793037705494788136224765793932463149483879919070098134704307411242223010774496729070409385696282935778543228139127279575662947322253563855437301906917750719995510054745173787359537560726766115984353402246484310555741995873406429527340512479560 - 12124870479154312772353436301890081025651988035529747864338620334293513100796001860146858133191801943081295319877792084426306668537520477275539723925587423270146656622742859391946632743093834061266602214899824871260380066444857886792751566590343297657694157195754787013843577450039503290253739282996688026638 + 23522953123877660235380644475238864524731026185518007523619624537457101316298419565247262521446223368390078719120275055456525972166753884822773969929532832434431662962408560906416351393191282249439903777899719921346673355218604984110385351658954338019230604292136059720795532508022046849890793139446070068482 - 92434681152430848671671236238621488729438799226223923040300592669863869170801267406827058115782062746500850988824350102606773493807222992148668580025710564757981642316889830190234085144945096284305241177143877289431245692938623094831369428568856239716275501290595990040949507985021811838671912697641806546689 + 35160167929094872044554203453190381157251918743126204227215468924530189532886172944681650552898376451342672754415182777979111274813312206903235990685940282974581046775984616211990862949527092094743532230516910735829329542082664978719677180913413369053430223749637783849111203873077750372015004100042247896017 - 75540881807425088097198579093361123953171722054384633412655389824641728550394208657976011149529520888805723198391002191158514181607453438779867796623821469218200844378808333037920560824668560366602199527957669046921033823395785754796274187952145245821503055893714865085015506585780034046897602472859794134384 + 56892924621233790270775410599194502720850177796719873931827190754786499940456720003600978167209746959184596534227327804050311750407117527273537060884539308479186308261553295660828042726802647900056841030960916089645621207209645956571975699203735528401308355558948607236040631260810928447081119505869115159714 - 5129342463401582783159341280339403180665661367157028112526066743774809930258427908184974224567114837648772711789304468211027727781076826363207529941703901433719650612113142480840313152050067787820381712567977542957301840481259652410910623707639868123028060340722851250138504397839143931799241210776136184504 + 77276683096757910814618619540884117020976757801368944683282845300428856549143300693587836378777853603829949830697687806470342153894226982200779380395522443749930986313758613003242974857249130483781976494426172861449899410291527566274177731701660426670488230109241087028472011913015817781914810353182356943498 - 18939759269823365690379401855689990905861363473377363232092949767065798547695842643171683502314494197376954751231241619396698976144713240846872256526027488219593060283607788051776705813924748097332150604832130099067883064111978832717029623032585441317567028708162674590956829105171448333344467781227583020533 + 3293669705893536184270566757408314358758320337750729494804255470625704782928468241831098559514978772456861288624439361667469558117992910513982496624990175603041353023048213906321106695101488506022833862282537592866031599872510837269733442026869753014174454557550302716644706203344337287642306440370897822244 - 58293709024263061937199493519852315382779342954379989702094570528539238261400682802736007025614835466621799377920418650668726936222894309200616030784901069631013904923932692101671519609808692217859246763845000931740872214152633486229699291272324678426747940552289374971347603144925949178310482080617745567271 + 82807105317741461971514266274469238738691333477911194653949947420123035683188519721421361182236463515511265231461762230823189349543637328666718024515031245716997730707634788998746587582278237495236151814762217580789091418144046330537405219975303688640132485082472604061170650154693094353189595043156727540043 - 76915086027679700408777330412500518769298947803187363022514029127782100015894067980969903089011513398448140405051057575280060790722941993202706155747972588482746827218246024600139306396667954611454729813127148896395730765992228824633279960377667498091661510340134988993718476016401256458232083854457724594703 + 61536261231196063454602598514974936412266858348719683419498427926535145903561794741255220885771395801092468985309091289047583419294951457289046233654461149710761590021227670194922417073938009452582889053838202130160672670491101557539304311498441054490571306327715561063323008099110272664887492527833023278526 - 58088856560436875526469206424441398148413179492624223546370040175524111771410849883777962952963654255671041549041344887271723887535719648237062587801392310190635901381436965047333357802789276649742901124891149750059812905221121564019744725319586006988059151505560048270755138039094229209343997264904655954845 + 73384415847582755261061518560316019513744384136028766031545879421199511547786698930492834446550650946230600494013850142952777474676215696959790977421824078398868670812304348766581781760713802986789004216472315439288383685147479578444513150753090462604552390637371929004636630606163934906683031061522809529061 - 56716021252420646209983821445512215640561841410984442091035894159849934068338386371262582497522730555723182231090539472204808726789635767070544610652470859979479826974880734201112427699948550629382297424059255895479643039722015324357437510232769972077978216636556834046313809989043782998240568786084013065678 + 54336125433372959092763920332216569724377460825026336369702294565638019221071364821753901183886114988239947747709465609561841132235711230250351668383116037634738323500940671309382724483471285627273770331290916459718689662519038337886960437961582130636896561632933398528761502238687887208850722489747322852306 - 4540186635519475774794317225271010411072752052252193650839681377660718651402012717645562291415602437733057008950086527729511861449460645408602156406761793719320956564883342872626536480597094466623690158909090792394762918454444380859694303025938917945654317792521667180962715338136896100559930127856395348146 + 79820890579439349889450571970067300161837201256493192975922513313329803829854139561617997094343096253418602197760324156367578432845265604039044036175574126659033233074936894846108036071295473862980071134002793146943498303589135188531436339663774625439154428796976413092739699095846058038290404151922240662266 - 54115649270092464787357255339342907995124374393480176331545883558571581064996366747668592872306074169667073720845971869740423502598157720902667715899822156521971888707545997809389564587376917503341732692443586955071374125868178759177812858054620114938250762589905252883853421197974509139034583368318412566432 + 28873240642752908969399168277804343460367846938108111448813668462350968514399990027189980956896326717784875405444216659994700679220478596352891139051247197091598469553083792222915319716424772947326399170932363605440312723606748358231877599143282811000431489739381693108918421363224241315614796715469203366664 - 4181108905556690331624582562817879161988364716821467658731945926799950714093431169742457649794163627813333201530539849916793295801580156092691589179490434488247049005264110165285331081606448264654901725479032283154080817358749919402675095080774597088398373423398570114138396879531371642409213866255404596565 + 20631096287741065164724710098312302650453948667351076548293295590714097275375448826631360792329021977341969740300716076542999823427531008369510695083726804111025308584334512648299725919365804878613237411059509068897078813117485743776151984876890819873388080228874120880894932246615046212134470277620653965967 - 45631081626302531307168652868374267347765981778243475210789911362425093938229321798984319625053479931372267718517934716630086789938611336216989012159808659797581354946461982352760942732825256962813427996001121693266157603023840797455792570326300584309919590206591239627918517142922887531129331324603496683171 + 87945089015104921702294257989563981148451119735743092499554968094830306032164675071615286347461705309824023631247533680970048426589260050646949001954905653984514697810300704317689065302890605208430386923372533622566820512560814582993395487804705889774549650207090542035120884781236370279427204410050170717712 - 40936471243068624461735318393865650309459061803916364079583555982229736852197214176727116093950414759030814885601364589453596996391550113374496015303863934885276482291536939388582031924030517401889086611354938680360997067469382067034893378853954601433044931180510538333543907010325554199042153290952762949927 + 52286148949603083537560103437643434943983344854641470878970652134095728529553373104119360706616656456802603161365966625191258702751818436044832524573283278656602062486225041155487398192690600538983298794941612327819993917270108605386298514347247495763155483047315845492999137676872698141882905277379944706727 - 89778205305954837308093101331258781876759407143705961086612013373455480100289875405667063485568345262891328877594764108163054229999717425186337082023077059620110122441881137782004001477715835150541941718312007367234865671571370488494045684471602487505870280117058572319305627913950971529586598787753129536822 + 84252548859880500367563428151823531132036729799515612616548674735296613198343406278291850798143233045490729775005371699306222180136824995525142855718878831687279320831897822327184308448857415267684926405287128149198084743915635479276545972157700878900706054240340487316566287836806770546656527846878823019548 - 1295161226513504167867643681131543192872306135825010759857856197180218740348590677566310107602662315248859540491212164595051195095175294389336316967561353746305152386508569649653313730374414834062491532077177754788629483859130972049117106833121601183579631906344247920546590814722384842981504144117519885930 + 56837347420650277136254914642502802439606245221454009028804786915630837342872722050486424902695044942432090772531719325179392024448245662736262243054391162505443807244301511018159565744403352565480801021401521302178355520582495915922467417542889282226039141684639624520013143711638717468982910962467855451063 - 34752675208523410864212501706295011490234935728835133925514119139791495324749420085676212272498133382529765888688333346385516136615338242288113273789780701477640153182919661032448484771564381345121126239441392580395059900119754919034267098523798620864712078023062872277321463926902462427397895708904225042928 + 8049637986780713908988215613424423512717760705241385884274571160695654690917345765557895835098967310966827408770138744423837507859462749304826580640946369592200947169254624047849947840918502454236276954529779009494086315698265406577429505234310793479751031513514856657190768574932853979799530587311347802054 - 65638280954216880332998839339252498240344751941626202620659246099839945762624659088692178634338271721541041579401205168148462014214403772704581703231153957241053469513355053328789029738704753314242349068682059488594284121888694331532652526737460872161109520092712341526512909532689056861448171619433888795627 + 22978724483049205244482541826220057885478037273073586731068296297558624780215538175891978815804687727040525875829673458040794499961245057635056647806480853342012009060352088837699963774085237745845604316695154330151422966538313418929517981816493789616298628829939097237468586699089934066275547371375153981271 - 25546326887869416196305571397436496954112306204679487707048013317650977940305017095401817796951485874125485185489979718646093344610768651998594773454469228933700774673786195454397961200632097112442736090291567219739392946602823204572522082408172908958207757947824647399279622893963406407541660265363506196591 + 51953131609097110840779651393817304517078306846553062507418998350056761864654493623338608670320985096183593376870494368725365154242771251557059994352432155195389067330405824003221343797119962949096061540293324124689610060902296131104857627064013684133590627263663749966099776658463369941779746945291239072371 - 30422803383970205758377987417218462089461583337863453824840575641453067612611842548141963200326309833846820113891902135240624289950265433593972625979580916576801108253132355009636696971228899048297095029355052692965710016352000386427528741721082316447177822962571637721138723569936216621043134038875753574382 + 12705068109448461418070368256214950369041941202229069700152631816502609580681070392525160938116818167032428854028977265029037175699919743040145836589913340288790059070764164589704143103252380310190022849479807669955702652478068055538070651557457145884306299164415391283477525430798725563042315808631947427655 - 68588774418846824026075347074701520165177807217642669445383888222185702764812385739972132856502842926525866902531526512381859508484027983555727244796607946708334007846660418718718902488052816278672382346124129777753620336520285362609303072557343054616215122712449573523551828858709889989221393164026568690397 + 86554004549927698770384102860552807087550293816235677012573838420615331224460554544430547078819619024343967776103303227948276182048653169093081896432562570551172050060990899060980512107621678872348459665921318917480716231646369219890117513359801930322239140702792241516534025817376808824381368876208925775754 - 14583012578230579919212651098878718289185414426839270534677253856992089558448004913221113780032489389336404104060497449483455661568835260780472145848780437525107760742686850621585273515673116908760009199985762345649409075826088927289872260507897314658887553597047156556807237866457737561706803083313717105914 + 20781699028829407415125368521715289749331979103747496070701991692907235324293366099952165487926728073226226388505662308398448326434868553737277621909288623684355083074935045666199861548501491733281021406398870201150243663630807428467679986209140801530308142052225904010497819637611338443255228095654113653147 - 87072789976862077590260629123343008996647517325518842779241265200284308557372191510097929798002478161718869369587507584738631193924696337227149745988547271098801114579845872672146461536736946960181312036433053890558478780114941158921137697998339399824390361388041699235417154835263047174659835463720710831616 + 10265219224463700520557736508111107783637266342295000986799906141324074259497952439938107038246967790861983282844082837167724643040867707147045870215183613242890056683913669493198279535170602969095696896538418334774667301966440896775090173982756545774430684883583243158746253145538386190541564816619396259346 - 74592401327237348205132503246590270557551499937523811457398159299621433073061836945092364178303351291606709287884184680532272868939784285008148920359873235456166966958897835906977455951169993249934270433478995852846853365483858006698512515330522783264019614382564059660659067434270575101239224953994859173356 + 38132140423603985612539589360327058656545930602677031582473508875241322616377752862473919484180039969440788584165269789611589992357102007797168387159955762187825784793482894569033148988939256064959495843039435932663211794774807944174134494762300820606124444471834637519288566758571187520188269291966701269746 - 2258051368382920966139781937640995075390142010181207901689696701855976965997508313055657062261606845071990697112536367765269166257264697176361820143407781847830855279948778082022405663702564425631919180038467726813235460488581113048639399368112079533469721122352983709293621313284795302250914487561872306501 + 88553563478102067415760917181990087896046941771673588721674154429254131429973099440698817953620266658877100125828276668641635177305658514565808281931050812980875614745017646878960483774569807010234225630224254144499606890463397009320334547288868818228954728279072312672540990036153713375676935892514649212184 - 47294427191262196213508589588915163397902040021560114982313477584554595115511591712501144985436982821479742945471129356788597110939028650902314805674397463104080758790745734205786162405115220925337771253688900219995781867222178937495182923511247958583576454292008763434571765213812941607539913201436717469871 + 75014317248207656681806148869652643188782388339133401971431946653137612559110728596568320424157236661315665565177247860941858500330730020465063330745258353937690963622030781680479699840712043006855861116583884110131707042228203990885709441779295458854196803722631312528464691639534432394375479257440582707066 - 87576073209609613397431769565376117076174321294168323091691140834422391524663875554138805501985638317750284398829768203941231082128360738063763435223369818422301971098952471816536405779650920322184455577733247923447571874511794894304383969341403744049474703033251609334913790114459090187503442986021139228104 + 36828789349409031755152723837259434130078026532245403082212139488899471635394500348939144911240379775570670329559028058060359700015388149734105029172653886651014090354306730078911527766950912385216247199916548001743965877735663027232294986182293892210350453694527997784744024894148432720965803116681292393538 - 53532972276394338052944028132892839903236060114682364640857973612992368138655227811085737458006971801390382834695833581634781907549555828978362904903420846737058469090640673375895488284368353258933201014829664710614302258574877334477194164869704816211959981682871005565309849734569362667542567218727040020223 + 8285395348748373078088162819846870980784825438927504850629677864377955357373935988133550445777790418670673497602492290325761190255291332879221213095640007342949001431723544364688936410900721747553115297245846308901224855252328927787943960732488489019445334106744111732473850895115397346569939017119313159114 - 65588478325995530726906881381076036056309800992689552347224093108156791620749013924832861095173729140059501755184544863447335555862130904626003015647435114844830320805104309051461360690056659399097990227576615411253200431564410784087351315242243183177325303776402373716798906596887057433836113532792818980492 + 10710130747362029615660389941602121909115068569103338688481515180328011667968408248616945287262886743533690290983475822543425635561292917776627518842110471766490612722456339677262901367609394655657978546846484143123284698407383552587800566437238181204507581873624331994762237349636317091060290425472955324322 - 33498552547994991046629946974263835733696882413935740043616859115857157044315031089814063139363292495759659813396174724984399951009451295571123676124599092209055409250585658128347445096394579358423709692532651828262352464810980849133962556965427757221370606569728650670881819833496720455107115660145403791286 + 74302173079005116301576058119338646214871405788031431662351517139326360299336880313762311613386251653919165824351366915168626035135134373027511152001419778436466565183449259615622294543425532177360369036980082948781874858880893683993556026012002076707740851946814423656207626529196907162955403088595300073047 - 7238306595712503789470327794049507816665807341124616917695511670748136720725483287741446477305317001432110508917469529994977574047452252573709920524790473657730691046085793093247586768962798951220291813133061883459049177766247193213667357936145175533818161804252846484505668657451702113538009970673606628011 + 25835318996808119976802987237970796026392707310054254007857203371587032965704641732223909566138154122272537643112858106499919460154543176552765852914558904888202491977026155697817351984835659277359228472541155968966431254725810774497152657483155518858363573229940216059578573094186893987827574667982110354953 - 65007593333037846153319952181301230292937445839079704461326983993141210480458594257544922890167804495702299649692446303125955359368403296225475400933832378236512981912858526593101080718758512549355559511986154901323662342388966534817680690089679746263161183231020912589243271034981129943180584117551671014689 + 15105238764827218082609463628205455801222345808430212628688059029478992632181614067286381054694349331857878243639002402198082928025179418347426712909581859230506933548008472251908350636136921330969596338491331099434214594656746101866526317906476065419652224110187727771732844733810666910524332884302353511446 - 91438752332522240353149026054003137955992504531297608620075439584159528344634636777153154074886368388812929983317598577312720989971864917295716581425471392100515641438552944823560523075903164643886475042563632525999757715063613293720704210696278445235189134274229310393595892381771006667293074903042411643042 + 36049750308981356531021597027061779157566716088974965759660536310345636259225164830155364691372057849646087180433356550374483897434026218324794608851569693042556339900406971207669161901908311933494710134798142672832332874469394746676734079706880406080648373665499798417778799706052003538935721509235446812379 - 36025174577980922530781780396743216630727929407399389228894590875349388028157526302251043427904711108049263388253481052959659871623550534494333854479413156130122407244438984198694875220505448345281708953651265152601009347917011621412119732176872507387242819945384645319296448512998156522508589121438115918127 + 14238771232698996075776815363677792011751231934906741647777926996806190347163587496114594011794802894192625320872535155538157765581500521014297421704576472545410329862211378495219892251420172679185913245789859178386052277357080669974353990796803731742756294198815444434587391699953675921885174088294454371427 - 74166709318762873271863256266713147715760822024093896900477255997615149633022474068855376185237871755627516816027340277669283935144639464851573582505258380095030625559151201195142453809756446961289750243791271558509814279553260418092996414505480596651776946877469356137891894724341551031898996985635676396484 + 54568532557911361697008883950036441914645104464044013626365757347664371824417583605306563943603030404204640980930039482639673224734843791857478885998727136158690478590690449157533986963348004768898724968341868948778267650970894891755578739177385237567590893322533991247935638244432601443044160564881299071055 - 69695032529161810012109932928916558814370574767557113911623302492000900258538771749758152912760453581449855068235401788899797025271712580467524531857487106750024444895369766947162335305901624424068969608492122396355851190827360973815472014276255107797278902834519087847065445429643687873248024406916735085404 + 61805084248174130018205995320857280519534266410896831606300435279021721680641007199532466536708705155607383239298264099882254459649490456708929919563411343619815868278937429360117187107463406374198574443349709972679124403103632863721059973283319063738275827925463897723824863751868746229756605104785236180618 - 7916072094984906847639775164491947163029583393452997815169476477264976670166952764377394755709054254685211849196852277437812825346148783856049109816020620645155001442015467801908376310992323825279881082097957356644543394332266818772710561519457340921839132880909511116505667225871094621570792437090487579223 + 7061108774602516433216143703653313304114301842917158022628051698524955975407782849708493610814666289950970793291750198555717796175917708538030970538942344379029513912481065862341376943523056494140995744735091197908737707911882082459659518913989070707244931518757331713471692115240648843615767779206006848791 - 27109872432244750806398799745245359325388098723143686126349557374422328918645735588676377353571705855191789680709216803282049592248395958919574168887040893097405715939709124080728471208884237315856987520437250140267577570424833093831784405506447858163742137352756225179572783199233139690364840886251522606328 + 17866536043454959175476867127125050507180921272526781954210437957823061964698834313316845595487335160550892279249367452622666754840078397222073084619361287760084502308339210794554608719349320526021618216789117184342281949784687693666265483071864450836621738597273369347959648568235150869059183781975827642650 - 74833350827704654354599377281948751499720468578197082285671889298981598328106655010037485961256707381342366462415723508650229310438246491711033721976999051919363182398553688151447366503589574814675994987639389916090320692615833927375496771316379646169800947521649225611920544648172558448475511918861917823675 + 18843900375758451193335832963473669807822310318353850296336958477339017822841991485948176829409417551712420091679454689239804906578387540678125821416074748367194672878599962952626592396665687583111839282078518149781645463956860538187388680354896873476305514260346112814555317756422917797711910263579001915901 - 34566441076190455997568327495011378468480972085724655678675485675511611967987263742463787959086546718827749423084731931759155100792416849502405472746703397936089153541334343499649031151169090234545382393529636252727280583254002898518274268840831708306299709593996129705022323802298832216411338492015818686492 + 25156735735166482512554212668718901683381009447168666914920187844520401803148777635932508902310100775990489640865278032079641207212899516358157049253408570199216257867584337918403573085052072702875715482191752593216782755509555175463634248548681466721040282917612581262344488386440340578361144225237062202708 - 62152725425367653742845721706553152474035057137924682139341382879955754382243374362969262798369778987368103520176237520820865966267523167351237919895601007132783085680209101171625110867200937027966289346659010275258659689571267665819143831632927011743588126908028848435115965914435248319302869054036981289014 + 77132006557786794456068894821784439652737970345025780521715648619425671192631397594997998331184097080605826956994343049388837661330809039376086610605793822926331604974300625431554563574574323154576186973242239285696771613530640255496743907349391376659346727336465815923532154983448329423439231376053550947828 - 34418121628023466613666366556177508541118243582609790990449109301563307768012969858298355832810629606651308120676300449301419431190759540962708879029943839408476554882923887535462334917282827768484692688313360151571563677194565779204827004407690427258587120499932270901605840476035275626257033480440098281566 + 45504118801909839257294117766105648224356237474835102245403223760473869506333492062908780999340538428556813831569583902685330398452500743380671193584341686865140303143821573953954263751359137277874932393321111602710555750789182953715704647704868843657847009133920113427857196397169832415105543941866904930742 - 85682676785526507552519589916479800144115195762506104141730383409108359914137864764362551515857416095347987286449265105888437469143409352013238348569953185186598677497917384467899189099925712732271550808162490694035023650560520492197271709874940181738576103460642910246245045931690630603888911549136516617646 + 47316055698963708674840650385922375604005810504786667796080351941532148835586075589826670942690105003909854245530526374464976915760906176712597812854755636366418619958083832050710760587765185987139924036736695207963394584001829385781760154085735297171357955329472959559308516371350842512185338225804521903064 - 2050990117429515027682929230489674861617650270927413536748786201272463130280186538623512612979180210898995565234940214498764315510705568349682324826127580528998485329885046890357461782105323936408846148748226843170000967042626461046526171217109791762070234203351230081574990934608399534249473710308040701537 + 52377118377536784592058294196385848462678094923616029595800506659417512611125797410234361784463253985546539916389244502183394278646146166300912168509212235100187043989947770003974114092203960944010870607371878482494550296706198314772792257262467243189508495302465725043584748244313704563901348287265307402894 - 33093535271994325216103803676401607638233204738973636895592832292839620879410140808309829247074563419000659581369920586460424272713236455339454979881038705607946660139811304149293439023738770737039765948449495244796796936520401063403889406203127321789862715496204795763097485203413794319722811398557454729245 + 32072091962644944061482677807245986115786900188435295237455065359157233907479009678193321056682841198902378222806744642813333569768688561108248495527897235309284309638576086132176203379866175215765182948192057468335811985568293217536422420900799212223419335453926533744807623057885971289521609064656400004439 - 6040110782940977154794674617333401370376324032997658763318770208423025676921716324522723025107180165424035958120558248999444603992581384513849095100581204957114585365355336317880984134162882685009594422969831043675596746749204997204646954648239837027356807891777838064920002061954438875675043630329379686281 + 25453516760060509210199116542822451952881737746659513197494713440782368463601880250766455308919433648426799978473681334766401483399718842486786936412898939956000928426056327710338492664477726521124467731412519015944449150714188268990820740446580518170440375746868835084345795807096109995903124159159386514486 - 45118058848538899539514831520787092197472894647762932502320313410123298184872236691739115721636170522900404344278225606357632798989526224062106336576036772491284668359316650283530408597415531733756607758640544554061095997722501994827240492509821119700827256323424759850801841230929913517999579531290919347661 + 70894796594691152059839688766678916263287370887159513884479435068255846796514884114829939499993024625796636727267579637418356498799824824699614819136426673746725791113099463909425825411881192304702669697875175922522058538502121455077628938218372991302597096593412543632763902417712827253833940414278032490898 - 81487344073213948844190900042381627112789161612926255699306051387625069924845450921551828054778879783703262478100504319187717633204690639413249647752558160056288692616996610725853027105042878302394660721051148481025370033625866315806308077537164504721289646045302269108273422064664948478317175244183970209357 + 68975573534531097824234051607617513372857919518519330227535167104841087092944741337404589790965543221069764256781167284721715854628930040605742646547649137864201203685793762167459984355655119741372447429481167976895207544154015064973168321099231958061178163668306921436036787493518370646820845164264120866388 - 57037764864069767413406458071743494336957859049090940277651661686255511368666733116049436343694538963767467835753860647815985252627675614772244183123313687567691964903330863257915716409089739295210557520022537926153321464598277512866195119614727662752310306260220142566922516017960540889400118008610856600634 + 67112246311694733175748091568988103503283310913503238304284280379386083071404591511948754908135181043861206543417212751386310689595976697276373716396832875553414218253365398093736954628814761893256375291642605338103220698636407839570198641665972328409680703549558341310801403518191257916038273356548496149734 - 39056664908292191442682533131261062485292980392450051260376079352047402893066955065905811181695655253810765676975452262753628905460265669105854040204828455552274045521972953961883858830396908372125035304439847689543841994076212898591568346766875537031830621068365066016815915457439462511398378802717827163930 + 1025703165438062879346921844395315253198415771621172567041776728736971293050375713735842256429326550346771274426749075752757630025162990557028312662183322135810921757669239640940404921855786467056366694458952250473953108841061542225419727982312969022040455504696490882912813869502861470709073521067919881887 - 90503030597905445445674308856040898487061161203013943782248483411758458018557693462211450832369595291925804527385956238749949732368335692725530165710731931150029407803426208911317132574502680456018032926188807438066447205889326497201358209209966048900047794242347734941455778288799899378557037038496350017434 + 46943452606126673692455055245479493023003222461614480312546347651512167870131422827728391555515659415612826261849034256181308202245368163901017248893861957424631828108400725873260288375258505760707012933134292214306560669013538936278738684169695731749724740438924126863370230274577623968362368873021074079989 - 2572775843215978868116531658288761079394205198039722591243687440021840432761184081707677500189970633238343189283791100011428916321827120822442025568992159260366398656588080927342816321180059622150692654143504011600920084836731977321577951197121695462208949699433586880500806083035261424705056715145571630979 + 89047315585745681073103861746036121690636275433937241740670571984155653070138813560785064123369468849642653034664724481230347122966913287888260835149353659601207680660557141766937694144222716599473734598125204744354051095975942071685285293327498144990135526440620136306130381809963026164263858021055752033139 - 48059213836354425781916967577606157901690862274174406276736875374040506963423911194719282865770662262116778308430984128780392068259832147264251085196833907781723097163776089742911388842648833204069618752790615152281349081220597379970121418600312064346212560834138487981060407097822558802956653108834159773603 + 986372730397882623211498596589156180036848868144235171108164783395771322344107657814750413636137215833153794872621263091256876790495609928046802056179644139025754953983401896738756809817282265709479987422973488640007587979159348706296659634303966746996725366696956392617935307957994707792598517047714869547 - 79590294479535497582160087445872588538858994968343709037390904709015488435860011751732352100621000431054184286776384213028424680120710179763421260648636848447094963209608240954346575459229522299573854449138194905408336546710329803183364957012965561578216380974669844906497640491411109834314778103962822568119 + 17680403375051330725945449607230567841458008860814176591735715470517324086656552435701644831472348364702736141278140036558739573838475086144075725671023238192569477529860999331524102319902656535528200247177414069488976561281965394651450468895205057142649309212321244472614294258097844163429350661736260320159 - 5580928087748377109592052170957061000297523380274443493382233524157209147916488847418498185795266529063725604788255820741994627008731988603640506865198762589684232236543311457163958476828794597126382696890115870407842261714197471099737815120052721429710073868612707643366162680446811562884028540125989534721 + 66437577277352918594873081483788544298861727251865116933909255729878464561502755424358082224154351853715181790621651185639977565459141250897657367986387162207912956330432118674214091852652035140729625284492262189979504984180551172702563868782995404909323457213808259611011857930833435248545859510848941802291 - 38729596840827068864626305358505968594606962714369340519218103281765292727289552811861391468106692838273330785068388104555128235026121488168426958062081784975637304538976469084186425096779994171966838622731435064406555820149179220623520592904350264815573186057977696269598773009347682993630132851543869498924 + 21614113782932555571144074079250589313419617278177322700676196502900049083011537421874132661954755104799793013526006074317028787692977484274240029143953367735758771729333078427716396742330325239642878727973899803564814708616036519733514150421016427409883257798574937835640760398777188854641784599443999444180 - 73140890969050195895127675865893668336233182712320138420813670166004644820535818688183152296005432888936241943023314756549181711591525626740252190203668627992715389038923388347982406659419523164446623509054763930386099428361397812851463504219217061608545494649983391468930153104634317599255954602726746740222 + 47625094460723520327954658671494352282241774210742683655559230157217901829656811851878268714079250758101157994439531723315571360956779513208959850501880631205545373760865402144278157953763030265776466413247245429469599960559765812015342923693869042719457220598396535757841578427618623399582999442061792921366 - 57552413766771738983539716273207054096119792139604188623121840789130953151634759434518727049814769356648711892589557266090642972724648376166699477215737404715055023573060467090917067128362001432520519161659872811847549552813636342053118727041693689739355193131522416492441925668407317611051985751109621497408 + 9845828813183737793489840447869455900446062556904430353198277589776170732004769003120895479847679098124242421949528156686020218149211952349869375838123024560148637586222386240061522280990742143759482204584587472668145901725610987462264618562506122285293977115226686466420775412582114303755126519847844272689 - 23154187139219802567072210595828810001303178702504618130578515848820245657567929320364780755718616309954997537435482533608511839502510143662592759385186393831300887108660649530848255278850532036967965649879012825957161220318267866991048170998947459505358114435514496080485910815470029794698185248332391087990 + 88143974086864897196148833575027285072520882328124863598619098054074998143985499428278616221312037923255547424647340338683703672550104794234484939905224630146411847433583880713933192642563645959082380986939623791355386220716902227208319411924675372498230415261533886990481646205219672306309788748438092034259 - 81898602515005203619649127626034871073369862007540253079038591594060555181404393365902890868615782823524026803435041302531522195978414637001437206146006597947245168082989145052529436778546795206973004575307190141185485223064200989851555141589988426951715202088184844403111504626781011508453126066059226188141 + 53914498250144019383620559322459411703089532851776841423052190314634275786410447913419439205240862646090652895174932545252443931084709917123740379954248659153545253035426661831654454288440950893894330828967739098070535191250871212301183955593153076973320644657122176372832448031719832480632973981263983409791 - 33117630075189782807087051115967037092452180132389542486741435183763098175627785947329470225570844445862252902836568646429741573139592734604028389168292169485602422243947217539341875475339743279434828125229981707580012503741140172012177152703499010155581130483585875966188981607346221295916053684750228136332 + 24474720719026231208593408902114606842403381775540543647029817154994869113058493133386670241651098538282435169814046628163064981601107121734353945824958487459542020271182448880617108582078211853712758723742279959343265534737948913626630342259319228128361189821918859617983554333116325501809143532352398669906 - 36786989091614124874477160957203310671418664893738195999790669199135537996375000600125645966625917494427536366086344649547638536156371582688104680635450820798303124785973546341160039792208506920349942730120284814130717096145070099171622406126924416112393748290554878509661498007820834292303482269683424534424 + 1841045066564506374006938582571874311540689604485311486192216040377636737119420095413469113972392868507179974803511973970883545342196153764076611928855894184432928249590372868102253687127365758335987892406641735290541866306685401750255402576389543115620980890758192689488062722670569031629858343537974688793 - 28438204697765299010512766956461104233424639457002587267574242975136104350083275136685780640054224372382583699776891050728553018348686927803977988943016817736211404703740897754272111072221511587189579173637883479845597806272116717925538947124357580537598793585269438494731955977767705661463108180592737066908 + 44392084925210599094307703774177975771905304987839297736046408054301627080046608096736055482343708472481942207560781291261021692089591021168983066021320939900833552217078624007290134455200974219624743779570958910755832575865401799836122244158901375605102640497623423131472334552331090707960164729426089776389 - 30180185130069543104127474147805003155626593365470178636298021672368206964823118034190268512184306387990315981485281883465356534457007780704270482427666652740138216799714751556772926657894607541700862426810957370699922883561186849918053610888372501304704529935760785171293737260293489780878112608105462593138 + 11452568739637869959433991214218704368077433946129118409184869363947695707747499199608495646016736068433528830354178564819750075660666148189598639883299507690110607786355712126413053574870566195530071122626561187201269202464092370791065351349834790864047904730093809527490848680083090611259580955766944100599 - 60986317875660574162030605849456513099359320236691339352682150374676749261441580744020628308495626851226954615287753897269328548643155861533676267564127677552945410632403046077867780086552489184847570610185456445371762179364968395532058943299877097800265037142132309016002265166135245039866533188566111210203 + 36884620445195494429633059598237888617579323885432649078745361227982446398957277690289622769598173752459678321227623717841746701815611702339236070815259413630149552929863105019300178145680099234327606600672923891540221567972151574772942649780945930873387869529988289367410969300915782432513840840574447531419 - 42548816541693090381081951529753422006131648804352543682647691495534714407428799483388808101303896599820785440284018589812367173740238180098682153082448798537413280164911575867992607517407234191283905424827594592430213071278572923146299569959042686653083394986828522045126585968408401981293779615807358921953 + 54621964151283865782596779523064172361568130865636984170384413807761813914166190362588101787979843225390496979737421695184332773935178824578187092809755745000246410359611949192990179648619344787865417612765281652779038138324025654201589306424080955420883986703457774770500519489197121417633164082637732468372 - 73203367310719329709422296355746714429710184464075874865262860580015191021378864234916578290763434602511573684961904930694388357669423574644572945951889217089798847720619499820421555429145167183949505110110046626079324361992323235801594421657577112671972569073965855297430428024373883586897687193911275541390 + 68896435169916672278743032442099155779817159890538025647170640913201059912829984681334763906851363816356969831234656098544523178564075973351826741236197705547388919811856708127139184262288849434047258518991020796095389731041514486301453295101483363370823315174290353103953969924208618728069842108336547437701 - 11057980914519421682751317895864397431469007047749825470470538169439169679636121850048258791803267097446215614301514513420886783553743382426021467517045004483597291007376534528942767313520647905331600106614617719152672224641281262416298194085141905458116091752741292447546044866118781390619488597740647768205 + 993351917595045533929055367974149931925937906759487772836317488430777067847559911162834931060117064893567107832208826597814949071785161249026629187570285867141913954151871526685050830760088404720993017304410065294741705803344659922553898609639120285065022418474660898558475203651985084800490454680383260645 - 3654735115672741713912386129375561904157952076712922598338000487942059990365234910798424197946948369587928689126844429534084119247108134049625917415789630828307042072200676956927421659765951327959154874229810032282678444610781736128588599061580511231012176736566137004335867149719767192188599868592918496841 + 38458731078155855155446753144413809562255416650110175296429911999693188501496726468327318988378475937391317914521242166457944468181282059206226177515692683511681359840748010394414707561619191373948083272100745065216163899308193205150136462507792465917825710097358412410288016147139809173338714435892232226687 - 4850237685677481043740857913951453497496011564644052857990511403448134812765227446780406883502349555243795195798782869265237226520226959070901615474825260872777368456355430717427672756620923472578414861231012919762012179394209235060669126172908972010215137778955855923735082790670054257367383410280452268363 + 83005422155624990168514776025945536904652350839523671891025283221352818449337437939729820914814186600678401258471789816032082117409200729175352154012421885508457298965963131123912927127331170078982571869477563373764348630859505762922685735909000562455412115537076456232802661756494929272869239226786644405800 - 8281287639579301315467182179030120303009476407881549601870888717342368316795093785610701510974405903959602699470937735569377836732165796322108337575822135216734170962638931471908650027761407683913065190254042320270422415975674295815454282517702111970594337754015121108164502210172145287211531888037240594694 + 50967287107644057612863102247495214767399896642781123199700808626190630470578648629144461347030786438574994611143097407055669790306699578450575516781049534941379906783073819586410791477456675349644594047865068921550517288884556689555862542897227216740258963452813949129651937445660792020564424881704430778572 - 45983701394974003457931123189576545244393080539813950870294750642495136866928044420197583133383552436712734612583029170895995888562524440150270668512238216848710825317929597646248811358541587576884551688710632144178721829486824255020748870992012772111467258152638622053719310667742353701327905201740456736763 + 26393853502585796333087787423727067188383776225625592154385994496690213278852700175595775799795103879167433582840190748392363605302440680632826691797232379852188845214218444145700978409958419076675891235815690264799769982525341402648909383846364967657707210948959144925708265293593736766024975100658342336946 - 24630833937846861349428766580116730149554459755033834583599080643874311785465177111739716976219246727073825670033746575523635096700044427506238469902521750391822521580966793190213214329638957861865564673105980001702871203152708482941293017195025899767423950107754027945640001741207838750152509255284619452993 + 73717496913340873518460392973030999571348784924746521230903489064844569096843089969166994009844979285012611998586633687343931236464617319098117882266975207858860071629902503283472022699389978679324608257333327386288369182739867968140614577449021508114085260265944087475958072720640327909297133202326350367050 - 15439934051680094313325546606699020116046198177550011986522491544856021903378968378155155555364041892499847140333742718757365165210422968884441227972068348168838949191505949869569209743286235973755650900425167284367986615010176013842720901652760134931954210690550308532751343657822488595924707429515683382149 + 572271227879907006804067003995445840139278735535780384860052322217138089459833658229954441355149550356424560623891600147193081819071351603280075900347658476291905228420288018465352365835902774432560658445663773832914729741646332859051067097037269633548134202123598253641517537518557249757092945352520944321 - 32146990916804471274665530785818129466990992866477221770060727480076003875707831879268011152571804579515832023538728790497313147480073985476436146824325002767099562877654409246499378327373762992536128608259156357715829995017076693680334756335507536397071210566351477095043978201156074639945922915452253352769 + 27892552405064517414615208167012218868000264066970729197481635871544605115751300251713732132757844823952311727804935768724094519732806549362449868764591413292420428208119222523130351329668358044608622171400994614971395140043092280964503637562327018555075048749204592125442335600265199863020201949991284954799 - 29364374316862869118323980876212879966434947004819191020191527173293789323658293742542592798751417087661920290749282674495447369715674674654992043084533610462563891457231943065781272644741884544964971733532236429423436897230811076296617961345408587569151670418052551107262704014166880812943042064035585458267 + 70057797801189395431441280482773516673219314285405635648845348462290139748869982110450402049968848670794528204257275723690593070556251034996965913535911324549623316449465584560426583446861499177019227508223444219410061137690201088298730099285016454521311914316688113801920786270526539278881736379938422924749 - 74732180157556758916669400163826622177544615158030427929749079717966852577841038087674737203393464254316499756821506193951285515346710772764306905412476959912805364017828229928184277441543775701945466544692299772735859769675806209371366640427700415178471349803311562703818327682777877495836497107525263034035 + 20851909769788648615349606753020313728145044016288374662127165356235461674410932131317567289246193263717953511667259221478572469781558067475998428105909186630219409702326980308230053784941603308952644149818208570788912121498599893654120169885302940153253416461469679408432308471105602991975122425994421854037 - 24619443726052325544136855846057682898073314033282198360775752510846577889770042734335294794836978337099666686430255547519131708725694780501601468251338143550309772879363160394662386693168935896525594078325443344103472456504823950070666599998039928995761616424111708225614938216565073961454235284203430617105 + 55686703880631106974693631181711115440607894263521827141989593794919929265396340543236529875459775292106798932606226715811907029941666003646307302431266211534301968237837751089688166433438892638970941939502849681307709800391843071460126571133454886886567167483212556653518327773573953172731986798570979309092 - 11226334949627016347109864381824875004431617748456787692432137671347532593630785494901800184710743310934295170825967447191237792187939608151177896225409300464250146258735042170733827172851174796784900067817966916420086698643813226248960292133081532872004323420921756241395731071838214294573758045659570503531 + 2652623305587998523510374800649124508409505453963577395015518609549333041762013260474577278565693913566620482830188514195611702179167848870682637550615172634959820247684214702902827998161189371309058349695225428631237737320826424072739555290578012871441151395171247471681330272472993810678093738635558171684 - 41151672148001452051689252994086048457315358996596198171050210527217053980309605820755695465270501140415663249145197979639732642325020349234848000387195860437586763201234811559109789545718300765361372063294504383058788305168809435070186244472593972467199853990050622344041220828269268645696725535850142774179 + 38547220367698196028886996354808167541971623061513293439264109506986022270852356964834825578048232405212662484242170058585185319601415840334710279435587059844381733767179225484394486370424919047583177929942888871885428649093967530743297906908890062548988991495649082293237755255719114572679504278796276027470 - 406001281493352899013830299588215363430680515876959081968430815865080858473064619934350338431326239321537550103242415888261318716046577946037513151634829748608780163392822300022018924063162180115050872359470119120740366460730416829334110670556474300702959386553030392092658288659857371209194648136884826207 + 54640118548231306299480049796102788009599229591705528905612326409009471499664389873612652392810274166912872573809099154052802422699814451751506850638942642663054758844338943992341587487253122873298248490408652720646753465650176571484769205016056681593537680642068564131745594780539424761971102006217679546965 - 78192834355567090189553285743843982291682149843351541832615939718627538164690406399137564857019666646106658902379961279534987197127710915959259684033305694683385833912104612680260309137129857238569128835295523604345710718255775073857829923254776545116712685139101355839270083062122291645330208913339721114028 + 79824576285452845297305165011401335422462064948661470281260341944464659948793324058495837505520291549283843297769091446534837288880529975082310000296576469903562459978522945329182323095181883248242927941627838110298123526805620326751629431347839029891325720838557758920572356913596435193851695871513840832514 - 38941240975625137672651999806690305613293849971293024350341735206101930199546493947733095041050706744054229364250599516009864950551957408068455213976059058429435168611994392305123871563767173534248424231079697056799201921489717146680693186177432389720723600597127584972585402399094320799817042901201474320069 + 54866579058707201660692469035706222176307209825197052083904480273501475297929428871659314175006993933794049846139980936672849724158959234757313517338347152909985759057286999092902471618747673332766463288030499373944035604141932545702288322920319814212392832753924337688527578034147321877076180757408389165800 - 62317474821345599735846844399317050677546684083503082867117544672975282933106582906519962761836277157557383706274672644712712084162312097794791854797280300696851896303097655106464300180215272755688183114466737094008454593045146169819884353604049741454828051114740987813860210540436978409688432876902194366954 + 77509871615836646397106113524822420181545555266726429762272200181133555012749768568527163315854622902075284296620773098256872673124591965978700087053363901343560494700312838462212434363203273845873579575920447941682784768993723713398325874255038068341134391796483872136084270418945515959992460450125835332573 - 28258715645018084214419386863135177147780186063657165745398510216007008213245399417187527736615924523609586394368093363266321472825356548281640944621459123825503526521430754608942069405279455584547039872279579565570655986120667785753397185075538647714386767215422868627648673996193197813607056771144270145664 + 45085568600728490833649398985870315245432810482399487341970911409209633077093629269440567910374560515235868382517820932385905426063127478002646808533890647014004590560788971195048085217539417012614431931494930332484254244812386570647696954248353659319800159217822700300181694308931406543743288801883538297779 - 77038589441318496863778840233926415393787087675088733946976845041929331641042289384338682082333215350599294064228864510864134194369677267141919132763422750395483442661434897761386452270232349045649385891606879269935956613023396155075555106421040639486519414517378517361254013765748119633984550666987135043434 + 54437712693482301779013009588465720651823299988609297152777509996672860103459684962673558317308487485572617477970320948747359955531529571637107058014876203693979793492431080806561318563949760967440191015465592741115682744445972894501400229330616479360647400508500951325920800477653425638541709140120909648494 - 7981145171045268973428886914002297721334167254094071433513960909830425715823830498747561349524797547388352186710090004575339328567443542705322533600650833798738553995584721018907701608860706902391738324337930291483908007502934089611198115277173202387124087508786839149735935015689262245917186387359619226839 + 61341607604601391243827780837138396767785958913774249597129687303542607950929104025434794372054565241650644155428616304480156227831475183678162588798875278104441078259993928061484435396092324008408571733455046863610106971838119933597495586010225721916100389496715965162134246590823649609752982919158098747005 - 8826958580710969409571526057995335626546438558875320835678193987976004645325728722360719664144767961319930302671813619834982816595692769922919475899267025484668408070190783908421488117001303703863985687414482166998401325531620536696264916222274239264787559315981183839610437198178475761574492382454263699086 + 70020172379750862484201511289601100904692663210771250459357270166006854811292337210237479152340303350456475691497655639022543433184122637516810952179643922352214590223014378936813356313856875389622558541430262776601501306377684723666917104227921048937243159603046800514387421095136021804716248116176608872161 - 43443661044010770752723015920663656179364108371562619862318159739262047700915757053217982568796934934084667791689445604222135938175293010217950100864180054539470914578221657227617812082634679781321107516068795682510218218558639984823776381096980936903262456979349710087286681322798287121364193888350362026014 + 27716768442654716467821683318234774563349472124444765201676400615119539659459401038358518511645868830064919458643437426804334045907507348519343348975723228763639338833580963617917529116508378388852803058737127625712542667978536195692857140904796197482447495970567909264250509154593059507898569615585993396278 - 82039830811312043114038534043282400126365995337242720606253449677465999841155825029425299882260378064722566654189478796491216048848561119367464048205846831321681633445348640815062492751711741790317039014727409626025998759489983292180422214312904253680640404679747317853641937372805837461671687207945646350150 + 19518482386515165020546945474718758622224961328054045355154230452200277496785027229125536644800838448094797668437572490849480095017743643293836928252086685014129588735621666986359552536847178452296129745155480589704900889431782785453376225376378916545943449293965776082107982464008915863111415539484946361199 - 76225686103491014243437240833699337874367082043836500572899503111699329308988320255986302861677423489790251197572753864469234257270546587104488194483732444366966920436062141425431909566508054894609302200292664986043430419875858072809638917963594501272884054306370414718958162144933503086284502433191019961495 + 77847930824609261241740720094997520994870782250810435395303430484757927440491594158519458424301979961627994656514217008878920061086481690006277127608958718863579398523070407521626935149321161174270090513248641528929296942518181346330210851058320119279968378328300699738497491029631041625755635157315796139607 - 91937010648210026611177901529318692953821525986843419677943541677466790031341311352837505651500109099860423102529209058782461054963030627296480548759715812085986895585455446326755939690758140501528676863467600043503352651114150597989775026486316400860049357306167508789444825168300696732743263896872074866215 + 35180527970380287253641766221430494515522502669344870875116722257433516124719051287282983078808822926218286708656222231920827123837776479072427435974247360210027853485618313166491647582119160130987786928569932745816625218161445892969861933516060771081289160258935104672364396356396026045357452443021782422993 - 44796027644629983670252995626168665132574901118429267717492068761633052500311510091210773351794475133893302020887666595076005618044464040069552996467887351197596145331623138356639540552411313967566245845372145306227668296042592186053533914037665198180843904600644884515413174385588993272618112684351154314210 + 61005260827513253001946159380599735286517556001041810875007732821679712741796358705403528503513882339250513467197840914789840286432919592920884799169422790327558296268848220796625873573543181307568689518922001137868714197607150646566210554037806893820375313930255790080595135807982881130342785177451793374714 - 67299923817157528273262171248091740981916110619597121905741353537820285389572837494978583862825425323044880511408705308445581950035173958644740882753195478219040088416668841358700213355465574792871180069415575628064309040329649553925195889296881147975453397221919585366934043363761794420198043721805708272582 + 65786371883749997836044222998219678089455935879943809693611902629951930468987235777629817695818998849874006330747071343861525875111789611267754341128956588552599693166539904425554586091813793740969240819401565633859717075948793429893410769544077736022125673758510029775108578308658296066715759417245884884622 - 956041908142377511836860714108984747188515966741698193762764866724670727187689187145594801832789534900833073991039600279078331327436954087451953679561299272259612238565764635484463701653507643965276029371033072473702940318414722095170216250822784234059947879797424833878834881075199502733591916100753503928 + 11952349659865182146881958834101209881161554459899028289226570125444815104526666373747341075915138475153549639530113782047979913435127965436562643688970045257795102319471725331059223803775223094193258052911967839172494487969029360223521258582600723728734318022998238565670891833894751037767684424827481744251 - 89278350703547179621199686646713855742414843580733841177048650313651707969026486277559415921947950884914944266159974951913321275819977405578579239128710289303610876900044139759238300061460213764547798607265603381456892707734456160150409238340442719264679371101019239145932619402809009468575773101632085881285 + 85582552408081143342684249331489960296015960066788312454258744991643898520297888217180738311187900234985488326377592015167944683247728214704661720553688486612310913648241174312832277989502176213671366211981449801734285313780621426961639521101590657594108115626196253193710541379235862300427268442696551325528 - 6931097358615680062050182587095022047624681619008010321654111906095538315472079989550025986450330696755752846815056391748913704444600817752431151019065434229874566919384308031150863089845775798500828351120995255853163540165402606096910618441584925835990144842497273189367478489943872341100871176761880888864 + 33253578619856995825557152069706421328872097055639879997742643972948947574624369741347133763308884727043730643111357648533458966788213904253137135682664542222759321547862364856503338695324691840403754484424189040758593651647783860911575819551551775582509490610235318632130585535425014222232566403160435003894 - 38510590796507314323544894686267528987119173549403085865574488258729111522587696685557314404548279543978805987216331509621176750623825935740751079731347475860584912282335379631532823424859794069111939906080871541462302555198182758048353733617018422572113885114613049303225627269082486301842773052919295385359 + 84607408117304741443280815153805348494418162836283500301779882929213384623607950691764567072699507990930877220096829525807133894399848992017383965155645670016118004823554262651049787620108898233171947339740030192182627316249545021820362111636482140217913699006811057560971393779482645286724640274697489571694 - 17589922629593351053995923108659555807152617581942346387789885957628704212854197332329447429477824883535898597234792492948107547938470117294796624632440652236954960430580372546184441046119891307738378340847301080888499111857048700934953665535071940229091542931867405768477361630186854349034061222393769683869 + 12509321518285582295747372087067489779024322084392362406984900394161449238719449690319913212974604480895927192629408992198691316818287109744807596527458816862694076628584346149770882393675408380238673839119433308228585780501804745745817693574924488662137298645150244769958640740529866874012469626328981321078 - 42106352592641707790864098657813835934835952389586203229118756563889136564989985606435371543925666804883038642906850238710718119371899985182860547231318346931524352876992349804556698983015713954124145993647284385715946052940388084254231782066745488074562523373235079376537265733072697654611330522992085861538 + 84710125059531243289921954010289069269877067386709420390661881894784986565679804742201946703929990307412170583711086103561114468278023446030575407172797232115832220236199192457402473085706293778238150049874366521518245695991366549004613096591919034203943561844334987205395894054193300445312026654123867090471 - 24576874630568840824243575587010019718219869288460757820205160849946992466449737334768290070397003736103936216152245345364529810545356916223612020044168883741360936186163814101923803079223748339363382787831985704151941641449219363507272238785000198124842786717564962845679487361524055136360151258791472366484 + 12066992461429951387058582810887962699379787599034156469233175726027149603597942312560266286543698734490456561240734182017212289284444342256579701087650395319725221626895400218450341435669466693712403227329989955172743582838814028751494728506945545559263505499047408021883848863022117006902663184571477091982 - 8938410734935308711366704825150385078772702789959702008412364487737692892507358292381247185470814393900786673687898489472585838633334799056690320723516076941012183452401375602999962294754465424276052692732874397591001501021137142800055035213213880065865540632156263257941813616100527344637033896721209507682 + 13720088279580545227789667304502432317636154281022300839859798622468510330804912501331394123158907970751988897414072107873681075573931097832856311971692785537579345421316757254722515823352416970417826206629955390905187293537286091846710810213279936776457990152904324829691457351428956542397053452124511435901 - 20545498474894153934195887064940927002316999767712619119458713936030162707189764188598885698036680289378011064133634121398061889721269817320056583619916030721426718301821387126916868264997561819757974141700242018507626968307922388731470451366740856124341597478690484861920785507953876507341737558840014828248 + 69668673978172910149158644739160261750374669389739716753334207215574769656851601278974794191085622569662158459984031619138019855823834699155619583992699277572558501163712508967824372445107939744394288150666553003048999358296676734808621819409925231963758793268644127613147106141419029046804678960224543427091 - 28954558562183246673547459056524894342786814333766054847868848461212333176734111283154470739563823930518354518025025699731343756816511617085721578526100808031064425766783144925648549331616580657406648426030899452818530410120273316421198648321504179969991704970029682387894480540264445105657908453650158954109 + 56964864788741382266354575294193823913672490157393866291510416290505822375350678201480560068629437159061018368169355971257201414870890330811478083015837092632112480020524283622458493624374531439277234468165025256092321413137585135098916818982301169775985344481582345469088025304007175431480667994980244325787 - 40108852345262112044865037643205160713930459058512906289206810794597899567367282953135486429600151329846701004923375000524885034939001970908098450829326697257289014370624201936960446402340539588722380206667862005989136282419916842698075611342018891707095302220945495551026635609807464709910497629183795924159 + 47988977628652312672307672089287067861837488737397865480981718330088366541358577947697996279840362023023565383687422778747188198727891034062431285509011975680259864727814815877027910365490755930782767778433197404078067711183035125847246284548290862864651805930812487529600555877376673857661604835917723188681 - 92154255077124138019523415830891969499017624241819812982944990440136997243977467620056430563838739523083674791658267524001291410563408294362018945474622726396121873654795461940798900774156824503972115115532556750509620327867334214989188740942697519265865104017930585168742921815939706334256628969695038646570 + 84482557244063498657966292725847973801938136271873774161954705528855911404784840031145714596996012983853218430573239353210759252735579148351951705983637131584267561564162782004428944088170585603334371561473377940561809506213900947711542350706955188254652162518224189646523473835004430768164710164280299199823 - 25418194448041914317114034410068878767496038314388396445156663877478048303481991826899893383836551620119022684958924543870682891403861371442760482790855607055574984883717098560155929248869066982177301313809823096792037059694364590316414934627135217391603253124382622590426538032293543696645344169424634977576 + 68284159576651174481831637189470518576490127663505811573009019664870346763106064093802511413374220059326365282796541229583961600805262052229065023194025224831232645209743429471565667548337946880863443284287533342089806311769660098000273891836543011833015506937574305781554503160856463640246424084621898594877 - 6220958945894018765682369436588369604913345072037058572655892162573161880509650071120835187623177569800056848029844849171148331228443496398065482530552032702135953429042034727010205900051194137848477059359056093067783444983202504455832522618765356959926413874014898313741293959850003905233298225966528535772 + 2333490106233048735099477626389151336163751854526700600199494187423833403707363602938284320737895088618232012061397199258585290795181154124392432454052846743509578324900191326371932782626884729741989507692889026531163519892456339606749249039882112971888254197869157341838255565004229401719455637340094435702 - 13768575571670830843975043623393132708013474273521307423815470686668370828185783586296258403796985275060790114612276791648137798002555217219635787038188850410255078140485978505768072252097645423282225318976559280009390278804387670941893522757869953109377238597013683892893176413497278076098892163502362423358 + 85442176188764399426124924813304052111351686673685503691299121504479608694537620867503799578028156316521550877089017032489208515823711311829869473286613860498395730026188840606863983349397442303981271348874080139296932605789926075058322355940787432448790354573377856023054647226079506620366923077067204631176 - 13124826531070454522854555611512478262405502388762977158492770477056349448653649876615801916551935791090786135258772418385986523033479717970348120665352763847022781453112561196504056508837339624992655923437083211214823637876474252760188173674270113359047643154385357278299801226505009347143926852826255100042 + 2229095249676668634442939485897437441623619885871796787307142630959879365526615318171726621862225235286099112243410011920944328301047616600550367086192263990845133408800334002918151752031167778510650695879173091702923994530985952784980091027033485743410447687187746737653635642218875018042989657558852201811 - 37069201038583791856310178248775388058115867077851183656165334281709623653726584674031902911827582112289934150923975011843236558930568285494450537688523553653377637806109046010646925830174957223485844287050146415211263323889253962335835245519221485209616243884733136916431883381940730767668886229062021651089 + 82635025818372980092762651133292489860701996902325050794347004970403255944344451736746489994202091725546258801464918777813351753449124669912529998329566163469564791656633055824454227081280394912552503706183591115174007119461871040946306136931498020810772815892530856757656241284130428367731199573405883951044 - 38069736402459247173549796015441160059914267598346823652077573791185569751347359054033757513884150030267836900729020847811849250802729455126585962895973854819543501698396372940393830662166536910088456349513592277716397565511270561227497079188719150851843414161859803192662983377679222908110931319501913258883 + 53139901496418757612739544708707501651122596587225481721032035516177516058948809863587017371616543841182562312260358065046876680976331306981055291245183560245797717400468053865488907094323691548091410684989676076054110101816122423131602216881754538641703513041644231386976524433484389742349619265559339588272 - 57844591178332064561901137940354242628876767832060085082435293189287536169746601211961805685935505236377470265417171204677182211253077807194434862957836218235659376128339278334848567211699426490495114195733228558252305491938823939507689743096997421512107154507184031258105796602235223202592557139180340744506 + 78532473535424244811447538555775613561422988515074135645602788381243552123770548871884438284311451383074668447285089478007932823598988312731310906854355540738008846935430585004038302395650907295453060145358643791184612413864591941212360645563608142779641198308881935840164964784940538109371153229120315214402 - 42847147489513944805618907070768337524744952754709879020118573223687221879533587382528880650039160609073893146697459507879036184783196385786857457471559375342162035339205195451126984907810364013906051220761529087911371617657855878203096306240142981259713338687111109643261324850831626925533342832970732216889 + 64513719827829876651832985619038405020573998975061776333024893768604697961597596383090512518862395356658330440170759428589627744537061024552493961501399885565466652946225607529648879989371223338608146980901170706528977372268295464234981879912189581620746834413386793730332831537712418245726544958685225669716 - 79067627351248114631657933794530036129462363023608152807868151357250866096895513479876516613631553847878244046062581987114234236135028665552956931443928964088778138554941691142410792899237478516824567594401779462952671479592919258602515567656748213553900073187935644009054386439491651922236752829133377422961 + 49511896951682015244545237471764269187662182261636340755581594659665664732898463886928018356754834488098456017169308998875886403209383079408357990011727614607396393559490366181031061186718905298813677510054136561688461235296680512460593390845603779869660839059345878790253059580782367537080367581268691130764 - 39292026464787052480493333202837840439501335075811664722044918935638445186924450778798433413849347316625402813977539407963780820923619307305327793252191412144824428879788421973688422862086709153960137744508327348304942670916309304971724319716116678474955957889143353234405675130293393218075961661209907560816 + 64308643669763071827333341789232708149046545765562465872787323215484244793770395728074337128197796250258997327406478332480833134977400048981947711616137419162908453044856703881988739079105487127128832497755966254227352009185456770225151746589232156431318377390108677541692714570649664383149196056299579070569 - 72500340109902378531262234171394841845018552627777833327591769287280684782918949978679513726726132555368344524929359594338840398070032353224915550700666900057014230467050186299945864000627125186381320675825913809116246491198056974763736276195783674072178123316481050142879924717733725479001196434062467960668 + 82078766978857918272652054212849330257047397529882719474598817234700849730101740443661082609533675545167836456650179721001065089670900760931382973502489336496315385561487381288473859109167668245593658670594816762660664247420455718823244621511615567356644051710207920778716716668237744486402857116683589851423 - 268606780992020495942300895237784108698679978983832633052861357863769176838615710930830789384653772349275060638832209556286158656983028649722345399219749764304100708432674855336177124236523812989509358674090358837149739842251957654361286598371791507977599685162031831028839321122905960151254989596166925444 + 76518303788917313894017456040271072592831021400483775603562451210395449747784539846142595399637285673696659845383881085319402479971228512028618424945623454669623014929876792113446209630131848334145873985897780591245565692843630339425939520839308264230528686384145592520522306042611705616890621807580190914038 - 65373375734215346537478086839937025847169079036025790918490674907310107192564176025776533250138766127291939841631389124477655982688808189181285410637715431984871573046497384868825725668758722791800476966812705616043201918091608264632213159543718157312249192480346198226157134389413182487227244181240441166322 + 3559639348837620501366808646936549016119362270545112895843294015795252794086297648845190062673373331968446007237295704016248322320104493240179051261269922283015114778895174505675521693683675951985088548311334702969560177638763030946875056726114813032591709133732198006011809921155342628541158769931293894459 - 24743956540865999470790566102291470527199690459106706794280915844838423753120797927963503524882445397664994860594226451504121123538072746189632052356103998223723400409487953002186649471159930796202103897740846418188731255739466998101254612599039661261380553641766939854687112227655792688997149356390735807990 + 83485261823895922611350978570218758935683679442025259134865567602382606198389357632654334804603757273230933827526658819206574311087269233870957319633543890642856144904610424696687242458677962071300657735485137733905998365859493537036151978497246222308398176271799614348306571040384976721391542076970805833479 - 6300504978385376686627098643954614221970781564000953358510758009592550732835266669586669528505637938868759275242826219568264160208287515959001873377158538224935466809182684231052762212495215999893526510051639020709770363294607968803530365446082157706893129536863091003742598901805777983614241355217901638838 + 61320220491534052706629090254863904403884262989826686462352881303679305562718465200659821846646584173469412514156250070820482057668963381199998156324673833847143413962652021445354223804983313812248973876860305593654212090665952290676039219627203208842856113001022476294397158336440755001558281491675880465521 - 43529831464068775461181134931050781281582750932628303594336617687889579702871969510501922307871074020214903399079258265468865934874717620399799610758587813914227787987941312724023447367956963337951747096307480965405159644778072019361973745204877788150171347919320908363216849723697326181143382111015976683062 + 15830481269186246866053992898254005456236073625797659977751671446404753339859098469734161468935890853695247883599651589544694255662359470117181578027138216100873350698762231541585015802925802397485419545092952708957842895887268996874689948465183335028051542115055192435349067755339516364764918598106743790033 - 80666519466592513667106518668619801086277012957685084427821147109302179534394467644124333202963443829567803327490852736644067354315299910460918596791211451215487946668133039446261914845657834398082037141022191345080559740805429349098729152940655636615057547594237945988409408939468084176995767317955549630005 + 43876428472967561537006646312921825948736190208276698671148427615347736959156507504062545149008857583049356509214328425541261238280417656048508801629313127051057140753190634301714096501220876886108699834792853022857159221627585704334516794179187633113712030139895348333376287989672141192056579316976173790173 - 42345934495020746338345969720738244608673658288060887295920723527496783413615788288976099939649399682928390251798403444195539553401647619826161489984703135123935122515734786842096161051861055218884846220019681925567838462925970537163890756339158537259548089329056269527106687093448909982194302023158443998228 + 6547448643525951087804684374619847598345581824966283131778380849239034793058270737130725773380395299231461727972190988984679948116904610507568226969456358241749454103566520367443199694751030393061664580645010954292263591419286367354947343130827539877778220439797818140953167466098785723632559803620629125116 - 25326506854652866860647054039062144728568322365598678190495616897390371644216956023001868219961090451484338731296238416366810425555554245523323203146314236078626733538114212319505107894020087514993748977723631370426054483382046427740321087374635210659444939902434720345051276008553462351338543956028377652001 + 83112109162806725156552558208387333036395705996638969509596169606404933427796562831378184922360810565517244710212555177372686849080337922557516410675235464884342207184640474349452427947037600643796582198331418383671480417505880072254046732101531694827015423499895053468364755128461846913348870332091470362811 - 24377426778530488540753061226395172258092668082252918813543780847557083568663821378117249174719787963322522027133714752226618611944120171800538914084256226260011646987086562665853103991021197290462771130439944039284601458420532267171085553765671953794922797297585263977752008226450893531914175390259553691017 + 75249818526677470582778987459632811171492672885778460900845528594870643819850521586011497039625138637516426372909961787635332860740446197077241000907409112338737923548648466600957124537839686827712381613611806931105830222368228202872322762471594572538705841246544379988967216619501542956107345156880397160707 - 69730658216686608002284122143937735901431928659131777457841075832864988410022866898433875378108924559230845507307718080824347239383940072695379022945049385399089282826583479950675189789705909616484522748199830968290721744082193162778543254987830707382286193288957561983562556730163564427682700785102085560960 + 55917188260809861979387654687568351071833152965478236293214758819198186409071571654711167970390305394342890718356271677737038249110586105429205952106826338093263737453779935509013918695930286505894823759129471168923834911733408378953694525092980655326192818858433119044628313061155637241436164312658334796750 - 22307093185885482694794118694719014739280053635464234649598736080795032606323730183356590786179621402625243663964439508244507602649760898691762671956630169518351857943270741119965531510831320660835672786865600827826503359400267087280853803434005416084991332713066687018356076432098907863384235703221251453054 + 988283297110921187029860640949023699761184880779864578590005962704534698580230173425107842285295717512942369823699594005192002647178019513850065395479120839962113423226624712168748401465659404507297352282777377828101207650021112667012508918840782884197328316204269964632173420191638095039145665624793867017 - 63878361339054898317279422561220497358118243863385809369722234212925948027902383706244788818190584696689684597649219540399449537299360251475241502106031488430771815383374824965863192652573370166579130174905803743700535527568908598391890838972384244850770073804730185454015414864950437094840213368504360500243 + 81111093336424967895055140479561667200311880291278020908419419116626213466428365402094022584239006707349256163131582313059848115636935739704584237530785341786058800419283582301632756752418058423431304720152372752431130537112270890803981965499359039336779650935678445498482722754224126090442119066122001499920 - 94250067832550916889344733466812473179131149377656268769516282228289121104774983649432005047520256214474069262873296930890874383256101192089525904113396687691828327951622642056151552631792858639407059111283557067953103897272277194769973039920736040707204424874729197042851919822641739711381253034553828026472 + 6181124910690399166233216842832008193580041460412251368996967436824055127137117788338659850116764237736891639219399489339333353824279853353535362521272772771891797548950393567009848531507814355851193933877354132920714161489006034764078507479454329291922562087347542479212989901121562634853090675229874406741 - 13536500927146485488942121854450963604898540530514917592657618214540337670271112531721746067723325427878352163679546415783885128163112909779779096498013723308586062206657004520173361874467767086082996786146931557256658350159684206007380686697729465445283865140654134659754599554478712824020573789159008625801 + 16210697566084545895672820464385825153517624706269049773603408738584467823669117754925528528841416064328030339581467059316794967992372322566694604773845071721244727501087199651902016249472409418421471438911665288090055260001609953944478844085655791984390685212264502799106164157144313217166294172527762102880 - 8498409932798183665024405669175792568790259904897849198428066459559883234050043793820327803110013636017304018507595807019837268806942791328826793335917296981627978837949178706884976132800416381373623657621711219711411337541631175966702231892347643231906677137706099296356957950491250059658502883067089672315 + 68922135455462455094730940300106558782032701238592369917164344939168279072198657258878074231477144559328859598446517954781482286912551852307427303399128678283174448022424578538123915510551487631920180380722914157743931463081342158835887710086672246366408269361861435077661963525173861942904647366262528206769 - 16499428440697010147803485636853616407034420061912645750604884207461516711872462949055784499716241855682749933420579308136368218845565471978471177538456152576550528114922163765846777314248059748388109730466491827088983175897998298213364308134810776654726630371033524530703679285109991513398862519919425405753 + 12491632279213207083618731702144711675412495038582295998893585650466943236002435483568372224203035908571603859752867523664277144661178833028791212314506474200356823396417511600362665798852032624731493115966819416515650201125592148536561341409192507086100732887288657258094599794654311875121435404111651770694 - 46758806336274850848507965560881592881952328031661847471450802622000941247762811244368378985287326314924197604876350230377702615489586301726478173099488307668614118750508029872665865971680042571273494629021635464100051869097845846655589945181009131648448749533894655561518209650511644669236459873960761310051 + 72912473581122101840844599583320945868112186362227084061898588673943254987304306152671220001723822661662605744705428308503831048315488287796473246584041047388394484336648151241788878994557570576038084588741385868870042743872876758700355798742183419105490602419267214025664391029301531002631353335980746477069 - 62031409344738661369908116188412402719501195104489442238607336920369768235500692203706120176397071894204913411330180041554880041241407504824122430871689579009302652783028088749979575356342682776218738793419567024022567841404145088684568532820869795344672437626787223015033907742554128216603617952099068143036 + 70009645671122481730371543431722202717263205765912033607112983529190787250122101244633213857510007779861851398499131829536664177636259367340720594216748120332239130156172059452376975949841658463530712654750274138212612865918219030957685228294788444018333215247207126777794271681236526710073549591853840621063 - 1037398863648368743647396526855103687166683863055684130653755697992727845475919368803122950673542755510216067889188403838172933433772641393817114551509925465790797410405481707110310670355211475941093825769069230119547719022847877386606963400229237014124160904885480993198856421102945815092062390580530011571 + 56361305224017126184294419535592906022444355428518193389149753520656513734700977219003314302781724151531639271645383019332586779241420748744780935794109994228761203489480636961557261437864132125565819124582686762146777200051598730864836310465317958897722129298585598770130199182987642886346819431201603403551 - 71857533396754796341687783556342814978018694207596643307046526573898751623657220612500661860480881335023260530020207041247463058481584745449891412590048261836324287366159267722851692658436579936788339250261157905584306555730708726492785869879620441232666819275209334329311075831060738722842186661475498165416 + 83208507965987273761411014318168881457984116648125491070054124543827878426687396996931955528383478892762603717716401714689867710035575660263204406040315626688954121176024561706661476457180552321442736085500272452227293829763518433292446895874714662313779713592895919808810245510071644120548625701694151405527 - 34712738542293901317211900304159333344899618239614713702001181917496497374644675246315358749842855301423670093713590757729672452265278531102261036435838938227282468766528040172360720382304408339991391844314683322357283652635886956263354084630244898798255162567326369972092809435762916480906713555438013520047 + 12923347830309217147652283446872727226178220136152552656863735226310257267697133599755151148100078262062191390397598127725833290089877878405771157941448221799634156483483571039162705595287055120236923831925814117463328318100231914965203636762301457313066208878038555452110472018867952646072053559369791240168 - 17190083267588146349507043999754604654794612083132809947032835165766580456354209221298929675260859258134346405331706514381010381487076045495673193871125438365411659848352414737357541268752816717351235186291070424081228020073039736150146339902231359026562051470542748164094838508798639025772515302572586002436 + 79540719488677900060772674484911603818671541502323652249310115731405000135047271398752212497913456771218341403055853540593391479353878207681181774321919215567999211835846948522118915335727684660336366509695176707111754642185799247524467151415100178670030648039326381468457582709738444585246642718724705313581 - 80539511768194322784650718363908571893529561124027868685078162116679520141675063212839154556614788726425863667327208215268241632288774682001088559321454745140378048082671337610638941805884287615142801611717254008842995770588299015207480944180097298388280098386379829591665824584840513584162955731765475362414 + 18590287428599341718843855077786416844827320183841801748519591313602641366412128359768099450799054822020272629684732353397154015686149872790063349580362124342205628867750779737705603597044169231194452556008618792608020872558940719285940276533799608781461516385479465196483078412417841983654238702240131380840 - 6408518610355417698161397938948591077312591003504017032565171408978182647816714077659951457322738415288536233809366195218998886649437923223074120286017873895749104573542721609736313765170004948941131381833040032316616149405289459480593582418708857608511563288747300468855154924864841229575243620442409287938 + 79929387096841024252205318564024019904108784027922645597452796420669072539545607884070310269088729990393371010585684085725947971274185439063237972997553699636982931790238408003599469229303594097661174203677125160427661172612035638642632243367381436098150000388031183987015748550700037514445046206084277833310 - 28480561070843517391979097765750990445183995081596011906242662598691317114990842113127557730398442262497724305950987909766980591650321420365083952380443915384773644640571454292607950516984407010390226380415133256330691709282065344886544111023546114035431702316026582900154221417519340706609413606434537150100 + 74203680850589535482012395978486845553998036770512740698601220221557683160052500679698309820886793564355507563956828542755970934439751387147165750366597152348326124216783088710576084237003638963924969271837408755273073105450057197761651261228618376853895342076104084306905272317173189882625725037843605253385 - 69530700547799267463248262370838122361228441903516564148417462439051068911764350575556095698610844521459863902730697559162797233753232387832299727803711910593046693898617532234523102349830682983420702794991127808527661158075154731496086873027941340919416855924553747177796069906113859686531606390135092667600 + 75867739920579591356423575471054978544293032530287657645564187556102195598457525428626394282931227289205899177386804326759601875530522966226887544762616040141044317652032001739886402463854426988920101302092981077734034035290783726247943258852195771093879096176554962893319973380416176787711758144895524348351 - 73591106574717740966291750116901348841222117283411007126908965503224770566007026428427002644856337374895239982064705301802110447341304823376818011537368698865100761520941835166807941654399218116125312738589921461740142096734536858931237085543710635790591204042683743913739581943573383125121540638102145451472 + 32931081089144593861762910487282340203854747465491907360579726401782107092531918516941307906068448101431461431862250484888786188919237172509839077692434355970276482056476390279158541678003701100973802927679184027862783955122594991730058751253416001166524460395827035441512166120108716889524692065465786884353 - 35423060069012236191511443176307084530902626058131473022553628148654324149802994145991067070213211946280070352304668667631137259208853907422540359109091283053282519650055052456871847388819824738705761122259388761418491261725069407890926434171573133110650760647291172623691209652306073836039471573447237365599 + 15045826074695505426896771343304912276481838273398896941262161890783917679582345456649095045101510665424581752314330661959716469485723455216631472232797661366038311291397146948564596414006701120705917325212703375429181203163145287528892571873701134905287431278025333326946784013609440781787225725606334432960 - 41355634080303433952323358159339961338101335033649441540538110433255456660884210746504072627141858975515715835928655361959326163258078158567667250611367432742011084825327748484665409164169872181845906041846312537097351930619908204568634162247601366857021737439841263860821326065829131517021589096461477558798 + 33195509878529485245433130815966112567806322006771858827287213405458584753172005412023736460657125950564874324244025037370842591937825808992856150438981382366591645973005811410654669450395328074733557463144827742541228281088545827601715432756830090574373867918530761024414587367348063397368568668472126441301 - 62783351700496028071971430961298480057357868845135546940407225907686118299865192327801578276307673212311951746065710304333438708983466363149918026879590983988664824400935747070413175460355182323109500240886091628332591175490192325993583250525050802627693973383814415770316926028803788769807239131272027002279 + 11199896530256271718314670608335597191230318002841707727435913349674168345021938033266718829423212563557071225093216563831138743918910139349597065778767112647811012954491346575798833575469332546577607372886658242254766355816528466964130263651038779575570329958514778070217516109301650579090017959250277550601 - 48532645031046831619822034867373612007129663540994152949238922711890936512706223416420321215706064670654025007203342728753628737460339798214328255765107223532769753212225960890190148508643672868702106799207392120342604204162439335799938179782885495664203862853667750798317009451065682064722254422102528028011 + 26508746907675045142307767997986532301220997493095073975150121712861380423712924794705491811767976889242265796426133308572170114773571660713820205177843462189774292094841095561554865181996646040655614502292918330585828485271345124938967383908157546395504275266148932422073668903668808206925475405855331906832 - 73974697342759307432421737539588948142653279776515587953240346011511832149851921096775847156456598783807872810345677686232745791002968250834482399151306305674494136568588211081723351585630882506750584570539078892226247381141543759868611797458171334996794545380850332621996103994678837873595887198355438517684 + 2196410164444524749861823072564654489490777278308224729895972436052796812166871121894215258590147170560450067293822530280213119851214287604220385370145481090335367250607582334338885731408485773860856686611311827217401687341691817699769905693669347869936973815267429319106872097121980491432628497747783908819 - 69752571928965435549285328752609526345045203555808306356143749877336428881893527186509196519134840800650109932838063828210854746230299107185850760164793844443290481361722859982603326214719511835969694479246423209392413331390363917218372148665329816035652374668434942196358112174019720162594580072480546143945 + 50588149597656648094280775456450069432051603274128147974921431430550077688062766659011760441915945787962905707511316121236131880650607553049698049721689562217692463324624049653729113134134414501036126365660827672037279742354458798334804671750614025381296727451301799534970466985557383051630300723145349023214 - 93866045786067114157145419968989678140622481834448338246090943764283422061961583866478371582603637165555413531167713407308735004280481151743093179425395343140668371634928692852532096192659352303671027619492255242520605896333587475900687631456461497762937675231894825844259737690934902827660258631043102057658 + 19062854366453690287128238420440193239625093590138273336093781604188319199681429130185114895797352513804826315219436773352299809445767529956513259558606921540197628759384494928197796608088265302874591019442973655544787453343103426403558006757261560883365613506373628198640178991436630686787571800485240145583 - 72220188790806141199478625623098619892425695063767778790658172269330308421902940002962867053231106806236961065584725733574350277236502478954386174928915399469718287516128554340895462254226233651375901221908384369372530881059445395759553930575088976788494473657507526565615096981035287206469064363611387679390 + 20865841877543987740515488295661133742199026901620178911606653351730602964903104760210207143880090193368403507114352358093418673488960236796228712977043566847323313341186526540274716513630474392191777909401613554224183928300282197158984536798690199077597429832589430129265843723943080159583684916314827506698 - 20946704095305540973435470941855952605998339972797875752477603945797993804608922451111666168400138753509003094508816852268168498221420557393625776787301005671516860717809872751268444210572416264186965293469645824768001802270312856539554184285352746599846385653723127327700272062388452242615127906658203992794 + 53044126470564884965077005275737263000030338823565942979422322472716525315557529741729505491021712682037629984928767857872244805123933210573370210237439119083760260535247207918082457826407575658124041215662670365811415267962379614095806569719688540453633810303554139247360343328989490668099399937959167667911 - 77125268902553173138504643409579295226400434849095636488327606195138652774680656171443229281546341803238676960339159890919068698153160948887616040083191139105819703594938577433422632392583516097262767350861225910594316611561758495435674811191647684653146751347377701876348062262814044967910934222052274961914 + 79538694079316358391770629526889009000583985889638093889299593474292963528046928132628590973960750354615775408137183584798287914462431743026500031867207600966468002809353235132910803928168497533847733310072338649144339339020316567223060012087651795545865829313385016685605540336082076808917657402062783704960 - 15086317383556199463243593287762157355613723781687114969201631636443115576516348781012035010465356338961856964395169199265668248456755502012086271428721597362163977726221004846010756198467776810091922380267409235617244003359754434032081644296292288468321535208077961361626283445860179432981931771094218197174 + 46655528054163869005088425135726707866590198647808955375378642239355875512212033192303385547912292398573409281557012360416178761280833152992975844397244749258888934696955300184973243104847502268890553580155773179980433643539473074508395084886264902393093839355488516272847682137485023344008958364880296244960 - 6277705936296912679869275315334933033775659559968596626259933048187087146500708452335092886630152743484184967602611582744263703971860945746845241642755880974246806260283684331487915054854834323365308840895992973499384584488773696842007667920344383160992280399851963362804869622901722804374643468173341754595 + 2816573368119166386724912014064461084342129965673420758448603526282360183607272652449574283028568574248002342098586341248528639864996699922562461325726232885384934622839870735259750211491043529822091682343072636683645312172376709281305088036076752916645847146200519233553260643893455505186691459642524120921 - 10912710732713598926306052551820252808655344337229143413198858836282650813397688543432287504827007687129837317484356847873974390504921912153504447414589279245949665947578119445320395901561272568462636284361169377172916101200611413887887650992740149394148631565473794928471456427149477829103552185234161036785 + 30483400883894715395233628877623131672784892069647382196017330467287585030289486258383150496988282549291502588850750320558885773476294804059788941767709569821998556920120230440696675535625432621673385751655447801624129842898907294665111627555521189214605686275257720265117945670968846186800329200736639875599 - 81011327902217368365291562858927216563858630696702699374279378756269521366723287379018085125724607243247585887402753795353085771509447997848246066480258926629354424352199712607191758464166541154969858003195013753045814390915108939271909830842521805909874881896809141551091085275004920348536458813196793711295 + 66665084859062064714132643175523027639172853886930739320465339652091954473040753093104734843855096392371307439982989033780005576728125002328869346930976972807357256964605421290012375619150353616543094627308390789534662913335115219002294825845424628808508615662668286686668145877369586148551978423039529563911 - 58441242130092566017841669089243352611220978650747192490853033153753169910067335734535378504138037385696700672019410402591972410907494180109098288105385620389416948666273220289852387169268941264952905757518391748782134424615336147381587140490035720510901703857889136518424156953582480460861472104330318296503 + 19206309594494355181268526001998775293123554929720170506811218206922177458970068514084316677047828946895610537887604650381082160125393547068018663975433689497569574945636631266082889080005647386322335990683501100176463735645352132750470930614811473293679941380375727459316987784935824804518563682769893101128 - 94315320208242381329917578325971629893959106514386439394908727833833255315012114783354790524806811442196875870394536171433408090475555540053062418547142048833756662410393485226018311201021009167489378477103935376135952603557664441497547483398969250492760405728553182735200684684132981234139848580689307544445 + 55090360299416099924138864272966349026420885333230606861896493244434514879406574304160809200102675491041828358097253806766165580148501937800173749182665905764211570711079094238813824720935682927252554412896469182725433989117007193611096855080031192572943725623870823201529074286916516615636061256362144708046 - 1366357445755651836624781840598697263888142767861876494140101675416338671256050697264497028889309041155792293494904254122782992036253195149023347523637444742455495705209855519114445660095326126440375346988848925368831946528809854522938097112962857655210599182568251146800693635758917925175936122183590847638 + 30124280873672747110630585885546282008062193482706824439460034403449025439477694460662872773522420510106126967526468747183752624990524265407026870149093516230201159322159643875000172630698513839724312039768684865016369819002774545890391664785325167865015855277609302338533078374831139010382577316668136848386 - 89503594000945212340706440438526344066503675430253353663390658117304945041581822599799368062299800689987403226939628898657672282401344243622006726539450677346987912727677110081683583755585611184578763711987087894822466854055724284001891405116305655797693615618262677246947112365350131533424110626632368520962 + 29239628548135701883753366434239291143644658570789007182535970344118203629650375482706742670182322643604659677646033610418016798435138709741960792546069494354408897107505145015758111503019226893817156170234528032507252754608066847164737242996971650381264266480401780639738296080757777422617477107212882271351 - 46682101065173181456183551267599787544096167942605687106990777313969170668220875149749626412384335869677007251110928680953633150038381618173084544432193257056739864425932127484963925524527891529580331431790458146463962022821182142942276921535682595573954695443739440138307766454333343582520481524524661314933 + 56958310965950427827873737286871612467698405563392079698256910315695943352383241003201206525724202948426893880703928704437286111503658375214093668944141159110096105077171751867545650044212650529409170538637069204825562745285602918550159564001855747873026600297622250017547202233338374356603252696120865358812 - 17601480565872246900079872863398475944849798082755191344239949720051568231817992039043338522362744499534156572651251636843545868178237949030577291773616994581384285679473510400092787607063756030320450888477827605434056254718811065597555012619702999343541305452700340177806564161865449041156086843251752300545 + 4126275733043740014848279007596874957481376510387092597536800939999614318531276612629878265677070798635410732144943931188388132131461517005446713231159984933809181803809333749286856776433954943583225323398534950718675113269313537286735291233543988407797179219036389456353755190710811617016332912968466362111 - 13631490988510225424889007746942499684976088012835429798743913309304539712486622918506531785946525832268358943163525174467299507791177529344780284117603141556593757957444931130375913726920589771739528732846510289588442006431979557925946854723710062957634997988706606997643734493041716443653748431247667998003 + 35597005619394866578462387017832946950228190574273783520488501491873040464401084258152338709856540616343157024561848380792260340915133992032466321760903815699497147484763987250147372522255869472783169673870114684161463630915114921573254272077004041540509013503830703935272738414650543018791762135232679123415 - 61311495155398515119548451603794989562996411711071337383646530377885219157062947856965121225099005329056001179029603507499574949600556446953357094743502322558548460546469802672017294616340090781860381201814146193024724881892712679271112507881673785159920718327138777484452611623654011157916829868990556189712 + 37327874614124997889028159902506780254457012384867640198423998659448758079881371552768593412433762693246885116784118901802450278543789028192220161064736163141035845851155096253691899559894323082860600116589807375757347481405345140074839176881343930694394939003621960864637823542516201605747745375502872144238 - 139572319287690075198221148700823975493618877207369590665087870618655022696926519438286371975269356408951055262941863986127356785800870868930543091432364078202650535642461679691384582204587741004913329943364163412395539597557132690048225947672159650545903116302078459602674018000232836738578930079263672743 + 50040139969910297838874589365532514861375117142663044413011295656278719216555406090848721254901725308611867068372165676485951572873273380893904651443190497756044257731990182752188688300468951905968070496225952570794940197669848443732903908873813755806370555920463884400586832287797413062355290864485289391247 - 73675528657684733961404066457977096612493027369168061931372366895964318578377092255016253976476696755494888263326292576133692239776246392642772363364502840225307944396321802230672100504854118208262331995083390503486213662859164067750456130161824714734786987349392802730013243449359620309627690783684103441197 + 56849676823271724380330103110596507684541528100122424908107021206311044846652056758832362842208352995744757441259406235820207132754188807064927365223736089326191482472370819969415851533942221772178062841421823430848415497853482757165013806242927604361917713114381095645418190678929187973180853368486903794993 - 28617270889835635517517806866703593694406349786870351359305429453847974650555581545287926211358616565343738889124902419574312788118093858474000040100293564987271965582247358996525613763898387565399811896811497546675732344100729362839880661053501298319175594781502220085807828524800743657940484578837703783601 + 59430432399314483426384880865350597613774185413690197384109818091078067653279866127193556501384867320862127812232230664514106909244697612469479280807602734788442919788661165783250337347207195971349475445895917621581321756151087200328401105541808736570627482878486964516517151930144713171201197257518503889531 - 14597049986458379784628629144819361191954473630698843776218125328413792743280642371612126173134054103589630330250696064004424775988417713732584739777264715763425832056307347368003103731924266713383516982863710789413997082566197545013091499940466396988937286192600213106361795235873841565976395304719164782660 + 88742025925925410413384901717087506221465138919064140751882820242001389000104979714004955973762796751248485958907857548112469895472293299845509926027656937522217990073184192840658993770471492341850360645783293526905592829265148274989953945885324922177336838621691770446306761072345030430933696171801733369338 - 8286137006903391366417332983658159001987613674453418824779061643247224343144251784284209856930478203381909507334299514169931907875736691605477328353373607966124621761561403489212308076125859533139234375381816795471095944103748835608999111074858108001665318762643751921519644129912619661787245183929315406744 + 33359974566001708766715130987850937314828566094268926306276759504434864849107561358249722860586892300657996054081416408499590889200839701250900254363791828463030509561111741177232874738671416087827820984614123195940905707610615684118059504670776899662547717183676843403031519518698714029568652669146699646966 - 54942790266454033971220170667387291096463663436366624196454229512773515903043448861648418038271211934042433639559928844120327054504809106109077875963062229416885812554678554697394118681455100717503416120980978581548376312862923496455677962021076020378189774418609765397625783960350219740993753900774707118122 + 36425617082547817892778370359503989479800985987525955118287072111392295699874911456379508781897960409652463283123312613422879642676318580043226025236373949388881375238318871862869398635783421627293045943238052142105328260722149893950846534801551382031930104368164346428635390768876978444576107455057097872589 - 13740455029944911629252053846082042511465538348924719097591364046560687886784635071674508103269456429351799119173442855933188343898113622754264829545725585141454128727630684844679246255720413281630609432707108773935021685297924970370821387455516914110036318358315894111538386771122419907807560621985806652008 + 40346552789921088857391802048579939707968953680296819674569363547451430027781537592155998403684503699342612351032392727042914286661212966548336061296908004144210613264422864889162855586412915103263789994726722461612703609504735625608583634313692090084126250291705559694564514394214763753597223509920206006544 - 8141442923651996509806032970157813969357289468582972759899415325098951143579424651495471870306219234580286608707050261096273918400450203643645429712934371130562686258448616979870649102370139882359854273445318702173836791451695790835019790288236636841254341352144484703213715546566078164372431187827776679220 + 8003101951250803914497256576679650157089079928880336324472724317618175150204186808826896612519675003249793599934196657735173772229333188894560689640028648730389128269884172457758677113829298787677063819232411053597731992389511614913723920772927635011268597002316382013835690321173718055955794951316195622733 - 40603145758338945553166068713623639847797133877510553372355531144712237496018191143318944758161119234480837543907076391345204163488514205980982917790587367257477029447744552706184826549483552825393901235534919409167710296744467786206039911076227707984359644254677334607296480091484780280203745744912976014907 + 13493880870974236748200232225321538420495370466129955556579978442211433329670325173685733731031260157445787351543605232466276940475985192059347085554490903231025679715783996298006800950790401109118155550329677341990386764410650882258643260520652964716038173514303661261209320490295454243887839547362123639961 - 90548927610898945424358433578424924162172588178405735577681817635679690391826584177996283546311389669989348292418823906505658409667225512394456057458935065476904723652099626216877485402988560577870962621366123689355451559982231571457045776940299164513159892955354597547825497864931998008358490498048766541881 + 80634510016866883476544186798707679644589832804796475208420618832333150263534223986765657720353721077019611528743878159838199044459831740849272365059997002457388752622675796254719330548111017805096903143407567086115711733019212893245717107910370428622061254106866365947273322648703859253595686389957881922531 - 80309588728185282313286027674238906214354811553310842645253373899097419600825481392437252674738572996943265594174181838737343142604073095709388887635253705610551755909077165629893160604796864083526695307523796994914428248511770656751838248477035323063442925095811767526566687848698348234550416502630765919276 + 83808148626959075188106002785842810459911960172184797939201131575400599257968647998901324518314632490779729164466739724540673723121385583057002344380924126246781315787019896261272040753225272162493771547129290139382072274493386580409025024503577965030931431669284065509875314974047812169464668683371498938413 - 53153242948027376792395497743792899554191381423433522062090497133687093325517613094285058757266506938326718273394438494858036018132314376235286613529207409274211560694992626287721299942883995812613175170369175154910026372836366752582754269286569638234997867726623284398207322889061923372570853099076857215553 + 24884004831908174614367805438367126372897195311691424001871121944641110678576168764343808146573980166530740231128602421444171067501740881039766977833585223230278924362724483137904012505497223869615450272859610656369901053263541905589590206145555627902006275783145273200111098939547140324458852806699908801805 - 61147204809926210065883392306795787144201138985849908716703636511309981914413780243666466590302967911032368984137611672054411272402062396000775647210806974266455335022338525056892474539324845806760439292177610860848514767572967202716068155819587281527597844421909108336794074092510599672951120413887248208395 + 20245086269870427594019311798727763998779278766700025085386025263074628616779045733392793408159335350730612907267593471719335219228510708523005487354452303653353950103315427004397923922105884579704123185805282216407073245201512652873763668412855205467122853291538190570807628121874548526052473892584828430190 - 56475603349011316852935135883079843337638101665675225139313982230098392210314477570808174714310252832876349823202376456346397232449795543626222901238481575683884818663457576869008023303961851398681775731752694030830703029045961871719934706134672487552245092420558968976179797962032001795174556625940526388735 + 62852636356347852855927582965263741268748273496164580703261885025215634648193794669391388504165746780319570785775830477041067929358314897410986674967296013205087084839376231851747489142680757995504226728053638563452273686542320102005495814312754603046644159664703972199626948715363285509190518337765428367962 - 74321064321741264661667868781505393429727122912761075457532177507550389276391293158530350865755599730751765174306414435223724198482173488443472089574704313931012714008518061082877516404106721282382635937478162356380876868381642472084523349617333196584828165277273936295578638438558570981199882839191672811061 + 60131097483525210086488409739651272413275071767177014853467412998174214454177639510229258734574810000320649792130684407627107494558694052944239281410929034005770198971474169915381910880958776022312960436494611676710608952673674416719456724154449897107194816271819455052137653391814540947859459719399766041819 - 6772056490951017718597033099386797283649390019431730600768014626521450004314725980777543518574891445852456521930807967732039848324384691999374160009288284166630951154375937035217333196989929319228407886808320824714627428639720144874858844867277587949347167524510834386165931370620428782011054268092786760078 + 79667216995247917227399732180415134981847365599951560220867174107062822433599741512860369418283564388499153729835935614241003021796594857355964766978156646079863774245619281646404898739812162872534568986564158131648639267380504541262209299790830785914185452406509799510557245048834301592483102631691204573629 - 22797779627723986743400193163802793114810424268816373907760051999839387224499119607054621509446955019847365916396357880917415089493092485088387817093897863001624575618960055662042523868876603685779388808828680568738010243928380728125947479062401265327671316461435860801230691045026730254094979189354050548865 + 22933507601371518021138699956295519356639971771539180874153781772071437655839317513423375797751069616043379686542438874338733699671395388530253432001197477319394540811591860297331317478044853824408518737868859044865750678160380716091514307196018288208736660378633867705667699851035080561271350744479935503514 - 6255303532810880593721255506368743045146060234968862228849343438049558340010077379152463620103654895019495358609196857823035167566532112124223048359181023109488245387400715273451974691676481942050656746143354055831698212713436451887500480763592778555845288872955416321200645331262749174916422613576144868912 + 35000645756573337514398269892206256331858679218404738000494266862538899164729324348623339578269092141371007109209347466722723618458762123640615208011509000762986720426851284588282351433034653680025011190573115627529381542132542458454241385627913184585449204837533178878548741976847649321973148411422537738707 - 76261415517739115948818589247063606830248751321266208052582795213425694670653585079929016686928888467775558109380004228492290884782512333740935724078313478004554966799218119794270780886769172980018410036457288481935502802734990104803147972491769955521194836897614302686116150256576573048149780095863690819318 + 65891914298111244770705881574206344911161082810453041125244206948591974433095818095995909478155961480553781371031685545876369418497501738665420201050010455785547941959007454058571430617443138084900670212138528058202244387723432846614405476459438381310546556382465743626634417835854033571103828583145743890675 - 91252695437251005803668582782331206009247005675673084758581272114443635663342368584599917743983850238146344681036885704998744594455816094065940098575459890222859478710950066499787587377740220251018379473968509718151587371816050198190798773976644797637044482179665385759436375410411452631984346009708869058403 + 14882283711294537504515955735492846252547127277736283790627017288277252219363119992373259613557354023268426835078501922810922846235599281326457261033547663981883179559777737219043646146484191246309915298240062216827523304581412166563647634978812243234909176631766180067096749252157033033645431435510902717917 - 42427031876935977333178576551249963275764905406904453983008732785835544921416997240268023584067342734414246135249989632389723962220225288527876677250286390804053197637781960915640018021455164238614381858312851935500248662343722522195356752861508883966765402862290291071906486788962918849470729544555779848933 + 15400296224310393199594810273090148050077422423886002193340813056820850690551397827327623098737873483890737849527324209773425105466606630085479295403053859570576689741634507894115582873603426126980048401302492202182959815275687778105128485483505821521405073173378618182617867977306420699953561798212783192283 - 68691558978714843640171070347507010300175376312136258011859628980975461897314144875642293201853741595984138067021813766850919198003475611430864047272725180318654447179807909858228047588117567172304883789616565188946787613856746458010179601883212589636872555748355362548773256393139974031868890394997400427330 + 37504708882951576986839602044097823207802102744835204502681567937064826784716423373994846015409745089380901329934014344394170399554839376851723410759825914866988961849275316721224407521634625693136739055270802017087339773544414155787635438792509485515032093159620932103626125896304682018401525262695128724343 - 92408918702503992974729142602528890352869495653918567213319544782141626210194431137175452803996308774171534708325460854921497007736562620331900607251321765286858339153831518005824488755526728654678745159585350938825980865987347954350151092855036405474335206806699282986799025279520355598396487109001754069191 + 74510365445432725195255455380514907109893179652222117462126598494982124333406601927133271657160670220757989641746226349287993979617188292502133765832169016013503937833108673184532509443071404875643363412037957145484031977378519685111658692813091759600845072635695037629738000078486464411144017703714924856978 - 31552761013143234503605274798348514909395954858727591780741751626353812981517805737735009211802063628607287391353804467726351868828294511937088359539021799561234977556780213343723030879343537413798030675183108810050773030415383974137733840702265405293237819922569535840982001494474213468885498073735966355321 + 12812609674473963634658034381297136027537879621464284038376710607163078620207464736076240877114045476258160336893429853812112592216138025408377531145061151368012691559760009113516635862271836636796091758057535055244312944731567613901369510863612642069967363335423893287167760765578193557686741928597258614863 - 21068373519955248559964412211441098935365143778867000985232968600182585886494833173599334697203638487029288704635591249715579134618152342321150966934438114865606794352492936935267062115847880875770046448524098189951544497223991200227306339175522881760486928620667915764225950126101223676498359055777475620595 + 64548543177143794574954669984479516835673670684319441292462289777338337613178050093780325388008370105029310216298232552543281526431758913812319700790109798765485370856766675220196882345548637213303983629078441546663183319684857910333002040882778248982416915649839803227235407974323958186540461453513432909019 - 26863923371374482940791431170124012066007128572360474957642603084589142791557782201326544741310555082406157115587403998705995188087366513553597343851612333079764765832239954093870457182406248816533092646986210689129249051511239978029511176094510328307701117619903119941176063448172090112310420160548434202478 + 62065153905914861026138029954893233173718545322683103038687646397385741653343056650285895191837064134826849872296337036367732098062519402496056460144910131012751249899897069454038451236728856512312452933131498981026575225991759132677185189898036063193892545868056781387685943904330870888809680402025900748998 - 35139201356027905505910438006887875198593016953058386326790550897146579643335517835330494262764139714170313783921100356252733247655122583269796673064323915862290184146663734279101684198246652828645395777580602757673140626642656795447349628782475139724687075642750963662918873312145830963046059824990830193698 + 9219575850658422030428136237415142687481179808110764046768150493195800977194136023497264599016077233419176807981005921283940311290346379812572016899149040480634714395982835837833219951100424045422689525360426096313763430858142644449365659066623951064177887872080308754752563545075106175742890070989790360922 - 16910207859280815144050741567795477159876276068820175617916162760722464707778686022948216238066563585522198312369794763514322011267274184151392911907733675215944744743420458035722753074989697382192799667139751237001159135459597775765634562336279389760836312218096628683304501947451990617682068840638469839668 + 85988775802815891241009968457111162097787448851260631432784126971554962052200359117761142670088683994202465965503224547098554333147032432401679625909097539581893190910144671898300122374873611113295941333068810170556199566629359713406143369249588118859694310076147682741751562644872662853119672915958791259587 - 77126980519068303420507890880796175950950394723160284091163514971998602956716949287716703928993813880068375441928010580111425406266914729888361435989323036482646874809512424851657992332399082113703821616048766828704289000437741057245190900559357556363148259433302050876403391374556119761479330455096343004953 + 85413066710881748140423247492550256422638384576955994555847788609332949925119047018016136261787325920105626103776501037248349263655628250267393401365560117664502784651879815991237553053395575714571213245738287720381355225977845014584520251343516977354625533417225100100872006688858249251845495599410192131548 - 51964341811268989079298551812602420599497444568792520630377964292081351775821570829485815014978960404978218251842731555582567673381592702568868922309030710257795670350579501445202020069147062547229157344127184466123949586179827253080979317575521955459694095194670985752339563367983419271088951936543692858794 + 49572404134891278098083249333608057233659092352885343755393904827093353361378562265125372462997286388568031018641955252707251311105018826679098185085966155109848058884870666123127860630446271544891907630191223163904933336285712194791262478794922005037614629120071013332891697116281939783566077896329287576161 - 66899783641545701537348748934245528676634420643732557959566515598685602629081140423290931178706771355074423934339352448028755408606849036590861215763403443583651419017870768632796972080867231185995580944424690534918282823770228255230048913131964210115218340716779750347226095358056243131054584914925786191694 + 10660783577557128469340225935609087843860886924282657286481440814034248408720807349624629854578745559982830247443619515854958257358871005288512564536101795555329274900736228186327933857673835726142923238826405614409256217050932217347833633821758990544565428777593161239750770341358564214629028498313731520328 - 43396367688307396644095771661346950776133214657734456199803898729649141267162926145792718427033598943545726101281794725960853767365973046307258232872835288121128045818458190091755460954109647578379977159912644700601332038404355905636886440669050774311741104166577789127376114052614877778885473864616469571581 + 29747581791420520002998677064044464843628989242716786790187113307113640750267382912893677117323378658100578993587149450230593365082491483095558823784613841491901596617677961342091121070368565730932414083095415317225111112392263848293811497216883491192040616980612272704812320531753467727227515618860777188158 - 34468718364962979210657106067743005249305242605869224219678696443769257243607314926713142768987608802787125684021250773153148084974704532797335834328352254691250386516445762592983036052817106834079081153449212820335081833752401686196263685125359155905398217425090556960076230832964826438925175276251368678772 + 84543334533496862705743460344619899573032906586846272242737295081478628647321285101823066878807279341316101957606232303318972457292824323045855191683127590162903677745177686977190669846104994535333610577934242934745418567844222430149147669169845639157900359314717162308380387171610890448087863203343340024791 - 2706617968196876816903469734035539518044357534601027752769966230312049811661913788240885642530861454554136027469131111090076173663933058964592883958969346027214961556421564153976230993526281115335731817672585299796625628691448525848452977100786545823466712948763986882719710708277110703799645470622004436221 + 47911667666154901710223287271874829734766927304030807544430049047857265618684947169634058636917113525214238528248583258734577607323899259066367551050918276397113044115837733918946613864772788911363291297855076164510132107974148330591190184397857636870451543134197584904979997582761852248919082299791919945898 - 8319970813792189637882883805365796784246393591985355633120513206833521270961158381518816099920769548189213751358738230764984947762900832261290306231905746186706639234549299446726697985421440925695752944546678674601541103265334506235354622079095943328533230728401441224642008037177667696691134685442723731391 + 37885794907753500251491029766676815264977204244430871930995793210575998064528462692155665937297138144894352421179205640913825006318348803768152402692900142762817150658418135121676691393795785626227431731712442969997835252967164856723918359243168998260008062269811654407718203365294778448504231209135970026694 - 68958131084245424923095654766255717351019082242957400653393193169834902780076155134615879300018758961628591028271459735792613430730355886678875990908099338522052523378623837310285727680253521929477652995160671262970164187077253782688464150409523487035088280877111665307038586168815884304541891157572286086304 + 20625436561810304775211555960169781008788082853705784358580953838676092645594729140088415528550028148059618545307763094121744452473937704509001864598441719749927824012890075778780245378087990123481865534069100733148142429394840049035924914331259052371281506974785634624695132041990582989364108140780850836730 - 29421956307589128125679981622833050029884333762737607965819381305953795746505262085398414437496967794264635971691498818087195527068163977140773882426422553444480305303142731666985068795709136510985355045442469343217559024156739646718730307278594433400700312958195320417540789130304310220478078321943689804023 + 74386516571293045757706043066690615809620462802852439792481698953429207430781390636065766148574114562635501660428215936201879487979117161993726473065528125476003148937401908087071309228379525195875430046333137867840014524766669461607551301719816378420766934885302452607982033979688506393105145094933734004960 - 9633143018036631208425217604217349710676455751266198110239138297318445791620294154652702799824963274055768231361898798247827305687914741105174750247553489239248081293949709787561787615025231436512460915253180294962192003059293647902110050855099455890072022798422684618469622623107432873383018474078492972287 + 35306968320505406083407772380456277368522078453827133139825086336472507841457294964400209448949487607845369488786644481533787230289263441635958565705127354152641502552265282073690051058275653138163439623042193323700884583130297859238534762075874806903301174626998678987699051499865242261510465051989526920030 - 24662378243588875106170195151176286356586277089365020471991273459156794340017916029615586776810905352800129336317791481260989018036794730631078962146735581735888760293437043598863907694587888288230966735907811330911350120504835781902200186482490587228692680271596254329343049670821032778524698872002935151570 + 1884999225482897572237564421130090289656233086240893201993364028100105672240179142581725503307555920273204513681580320436946945751671651153443819518094099067518387482399358924827812786039947983101232538341148211896647792476323220918603624231822767297300579162765181203123386502356173164264326028276942129603 - 123191571096687328302437733387433515209152290308384996043061964298607595191869322500889849148097832256376091278813074360408168408139155586240891340197053623614432481924332775729539581907012471884735586782704500932994620476591829609317576250963757461555535660416912113555745982315862060436390739553477943375 + 78341386955961223250489679319708175050073089088472655683964234164857797117700480618569605379128227184391851252166677035650710437813032029201607906710287758023980336531197259152808056602011942420018825680506209317536821332901168483575622044081892289419520063225709446831585617721962139885225377159486369701792 - 75468899443779638731628890258120258531586230147228943861037252059470366971009106771074137599511385950892393117881605743417334385862873443281521976291653111575217287992987970207878241737612776831111624948956763649171301013339759409353271653535432911577801300400121039361062821804318654115291495191397109289091 + 49689988164287493563197918786973384523784357387876793865886267890900480653195765463642826187817725079976893972627393032609959511073131803423705507653502419518621367254383046363985398664857620936621214847142567648392670596320818470328732956892601948859024374212959744298850833190034238784650535193162984429643 - 37546463630938841531902717946466527922000165685082890037393584843351205346652758845079137133494309002305572190356433553088442553961527940659942323706431555610040939955922606415280247446998314681537679305113891773374281887697853787943365476094203073597172843778396648968370974854022700186152964974312530898080 + 44936013497806454554554173748538909592385779310477307948659627637286806469193394431411743926185524147230298218839717917962543469217234840968082203734471819464408355253226998763302929439881712337982167171440375435257827933204080021873483913263269586673638843984874539946598893835920134750131688747112169917827 - 22563627428962192165595424026540695323005443196051377526619846999674088011870689205911912453021620981757136802245478286265466589637775722334015743375071458537003215987309859016860531095053891990433881408978949199958698209827390831647411712380436261732128843353558522413985345424376602092607202553311185831746 + 66647907310506457754915785198675852143169880251112491900104078128247339233280928929531462812071725655515443608261051164578342424322706859749959495930508457760655779416549547548572870208904699380491448439991700834609905800265069555797804019280828376481624348057728634136429397006245254047209572462406843388600 - 45048586219430677179073429643421097448171323857298142511278912161373831850780343417082249308174402154016659074959753639995990617984301849224682424939782391181900533033899938028649556575899408942845019248865967595236317277443804488109123130057732719037497130951472323947857615728671005071184337350900420014477 + 22637104630695346642240207755881066027397961776778824883098565795957086794664337321232282943444358762557336443012619868446113469593999662659597429934761255730621039995210561941904080716596444484958024630293696882043404866295183072553637801978159274372891807937714682480187870992505855967085500413102968827449 - 8482510597810083375603793526276326659011286686568832712490608559073817992410166566744561059194862262561671928407044880106498138424675336014935560743655734043387695851248847432473141012033453053944077132319821161204559575572428349300981624114048906140503383901667996454762108077525676814819389489134957866014 + 51115491474878148039525016041306044497105843578193410600804468463259288533768911510035542080652660853337113297433380381533094917508170578592880326755925833247418440971871767279384905250300533354510405512895473912616515315411210886188023088953672589298920257229607397465211378659000790686053125717838175343223 - 92874965654627527625683559470855845638686783200234892869009634303894327080707029037041548242762667536594548411850992408240075710273279047102106658824721510174854881420532478901364083386340156399804366944929974140689493500754551541151364883042673260166340507903413471866739868655640362563907124797710846781253 + 74028879332482431892620465104135440173289444449472544403415315904192733557383915320914102910403380941780066403558842427834296864231256124672336841612905962919373282067221060023619313892578485691801951624989124487671452744208315262958802597017545926205447744709624329972633360027271879356039256722963178224967 - 34245510096563907773434404002990018934781580041567472668067843009539093700886381485911663480264587530868534600648492718291059288809244382146447229352942900395456436757419067427646964770218285441264067108877433984110261803466817108310077299707905482912669782270362249155183469865574266986137489998084759617548 + 7301012919357553953128710340236097067437787581050284801785210619458043890905149609801451219287138433439791559148718429741070155747574680643601513842329613639201105449656122073147941901000444802495845228345110034134108455237441222989557146032577568630943936566858002341344742264545256747440742097112301878673 - 40978370805524189823234559610092536126557858132164084633731732270132204888780227294389129022177644016061958439940477535315031874146320902780176545238046660614695022988945742831127552548593029928894108648555021660759890659012371073711742616171023196424466823006081292624690752759077297736693636457606804685851 + 21686771435549423825024333216057303339018544385902349797388961298140170666874417075686056012960507266141996233179937478171212834489460690554720538986569594455315530896444883684405488324317657204070017206509288878684600248885972839195746088691664718392846770577641341851643900456520832014993344222548991318129 - 64813875500260853124858379377038212338472012147709788042362193203005022479061912106602525946840359660357597407743104365224535043335976000865539732930923720333855805583015662208249266471712043666675063809371719711903638084881027525662653931750996696968648780839001958074515843659929353246258108889965797911523 + 13411478357241592010543522557079912226473249427698513740020288226267494994821012534824875579681480960976181949205672801095276279273987797039865063918102159113840492909587263471491674499573254522940485267065552610556427321701249048890058189915627661834545268499368847316853128710077809628295319354838437820119 - 6602008530285954907065050918481291162569954616754309266051329394840896820584389770070447422843237953603568605321782660265008745228791432930062688788217709743828362709323462976023052195994933191086419999965254248001197957966697932044715221485990782912442681453253131424685082857099897514056642209062736211829 + 68240463760736799323744963824153838439109869649075416624533162534537743930126594289484668558713856949393307148605577107246602253374294274677802101341196646740825740946589101765594849186216872066813019612842792739981767295673934511149245634177443618701813213538161292993852422592246396640318526465261885365734 - 37588338592012433793645390959514206563523884699301763153776656279036822886681296510570967515296540228306712031282823646706789241928473358348764259657178858834796358428874943022565008860010869270484779788472162159070370938540443999331244183808153111036678418771740350363133345097594821499426256492987430104049 + 76979175407254641038523583626611433693656306574667678822555399959700890731018606516625820641625154653063263213539078828381280005105730995282006982655877716034664784357572035141430303567984803369774310737730410274139627193094689622808134799416315999907078766515844665763972482315469295322212001139057891374837 - 23875092705711405607679623258094002282247882848884679171908017331396184334881541226039008157699392725910376338514884702555163275694933920849228536860502303735224029816756016454495733006649137181690478052186118737544014839016396910609992000654606225875559196311529325549105822869343106820658437327019007910511 + 89054729182347177034720589914956865112666516823858869436270390356175471261018065940356665033848221116799151760885038810985198197628239369180188865981154282525056342380357817824190131141104152074395648616812287023582557021444704584117996750359449749436883526344657330875479013506779530008994247482876883367297 - 78822801699170239888529712108527628851571334891061532233822803306729929416564579895651198242059123674592562421853747895966020329733376535340633745300204447652337119565744848944992250053146957032469695862990271301102493364745481665311510531906379493587959009050364667892241891090145892745379983075952781669106 + 4610129936428641947631845179170067495609690399485398248886012492481926854497313088424843217406952311973027069787860025561147605977250046912153042804766967930064628427690044243348898008190915687980850758078464319978404577867208938577728139893576153223533249965989600492985976436457209944206208046236557822907 - 45108221616316340093113650138383340443794331108894896493277130137622984905437159686445672704468444531785444147267810562965518507434602709831125065588986018843742050137736963023961857855788766666359453809139611512676704972897647128590863410572991306762916253002264354887968539835020039006773643868816604284437 + 89935854869193167667330135803473664352900183676049145750004318342254423267907604251750902273649121319840840945609678111750790578867925701254756877895480265388735746616375699162466461785607576456282766319196108005460402451651489391527399367072614734437326614785102338187191846120636735084291902371521187256360 - 40890961788101846588661049010633971361338934240093638047895833351775456840969628327083296893016061476557379573431258827604674192577950661123352883081152385669154695577876117968846324553742046115903647064178366557665583241513435669995165410740695491461448049454589596902941566978761432444173579955693394397931 + 35298099993376148480778401211027592019055599612002265812125482448455418705800318320170936219208669622593214461195197499659156388484483733158638137030469022368932683873355931750051420891371779460478934826870659730342015771940033945074932908859148546352875626644901943269006882161726507438544011603952412514432 - 84907889767304013924018171014775168067295512308466969585330816201688761176757940216770810860899537346929793457410994844869286146259814476975622817594489977430035633672299695264757861184146723397453355618082546748401116530210516059505923926297734479785243266914380092847029590823224920632391084520941339741946 + 4986847112453301751774842349887899395367672929321167526852686617755601910236150143011118586181685648873817046340393069846206104290788639157231101124502824563476785661104987522966129007582254094325126672614936254520544681948373491261023946435768449255457839061019677100609162840265489333962496622108753331978 - 70922074010810330483626698984320197278798989360753724078124984861642131528838419308001242424870266418489226288405512663924910861139212744547919419981467648505528390290224409643703477639465433156605164199614359573502017731039565248727787842815424515435560243417509488133325216911802238467040819482336461028109 + 2237734152976536820677702940850660069553159924318262786205327227369488348350760393931145414568154836147667171712659874577027709603838288320883915830063601141760697848336940703912715007623264884424701028194404399314281655325214066733379208573974877605305284795636168928270089917428826585385176621020982593287 - 43853692518303299117570838252270591355961362477874538310506582340134291153039974760386430324526789991527609845317914997818390052680806785142109424805324891090383145217253283639705603275632323935695595115460529858013060843387419829966691636121137269642697729681861854076081499609296778475211400298674606058115 + 79838239617831018111495657227594119594853734534757984435663548568414212005657453016780000722628746849477088484366100405095453082972986948316671347816662435248228361529846713784771047508078786805981471582898144511850334906395036727091038362998528980806105144604513020313556983602432426421667629592084373226000 - 80481737107092392601986009159758391354874116621950672503739982241659402920273781350059807187242852793148058114140525100805276506182142135285855044539263292862571336865667362002702143795286765187045551861075867695101173742332264165262654926617276017239728371457168568956607460326813322432122427231919064882510 + 24546720826339857067413464015531783732875562260045222956517686807595715759611980748671118904373610828717007769635582314747250854116640201591307809556644714226274874922024139130932032973305114872197889537926738501617035993674152020012882304912749795913263144916415878924438141273581191414151297189623969320013 - 15713358107547866334219384086943006902673194121308887342198381819766584585460360441154566643262514615605989308328752528035962548163722376564778557312315225532595678200423566712251680070204265292345724697377968536770280545009428590412607504614926230260870780987662150679821725290551515069387403318756373607684 + 56602043594837282884832954022384610906492439436206122443547648614537736094354130601374482431269848940987758986314224020588702288123304744079216765496049622402015800388942159801815862745436210656750241669282774684760572475376548660242361048892631062079613772495784665915352272189883634454791774230822722532753 - 22926198274632567000610580166932156742122123996892549208694531739738603816948821524005324100584291350190035334830417138755320365983053312757479149061520076162057615766520458069958751564607037060528092498800509160916888203504243081973981179584654050653480167885800186888927862800361888880180825903195429254621 + 47157693438563441726247012745736152323834792614385322581520516158595261097377263403386194458812553097550287951117239943246365926095811763702175659550112682207495098073878086184381188700324462592286000871092947840277871856244051759883858973475180408574138789028628072558439139915319968879864192874466104053049 - 80153124406588881694522155026789225527082628657350435318251246476042276679809483368844134216302279216199320761582563549740126847192986419379171515404208303686947906530258617048282433126270900422427761381299652314921636409074095630026845278989298534893535435219845077739742982452067776515260783218858136568059 + 6636252339002090091184684290976412942068336817324069212135168377459354963850876146816689674661820682654064428987485559323722552559737889780741689682310657561737351573820983327180854905004593966078710391480552845307360607432128568033027776028562229354896021836397160801589413660724313644001680925604929808412 - 89898722240757048087739994434212189855000788322502641204606541214747045864415587667338420712773726569522473573515212385731173571005778586760374794975689505737434591591832291621107283350195100628229280529383058117345893440748496075173185837057978556312033987838071254046162347808070513031169254721304592472340 + 35416341331711891880242858128972806282878404749188012033817073951989267037491803562474735702501409413123833607025918198700231663889154424931732819431229648859881223590417696029509755768576735704400982296284801014354029661756788634097784372246219127568408001473882439245630258739460860322248488790777183729012 - 79668706198632521419183214510237328094511735898813629739252119989737933905611791812667919786128621890326606783413180136027061540212823671572357343664055741624110432021497990183002329195010073964113444674417686826849886739773177267841431327251963108153982847465719273176037415383228139697159198414601906429272 + 37167834380053790123923188374698697198479158194250901001409914132001508627969342649210222495438358177677480983964050283018268039295088806921595857459330321149621646571441318990171583106342990782018749742614568882984845263398107836907521793913957688737881860203130370891407169320777446257893105057105241203323 - 72513300080738593572102530356371346940180314526630529212571091160114875015161853360658929897015248816459029240024780034818066531488298344566756210929253227754493883638956371920888278168052474314726113312110669215882515712088432088669878794940839395869561270078666210662101675300285027028714385511661108981715 + 82057300548144781616070056574518942090725335879008853971677828205338947562172280938130490249859890712474510830974540044317649325117910164106914439446093901253602115668906684924381347968434330016518892855156798008752044142990893222016506648767953414683086355403333377944974249301128735348621032663483447575179 - 10940928037764381164448101232691898340647155166909305118329530931140608891606863489743984453149263234060266418777397881088992917020364348045480688914170017086335508537243177586898216779264324016094544904901019679128979676420962707223462401917146408671715368554527611508144724090811510848850811303941646799472 + 65751079555713794318571976841570445609241424121785388763923734187000278814513325207072307196560373420839985924092200855765307838440411432432985429898072017785852662664077101024304833431850114841099921466531385011170060138268697734563375982395602778980213224801147135394633741559074589879368626151594793756521 - 42243325540285565276666729193604325948845983921893963739016788837218949518075791225553480077134874188922268060216014797245082442804843762207654597503474039672275131923234272236169843629503703723376980639630906268617129107747464558533683224267643469272553980944734702480210416594188324525781883122375165402180 + 70945202997225035299918628106912871881814438410062917413057293182566858749555593876648800063051312295847991127426106638580648851617616489188345319453267139851072617840918878759332818624427863841776421267191974003553122988238148285110598274485588690371566148481074146818030132979691862472924379220813721397866 - 27347426897496787510339953048974219869195383124009394136754210738461648755109344244053256552758104929958336434913332632404115193505914609637111765370629755485978504466393582530633722549827013314517751280278991515091042478641601405935707520150239882023151684076733797035205185437443861819100390970167487678752 + 33507082034533254737985537181415678280091077185929938077007919912111086750411500871558333849349074749512079674834377456534054423186485378282200443398790410203476202124468334572219344098859694601243387539875984454260743938291853140345894951203976941748343373142443465530907238750261811524778439800036939853022 - 55540728648160336314340873322487421670122955808324179282460802158807951122276435100400151284282175123720602606578740140004721021463568522869957994157653597730045540483190341368795249174607619098795064263477378481810519326816317983212808316523427422189525213364823377207238018644282329546145398909862676557342 + 3974027388794723404927195953013801007419786505438462514403485233271863742832101976720829819907495616979259444260822967708915236075523572677933227777872019224071566499695028453272505525383825867691816080321714899195606991073387219935044692905477481256650814274406528220774625996252183117642924488613232253935 - 54694052833061177982401595360526956001231549978223405696013628417477744660371616064989813862668763124311761836910032879356015724374330843517258646380376315576766486093875951998036696197970888392744013406002426546955368607577535753168264345059291174126355587670028087840459767083901633205949446165411224007106 + 41365418348502711479286553412915652168802727113663049937535526900731274876784053912351256150991920901282542327045083043822407323795412924439145089003021889342031898479073928915760045284136880684343577387976965754926892282361007253120383649857642125357927734776881590459415518000350873436783645350660917633203 - 62553797710794643978170056251173887897470393770824646587606484622746392261293916589464041788864548194481190342760912005922455017159466421037685750128604481587540852408006045917127268853646746008273542873795706330044261175253637360247865925417438740644805242749942020749019168819690804649056700597506930462990 + 43301913562203945761441398743180143306285036018080286465383295902144305093742029374056052043755396629301953353752678533621072649313771208462198675458015359616634654288505363812970491194519161925118309900636775996017197515039186504444426935458865813202526943453719339635074308015797013753750100113260641074686 - 25000680487372559757985069395751144996742236213077923396100896535821314945387296050231900685059493500909045763390056224544326547591309292031400564078210128362792354634840776691482732549958124539545821670655969676880093630682919983921792297608587198078331108240030288340697466898318710148096099266009981262477 + 41613369858933000631169523756372138926368195215556749143399224080465355535367711884089634824768097887836370719130851398780480111884395360461112253660713508043172920031087272438651955160556949187166091913376304469154560022054066755090254693268648737705924964290959343140392672512609463888269125393007989800373 - 16196827066645111356261328806577165494246848381916232731862235199834247595219154122427271725916133184173036403591004151982678699558375470535924893326019226916232495314155643458271195827050415548735282561461539839057348412631890316489119582908162784710525845259136253200429471177455578021080199301319149563023 + 57505008631954636482468540150336448221991611946594279371836319935372941709790302873526889901388060912033506328036040889389737599560075135920150884461919080969244210203910830955029183852979034531599613848710219124632408772428641672594736760827484674973310380050160122369166658420212899958099503326824997765787 - 12109220625305474879460127282721183631220376088064375334470436544498465738734107138264287452673803754857116911187434610699765223064898802706814930626944423683501923255397692416010142635936333047622119769938619689409313968247797661448050441093900160664546214289318420628272625846871364883025218123715881228525 + 87967125707398662843618366253788643358160493796491872345793093161839338586777651917031666354910869785291781287539404707887823827963002061503598177042856533291289486124059376317618113101628333876627847726649602460531141770556556555691240759983084276039644790843644254888705408692815194353606240812162072792314 - 52856864095263082816677687507245399123160649699547077409827747172836325677991804262575272481421251758471505581934558505400950068934738779092941826820791087615686537640376404831837179470462016901028097854761586195301424101043939730580154712021856846937256430151211914546993593132479457160251145675164622844434 + 12934258731983518342079077764151382286342619824469775779497601471670693131822703718700827386834654563147415910821735284103830446506697785077483723354754791852639483071179903368519244512106043690634211107125974713801053181986379474782432586300867257762901911273665146944030367883221698397348796607546765643877 - 58400484111211746350213309061390073587387699424558743208728844151927467619711214438649500942906125526361278865864123935758731807817772900106145925677637840821303069704749591530326693931534816870929752551862416014980799374448723737116305712572265956114291710668509663138986902791640488512797788268863431636056 + 54749147993335697690948101653357267938816534888718558578906795944045228708732514581463347572261271717387459481015411976075475075036116103924581250735455005704173071220030443694901743173386594894527659376826645590384282709568750529407111920949664138994939696678382638607040920212670405567757021955635434710925 - 83147970818289622974576156129608842964872280673835868446270287403857176167044028393110569625060114816697870184552044639397187070566905130837434423754238563716770850523792503317658398801194333562279033658429514456431739714318185571571557847472536139588958846828108286916971234448870805058369452935546420120386 + 85233226430309512170537512806875106795811866775337772063338348390681583228592545759571762595692143344858092267415680647625424769101508968574649470267239271113358412108309253719843445448718198879702355885659562533709753136379965876138029673662435541664329280823499363043881498304164148223128456160492535609670 - 22817884487555480141937274912994024942420955503630803769074966385266925114378260648416143175502381730474619475610837469870528707846692777879120001470098396133490204307159103078468808271899600824009287351143413982335765028101570035324235173112899775213896824334058450172893582075665831968111688798124668997122 + 29836320932457812243243638894677484702913809836325326521813612007039535593813704318120368569748461640386697202018640332120245363377253499615315991505207129152740252447091664822816342365905151489212190952345492768297019024068088929376493315558766753079939898792177386736786994163838862253965658917086668658927 - 33446050044747370075798193002456289687875134871830584490115764909939131261764993684098634326784491450198896692109051093217801299494094721332546720762031368213278361982797369517042792021858497839307630079129471445395712502700287013001422961171878702821570578903271598432409064807159119235304153652494556103482 + 38621146681806476741183561488727505975427569206429459916917328412819508506098846561102893785525756649724778903476614723431934506933789023917068421153250244685319986586181385257936884448425857063257299455979531608249523111928610221708454719466410231083990376708694191348765923555114639533304353750684103429149 - 17399871470507777563312504838117153938524639629198697216828311364624229919975804487241820940421064086104028226779471434608257517404515282490701894695452625338755004461046325637812917212806095883879665702489541554818933100662578309176086136971320700607213826212498338830565221960551746239664063397698811876746 + 38943438359674729466096686174127785207566766291432117267309355458117183171356736867077802922382491372795214347417425634553485409809207000744991244832355484522281595386568880774318702199739879771412845515092375635482842623635798563673441576677901006255908975143387876834733572302697451243822968788802280685244 - 75994442165105073364906236500655513111225831682304109591641277012383914565502524853724923690161884372002301025739880694281789428298521357874345710219785216904455965114938248780273356356713464189756975425397185396915933780373890613653412189495873251810378329662943121211869964445025817160531036387680796081045 + 28097164592935296970423493412518472390536945055481475073772037083436927772296713740520016386928632199727260101237372111792093520266815643960746573680506674373590262099367814105048557020734672735530176074863078991892591815778611781903551129045395085555476978943229565774851484923567889169346492062356596692984 - 70832548747131395852163931009989373681111031161647940992636673464355229172997126966909634034877621407037576217293510986941331015573391949118685642133054823005360004362688147664206808309549106519479293445102937239623436800380109905579071213682850171915696137027990486417828054936714983106787223342633141287982 + 74738610638234508063915387595110098512910204966692229442045807701573328053836988482439234931838796607729044865179664464754182781886711832452649041282668682661096390281264102771529910393628504870128077315956229875602183319193144068276527472090192720546744970136240627378463535772851285656687084001574735539737 - 59831959943105630085367428812248346753467605442316692157676045956774990274651533982791425671858577391487857660790794703022907255844401450446113468244727143174179302848308471628294371085501678859274472657325898821102617785419541744905428642369011974421932461303447741703442292631677232770012629381587861458027 + 26060104778048809166026151081233882431378408294812290202737377067982751932794377624496912754472054880297775934553045844385286341315945443625426702142791781594577542031901908236489765858244185413769913397917867313391748890151226709794833953659510742510535083993930138196701665330302748804947856351561697550715 - 83997658556826434569207862292869522104591204008098700499396408045857711951622448106462727494334685535601950773161964519472851366044971568605483704978997381799793054438849292975775434001461343740523215885803235114765631902665380385618763275862007926771887738936779748350588852466940004862247978939660856565275 + 1530634056672723630819340179461405690068870013211005489872264583282508521676633761011739098009815624849712995734387000654879077649511161739296255662634778383429966521859014309403725137158877777380383772686922307682104234359876033583267379595410805117911512752969057110204876276877186108969040603361410551490 - 33813811292927582166361023457019740209495864706577234402456453783804159554550301722783417170139273138094384318828281741980630340740808037394878771480626644246188568716248706478896060278106177395397560793963208598803177164007500209426353498421390264994961914734692721835028333285354096282196939436391430359895 + 67954828845652354762187817980342552155381111542609123827508260889976020801439647599717695248259119461997619358161673011392695713764001027213689948492095509707173481073985569130893345530263298020291693575178760937876236898372020163465542837096147848186132425626985751161432368847277676773653814247033209901710 - 16085302182363717143677056693582950208590592683824138244204793215091260338548567407732672825358314828351891136323810541454718647856617201153666991976070882956506708763619594440184711410739764952704426991101492789856975244300867031073761598811663321047662637495133739892957778821008829149265572344064160645237 + 75350151269443513886589437286677626006193065368828306526230010374220074160101954755425391731875642783094295852668346986993504366922139087964199130735799452472592397229889561822437358062067240424145249366109102525643673188537728934036582928907399484869418316023787456758121703954937745229438054016316243348527 - 60545065121645771749500231628631454054343157523465728634063855463109174453553225671529888801658651959923429339638098884658799612277959821087424843961964937705365985365555260009237950854625146727837725764206332993450838879202273184677291391147920879712222968287755952482955090717906448759329429914236160297934 + 42621109383335925083585314206929399771774329749183077666320435811545608172607317903510050090410177945423999112499443347356733897279681288849507093987663675718860957588323815937365861879440611600730897882120981753323394278548891196676088023120042818922652569903933607893372507226170280454813781694937418923167 - 43157722024943799522985579567732106493333274234485726087958110025747173115580757162810740446135799907731621968578072460822438075931802492387697043034859840257357820076512124043322142306450610562286519430303392387925901452113657997962325548342810483019523009712908353911119683083836068022000464655385415572246 + 52895786357378485541919272346996173661120038211115548423124874785993919930329134010554276127689531594296094895753289317749886263376049552307150718365580204226042796263843822032823874040817985730365899393652392654489945207745488522037035869390621287454987934241103272261105907075296936982328224594471712471932 - 21958872329643944470989520826901797595395020035319437811819605045654554928127682595485291379915592718177141588294675219038612807267574606574469120985115550816791824917581871315683463885902428784426024084335597272995645020289563121781849539254247561329463406240654336761915322679927561697572567042716979308311 + 20532901416283026501064054081260572495190364750130850356412042289819255938181539329171332914368062642067620308395107441076223637903340853691586343000499258275583098296722409830869026594669630421927790121862085286066919075941093385510121037328307715448819117944885369259996392494120877479887190294184844400572 - 59056165954943254792992935611663886544903787860610326686409428242745398536084094918683543152223340727802574614239976369602107709756019995523227170223762957650998514149044577626302151647059395294512223064652775826816435779231031645397416043139744679832691012515123844910529716562938458282729373024979093423415 + 31494710558473442490694320149411909424239616939102006553422872934014122444288839724781153202496896091252272796193605142462773319338773787965515385344580923000244860792240955009304171262104150222118656889625603460645088618540512362232906337503416406515846852966077390519576920997817730871341589261034218781656 - 15575014778425352563546386214447233224952078602592134396172448731846017286687199780894282345216318019962113327819228443129390076392451694401534448519877525032554526353625826091350169058947359930306610240330614509653962446260791392233650691944969681698499235045700521542508108709023782773037170507023292061613 + 41926765425778329729722314162018660825459140332326003983125522596347767832514622225058168235685374288385769624197680706270556730785945641331522752440825405966895077668273870963387629366335938390396009749155123217554333458361936248049052966162002964506302880342732116713719883164737965315437305979290851892395 - 12077907963330326129695852235405487482432763676975423256864063143968218051739204834890613584781122903802844800273648757850020366748642169897652815595491804608200976617254750148873333139030082881295316862624549514612331675787248888001209487090574659427852897703825492485881776081802765388046781853559516658576 + 6044503068128773445497595645116433053444696025418137721407477218138586026547837656883853586163867592026267865495297259273220226751556896226303200898744387128841159591221365513290747040622855461726704438506563956166617639103570165355049489119273318776397447348290488266986408859826096885350048661941596755266 - 20384954196315309347982257969624095238156103562888488263938575665713990322185992433933034971652064257653539475688092860706496279105487625079693709422711271645594951848450803213687252810090141622797329636527505364137808833747493540295371455320317241587691740867646642574130704068091353545192480248666143382039 + 76900793597342953999728414341461923387343974050615549741697804885744412005365929429054465191747298710105553764070348860823177614843529071646160604422252380234877064288227541201004052452676150900543179568423105454676931008318859612190932497818295302106535346071578907225642137869075200867113196578011095086961 - 31244481052134034050044931951325698959500382325191147022787687607432432310820192884951550133132656945728229969103092387639133472842668871962424098958007065781860346279734297993565096599078293078001348321103626974221290167968970000021448854207568001768946445019738372563941759086395984547272051740172111519473 + 67613153525768981304130643393645357488695674850174766132423373091535701707979152650165458454055254566924798803191451583328211580319978700215837287098560157596816840190902614784088429120413013053501097331791742369857855206531172302532892817169129779477179383465757128089182514843351708005793101836016888659633 - 48369237230461208378111290246959762050319598369701481878564591938667686163679656295709391620718088090704874098881339708241186048639924396620927299014868624543817382876809231087297328225345344036488562336760283441979357670021922846010612619991078644716204118032460905725778383782911841438665407236911963074074 + 56211073964267542639988784995932946568802766872795774222488413253361869205382729842479668841443757560463932696806569054299327814451522947436251507701989912903484348283542611706364611109224336671298061347588849380364845100855016627228554099384210108452527987005725945431919936893350868314516780035671214457807 - 33489191579513625108801232132015868118954341209076010257139268392270416487705908784388561402734341968922168986463489887578906427093007957166977762955433975235396183276117754773637488058983964521515462277512636005757901370679961678351527625905535512475955566977408289886839371734689797624069947995988621557174 + 37134204640651793207073586480861203960347443741455784240166364242186371731073425702787819072508076624580588430838520567116002790802812218443980234317803852517296153870158456523074783128158492804859160285019255644379810882396746148921261515341803226531345445416971751505548796564498399134917334108838289279623 - 64823477925749965376372984469875338155539342917668762745002277737807822464771279157284313578036488568685727887839208495779542987975667420237842212833527439865388815039480835851793703144112093192741737092869606442937373232871983759492150545358240175105713124804245503121683408593659526389518604324867839923274 + 73326494272219491424566825787091807230946070029223981677710711673402786344745392705946468197668936690453895692979413009663965109800070315777944668540766082596335097206345469075704520002198172766409680969970737472571688858250073927504876125058542491339218647590603569151645213324622672850337466403277767671352 - 79934207235136734067857754306220573822029449826707039060783592206881059167950690254091999852096231820782847154279809716997772302761602668382957828900396788716441640772298732465678396396750586249442428035653724464754339314574347403541180042083193028915939158359220988556534932186703982240975862206888426319680 + 4937683177851101307840808157152077680605128540899255894475428319161503997618618029434987355774810990579758799648453950447349885943603196043059293995845386028937331464828270183532289266846429436956969572871615577065809883726333843481929345432047407900103714765927232259778758404180997712723209443527480086103 - 56783020141800563050625520055518621735130301658841863546749848445689929080185030198183899436011569438720715902655010961581663565087292590753086935866572639212912963385158843291512481731772848843497693857242645637428994373948122399193344094631821395412792633090552748200572819675500755660854989173246852718172 + 40271108806099535849925417099033023092711223277403584760222422038082933919285659638798756338869106335276795761174215390848002531260922366952446465941751912134232273308083103241373024589999544369841457084755104833692370116370472333540867117446783691106255624502787847719699157011144492746112850587730217307981 - 13248900762657152048006535455280019155915254891346156855695505844397145129070264905901917279759469443387549199626041523035289173434379192884482034697964127368530362606856384551192939805508994907173383539916256005464386115897405467729413482396445201579089192386953428541701184171681551813351881034414785820448 + 74084342469953345451012724940378904637503820437764668592288398573249729504521875254944765434820809116577115699882301457649062603527747485910427801346497327200656311346934575358912505962186616744800735599789741511594504711499807935920201130710809275856969811508389700191326451851944591225172012025025534613336 - 41675218218341940222406378233284273445117798263847904944458910295301668853374554828541853791017952868119954995089444792695388502833734813794007528535555072133134059363569190707578344452298047369451583390939738318196988989224362198521256608375697870311615009511307946022267190503547465860368489662423722444367 + 59137018014525291049558050145725541003337481716491010923206879371332967232202597987616565120811636719456484497084055516851740945131474911286292068378802422092030783876614399796800711823726374033099574827464795835721930915117588879837794115470633648881177427433899945499907153213345866123028891274238798549027 - 29419121828024712006951666964941880378315738924463516104582162451149779739374037447914707339831626050472368230093893338171430074865399767545548046661882100241076816607485764344682620014663387945084319603153090882420695161796682509919230179772894200383151806478592240028077918540236072406229692821885571221294 + 26793837573414845254375019486133127074798579470155408911596802049956830663984972761267127220002849218043485545261199169834507509064236162431489893958964731893822904907300432694075626100842936612473131266267443374138269723817280249414664263185920591170984072138226773164609576688648456712314017352235750855661 - 32445200608597512541625822542561607749298405960599415964731503666823125348147700549901034166088724464826157148323441232252562970247371624320716811316365527789666568695746122045235022229170506597755390811453316716912090506405933927923359851119654924342369280254012145895438301052097034498086011112377442778610 + 59911268817279797783320671631685837105097101760443881587675913429092825491925351921319742231113703569454405043094031459373173983825598292423587032718212052641078225297009032173650351753795247038892321247367374944370425326184915186003574244252065584471470635021244841901439148840766598167631471193951844700758 - 20864968555291294310464334938981760380475336725985423598057411881613072562298676849239819869423056006426399637529306857586938458997112543115118689919267981906916817703830702409159100409525739653428432418616395789034681153078768601909247826758470392173520979563780891965306143193797278724533819859687489258293 + 34474968603448549116042761067750463409562947804836127128870520924018188651089667418803628412303701484911981942861691006773954836807636279205683756693224561152030239271457985989360966060322986105096937800180648146129989202603936431274718275573598229253808829064290190081734092694157750994369590604865132593387 - 63597988482370912341678828158499211217941223575515020818178911830370711718892957261234222140058387440698798184332455123146645217945699514213691152307792238522064475183582421825591357852450539464165501811692708494982697603284879879714421876759313554845595966077098092226134671314864945996931765128158345482329 + 13473700488764573614051042122335567967798580907643205584215247192172341710880546400545044249539042732502480228374347018699604310894187715378901099283981825871176490132446765234869974851346724635210980824617849056489279635898161378462829892099218035398018594042373671323348341516762719361977441260709550165695 - 31779679509404648265160067781148114886311931657219414381724335850209078394669711518689413469835153961217482359680477142835297188267863204371945361144459323869484893929614998571944962106990415459709930207333472101084985883849535625758382904338436256140320350558537444908416919181132927898174770674174792941150 + 15944884482463699220951608264647540353687767819668838265835200434738498815959033509239147412742221837260883424375196899218400978833552819429201592339692683770297701183337320761533325363971715970249901302908667188290958868720091401974640668107729787509825451103747960990095484982142125339999858097114718799492 - 67184034295804727324689307543825470384779319834470595962504138672462945216279788934309700217349709103271296918267785576297259310544083006687587923229848010716931640927408355239121148994045390437989127575387845379883694729698758029469131690199821978046498853191743286366196073875471718528574841756164887528948 + 64485986141412405356388856703134107932276884332345157114362867867252372835860116465907442872340493439506093317570119686461453045202000448890744235562597622962485277972246131351505171914762974242547669338414146874526006782629922310597115620391136603205854272914701500143942167103011972879794252909392460941646 - 7605763691859382147529552750691515725025442294097874898268656995475791940522797563281215162468988911433984859563122138280971138227761930254335097057833411220600259341980242235683556081069043099370802880673627022770217073852457613203449910963417560210896091089752648075880705473264769671055256159830679059043 + 3672132956913844508348435163138548343607364063133899065410547678920027973576802629927734653258122313983665507792467573147906051135806910024469080267791072458195037387604854891360729045377976314595186023478571887176580610551884877604902581281185874515672316886790449905659028103411774818042624765312808086274 - 82589838129638462171265837143978775132587416079396596369762003901791321578147509040102580360240986979181421656069249770557630843646852354016869275837887231733857385024240464127957533033328454414689763813021512771662454607803083476912152830376448450164182829469940860840395852723728991369583347528679372196815 + 61845990419173294890078917415270038206793308480037788733889918665295022561259111511503803143625569918667790893191416631177062800660699872866404826599225528512535230801848686352968217359739374746893962339881491823944882235838443838330749407682487335631198418650329893110702956197812129584947802482848348616331 - 43019489624517506600209763395565636905897524515863995279584893585332302500430800834653240009011260925977836606905818879177979496111661064321830144253493088424058829867167175329202347579506412919616744818423774992789321138667788565598844065528133292389698613441135772869650864164366440489285074640473108699296 + 9383292149115220546643519607687350158374017165096233239425286358020465386226143613722654505136424305741745100111776040914104815213652664344811432213309451053201529825560984208906841270088353727901807540707618487959349918529010095694607752158348214845627568877408444886677944306162175241612055827468993751308 - 33022215193339415953040447805384227234149799921854667592738519549339149097685404500073743584043458198796648636928793456579447992873202337925497069350623042538595260189459621439866918702080766732374754377649292910157391226695614141618283606797285522155918227901168797607019925175523412568761408449155170556288 + 52273695898130591199235217725213704967712987851877126641346401470989887947110175711973341534587588037139282543279095605326716246736566120276840887961270224846429022315488578905657843451014603064779473958482276536926804543290040059471034363795596437360851298687637295404027751868795672578687618908970197726891 - 30415062082001326881913861142791866423452798341515864183441599983577327812322894493594396288449397528145913494217772442810203815252506588527472909663121934782764850002388563634894171521054262305767412419763203645486657968590897673177255786273284523042412651071696406608024199522468177712708075235205376891665 + 9272412016025909850389232741994228629344590320776974431897730063163292419832544116436253163332494297532110253023313915686472298200840729210538148982788547788364909868081268332855717072718130485198693436286098522664147702664643471246526117835409042913887026425195791523378216888615389255317548996468137396411 - 94423065392854181613307528880155017734482482524854307738599947724573791679851769975029449005789546590893587146625638434453028955999884596492005777418357865364176106965683586943661773153925519493189693450787159869396736353530255913476919181305943433394506649094093787755766312229554400436807479908026234212666 + 81186995081322147895755920109493089920761977998362666939033027518103356662857648334715583159343543837260827676172415275236164326627569369331059791941174370784345826778767218247760533090622580018937101408202993568900774562478958118676081938409941983119342723365683144176209761315735574923237224986542559008709 - 20974185296534059484304084724697007568998964166903951606913640323673502795643269053072463819725092146979255694036179875147785113465044573015589769190455422448640373192342616163561143998286811958421392380060236772467613042666393489097869136049248417557814475428331739938553182878379497800432598144092382874715 + 14696352187957105097045488588326987617370192095582873083046198416029118344199611289782876318854062962971523121084493042548139416725104958194085774359286337741325039069005726443161338289937500965901480595850422495657556812252294638977201590185406126346932261126345838874541515314225805272658689660398072638419 - 40003546318218467082596406501437066140661053373063169699584091563029818587125367062553934140602361575882220982614131659434918705070012063676406791812482638513745369211971774032658564186213344272780209355312804828805017389023510566582130614072503998377019579294271804595991733549453595346643445802053268972972 + 14323762664213321972038102266561957095577256791961312415025214077538062031452260541119413459456341450991196249798673357173432223830287832922446825653889891297007236113042522989919013216201567563569333547406033783918990258504508834795119418346347217892993052323096084938597165759166285219868499744005772878964 - 53370126917509652574310985015309370273560213784453920877320971564301429668764486755128727308654575613384623739691017808993816773099495214568936842018123781278527345733138859569511641014734968280835500599347168351450037730349596169552844391370361989731302775616818296950942240410987698052763148007998331158035 + 50046080222831739976231859789352318054093522827687848118687752197544436003128547548010444462997945849796757079785488208650787073931054534371432257560826499829303058097469479435623332012195194528467475159695250155248802759517988562592491672709119899069228736503022812319107648313755919254457985840028798626395 - 53982513846121527173884165379714145124930573892405573648448488659457853128974779206702799300040917959826206112035530482918606812373323220381521105121072444441865134801783134180174822799228612477140497634353235949416886003533519681177384900182982306911718848359558459456465417752313218605580463855900054628155 + 8998524567290367709116880254950668456703967202997083854334365419614180489505012907541786259130154540975145655745048415548827818950612090748835688771971211911417008043898817147650781871293994809038396993990558716584081447811223301352570157070938069689308216783909855660905532482973485222102574103177671414937 - 76315760310792609630053866873354683148460181705928138590962003855080769144871885829615091053657115193822608250163334110824494868647406803116184596302825786390167588661007056877304012787427919058376299813458194925359514624625283690968471969473728312028137686063488373110827581344190632080579401613334745377884 + 55582386068169967856873553469783365684066852900243070985894384050395798969600170532438857166913877547855674094167354883129206002033394719110632208565695617479939120402661237068603655908656927863951892498630936507300650674387271577666724326554647357998247603054489461737442914958846515141740320654183626468365 - 77797489313413062454944879607373173196629742338032584841207788830982255821292113840294073913775863923904704645959422130990776241773698586515793659827839908482169209787215729582545808754979523361119965991907052071916505690857290949834221611188364386372250867644790920696477787400077700644209348030160696276728 + 79684281093515493698429167731495682138736148013830810494710833495278571536583321373668795565014217826663239805580844841731810727803060230608667415452216253944110850738242772003426311003892182395142138393705540389229211310298154599993571876564607780536705583917952239566255412085494395857991269099763145841387 - 8488673186677444499679139090916579127491401714751373224370878915805812210516409378094624116129127592772579888022251034806207804133359654421904780759673265326665730399217752634802373175023899272510114789806978329317596517169116099639001559322504901310095590452506604190257802415466844592735400687420566814865 + 78615364859185492944765418314875360764193443772537740817505071058707607734493303786196100190581052529503859193481093634598406936032487253024146255633741228380205388487959482463569621239488701827877683042374026390140380862788656697935005905513573918719840395970717345021560919633677949865992612916173586861280 - 3764865971335754845697711017056213687778570067612135279115945661501174010735048247529307974552462534473735918541601443983680527628383295032915155783936225201032807325819920835025012752381797077203020527553140266500583848270620414224546844517021873342624370042962508423180976909954933658349794039605385444079 + 40805840284474886424598785243371670847124528007684921258334540315840745918080539891968693725061919073443659117514709750251111669821654487738673244140554737283638581401708692898563593927828905286091506614901645381226910043575975933906505115667569577730751538327771976690177038303563490248097786964879027698342 - 19884264903790082767881475052266806086392098251397315653384530698861680546748257038089938267044408588487998325858021221378219457500889510027427622214978377198116763798118066318212497514385542784707412838912207904564412690977556884320780452094532538727400396470697629954164579095548003647480332259432140582559 + 88839691903572810434158256557592960255388502420051000243122597398399315756229615014311232900111252312586776282110648744713459092095505400952566952603025703801456877431474578035059166434475383900668946716027049697922884445861289981823344813544908694915972075787674898013110433081757168925277926526488287596033 - 91434509428525734743681154744274419715400340994038412176633715695319815315131564930324358099047375610047192200047248588543072142895055921156261289468322469354716216875438904303786156641792276589396654081634737515337928965155547394969922045950794323130401246411920465834256282346947978938464606382625704583651 + 38423389330723047732224251879209677835232294295487418359314068369909620294849534705333316020396531480502132958370807068050765816097537576604479093065229806815512129648842765634348380975787513613974717921736105057385374434563636449422707380484177884597375252089256867181842444192478554016528433734948654191433 - 69214666080189108428417482729139653422253342701876036961088886350499942618017862435924275699226322586794926998481646608990413664546368805617002591035891308511677058688716760571378871646556133256684422056129057724580678751726961680259571516786196882507230052531134542483938359521387678941270529227066570787820 + 36535165994418387420337759648528336220103482962899429033050076623193994733020797057486698502540012013647126679599832597359256336624139697863199645964306807850084191617096980826685461442245085311926843085601089974781298962140195301352972344289508989723058755910530349498981540941195249310218316466650529022941 - 73534345245038096201147512210111760953975797615544775647007605643615797317841513147753113139720688768943026581390712432859929646427105442915129708192940436339004394826612607089830145658388283820018617794518473248684359065540160909540885159443301714531722167185315953700704119333247410008951516914478179729450 + 81956456544671423686425193877709171993585730604141810220608461833676592042941662643508501839074618940449874464651069153923320050906378072035380810284061816183274593150479173356723854020977528593609266225947700828423830139529660436443525714862948874721706193487418284909676311193434690659744927315045710323968 - 78516670075791096328690157975111848261502634377514802645685956456643177276000694888694216760084272916134866592167310311879803810298790019442190096832519730084026073562371796661014895985048505280882179694248862121491851282698708321617655299145507254100815894395332158066943918900999929740208372940659955629515 + 19489606181140265265832415115603523446955890425289323841800073270414424997314352042197039024895669128809045861138417361166485032673455505893837658254331909416082389158806645758935599550525027837277295750127535788986568353730284042130878212395540375338184183122846930099192943385277017290975676696944163619548 - 54522060221646067910321642741884554112358702652937414121086269675281068497771863019784460478334039115436784119592175824008736939112900738090350342615736032111474382195211641036296879568960775993409314190742334516908322729321874611905510589977123928479459130775628079577928795893698143340225796349567312103958 + 4903564443099059777724461128156242159019228373838497350008422239466694870994991160441456580203981744885151624306576841447842242492972365234542793413391851517563341295926325811219969996212445303147293476687157743981240050412807863241270993202387069699858007742831772690890218038974497852044640413285230761669 - 92205674274975012098419869064643232770538047035881361679145806465400407912000688600415299672176089150484178703595449260325143895479632940931474178597669374330886322254426232739302909066252037219269672327752464890259390090453397248092519916708870120291401577012348012369863334324357992475061041451990459072921 + 32248719608568437425090789979816350271318106038267620039027657973617660830744293437843381441098218929110214329180747925250429216863954111358989963462006692001614211231595326591622424208519789598347240977511267737114825716980955521648463927354778384197090419976491918773093264560551758514182542676817738872619 - 57655754976845789896973098763401915416916819450081506007966655738097667621703461027947502088531762344923974706109655563620950907509341010940096570568441406539246163312053294473005406148803759688411462814229337163466685377916405570826930162894146833233924023096519131604576668352729392984629502925767797994364 + 31210409644450554673549038701361822778690089688707924959029150648390366516575158591142023391171714321686664312529948249538246802592123018251527300358451168230619223490336232284173472267430918446208063988131290000323471122715324355483709233403641105279393676208200657798577936930057423385322096274196823448445 - 30736938676441148279967400982417766787296827666016663948398422299413688725583774250655819974524303121452738990280000737525005444618066246385664579209417816097659680313057714671025281364099227755336544844395347925399779382504709885049961879041947397326993401895831742516584805472313302655069845383538023802585 + 27475129026722098759686823744400885973808522505325713302817178063004279498973243427740445296735324854733566782692328174024409089408809040392975346038422344979379740021027926532781489700923601365764738129383498553819174659885064135016765807621739422027609174169311270092115393678250823531437706345618551642700 - 72838715557927278911523518291257342869243833664340207916127368681670153293449973791358776012194979730561235776072405109615421258427620527523481657318737879932768566994976954048764291288135341779984992293965126174963733792576219146512410662630464264457446869970451992589834784890954561591480008947156162941793 + 61132687150108660036171118602525205388784730007722677642365944047674098180251562798897996148812109414813724793605868812635493674482151877044530871986260233004497629792499694890778729799675099251290572267347181106471965962107571760151380645930471569667131326966389175357083921539250576660661603688179514090681 - 49257393260520773044899586946604838051629572146729572421546023844660797991028690505527112388818529052054367884796117000615494031500194443639408826085664760614964969773503713410176514966390498086407962774108347267154669543596499964389846727706644633682530913797417090002509341092637217613907079073134677416931 + 9450625730713259004298654276453830156868645876928891790939403535778863935761377274424897371469150722628483216664346073533195246222891602044324429948264059904992499370890399911101400722473706909633905605036161666030276611041221499534587211523747866772136658889470452812966205265868412212663614990077519243456 - 51042583466180353937851298194490638154780497214214953890955148849554725582894437344095515357258317567748508559192622136284042450402236293439236887272107949344382061070301320209026724265976356541712621410751352415859422396094024621195019181962947311033706449047342500291450042120027234618672938523810181520961 + 64276964265585864814739091961396534304829352349237679502524544372759641980793525230974086611670259254428783375372414840313302227941331019589845266833799098823369888683715750879249243064296491096432184328073711711419810412669815800127477930858446574458375765454419102559410755406364381602711007555295941596708 - 22662205291442206857501442006391768671949650622156625201981637064982995187425564979892045413619930537553411732467746860123967576711629849234879032625872274278134220903633077238038719506115601289865532092647990528689042008435743568374811562316188614874269949454816578384504561824420883763027636511495497622517 + 73820275285539969151846205783000718998289017091171909418215608734453400923443002874629335555871381357786937712391243756261471594416303358568955566312479967795091104620104427616248549417811501323855719714116756741204919811046074071881699979940529933237665477756967691469343179005770901771431497694838749438779 - 52710716752883998185465671092301881591669140246139105141308575672154218391756323414446212538823081422374806870505735849373554018538779144133844817023029668900113869350602950196890825124213328367776452180532219937542520472182592509806512273246638222767988485372920671133742520571224962314000974831873399413989 + 45682260539369983725891191291385912176021736766658217224698032738693600984506693409434888187660173831346229352269783596386141125861270029332064929165994953930571864012838854445317023537168773129609795047828476151063805432026710056671080078176984793250741293131612789512391318920946251746477968665437893469997 - 28340638879274170076160681468215053777989923274642965806830359670458226018632970197988213071142282286374509335952773199463383397747074308958743187937002298996411051678311153291833252074001673196336694829045524685979065444662883170117618174849096743160621079379623992447976389074678405429042331965284563368111 + 86097332675807924226813877983889107241447125211193549622686156295982063779634007154366855491737378853669073475789772044049341673562375773923143504023521994029817549046313237990237757264718295034487692457280701265920114447808334014567391556752952030373987029354341964815399188961517125004997678090444644588506 - 37059379326247411916391332406072371400715423335333861201180086790502780865447018799806140766706462821150028042291838842002368998943457397595063251665843093337735324235430094794197097166245052201615537819625381131750710738085384728712100062664524546664110021110923645562011031401887794996111648703832754800686 + 23243350305100271708210861290118036302637365328848507644373130595738956996220768273958203167494581500541732361969526428138297534037196684803574090233256013023825751226188697221210374691276840055371512470456755631882970771290374319024711618746800849463385964847982876153591614748743015754765226383037679367900 - 75898235832178031150598505323058710679208727178894767443459782474711651357137682173116045637504237713263338634837523098961528129554827834145260062607112293804525850952089727999443385861777322458911136831081979491447920158132536082744072525202763043739607583747671848958600190802449631020737068780459268620672 + 52999106058738673380304976546753746454495814297555455978278001124684852412609210736691968534414238601060799108647247427001663965133805072594007137578005946841347943866059757308021374232068005377767965266601325591678779427642500570215486538909035326382879812420919693746293456071328971907044666499347163594555 - 78132519321266695739472793669040626210544564802625362358170168088172990780607749377430792695371741900951775133639139639250255831145803890293968080133554821623768064784461462878161185920749083569363523932233264633197911368112817528804784223252624054755169739059407461518668015796100982339837987901024094730185 + 43134374250426770796898483151822934735027430168622596068563077439734460105471623725206601764612474218025408587733128901235412990697396762127755637343876217218096806241033388127005142611769475765946244634894728707533441935576325833794043372777627658678211522006728110285723770631301862876393432453148086768471 - 80651843119103707906689412686835082419427472369033227119071206354342913518507925525466512135010602491329167055079282645351856666279243410712238933999848724134737041629922913537436725137245043845839781583979275938342702841598567773031384755467772127215197303155279483601988790857896940322431403138235518980950 + 25132445192948147115623356358033235681204744428917070982246274973985571178646732656901767907719120495162199450539030904395916940017921627941961799973418092261455344189148229308114375483762782904724366327905065882776105730227848072514146104969176453882501422748238747134284857342123692115040773595277563625740 - 24388194232867989144476802686056271620867363645033742780602031426475691332001904451808105050614220527495468117685561322030955418774297300543608459964488975545870306717777406522265405642905796229295315303553714611260494836230008240632558701714082972603137082483392701185996080405198171192687551257137045097646 + 1289080402713184128352506706165632756849875586951495117160752299878679570168990340766238820634135043521593590815665155707154614518381191529501200249385528973197172957898355482716858608853934438237185505813439150307940569438285955099866932816971367006447851717726420661933323175562912649778649239888605462537 - 25653269506897119822903120239839038929433725413880761335836670697204296096409119835634322663841049415155768428176914600425300798005283854028023391947115705930796874144996875210990584004627942867631534645409841666639565835450809717973927575583266280203137565183465657418332574924494549373121703253780769652784 + 47307672118644110967413339786480911374224094774344112766837470474056969473607782037449454805936770060148649551752304954480127430918761288376251196770084515121149580725036719446182298922216336955375091973234958062106540534282451572114603084885965074943736651051288175006512658773237956009759804954773931611504 - 31904516142547884937642780479061607647084113254620756283181035666002565311413463540084124613910697891625874866565149080760855480344256135819379777218675507539572950062459139465900492384806165773950303664157206017816459129670405456950335069599080189953841421639174375256505024250201189364958306026532990886279 + 83254503054515996517956840458044113730890178188165785991842533400679617734519113597724923704473088733778633893232800895977297443296266157702788051583572073245423607582688184078729574239963893507478377772943000750405216834743422528435931832209298236588353587597735574119704223093369817567899917143700088509567 - 34341956827709230700431990400561547315453964602586528250366193873218722632882603141749666058214608104295146348986909046457902156468835931548712707257126365344872764034357571525111567800727846597491299346776515322579053868694079759795946356971166541187720002874382966770159490298107774112345758735347775675266 + 44485381911640925345076704636175251853403744768623928167279164651983832788723095334855333926366603183042831281624695153288153779722542712937938179725469846343136859773409116097490601032468949142462134363314975481042289948458402912928714317552332156226049640787997458905357848898655450164432914345995073895098 - 2681173939047571624027179407917481111086737922348205540757474656696911071778197368134013157339068997523264857580458813942277889818227902759819348171655199063201214007778035250512709870246468662013638153246108041012178967130978578425046684662476936546041133553176758821040627698974646187405980335924688395585 + 69472790874927102095980493102168813961946952246324691925097124379976712657499357508822192333540557688951762986353777000306019089417626143264607064889454692666260461229422498175130982619258238240777730758735551695211562248654513389562337132231711315916087333379216927438952323920622119338736034074166965734699 - 59879455852539151246592842130965676712376300660972378132890142164806299984798984820116709665379878800524184984108461341247458119493536912934032895305900973565478487895747519044807667182160450359923383275725582436686259029090633391498279727902832583319653190446457350003580023328018263609344566312802511819531 + 31151568629480825604245268645322846685475354744526493849414160622047505404803972382276304121583902377425746162884068377068568549712539000072275480102851913315680704197451494269969943681447481718743464847201206883632586383232590200967312468910376131785081425204208676095597647378347947459266202583190554467465 - 56654084112573417020346292957231324429042275926184968894607411753671140944550098601682241215165289193650470398070548183287888475320016778469456014303225716161406815733203718827119162637679874806369427010408489675479320604326050476550086381903368099941202047627918053120356650291240430643914227623178854575987 + 7047451460539487671485216683851145585081463767622577903239815599715909975519574629132984521985582341499867109040043728778721875853887164289754560871215645747035972933174674051057651544827745497738683449411945919886181117573427086726859003082692204400779303036412470198137840033460160106525008328292849033862 - 8892019968034185277738936287178619173748107355785631421210441776746483943460041812072616086664023737770140996151986192392485409402389001660893699790447416221134625406044747104800123228677562761533946884845659084525801788061878171102077313420930688809573261099578941731119875040093934721737053599786119357214 + 86559180799146264272484317272060615809612206052970371380207426077280003846432928534011099893436767975167357071558797774332012616672046802712177942714515169164492929549185511762914521620007368137911943017118937384757253223457275651469652472334708329769651880762892764343661590499296443347522147229447198599579 - 32406033762838089102764031293533729241214621857358335491113474535154231061883772252198362047788864438371159122112697342158178925533680986019986073478654783051084494035451660067374899746661547021864859806275986709466746494793434349869925380243321562554098995824186805597577355130639048529513397299146453182016 + 35814732484056860631654195069453224264963147052867487473112867799630280333941609126005104345970070984444783394307301580262363496428255418280453826650113011745093953531561456858863794714388346843188489124183549168436191499168765499075432021805141439822839215146617358217639960043652127434901322323908752356057 - 57627518460183402412653996403396770904700062434506466847730502031703017712051018031574542711529840480954249822230440570421630017919165155330999753932311847608082451953225780803462035908309083191846279277790792193825033984218011556365224083476681288410556077854026355074981765273497703187034122565735545736624 + 80212477111121051041663755900363074067827360613605576984740010483684252093429773096793808997015133221005194626947289573369305208529420683746701509461539348588222758621502095412551427302417843794357135964736819719945208170891141118445242610222754953356344616225324851058173424163979071604909467884641151070909 - 73442237581307386305380264442444257934574255859180423743174861177945273626294008644982479129697489362331816404753641754734469528558603879667775962388766435058570158361156278452396334134133354429322821996302948836045892079684836612502931189976769308099016632140527610861160776563966755245790733912967808331840 + 47514424952978859753602243777020448209407573569761859303925990386486755450322003920557405125682308840589112503142773806886532863071881901252803233144525254647501513705460909890161499212244109488560990930633639753882039518248699302111526214280814789430122425213733949923444021887839546820704571983218840126575 - 46297846647428547455334466239513877908307239454854837887204554313706411538168820376719417781756808895069750481134097566824180202889920615621910906230603284873528432389533198471361502200982604218894235571351424873377711601583205289892055499071316225013455178650438351476734606158099757771075881239300351134311 + 81524283802462958735428589162856411649195684972809787513603533600577325422924339589455021883534312001947132118689230841301607181879683554037563335177712186678491012111291714198562440490126435224217782916345026763425875565227797301690544697661042834385519727501265607715952488225625400058189005958081432370971 - 53407342754893210309574819707001648801888640077008098098331315619727385618563819027991345316569740574874438563838251586243583829256160166630274270976969764041190546496118488620729711535553698075307097319465705769995663264013560160381585691949235083517110662447050749122598545866085958589088376291031744532494 + 76025447044879751776121613615223784777206617901736587929205917012495471625356777780520694909626209919012966138618776888364086826482955295387497625573411386676042709057997157604861326051348531001542494003852556889443805364479128499478680317513800437293632001010270500775904854677523700200887286021839281799648 - 37574446275206938621706328700156034483010795331357414033074917613812910729994669263542630853255719014790733168632233026545668784682303213488173323966655934067733326820863892820699733043080986957586175823567166337048273994897702373167630449236863560164862689352082416946142811156687480694385099795650650339255 + 68639930839459298518305190343102107893358841826895897684610978561664846207258828228719931367662242825777592197605623467649257859550729755730014076591753143004664802871652186440246079178090072370902203257150622852588327662590238470963505869295967766147522398420175697777270150562921663774618860065221336241194 - 77605080278681907103214276380000998693373464947327599503936548062338700804576889089917698107441115193537040394084792362617374540650110263076367867094335606749707526992910319664909105533363940981531139625706714494637349167324156782442482068213030054111634457952474889753720298363628109991053692794919898192249 + 19939196164356253489940847264182169318331627969240259004237617610321408382679255837974325983733488193611966198098585937728867013960652183436041178044012295557901630205705821773763249826052047097817109134336443945904571379996683729503952173300619355101028286916138988451697353449976049938669456996031253074957 - 27610111722835394937841960687706476278212591000386038778832659623803189324171522861580060509742804533693538308849278259140758080137259286941792342014647851613035432402888653883118025307907644602627967154079679887637936043689465815043294035003245006034658943400013684287095582235239620761567787133972424379458 + 8351951139185181147766306828999925603165135471431013942288998837585981308482021302293948158468753502093068158171556102480038954122706447919418785218521260219836358081394325825666301101118078932889718188182272591244297352561141417449923237689994187626635174555696835999609419096329338374739086347386309940388 - 124542007191783429774626564155316862699028715781424452396708336407157022337846290283975960870783476122428168148265579540650971416907541459990913278451727489332911548865799696385093716917184003066283707407020739306247798411150873883122619293711138582276018084163111306905220460950370296584909965804185822717 + 30101341493877002180077420856572281618387020950899679241996754686227552902865160059654806103988711624874175389915324815046951476118478475503898013071743284668607030447458473588979491948722590003613640026422403178864859705631198420544928871643484376530913017486707172608146902119964550020329737873812598020663 - 94077242702905440172652598471177622173519903484129389366228766947630134416054585205319063670544899574406697312143274453031373313010299692672417504472021386334352559249378479840730433930177188642141788696465837244901881491977093099688284897201201024197802179367727968105735367530493831620267998171747289140903 + 85397536803852459739615685423132313229948758920611528747842180369771946360960201390963479964852346259959072001605002219545896067260612292682156718967173131220215017162663483567990878021840586462803047016654022130480845023201297640149311554745801103296257595420671133407420474785406754353354983234824194572899 - 53879646861695633009153111150993902598337502784722070425671775540954905280991582050410418552375522604267494073675433878518332607056568849485606981042789542431334374593148174382695047993771708350195378485037161286657013328070873725321301622959839134477881015857727391631327205392285247916580125739408541295170 + 58406411915401992294372206321163081013271038825510750209346904830669045732295022379189477593555290896360993377017488009206638850845153177807992500967888637146867170048659522363501319748438408192442299466797231488677079768190938007811995098849507386484436032183457559319829514991698674067702812788030304429030 - 53403629039848107895199890896022320895050999021045398692420685390385243633993620788136066575092741312075383924855350368087043765163447427668357153503813251639043293670072339541308798604891524917348948191820580253329760889019359879332141870127587394185848517483322459829944264231079973735918617306247080708758 + 10425032715806567161094839615968963435673930178230758679027746863641018878957910066534495913009626479056037005078639980829246346757846919990611656309157940285115455113335214482387130170620429911485702001052430746206114446706188307033441127914873519987631287849359991695468455048626922877475047918114663935453 - 28318673531819163489442121656497851404506770262807812685115516052098737394548144922850851847744821385857477260791421520996779920816596997206078580318447646616596650329214871293041104886332381595871197041403975396276652261267774068149822904555196718486671931216445693773591032839613018638603697172897575243083 + 40569843767857091791667129301490827671826850637590913779814101575571648770319547914922154388801050345999348919654369275505385506986709050804191128282836064522836790164103163217927803380347141741167931415142020223077325906138386449592458831420543929693546776866890128057834891582480483016809157069943511867031 - 89048184466038834873351581999548977571429400875010221909748338572438000096838141345168737077553256438551157331005836389895587894079939327083148023696439127547176952419919273169931461662978041723149226533200377660099762418422669414236501017815737000939067693320958396795216450623543150183658668055647411633584 + 37078429991664723123111169872505483438271698842178786996480622961962439381379526742722596271917431241113210722530001819512699785665934363898063333928996494312852931271651180529223141418790717805958428534806887839691069405629744851919261526888882176034494454497683238300818846965061519713758281495350730562980 - 78911936041780885052407396454250988198192544206186883840596632138462041591386475402926866860048709550727270148788408368779649554648572675300975245663448325190718166575350997254520051050939468261987203113543682331871275825485794397238864585049793472799691121438302237036828857077705259254888949160274142217168 + 49731896770036886653908259380389521345382997998921605035520235701417691592555672001935381218573773016099633815524567685365591670759217345675589279436914533336466719743809245201209990060935473072880624396227967384142868458911510275627480476855222041643527198824068733044019770428845510890681753588079084528950 - 6067450842380073140283155078964452600243905637166452931883338443257440503899055668123308228196275879542244602535344319171572381240508464973907972270754755164992906388388643548345525942715288042444133039614562226900503782916123308449016292762894343447057252344905467706202078111459015266330435009082066478663 + 79445799565540264228449921929430111340700410661424771343549064227910449217805272218494913065437665321641641383027275866135588226758401632619594347603131959402921545911628155890070169625362824137934095414696633698954223727731469664324633012479175240170076947494251223887872255760037162822930183778452191128108 - 22452711672719778178550120349216786804305477020922915564307802386954655370165593832479882499467553691742304540216710885497853049875662807981380009369468281538879663402861794643204374581033740646090696734134404592121832948483013604142303101878095013707408450837143297193798796104132697803091934885480647085202 + 55049201352866006295267652950722905301805481818763305727122359415053967865278958166266759799627289846181615674534711502297847410103510149007821540185458936473134390166589123693883206551802457742751943908473167525461903254511846862792826214215851925636178004881747557980189332060120020606337460782098663612382 - 34404204576980763695714815405613489713290843159290204990509760058532073073189547959528680523921299126269776329637335260126850820589670546511635535255613195729991474408926711093887737706795802452479862062089560479577878732455000892673478133077065158599481883697831053463776980508570960820672436359591741259505 + 91122445156667218930550636624037433293519373878413037766010311147422030253895740965493619604739845909179131617662721056764509832227237130310610832836736549434327733540676667649567460028296233165476729750181348007495988331265748178571207986542911477080672978473587900982461755532827396631150068240544271709500 - 76475943189117631326972548246236156633701086843426596007525233955225445402432124193937687079973972512886458606063540280573551123190876253504344899342896150830852799851731824929768217397755528338652573918919720048962447601132292219472149315808871573519784765386243380726591796717804001456125999386181979002241 + 27806369734252292836916602626990905479414362076443013234366503806074188873725298357631134635937077774733003230183146041697895192188154008214665501156917881565267822998245375458338233560903976589198515952492300634946988859876782856342037214946135051735860150383952241391203031471264502545930802721191085488174 - 17995634593471994520444109918161630604569474023299144430104570974910265891147675258806453732147958484176282878328337246693519374823137621144406425447546298691999206961172857760708828392061842338498379864453716102617799654017773670457250752679415694164788912771526432135248397819055545582376605616842588753198 + 33182596690261928760661264137701317258128037654545314721651443004878967254686758865218496930431236910424061261899721681574671169687790872367443813696935966288409616892234763800318891793174228588951450818744507185424467136063384412793503670463930948486954348584010176594678447325842034293214230016812745602539 - 23930287341953673685225319747520711983776543207965685598094286236202623972063104912825759552473011853028496861479193333597213710985876491785505437282127702003017556078579192897481825273046763029445653069280829221993826362978058933266521140653584950822221058760336654199240130089166896631200916687587716146138 + 18474814663717243137845197489017823905206101503521235976688103179329635645358478098559763311794040488022027800854744301990503665285518228133111347468872549473482241048116618004689610091636863795905564723816717541196131590259781047118939051818252325858617198814395799642325153314795742847154899398131499233420 - 42369743251592110526097625950572803882825056372273150724168112448410439807978120479321478338705614703782058488091618616081810014229620570886189732785758807917012302585506492247030129960663416029979427756741117187240158348238413900553681922556606773053818073917913801395393816877544240129307510149394577023337 + 59055173916380327377911355145987951035607400450463729830063656441545849648142601356326865461334493544089512007036582589032573798997317002831256919709896794106152563445462021802752169919112654512361549285029291318247091161023013823512147512165890892884335111130047707786981080333814958704498346118024455875077 - 6745165718277949736910134886011957767420829502130829324446905007977470314834629308899605968723024095877055816492512032882691353151883407155171368461094113558094877739933048571095885843802158780567079506293621904848121245012016207735618408009158113089234220409985443473562956570552120250685505004852246437047 + 13161106254063850300349858666601657035451002076993093304076868769176350742323761919411740968228185842184072131718426290661073567055222669073595522832173110700333577529223148075306173540497293864551699054790478116900252322546859786012877302201400946582124874844877297696960044545718720252490366543167689496309 - 79674362236495930739088252263898228779359229149644602049941468355537068470700897020776473691881355648025469055074824278847451865744446129054947377350219092464198953878870973207983253667460481067612778153463332561552147753736406628192949318068763913191812307299979579967380006447161387355995023097113161953785 + 4171480062774252687134966434754618706842578033969510045203869721469242214610602907970758852878473140244114715866739066099485696309683629328008953870784600811366472313917627943937982684180347947585651114772063567969831117960992042614354899911041829389926910086195251769188012571503171597004620824488840090253 - 79350972131624538384817384753644213531770174556547762312573255329325780329656776533345132405389953674932702100121809128154131492110992694458869333766736867860463543282299235787608467914708841149550963330060824866917787253631573521999880868594894860987977540699490759665402548764875663192761990509282698899821 + 89490156029702029635385447451900950885767584658239615652538954443770769377066284177984385664574067132575196844763383880454178344613365796197560730764133433830395489041818640943893718573535489693512636861854467025070434304000406048316967563092196802512707575852778100696154763478651958544211558871344545960032 - 92273877394520843231917918799580405323929121374131785700804542679213004517473626256030821368848756738666044588527923052574702666564684532730599673894652353124575513650415130163945252775188539598039419627178082070399771957890992641607638236934036784132526392750552536025580283298825771813444572392248293288756 + 85671357441329174043852564539997969462154715251860036865126665227769315034226394183281394489806892608535214763248644998886937400182952922329443550707493076453265565541005332569693072910012996714996770923740209081637000885576435888095829842142059207694431100494523562909717254980791235786991451662346062041523 - 92240284461203313377531832127351134149584645228397354658945526765084295664646336119684927163232998638215088736835189546140142840617152696119534335000554451434557551854670360173766912944398118569204165933199393178136308119319729993638711812858448696702073771827736698814016952885167330078540810107134809787476 + 74811657673244692318766938573877812815853181520297539809001130176962727058321179243536138455078285015029240738437291950145879886989811582202658256167444644479717026700977547967848991078123643301013609784842604531125736489931781260515278643067368743395785675505427579559832133023589679756896525616641036092251 - 25997147402557995496814495964338728023337868543818815801330942244251141903345310259966683699355179986428570798766100556913277585716967363540643589903825220549189443668721619241367690573123931600340953659155249875930408044420095456889540028662197246770188802662505919857913635077055126761251075191386645900547 + 54613275633398836699089450566328081073566711497199897628154611194939260124194301728949778645458478259286902844596846287871200448977699172538996744571791783728534610309405378510892842672420817978020087752625670237885057517202476274445455628616389958214769479994896307347889541995441797436842923986226144725257 - 50433359482668499506365161654083961627397181496232989844833032712297141399084357991781943759574965188255790383567822688786496597417432803326428933383965087118098678650433167970801029320938261697649147966666962784439430197729676593454332228048202449244013428051356594193840581094873055163229225405147057907929 + 54380595401521085194941013907972407638931860155477031134204352821731128268065162447573987429947394538798406454868246308459055029435898691053861495808688556864658275201353335651088903690552314371909417432622022370245474778743765115039785282644137624017343871419985739035954029926096022759171512786454794846652 - 15583299479321342079017310397196160876546200707195037866717959039036027066308013527343899268274811420790953862617585485441951744701001454559951224879152263585346762702287518623461807680781832683405975207074901100137466336225538497550257986006734397534579119835787814233777793757320522520964858248419527417479 + 28885827201810485839554178735356221184526989827131686868171940604464870168637501666177763931256903719134623878146210009515923263859085372891087017395318142334558215599147492825537801771630684996097647421711671545131763546163262714539551948047746220943567678854544504849573455858990463139413776067019217724082 - 86581336854045884994223855222399955494853899885077393739184652790322689784387227688499256839954483779701982069810123440242992736272912323504470824058701162592026067463665650929507214730388109239617308662579643359339294487363741563799194137390914103788762973127701614865824420266443447123339477923927049029629 + 65393122816560075240780965953851316895920626943134747794164602614216148738196980432865811811220531020326845912332353192548839089337942166808059499118183164288887846855488481385755045127227976877251037785820222746453946890607623082678639833969275618970109005809703908847412967835065150954749613638339862143320 - 94059760839974719962462063658480722364776517551968642711628708287500902298646582325832346909711286906065922739560673573610796431395093248744118277106379500255616851708662823096899351610103774559080902570823944804799264015878261501919595715951520312203058122600581761060991852449604195742320790200132528468697 + 71961783994641668898948749416448834471883034261144074007220746342947756907908725397130238772474226905823444812954549223936946760906113783995839504430578864729540018573537567423375643989286567067162169342182493427979205096897159465404674576550546545113814714131586057036260993810668092585075905684928406900645 - 55649219294716240880577031453869356987402762921984025091264103203907350438827748644852680458649830553651655243821716094856352678407997786543804747291909173538227338005408424395719215996432701277037344919798036172672800411518156468885475715226983872920556174319759452859007450842504384024361699215598518138605 + 82454436090504734224977027361384975283219041640068178735378168370286726907480649980425969321039735776354183284711954287526853575870536579174891583428586563212684882506356547025864372484964899422725107578478750648323832292932495287806160293343334194686004136961844368050070134187250917111883055420537847714002 - 1238376337788796953147498765205287937188722996917250507533407669402768127645615888501628977845673728412833956000298934226744766965769902197996270726484435831492233431061493189766978949792620348437994048558371857087857862584043385434494551595268170155171761116608671872493625006234114598766824401565707277054 + 64473140058255083056708562303888702404440631180864183189152727698386637262971860406645241372903998197834966516208555635429648456224420508952109704270317659266508175969185112001168419820121790600057213480350670393208395108555257440786432281486569840108348527495088925886319408476117626208035037218943186960131 - 59873227743391003801002734415396801833521743799513728790147698765556082031977818414097215254844420390587866705381343240370013033899802531040323203981507898261783670107681874954867811875617894356528745665154726656679082989046632531720496532272234223965145345241580159249032698068642349181028519375120295574516 + 36115006261910028712368089364431842439560003855594531792217027195310589797899698857317770024404638549819394661736876615372333412702331190042869810817246579229800423132801895231596858207796353236265998749884487918655915478086930730051645530665549366095230974569288229479733771460305170288635685839222643270761 - 53253901348655581180120838256486479621594799404050990357985535571086966194716263286948799098007829073106061365126465260104851440423111656361247387967964978256218115968796024500767380988602183835771292503391107687838047825676770508030346384780458936819614980287731081291940099620612592293934119849590979527327 + 78558739876282199400004832183115544157274446426849298616616967079232196595194920017606945965295922463244295509328655596669397021187646014231180416435066138036131791684621961652860395369810997996615955109296864898639580640109799876305298395451534518491731130213333665507074993992376318022629006944668187074410 - 24586745738290830333222330349204119195559937236114530619461937981438783406452769059705065496069562008553438745954865895979840032174095688984229702382440366706141458345145437802236593625871005277243690681286840714869266577536131452506238419360033486482902662961057788460003811220707742196135155658653026830862 + 19739744650013135983612468081707348387599638108936826140868566270801829405553463304161382662844222900914894625975943574560499774070350298764604258458486491267941029149683608905540300618785299890099715305657497878224615294487728215518553882220659722470915958102697058213798723564152574833463700379535433234804 - 77682937193936808720966112935070110575483345287729623816825274329195942335560104016098666476685666335715055440690808940814092042072446137563852587858840632401756235197989212522657083421800940559863849159557756910967746338115179312769237718202744746950205188056983541468457263826666068612068557762109840477101 + 70576799604807743063201341970884192669164445238645006562181121024116186762115732325451106967483618112859549497537930949935653031536677339129504518281383640478400675692732883281895440505484147463245182163021027635544966585322930812357513263350834251395217614363408915359669737088634651539360444280199973105286 - 47245997654562232181921478354915832108723465754510177995095628778111894102271455579548404797198971322213619229694249882489214809057301727656615372094638743808437897937034752667318734979200830889937369228470894264949945174745623719447282438776376284972071186068391287964605813894659197140337670601442075110874 + 1970580108709092110535890393456427907919434199412205703842373757222328865439592281082366093519413661930676132713100337020297508391237800252823828467454498354043802085911360601962946650649122325912087728753091757227626797228132666943529996945044381879321198571776176273192035878522550002484005805576911913724 - 18369575120146745534240111278023894464253098237468996970923562777169415311482763290640420016743088176922120725703870811588881083489372879548782689544217454999374009860574573179301778390320581937397647884557702389613589017018910491889260121215022350958877097956898323981084042254909816579613309819774782650951 + 73627684901101621619423906628776707978304390557298222250642375352056788165888960084343020865109555905556472951021226807726052399205385307986403438854794607641741222297431333075516994335205076581797834657977290147975472610689154645908269721083867968602104999234115935235017822425383725943928226126368880827912 - 42287316824261159892021153391060578577059988106872938412358798058451730981245976682179341313823822142931534963589601400526482576216798094380423992426705776819249237602033891660967790551737310220189330354387355029337921533333642518333151229949747513454440297556262406230927768693892987958715434458861114125901 + 36563906446428269368986426225080894441822759439839680035208511013892898522373054586561039658143695876357853789960301322350644459942009644275457044829965213401338185639823186730290464163077406647380338209387145606635382910877786317755621548184007050712159680125821031108204317867922419870889688879165020633371 - 61348893069895079361158059361002820656921144616089338936800545811487736615948967849541350170006376779483883844354287587675824690277918870490919551820001756338612377321628955187690665951956010997355240482553261431948171154794832447890000793761756810328628413574298213367076283894467785921230865131193573499185 + 43080199681892521001137329422229065835805094472214473428306030294675330314419396842011177108088087053532333207141986644531168021379300699254876047356958402038150674549324834580899207476818605462779466465723272318165760209827099046613885843866264488026001485467024508992035821801383829978243725942459234963288 - 28323815483648687508987696778130213147507814019327611236806955157707439941808891622628863057113098350056025203085751217970012558067581399645889853754840752139574958408850421374749882839441603815087087296197528269918971160986158268659839443436823414070024426368133887378784278930521297175187600010584378350756 + 66321259883289251334325668024116054007189936783255983130758581268073086426254074923960846969026443109744153701204359283434726130496286939121300502156158141427560561271659268971472009276417125717580712063714495867190851594378105065096509730171700531203499844014387140950251494626415129137099467726622686223344 - 55118689684894428221706111949358325892648548106475714696906761251389360725540022189098640415980464515444447690734462867838588840677582152286323653120610546929696732890300786954730867771868414477362354534980371137960900260907470515817060382491172606650385064616224966170514119615007907261543468778255686681539 + 1066128663637439695733324471174509554978187219241330003489408114739613981437605399225090384388071357850166210504630587576972506238455976476353669800534187693058109832654211454305304750816984804893945087316474339778091669484432458299557307503347256206063814472357566583124565489356537049722634649330769224257 - 26952091020831903770504245704055074596347640926474213272834672544371215546842443097978479207933272418054106150626595988991903784986075165816447134585251009511075952361557531940395034726080601401687277232902358501989981036786238987599821394185394019480791632699330964240973925834046264917082886136666486431421 + 86575793956352151432389154700656913645336471645635515201670792377001168482633015922821683431279539176485401650807615402204689522269444471259293923272648182315819747270907591595430283876752678240443108991666820637176371113990175053641867184975337375195350406359013086501156206441318400638587019464658939005590 - 80255469933742397070251469706321183003819269248162923068302019223603222402080080532951424680192836147907073442165177400363996391685197058071647817960042459161181847525076376663630661647308791422547846357424880970032294376826838969447512607715575728626344238476635456064578001397499264334237994643421951098851 + 32873531854658132249505075703913440707641333913573459480168347818638135533055101907077435942318716358468730921795673995304153301794323151976173210243608695653729261962056926189514884069674516861231972977660072006631081611335422017198670873359770299696172043866125524123452863436102233062300532351499269811841 - 53997422916388816154447725845573700332662509532607665838295613609882712833028031518278976401228276601933129459902516174883434507356701417857054110887772737534588450067102570879386121313738171619421826503179266899135620695040109332426776359412793456042791994037974899454951540105777993896423563027635034975919 + 33860292985443404810776563870073498596231230120534879019664545650256761961498071019878799288497238335352846203997461253832025465863073616938718988063171040204416691469959461679824052498069361431460403535884301587835028715999935671176319805746360488622077445726181804249408620836799441787419434568400726625476 - 91444367944275938128157388591878125582697800227509645246195448050633774492399474284220187311145880361641328148193476743958989958577806784109576693468119454601369619137900741120736128017054057668683193613407059848309843216493197542735302502534257658878015818529051593555924720652037198196689900119093361936927 + 72377247508149521244912112444088953062734587768980586235423433961721000306471518326667777881453399713378143144504143333030899272183601736858922194477639374086475788546198410096493606107391964262982684008700523055448010433090488981077241255920245164517933385598378462717076689954045068623845247038850400191202 - 35063301049815227433657492151610934676144784165424075062642627918803593314369217716643514541222798799170526357800211738228107972088196515612820019502477550259320142262084955519319699825350088275834875304607509908854949462125578162369261963307618483094503999050089510472413848231279648536429376048714930875593 + 25042068897594974494975742805002014091178010143719073629073712643794123476697031222261506197652135944371533522445207893290685332427468006711005257173056913464603749283845912852339845769910187508478979255013596868049187155253483595427157353881596441489168489944121034406771766117447438041791041084860392393457 - 15001837370043676566637847760443337412803994323526032411369323913401251178970877074974752875973869383209637733679409426207823716908902973152613919253015570200376784309906656370896024912783126466057427790204923975249873916708867107554369011766965524738950036956751473353947599128467663847738650265387719793382 + 81525986765773455229640313340117231651653996104555999934245440234130694884786568372759992559210295774670612462032281076406988070960018228780412760008757949728552447477610063207730340412830450611766358258067119353413194108779389500285405257561386731402411033300961325635398310507622868279629431708249051140611 - 71401303854684979607248849908624787579193992507426704148329767074244609248021537728100777313409370842132089522421731647204588943585444184924414324971071585613027607696658263441170985223033463076293536455834462677484920440126049010049406191175576572929686278069138060334689707793045914386553677385306266299606 + 44426073699243234535484820041449752468423474230078487916759659877400090647836628307541571868863426858931598089757322288298758178098402075394843956442800509362616954667104157327444029421291847752779003024985845431243015477988501593465912878333919402771799957583459795791467901666108389584318799235162925535727 - 55006245356789124163402602837928830048281923333920745174549902838376565480319406926694503204260843151919769733617416973115796078933327261038267629366349624501953746973429508679611524696007247826266112653397925076385534692086186958544351149205361927959923255987936134935211207774003173526853845238940634721341 + 31923940074422717494476352373332015200402822740820161968696339219620647441145116494234487594922638069698375486575677228882625103824903589042294086074324626477746759265548997091914570510026829002711767950700307238804448416686418670847472051939493897923093853527515034693634808912858754881489824692781754014437 - 68308866603593543023292090124952154436783011473664571211905341277879542318338855824584369978925843506921735925557805861600909905205309141213553443667675921571364702723297289123328557493176063099201688758862147701188273344618635856483599859685755777540227394270297305378016715008383145701124713712096292532834 + 27237811610317365273033514315517989113837165442707733865175280751612140774832220727301269845730200495995540155332192340816166601411304382078352614798841789867892245748644681425750506439154890921779518239326536083958529112187738619881633713330313058815290519034250023997598362078407882478715054424171135547383 - 66169244807741001544902200229807745647506824362848008109118641444008631641839572524463328401603804844324944277574499222611718416214640845049600064742720420763824809090989077363254935392913960594474063634651756241241586169302422058075156352989518110383448054822932076167190585090617668975122730554892836095400 + 91142958896434437662076147477267172421110818973306452195745938102043563327761575900515486310532396642011331562175330270565444317053755547119661453796237823578607074636035135055468862180034573283188007150517002604188914171043698934818380326887587265896086803712345384329234159205868092508269354328176028527926 - 79914029162765570577196425027362569598639888119557056178383043304895855808978099656546440711554362316742835517366574832063020923939054670480762287491607643317989157633019543045973053242846399772608857517932431973525594512140755559586541476278948671347191076481690491291632208274169237955139267142796993985098 + 66714502826874747528769784881896809064371006764321875822761853779447309223415491741215572282342185837822203668841934888090281868399976491180683590896570356308665588186206590344405651624320629884181077784536279437798404840437500394594305725597059240909163101003856885585413217020500605461070592507005711925427 - 53484496901167451695848473454190607420588476489094119345982749053708627428293533322962771654855019469908355610829372143062196712836982926079788455504047024544961854239504883114690948892726923233955954636272813112803793305463252263311774924615973729231980860022862242423760204754620179842090033345185560436865 + 34865155662555038321997451028060991473865175792869457939984593042775054005370580188016970030515800482126477333089481427608236547946888994409047870565821547536554763911636625226017954623812966486793511151671121966597578043729879415767907113443305948044756984518263577732971049863375302365977723954794280857908 - 74009883240158280938771294619541823115424985298862230091551058988622847475145405864327704948712361313133996558780015269539228010999618315083523798192338148213042383205245547710055071080708185870627158916556574118588564565574900965820201097809814642033633669783423361380602952546010472773976236305928667595674 + 84136696700946457922661635940410076519108218602740499823886773231943536108014198235000962978269802257519381707927315773213053352094314418207969125140302713101870075852972983399071602764723234884064452327749203636784647013219941642646152625195518779305645753148043948861959971434132410622417849386610898394105 - 34496442663850579388217176318713147246756120210830783638301465448730181223158108387989794012307921152022046832055714310669788858360042786626143575270500309332140682389020539660820135333021698331046636879280142530454524626425767961963875657791064679116264052251226873397455570313845806512949372566521308665334 + 28496127572628005173912088360779602251688127827424568958983969354608483033030237402038916566334287057676445695647477271672832420403459870658776722399210765857800876092901803512436494267329844414082697113396556854068409798006035585743111710023720836998313455839220827378160751354522574271675146502722430151319 - 92374762245237709517936185961794788687853368011392309322927839766427147850866330101708504211061044963207997052240194081457741366741367506692286548757728243159436826588293803843775946105322962054686286945877659038833637424575609525821717857054247313409035530345435945758297007589346465536514237722110198698868 + 52013290658025923595476702630343964802218905687835318683034935137823827693870419367347977219382641024379174221020046529645952091943901471847844398381222781747318682241026286730438692861924456826446006488456038690852300566202018861990828159313577083018922665283078520447251892882248828512140095085649235030758 - 1996143004129506449682879727858751262041928727127923707255865937617760422157296687057674409032556530421592321006146340716212208390859677829928303949252016410757528560579060965417045033464482478616634319768249744854743677166072042292919229211892872190412967723918492580586604695648968437427435183063220083489 + 31259836044264652937401034832278652065499951905270368177455771460287189233100572382455180424281608721574157343157920920100567478005404234931634768144482744629832510143366815453486227981096628041076251496612130304798170922609449211319563213920699418781797814694110196667373316668784389774577697518751425107025 - 31778029863039921729940173030193276090863081710438091204711741328281683963991257929975274310730123702873225778997149366398155870626561011443828018836920592037434088154335060146420216211159606493169322867076604642642284463009283006987337649645096356692238040887850139893701568213378887514874948354168346213239 + 7418198436428640930502411166422248551484818437434306251628810676052181805041018731929771612727743713238269455875008547879511441115499113120839417078820575433378255984641313407434084811687197418382797115416985665481357888648710151330427776142887063413884144405371807665146443058776057790912338817836107420833 - 50385697164572611960716829787837006393220362250732007279920706137938779616603582748341627605481133938169463659238130229428859771952380702821118517207039936858190305821994995097484382185234102633953671173656233322183478330342915188294633454264325737018035748854054932871386638743681343205569837285748242190381 + 19692718918909926595293069183650334753567231058940679583149649606569181383969257220718319941946109391575387559433878584505830672393249708517935798618960058754612749710355407214762383734446248653065018654764423641912228904549851593345837578678864861874789074382253071560957803578583969961711490882635474512603 - 4686878594144988402214046843568670781842282541888493905639963840174777530356581241953943614506259775919722707385225620956778853955145886528510045468982101038149322164126602826455212721731053221287017466053723841186016420651558906645309446294444001109529244397322865269952222420385023342500909299294842841164 + 30568027998432064142321773829903036910474816363186273603705984197504571421393282835106647195815993504265400812315449353884348220514544801275900774933107560089482827070118866266244064361143379276380094927504982040391641187560137216444763551109331776009530997289264616653193650461798752704729903183311814092161 - 87197635499961892603276593094940997526116426341991323618696996370464746074270161029942965066587493341149148139010170086393480536058042910798983093518591553968665096914756034207893191518848945125934165745685117805702411169836204265633935205544150879132907938453792363859373187137912821738000357973515122077843 + 87035326733003656071647950931307478584863118325050184059751097026622782873825973294855484214148631708210996842247252682138963398035477157923632252858479651520515782007491700648512329266411234063985884988593711937530625624986457575462590018237443660386461803747134632753436842065047599284997745520437672846074 - 40445819054327358573600232475507935432363163535844527750003889781663311162744162768295615379981832305166154201500533205645688005717030891103457730276526120030864983261570969156260535196856542961719584143559031268624844451227902592904210551810156760432377874894841037974752870362262000703110208973826556481564 + 11996948060914299991044355984360542893510437030857272170268567903460799772707214256307802116601875841699043173263994683331305638471329228729661284920100565113475864793312331197468798014402326375123496652250086371366174674012930812605838669850880405871272167926374917904039817745136020930446147471512976450624 - 12493791196607082987325697544176633565535165498129082362184455817544628018705152736537619831441899687219213084430151089968006611307673941509679365617038890639274960188933483327087531503456953804901340071484841687210589200404391920994920921696836973541290032079786322447723272199766747363152629572899169384721 + 44967556366663434451746696453481299607742830645302725049490401935310796912793175674686255693946911538966664105905707107257192092504407428376099190416494261756876187626722514131201094899793484618136063524781968588117723616498593058425506542378321466070033488278021151954577838230419676764754981355627126953514 - 30116360348374074084751074813733053108218455794427082859378878872632600763837437464984828539021620684090328655253388115982256173701798476964293879570218779538074517178269569055746234821593867339411201898687550590890812985102959120597643912311254069895016750841709579639114375642076945119912284689670383432526 + 89156540816777049938155029315096599703776854728644673313208863860567051650884480972020634432309594065152570860637300195565798700850253876059203982177081490921896136940889868939727024712456631565315177335424604727058047623967361865267594281065586353585091557017200654217400392880355768396643158365100839467379 - 33758064568299582923880841577584148186752499969724764078764220460696966275406629077707046747881498001846034123252627238003076708688454877019298255735188488910232077391385703573154067802405582020508174407558392274449675639592574786657181910585959429411091232539939178374083841166525017389200706895793763457265 + 55112094410665965144830619471237827610803621709484305124271376027623695929828835553776136731422799027529256835453097176206448081649003309506272017456816345514164793262597810538802013015989630311540524421326982861022633282932678389176951736570917438202418914735306031592881480058220275624739407238095333550300 - 25003157018086513119362016929485672028324594088489483852366962067337591073267387483932824611411289982228673278626224657439854806102609086587083524637420926203514372122953877281889712896101325904674486555922961416364253663845416719583328807962982118554550119536194237873890300985324943604256061658131376318719 + 8450826248235052141492540734097038247367666415505541023482100628937346421219542621636405070216784215690744736147492032328888685151965517102668291634750947295054573072339158384231937556964759117334785572709476313718356063105265201812019313041191602806940028230599977327372086613987057665098783357113376035604 - 72046363884909551295948056970745024536488442610126415841208650542013214226711125737374726378826915132769501006125180931081832463211071626668530605568086264250432763755969346109736080863217161457708624355814152723956223001063208377181089613098619362408043353926877017694425759609065941936755610810012864148248 + 48593915331833314636203253784545640942771666450995519336615408213710492193985917256953537714685552911040916450798251247730503633136108174229493067940256591543458219214474428031726573357976403646053811135447077965675103907271753902436493345878140964030059017118541144307629958441724364795412622293041109228683 - 14788640789998637897108124391277007289564484824516573826401213926227416108546615060247688920491010646660702209564330389675791672200089351011832685270355682516429003448604138115646496135233447479119759181197460770489939712043776442892633344637818047277465573515239704656013465597392032168568469327056746717230 + 54618589226591589980538184986108027495222350638502365420076886246142521113854924245098855242420744356860280609425300690661605595064515711047947394683632513614779482701665700224776730068441731233629995280565878488894992063662017471528342645971756237759486601867145835819778881244732845560615824514171238390493 - 91512275769496626159291271965825570590226198747124438675866301016257130401529670439182158372269724694577440904773324771825823360163935070998669176501962304736165930625770676905572280252641991374663670281503429483743236955097701288052525969594307945142153094409994021016463579794180295299295546202534365274386 + 63882907755983129981287016225503162874162065839363730057563548830081852982350386549214875289943774489794154115729266348622110569772786727146905187077225843785636922861658268067470255929945587315544053572486222073931393064967401564326399030821191643343080708723021305392914095366346636728792833625005039225175 - 60980672084576192628511644967001357041383673415313201934182934190080144651741647569784949693451177561743598533155341864493123041261462482974884893224285127668901911442332128249097682587357461505195532946074015242004599184836578466267369491382722815339211203623490233858751876806417440026409823987288440601043 + 69666561050270295510991694279519252752915146032124695199735483532958534489675007695542043369060241156711226635896717739791785030454113318958477079060080712484091686511277952598052810004640557401675427373960224654956536109975000124223773911134120945652670050890115059662491350742175472847114418560094506589881 - 29940464906277479324853088926183012855325295499971992029441257566603608969413456518361653623170216765386867698373165768756424514104242841200665244607098496624900158578589432010920436164918008194478103275515240227502135372620535288056985864723385426774216752001630254034761144233743337303970661973242628493749 + 88171971090526109570447901529357445039368867921684335302880930908896079740452229090975608118003019715387345275945010501827277499539220407518569918602976577312144282538463371832875863771467420179012410602240849044640478898257669889847961054583819462422281798265188202399599327264988695271405567375061472933963 - 91050677575867876733738461632268477445766546115858004036948594127305052624521927448751837054109923616857088274263462807577637261942016702893053786585263794725005170871821920696922271069405233244795740455449924127006816129016944284141287988612665710104600451558416325024612995169634499376331736378817009425090 + 52366008427951211915476562361740162942322802155644581894914815054910544572575519696470231923888630383060677495035662089450288160899345292228231364737206000876484407269227335924368959588694546113234007208091849300007967965344358385473833651112070039964010945382475145301970756289739584344330170948081510144650 - 15458481251793268080269101861437438478546438501996695561808068735698208611444144154584591716224535910371102718390291830294733322189400525878933747751764715103494378368333466880616289818644041318917562025404747922170569931059852108277986900936493746135717614338518796585028894787178747045836080785550298855103 + 8868818220934673009858953243554514603484955200415385051511994538684501997016100229326002874122774713855238580357506486799078678642918833795936995750889674179207464747993220649456385098928509052766555859247859879542957874023111642550090064123557692874885093364378602067521805027420547887363544291056459982251 - 43752105241979940744435266661847166914813008426839634165514069686304656711063774907887306838616538907131325695756725156429480814994159854613057059755719958307000775012582705314725278000241555876334093507339643406658912278757290817879268707043428112279467327211395595482520624084072633879907507003040025669948 + 37705209659316373362710960693108812725184272836253362923947876702810002818814290033978477631349792676633051574577855757237618765429530831498001635893052247132526261437339479427465413332380081930267268270008077365637661999801272845831590968854731451145945626417544466739175194591674267093757517056936293038923 - 53094670354988930190078167619746528519783812352443382578709028525570654709289937977967852274006651114549716981676874388656027128931159760471072905958930372886729237465859499223723422122848148087007201586377644892352522762412571896450953696671334893564293248590364879289491602726022958769134752473132751042143 + 19630139518711666078248507731919337427752618591733287663380229948987369649949179914859892650933383465876463117431040133708571198365072714355608862315330855257062503030655212674145538406621743835766119305946065637809329172690298979565737341124960969722865477913204370437505740405923004268602337615353514601101 - 36703154577454982882218654911401914279480505509627347493770599704676667342003247427421578506302492179898359211933857479180439092822622090459011927291396031417838904694440738990822732922454191736835629331504158356839737882504629674598862094381794135279327702776139584664233836697115781944449980421915741114485 + 40189626080284965896850011860182314181791040060366880806730056413183434678238171837187521653781094030265927913778804779858296443231136859181071665325368892270731989069800091036291478303596841626528317899942222863754330351855334413385033843621736938750121515536226035851391381294940604875127287583722970781009 - 77625816871134309297788840624360411214503630348416802188471829704216696629899412819280971191123504582660261848142640464582463422294834886191718165161610243176348042909391426863399840913049104431590122507848377750732459928035134374113521770090235697594444197018815713061058861522250887714223079392686030615006 + 81963336618466269367702097450137140992942896044154140380285516894017359834967016903797199229679500651150352671211614562873614471850944589839789931135041042827339592422375906335006301269648444738846635461646804999998523798592420718076914223907356336668961550726080331953545049067401529639099959624752240588364 - 14319997295794758083646521024987308220438301813654239220508684117702625495946084958005995689431435238620968149991548166507554983552284793288837549892383667264167079289868969312736676044870877207512468744528258588539003943303400743648617368382779120740281727317124670552556664302395994790944640923257580783874 + 25366329778776221278642925393020366016232981198927824803586078909235993575715789735212017149449066084061908724589546305913965182242319154942456773425094269275596487810201974336192172714731256780992882057288308863615346362508240799959430088035686631027914497421429005820381933176292526783672639772045983842876 - 30445459440984131505381295973991795446365895148741964066644024521979904760853001241161890036388705147746903999297000832498821147956493139756276928749492433488047719330564636851832674816025235365761581216114576518978464807194226829988449438308995337610355727660795924347580167476160288265968804833748181222521 + 9429674409482458861372323797449945219871911902772539412857228980749651651250291919510805984614140538499731762527744210673970099432762707914944457156272365526115419048327056730726132508780038729503345578077800276982604352073320147697190303168218024508837246460967574562443858732019128542989950939789464811294 - 51522578982810130175332305137655817598895213623276308642384323566641451978498221157580681322708944653998368946549162499819650650563440571355048447189374108087980059029544465822025881073918532399692577543282468829593019471645980097770436170310500681672456943033454311451832603815916449974289081644188588549954 + 28964793715482205248060950415768048981875125849775899598583023888429600396094409938765312899412176621966960110498378344782307992059130909969700908678635052400412166611582873587175232772552371361131901775727714348642148157608629912724435857134060865849056064273242939733236152929790631908018524516436795825315 - 88506053729696137603491670913693337926753553614960728227116523113749302740836268513768287714700263778708932278226256411582003073906884087620908996132505438142834538993156548308212129621567307934363626864022305214067515945814541790723491971555218341893183818446185777529119513993359041754714516273676325927332 + 25587748733899799385303515731085297284543693647674386549288146150759880555159293074573646173439972523131757011722310891199817322437367903538124659386380929154129774125574306708961807881640596610174101589592591209372136834133090377998921357663325049453797852128298128756952037289779748937899472434076577580830 - 36043463635152271865950544072267087139028043681798270147102936853839708674339871318973076135836612719241405133137186046186412727891965511481364861519666621397992293174816773860984635789065285529090125084589748356063489812484851516902003070117196491791261024526044157690791613136813804111624956429854587045542 + 53961802121418614544740133207002449969005516033346686497055641485345573116831334321281218328453991771487901582265721761911420909256613640826608858580632134990439490045752627563926066892404571967127563631937055379978290040416972152819014134123492860319342760710390668293659538864192769544992544134216597461034 - 10707884958485376687440877711788021586603765439405534362940081945223677974977958704676987491406025894911071480427248239250162018742659782235589910332074826197055225549730547608776953554560501446791942761366207336152755509121893427804709259728542245084282327663165508215266764882788555249987353952061150286735 + 72433571209564656202005067118309237174102710118935347835361621401926918677881024903002519380195596747727426893408172622352196927238733604746239663462463435092669120863458194998818188252712830211002413234556115058792795855231457960519604582545187669950542311412565331618365859587962074197200388392536165821402 - 61912745129968124093670488654681926629364340111352575130508130899445851014055599598160880872169423685269783749188718604010590961318222770575214137301180364918642437638234432320337262353155054265901674204645177040102834072894024092503778932881094095457373892936967168601766977657508451812298673963295206092950 + 12784644322794248376713957528208854199472512299069387095273576879156649208418472207373984089660541867729278275818527730524631255703229555892773038962870105341366301360709458697855585961899371504286536467641039593485640023444945583538260332496274156101682119519711253019104696195182096838724792845656747836227 - 68672931664560081162058111420739936361234764718745505712419704147153194636256858011887538142749176911992139320605069014432040374429811700571100945627545770783180806716745012471013922456611258729903780850231876440596030091358800467693358143034479689995830681646385072997335678193825070177866899869073850950933 + 37595058772570546475308333584912452705404829560457409443325387890571155020112844872323662507696448630953700750087499866576612211011747805417642190498903362703166021952087351856902659068951985369475556388843097234628886699597090050912878728444251832363724571092117732341033265120862289578743292122210635711740 - 58716606881737333963291219285848400346523447340428358576993068506435308985796670337479501463336959061832975977218393571522808220336977302494528366658283885454479456423871175286338052617487902680579872533840433593171131690803590339149129367106516850118432052327021007252326873951578740129656636907752802660288 + 5113868334646434441518942188950636148373352370332384525497808807478382478809339539285229588183481167781706207079811521662666874864592064911058122246056227304509619440902794414615464909678104054154702617413171234590542459279746948762292485431776780578149524358614466649126411609620398421163274668628686532395 - 58929178872981281046586827919303600629809671105877281669907576261877388617748377653144135608679620456687044682806963490868230524509621808338868900445000783214666281228246469835921001580281109462826789356890302721300434341866058730351499147192965898495501910577770549499835265782389751387666542232328783931152 + 81676154981447752018961995697141481799632837928977801406725886720728978781712848004394037402573843738495848695926718702854425825752358025194576489813195574161910037281343912373132244947418596453303138000113590529242926923805470157077477041626331016152216777651630278202200294722888575077600100671522912546406 - 80575131492071101216718839855504217544553977199219860934283874030750005466840206062314692676007912379599192002016331203630129061669588218065629649154039392998500340912234202187151307549217554455367883676929562902828804002620359250675693186579060476455913376407900500431358316495944583674487961063604885043687 + 60624930070171402770366913473817741585029609501624239838885771730606696997289732702520358313523837385324524158780745842053030359774398807835356163599536999413385550513392167856758697603673665881083971419535370164974512713719709694463056984762187124991854471506820630112755295207241592395362177742848919413107 - 29817377894490068998340600145339161966034539428372621979843467911338622366522467569863872412068657255543566213591599203522986315672005545768464975247427309439923856338313021754425804717888286476523319427339724185948286727990984536947837449309031912483991151683560430818316469619636744849119707044829827169325 + 25149801323159299882869501286150542600902471124064095002852361585553913511341562854278745334871553377914204106038510358497781167051745474311945208294307337677990427759092536239124415110929456479612147604443679439842313816258811316969149042439471868411330184731576149497940008762855718050104272517815535107729 - 65070480242056853159693379748197473584513882606525163982838725985275106567376077670156830249089233151118670714811330020902202174944318808235219855191099719058435535734789442524916887446791893489615503361732410226431703978271889848858220062167142266241887740443994179746859617440843433478155392992907429912605 + 14774217006582303397530752384574777854770708032261114464817786718326337429265829781957399273491352575449338893682727253276452238021793003035437795536306986429698516447134019768936793209745835381773302501956717429418372985507169814960887170820375578102517670092813050251684372521841459479749960534767084191071 - 17325207366473400399182842480532144403125737011523371469150337069550264269153597513538485681552646326980976500710983580291909389018417917217563254807955649660213646404524285499555748253172733611669474098141315273613265748450616783112592611593745306921863865511659746530009999339628154502449731692826053070696 + 7225802434387444974362587073715498362532393113150763324514343817602992603511504980268363912478651868783431737729274777053646814742462443071181872910994328512856527368847283541475514493480955425484510523149922223486325249492691799723100533975918522408914204081477856580106205262393289749833550404115789691734 - 42684392841162406448291305301522618447015015573237651580468933000645284258791361375024046750134262044699335675803598077730568703336397129146536792066635815586354889250073875839778614343268626900464564787779254363316362933159598083864742189162867227373070854525855665643656243550044623588844556529538529080324 + 62115809720901819596231552455369522366551258581738359727734738140112051594047874820499445060403765748733175804742868696309465167686190931950595450144594644060485639778104286064250384394763317267890117241960802693053631169407573554006582052986153727355248272514672700775832630253351658673902324313363596891773 - 91005772286375990317592144489413712058598111147202612571875722993400254444176727263257751801663742556914603244103813618333174300778800455656116211787181856876682697884118087628471099587476671481071351524073356868797360009753388377502191547603626963147857664272599017309165997760584592516925375549266362063665 + 60002799050644179576827694536734251774845095888538303192972394394383492963310876506763619586704769709841994652378293848314396465104311835558557862461129242452279950439969621800683307287006357394027993108692410733978475176787740407894120842259036412551604131879413203652544944656774202222134602899892265917977 - 92232532318477928728763901583599639564580666331880742322212510260435257082584012869508110881785535802052018704842668555664522853155563251767835802002127771665532317802445427659118345403624510773411286318200849926090801688367238629886388840941891256040495598222085485029007684263121342683702069972501343117999 + 79594889091929009515458580576266391978235480581705310808683730442587211558485513840567369850387985758420085023196238801527261347194214737369160822870193956091797065518693891133164097990819881403310681154039061227438838120121843880013000496164261152716106859809948835177161039995305482241155844138411085739287 - 84122269146786451605870952112682344738184642163923498837763805075183421603505808528874324108304179441280833623516670232550945078000882678677849188426678676655148717925002939646760518026025074833914806067742144073039113497656800010615374865312462670176960037350214195329367416920591574111077120860837536706896 + 12554496860582268897306996313327516969162420865035920928846776531899036520083724528507093003145009929174732866200842254172864005448273669027126227508248638124954148077929543826137700475027087045381072762184810514212113395278034044038298600567375250859373428515498810988958221568821825409022910170654162586046 - 2590572152853772438834775906657728553512394679333958875653814108870172091038081397080831356137228227987179885904806396760204820903675622261937434843739220374220768001302443002202728409272790870447570136466375609992991451246291174478614848012679967984625557019332916052777999595490467453049021639553935844410 + 21580565234470678075962524772644370354956683855070787707697106874785949363177600351213081010091477248198561018157611237965058886706023646869101337100570523884100127727767089642730691305604630147837255121675736418801434215210555643542416440146611547052671534705725079655682503678286453090984782823709457316554 - 41416903769497232863319083057206894509450179015053897020400465255967768433499212093965124458994546326225742152182068899603973565677682737208433609667954533332596878536978199674786847423331778628488474244737796709935948040664832640953698953737328999405214494968252170917547589623909119544569045445898903541008 + 10776520986804701126334703233244780837932866342940506350402334239362838103388606884741424241297400553657065918420014422125050939892548302781140238821450029915547338628282774474706073030561689139962457260246813812851754423593822542672886550347004477241088221921017375149913189155893361687923683594211190875587 - 92332659561420745304184249168218534281964118052974214351890257632734699599205756752521092151455998066683018845857691588487956109444006454969034754188731800329289216250862610800073664646587536979400872395479980175609323879603236837147865130926197668031960999561400861706406182020775286972386507737063616713577 + 73836521600655564869113497708537883785242803736820018598997426343615002968918599333922984345494662110954264790714104411440462330775893231889468506829423551477439109380397713662415367246046355519475465130698290197037034870890238146740150407156585204671435338716784933022191253844633851606046931074779973439731 - 5860065414874221645347003726202425232745608516315534424823692614532777432724515010304121147307335014752348657370282725501950286816020126238391032324113425333518732798983147548398259020975592025544775284896731857291542448060399080112741188399152322991101527586341929126617562006707565045329278132851237397588 + 52471459895290331860150238728890408422848189937618699951820932766111933989483925639210389141951137641511307000583909117332039708748537172861233625679998604475352052846194983257780321567996934304965613071501732986331639931271230327686858595996372292112194547209030977926432366678707768165820137410667041776846 - 39706612449689286177846972325854676836251029674869597078963938951743644604861274467558468841237669267000008837782328462379328128170955295781220139850006433438188461504097895295975797202257584962057145953670115310700433816193083528857513535910358654211869394862397767992119016231155744922989119549086550729974 + 85428404766439811180969986970602017597698269934841895564912836464100434059639844872545837354378095146758982541511397442435969444314171412147889788949133031332470298743147476513619908915242643444649440334554791945950672755012615704039998141303392516740424233738300770416999350734202123327205630806084712187765 - 12296329121571460186537397103024223524973164450599877411075120753481785347011889377670070705504729559180075609054432779739311126398232883198502663298907842230267505419280558000528463936512581605103943345097471515957447356760782991828624632597824490698195819694154990148161108835566429111170076359553097448858 + 40352618087929755527500113812009238013543774893546102644500358392890557370153318331448837611878211726520666058035964843416742452356078758164143973636796637463332398186518541228316046140338650679118588973501259997240502387481412434536073439479524345399725631273341990298738634154493938021082755852130247129875 - 80563229235955997019050860455945356774785905529600049373373270381072714294669544377315562653714035892544148533437862881460121125115655779618725342678357206538828857499039493870133743891548517422640874449225528987514028265231026636943125564852834796981733091247817112333775887003976460265982707002090840712190 + 64891783131079979255229624300079718571226148696283492644460899580329191619386181263060849576790053854636162038018961104584525634822390727041001607722559721729637712834046770568705568389496602121043820816070441177734060187512435709257336344903628639517536063872999022949155345290693252073252888104827414740138 - 33647427175250429370810322713384893444786204065277441730503265180200739031022320693179575182319723336456569852708186423133068786743373282345333117975652578583755497600605063483267746392824975665963734761531609346954725631975056435822237836946165266811016814636996712036468149940952472980776021576370926235437 + 60609123906929505986396557679091575622953016455087990670758759559575101596766899361452265803192207277475897397705982334135261660796626693149224009472728368355480763241682132162656906962398354106913089606128751541272210257813140147147591534797251227250994320794557637493871897918588773556832188935108995332886 - 27504322609505199921865439774705710832115336873247562974097492969912325453361189382378690713906709193320255642408039490626573023068563941124644215370254588770626552087600801517396116212732789035649195496371694867811243890864602252691365338936055155402867524175849581232261315715595588300452226391422449735116 + 86136468700928516056456153655598751781835775929528446473660030339722237782675566902077688295064748581066566675643457223160680634781652660938718275823143311028054177909262265705528311989122230013451546651971308389579377805207369199283620562947474795334023126967899833026118975832554472283501110261959348601906 - 59584956076943809688491769141152598000118192587265608475613515028271923768605599086631424562449587071264550213158789273409225734223080338254711755393160419851798409416263204192781602563212281510078769124268393998589993621532500610066185778414541282584641889271309917253011939468391867677529557328439183188266 + 43333597449296639599632229185811574204079010076891058196941498155903437555166058863616285248218950766609258614296931762936052217457189810303134899843057317024629425185431645960040877032465159603186700508725493227199675102878468988356590747350696401915925851409173087812131683042784878935108768158344627440239 - 24327879121116101131569137500735329030797273235043287657081938355252770199828840472913220345497872649652992704934104356601653253960456798400940508148166692548672651904491240782911800769882121832224238389535333743379561050388845214062337250402047988267169945273434569943300968979773241093322117059829875691602 + 79858181570000525624325370930808991151218283503330355262048444350619344362607781415368310037923026419356792394453119432013019615552491142834409918032850600123670893436063606959774669839645622517961459513726641415531872255289227920596058363244643691008440147226080034877681877072716659842330419722606633841326 - 3410462344353081284079381065232270720159013783824056979047479322748624076963242100229827899686630492210844574767143570966744065481012207656987983982488028657356596087065034027160947109795523320104412770466552781648188568069251678541007833220813371492648638081612697569810534021958188897084955138031043092050 + 78241692711697791977857578631220964577120067649583069087630790682482408412142283684133490954778741590913709017374789856665086112633767128917085354195868585660642230441103685829890386909042252453301789705270278352894154876142772746180269470254443420817852568907483728601119885905865061261301323513393596938299 - 67471637242609192227511124905444880162264789459426027200480296192330712715937260337323579017134345636159914122779080904343311061406312936596537431887400988416420791945699808480969953647104719093033610635766892303431625760524878711229536310230054535465030363106937178885055383375991929700090599364825645379875 + 35765907747478755019080260535127524880492798139904425163979173054104303186174499455796984132001987722974229595229460902602263705339850934718350947990176233808540590961317939002354950394753076402446001403419908711252115407852292643358669756698791408410088023888272885066268888979931294999131587433950401697479 - 80421163486307066861677358773082587515093609967686450780616866798930708981355292980725254725425352954248846380169219307287778266900135977375067512554487748191656548419733731283979799175971850929325706231070711433571689293974832236997449160968332016545276756859947288311548036037388616688981239116422182492539 + 541001486903889310015954664884893954278113625132682996002603483397854531238161051517736958485797928553154630776054092591991993703264813100020510318387231120021545527663995811623984082008395764739462666315122033901992719941516435844498566093345664313118861929758105372119026363235173475228961578994615160788 - 87396304863053784695320764538252180355543302519862120045686523777908165665391977155417293762948441106781346199170373376871942871702294264733335113941598521387660929076163798559494977833444112794067063991062501276491244687574578744557141440068747812406407600932338632516803356602493608581971468079193688524800 + 89680166310172533856271586870927681275940657361969444515306914480934655796157556231951709680740649661395062347718449232804169011252250451555874929971627377918988082232530749183529656895932962989962696910281467561114878917172039233386322608537656771600558400113642258747026328492672791635846835962558067579011 - 42734519896902931869315766158972719776464368369234228394811844581637074762773965665053038454247265994166734068030433826915293245748970870323993096403592575110257699898684888826345670067149196079508069670337999586218552847054764428582997692622255474583397459396994813131094751385320560655087166526588376674604 + 73786913476616856586737241668772410883676700989571248624486484195696524270004166127416819989406929766823993557592586562019305344519406411570553998157125117490700438560695738573176964435778552619277718166786318558052755778463404247622316560890391600066321567195360609883911726996760254917570949076332855608988 - 25500785878799354103092044755052035208556564701438303873917048839678424750209427526742555391442328438093284731338947806050487179690669652114591863054669040586695343430469286478917851891509033333474411252181012029463589923322404142909636917917784059404409580908279051921510012018511287436244071381531021084757 + 77530289512313274582810760084743184019388750444039636010835420889972640495855469243767258398750115579578661572662919510307898425969871502613238735033825358134774461559812684967733540560715814328739544552576096919243665643118600562880544714999039931982906236435492021246049557703648377609197962676408070307746 - 64716897089950655051294002935332705035697696009299352011971402260410584464483304712832856197494682414236070763456445215400547876055238723781137300200017564354363892360838905161276085548632680586830278941360348481243672102530299702390768343488558623904430559723167334676312558303703199607625032311840897475303 + 19816107621887843034493446557953385369726454222719531526617269944350131404533662031144004275439148569272301801022496673810058785609011881586404137788738870681886311464210719972661252723925514675331491385018117313946557736082468924903961262679707703255227646952708084416825528469916900844751084290589201796359 - 11661821983467927391463792432866807960388584399677991866512787033083901537061067394131011188113793005731906829937483370738606378970018591176054688384542767694770651965398946121765984572753514641440436459018436880795180848258154213005073727139065756544451333749167441376904801431017885739929073985047148362606 + 24057921116629200961301870159205253441938319008937540339719971202339339540808109327902343500047178905498939679675841561537163535960730376642281574802050279999795048481903438945498724117920427440509604303422314778468262328352068542442363021512098199744085180443156235605584192167164500397504802572280245899193 - 94691764582257983839923644007155383694174217518936148143909395670706401320245347669235618582877720133295078875786414917859881976900167886573476835019545961252473163141712566422908036959587522982189390106587252004730686066202567463366257856859314447106068656024623374805772065686454258218676067741499969424729 + 83604542162871807123149506526390665479421800251766810610797108683255966635044754178283040692303902603913835211671774149751601653430844832579029555996434294843920320560978117186297318097313009117337117116936739054172006407585624343394139165272410883435790253440487673787739547970299531038562779198985594996688 - 60131588698087055020499660125609944433985589624376226666507487083092352125601950661577407292431429576051815203238415497762401259858229767272287404187620872557202133381377274678262451422792015953083458154653652303174415089433652090592292357058043178861059076529856188949570914223428225971240246824034250789522 + 3247682502768312786088855452763168797608955980501826237209517947652999695755825749580702038207418361015367408264681308431336177223111965236801077993351432851096393424643380204330687779228403660014226876617024877792689223986380347239863584697977878241350848445772527771210719308052484802654721350895083569846 - 72062137011388767555925954670102618334301366080882098928820506044895795194550295408069515316719866905358273390683472238910342363825866872344633314805543031957038943372230869951163590330637443643367135756956532569984405701346905794615391410197289751928623655591347677563687000149369369480072670040059005570207 + 91449858827660772506606299093826744000849077349074475446593643904312684795574894381796265250269391823543298964708390508959498882407192872076394646410399671492941411087575535956895942519687887010218646427014327281413155168349840087689648856504010148706534839740127296544057449294396399069054576769269085633940 - 75814983625630500852576699533366871637838766512595298786970203148886727146847317109425148045659665062805554696964571285522679504145294050321101671219543639422762608831794009548364154000730356585978539977270946870120674458019844761804679923216196688196646450366668963612096147732079608469908497448483590372200 + 85031553662012035866869874273850835408143938380379624992972049496916388329951335085544552296193704762958764772708133760545354902064250145341605972926450321003244943891953512582292512155773155275792621584224660137329904699396155899972348867916573710424820366480303807034814296001724275666738499185158285353948 - 26496903718893623051010066479194123472801314345910806381070883108042556718089481634394941411696390445473365985023837477217435740246198109596809274832965069681362704664162364360585812007662632044935510735937099852458324975996560500178313345811823783662133915186156420099133690047560275918260008863110499725736 + 45641194674959635500978868824865097300951511180606330285549433336376655600410873009498815154309502452409994351360003374963939529435296922719606613813267922400042898384932574218428120188873382086483689253660249709030618279934793342788895120613950144923900968438810538013725313118532607057460643414670156452246 - 32672047070366985928791198661444755141392465744777057904542505581929445885618277949671762976530239627478401620798976392572403377213712103630298992412990507639215785370669735557663681694981259543543914014346661716450001457963236071497806450456712468695731015504802622188211343633520520806142967491685403697475 + 15305866739863125854323725488774181350426937057021836999411614412129859663350809100975171822918834899987174274438856549204443666599570150425909575095786836190633851811001746797459050359598438020993347064992319401324970749156239197119522568139959555599261029870413645416544728877610065336371621629416609069294 - 15810451674526045909739019898276058024403068740315802326566525638840465244539755840932704412500316970625047036796549190860534716107009964939320857896100956771462880647602144895029817848445567110532514633425460723486992641767127515803981723980990189727774778083767280575880149890753548828965934217864464090070 + 90322230104698511402063143614424027459968399658383971003260734289245570901221910852178828919700244869304626642544122057152476567144204417233237952200058824853929640809840285167877219655505468768824454448889734481447987663371961529423855095326392820439837178628088828656640292287834914451904774085652658929026 - 146148585524251724400220224806046013103412101875142120399428982332226131597549397312981911060022303976718519019804654037243992542838079984288764735854449896608760255122627362075723006953859689222961779042111566086744353405885698780179084655275859924227253212690587997565475151624895132707429242542317971955 + 70775407497782851965257260196743148807067326767805668786315062604759878159908275822542108583018067877897955036883252754705443078541561953281777995457705360680932926233634722660024363645002999882923453671237271288108320564728800240648829269715548238242983697837851122602283250848173290463467112812100418987442 - 56248001788243110299858573420666823408421506551162853192240352546899010917898287399870279943742020346737755886440841383115409788959709603357846396886018950800339788310654822558560134178440787579295087131085670708355096446016269302346087364500869543669962457356640338363512116487379552990738731490830669512177 + 47196580280748016906113266779525356831986711943289936401369759026591638059234620846152583968902155419752119927308662224146252825467819256852025500476151212537514704158059870352601914861361262275402795793639978478269390834649630706783286393323789053167800970332633300864794310184075383287464127733205536191246 - 50244908385552333458036264534431416305586888009828370096179365169977156456152301080915938805706634941256385180424025450300133792956677620707680864794656502045466468886169794522324546207713759874024049860640269313051590787552800410787159268297174296198951320334688427747668273697492462929406794688394708999448 + 10378972820857313852361637880214497834903693314351043499159840108895697356577911461632671144311716919194742249235756740596937393501186272104064438188926003237600991591171574281426933975718924265321856276171406984941546026498944906854973362910607653486274703248634594818605433492757659895776521495532204593984 - 19985394147107664362465036751122966260814081028077033300453894218296525608599813743680919874802198898343177391685638313343037254877496070325706522693057817569532511630582410315927497398244810619245365791297983265676801474034208245097619978517116533742096132124985896946173536942900899245389650498806633323162 + 38666518867217938541669026376007868922154380374567864769943332819713537054823277421958143380428595565799553275975316870969513859173211272734450046222025065373384760129525972298717605418689255458639968237833954823815452315104549815118053351975631775345341671024217715359807406435343742793434284760960254629078 - 41689918728271725469314352136066112098232474785222905750530882100392962085510657705865207798631217718341294146296500373988331362892669122910903121097611422637466947742528706185630394797151948868314197435328039081822223553408726136350730920972811644754653980230725859454286365364356241796740007578398279549901 + 80920719070843135316545579371785527074669035911449278674621233561470115272386847681726184917679860529398926221917893192769280579023843951642902840778927605165904461208347659731295083535573632222093160496298241092857391941258978483801348750309000677538579979070403147971037320778420326004111736516075148728494 - 65823582279088226222157165836147573267810949252047986523009637132472259268280625821849248569218147068985715758390481563255807983702633134657645136159825560845126791665518257208865151458289494010642363254782472056601653060503349972937216804589290334800033389762330008721931560267944530722467501672433314459647 + 69792921035512350814142040651491273032825863095350980802977576691095267454967466548188749510350394561014788191181080923720601135255847917666579235688624542313567226528202240018638850813256170822350279887651278296389269766928581959738874839405604235259747589589092468754642693294511429810356968449950631603340 - 71723493536912758504779803093187682291615513021205329329582093419159308380477091141564206568467973480578433534019635248940933489791888278705666354237951087126224595991249920933244004554889081631879904126813286608166328412965946883255967238256458259417944004913825021190764631501841201029412133533414485349267 + 46427957621296833763542826478061626305974191675917150549322007384193667368416495227904654573491914644214953763863573205383171669468318521991130783127895516265950714138209775742365984688235051886744539584163878586905831394137999588554651499096043989884826020488907220804000035477127753345089083479779912375916 - 88491008559242039072821919619077307934553589362265680749296483686150708609308559212246278024575496692920276382714258402338765494742393513980119990020967063484059975265088229600954320026813647302269641159546095969610819566165586555981580653367550493180049549824629761319032367966322310154249898058446932099030 + 54582305528798478185356279560099527726020920643034609543288810441066223720759604112898780874145517000275549770186837658293428539171570093649482611275166851130981719853520783064974993759508809476758257207104208716944389079945195335035398624788159472162610465793107857313624561971075285473722984661518924922877 - 3143227541893145331511140439650802429595415859746923778464532167628424168651052141009275529645429234264080094991993726154884625243231744822773414654893228535449473690348669294124152648640671308041443574765908816949353717242234761506132471569007494343528865404007323996434308903865382935372379979106240199920 + 26786437000566884767095298304109859389050315968514302644394492480734890152261172209046274216559488955360172206778134290086475239173139010019529521645298198463262591062849792014777029578316201503366755667476296772225253612977571505954963831338552228233353714517628276652561457276305234298289664693412363999150 - 3719051998406234976812389048415851365041438573181819218746544422001650782871627523106633359255734976636320989956295170783805246586625096479667879039294367097824951870981423583513484805455690557471267121104254116479276733396924183066813402003040010309706109719785086793725627909353332435878413055380747355148 + 25732411587718896623746613825617556273185620858776316771001351475857588304763715004122242461999754655173568921620519867855835396731783209219909824576781883854028151231751641941638155633747667461401083139571619349348490939351442541159768246475904467911268822605722116014235580674109152587292527978129427528264 - 21445189399165113757859743582383840733715158921291316556619803410473638500569988221545237527226015689232322569612356325573889665933643430681632220550877525331485908639548933948196068216214063283075599114821182581514419108520469179451130056022378553340526756369392100602679984024810868446320570472122976283899 + 38279790260545698453349199090766444231444710470292993704029834542705114585488120886725971183988598816980874778899696791010896883524532473633879351709157180427158242741119776747962743465684369089338759807488456582204872818731582207742746509270485404662514266352957194619575185459612140372368972541059505381664 - 16494010742405683513470417799808346656439259360500512036568698177199381245006195042636827781496986078894681557004499666493207688040860367048244462450411700986492672496700947124217067503440300986512728310438169751483723791080561894908773892229100806089568679157237846883140648822853182690188606835528747114 + 15468703663606750795638052546369661837790344825301954506966859852984263513199534119336336783006913329225896155769400210963703611851049100844317823768070516726962277405706349012803799209134148335699037524676281671745857616743619233035027802447006064580201781359748607701865647233424826038137967949454507830397 - 42048961145875899005039298804351554489756827707873216945428815956702170197503856413955839943360010368415129180648253729873283722881535478873160859242686224700415008034068823463774722650923167479072700033946700415251159439563451438133191841717027452151265687044945194049353132141979165222025554502986517877105 + 83493546790438576037793239863086721177322311484938888608845383999849632196053491190850386288955668037396151130526496454272060651167503345361259135730310997461947676247915354839064288969601999934092999492922118647654396055425124869506092707866122757344173917336028354637877566459415472106339069311183615500334 - 68253835766576631537205516172297918269010241694120181560864664326686790130245776972719832669519443904816126071073892332296487120774815250507456042943565097770318393535473024001279506341727440869540872596525203020112308607098561563693266718918127148659839600576809846211001618472075817619735617932966760190672 + 23699296006959261875761707023292817742792294256001813514765143467410632596317459471372190608232763768706465288551738723061000537000669005782192730202515099452566522602429633322461377878945555614403591091388442323826074612098701152336440962927578470191235355662181069073330766115141746859089137355304426534098 - 24453100228355734098159111408588556675968247814702489970568955663686235887672994382537074395672457985366685849702205923926688718292088046215336620254598375367148610122311831222734123698873606143212908378324970702243200572204383258493613905651626923502781884443169523890571826319631539844872409593233373033790 + 13916569547095743271076169127877428526609597423705392978036420540863979564923509690460160840277987684804883456296046331098051389107296480381562147471575870200424201300567600255377529818474562032545475539601643421444028236041766261282481762841476279214524016433744329240206798546340320181090160625612487512045 - 10472751506767403408870507886655692369639950940012314255263905610810321037384313959529694999568925691651110139280284752979225379831704553140590849134327843418314127860643497945561608362820564090593908889851543873860611141539898804389101867941478417236231726467485232821086090880007804879733443563483749710815 + 47435859723528312135322723663722814313745874376653130217878439943901317756606020141683962329418031409821284218256292968832652670523401028924601277526768890630671137331764679108248717127497627438211169834224322845054941262109251943866403531887923353735144906236437498093026453857238201694913185597356579646 - 59131951354333904701206520877371432275418831365658597903321307732584756480984466274000197468027292206736815542333078049957424341439280425320530720596617000422454670555874760544723681650139564512257876835260186232591546145083006176254656543517619120958273684161564177672267905885853052210347197933571958093463 + 58382885201270311299289201365741362547565992124674674069696734307695325909260702909173259074607884289313821937399582407756216433868311225691612578929016213410495760671085528202376267869883559681075095801268345635245523224480132742386001438331612808474129986995996525386456217740912396052232953220191061094451 - 24472662212730325739445423157117823080451516544900956586911105642297745503837170451564740594367529450197056878711232561494205675746099080405604491965422164005296001208993043958221370605719952917573617593310820201251387344752373333601580734440579385832137805738695564713538337741207226334755548438641596383886 + 26204470133427023419699857890152620990083637211905745490146899892685792918880717163782664319271581717661335199201073715420610890606675430286002468238519217589055103690350419323453481859175352761311705259422086003040969133227294110084294837986232675875943460679959429109444275069194937475671267433518235612890 - 79134119915954340298148039307343467594632430888598467126732966575133246670842433296607213723127922524352408028168319845628332723415134678374482990926042402810183304856273578949269096233621559442995714547436462954744641270479148480698283501141497298632046355517077793649719321542448539800576656091306822945679 + 64564521325702215762030601637999068796030014884015350016436472443632641805239187965415513432028124729606471074553690777241723428826609435117670939898961870863316342495922866036685664477025347629496618950625764055752387480434561610403620315441300328729672090493798622146162095427612735632693892086318512706585 - 82389145879804255590242111987400536459142803839593136248448202057544725718349723879876656774492590536047973555869355212659571936420132696150816618172776569995977508141618624688257300166271564359474199269348042796062818989639892129952418392378426326855988237622033937233561632510218651073961879768198106729679 + 34291477590066721493134971652446290569672213312572762284023875979241429847552010934663238655943052362738859084005056794450032309356653462795623141286597176782216943313915031217703725014126796042791986974119454102818761778199287692941285391516515658539977049384459587283698758490965805484130527121496996832428 - 65861019438271792329006057129015578319361125975183533068680372519917556823900742722511507471693454767600582792167161421459379224107020171163540109461481404154578593136975165016159677151176535550469655376131577107689031570081019149497837075178118063884749646200898466912195089915451983897600190262926964312692 + 68698000981487113285963134281187464955010320845154595193255306064956893001233304572376290752464560307886969461555000414491407696178436464576091102964634078207057016346812791274331406019060263124191885471048704953285892567061102822281380461182868048035485656133699368105854388559479273427485350688815610528137 - 91694889001914615136114738023504658630609044778005243096992739666058469833481931851063314079188803554784485204042793834308181837018659094859375679168669740325363352329239925822954582762585335479137289441181348925462199754505528791162240976876359814687858836895214402943471912260919073915126390258634527662716 + 87752661323670380071464764806211379753080332799541711963599455551407269288089321065557635075504382906362450277697461804337122207480769478391062121224948666354963240280683887207295035780229865779510820396920743387094549494423332074319896156599534071255751721110167993501403816001623860086187143818594099664883 - 61581011702276453743563004189363641321540067149923348585002869467259924488128205367738316160940586124342327080895593033375233946781717518787760871257173057618483569162144197107967408860739360507905831535545984116308681055134018503048859558463274343186124686275553656913456323009489210982636335546065761596496 + 69678901520379772857326288550900032665254351036077766698417866271562591815898625630864712692347939756617175846974568675062721812652623516151370542075761129874965468122941637524659113761901690471965238534470087061056806851382393108520319584511701405958881876365138426923346237447736160372915750690817433964766 - 66252898475608344407417414051801207668893879174800605944194777889233886322338695219143687500368279822338880712761455785119808850016739222089933877018283659389997075192306987298517362828459239784607789934491511381583650705276572986044838901797138220878699470877197355152507732118997280715828739996109536660209 + 36919430678573181835720040660144707378204244209188097542226021686643716983476040850893405971333003154918961310722849679436606285326607794462953052777931747092025252019858539440431625383269961166715280890458076613874241344597960498547571366977555649643844668970650771263727932944246942175267147696075711779094 - 30721638906247405315797871148844997982086406544151119579606406832330788977350098741785999909404679032965285330938235162269769463725147376371024004754539053726655233719093087883000118143506929047432001038626397427578688620772775846723605079104087447569131129055547637976698410373362318203371459530136278476812 + 67704500230488015214169603096598643445590420060542172219272965693513807453478272677410132610621346217546113593746701214704192982380158802740739579479679166682005524435729627218636578348426695538132066079430029192109279799253621498330951236212375297426060412288583889122191842547682993189871297350991387852953 - 88821295825113727873065335535290376381132978259864061061163964603775468037352087367469481222726449639092880179440877049975267536579353801499882347145280106125657424754454985887469011256002038147915562909986457032955999576150186467436269377712581518011715870834483747760520580721258421621211300471267441121947 + 81507119371035350619721960932085988635833379392300820716413590369876312974577861030341197320209606754792450808938776282854150776366459680253866269459514048009347691101276611870359333528968750152933715712228273189719180027633669019557096991792551714271935521451096954679598551393776795458405564708318284356796 - 35310514003873703436692395670081709958208958805107686448735266754213412214283043870367069866993142536691060256777413824078315681333912669372381005389738820841128720911788634468127129064369325112072586775460008391505633706581168439448951811756066871796825229005632755596660591249716814342507279506442110410202 + 68625431385257516826941150237732416081708649762523159209096620417656676755835257088408885816106462185675278495237449171267938175536450694632488201146252486592753909718360477251455541023721094488964613352633750034305114397441290757333315119904702321585153360249027053494219403133563607412594340403560353334300 - 79409778082508924842841670511572601738619756109518021896951748242307115255778670677000239229808800082527788748909711731676026662077636012903300452541806607055750077672681793571845503011200286772702048892500717987453393959424633193606213531417907247925204509591226154645662377790217787526879391625756734729 + 78420827886755278256333690543822291398320341767436987212815317543799787021970687152234646146340286091345742365744225086527840796016452168283423043633310551461665053181901319322708743811978332928415519722701227579011306152528928951173735294137179266212056727651792292622898984010102899858689465919046510228834 - 67104828737920783803486881479291144953325837936301299804499868152320629988249133301672140185506600993140310564838622486983355951609456344546237978710251338126951231488888070046508370026215053998259783638015654434924600953083108029650916151999153143003747096529179888628377389664322625664472660507469168175440 + 13693970263800129779863796147167038931637967269183097665181076548708627909194764383527252005864452296860898603245229247776842134464585695588770987881344500180257431286814028969128351482889089419022295754254603591951201444914254501687429136160628131038270792070362118303003794070747300038908546590649421298419 - 15547966079903138563122124161090004610868294978514537277982547260968175157072681801991352724527086683773570896050007519983621173637705104084413905968462333619052105217824227985499377301815901657313232226204846642523760067825718824066080847929980196104989794787138988423974497485739114667417433575246653731039 + 69630676756268179074994990912459148446394920366486104095373471329688504521708501860123856917184290420678042014701932836970976013140756047293824087241823966059690773518990825177266760481146293347353769838291223896994945430775124609958765211400007796301611893689241091330949576463121292864269898585446407248682 - 34925584303003361784917150369204722628717406632035371241728414302240674629617574486351581896689900902217412608080108347471324660584404503218347272184040280017550666600479914446552579723054729749040163841106127040856324030308144979847367763227629907445550215713693931682510697646578211791757295372799886077640 + 35153072341359152522992058438626131077894117511353961790868288252247257456810828874294439595852968739654400631854806201547027136095120738064085593372432164175983010565310036820100623114300230138146235344389275233888106320274266116209878231203698512586205606525590124962325965206345767709616578862573019388987 - 10212478139957280522743402352182017086009011704733942556097994200407977298498886261815154093085747359827497377885959708275117717718097260190259246759930747906230375924644751729433831001467313331737448974422329896948229520108011382136770999385928045382724892057288488786002878752724790725338569520356521001375 + 73911442533554942346667989707854433090048853343354613695620852090135115721310372316229820030613971157359918800936927181875000757095915643796514067499629535830055479269279773167307372358725428558312364319530812469831262584021669354177518259325848657258142233019306558592864747025879534758528945765810757954891 - 64454936884266722759001382828458127765027405877800320413173628384635525783570342826179766604389347130175077095275364073429045918787802425495047757696273636815826199770061994671976058136400322528050194847918946955498837619887493627447008668065748969374260043072965148795078372433240573632727721761933558506808 + 58824643232507662958894829192797860303437908839803400203625366567041268207762476338059890734180599465133058837826260593732365835010110349575207271360940474486074487862173624259843036698949560812024659746639695542874516231778020299660520083834051692796412289245442184698085318385803562837145695907855587717681 - 68647405460548968981257204756983848710437676455421519834469324616276215189060911233802039388890495075314023505781153675242539099719458501691692998408458685530376158707310911974276157672709988256318174526017009035627170482448454443303882805030085174421984812090768971335412226066903664947384028632284235422245 + 10911717828556517655270445019489058408313096128577519546029925727954473800629536459230829900155238685430281758161906534115197774328067227666492354312876528754143211367706817067652097853961108173255694845091169267509313663251349101236343134549223337162138627931110158224713752004336988812210520176304922276393 - 9150233076599206474613707029081873027296425530825275948435575138139031478859541266632567921092553957801829985620464178804013172267035896576669462967271414879908925417573243648959456351105560053027033509655484475686922775152192292944724931971587050364440182549946146935951491763022830850566497174551190651942 + 36744132022406639261562128293770084556108296855714238235248267255195634899834564108456084124959961441110089053493615242295926959512435902915423803076753679466792635068999567201017818389287767939625623042405896516061165027196393384663388030643847631206968300873675121340990808554633210265931696464472537903147 - 41453466086690907344914047328973186297868494241443550517650186374870686714451226851148188793026866313246192978643551730080484904413748450713136476204794113105187187915834938299154126244706598669793840741063638383575268359328785757403016316995769279880835554872743126663617112689880672510918185198772702246741 + 69762323255502486369178824741482253220463127681170911873087477998255984046772471118389143441667624801844033938094280759891110216687122062416762773170502642548302871404208354719935173988079667323204960272507659705943626295450160115725994398182184220413965260726484713204533334316363040568246508272634391521827 - 13117680333682071271438667046191166187811717049159103211733979420228704628882809990242291178870236095207521012283534416292002845860291280671140454829438208845007827813456478990016245621638827664466338389316432941254736448699516456359875832178580790799341717002854105552867805263374070335651624836393350753142 + 20788444835703126183753092618726349602311636441920116797773529423755582344864741254822049694285565898493566195042694272628453719157470255357984646369331338419714308395515902527305635650774756314043827581810585201411975059234354377763208903161298273488332669573431837286360505202289944364271223654371342218475 - 53563758606107570867095109245168092762125892020156275111815227200823949373383313393094743771150244077922893944441062716737590917437681055164063517146076858830749030663913168785897230500035148318018258792997332117571854272508640212459875923883382307825810678291902818308050817097097556226457919399692307696015 + 30619382984468431753366425250364683701302549670023291429455142027110359310681953479052506146232801014114407896181993327979977177898800490250005778057862768322486359602209006831378479621841754193149370021923002956274909594501773852516460863577149618420096322653723029339203684363052653132634805989590392259072 - 45381865539281714907956555839888900756204992984276778786939911018753447432440211006894120821825567931276302082109501982497169264482984887295882341007538157684859420382087150174441872086660994886404742582648383605293576883539526882115606025428339997571583229503769916745646428292854889538587332535159621252431 + 3066939013094078471042234240590188107512018443646833293692039668653214041509201692062030960979527845820157650783411747723996914204908963503616868979966030894639144275659468973847557922136950982626828080096976795527366144229042896961158759533858343001359953121285677368181623504780957102037926634207761714909 - 80155500830656666214680709660411174803208145797001607379854800303223648213133030432830517125836564446639945913380063673018346700438835327022445494628079734603924763629002199347107401685745089240043334642484851062317555165126432337255026284950794839259207739459918324762057246540253566887375900958840196445979 + 44656317718222691288659813556412317445136881100604941118196779024792123530735996402687803635492691375115341905147329134022613471072324160232947309330957027713706617980214714629379545722820576684494107616675959809745350581007305766946355487816675995114335522116226218110558605921989378652460160488061851121214 - 47184464227381908135963839180960670142613958501369814431244651405824991647375684488384017583254584134583182521853163379110583975345138414171602230857198557870293690596352395144313882557635265997222754352311398595460580891654880595100196476171753277280264500473951696711708198419849820208393210830935763608199 + 79849752949162939752433518824220387500395420187230522581847911602011732424885920944418497897855982825972546039199679619295019370939144267414326748843746309383842080919044569382946999928117415710959469699563755348637146824212177898323499551351434832599451601199306856264773976506325497432526266476743847858983 - 69402131287898715535191702908763025254414380288053729201001089939153335010864891233773761537742023935203704567908477275730315878769392560628528242905164497141084496064049898040655462442967016203985650936856310554232787300869012910591609106295453278425779729198339244946763806645230198966622332106644878104425 + 4406479626786475883615028984422469141947750191274435774510324179943770576056177484598315765676111275216992845881320128923414654568568049341744737251983070230281582006592892674246206624238701612093000062092518935077961151972329976169692617545864692175751704095801306890267859059191212507864662381587109353123 - 5584590139380558584062485459042111826852567751296964889200466521673315193877413726265397305169526089226485615397081080464416179556086695621456082502717503404804729218953234347090157888731188648858110054340213196233451992914754363360141406455192644438980741671636902163639439380258840137424909858564357751550 + 45374720533715221409248612640921797210030952358019124785172933754572997279056834069285484550276331448240105231832983314501598325776835362466530388917420556458167708796914122608964125796254922998357342528611402572236591960765999849485963683906723268681794285563751600663621557573974132229195981394868990550583 - 1377519924039468356755904648443680567963953868378535225061179532141545101035009276152814727302313313110004272431292317058131696291663953649902382022747561186761309078556022884027976047226952496261959597291846360737927720872082426258902443020433840481444313248581172789797945905081669724364649257767141245703 + 66286851844269156195338958359777217096526371734544399643967697615537775709395210279308749984002827798280459481455918917447709982786834270013287196156502096025079022943424184695019889957898271410709632484456720259026381547196633907090917963022688665301909713178607558554553632802292353810787851057613905345118 - 62512753772470595507216284188456877587200976537565162110159370894818362081815977310591864732075081848793092069580476296709548780922264450858407047615569135360268771468464345349106369835116037347468079365120281625512428817616773355884440403935218357579918981788090788487950209807338478187193190663409484871159 + 72123689566712285879472766883653956813227177461453188900628254418274475047388701553141598853023432655059645461195991159820064775062752305307921338756975501992558646694979055418062438904681546665022498843980107802995767861585647323305009284964803042025219571222045811067950913329952005823778475522305570162744 - 8161108308496634861068883696969300854196405472270198997098153707206863947574973429727015793170342445847706139115713319809167545820209710508271804876000513020774962123296429282296195454144440596327672631553152569261808518217995855081264612125199071795839885592448644021589729800855493277567417306558460113863 + 91415817869382037279257890471419906008011427789932232134282315693492361685326520066420894746865817078650649784115692410748988528005779630965255590404940390015430798565225647027417968876771133675703817365958478473281760728262026894667545074246919505804312837695649345731662166777304078668153476616408975924987 - 73533204111791113727743664402816577282619640370140189143335783412907597145103634067116657786963745880778691896249403144029090277551061364124601248286201132029687043013803599990669393750661508209366751430634654887009447197788001651886279055206169664055163294638615357416534989933022015035891609060440100799574 + 4795478807429792794497152682641960693711340180253262139858782097823040522886581038552375896052141943683504563848981028272023561119806643031229394289687959340412116521610268615170039443197339178473480314489386729233209524496894386992042876069367118882922595083990258487970540341433824929019010216057101917790 - 88899529755181789931583009344928006592009619150111448566231096439902406065260923988017457632265084710786307711696185920292305244832990731189393349540640698996725714064716654066882175366225652267753266975434168984914897141986062622986144357620236537385355846158410238820783272939077281770585521276302761496157 + 44859887499963029771466774392804473123320942453226578895842823932829698318065288741800479852263974227868714841581838609621223253145866001675858644243411499173349686446029866963946513827571259759881112897325452584156303354501689755045640148877745940088245509719045395513084293915624687074570384233921967106545 - 15414001810442848447215390826258318918443834984866697100381819011025797722807147696379365050636761227440320759340014345098266942389045853825102034121851638407974229873554711852740896582394157227958948836729379874338162221520315998801193574565950557399153257884893365253999794662328034452905786123125784638709 + 23373617640242904010239666529089905017433533481067642987679433830816309400144613998575325943299912907551429171461307169400260343581548519445262030991237283210496982923813835969629514565516894228017011240041139411922544267427538164775881698734457681726817648591352709294198710709992526665844889543765185172070 - 4072161206445909102493018463594103312489230955753835238692378272133234373258190753945173397962712679943608608851440119562441075483212488176132745918051453419218181291225259725889999786377458082475648837536690023892688513946020487143124678104206591175706998672133540564528339124417997561820442472748165776356 + 18456773964020015202208734946406361478915886129802191998875736928446797025458341437845365905913119197374863953897961911199175115727606459702531897487546144569788010253496687093095552489527989861780163748591582822145207580668148825061715791853706971702396937577203752114536361368326007842041470240500632175961 - 34554948002837451735914979770114393878947690254741846019803891778194170044441733361995501705561894655134497458587870777377576410272788768757210945741305198588673167647831508349269852399757820650336673015052969128402492988201316994491923545120112950399280955824698621495204370540906248309871908941372550582122 + 31245019544376434275550850510635230220633928210316895554130561073434431659137241630474875662593005328019367964268503485584519148737069317650668378385720773517438079293250138948335827900442398838174098220092449842999887398498773153141316510867941555868866219768890231773139186554867456154794592915304923408143 - 81514005296719049208117704638950645180921487745108447802745641002503305901538683453248913673223693123210042713869207917502491899448693597166608023013805719720640779558188066972644470669772753481832535506104344676982561116839968227252249818872586902751872605429937842469883303956294111706062944965134961121523 + 55109243500391172243238808796763127776227929486464301607560673120655598222018170864239681846933530763365102018874486074955963326878671144302474273825765661673996064154024339220410349349332980465835702881370189729438521956382341601700853307102044628953538661739746823385779656622698252523872949691796414318268 - 87124154945901787928845186499862326363368665241332834591734488573411814879400026792102860099075694928713616547941291300661157570115673740565225656453608906902483837985261773859955036181828005527239961951732898390575209763982211528628540030425901033555680324708093508087739954791982698695062451122602878981936 + 39294697677117769758056195122835226717420829894091583867656661333914499653339312508422022753107613996745115829269013924279454263295149172185572637013722403426101252939337341243408143183524771436462390457685189137683497398680254727499717811662625847934245053750867026674109591203317486116838538902031090875258 - 71646712163655717610376104781863867031666798837156271152651704554987747374920863714625940034076213339655644128931648373813246897245836506979157355129048063355138120486721137066678010324202879125597012066967837046679108924302446603184570928082886551429404057332635369683596788723072872472548797790473211031522 + 9565841095900824025348778488875135171188314825469081570642146829331843121747040766070974856779315020387152110032441406515705289667713666412235697542954818377893981385718475184752873698632571458607230914125527135161791489982346215569249996164181487329810243883452613261687502218462395428018732568705058151554 - 69844570597494439760948967352121078634821676845030661841212872653295022292051057066761511789271743527470314225573037788496457691276143254810523207199979824999020831638228003912940276201649177867868755383634851260262201463167994760430968080672507370729286739543915282010716274778402449684576458379544380647593 + 12708804424230789850905240236163825981172851021480805830865763967303852027675380639473141430464235590745466046292854258456962921043617373779489524048012499473188714521576202378074549502886754522267524151679230982767887164933099339460318948441950421962349812082025078396870415526008855964091947245869231630060 - 75079378352750967782792166549971210168755016465752351316059989766864201298216187448335625155213287718592422754028268303530286454715558325474089164744044239363699281812370522549054573924977374349611262386569603652156606672143072831700586924228671451599168830763202039297789995728881563670697061762830454805800 + 23424188750378023886351433001907692095012459065293014037303473120226796864709246661207858365922137069165597238283159835907020751557659348070442884834187525150646674190712111246855976429734033695150206130510656667479168789779883623234359059422980167298278863714976303278497228723156415375452796192783530323726 - 8291439385013858162503870853024154115418050666310698669179752876414260554437864411146076309836403211039138265390812478958235900928547324328809107194953855674979532937884662443833872435377872414732525041425859344804933669804431424665594178162036733264537373428767460446311077970793905206650099034041940787916 + 3794345480917179085946187692662891434721134375920079695726104085418838566449106077443433907873804943993174810706323815864289061612375970859586664955317243369764781738703631093482631739901108090840825218440686012986032435348533444893411367553645307636778650178598152392615637153505762170054043933119055515014 - 7295391765470142617998949638936530619757669982455537635539622745699191342507670177709296485620675168139453020394419233540209570755139443880534944920012653955467406701751449519727067882792858747392689112015176645729454068564931439319724243443598069708145070010347550020623395933633411212736214017770354355910 + 19484738633584533217938881106524560629898542057009249635355023295959706086516579660486243993417968006001408371291389310049485046959844460316986465667443461970927804362394433913493035218879056752568872654285499230581973098013677171692786151112157836559489656988590986706424337134846689757613804117977689909705 - 89923850192321855838429344386071809672950079291172252692143053190730442206008563518684202485909688687613717307108661994697641960176545440224964578243092571101424528775325632027404191401371409059936321722659344735505346006093503023941690990760062821869284358710832033525637615079525514978338274302219283190760 + 64475297866327764543187733141233652160921666890410691491056041725906650692963189395241562671169861094755669164022767953265521764464147735759244782246772556403430987746049352239411041518162303340044561774543542966960997443531632934988196008758356174011153783761356731975157186523926664771747675942091813335453 - 35507400569635559210492493876237144208635340774302121356005230831487141250061222608916882327463146905521577563121576573383912999790976857972839301952040592039805088915880632474569868694383954734076273472518104078207482355053422512232765875757339253027984657345192981993096866427262219699003952983987488171148 + 31506471177861211346536318317031162677193920623176079651203715376487023635741578186452037357428044223540158973680304169545658296593913513307410084159719381708518686160421868971893958738297644888004803478235622524965379196052201097686399414116347856276518569788129435528832623582629649399683050472162407987947 - 64785987229618141934818584518685010302256220984708782326112754386369484894767581912664896239899592926841141042421797195122244006673033848529111144551830520991213558859094506665492068976821038051754427079375840461503433986732404217587393300717885953401465441771102476392853093295169669604053673932086077925528 + 29348023135428872506051759015812533316779389393785896622607970561200753167057573062473578664022114370157675487637737276058572493276517759454337898228909949851390151795160501143569954345868631873622864237634951777857914208854475533501656631321733721244062138339536451668474623616442564053067519767778664527016 - 61784807567267931323535033490416367269750163134290341584720546234862606589140680389604972765771586891925025894235518514922490343225037538706886209110337286168594943500055518971061917209344909018618254168737657104953795668138748579781611858884962436351045555426254125131898885520038469967249562284312800601243 + 84216902476476627085565652917980243550306288854173056784345281922691681573646282583129638636826105333538391573749630468859823513876461367274068387734423035919828079584808829730840056571522691680322900223699930319604501820351538684880932454989336439699469406706128447107352113368003777152947163601766373585652 - 67218447368309673056060115368103765981250534983702743428518352991537968309173441392701279934126134769343836701721095806356651675636479562974898955578181980439614654647929610820777864151905824728547885771853783166182653763197782465122184092688702657336592034495058158286623101508067743577926809494283693396967 + 85987356816199914853696852262123476548299524285191973575965668438522401336622318532006208866477754978953288788828186244806458236086375809760675391642063671851186955590025847756931661596944681735820146530425481652865447310951868298684016435376314376185936139159459468123517601390154602211464034913149705003555 - 32994000878597500668263604403997272101271882303329913145290218723887709006321189699923117918663358561423138529101543788650462552212732043077211343088287188629192141130729465982246585496654267154582574364578751891866587329682030337692368859442108793155585867321561422114251975647781332851438686515561667434264 + 66908844432901627397348925022786848598958963925798589048885079830118444494362854457280765789624967846486229386358732105145237778885656560932532467891556006108717775049041246369057810859961548982900045512839465463560243419247021161179819410100393834690816089422642991570559545671475962563951526310369562295203 - 61784323597235906572027918206402976702602982070652248832758848770691018958038040162018143542815769542077335502329746716589038569724069759338971850308206007993709860832527634560276675313383158975419134408277275311842453106782937274628535809645180984998629909489190437745751300379564317310173564907611298763264 + 88734134862563763951633828297664751350195365758316242046844562439239379721018829372042032341423089439688918567916372794197716354283847393996941918978581250064707856312712807801215740489305874333967894349391619151041334471144807808562034904931756510258058905551836146209831253406017393804349710571060922230240 - 31035931626897502732677867822574042729170199392579640199879130274515648939798751542017044765522452020212638124713815081384562572612194006954260922084856776889251728403502725815104867336428884897046013481923573494895690046059861810806825315865671941592316295854541444912160093468126897637779874548546137295011 + 30410434286943291309062320406157043789811343260552760938447103638671350391858169956552472193975443947932643240376910273719462823477248547499523656605857752528144993644017902118990823879008842150571047743308476179612984889931094394774749175467167878112838332291524575068269151328171140904757019502589213802328 - 78855170255039479722514431176481849415142334599229586100002620790394536290667346526716716492643537557754173868413886637484616115466543394386688934369696613249905916346162426480136848101484626770776848246840493292843033174533964491833024526613606255617106637142782432256511504612385051180626803487387879229296 + 3239422550837563034816796343578524500750314426178521996524254996262076868623084455489103988426961936050327348970237734435915975743475723138650210936957370150106587950116090037613747757234433125184037843550168683030328482768623186393969733911119544452631738289683716063079854697513339640980821266552953834186 - 1094553578392737692087087042435324071777336214163865988154514114338743663734703544839956434809470066933674895332429541889226873260722639595638740152827995355655348878599713742287192639458939633073438166688024491770373038536321390635608625078995303529481269219471189572491351582012692262693963774435492521597 + 39077444939917519550416497738185757376239547831479084546715299386089315284184243506903614014998015024907236440859564567870322648830138959649888568049119689845970225452751872448331649525323440659580543665135492057923660231394683319851323865031652550709238345853800161841021582066573528420985253890111564144099 - 21296256354695281180206712381595732230961571082445285556508184740611414913563822951943928226656032457816350110447465035971649734341707682500889453609261671569505444451161696647641232097214928152488676698587991383932049183467810673318285988847968231548163645735360856116798013727601373074610038153361750511050 + 75477349084786096600178284397888331037303315179182861880500695929544059295833310080396848675918723397598810286856488484389478266230863245537611468633234861823895973688626301999216250180567880672026220409556519571110105353398952281807861492843041953340378364860725726823137805783824226443907589672393839616287 - 83995292233580521322091375534715951700498945616299214631659832177210054897500940207612555344302846371285176263023521446919277395289823180070923464361114835914660014256041746979453204508815754857694114555203255881693926198018993070497303690374287485704525877226950610080967363291249252861384438296506599809022 + 67278559694679309259569277319440670613581113149139256651675649546700087202935126319178200322364458751791768039536860560725713068741805297168686394334616114270873064275668560226526737239405746805149154239051987779361701433053072514720410771886792496170672022099124718102467038173942499051497050989113119241951 - 59480583482824201519907866167147239361106754040280020111941292863307532059416778470483114758192677325026522184318616876343665777422502150705666933870869288865587215989914308695126746153323147209844902467302231828821081724119642641893820801609038402150571956478310861972251741204936634933675841316957401460160 + 4035963831516882304324596517466601874724851564326365371123160065713073744972383973815404311929668794668320449861730069721972990782505179048850693761619653282758002267099019154461326906775777701094124712688004353040645301742699187869967858075988630837533654676483196072847658169834517160999850153943445649482 - 48209072423040627485738863188132400540945310623012315317501289148826431761991844261671527966406656421699541833169163201391126430970908796880213400874396826620182387397544761226094306867270661534715381445108401608799347661744257174121641876345233603189313731884103324328484418256004323821554097463182713578704 + 12496119346461661538329901393012570384446836253263682212438414474713725011332317586048463286442427511293746296397445718613757078709538803554067444471634681963742170935005607098706722000261231127417395910308905744534779561592256041886683391959119442759457677108172813540436196988650211016456710371558557433251 - 8565183107115731598032230727073345160971512031774590381156682758072565192178295013833858006580690797592383315281634668223765579706081323524674618283694389265761527176143768462819668468443302368038885109829019845331488417077188269253389898660974885331238701565182208632180965973372173221831496498077627696959 + 14512660041383002560629992503834373811235441539859441132100531717317506915598850583394951419599067900214890826344187549612688912070675615104598386356480238301051757674434225760514254938942167391759318020721255656200260057704456634693999314985984223021388675546055156411430400363344689799467064011992892942850 - 10891398423682967358901523449637056216776986465960959570959061263625084067637545267111783627419823905934664523850149533858304301387624940750996349594007814448539510020953548380315622522706367809350251615612017037512886117056594554413544082764719992613915576695674279053530795817818489758106061336129986334708 + 17956772289563043159771988791758043257501739383359602924419636574492596314973462218433554355937549935356008537962147113325856975274368415481782819253236795319294077994292430086725676176529942251734736123410010665136527287081438065872339166992635352953015005427347528889367355421924125545183635236479989389643 - 155843137775878204219473802779135244767666941582469717859935320665104984540403153216670480845751731699610584383341473635777479445800366744430382039866155512274608041899674746938656510139992196695259595259852634903617944339208390804241124696042275729862663601111694534070528369171155769843878350537318931404 + 12677164068976466948356287071803139964666940043131795872010764006433113962672285907819349507322670242493062282022728141875810572391419469462064399361537521147341477859259502621402259339377725045305025484140754982433979089663564684934903571613916936323051891281828292744720843266957727327649907177123101753973 - 28797247767051426796204645770510865141680564482390787042723575511529293034716474032583445164891496713302713230973873734330923377803750189940838892988945883788351520724818109997073651292625741927149027077701226309943428757829970622264847923360671076719609002995905820322199639991352372513986718346381015201341 + 52010943073597227677886709234209299058591812421222470002177016723677405515271200890682629548867232777504011871624653566675072620887708342728435404515498855268515488662554539963725076928623753843816087816117524178495232676546001923416650388052621376633961407774713456759313884286646464595244687588309442275069 - 42966017530659301213757696521273487362333144190920538524702203398006559053031339280175319457286315079457452526629147965800288433338548766210361015756243416377336798026518124659671081511560198765948375052214527263502078440523958388857133183824921979977217940792365385904884327197109176466166972856593895864793 + 49186668591834673566400264448042244582681936898617178978330302004168116670289448530029699185844479079635368998875409266946734172158605089894406724801364748198406910526533228502384085375542731088177769376610956008052736989082554493440793053148064293180633231244354400749284871201292637814432359174882258371734 - 53431214595986719264497189218375818742506584999300015384826169402310936556275325041092749514596733043398380828614495172430371572574880710095578166793706037336063913334945549947491759770692452927168516563877921719743716430901508620402458197678008052638208287159474192550402939849586363567572826566794210905632 + 86553961289019420029416057779506834295892471445377391953083908645733582934140034238443123338780638551467857208858310696021370134763571723725968974809581939645071630073468070960235872417754626594477217291588546512430277976035270086794193476756541662943522105463127809101133995020315323854979223200588164929504 - 29693100144744072540666842239822639077907227246068810985332932792670228809141290137098694195412487573461220681972672244602475802258773875916749524722091224218381081912876641903235976067665836769661727353981179416285124090343649749069233534759106132528420150778860509274142997498389714871281701977191764068931 + 41311437744836628952594112681209888386258450680806565224605083326870495909012077992844195349820630461564801667525552991475464696608385414026920435462777196978703634996867073045070323230597727325639840962434240794693038425796815714454717196437004934011760246136688984870965197121483683446779690469912330092703 - 58426796157485789981068517760629862365053735894280723564510180387380095482308653303016670720064960293647818178186271217736225095239000960645530831022518633385870128773765778348094879961347180722720929111582999407940912873442610324795166682399707655812936827357471776651947998509374431985495759908691585685819 + 36551198735567069888662408395740675088469426601879740952452458496190023011455379844642418265943718480678636234872049913222019463606354248537515850399903237463775209906367717450456494709014826387095668436332643391925233453339014138186004027175635517560626387178095411952521124932880643268237891309077471286499 - 81379112509021162593056032288909799925690648426838030442792030925353976661685841146688052820162661854010789970572247478211107038401480507523800312397123252614048013048169291896885554930014798783022919076899516399999177495188956092662348691397885261182193642181070325194441960885894272899007541838675993952599 + 83745083091257486837427933724590915595329854479726128537027581121064457799999963399102923133186997364183549721888237484716297829308963450320233324396409940190566745079205003716289702104022340145512271170892752664569630371391809826001094743144344947805816565932591034816003365749829723652385957555668941936129 - 49611367422194513115035150551734582520298521030077584370031183308653547976181791903740898913282571064446151144695149690322615718047801521092351604722221930389131307470356870858984258278626056207259568815084343283366925379672888098203272194930480415832783713459616219587931803154543020247113475776647418904660 + 68478845594281919110124816825640055504522760551800354405466504225090746281539958380921099993244328687995740658341756957513374331515323769809881569419955159700349661359060489045992713223344295557781755330195922275620978783022904992196981909329159032929784384028125488874000489917108955702289500207712594158076 - 14427827293697826012050549547046674337305691151270335221448483883755195743929542043825846906384766070768314838868040539901555873628061689667420916859257407366907320074947244588437402598383515830777938900506374100195384135210725911768449422024174630910120180570210160173013245132111525346404920416937139913864 + 24583411957295339336854294740159962046751325443923182487862893928666985053355134776204408408278833500803313346437934128592134337041695653846928734179238950044695013135528921378338949829128751710875694844606608345161878452937321585846769813060710830810409921081260518536616695627332343746519967485804526677163 - 47284313076338140186963738739866910389991227485287730520951752416201695765652481569471520915535814869666314109187363009626738751849369505980118433674304792579783274698164789941409311978830852557490847101589911690359628587664521412888948784370206299746069621084711945134550768047648117194274127238388669275172 + 68492822720311237907463106720324328569201968588926020009079919812608484615686907185059033020192443202934252844004772025862712853278984982714108879237973562966929337820014842492549859869436323626919467726424040055852285741975224333225974676750606152497970630379425938639016774631574203246482695763795701023652 - 33578643693463388201451875951380717322471596840367759756432827309185363277142360271574483679693053879046077745129784657105846393551892973524070289715943637225166713617767796796900776107202656395951416507728845729499206422659015411183611989491833273660702702407951815038361214928553799974003224570879945506102 + 43250861810464079623799441423279802124240148839974892255669556970620048875799660770740626913908311285382994760375650800753243856031924118372132040791864629150950563908362653108196951379874516375498054211124361367484733987200658882088712400607449636363710227076503198924029105940860316796745817281825192586441 - 43717504550171150070898941705287590813990496540275562859866136777311944458436401066747643908162852402922714000594691776047610632379306122590902640610169116768969755982978095677090687000905821027990875999630770773455183527579706922920480221772515155509967129528442462593713287066151203653509801038028516092620 + 29994641985246499804812480032315572405438337063020584491642002607468415818800900580900358758644451535067678116996564389765530917011852412440038187454788246432856383802487887913101660300096270186153811632728201637488087782896799324656685948225363435442251067693466219959603642272583284705101088110402657500727 - 11329645033823635036191417135906926100880494089768743288385497414542239490137803055809656642167922033556925262825276582546909891588206623734190643966026075978236454766642130392666946699045740071510165711635048026036004591207190131325093675514691443735831365532604233890375003961355250800873579577609126940934 + 26658872494881577333572010261017598854832603771952250145401023481543976258664020870645972321772092213212747442706797378014625302215750793604331733410688277587914986131440500322139643014466265960175490037939272220043178209801456607142681351313839066433386191871993618829184136038522286799875121073056797168514 - 84094659536270120714514162783062649765204184632202063200986282540281886669943526141889916924676192071925589040752615235004357121004327862706774701631249741275003573545300533953994443123773854534816171890573826613925870738263465868626134278087732190014901250927700762574936215855786709940594244588988032958096 + 54924325331044026300796923099524514937002807084156488234769480107576179079142574170083230737896409421546734575281470019479449060397420600335396100834492498858859702639247647796777545313210596234954380084007183085523446805859181360177512542086209743508667759798323784122519162536641866638046789079874917522927 - 85008710662408376288151083179476187586189794193938053837561519964447418973315115878550674183453656237691288799688194105338259157696744515547902873256968777627222705353935221851918380276896604073136718698255514996208907399614026223133141867394510725026630731286355697205194533915395231622389549111025538167955 + 81472224410189039103088672154316036703196901978954252251252876799068168750707080373339322964008758735032937745740365052449308995341061906339030925386830284332146950220186474179101200885526442914769835723432442960936575079858006215375834467525637624391895318323351115139196336057232716584731789805613310516979 - 39650208899468487799495998579454348045302945494116317802957821664711564865824036865177768231735470629885587926647881784161396245569156455407042514738760380304249198068551574660335102516817617380108567483681153544703554704999391367318785985173557633280009162940955721472492057025118539934390819221183168418727 + 77841661929928292470813229676512506472780578930243363005554036053284301385030035329652435498618077657904342289762203297652760303282022805697856783342774655190841302729379997911797111516917961472410816120487060276804678664138918282604758115997363764025019128882933243801842965712283725116290251565135477250830 - 12334498867857905855731993244124403708876903321632541368522463169082031168867080197575538734855601147300612474851324290367516004011131847742360910933323657271202343521560577077538939453295489300275413666432978349071158237807686537477938750592447432516825523318759497956272623957727729518325907550285932346116 + 81195764103850045618831320516544875278174040951453043549073488407540664865652954202523677368488205166898216635217881795408483409290182263012908326180900329156650737232763141145298255135549005975627574176307817399500101978963634673992632848390010719708424261198771360089279850805917430289655989041958588907834 - 61731128090795469506101548532366853170428655215806815220551458895296307914023730165237996563085309427424298387728722556496334445269723642976394984832481454742037925203684834462330581031442259269755218456754173840656592337406054617829471939749477661888128275055768080017163595320273508011053371318115234972242 + 68516578824123823927402458721060923378769384880104760221096906935429790059956906389427450274388988148852044944450271533927759742115942986765316516294597613817657830400884889939672206312995376725669436150995695261768401032394286426020810169092777223462786690890854616350396384673338112396826819109630236571460 - 7678619016424395522876570495716980278436252703914149692473874560680442665956587923119158913041391547990983072702248629226514006634960028836484338329967859744756981836826650418932373116277108781076204332467544917810515716480766943277150511187447808340003563360749587013399672304513761588502089942341100905245 + 75254835990257243273001488628218360023001640300665875798057840431102714366499106249659380798934204182106585650229578561075431138559208406516726145062384985328426690047497714595879243962950606807933030508584014766616470933714052502251231349422658870193768073113491850983704531203312220895534821046452608552902 - 50637614207312021864911076337909851790415495125717438505135218716141998855382978515183023349390698599989447399953239800961477841832052005934492609647472573475907635363570446700097657064230090567157660929901188153758576604345575436862473253998999098981168936113508796782211252093535942013900291139259399645173 + 49215346215219682859962913659221310192084757509266615323829482143247680523478658259021952703384554378882183528326243907967156790383291892368502502812284685153578081052145532515831815684618088640879188313517899954101487281162648063895532731798237619028205461352910499833184833217970457678677378320751976829747 - 84937771374118247761599687964743046453531297470212526078839850353927561184038347814153378941414408422637901382398486131334716222154437724858982003682338636242190147039256053518985603961094969712745568313911669566450894903343997214383715262907949117933412391616900609768111969956888109782616950058302831516148 + 24377010203498559851756164123567278096329422299891362164549783258775933969553973831008992080296761426660608616326083807575498805465110676450275844833145505339490658343017897064092072491264293177858947006589129252766689485569283768101087911271224627230019766573679267999056833843329256020221114133971176728166 - 3362196400382998285652979046232367387492279589183488966742228613709749149809680107601565289173763354345280776723900861290364727191871427601173587943769089379713975454112405293281003310516264522994461871498581450174161396412035154500997448293893080071621056618690588627780897205331396819920529304621605953705 + 39052869105169059204858043804893860600200740095361906247318530521302299904372867688638296113082245495603321099499771298721224866415166745492975655022311720330352067374932690417904931497623510592285847668632198462177700006794783456480241442710108271766352732870667762802866272297253010878474405729986632650754 - 48231800076940609456779932049037903973849775843117433091407976101742628548649155756237634508875599731627528296547023046025943728983389525410222878820881927501091117303899426326132585698639273495744698963786601773276811610056789071799741100942113365261472229777606687806345545605346447207874569827159923021104 + 55742795501658265195841050732123404427238352423941739505848700889164765980700969124817017140645896060572507275670106844273658480624978719085365588858572212361756171509945425766635500078187669026150803161236272487702663489539327606330102652408346421191157693195162381247709477861548062425554603514212499575494 - 608855531928775025384234836428654641555821660622656327575081509190808460367541116351030139389439192856162615187189791882964023385172973691429071573312107735331301333019523488716730902160520603699393884672917459574849031951621729005827412201137315804211147526555603614023081424420212913775174514450129285109 + 56435055667479690054248987652045064227336544573511776683237744589489519843270902266431754542554437888220591486528321828167864346348407719935040168041350579522938825181682987391522741396711120835725008818857492202708667349640241997221448480356670918718167619842976822839715900688446231675882163262312712372712 - 36614077167684274377987231988859719412290470866937444772762205166095935148946964749027729946772701561040710934639688281872242463394101172593476387760957770633041556984538316994512947399460952579218742333250175001420193537792841408508797765423558464231014841017690148565574075652355437587633586232912834416063 + 49377946653523345238337905392007204023333542342736279843197733996317079372425637621036422707592756617102711674914758756358206954357712019801467494356908295795455412707809543252193342173066362152809927846043783351882992357992427553739461691708761466357730699784886207023871609528665688227450293849281545705178 - 54529289478720383661945852393319267334121324635613040777875505437499544339364451294710441235066119782558568505191299191060378087220624079977695579109507947589691667775114441168083605195058532896670226702268986641396075694636720885418162542734523254242750035216210179978712140892260310940102188765682077643786 + 16091522814026535812668361959257596813937025392932052855051456681334334360582782011652162743262386173889645878504724072928674191234904520420665430230035457332863281992297711413035702465301134674715875897248238325066451489307408945958794106167688608077895039876924452180074377665360154022262191408117041988415 - 20422102433630209381922393640174261052951848216043702059761396098558207232637204165980002381068519348538959460572529718179072091746413380268805706227381645028364122878585981174166197751168855667560045835662449408958567037001164984221084338429839972708196961055131504516448521415878884520645795899994817465125 + 86392637680449086581828173243762124792957171264089735017472211107483301740542753480407745733486234986011254296608881728807896800038393003688623348669222271403628774598881462586165547969441049381686452698246292685536967795729184589872639940160772613819689697145501675690478440239598720683427633764492929303541 - 25867226027745491942518000969114126473297783028469164231253430612060609933735982501706044805484497921170591325375394162409114891735276143406529779049525105359745625023747475540070644642973325531762201186351390164212828111705958933687897101173574840014538271661538642786179952611967080606031954000209683510085 + 80620591600122360514117165250100328356024521202022273513895298602524932905153184207933702782429884600977531848603893882973221790312303153020611806198864891858776884184150580152259150483866274427139564298697944236615167268411749282586640182067632396386489772401027339197414758668697198789347574366705345985784 - 93711531879359238996754137291652516297866121614102615981877057317358543783401507711550142243676790922114496297335807723383675768425848361661790370602492009133409517703112633393144202892312666027813616871223777310661889432293211979725228227786803749598647510580195826529000474939792591892514638464352372754415 + 59741247890948457655034129413781691261169923663725924931968866264213942388941751430458512249340329168693192342158892155310182735008720076214446246045999606255620226786472552219124550991892552476617367964750525522287650050797578863032373956432854618303505587247736403343804078947973348715359425593178973865578 - 25928674885095554021334946009090187855066067266646716761684328104257282534553280965787420652493465174504091571111884222378394760561607188504219539331190027472370121556974740214104748924363072661954374110136382573469241647767933585303394649755785369107436367925951744947808896720813765352552047908712219220845 + 79593953569178609322138813020040634310602513335443064770530216728059994739559442526496311772924376572760730081432378898161913780749171430458549739836929525305032687744556268131701674769793632132901722241243171927199070079701799102467047499693318046644406083910161511362976326994442190502251910414934990548567 - 7351219291781695275377254730717438543073608124385197408974728719593805380509973265149701125769616331695793470809091486827057280739858423859591484459129609970287846262886708229758377964786890095373571788198097083652837813094691067220691916252693944357355799066845929872605545151707925230577594378812058048971 + 6280407939115208630985455471442278530911462074593535310115341358244206928960673279986834139346345104953534900547421532793706008291525919353075864992633817241255344968883240278800912900393720733170362361704391212310595599604676633186022181050919859995648996848696790758303199285248367806586625064615365321204 - 28091555217973120543083405874354123755224787199265411239030278554729474843741012421230458858711667261022755967836048178109790350764957576696046398305759635153692186249455291106618639248800186721883435395633435072809935355349170834017569152744171127798734395361051465509944357502866888956457052995610239976841 + 7976372443852230135654925023692267838239298893567636503121174253992698344988934425872032597433545433184186953398960245201707289196841653465804766663637599931675063876388964554856243327632786606948269570553218755961559012938428614978605815064805999640050920820640307900830966052775092553119884233598806729509 - 54880481273297261299112162048425286495488456784534047822559567158554467962556375951242512777523300243960322592851735091548550865408721755218950381139173039406081409324427801204262564580854141263177516910715529260144997439240891850082527301038021475464839077365410355916515876734635990416159254307270117056118 + 15632717644757802549360169972344081577515243282296546329225318180238867639641130950024551295509468943745335006143799340601163632028268070951626250707324418809985015180485192575034675187357604305851929931401360096248008377959393695937649435276477234536546001504278105830650127205740591878489249110582813503617 - 12623747774272297988048862859947192831864904421232045965653526762059055013416567465636235989569703638316294500870993282059835168532409834341549339478072177926981455904733261376011836665447028541794772377896115199018335137428918819526362644244358654358101925177734010364889262618153466382175880456873475527766 + 61198935512301113033630566217765837335707672252530614552359401958758317130316943730528682329577602252174832629053412640088312692466857262998866128893745095444403076824264640636001665207266584118325387846156100617950598803182685166152088331802933293045214223351832130109139153739469453284497654110038822287012 - 58285372173089385828731565531136557388231243956972528446382570297300799107908450369491221336807535549503216028245718341060229623945751734964629570615233138548291722957431487544530144842430502935462574362878387157382678690603796164210842232517625305405199139287871585882148105539142003394476270415537601570015 + 56476895166914313808327184375683916737219578949502895097281763672126717255426858853766321223034846532544288146491808765547964780717371593444422676052078519859365860495756742866868436027127970838880015974989988750439531594024906488874088170763282513376337191865483142885705594313040877270051908374527390395285 - 2793474086579512147338868399056250510508600162483713322849667013202241337292592787492280026217429976496274295861421655288889936708734739851382887686517099527540965234223297294637108014233283676850057068310269695566054297861238819244833996522521160323470052931703762692386197461153382001099672697364258905714 + 78327158805042009442777226919889667605826254711119332083774891674264687937602769453653661300916367875133482660987876986344047524500018759290426871698017621468951790229771982390187481757635854636290670729325929409121651831885931920106083103342879506126859769415288938996513078100089225802669375791764963099604 - 25043442414631708709072498580244899895990691029085559207724617422467460232479131926243073159462616039625839034625781992485611071930008950911658107752249964223890562469152074290855127038088739125143369972229658892046476951235265251607577165358890317477491589503611562448397009513235426275145557684046291854440 + 48314849422682273817443915685777345672853439987564055705430949396537458514155163029303956249958664775153025922420880663165276039360781262649937136565753684791664699095349478463678689940364173436019956460604651538411873516559891688117982623966830290790206367937092266089019790284972358726184650495060104046587 - 19584217713060981331406395571426810687748304261431561100113118082296164472498354549544570866887874313270649461433500270165175976323698165563356060202286472311199068697041407427822861052033870954026459948158577757247702195979616262217351615733772692898319256287118272329458076255572949384860623462279991138701 + 47463559853550124879300505835571139811786484885055756823896683792585276020544121032834017369473198052758100310580344198559581351238749611021333709305418281738663558175059966559633190576490579383762231444019952388893229430898443154433917003446885639613031602733878316907856024437594211646005519742144969288382 - 39974259118894135765762117115727559908247998649709159595444906012373279562746759098013744276102690756994887109914534496154096533190788485652326763216034598262652245931564836978937408954365828322619020379054995293748058674602749366268227529365572439942632291538357154165663759177647329466588252237935614736126 + 34685897833427510297315831097068874526618112292641701786124892317375815934877839384997513792809540814528369250043986751358197197834643586591912930111528003397088268254315536820298193835055850738284616380826677289018786774597103879028134206325590084904471974448387749451855405537711769970192229928465371161744 - 71150532035213123432933145572973883781684837603873233112967023467506994288333691896795043280855063079009740463732024342521884073922359390747395156216871361621332453063657440824940482149731735545385830993816029056769888049408012780779830568270068350260829817169393607799607177403866345501597884239935532949403 + 7160883302051000049614517091620141371399107241040848524434808212849215093148332902887992251849281416710236257979873704855470894257537702261059412392688450692330360543985447642552636325021381465917867992870661520473242527873453294662223330826531061117464325601309971445883726440161332899794621265252316428435 - 58205806102637099648211360758768845130943199160410180462161558827901973475472243245355447186827285399910397672036619079616412478152016583547414238000975120513835510314270024907063511505676510137198019255851098831804996626463189276628206991329465262170949980597396788237503563374458749507010716511362408269123 + 47005575438397421864150946021350223479457074835033691867198629551797907227472794658333864570302802446414765066432878432413049551040748392515172113305298138401081248619154882638968396780191794931924017665022197352435565576208039897285860928898800250973942862988082384662804460427491960338495942689080078091990 - 83293436211278972468413448884911057668391317122755922984929904642122162605126986293073947386351130316103211651380555306828767141315625136245168207849988233303751564013934977162694231367336045080080220192646975449393809043478138665143235462820267479851309586827034278693772737765269652152985132925137744381798 + 73279085742569420784672136398020360249716105176263068127788471732233264683570019355455436542263448076260014593644291666379529878289399084290508504332965751868257482576313899788045818300964492116187544544901982257515820124463265348273125233713805220292302658868137704084233062683346071089772481790151416798280 - 73385658521192428420806881391958093350199301087951524332639127683214850942776389416801157479228483811476642261118685611907859409560885028803113683753195009277348171963483119291066903326400469300567773579061151603192777139033545195158690969317703556077056296103139126237953362626357362364124993005304599049052 + 42392605544245743412699465724216155597979623573247183539383407439436717420575615171550420197903595944623964210284426430076270914910191279772962554749635898486762441901241739028024404514841921374301642570601540589579751360015049362579373169702976058498623702973179597396193417607558372935853819850713171590598 - 16293654811276874943196317017121560054439582028122475424649541923694172623114639491646150619074012066070060058875798752685794812109630558439077488997950348701603844149173184216296119695987484987170864908385915608216255270703634261091479578430918887587684731728411799027729843024634928584983064549612180138564 + 43413167896584861862436070818589042040708287717269783728783249453697703957059694549946602897587814916427181111689105551219461982030154960877089745592345561352897416498869197784906543020165993520779938562068661927392697247947234822856114806909403413686651318301437359632800422034941261953740016446931897475324 - 13712351587272165549650304324183635422330453959109790871348512734893027032533089334269170810624964251284711262290899338183812135946745656763106176423218179323317125188919774774505702881403808016316072022407253803243513802845590733146408799585456006435316244956261920992218396259343692563631002114193547242885 + 70683131442516090467604498376762693618806716652602233765331434856293146812143502730569455943739609101446082282722923027772659001039464102077795922539250766561633547830349295242587918920816707683657065901770817264696287150608951850964879867209924053755750794130335608957584750000605177402347964396974534206879 - 87710457103913285211859077553862588521478602623563002580115248863301202258987113464356448309852561940406258649278813207280672934473445166625045126240587026382345469494077961874077130135415604411747988195064062705654623316792491365098797559869738394709111176691672733910289166640443388404587291203751526614743 + 29837791430110632685110808159382119085960015671894940312585731957971200040763211165216400962441050953195620936383797724187581457959975873706245453218887640980380008206876249518782186763901133535711362853660892704698208550334830852021974152270344380512286300506535063848893846971100677017097811403657302553571 - 57026957397314458755222668752419689505096219213213088736138678415179577445549110685499901210679821484025034388506101714170054722719148288510999909481553827772167799956598588396133597826757182665985678260091631304311928962793564164329416305400253500794787371017167465225628752350743939688678229959228630998695 + 164798019869875391672617967634408008794470800737931667175851697485802491443621655027182352086701592739133675154927024190899052789135114019251584289419558205374368140970412050352743182493117900133889944575180509791434145519884251519828355187083508596401313092970723868815167251478757265508665003351390948123 - 73762524595569446523335219850147045455517750243996633441280551006500759977560780772555578616640173261952416416818508769604844170596235756459344284561152149610007256555079255729695410997260220039316572049047892151298268925129954620556100527771938309403054205188253907263210361377432549912954687396199645617216 + 39241982491484881436934656765942383804680914307456306510739910202042094507367449186728409552187290635459134233534142342217244188900395349088972415815516615018462448986307422518859444439428340736723222908709723966393616980142856258810744146262557123095851285517283781185367456373250121110599965055622584769201 - 64610192676075003973956039976533673369230387126918038033020143531277149828682479817708887864716759906708777639488638091587416601287165231950616905011822254712571422487957050878977743567473126055331069265011941535225005056067138502952773561459445031069452423281766625285217588670304647379871782866985838983132 + 72793210213227137891455137554343661871659316233433198517578841564111922570506937182940852802712371587243345995594445378497769472198525741689087095058987347644550379670089202762712017835269109401574018063970853438589324595970233554086534690120056427281823137150124129134187226415341986362514392655874193221353 - 55078620932227795696962027345881213567813699221678475884760641970149912432203740483792467961606582648601812524274278371252623013363609218946130596944444997815280941851358851700704714334351557925428431464879861093136485256997307728419255232200035449956298813073246943347315600296143421781333835754682454103508 + 44036105070267003317795137079393562466532159897032316688649465311348589999611146335104620015777952816846858045206721260531487411843230558140147318544989465822367178846207765083851222134244757062226812997097730299824762450596745187403238006572050459184487560416832721564001856842175278772500159536680802027274 - 36921906937668500603235585985199172360855378438757270424434902281815500343410823830479224007687840101612963545644463958674147536123155623669758407070258717523374426904915725484432847405669458065079359814647044269269007932836364445788131539654429759785330075899059635150485001714587474214618895566773470830164 + 78072496845445426366293813172032570048922256091999233420051529184725364184033756336726945997828780582164466926238046610123014849801575609662404788557318441992856853113402893803969577703978187775631280809986693998907647492406265463163827800054521977959978409828564586600193012818730463962779111879638077867251 - 24877229943937846294872430727348474549730078176304755205898136108432666843906716836014192706811904225914800794559231174896400827726874225878000454819888785034192178271307046851729718310846657211828531836371342198409866560110866169173411171142073494973308211634745029568685127672275995920193579493230927715193 + 51107284819706127829382592576483063706346273942936711313364209304773255973336376919579494858067239938760666555277485128055840295595260422720250808242585043399953596831458532679439831334145240013716222204646767376149685494219383778412052377623743288682112613336639378150155239792704430994481581967791998923084 - 63979630919119240247770955251199770511808452035231803389370599935965324727540529587109238376931891127821354686300647831857640932625414159063745345519188937208849792662606164475002651496220296438782174091870411262759663881509920125536638846908995267705444255949109145739102458234982534797636376783934522376631 + 63230520022763194900810575007470385410625022030576781878423969778637707649538506422101040228975542001482827094267219166180870041009679959527968766261498349410344501346654569763771367903674361282347939553034043980756672475567386405788231870726376558161386726895420060166426740791957328993070476872401024391298 - 78822831504270398659680716657376287525115704309254809241421129527581812243248286600016643887097166101027154750899182712529034735104401850053710831517571898435225523567075804622680523214541927881889590837942994539892002787765619106709370583568165007530419212764660845624371927251934119730565399242794308771931 + 34613513203157442452199198598857874724872233764273749026876633938709668367227536440657976029518157808801283277854834314486029966855247176616771613416188288203956933325157481615929169591454321091473198641879861599047519482726300156911442984035935833464673541584843486802812130055371186030006960917408255955508 - 8327208084711808194401714545674140346481973658251888480980508994219884438990064504070630308556368601676637831442025482723980265184905774335456367479193033780662461762057848260780626701183136991195034158752424142272929366073627068785959132207309550801799549563076060371582859306788609270102739202312233769058 + 258993026232975212555753992186199967844497169456659048964354744566187422205955222338912329179733795669116252003406308619645058754892496005380876377660993935739236032359685717443577890985853073465845973885209183257520600135421466366244244045293947780016755641075890083128445120818954159723088649946449029666 - 1512322558006616094630738237653691012346046560473278346639658151949567846575333269319454345378696180348329073628545509653029109715173462254970350587974769274815411871787656512530454705856073795574813977022297349425992660471387991587045383343943944356254022709142229882469825067555784034886816915272173073406 + 69915281767922185777816970644146117894992183159760614081124030748667904580659009435214612444563520870092727383499691951658343927534991203439921718624724439716261288376243076121278027581330585582552487653678443429311274761726407675884561465197742787984782952156767021541592112313859481323194205774415933653204 - 50390378233013981925554579560095670473194522867344987862207966187528576945760576843659014467972205174131239896735791669354761659296236206804543403667249338359692267440919711250229399471490414675223193181209225451761557818764165234631311282979976565493489137924495725612507359770090570891050427510180354138589 + 64218091900262328984067142558037708179239624020186720904684700159244051981668666769940797433186763945798116259863988882063242464001969101214128398851769032443796734204552993634888984611253325874400578072404360609570028910582039894271558030466125328887396856159589569000106050392609517422998595814573674964304 - 76177394035309426196928550251683329371891018793472493023902783425161452185868256823057697729706037359356273575547086380910316181103628401582220422523578073800275337740998493380683792349124045477788527231304551271313714744937255190688292724719629073187368287023067507201970196465236925993594840175793118392332 + 22051788643166405555475238272457945468476548708653824517208513927388706580119596576963451891571086827720358168893432753286862267660612814892130454474971230645746710879981316471561055403651542592031386628776506063538811218062932249498087204410922956981491501025133814390068833623375843675422926118209901761521 - 54747077369245311090156313792678588403012768849946102674391402334357217662369526220430046392634164985079833666935051604464298230835047421936836502608560964063884081837868780943380242944231037282922666068389313595296053565572254152166681373700413984238143810234711762540153723819288950170059934964165087585273 + 42753158637059874356494587496575666564404157658494747209698267353895117213193056324717565555824847732388359000186706958578894001187185848951776509190937317939365019325066095868591849118610738825192290676522350938049177425993971663389372881607853657074322007831112216609401768437905114522744436576165927218418 - 79945258775587781653933366194143248899083723499163738672124579546209706975400838016593094200219096799321178268351729592902635326993318307725392995522921136052590176192454329322379435755418145640941432820718352490426121052570805341615978830412370981530976292284001316589519870825105298399834623044417859344731 + 29210675661392323145026826194081962399983205743377324036273392214964751872744655550232001149754218192197443454353279918414839983257908821079628552823782847430312581138396151510770380773565406731437117753702330345866059062381670965693185431473246980032258194168175087266734066106665888847766638062615452821137 - 39929403834055318302630471825410619417951193966121806134964067257074422888938804205945449114783496668141609542668315419391039947123472991544791327003996382295207489248889801211647602199385016178031952319728239476111074789790806329129577640851520903374260412845710414124806117319690627755812919871228946246264 + 35413314565835691997302645639988392212035792717780595640843043378377510794328498025162911517195436994129302460733058770281522073239617523410476585772458150756486666682777665146333459381984234611554129953483492027585326831243514122141987007196956854950725158504847401659051621531852274768165026906203964327668 - 48258518829827837402604877865322082108008941243361478250159167621948474171359625393772109870155901486652479998453581945837831979706225975842299909786969490280935175956016031889009346386429411408083327969844058581155496756181721367461139525699825819805861947020456265696771744106242310669693774945754324349273 + 84847069370448892436302655780133252360746054387600977025852277920631504078836770018411687620969406624916112159036624417465928688383896705509154739732004918189930111824251168903438575231606098611453314462392390841145982032821194832207526552433849352280075949775805100730793901047631604892023307286375028577349 - 35593626715444011430448135321643811927315111126668403236639207881312676447240856250384989278405002369067166267298661777256906661136175201712491142412582727033441918565145391009591076071807099381999643495815144545771341054298728589498057978562198345573849858861681406774083951653429343539311978883253616563619 + 32624518679735302441950899409444641697596462153243825926612156525613619373406879252008192822770465419826329630978646033106252387445171862196765451457542258925993109812589121759022250020307054986421854296388889534677008458137731753430227064799765664666396190398108538425445084181332631073216058121800459462440 - 15887652775124497158081163053095269646252093294052417876198914827143474965688025078951531882487720030325037039592300126278990304575860426345439354245568838161658555432776989851784884527023260331503504323004776585965167474073278529413252238926515440035272971288786282986682761470315527642943035939562059532045 + 13007189002419129985650049781406464617684476101164665181960002700866889301162715274777456166882764629386223623745065164696373159473094049057837744928374800359223614533923406169001413752898182888754770965158892208651988174082739870998398962446816140253651829475160606371549500077043774293857703380372707570392 - 29871083690169393424116725908213132510972870352847685386477307892749800692645781585355476702899218270023212277783951642429782933380551611271087267473752398580806695014436463593959344947508816692990093006781110008434788480866800241482640869497752325117882320792693426462275654858502162643972665520249577863522 + 4633989049149149369135215124076498092774637767187547776906748940202415164085078014558214807067755235339648229273814295096752525618705038632613360363644567332595595962075474658531341507280638310214838568954818503612003584741223434633411727374390915385961827770205824326767551296986012839105617277852060174670 - 4062802923764775531325388778403679080955981480414752887495555563545369593803342029078013485438074923712654983516356468779556489523104695597642995973210418661906076827341776382939620559091747399563509309885686020858538269733368900945537462601139311097148555618027116869394437485982599429143275072096280168869 + 31367826779911991077916508408520304344236832898037799034365647662820947272543687960845979210214883323160994750035902765656568149260214958548606358044663513672696112037042261808645138769288774693474525198008080935974426655278361984360223770164057458457142736416787421412729606394252462282660306686451186203001 - 45119582759247221535881450985263971607970236163533941529723006305281921591519426001035363713173484374927812686204373484349722705405661167698683115018143969073632205306138412497294841596129503991682900521808874962148590586269472323981801849507957214808918189207351337344633212804268028977837490354078541174282 + 56900099541272345463970332073825926856374427061968261127683536100727874582370650215491520367304629458904019647105321141069023389742516201008469264730882454492232371705675022923271059201882737847482021279198003827444137348297899728260638798123284680072368927904950243191529470115459184816968845764789801340329 - 39056792983439344461320966444634230259414579193706857877048417867642272394339376339854118279605196631047644198979933092428202338466736678399406916396523676354980550235384426830536349564427358887003717756521741242918291711912919671877426947114646359518437500927805177546177974177018306223683486030144252288290 + 173736542173760403129178220995230160785100707554024552881209984647404943000589378588712852294003475850937050555570363735035602699959410649565896817093186356938837178955057654002554705433925795463927750223234395043990121186327225944555890022380843992092584100947043661992319994226937997356218597028722330362 - 18337308594678289573904583297046152490882376471596199372563400572351629889572888168947785845122208852590997701633052496080665608854662579715735934380224777260338977259614061290188615107764842877490625792968147074823872714237656961384022083997905376810004929565006952984283789578533863107142736403026973528595 + 88650480668851956014706790543939080099819779205950638295529094735349392130503289477491113526829825296899934997375682858024249182405565068549853553403301983669194661619055492278212955972977721614241749394023193226390070193725491076710827036016460717283359887249906197650852003305651880563434655392202540316829 - 26108820330427729216438981619289051533748938939956393533904422218447040092359194341832668424414216632415520092552797480885431012978341913992827653114920791436826955808750616210240708230361656769987888477995760161201317597443834320753037483462896135362974763052676384905814280012167483954786748569742604054388 + 68942308576659742198314459871030236898101179555791800762380517490492757611416483165582077110924768257004415326857860018553730147010115230614043196370569292030295856113398093193256602021339278147435887982184513280703500192842117330075218102280993136271524433307953012699740498550839440845422101467134220544046 - 59132888662549167822846536060425845234230552550155994522455668512388896441654648006854205345141435991740321273496114692655628652911382854775774276866762174336864583376567572607495173316055985167380779865421103334460333660597605472801290209484181251054360949298443844799813242596817919853610324500400539394215 + 11361510812515806429223735974786286215599901977134814947550154581895636734106841147879804129510809642654952749765534930875012709275225997760446667600876151338097317330690400957869074001370439520322219659328927005275681156745906381671060940283779004967601645498827470589999422573782785340986139245478719531555 - 4971666850855203155974604294491411764887782468733015212551406014474500094383307250366731696747872260396541003362301837286020135258675348667296693790619847458215445258694157450179346204620799788344715739341205894789727953942639865979790062670159420274072009996666754615342458679912653786538584694796387654240 + 78901923085817325956011555288995893988030538101859835986334908234426188434704536023904431734978510586827458466105314093800754658520987947861207501816362380419173236620368630720848083658711236158389733789820071554650660763326090642059004193464518887429435134562034686831732873097909593661909454350906157386476 - 94324076177072481969652518369668159657982742172806331111432050300051955140017512806040360562988220534224119664075077083987779856648608856499490693654036425200448957440479121905990380598198495506579555125492213213716045632644769423928912081461387299258894683826334102111879626570240869946688923722619157180020 + 14703449899695986507222193051964988751662442404845126073154739393274010626283252982989304418396172620868545334235826472199582149721900417192138860627839874340213621704298974753505292696439810345961444755259355760219897693013314925485024976645540888967008467517823518807422666448842647947389677259735576845502 - 29411574348553478136045815278276621865979309541145330180197840647827582077103266316010463805817217979049450227499876096896894715083725805811697389024440589275070739579132744058752866832649684559982915517460925241466790441068526727552232892186864735544825714529616404486399363496580747572559130992475811358097 + 54522697599793330671960770036401460372320643306557419690921902132275745532057491984145417271627306477810796008325186896133811280834016900374568391119461350926150950315484395670440218591515835093710296681978589404704979097415257536373712926394936295209235730705528557979740382482568728669472506262762024418115 - 88897249590967184163635575721649457482251785663657788197144755747262831484461979619184583406011756518436014351233248739449342573648632258683044679088082539010804495675470654569653395778283208667464739801529206123441611474812075537253796984947711370792890529012933234332779163971544620976215480824370129598039 + 3139134682006157547592651040906672277921380005061269141810006055429256321959221633878169541961741900248218138775114411502837532662808043530297952616539350252554051928870111357721432132603901469038427815440436336996350392462377388983861134928361372150645856789562853515202278216965197372627524854023604103960 - 94279701573849193192027494165272149066727560732692513057240312265194348626903488477422569258668753799264342175659436897027993020803636869277000179861838411562799845339821028457093592461456449611626395387548986190632824397441147947380341864625144075414319210338864360045034203873839812628297666349794403479433 + 54582347933419024745116308668191038639071948289052738210979448058830219002935311835540027932781628996384809087686026696272325182462917787988053216786838422417164959284866948937765668805017083777350173734996219114735651970551058108482788922802793863253541282940879694260189026146246845149391868143721233702642 - 79336229268207361774030158611218418889800821818466879157651219138720606745840383350790655023785909803461851786283865062992168516485141272593213973514147847338129196274828182122840971764552102111728349053259289626389888208537799788324494316928074769715108791145444429691861125605446235854450549599089052131003 + 6771398300972550661944119809483703469096174460441766558296047648982291618724903204513366980165325899073849373889692790136657026011053938717329254114170350628485902853287357052977063856427035134936244167873455700644663266455056873987628312278304194199660197394143418128868532835457355651917175663216763929258 - 46494132397974661446818519423675095984403535991625947472469202355428605598340202457267446034567202717357645182492356388335313374516821501162326782438054865953154735005222749442830254864762417935912388823354427765053546991250736704019134528587823702146591401184211512522918655757132514360988825062649766177993 + 61804980797233715527609924368347963211766670970971341018388639616787198785480138423443137731378598701786453659341380941550365191158122699384015941312475979293203305336445360931776404128071254541488721462998513307308804258757501732126552273165520636718804143457081430301316840993403759066265064894472353376409 - 50996518427990172355246486225234603898439090870375938980556092842475849797143469714398891321778405512191230675723459319153380059467997409639812758260652381480259318437308985327897517939554518420198213890440664840385488374540766416004852276679114793632475455591898217524663013243956503809612285336717289531276 + 12002340420725608558016484461976457286744999000482879516419112959518681583252095401544589404976910459181113525405152994591498362542428998804851532686105977598627844181070954523224586224255031905599381404950450763452338512815906606510747324391961997826155853989922751732953981073229682875022819026031846653401 - 20820574846074334589920467350591159584026734439190756078969488251687796826742016667849355497873360903183319276348406821790104368204955775067550611156028864421863044671690432516273099191051618371825882501919113350702508084661381905205793855409656702136675829648535334135189281722157302569295966290246967644313 + 53486556720721390729928131772791857271772965899416358981717648418721391050570913554128375124849595677113541988412831936628842866515756572119841392246968590770013186915488519194294175393502221032719843002004794533466414580038015651954594303962059254854167901633361727930458561494563665463576000866896290870321 - 52989328005064142085492198397741959515809979118248481341846693703076236265697766463157785766030400176477300046603350907605287077211295878086686932127251801271564117217596077749609227530132907526090852578572669291814024941144306868222981172415061287327265147359002235606422015659054745600157069276866518297892 + 18814823866600670698667135802321166387638143367569006681996525365095829589613648360678810077616214360208667683513671666798855920423789167411963119653261892195213008878373626055307219796682924241846127926872400035767052428166014824379350383000713544616015392245477853721602061390705391005179192060406767757171 - 75692775287065700164691214477476224568278755674554518245620519182762474833326425554452045997269275581090161655029887415997629278204722227384682253421934119990527130127522572337006848196877209508021106299968339835603596184940520826257462791960444701410800121415109183445033851358539856823997012997858029867312 + 39032906940529819294015311809562519281152021482357014851083314432163339796866013371942782267275126891530221483594946065593647679334807282161722278767252657601642335886661505494429347022478520135991643504624220188328547179793928797967488664584747413130986695265632669423953931606085484778804493982315309788441 - 13082476712404788628027537871386359842923603202358314890418133809262995070865285504649115228332333313176405851018835360763896216861526707296881614876508634277203526806985240319927802137194971969737477349094751256442268615721791304478865329184327600011572870325449862553408796055583522910702036225555857290716 + 81400059233535218922766883833837497423537654013173500636260345471922075637701969497527207254755513368207461590650139304706785103153255585255704426250166749672979080757369498376131317161668843544761170718685769716538075484317118095674604175842317474599292036031014148183166464637549909033565554685613544061709 - 53314293972268672245235291771742420516745513221355945460453973108585666125477435407911885320764518756733549396192237054458828189554960691190677586267354991819850512768280434451719610458806748167512907737142318979886886878844134995143925877784047130057808502034382060884404271860354663478601838781443982721365 + 84399100180483987094259152912523100320312363383306191256663041003003731645544740443787568238713925626322067728352269763328426122910286523238639678188247016070467049548659091381088253625205621808543803334686197376319320900876419149459521901715842735027453773500758966457359609903215462907425565535236224703585 - 39504276641425429229533530240156722057992973888293832575665341254913598965755544023083937450877956847481285759153299943955233561392841203448359438011911665577443660969332004324541894578102892372415727828289686928902455581067137131876769872496818094568619049023014985398189922507682882996495388329367257829943 + 41419397401535233508848564268810138319268956166881679694195261557456357888027362212124563654177537218746371131730916293865699609383246756147869717068669666977920587201872350529464079384840506558995973647694183805218701360096724342120113906497360164422876039896877109662998915141437476720128852461451307347205 - 68062045051015418821022135867449906730298744165156545565792130277693884405436729114920271824669908384992100265856283967000403329945013632174121202074605404946687566966061067998535948748345802908419647212003090663614848472016424448466900711049287844151848982183696172202209585241106757936212223591741348554488 + 26002589829863897701288634888117969430163195739740565141336553603542889895509573685009363804477087909968535700240129777941380471901285280286120598256959186222680317970252353709432981744432584976066844784413748299117210179596098813693053022218359284138821194037638997598058060388357704409191194324191591716139 - 16718547052971251484596869406871013026761856266159119569773756015544624757850774111409100706451079122611699067270434838165882101961119178770036635856108384481041826950013821155075917408279006448878838299880549377459812526722926974858655978080300152467836427356193517087285949590613198516643462073052310858221 + 65181127594769141861581652074080174834174824639264425287150031609038673421511823384885194894709448204243951642841343228480335803151565679947298825714830262268314331781691104051205977293503891071618510369977500670849001332238150376932321691727524158389969818722917954919565205157607952463811580288111591983599 - 77764028990247414600484134585349013301436556383210763836573497861942369328992126173261540854045538271531461136267654092952806276469050450741045804946531430918123380024606497589117069024162005722165826396993569104246121381376356626941425391535717439883445091561539568943047305297478336767415280826491434643927 + 81380274151552474808526173069732370077544651326094437727660470541292997500388995735604093494023326528282249139863035911537892170005120698337353587758966748193661290565749569565112096088064438802890871485285626326124681907333224749181010095972806623895494056950543690277014766819655053892081940646355381236978 - 23263969253626685642971327707426230425289854978912742333045583784576622708966226295748175260203154460499049483732578117444570159291689972589252466831842081479369772383292963775252119283493260747757470372679461807769700043564382077882358028624197468191907091248172331496104914673385873794474909066671167044845 + 23730570148492187568175719752084096011024827326105977415441757613866117537435098979764093319780463563503903929468166917117122066180773078293202995947317680493244703737095972710261314759954864008875221930666505837876505283034711667568483481772369456058953849860523471529869651760277209957631378133702593332920 - 59852320347157531352812935064330231646991525454242780738552451580037491849904083925141381629918288442316681862030645581715868880200945878950104556941323792717181630919251507939858052689172487878185792047807294798255260593146891522840981913441297723653540293191140161968967278007407641161370773412317024585346 + 34544548285645589123683333309510725065549715599193020799685239673483155351156091140486464563913313976837245735758113508007942325067593453841456379974578580108672910866287167065537132842432888119311961570383664927209272528437262171840727459023670694134580836389125460724811305927011006171623854985318284149974 - 38552706244848953082429203559406081207351121078163719740871781194334025804244988370142259703454029577689350458420663326563145973243461950960565626318752482108113559581137050871782028095328366228242150530329184081021016360555200919284164629917449480318871772826386337982067520211635726841707492366525715060153 + 9331306037692398885421584726774382855958144626593491471983813480739074122388088975621188242632157146714403009230013091973621924122903730635230074487887451671294996963601308920244048962540653594678871530509083034139116174984710657567888061353798723467516928184948247906749545061749486927248557683197562042182 - 18724074890380774162403471459387848963113839771936182519314759486528069772328039249321030982811104450558473427900476275225688307639792826690413900226825585480497309557662247760115740398903990543054555845165853152663616061199432507473250029783735160144879514732583517447851924767894421317129968267919937789320 + 66592331466369845648182421309715738487990190697059068785660583437682089722817941122692938617409110018433893471126186945654904997411798171398908013066238186814460286969706679408807835602853744009934064146056315470745527076344014784267996173188796957981979309700953115771108688611852202132149344414535811919047 - 85048716219427684763363948985444376366598238518958469159790696036756475437148417735701881497081832781837317652052085078016835191254369222189812140829878576029261777716185676160444338088047576065264548393204539011470810625514769268137591344470866921257616380646914611337071565862726457147782849838500394723682 + 46672867222521703530980162527250372895489154898131788801492410678613028955678863266681925948491729474084085246164944899858787267006174296203615225207212219525318792466383851640243189773294633396724220128169460933326278095635950439530039800431583122904713337213069318731351929487354550620887639435778543941797 - 30943365360874058101867086052412157973584122290585468474829759765278438619064909533533583796663149526091706586414686383077184716582491068322587127502548211552927592003909142082398925016575525290653355455547112448603411296442367377081758781485714475561337189574317370435659926161374346439602823273204885099471 + 18125012720490763098150652097523905599203575334814935379716787842473690523658306062724396769534725548312612716667411223728979966665593179959412858520416102112786407693058435218872350108849865809263420231796124455103896931538324698917250575014575971201209227220287806304803595327648702609740747667462515401150 - 72824902198138457586902574440972420737951596813428263657700853327894022751907428212388002801488341081394923049807626791609408295105734873330856904291654985363634096933636184051288867343597298472040844084843256620051109871232359459031064535583564261686766728727043513574375927775754152908887852544750989246378 + 55395837448870951870602261476018963283513164506543917171839765716664838453625680972861963002956232618469891260306337511485362610192578087100786017152596121591690382193002028390582989204076519472170992262918410049863657635338794079907593273408176963322774069603161280942137333183524425461028961128584831311400 - 73815444194523933011714359787601408453194760795435125687454114452002563393220863244433671443441220498772943752722182475960032158312283214347292805011888377012142510183352227456686442799615124817802192114790208526734167556165613224146723504576993601203993422032477589431166274605748751463726967688061361684078 + 47125121234077740168256569842133204714301115792603692741413491934534893196668169455747769961848888688876668278681739303070823705898521022504192178668290802922340530072729255221972883119359769864693863717577666374663861361343809227422054844824351767585390801169401242681492149087909182786557989224190386564953 - 55705967628614834283401078864857397975856569638899014433334748547633634441947956064502006830230746157980777541828037172499217715372450576770644568397639837067864638118892029589641358600616949470267618048779776505505057596292458062696284376556933729778611677858432004682194406941206234497010217810565057719883 + 62674780511225188766112930599737604928027836561419108425447494601613055384745447670217401164697546867562609090127701927217536316668328060754575778556408650514414449593198257524946231927050657952090884887376080273219023967706891700656830506652196307003311475236296420738741288596080847486213179583304163597547 - 48708061153449753283430800640894386225454047371241308128781657696347802396940893411174750142072148380054459806074022457243215012097888848516645368939756554366426916489533847100990510313210171808886635606396984031547392662227756553954115752121323240850697887429259553006400765522765729665424982341290418099023 + 2889563456274328073808427462089806810653232424661365743872961140067626921456164074487295243308878561355274532946342471104266979085197366061597177574383978178814375897865452743245493166489354171540825480661153338193968156792855136454920673234528984048540261959717213907423835117923149464928951030383289496882 - 27327577117466059286392248344589722110405566873719843451838253954255095226956265374041007563457526790127716299146695363985817713306860052615627181639425596874127592236094626806750236551771540074271774423513855077460325286341213193996147787028746778921303821567024818930385574550188739921134696871955610494598 + 28162841426656089942683971491442217435398206630815949866338411840884003001142122589417701275216295891794653168900054277454901817472360785822252559034561254650087497229038750230308964874192838684441418119505567860003203635194954687514403996315761285609323469855077913296902880617424249154669251601919051046204 - 94813004788560198278321389909173866299446597154947856302037072657994814901759825643989482360434049723650365579588771450799453505392508682375457429378090033873817252666875273921249719913437301282343832092782041623978933125291337750726944229563695168117894814194788698359274538464243113761563039117901787278981 + 68851590789397417345600968820792849807935748193727235143363325628533065423368590184296725429998369762434405400278690952527931276714437675262544160246274416179771493255850978118596607808187902363129515297323249579008842023948066665929275461526199964326774756281014581072045978675503731863265486875237339448854 - 51052579185557726241552724206756684553513085404509234538105768096430425103347882863354858898675027538024557030402270668889189263793577628567935078120415985915322489378418940674168172861185810013065940580693742160913227491110154851268447472409480279500991894772762869623896786402060129961029847756451293471906 + 41972182261776187608969346689685696665935517317415275477442872347488851284362967933285068669644055512675614788260881637473759869298596012731104239572047407731539810209134378770209259996209845231268363025444907302245878262708894119242077338147970039096567484424217792851800500856186848643336027410280817143908 - 58590143333806886110292762628031985143345182284911876953132521279456386081296559078709264941116114075229225000314196654761906504183240282918442011786809119058117085351807085828635819247001236583570876508944176149967797932204109407341028937077409386229527725254893699415022113705386705366059270752309008599707 + 43017668888389803255135397984410544483339277659422800150438675934987774860281966469682207107179715995684578336017703636854539569889245138007113923285080882952471767823415194667517128089917486281716445607642971621204690861623452780239902682781909425885290947873712393148759888155794198982684304088395653207152 - 6657268045754798426434570661600031275177635957301852337572839788691266993797223558105165442257039129143914554296022238574861945198358084523849984541977735588049231155606428349428870382561518926963895063200241961796243564081242431869534503685834066494060991025076848228596671931353969682646389586557677374142 + 66112048718473356093646332696108934826651346305889233870513740388238623470076744823952728544379138577241573066116500793771019535519997029428345423887709817297872904319315565368768572865723639759003867012776410923426685730609207275253872190417134914213790053221146683227407917814889976757563917980017300936270 - 48614446757732630856028020988906251595379006934656404389451195386842587694723894800625238154862585173785522947800065187002838091720537906115257567655854662372588964849982473948352327948199549268538165254294468013626544113163270912909052990171716977514148147804051567344641924445656571194663106685147654481555 + 72945892251351896580887843369963022471952248854030449816982021943142684782615156801340395079546187758207186222201346851460395107603856600162520289800993777252951998554638158322908546593150825359542995158626547382365496508140971965416567944991480316172649224874630067560756492446522191613210568246757811685364 - 41506804670883339415133127483833745164227817244714084698639058685689936735880508869350342121991145705473532411860860400823073149047973336168300035886762528979644583789962919912057957374955381652823527539023781059327084330118867559640091734923902136475730247644257739864617219663561199160519602624448201077998 + 21247352490991717767991365289013233583632854218003165123167277683976486796344210223756132900034693389960608846795621387875389989201642014460451468064632449918422613261340053123310941090225516727686252252529098299296904614163853330599850998070294600551834735543789783046435887178892872824671187950248191299828 - 61574218545571856507774431872359475812916135188199392077708027165869192539877014151652814420381055092200556734506425976289848764348589063889443938685277862356073343407016116026886568667604524647158683618637185181493364566971463743928313825482431145021236849574577470570142058308581678484453403555284201311610 + 57530384255627986246338792881710764470911084762306731082708177329574300608229935279559580736727912348009069163046915231512622423643055514646791587741521311163847391984840771709049974475003434303186928080866928684800339042933888566069349779948737244081844250901116251247171625263709796976785732912238062670781 - 54616025344662164510819488098335124303951765254527805212565512345912366996682452190978024489852998992834569748445971997686713176996614924723595192544483278092465287191433958517519029110249180390511705916591089493150473276904474174896842526258003018608523486615238287771387141670756711497050979931573089495505 + 32270943578889313095889370057767234735052106948762501462239598206846376795934108555800940733942400451400152444214252456387795106505121684236613132173799364326224085128399271825144471558026330725572304255810107869904574793779496213844754826329209886471741709929426096827641973849074294500665458753808579250921 - 82836401585252458753313421329108949277349814369341940643333112533485683449210238177258829297918836226753201044125783086763433195146000124251211421127229752613364503391738338119564894985219245733225644415049193330186201254090503464153546277916859228256334804479539406409966080449632504204580887932925297194181 + 67966324401490090906378330435475456110337954146691556447572424614502288953700292620217636034497642991699348479361832141627098620390971924753531932712775555689671966669023769601973962685437369369363481996379996769870015703601420987077492700280487528948776582194649396974972335191251086014100782217629002931381 - 14015604438998426193053014945993185163263164468069450001200718631699423589459664052304540833325296116811643715203413283432747916043866432652279239808527152725388668996088840929898792606972363403044042870202414914506823170540697145503018348102212055242302858049428588139695793223067770711381180512347587788015 + 66306166738886690816310797772159613050452844500958651619473837012206392349358836557981642427887195906526434022636338085921377271087456594139596494008760809923677595699882744622397141263115291202279912570239989216882295767414295905000197496111695907622821500113910837179105388862048799932849796306547783550539 - 74768771209537867073589824093681810176105684312258358430929500358326900551884036965835449968836142598517552075296094678077235157542397000497263762674599684368201121234287475564053406190175941020335516808633522082643965682308181371290652897141113261653800162579812768296769693785366592588169497784312691830557 + 8433462654704994306139157116744043594770759596316058602550986033274648302953361957801700320653942927527166897920964350957742704549742989934489978267683553310693039470035562858935818268755828108325531532222723340842057575154792427664098596697450838695748027468355497305378245743716250651788268394134019761492 - 15250191266408668397343584174305396838489111735474347224663454159680912113647229010367489161299689966854871095675511763575360811158941485885765148339003618844949943328586239439335156008499023307493102148949570808995980982474610138358365254201305363768577764014287846424215334999672755680406710334422012618241 + 48760793754572420303017365541574765779791499428768661343004470514879995815458048580383692984925292158971359447415422653159835859456684988961857737391982010627938308512528006392244267521332536434766081484395534259269603835450162481458825894946074953793377699164937965396060971675987523738379480361638909154696 - 31032410327838542138823753233548405764337964414357021112860457298555383401943784388643993080162870676831471420270636683583921227627198300675326525046703571340898654396118136233840500022379137257442055850781646759426607853265072733506716269178683760176512091445153070302112831288859359673123831312333608084539 + 26050134975751024089656666645799151050944900249709841906877584213117791099849249772958871740351164812357001982815948001807502645791567641892081980707930111977483986092683391521122849205932629939748831145689571087215150845415893486818004429612998620569983676273674041118097690879034289373775697210678890493300 - 66360288374817779397752034705131600098924614766243485623990532759311621942040843508132686280539409853991246245950399651923541546154527999710192042230535153610411905894553400729263360524959559255213933341718214902523937506182039875509459129892350765638339410111132125753067889781139139767261395811355913517301 + 54784166966666449723620684376537764603488437912996143437897783540596853175383066838122491762087658391487297003224781756478443716553251996834444386968186802715885053418031315503282753738076400288975692595415530198260218333744797004742385779729934102319337908706354720820644027168684836070217030874001283807697 - 8480201599621919288989104503788981364154164814146094679337912828405524576466906431289572368110378985742786430644342553516926686398628079694421633844335218122754767036127432269046118676280952133304765723400975590336280081621213754582738725644842581851920227893536101407371963117608053979235800964478798003001 + 65716780072456936305881146627842139619235415592671754427235955496692801350603703276053658079747871720924174233614976753553914712438630449505427998915383760335495223646569439920447487356254103747529155491986859413253382508972458021108316709411719670816825167984323574788114440353593682995822785871765478891956 - 17801428889279081951264508755961198508710767676598126036209043501653673680878114949745579174130541968002224378168512569839190960490913525380148826143624606993575277536589667610496153018189852349925527073232930332785971723077588835227743125849870210508109585391462636841114444833007354098148197373795799511558 + 15131894617712256307202222675127667178365201199801845552107397788093888049445567029955813187690199404535247592882379260969637514274462016804786003607362997504125100873362796324744631781543414335220043198297997538382010445788805292877825164503289137383207309318201731733337373757696296259178189548277396522504 - 69889685924254789888925283183938538866620508684295926263101295724728895778584819179642839066749045132503102248006054851290557044871074670940224362906199868474489389300686791556455846008754083957806408502969786441187850817925984227888203223529694091192513425420343366199634464511682385068785919284783415747533 + 64092801067300667921801719860392341046140044472523115592698124481277021598733761677847114193407011727297986964499793672170126282170740478104859751851825504671964931345078989464151786735524356685581234647010990664691083148895264197916991999357053060286773313480763800848785133277287843795318057509658458590126 - 33109426429011686252292463771165742978022942092720140539113362719774816955967814491799089575256494257145456597851889669900021479948358003277464921895200312404517515359709922515090356637832399276302568419818885910604063635244690274044036093975307081120306673248327645052594354497276201384959347118233595706978 + 76504809647522325239850414545064726438970427721437069122147510030420801551226590257900324515458989622346899970629578116169207783587156349109872868477655936195807386922541022731105376662061333804180522377278238723249527288958497981699224653691455587490420270460498394182162369375252333372600060360165552766550 - 24516778971446129686647570831195112731993836721640893789094797387595081598546722515285711779912980391136483714971539213102070689676394076890474672046770345311056249780257815171337240096472571887738914518861718959116713200245142754505477530813415778238530249785425473883424301589248701152645346492552672972231 + 57653980873432003365662343427184202990038411883040074050758182586313500809776654440844146027467325083903601126147290659812092973675605025047417448995405827314366046259872610590038192991408456480402496998214148982997583370560059037384278151378280662199222429215372706033956759373149095830964427549781381231019 - 52461914683866182555332831668209835981711588586855677890601347597510790413329038170278862010134326693558906403905853085542728242033118845036709923293196273581778932647428947041467650198743211614374550564341476910584915227482228794600118944860219704352750906102849743392980482660055974684047605051761369198596 + 32203834482052876334504098037021563724408407035035631740497112106295396995583136589257359377024880878948872316522713745246106238888358146617684382960310650360922340017001091875825113126668028182462155299396070643750428871843916600412906207582874702552434788671281754479729355183656317410240451102589729053701 - 7282262682396175996791848345933026569105639881627120579453469560803228182558211961987174204624399529147192663305042550758956029319317595246328911611318078165611727207573404318832507875575685453666383705182682425824897013520095151019915997644098596784590897945394223383255095572724651076923730354897132413780 + 35724703601792680854884691428481505643144773976827691745528339717230614895041119679634836409666211810613513167735965843992413645830963897544140356664229580283606759217248058973428200706039401400372351392703779364651652918674271100739633144345383111625027440449890721133456568437843435431948784899604523226643 - 89611511954143145773949236716305986053409778355240848724683158714741550328219921286891505985335497921675684475978747548826876108749860070609720361245873417539968182400066779005541741621820369198406329913968406956189280841691964971549933631571115716843115810384178819179647285221489531016649364905245553668775 + 45371620498957655858682378723493919282085227745583659158805082629939231777145084811464603048595770726682336875155465135428040761060685387045724303869423463715124597773379328309598228794478617314863582243154233224923512653650640211819444737907328359705485178165957172431188242119728206327081056677514468653059 - 39484824176142274739087422186344967456917544548578884914806432614037102563287727855139046310895855952853633101368812206536491142947804559248131416675952006694310864097583572084707028506678459336240421828294326450175747168760485694558474321003020862999442632936677142844182567038794910233582389937330285635038 + 86547593100139970789200259269361413668001480009420399337817636144996797050368040486980549381507909259117574217928539445643349096724256068664389940804136997371124402404052155305678879183149266504354807979531276878483337903734461763253284920996829170035412825999173813722030183725426797462964165066746714678427 - 47518749994940408659207813751052516431534593055261395714084648703964703144875220267684723643630434674057709726416436448811531544656393013172383232451413243775390888254742507494392705695321484280061958381013463348244761994024884665413018255992268656867349202834303084069964549884312456489196387513187852814749 + 52489066515456191709575954144000830557306213136580461145266337521581746946863049870870738627890915065945706338503229430901152807185566606773697993496457518445833443659349758052042416504352553407580256149491035684714395023504012395691484318619750631825208383586773419781844623005826063016096779823608257721533 - 91257199170035398829524467576529819218226559614989997215825993020012514124560643562401843079388665714614628244782324887728662927073603708668405534881585002578430731797725175007813800083513248332419773919963478620999692098319261095601072243763226578913865066621800294852116045425679841203862985316746155135222 + 20930042243903713956764044590596167496686653935346800283517684244481563913951022611419264999880200874343983110568627786735993060144562848010753409896262618192556975324618909029579940720537095146745146147133347773210039634838133032735669443764253051328808627259132691916717335240850300647966488075478024214936 - 8105478899213911620330598938850867921001323776003223114227349039877640975303192987490366419097821232057739031070492698081423481446452077807923554478322382331652992005584468223290926540201783904683879436113525960694179837264016073282126934725298777084678633261295942710541186254325166161206426594082033023663 + 76143737940584232975175515238209171680342910867705350345875887895720561135424817660811868835336525159414013706324557472325518076311178697531503820304527409980311218400052804818628824863413724404505257619941078426600933440444025021928313411405781165964430578536092113986768382662900163583864061846837785811464 - 26437755026381242643282917543904524095110338436347503994085138057639847011479678758797713045909528807769976304663380647544330763217608917848402457720074535743102828249400993934453980978468068367300686896403227066241262810206060296121681817023314599053045515347220424360157803408129010312094334168643919634843 + 89202313734194801524777900310261263331352156674327164472136220902874827929567322178275037412838993264136474613880524993019572056700335554611496176950321641874456845897784076140018682677585736231564880756244691845958000453564139557258862867635991161570065199615516625152499720222709816612136781947374913964772 - 30403726960442865135504374470339035117347926290918540535182161829524178693526801733245424939473377083778691736801592901209899993862280954058490586822464008023225920461243024592004974800073821285342522376849961315221057498498761749678578114642682220224827825763803580410629039860673506005887089114373128730090 + 32530862757024086762639327692843902748862289982563311925257558457214017431203635447653793071704276901400611798821481817386675884319423764424076847587448414554302924128302956534634388989772977790446756368731160886278468235259022184889370153835904096723513256105559437224275051723959152611747554266117408987503 - 37858496640646452646702792212337597911640352952858446870202368978374127348964607057173579665484724705006888065166005691351510356151390633488542143049969092376709877007937924101907141820090651223779571771865831543409912014449726509680339314220002020020855434807385798130300324014140917917736462893396011189600 + 40215750166222995909571165639690258374520851587437800853148973034057239331386227747523884483464827985468792344482000139120658397855131053917404187077731258463998341939700006540851350856033359031561713757603170058108713354441567311694145049231848686471012568562037673504008276639527155128115355832634898973290 - 6466101512511340787067091183827055335101819735695852233753732053799536717262890189770583672409980846366090574169574092934238769122782911698181079459415102302644442608704655237839919351409456094767698451637302515497123949294854457952635010029183563921650582957594627815220427462099799590152004039986884333251 + 14836579953055266648279978081643966943253335936087503810730959403179303046068494670759285429174591546739192990311474519246820439526531991860168366058045698887649171621043284679735195391534392832603235215691678925922970869554739196912819929467894931721877470996089555900282890354299787682186574435012078258713 - 12761545820954128966451623411475012971439332996873766923556174273041226426315171476074086031709189420750528306757318045589418253620640499365106329083252176318304168612953223786888245979748111570697502070919289686645678581692729579383245035778691201348837479167317205079448275531341011735236794631256185999598 + 18655135801824375056757772262338396623556624885178092662381753533782743905896514260644182344950188898346942559936049725453562097650162570736719645312765756407749665319429192795628410106427626372869197732360896661573536437381992890893271525325035034398377229239205284312734596200376913852602784922451827857372 - 60173421488774433512807684123805747622799025281746654680164836590176900396974572863636406205485866591482315586404885654263092135744367275514703828409156766567804523141674099388564690402847355272242697270866244359849334369531218853511022363493436112044507560345152978955725468048215102222961729012069099437639 + 51525559057916528368564766914285311836150258041515331641213209034430933486897077827215719116833929526372171554531755287197575642751740652521981175182672045309112955356173487789103539395477015965796698654655167175705282526391615139546526567666435995343397997987451125133757181497864746004621673274863983408172 - 75544728084177189260235205396888452811878187959547823258685909912990568851563462650577948690609971749714367190670165491804769551898588953743301539410647446903713675400290700985131533895583610799189636752848182046697878500698558711907677776530684828342007442324738596996674192537059646577056121970736186861133 + 60792129440264161441809289258580237931684703522978176159830183391667293901881903304282242748008285417021541600338980395245366583037703924844040128276044244588575807329518432949409411936249942641329503836997367212990733589505342166133858816436822243854592656574392426424814404699094115009176935241217178310975 - 12669330228982983468084164995034862123532816704581481577009038191295578289985571275323866209886812865035033860139435504262688031965398699143126806857335174017076969915839442552729484352029013135095882662362193582834841404518215544113426995662547029107135280780160754223623106233102880485719589036189968098036 + 43200274713477673821955875940175407428101748953317867280432960137255473084654781934358272513225630869075772052528602051138708347275908866458631229033313314688463528944103994991182338985744488831605453475098349456249868731300016962511419052788253525790259243366776453593536571037198891859663696314772814174168 - 1561424608309616070590638324061780837592222222567883354030911922094969926445449860769178510869736975607405398903141054924699932723969813357613883436616830694251220617886784204726670186293512582495444404652999569846055536884302634821186920274671052714578861910560767885857285455380066422202200503017188577282 + 58918319182236476445464611423297588310430065529992673421682726317889657956987832374493959354613178191549598936355097695889145906947159533551912314665607576125044710062965867006376681018446439794463237946083416573096453013454579764493217732228822870708123801267393640477739278981299883175704550530675524590868 - 28058414052118193504560418792753667914449235854467721671916956051643669883490604346785650584331806436481867722721636958468518364323228797264447930309802729276191714646860626876361364636845868623760913316795130218997068327996487965222468267213761569579142095535377674023758309659637529150010545777187657390560 + 69958204283934165052152632643085660829527327363902807982859354936080490007588169214373356503542121619374091345389427186355416667059092347500016682598459602368205951244726770992115032311811295543513130317003201202162761621565333279677465412432131501575596447303040655930649713008197335520117221618748173469294 - 77798003345221357943742078968260625047633260034191237024976601657783600126713101429735888543580420138464159550170039734836185220685913062718062421736580398812029350562868540666710711559380929565169738752102595291164931185591854672396752552492962099544945279336806151006281886420712942856702812585267259932897 + 50567123859858397960709517458523955597235003718229136640192521864534098823607073856261600537539402991063967161676065030897379209629462551698955474417147124257867294377515846062874295456288177685266004458484979526145359011873074610424420121463506610535322324154428142750461600216253229605725175378973468457518 - 56080551342216645489242758201800596970649378781199503826352949261761161868197062397346196058283880330811833043483906006249178950136984281453426662002689675086003573509170360885550416178907978181202844813148483713343499912617794766317468179402531688470636339453742825122636484143207519777281037419785883601273 + 54224085208655070824246806257711588040738112462991235525354160371422576071839701188150635036894238082284104607237598661953645250233118381002725949104256836619542140831391430832645627556867437611056679156341336327770193540062322902266594337203897585780335582761920692049229194942176217170106314225613185096752 - 21962222782566485550197143323620457602190112880605358291702135913161798538345868351060308255234124169560288379143892595482406952599015838152604300257281943991791734419371498224333765562550330070993246457736784819996610745210031895672070017403834899920954471667250397549503024532447020565390948351505988855821 + 68566212434704993174083857927674021452467513959528712666239498612251500416617663141036219902972446237169277662800884807008862449241197943442179984294814943360929847799494493340754064519045080304148674459623636073951798452184559090623914597748243462043701742795584005486093418586294070744952810122296151810869 - 77335989085377632496529340493006636022287141059420032293824697527718542065108929197922910053715076490100401826462047375903686616660992517993531869069075175235473488484082907744433858897207325027936480656964912497235441709341354871028525474195148337027453922320851966215308694740452683487800505364822331216396 + 88254548883130315906807455840056844263578802710428417227005759767984354515087284525736527698934461432705258696623485665999442494529142371205534136020971179776843650096510512999691638491679873422355053680696142187472425254371814056684390023379616839203218557767787286031439042075021353099264389753874880606505 - 45981827117372623659978228870380054373952208088754761024337022236778138297133421784662585352653144069596427191699953329950543700215133890927663584379252552582867841997348634424226395432084209374231910174314840276343954602515636708251712124343548438829712929448377445086709965358388560161111451277784986261907 + 63735824396932549537716334904519076645522180051752864452491068075614867045504123523858377931715710370458433777408802465359514925547793937517790314584735274917709618893040934739042809677395848832345680184223735300811319155641174509727700986454744204062227248473654865749446521217661792658701240915184833178682 - 58543150757221458160834942116171469489893402083609248862228020238937129694659720593211697953493906451952930457114382708031356383084690618394911690438387480497866912319924789433208574937938474387034565324604098957277306635224411328474621646366108630939717436338453182135376041215130039851922716419528745272631 + 17834321422255071446798768967308660207816712605452688777463585015795748419373421821059245755812885011136519174370647460613657015496078193407273487574608538880338070341013716726833731699080745391950573676495241886391370700698703866489760054764440365688458758223908729277113396314213972048459816232110140421916 - 49151510149211984686673207544600621421387495616261365702338216562107511177065022428195768062909721959387341178414004647726522482267835850985325987700291122253665274322992419746884673700779430319422997273800498362545824335557187847021806550557851209192961369378714392951983659703278672115982882860215855044321 + 89773776504931436823495747736090022007502645780024311712196321020887241467248647752727681685661662826356203090013350125462412191778966500414795419510351411087123461516955219652375366295891278455107388783568606923423733826412212004379860730876091433882267279813577088450694904491812637839960179876979917389702 - 82515514322340470084432214625962315580709167410642409986832134561683747757690381340302044254088977863589990525964954416946566632669342635180226210964943568040093260325343404903228846140280694852584126064070589030734204137616960998096394413508835651424467359185060825959351903651405127192135455632530027157233 + 67900304713436638478580025445185884784739501327621952647864075230115864669360840805549326057833859097794287154341277054331596630882192559656927925261681433411755594011999385888318749153704366395012562704494909057771231569758569680554016674607143097394003524057555384656936220159105833424870566006670581390688 - 88553757713579165402720613075375579001344811764098864483188983640760402828041448827372335042259054723639261842032912197168650750674192016294886446102408846990404494577500326021534011901797071067870766341259318693731222503587005042029649012514098857870190855705112769852131641613407402833908650759056233262422 + 83787579273303965535287496544253923697775397650864380097637676373798713362381932200128689445306942884325251656997714861210849874304159604884866112337113170372205701694725023603137839648980434682778814132811877018300912438185493120430132311629347461259405760946052525711227350621606881846840666743450484297855 - 29265485820351554281142489137662994675827790835423102118928525471409362858972526468357454495794660895375345263115687640991419966101345755235459786211911893985563542412877357859925807813573207137522023887541706268825523265956447324464626068441669600368774233464707333133899616202259860668509588377490893333600 + 66564084713308995201241128764163384637427901283248737913550961120619899810134981337171491071843762297108323026177401856940704877629592349806388728014487607847401627184162220745228222085490078126149422603691398441264793526085330886707163207098328946323343684768327626498368868145233326888467602850123012054550 - 62172482660414401627733080358599036741405736115533832351386411983393973581528444722048379461354035448454404701913108678903566743718003375910449305102697624874459291894406913930879139169497154797286328437001027136987575796059993571979658271116795288857345594972573544027959042068810359239821449066411244647665 + 42964675696629775980018508372020046371444775632013046158289480875044585527260846588645626597763563234247518518426094761805286196999700020730917688053079805005894477479989283876646239111275105006617782789714044862845524837377633478635323434466564919228754553984843328184543838825678406998168895279442934189980 - 42045679208966549911094938823378943310019719429376529938172288133382655756651852933248867482313868304419214213174065826931813850604023632468177630915811630730901711392579087843008323864684434745559961950075001809171760142806447094713563305525542443095895671424769992254488364242788566194266507805437448524557 + 76338636562631030536135789213632071654534276076253451300549929229141915174539297499861570817454006883773904179312072407973327240627573184819843862876233109196911641458526465417371379036352228337213559742088982874879820594058224347481782304288845986453383584755152325238520042294546867426662312181966478526794 - 73812379497446748330320530468434994202280399841066451351694761297440760895835591259463279258697797989180386391558238238555255569932495143930336636689890039207712306331598652786816498269144815504574526526768644409050915633797073742630378635051695337052255534363631853685275601273326184840579225198172461607544 + 15188234071389926222873376681804403359479797480329902612585654907444613537726508981410769412999386260502244616819261291521680909724350207930896570499015862448730060043300162588477195600958230227305404559996021627137456527069677230728401950012859447354882244561272182971038948503857813073146899419355020968952 - 53363264213775357220749788054399202852366376915426992806500132531392195555256831470903228016818305668844014764794654083282564173775449481697538308462893320335486586981283961036197588566032645314440204118352717752872327058239992475927009848971136229661714792203352714010066124643030695342436236455045751021521 + 53278834518116253742805683634925125549173802922661264328924226629107108043100707258422904646010392056626004411040212652527478677181726071312381185483945562713680767409093739350773625943478148650532388573446783814715854644725883330803290942212796598370864896505361240626499852528979812886997597007885873519368 - 72688357917738633320245565777292906425652165232586799833515428715463818377882530095835727813292165312373822975370423814104770668416717031182294586942464997465002094206152444329988941907523974331696505055735587879573810046358783079737621262274429632907857914840730548851607606513045188919579449007297498345801 + 63357798105889492585852435531948286284785122703616955952125760552702815478407128381173710115464237447114672263148419007253709609445689447098237599976738808186802718920375443755763728955282415042437967413292515895646121385358588076729807008133336405195653583132071579108327701708684574352887226755064172866097 - 45653686348853761717917307561878467893790024030167090823122955431628355352647490674834562505676186614528793967591480304740851712388761540423175716675553722019225310740708582482319379982027256655715771474588633276120283816407832465437237470799496235532525507964993498937964762941271849386402345037692012502189 + 9450965318368475588513680909593330638811137962958393525808477236865316996823306470935420046424790076128799116095416306190760016121621427295043712877610494121429803779201541038497665679747445816359064799461722135220584301832489931486581995106758747572415869422034599152254062166199017558294999443121228079599 - 55490873774771900163714177811399981912698754159961784184318888147118735229836452661145547956338002538994592627864940194007990901076602593020392188273056378985394868208623254959973839822574053037111568515158388893102795848746635407776448331143300497001498806270189630629162471630925656741374367151888988281622 + 55791200092009878357127358828374515100703837188213525162595727305472567784092800574091409993371585975309139317298945636766474395622320084098858701632534314249878929227294159765995007496394181919111433775950894058165707695498245335431575357688569033674662538757975755351031024459219267805180984114712647270339 - 49084137170588445082168780186211114742520528494332107656071848352327010851124766186791831532006831848787931498519481870913418652924766241088029422670907655818978479494726768140537534211165175133366875218761957437455035420932483133811683068105017589133321292612216370544860184992970434854647682419399471495565 + 42751490734051434319764486644339257321226986511272165817629423820544513845219832536394187698610908650065441024386221526307502313982432064472227341016354689170877318778941062536916215429640588571726692063789817927880599285392053673356273736486024762006934037813264434255934157985370425930453992199442883204478 - 44866008166083434567395004908885889041749653622568978366585649866821260524764249559496034667133705491764465637680559633229162784059803419266138484746909722195363552710575678447585147054641066538194145510127110248459717236632347386783660748780963639509727904853022718333237587282758547156607751759095417283220 + 58998271928733769412524335569999434503410405212625585535538479193647083080397718411352922583881583686430576810577669961181886579455409423176274413751812485564295706033136174852719728886502216758237258424510078189319022080721630197919046981618496070579419012025761022174335229561041877999359063177008469088717 - 50906876915203465610616580570253118561902001384601594970794441767779986076626229890416444707379514885440391466098012761559291986625972583326827037509959564015363416657418467889927359986742302914476094337641835721638174999314210442405238313596501591640300780763463042156253770474405806575973798776217402786075 + 35561499118943774527284853569058395441618043035702936355506425664549116271747220731568266034604880212114619935697723263578758047505050228226762205527685778755074873011950616680298323049108644924299008797587206808044731501425646079208082489350292952720518851185323784653556095913718014819733442545777942739134 - 44811335802379866102977739936264984876902565473701672005498657198088878498317082297533704267063722360825365509294378063830983139802571563299019168964109884663807777589059977495733266095325547615710541114002039952571708768566660795016530683193848126956860590617709287885431029573485923968310481273312004362853 + 34381980414284398503148234626963622249248635043034383453981311759631833087934507855321415009970382033662925917604441622637731537257448037451932007773795805630842176124171971580942454328272933744510839285516883511834242611448677843182149665661542713214651109116112643733480148105424894515885829487708525278186 - 56079808715464332704649707592670665489744335615205950827179479999720870164252866855863147620206767468683460846068430954532032679328387026664874812542435183145595700100339530693426535544133593396077542045869837069068686367090874526381341417021589584769286195179837468300357062091058780603121217512024443760872 + 55411750767593598034793731691333205443573917023693866603717906321813055111120282279408695603878543695304265213144023322127892649656523604611320881871378138141997166140312917657305961390549188708655701962379056662747899994877608223137165154138091900402402973351427934492706983375337345659651735765576112220129 - 21825669790129837716017050459466126918827943330545977478927810212703880072892404469247984672100976325756896643100015742566942000681348452204024082828966743214141264310292105560939623111170056844582137700082141282865519256320724078122242860362972927071460052612606495359800215963069350157393602190686611233710 + 25039653228715666228425395760193571780099194871266712431433584718412633843815557998204770119957744161717480981860002849069180646316150828656775285260089385170600398037235130015647704339020807547115303136868310836332447556179817711606850997419372522495893263958252141493909014166399344800549830568730547728621 - 68290026151883638236413478385526779930756478856796892598432737944460661132604766048802217956705305543250627925256583716602824979884010336578716705964642166874626271120690351526972468578074218742486743186660191596273538958569734205089247537391518961868324186112722695551610201973935541363389879808069777814989 + 18254667591415690531812233387664445497294630419231556900462441065147257980884842104309238136307724177874941871632810107446405227041156018610537124113641587718569617250502599924109924611405656203572082353576163605130131763326102119738397423280106360196458811558524577767041961853712350991247458499147361513922 - 60032986526990454321794930798425589379383558618288065186511589229562760614366226437571746942899908944094688598384830925908409943876375027377308029951405331400237679489395864073298593731658894481121917048894280587313334779089343848286065816761911760340267401501786872313928935087652086368352843815372263160954 + 25692534184123204018321551266628928714598471795566086995923522055036618367448089241187740505915490788034862441400132511716580683915563490107911714776747242289804296907754958002540882596382794427564196633195484972844080970685232053108610521979670494220304451489809070706346481652333536646774898426000541771611 - 45147194695478235184690558390567924754570067582620073677649774237434698626696203729911144502439238407829579257695980526885578172858334607905659273937880469366996791133074579277929186964033462306039237409265940109211259049500787466856305584187734986829134249122215116720540048598771734783696839943645407866618 + 38212146260636965217861783452511280926532472883434248121366032800703708342822236176835402180214387521608744693817638678374804605756404732109844439154651413771630722332947791321084962136719202611551345954410616232774874274294084560355193061631682401025129989642711077633880279240001651841684119818227376091361 - 92668812296968557725432873935364745215463203056290246022942246723557561964546099470636126276921667537467957117022503973154845762102529704442741398582045182587535573803174501616465717466947902935241970427390163682824196865056318740283631679130384306899933349858017611601516382186127464256937559019989058596248 + 90049924935530504204888122979880968332177989184089567820884777678085635405291095121585565936841730637930914852230070197457064160679881282750110797007635913453577519034571049079296034729291911320595465924331188572629640447488999289865678823495857362110455406935286495469223266329587118367976213801207563791830 - 74796474745399002891384696236337876309239964478940256694774447610986600236352429351788539673146110878875610222050743377772969960808884525405795361999235759027937567695706027424791544745433635098754151895097391103326922494712442510219441007189808559566412007890367330058118410208635833768798322278773986424657 + 29249635636419628874673355598074528965995708654472706535627612117288290337850480452360757967560899231367347733263354074835665700012643910977290330458700323355875727945538936821623898139115832816138436415603547691827691754732627075985975087097481778034462879123140074518328785733803015426274159950825731534807 - 6903280983210770892201269008290115328828319113057513704994649556993049339433328608528602957037953676743280376814232442319912561133089172403312050485421340832072278738834393722864932417633040834449058423147714463830882289990859489501416209705418467929663734276280632905070979698766414003957630996456966750776 + 64944979463376207018783949758777726616888291262335438855380340942028835513912635925269257065760158538682020794793711271947571824022509405087423154067385313247387006420079385049380073907930929899325574913151622898847851467871284172624062943436725723315406171373977568087105721997116401984917869228140520990491 - 40948736394615247723027182626275600419172031445833177284820552986764205889933950535325257514770327904707151941578628792936629120173313148529246957360384164763861156899545907895696394034954582164333823186353118362623302351259160464573344923958941922279159365676320808719750869788938170048169467613387675284473 + 3940004555671000850874918921548067829025235393526539311903108992391322203233962952349362781049671159350352202186059076232801390918131401640993134836699941406408610485636995039933619158020098062040281110419915646754839467673579706505754244845574058087015268654827019275856392107790099631828568046880925171783 - 73222751387849756313229022208297463839720012920409294916885586175745681385421873722260329972290563876173766274987533067302343728425661178597644325470073110156871023246196880959633456884911724796511390870871407274050370248745657661688994644893934552338987752064730503687612955949430261882021072266035960428731 + 8480054808293886305830799848032246011603681813166512088489883412969347140066714278256586693819906602710715565762839584291993809923684926473734638761086404865720161664849426201503587702706950218984005512765020963896352987924212479544013779809219207404871200677209341647628959264652485213353530378369525616645 - 17515137162921391881269144942078257031078400509982162499700071256086747974701749459848414271945522038356339704654012036230904088780920146154137852264504684533321999099856328655877037045622020892108579330345224440035676591202122181094647847368671513595394088584061503462892428448386650150599566116842531827722 + 6898442643880467181085752983893662897093307706734571364130747055673926151334937033184298980959683065611552556081313751194453567884583770988431862363875067394287583055336831230820025755577482347715484480768692116387347700293886200744905053380970727858939181097400873328093523355986112030007324399335047362399 - 79210565454524318332036313519802170687992188370895608361797878733510299916805145404011722809718279157241737624797152353555477965607425625770871564621467801981698123115048982263389468806546570170498290516178564911848341392475984320336607088152349088395401647778192295511971366332287962779038606042765069267298 + 23542664026775311783691617423789822129474991735437132129950459373742920242920782223611585991893060204327115735359608674706306627320370087813719818913145298604677459045692589216056326964621529235786607078719456407103224950374508449343461330181498443518404672929782357651536816980930381771645129026919330711605 - 91920550282777340609338090568957840921577008617389960622298663411867946390037492184731954529197177864659106413252710235923801950438742623565819325056008573118466407080371735878338444328159816502958683589214293035463130643838279888844866151375651490174666341267349496709045540864159294806684799696165747967825 + 37031668836181434426739781981164682572300946233096677131606303241665517737950169225813402093359530168949587651712055284188993213573419285494827726453011226656186337216188828266776822559648585645329777009345340052940743550127635824652410386766038611185824977636053493808896986368629100310002505298817421257027 - 41908206335226814842948460248564717032937955522666527225936496244731708682769627738157855182364600646501908567988237390506098201017718748527530656427711641350532130890004561201588984528602499818119811380893689676029890216036553460717264758616046049587815152143004193200997156017127084768095340952603289972814 + 62097816006726687658111397028246467397520519790457407534427969838803516119985999656048685947505979832360823610083943500035951291258440552998135247040766243448284851213539301616820470391415556449901668090120194770546082591180477086492268458039211148090827801595909992318085817462539704413399617635765889809594 - 77428094938778414051663824102132408087910836585416026526869788669373992948434193943534693549159632174212094306555999627698505736384484184987432547452622961159612378507382373078220436122693815573693857246493394134658824344753600787670731733750163664581219949505724881821552457585463013339777152270598554625455 + 26242310830476626033638873356803589413051111210358604306468790657570771187382901777734460414841764782210832643147126924717885409605059726319409736202225717054253626377617090788508393637637512388090220160986368365221658504671105759495739183279322961990097745519488583543867633489294155393713418518498461084570 - 54112142043084521941341216738144468073293513225698413858094976394199711764690333590636823238159585203751582774358180852387413585081351129882417493021819189100694736057437874561101090239707691333446812220293548792298064813785405234379097065714657994597973185084015439865531574211361409768694334180256407517362 + 40481505246236036413197693959335697739614509182293147121375214179588720653418350895411135783890429648979964651843932821043841493461179796496428507427679250021285548833003230606648210716496329334582377063044765864253016577415949856064634243376018619493868109884461706061269104917686560501708011176476498749467 - 20971270588230954178564688577519621737106503751364811730583644012033779274789001306121972870709248307749914257238763599666558201003333070722981940983148671102706838566271637477848588919613713585404377947536821578411545910408781898451616673064732478885528306497948378474021520728479018044332450836925903113868 + 28072205644493077880001488617423854034908593618443927905493253953261511630790830502071616684082470196820155524837367158292982279727167221149201673263898478700973080067928435736296615231144312560317554242680219667101461353932857653418043573978257983295139384758359799806515744820604346362887358152741816089482 - 78890043112608863695600737230890725312948369656693506891468462959723826466807211514289978415635342348704378344671046122540177576618944887065728756376823963650170103686129400408984918728289133603739675938046491105193789415806169612976436909558755163327091782770926060484260777454681727845449173012281841353198 + 18645025138149044666494685453888520896380850735594341489296835984071572609177731258394618890515809451928071356231356061174496573224104460188842557619264553582521500320807713824825944800334217104844205738319799428571397482495412854422004410343628329788875021481186047742274212923687631325860050697504998666715 - 25497190765505769820419033692513739324814148493219118423006194806834509037680939600071562291922198892370805347201341577752087166348698891032552237872476321386913964797968756291759368631240510950302994486748929293579443978093305843726310917394462848096095393818269530144669880932747670786420866181706761178078 + 39288572758862795711126979982652190120919816844151639546902058162124020840893237271041472988984844856399588279186843232039516974237418592889478464373830646713372424217044592573306920037914788781365120820512100694416535265355850626248831892224245921855857630808382832520303703210198985732985706823412223353284 - 44348967398515596911919186769619015588865881124611112446761295232500933247187832062200245045420549150113932017991355673834827465928982301701136511215531689037571573243310257910260892007103558326126897297060826045079662206018757025122259045413464400391088870886279170979602254997739763098141205503611600044692 + 50849876390770050471581960531167875065290848216299874041680424069379792277103231913118950168744590043437622831591162232499300861572515223962540318158739376876881425871951574413339302004466579270892473625504959295326335620554687082725430641884868392664726085711620620625634727876491725524759472652546275843190 - 62849922895012387875712929647219983634708469918763706636040386270097053544093083976426342322929158000655975265509470292654671302642528273730075942075440065199043677743955276391507361752898607080811789277234422884163325041958199167390837104149697917340396999194830590834817632134295706699513476061002541995788 + 85331070949281614610600561215805597554939744826146002231504994651400934520420640787891103751355175376236271201532682120583678022800771273772845591775631242122680768711575122732412366345846231153485587212647922242912160218551620228910012384111653812014115516697349291415311620394329780553168368327394696849456 - 19804985100969929454921225413008796357544819448557923881551306286904343824017588300790260657315717140045965389722283035481826675234342984105595302035665335427201760235897562393995008583559611293938390716312170722350874045835134488408972181814896660494840627742477237182925788027723288776123672207732900167379 + 8060090589898848859093280793970649811232306418093712122433557361475550659787634862300557386189121576402163445217277625707401663021039892769489620050654669401077136097634694291115563298087686407469314529485224247293110310487682950919529906883508984840143593102085519318920914454450319361928382625652958150169 - 92835327567097877613811485482506641074941730231409319022339672283906765818265490527032407363993745819093920343320682278309797439351385749589582817567246355583383694784530316280925789804720766402339237533295804382122851532971741718056945590177304745787538007453701037123399752516537364560183724420668235646800 + 48371864771632375472519726723406313828342451806096556694985949005021289258845373155847533847698723748158985282221332493963107808530167484731277124161478246096201315554581794354575658206427552962410193974650193333344930725180649842858997499895082659206564395492100252631036257856928056301964725488084472741848 - 40035211669633080705899144775398677385122502798906178427255596529209732861150179464848300537395065874667816661214694506464390791093782466051928923540581597543416166794310052174882247371367844807825151647868867832422599953910356423791569695878830278135088936743726493240520571110863490857969290227371431923294 + 9014983418255099166302728348063395250513482739121510028020282680041115742138117387554637385601857357840708150050086463010246811727608667713012469850582607462827180477450473442845809301416355335034534458931660210437393735831489126460524855399842466026105839887273872076148742695669735520157491851173387674352 - 55454365209699196284888814516829079808721948079182809886217831124357624969323895550413024532173791531444389989873987085696067273412904818646965624967098966259229100018470640038285891552631917154431383387871011127313181232142817904173124907113694044946951806277849219995065139579629359047651394348123756468940 + 71239151832180901158381932869403236411809439224538818938730409410586355532108333752030353618797382421037426799011121639452048876102843644619404655827890741025724565299854725630663385712697117206109000357831613479170080523764778663339168133313811112608292259250377113499415595434701121560080072248866529949894 - 14359598653461221478071415120390217379639044269864721564628086821794398963584759144010038765064695838923358419145551736782576180819948662698207649063065970422228547323040905485446904762023386329305287579991505968631997393071201616164885942698883459330132293243664123323127624965761061970109240479060877062892 + 30907994066552185147755897193975862504910980188392597071817677718045665715484278603670558836384012462230548405684757990676871289822257327244729543324267692514247810410308775102451985741846515949648358757651384315512582976452830035556491589900666095736521331103449427502965574476715042286173135534166306794668 - 40439579116086756651181498224182446869480933796194827895241115414816113476976482113596655532784526297054592906897315500623861840849818316794773322375454253223305121321816534862436526494079810132649467636204457030510661410562843013421828136624580313970069414950672727713551007081675744745826240005665812435 + 62401868155913618405737789766761079956302682821194608480698583809236286729995795514614589235331326011109315384222816250307117942494614680320313517822272837302161200966060285453766719410025123033887078869354315119896178384882280288146465457503968983991934421335303395204242660992517204374569502732062294689472 - 93983267269025734244999939733562959526281385933032608830820018750195917396187188577580932630365223259599059443503026155367054137384691396719140061465920709648202504085402387104103297793756445497108292734977503604554992428407070156854529666028346170011198602299381739307665441074887266920967588153445056326886 + 57520590942300712909522249670831402918847263990446305854659353411849421294859801237452862182299509576622317614125474125935649383999557039208786452521582945106950817542046047772958750300489901735930996029207720658015248872855580331942542291037397471503572819681807858562324756751193671625343089169061229827550 - 81577226104760956386553863083105794968514449485571091852403450514304140328667654652907811090415187057848924789172007690733938850595091228591319580728351913056297757128071827417089020452417081851642676803963898944558621909751503258360120343038553909953668103837554726182488934750764161755437321752264228435191 + 29239853157706953805402872700319320141217298641869924556680805540676862810267254529545086804780357676525804430923860416183459352811761081034036862773843682475348532185767793603424458238755760496032163238602786202868215621005290548496030241571311116842176720329382703634223252767353316857360824279945513091809 - 9676260848429091063545118991706866361756369944495710126680045919849058109243943101892649746448666667854107314565395881227830388953229933636110431647583454914724270222476000124316798303035195640484957358602605432649466998236790028584687531309963823620808022135420157596102760261560851972021239782688742874710 + 53292372396854966595897477634895949915584894410515955566310199707680108638155077651710061254807929138127913403652347539040926133401195209454774416268854478315704477765704060985290234718990353540368925340292335051243932383073796411858109405694573312677115470291439258685362910539700946463953418703114956093269 - 22633130246367693176160091468711817522132690183768227734048371636030360875390976099195800254680894827836873228800269863454890122283168471710690300432014177512776973022773791195893364435750712979610908647344375031617950120589984951976305342188197237105404718634863087569094881956121640646793297286731818068283 + 26021160321026373134633121349915572680982891480503181399325950531628237135519702136581546814572054826298688382050912786914354804984839490402555959486605016804846731937913116379165475484722247507296609851960383705898698512171999921542278420791582635344739862767850638111820952456201553379206313967987598048656 - 91931992010637851637815084629202293018206232316561299628640573483507136290919407399256057023714416535369422579578315096894857009198484322540057847736129418484522705821178748637242900749475228797402639334770941300423648224162930921002740085299414442324547638118431732559499544841135810754973627770644248648576 + 6125457665556267741170902908887434881479578747792577476398159100949286385511271313473020054825474011966544128846569573706203667376584436781654831563266384175282737705845683679908036587557170231218170003907912382156174698499807651303342783657906029917507666084469014631263918166541170289252071614707151958285 - 66967278711217201365942478391782082339856214654248103013373845652343518022681612244875981410806915442883551783563492873475670512801855276271069278170226693542358303519680611498649734886036927763033563714875277460810612382030106933037449883939232162147669144052262276309785793803677197578777325938184335550197 + 70020171764269695748353397459286728889349085726508948280073296384930020755628350398587761630588918283401124361106066344600271234477347444034012903349391749094827925325076161115156932044415899316300403306420926406562521054783451331136064500315512134757540429622411285785043015915716085136469439195932670262579 - 62138513049686917444235385070209047829274042490087626391215378369469461256422117801983135251673723800114920981335811458307129493504978994443454908855319548106114863464617760984412423841330559877222025347873191198562521030977652757430676217175796701808889098415741522648788136778453196754263354764673301111246 + 84269641755492189194981837593196575382814169073394108818095618840316164139965965464490801768350737240640006015477437030975381528269865938662233923085423421972400966789543442000223338802169794625442028199827828947996944795191177870663801842238214881812721760377540892278083516356120366981696338393828224213195 - 84024578237594122975312916558654569705691817568321905739509514113943770826850239392415753634243714224124783703326043031035089238234818585767172282238166815823585545732145881926156881615569437817620186714794384525329381129093890510532779676639512167771211247704314103273920696896067039264724830550401714881361 + 5630075925687624055463830905079391644097739531257876520869425290141443707811126599620188076787719481377526717085728139478438266334085043849862108722655162077353203870861760817055140215238584141970716594343779469168142220670914102049055087949670907030199829827073410033685218194471348532308203558625102522456 - 12053504377054915054503378051700437323140565423541774963243720835879574336985059941935664545545026791575674655201926266014047886918803063175728504849772873991778921115910878146309722168686441787004153589338795287003927965011071466509470066388099303330322560477620744313152977588241749588301209291041508935168 + 54968758143072765407172871631258517586221491396700083145389348018221264733289622161008472132647515475398849820942502555674560988430612096863458017470140960127043091267048669878686641691092054302618354764004340872607736678338541193454626980233120860804042357050292175154835035306442623432990524056490102400292 - 90301193825401896096971182397529081986709435914514033795210074437253954253075756304258308405150833910697400889831586096671389866469604363329185479965402656370109913476065403677255886876808503916182519301889025424327869753541405130815744295710373697763165068143910844021864335329563864668285766064095784407513 + 69272110136407366424297079612020436251198000371532072367727960546687790062349427773407341921391285000822796308175819016710160081893294866364640383427820896561460401137531614827671339022296592582676719612998249276799776637067506482655830035698284719247017680977251819148905651995445331486638616513618513189123 - 34165239730407632167215445229447874740280792011250835686760537793783663382327224211067880673232894087976703846131397233101367579504430570196137989824640162107189613485053252608636398349262318951647116001884145793230177545899530372911617688836339290386797333274621320525708889887064842900413484750465575344756 + 36432691706477313260184367938277693349384827658377548732711964064140426150358250216642576961479679843294021858461508007081379744964327942666839986892790711784157170229871770005172164813644349496753634466221516980690852881588780012541702940117838588527821328866679611064701237193038535486871173462385485140907 - 71050415886101912505218594738786512547085473026256836166797814405351439161502171530488113499204389398571194652849526814749869411294250842468678948516854880394862184661067576922587287257576818970199151440907630655813500928491752152674035287248950719547667467036311247393750526321147461984763817058577704147304 + 32839952289142820934975442671753413658340825230276244646994693291016464773519020443559529831061818471251028718325805751447852321954452579922796173870913718590435956388213743828694120118970334542598491312175588047361395612713974731267518356580898201522041269310536736394353185154519740427997504891278787045657 - 36895101542795714741483779970439905600430579138092309820241291760950619681437562920766743077295873452349686513765055321951146194905792209011783049250242528930774911512338156824630984978932796731804313666997303972806085633087855830781341030617926149728243393519850220435865707402383192532351662074408668434382 + 30558437263465348341690513193290990856958725530824142269728525108208421789718169780728835617421181559783489636953462933460889804628790373272116453691185546945092977916741205468363923998142735470570514148408405975913551657274443581649512313420001918156936039653057471768892568213052534251606280448654420085057 - 31844104778664009173191654873322988272071303461045671375643631746401132564611719275629131490984644156243043176629129341035382011693987218984912714667164281118271250289503667106133106432930000960703296209735418221124912606129194715979216605319276842723455157563545751662161986530784225014132973192372839219829 + 28215088873004107440694440045693435499749624125610090566349918987914038636763823354564870072853582513257075585326694772805980937444240986417023502199329255719926328652511745977230072708083996060486461159106710598386954100623925870460828073881336438137127043566253101003770701312646660771644043983253957576996 - 77935453069745657434231143892691307693775498200066844999429151221376424705977029468837829861101892352866735202115162124064369758565200325834245219519627961444536661521725326187729076436414962886214015497724337507061529137220406839626216804630268341739115440067889651039700268519679907018646019857186650513790 + 62517560845273029894590734362328599029034838788356846666634129917739662624497501987847403094798411118427014236004180269304157466470664786070098461468742363440361238822080854073097371217775961266146784481179676354039871762134871968660426824927224302093655711400761514183751171532839892219839086716751774564697 - 8710795858568997442968077041672817087275204709223068915103965031447516234951170468958754519235319639378004999901146196420583218948404990387274762326970335422986482213671012041831151847810684375184026707353423240087435213362039750446498323482730328833784402332088531301627434416765744288761449598809141230917 + 77064381530795963434225384255844781727786458812153338824395032538281053580395451469677229130260463365734588876921182651404511036524939162928997712187221841576294713819051104510208947227600312187523204910391843503191723623786753113113260160483563181956853001842393878545440385037598872436833385177681713701080 - 40491082473990116639872868596505601997501995071857406162690490694369128340877419412828839964496437955064378062192302354584409104627854748905185997865573510227671608980533378678755501707380397546157047265967697048703022457346136461577610981707819655778826153766008946750498138367984399253321467372580153520177 + 12534189919566184919094196620417824518949300516588988259530919929864064073681444999492230865378404930686075660923497820464144522815473974227440293786345595521512211808481117498890963720729101931121381992604235199756987513308531728243036942577491096756980998813560657456838994434929990532019530849530800970654 - 21879183509626234250544740747307893151002885500318612358986043095462326529792102259527469188133541040293441283790163712818645291539941621231082794324667105054785355669684365602589616867326519696400666690908326067487766858058575664033753800195028329220355169932854577254629652942287439480124304512101475398977 + 79326753683451586684709231967447357530123065445123132648118656740137401157943690874763151011017842966761832156297495881742831011227639787195201958067175516692589595807583243190429649199202493931060142948587070376405504804649587348558309343979288784436232308690003201805834320789734616974520128116608515991175 - 73627684165859730120104877303864576536570441317747742673654227087361524667101417837252247061903499529485848359516648011968537254355003482551572023922401141333734169502284742881567178730598200776970734990514605873206298069567634759326649894907533080764359355889739677636250205124791772948786634695735903423179 + 89034072403975448936013638955897670034561707116858314519752247193802754897622380488296067996185535499522033653088450561928738622245556764089096572045173108394644709149239652002804865419297299068911081601762426761684081662466958439938651400153813088346325638765126097625662654123741450901530069720844725992436 - 22689899155899415285010390604855574985507370023932135167778943529204236424993146655330175604095186977449618683217833193617495233595973937242787883651799840824694552506382839054095141605336217637781804081563299530202635167315413627892621316930353348004652123765791594703737366785220025948695134588249738775594 + 43852137464248868285560474364218259814650892095077982920981255508655544874246341888280684591123886886567727567624458212596703673414374507704661562529365192322372997537232194298688113833959395163102763523598901866159271737220857799088132850224589031627769300473632378991115505580559814010539355601361573589068 - 47172931685978369723683993573957272261469135488374255613854436816826459877029443518756740895709508426570377973468828940772437737934219594572246202984725605845702729589868424419872990566356544644574400387330518815086693570746911119561941341913664539259252712340874046866913088270766247068723793044530970439931 + 21600966095340900054714070278090862466557818216543182165093856653312596301258027113785825392713909036738008665245859400650218435482847062417347615849127745246817967725815200536245467923875433080915210972559643210233573802566270542042248355355332119416645882197545960676697597450339712822598295354644193251016 - 88053920553355123899464146090567499798771140577373494891905858560558106117567882004719792253183894559858858710823589997299083417218338374944805802231772290022245922286572831243229245238011188416237345712997215186960592787043886153718820026851502824629641922306966117758582340105587473419801997712933393458066 + 12968135963716491211484902732224225796450235486440761201210206647851644449382645538017179087240141564654424904315064424559475683061903834540804644790190692164890304926140934308540144651476807940517934787742692428210690145171921969439853254373519956595848146834622859931900528763694427302388978179500829037641 - 69728537587418436801731351104202375075413148826604444705849183741316379278336477778008749780417853922945500802540579889665457548464173178232542875638800019149145613638245893462073455619348465182208086871348240499865807061551238556196662116693525438073714745758907547813975013385383469536209891975629062412258 + 55163750543686944789899518401273221473137804354833415625205722635668887809997591923711761306701903687961615434077062222621988763335444360228324553963054205453399559516731685928781756273764833549087234510838555208669190654426501711841198719085160506763610311048239129133878319483228682721768528073697290472303 1 @@ -3100,19 +3100,19 @@ 80 - 121510506979280294475555951515618042220902760560244114936256082999728584045727004956635112530507536748299124440626763662691229078997534701112144714061943187836221268869197848804330480194827683432918373397308601572042723905779878861471616318688723323278134584874507289378643006693831141299214475770968077890149 + 166838921240395165139298702917954514317916895411496444505451463882703979309146660309369342549561585162547630496825628191698089719546774050175373664468095672730559849529154559549752634444061218968539732552753417256106733271752057696072457287563249684437138108478392368272063216006754782124559665002868960445009 1024 0 - 10786113024139632806027821329411813376394553532754720801987724968039111307010407533206104817963382736081619149325548696301956466730330964812736228032635136704276953684675186717353928168908207991646217890427364048686875063974030706985824355230281962421699045683299328552366905159269699165524103957009454444867933959900404864269490872706826410124496941475156763365992899709690565996005427314663002306586630867555511772982630755407674591390268574657383503554640562617598774916389727621109632047922917491355710039753095981109590128724621251169051774876508599352543250242610623735912915977694004470585292205683411987663056 + 20164869299917997768669187718072024880646354552754722978537028223536254092840758546986081669372998367741559119655945941023908246621736130386985382898234768850336590821811614528436828669138370807693045107896290348483552241981206673246586334644578448001400610281103595140291121491920183719310352485466450260691283779807047828557350533795435555202779227460107596771104989483908660994517282166557989682021023894577581445166106703832626723879182554691662756057491958391690603170391792721644434981401001511678603753337572683762612876115583531208907777013058353924498007182738797769335927622956356569712762901590010625336748 - 12265742590555795337112275423316364429787893555390044392086577126923261211406720602521697557602273193373875148608736275687596912617522142724778013615655753700165411186156887869713064103113785395469589326430632728836622451323259552720475436900442662106611254613813633373690889042655646171787318060314118464601403569110633561521126654593291480540948355917795074477301644072921931428487257292688398864933361063951268198001768696293963218255359788860315012067953961363316647303672442047557272846591014095765179085873691505586802372492873704885031344784674827568416673317138797046556950646706136363400446112253168142749694 + 2984347166484785886708559470918298784160020554393155291309271870398678277270101545646264774230120271732431038855849717368769610972165526646977435967656734324421488622166442500606109725906081106873457804156402285048674299839749687863268409163106522356505117994588644361590785236966127010748999069909794179677627915587326285441895415176362942894466727701873248083449926283420344590681261194315842630307678646378965669519514258683675381657090359826734884977221696371701427669449511512650841139886862893347362071064732370260086967917635761464578124530993995371593548197444330363723069706035060033522014139123690786801817 - 6657994001188806419886894807218694240426739032031826163752185189756478153651379259613647431501466293577185699621005510312940659940692971682470467207220148443107057331572412443275548313574269510610111723871507751123028613421947573896683102294237228819014282010358536035610141132903740592832988179804731916594110990881555271138012621630576975357221775494879066961089995888791466928329693333653959455139590750223922835299822378978257266467888718801464320015079025432275884702211559419713554062931905121103357336135080737661398073037818364333687705160217385235403999082883957900512482523116414980755358445725487016341584 + 22918704797560962545415302776866379078125368013841418564967959276244028162408532015832559447205247703417704719443827229697080731097305272008744577377793641141787745537023997227734827180452056585730988848264586038845788959833709398162671550708645591095710278675429718463265031205549641127588373461110535109262642343482993804266048759386206075705942721063732579471041149282777918612867942361864150952017125150560575605834845982582073393585472390522061517079171844474236835543780074878973702263346054895890851501911398755157386271949412296780290453254591416001671703437034038169256555337092238293545220485238321536086099 0 @@ -6179,16 +6179,16 @@ - 121510506979280294475555951515618042220902760560244114936256082999728584045727004956635112530507536748299124440626763662691229078997534701112144714061943187836221268869197848804330480194827683432918373397308601572042723905779878861471616318688723323278134584874507289378643006693831141299214475770968077890150 + 166838921240395165139298702917954514317916895411496444505451463882703979309146660309369342549561585162547630496825628191698089719546774050175373664468095672730559849529154559549752634444061218968539732552753417256106733271752057696072457287563249684437138108478392368272063216006754782124559665002868960445010 - 5796895974172437492544144793427626883248313188238611533776743346431752971712060062337672102675596289145984033691057997756737899504455407414862532161716330517853997822442007830944642817148859544393139376525529865566910132319394100321123786732989942311506999412008183302795698689803657529549855867766592208044289773972721861492613052051296563436656848017662202314004966736562267376820710374444085150889495204445812366361013684032242122125275783200084255553552950197870971751079706748184976821223163847338132962987467483986231029156030776519302013622470367907340792615470661258486400540066173071824937985804725727465307 + 20353315713641856476388038169887618871634324614569505221000609069054954533922439353886690265335328223343065474844922634320714950092390152202524246553915130459195681981163041970282456565565792307977922546105234187061380609724795851080701175052678969561868745518990130145430739790536398728720257729454380838581873236010960845764051635557979849262191414438795956008888350472447275510547805680048545116687765239620225134384328236789793570959062283323424902146559596854375718057867205050917556402414774121771940914369158526632609822015997913121340246253149787229118904905861692220809956414544310999996938658327275141747015 - 9334132150899210655595588812755101315334075756790948098975718459582686698914156481642817789029351041195469981109319181472786979100849229198795661561040445224585835473352568655076936514299207844405611645694763879315234916931699279541384735429588781493731214524894392779314165210355489928106112093012441560956288322150222719475465869765945562698229929374996439045182136076768649193259071329181655931705216974675171900159485698629682677204945191805613337103123557869007218401870803385992752766657957727512822751282569474838764256310064650322668877568639278136933641304297309245221973894369077877640396449482840043170085 + 22812410140290287302823314515820682669303849734180401317831622882937724847634395530036070587296507943058502604733543930821892197087473107070351519657471214330943280729415813895731349814637106335103399368650721315047545045773592173741239842804412669900419039578048536150493595461689539711422453710601962168365039767205233727576416615861321912582730371501137298703473583729018636890201419103884488212358969446248238346203001316554800472914619438882719111861197389489733756539501478103802753582086396383900187435500726717159816180623689369561964255194119124450824919872755110911660066028411366534180003537922984342097112 - 1377790254071645059947324094549676487254515645714809274535732945222449082053135944301202084111214567282126503500710609291655107325518738390019266148400683954579791768476823262603373638083688673441594535337185519655360457520671379515665179956830347209351632655993557731304406978695219687532703720569445559697961932318517252513749339855720326967831606853651067972748586213693047293440568237514004939420549277247963684148708551273307331878538932870140325722762588995988763827156755069409002417932549076986338492703029818120064758834223611982741823551550973278205666167127739874368907487253085306159377733594944490614712 + 21088485119148840893140270751970111084272034365916437342767300850844325053685302569543732206022982777870717233502392562882129032858551245294060047324008874615408416495567688502116474006060762721631272281268225915969396449911523231150993836427208064780788868488056291227988744218713869501426828916156426066793297409716141307592017146741855554074961005957702630098796904566390949386100164288944664759597602903788946537706721733445786843572587802271867827116992914011859360601868095097698928843384058109705479563042337767796520997043220432145346789883077959960155563428277701317374667325062427024525177702696565134406465 0 diff --git a/src/secret.80.arbiter b/src/secret.80.arbiter index f00d9e8..9c22f1c 100644 --- a/src/secret.80.arbiter +++ b/src/secret.80.arbiter @@ -1,37 +1,37 @@ - + - 11950762107909537350060952269521020645878695760193930282760603525846057587806554815094523521104902266848862172073516396515293981266544222696303689575679263 + 10920825196290361573979919017621871325477378773996850640105075806008004303430566856366994394642789608719473456943556402694819754386254952818709016208993887 - 13175783950272342600841924601347314399988046001945487321821990428621231814214489767799354025148174545769231329723983315405166911333852088488706008391567087 + 10037869211273525771309704095736980063138293524228969395922447631897580584680351347509774844638325663027280026515707047838439090560364004679699651900566983 3 0 - 2073294799707653017600145110113538326076491881541614117155069117475770807788056380147172015008226254918870505627195399079504586518341255785418322476075347261809964780571883426558126627787563134374296616179709841449508701761670364531532017633926960733359282203911554312041013822982717389240288447427481400 + 7350683499885890693877609449498623028598590129927712493931778808997516304537639608934556582255406402812950263733344589895491026268106657326656143488426741367576700642569418306708910390157180909012268082942541816891467092768613605603384172220605163601235476161880210206307284650848854879851668715136129277409 - 32869779204267556481097979646175248862123143248406604586013185278235816782547762141511971743455189972295801791425549499760521131535722874944681895765477180087891797293976655011148725964783373960852179322296375723285025689891087519327148311046438493274309598075601966212871272729260992155581127366427603089680 + 20396094803255369540575126571725083542016079180020759616317784588871795907857546459191926087156687086322619580791321783356145449725277251389740700899053142223793483490518986713355365123946591497025923291143490895379567095590476712099625260266778056247497470703558881148428273007027354650751638932798795170379 - 6574765771239051510693575395150673141350165411264972578631984466590196664108918513128311267551787187021890904835602988245841793056951022092841756401312668985234779270034693340894544747106335466599232384082818857856277326796544095150805438065952231398688169834121612874031122346106967928429944978467439038441 + 14442321425211627388820706187833154073301915652503449851754134722361103544814002994442426314805842624723451327673825071487951232520862333006624374831700435054849115444125041812439602129437454484468725417650046457543084347458894690905560865776452257718033673282811201516994377961766108915748113289857542980367 - 20830196608545726163291137862504872988569216212697564417058132657171140003981777343448876479560846488125961087153395589954336722703613499422338069568951371123100290649616555364861908642298014457843621538152417165857616518248777664019971191724471058705408808809133425429464534115323644093725545260127901083283 + 1532560739724105686865205044641806279446295261802988332541831483046626037569626994124788872568904425989647929223034961246751972096720054533275993073627893106340067933939551616047089581087189963718333745709299309301984681470341801604914014270799566136030390133317167370865592497871166462033106881984556122798 - 30959894024025487399815803016677268168168848463290107105427427304865211257075937673941582824655085305788321986576266868035134816336724750617485986751447491347606598495920659760406490691264397440272616134889579708053813822657677648437818238806499736869640350363505868205375048374360538571959860296488869277908 + 8121353913349146341352359593952669525036016140890060281441290306212453948138615257076865698505846429911991141885713763378936166836794325013414040910555507602601388411350389850797644547414777935807669448018614618556093337948154046329093088925858628985979033083542543957249695387912683501239227315157673267384

- 12096005960577363388999260155101637833179507043784036849982630910527682037172629899443002486906950113408067270161084188224671326426990944810878072329020463 + 10813485324999900146177592097822797299963398254687281335627554887928340780627413422086235596263283848693059198957832128912529668688295480313641490653023767

- 8903774041731621234481378127279740442077762742782883931060847898894971336062306473430985998563797951762537249119050564412958767262408804295089316397565079 + 13332516921360331243318168888901315236818951886426746966188457436512652721588786416570963091139812563564046441684617810387059799511611426512420146824797419
diff --git a/src/secret.regular.80.arbiter b/src/secret.regular.80.arbiter index 21a3c79..ce75c37 100644 --- a/src/secret.regular.80.arbiter +++ b/src/secret.regular.80.arbiter @@ -1,24 +1,24 @@ - + - 9389546402921297587627049645265788268434092503338963492977327595532238933961807871220944819362533546753322479715354900107739479950030310351001827811230163 + 13301648902472345604855278320296758283492033676756213789619889464004820156011966575878742578665759895445239424609823380681761755567272402595036319146347723 - 12941041213820048005326563903335903511963884344433311048946244530033474686637914605177227700802400909002395876610026225659032555703934092684401608696782823 + 12542724775225815400101242300005305077021104878228919823633188595685643427116528609228173939861646939817219286636488614773129248728564010204415405226608083 1024 0 - 4985122580899764308016543291009045351432340410485834641143997046182230494318531341784629894246378583182145628505794089122734533671674900297851335419555271433807230937440194752355059938665077394806899897086995732966335201711096579137071318924795172512717759099203468052253098448099487298954360992374532441164 + 3837221525731776922987601067088351026335384827642800210830783343277108726551305959014350588969948061898192550791854386653070923233520620446887940527156621233986174689506396722757399539424764135835119590429679462824619230806676311207638106623804654237345529494716091081801920935699877656987902009612315837003 - 4593017798380916808117102598593963776676495536836863737939721441995182560333040268481761163428396193592984583557088838042866220264691214376342562039035903424691865479144522392162696642929672904881406359255590391671683294386142432680321616588793522349184510007956525389816786472260045233498954112459620012950 + 12537125519195621030260627308860574069415327295074668088162559360081309952120260225576739134209127952893361414119810368240065454176560692894930257470364966068077296516406512839200952403770158912466717537350934453208402151042590472478365874185651607122467689078104297788135983492212274778915955170910720172352 - 5046860187275098808537211055919895289087039000160969924671798597186438018075236177205005281038054178876424924796279496134353179059237500004237553257389695949122651201109016834114649242455069501137672740770292651833617610289733772318934405113710644257808286610368501748739635971319619547755083784933024776296 + 28262544606957476452158084086949446695666240793609173535420584847627254288415111878660606866838056513035640164126418369806451796599145603463235820306590697315731477856779325882847097568182324165327616066252232510158742189248855426714790367152902930794685263708705372228852359815496391438960065798099434079532 0 @@ -3085,16 +3085,16 @@ - 15512069615105703501201070972971727879258238790865429468676370995234894726657914414800181461389948298692364798915968284935626546775620991405989016943536420025144257337384301549777569446149741999478277206437943449574035556507280611593129973294580187525571679034921117411820757414247218492729859502690092277139 + 13840284938790789100410141221956138389626623415973807991951879271176771575484047032604787686673271606139564178100953623441561316286974738631485147146421183578355104201302360042516086829399976750243977542580121069108579337479985527130280748345128260559457185481349782180194611434759396058804624106216635335792 - 17466794227879290150547031702573153810897503540743553068714427290654890175227727833912782999227798411664453979012321112101506750397292188099015366941797129403773875124552968633288106907570806387134009147201504002452150412804309332897008848891676261354033810828680083855498408368306717652980773608654460548925 + 41489793121614653826323711357632171670582332365667253203274290939760130850751341184953570185271420447468491434261274405199037152068534598717189889074331393068771497022319676976592632035757285380135275197727969543164237085372030960552051716284108968205668687026927289140941724783003801808342169958255127301576

- 12939252621117348557466829025072698227591178241330747225816236400402170913718989815188692742388322135806460603057239236281647863437299346482518901810324067 + 11311937287370551144669024523679749041852711806202710928128804643517237037880605167245867951682591637412786655316756253998319471676579570601539799127887707

- 7329355688528414697446371844848994425964194917646002458970895014983732951555833828797559176218795748311711522340828708808952354633389340539393828319802803 + 8100095948306339727154443236368697603215486277897187892377013500588709988819626914148544150025183255198190920846150098383114842327522181080603964365417359
diff --git a/src/tool.80.bank b/src/tool.80.bank index a6c076c..4347159 100644 --- a/src/tool.80.bank +++ b/src/tool.80.bank @@ -1,6 +1,6 @@ - + 80 160 @@ -11,37 +11,37 @@ 1024 - 102680714876620505251519589456529850089969700556564489253162684638539597335736793998411151385396668678457395604056076455447346438315008567850445832409559094642617108516105196798178870587832997740211486024550117558968151215813802257578385470372409470175519459389641067956632237921585676408120047405305262039181 + 135218297597036027447710869998207208754674606065213053565477328119318307615909175526780620233213961426236879812016724358445271350587363396402647314849305621510012071242662065255846791249159498224132174763132326817952843159753470530205099792627946188037319629342446887089368727200769772054196948434863869529351 160 5 0 - 22923320959192453636423682385738922848216151492993760467429386172337582699603626592667966029063069617300543105850468927060751138940226489398256413607978816318065423599404211058602051331171774528282150565237472007558045410089374975467684411005456109694572501365211023547108753818220756570663968723659519304097 + 18208244590241069583945724715874667682021402381869122752191191011908431102922032101750150575398954442568433700325906936509940645446026799664167551673847031697308843403021189608647351053797462122799257330721911677799321262955518693413213492091091575031816278740442189255351713608125699206715386379787631136553 - 53945843214081887230506825685162514221944851452590973433147320105768347799035010333040104182762421540976644457898523154200390719416111152133906850059276116624692455403920555815325946146027238316284576081046322930997100925534589898400045746221732607763907326046366956881978962788748138738898197865947329746712 + 131540008933434439797345948918394261880173787648911427732001625350824200688345754946399083539327263132740551020405739246247253074652019164142804882841356667895761572327083692446423627850400085866440853738034890285736115428435401625648425367295082976489978122036860020082169538328537073357748608207155548379323 - 84070450444178810764801942593139363675201942216375234211388549548441399502573647392486982654665114331690463175765687779989817013063882187163233753732167024252613425512245014453169195391341163601305650730846456990348521068770085139213305228501503975315987245346014618040731218552889355850011776660968387243547 + 91272725802016999926151875073739471182280652070511760378850930760962342713681923927240228531890954606645620919696449005573523123959193016212029127692446066052985178174169442856720775137926238522268128669447003671386368122267146212347585948046238834952090600178685872531305631839437669077746419434508311013383 - 44698200531549202972232618323671999010830294896874839743157702137836602383560583870323823976773804259743506237545914357368122833664632525931647018821826400373691255566854594204199447306752422310463080619172699838408810456076477752430884838822369737010719356000558487625372180909172327760255616921931423991248 + 3469882655055659224110796061184855363317387895617202437236151222595676437356010103862254518369649822515215063723506132692782175600271281713617198794137567836935269721890075460941750695290740788356081320228309732607034651115489632489205897080536002378820247683062542665099079636940180095369957072814768593231 - 51872694200042776418703861731161005597647063174327775542825481250710848362720927717796283168056945768526737370976647132055902410582742570384884317599347064382929720903764261035793509472519152983496873672379499058845114238849894388800999929829175350045958631291831128454260459997110600204624172747502759593173 + 30597361783781676797521480522484587284592145075325385388829200913267968937767278691821499603927812902193661100233957450599038048910138756474842188339778893991336983286399329800775281795383858969341862563509964623791941848182839037452532512334863582834255155110971223966672416785184918358620159650430082221670 1 1 - 1381926471275670696491547928550620506717346803979 + 1244736658805837004330109075480297814211691129853 80 - 74302589183225406744708406598986697445626235129332961159539629660099003864681279676025057169598059221346100246653275027988998552977043535171844663879396255745429680604118860556814772359887881646573360468171271074105943974872534642719266485854337939537007792420 + 108632052121579197510727782738809674259658270667513999458233547257208694922342747151016335495460550311128145055639237925983221319028074946360737371864153589540779403314101093667591328047044940954750182782695379846347426671180342818611100418161230058992137373950 @@ -51,39 +51,39 @@ 1024 - 128057967809655946190316507735155452831314572900315216081434860144597217324346737671800302572587640910078110732912465466684478941477363845874613925338791275068167816621932721309235605381772586248486970010063355049965746801462578755831359666996420724229475198439645105729191854361248312605304734475323680662913 + 95288621726635968872770037150784213196985326131676843097938547136462929264841295546771500388417671294966257595433760953200547360249349740933546921081522125275115437397098973842360250826812492033263835470045512007784622189487961151941432994089813647862969606517420125770262374746820810455414109837014665020593 1024 6 0 - 60811636929475187479807521649087606074793642064167945690350627603203118950323257675713133373687111123714663109087066267073458476631246485001894677569393649603260477149691339449729864039552273625864812610179069562367245786370215607199308088083101677805342992837524421920973047652387594443568045299878715104011 + 91765448215067823325795421667963131269512371058001714218791999926519624355910110183970996302294343489487711637666736326993210098027018038695140474955963214538087467579370979300852114793975820201555823972904294803171664470191975084609410844843699562290002166572267125918023256183462931816866438417011288387597 - 71560986262474260038579847733152867125395323692136727882523150181177145526050032346646815633503819181049097447083396963116870388315714388861158191811280162852633670260478236187402519672391362381543748430716574725648848677812893437556332455280083345503039177361800148373565541695573258846852919928924249154877 + 40294104858917502207884187657330535256083121883845488158774475159839995768781522379296790456727414484487297945298577860348991280709907143209769263860571497761805544744736759396126801492587046865066754602032016892804265697920244305298307566030270409229660322389503909826850364964925423148539479481422269333081 - 5358493014159018151110306019414188401443366482533390828878588153924237270657211162207396455592545292115596564966717448066974022571552087820343845293928484045368156700279200787884399405557838594314421227423879077160333472477688129275324340290022874614042967407069455935447388415804019834527557283355835583238 + 37181927301328601230229509824050779944931890417371371899093425328383585668806438133965151915167895804116880861939436384092456427888455471167585465876401001715893034711967342076190251284011995257843683345831106685333128346207762133410990676468736935851749651853413574904157556618055537455150277384533267079125 - 9440403911953510704955609199118462522546969159294361115679964001969095067128208202978671380235142495494192920664243060842431049236464627103331285996753378993464968648353139689202039972946351834805543874912252883016750152554402795151625609573033493183190907610839726606922080056808873159110535921110839225918 + 67347955068046617987078271939584408214616385355082946652652558963004113886368419385065451148614904475564270298464228947932932400883150877198113111247417898333396047869562351233676189346740404229714576046346513957179597233959209788707913957203885684064580064021423353037303259164004893420671864177938248968460 - 34601241858178235153992489154363566911322825930412755051942961530163789553279237024169967243263931210587905323687670939702730687998131084839805896091785126613296047470576600055262500331821637746680489652121076447750079042944735474064557177506619768477733608759334395601504750316910835074596407622363931297695 + 57669000393863291465997741294941801999274879223745070978194979170456208486599787020905477696350469460233194798640650624252822592978323224264539104432394194340083276480589910796208101428768941276014721718948586671096753212427551901667894807759957845419273976923255392385335476551662714791721228240704492903472 - 103450953660312905541961327136746359534991486059040490771968614429013794227835017626759804639288113432551732347712210332460709755012800755979360542019454727242090797411218789006851073710562599252458946620552051918314153874747184637728072116094587384838416002546398982033848043597058533784377942968102172250659 + 26693245241650097930528211048506005550361754351170897843150689991780056709581651682450255357597353232814904745727236148991266683037674349270826986976517570248012352181812879805573443388140013853869016411689779861764052607477431441788218487198174043217144077012585519677983607140788959524397744180396725947903 1 0

- 12932030508236240029500379006897241129956579101695632927019316457384709196393771888005191041903025893215144948249883093198348475278546477203390317270105679 + 12945228753730753010799769308073904192740186358719876267195328129219509437411417573953218759295559598225286103870215718789833621752665010750790287315319939

- 9902386769664478589840240464665057831133423813801796716114600855905375529754843999999225688343006241702587573209999717516477696656645009688715730598624047 + 7360906751004631250663929850554567318649550553171792610854559855412670519030817242584407983255129240033300713502277730430122399107318722593126054332128187 80 @@ -91,39 +91,39 @@ 1024 - 91338861134529173742636614734321283317712406433818139285229062454925111527732609262828687047423080667973258817589805005737017416371360314088086808443898371429020158735259589920882443779130428607594850787634565846387075036083051955856286100630464641033224957452092909212599715224401427904042049536509604893693 + 93754528746270947617601056633800291364861682298136548284561953146489022955904322738006597336491255826850217147425593207106178206216828010702018655449477593047795515376414948882934704904553519186055641276786533221369873508841086692167716664918409533164054262959579372586508029429553217016081926497726561694521 1024 6 0 - 88481512963655310506095083872998303955363103665395614689748950761935149130592150567352051526842435768907883513122638406071951993833483039104880894260670448994086429616644971856997369229550170174238792300740232364024915015016653492885640971890845653859579668498528250516917066920672069528744730214455335881003 + 18718193641957314100730569270853083678067699981231377053218236440200570748514195983062189820845228989708114721036335865296839656769486571188331480498517073112230023384223396819136721032148578078215922950710122782193152236503585708948416278154158382262317851500701694633329332013554441192971028421049617669489 - 71420609539497237732868765033013438071208066944625734387424793864620282249588182875061993503837717471514509627177747945260865425509223920765478106067601828682271744524355493795121669193837190303641492443480194307599715826281960573836394123684702869297115710345424755375986644023739445330856168082010838417938 + 82896076754196599390958700658750134011593697922866943134696485394164355313829104791709121309680409072619102123137695639536409295590399553682662365861769296142916411017933128214043071624336717400223646514016780377509575552315798740608282027520372471946643222670649888877298101008604716866742635601384004923854 - 36213374277915021187960501154206429350509009943784937342853640962344665273661370341432812162660134104129081769292257555453657933322026058920570002011215114885632603237420344104120014493999772566832623489577942137696416594059207873047026684531831127098662368796483679106715230357303209903005563129291440998125 + 21409157001559082435198762389634006574011661991672395549556344452730268173323934115852207531740777161515961701461098746369193405027011628705790585563246956558634006855496001853186543137136893612905388690157500633486730387558679778087776089487182622558762079085605279790603515779276275365424877533098872706670 - 88784875219103004490867409187796580439336028275646934064032325734642172796350750877782655631487263690600595545185986973949637793376040039529334242727841787186152368722684829777472113434707623526142748869410906573019822447060135044716736888756586491608663760971724703067383426197232527066117239191970436021914 + 70565991640659014530782020171678876734088049089005570216201610770536518351424325792391149871467733547040543767770865459680906464111242548129734433235362473871904159393238510211564669982290551880614995619280240162572467822996375606151081508022082119563011842579690659846853164036860838326243732394765514573431 - 57669682815414213701829150785790139820922208365396385382451270040015047105011059602270677532141334599848749895445377163377797098101769663138915670832338561398070313576223809679656089041902001668549387570675942187547921753080749715443394968434937329744189522351133848627606864859717699163427995004551470140014 + 77371797128912592221963604938094942633911707145381583508738772419154024425791944438183290768376322858296041782716140964031431791761038113224908751332497360736934697933992269356158706338071119510267730514533442260161070478749011694884944792352277737582112505303044197289488663410941538147133378198748067540370 - 19430387956073665040008742545168228237366626380409449215616316415682054432029605888008345798193251163116713132110293851289775570086405711097037612492724618955613522669964620645767675728759532995017555557036656920568589220029848250912688353596366989096421783410644212433994547565209779383923475304673100010441 + 82906267256926337774982154418825451735160292585995227482630966060005770865073506792587615848461940397794441648783258220198681551004852811134622576927680502421722981730340736873927483483912074641562013505776184518064639060490292519532693639651522247920944720222077401382740855126956599277073236976642634255886 1 0

- 7590313132316003273918078590302512319095378293744922263631882454117055270026174894373664622063534944373597887745176839805114252442895212090845009070876059 + 8140140402670500074827086978592887781641220395541539234547541038812605490013535213539557271263723713211620806619763966987005864890332854132366684407666847

- 12033609093892453905143611421316260116392442619100420560800021219786194165358425170485864622027203788410560571310992155037737755554341786034296519732793927 + 11517556713826866125245357271716490213591260670938001540496416425981617727927140436095943977970211512553910762852027978664642953948792430097326141275778343 80 @@ -131,39 +131,39 @@ 1024 - 171795367802537336198216850040760302817719433285673072064016704297509263294972920968862879995019333546807716681922194952612358665832924006994420672781322683935998563828829629166676961578310364216820723333284118541610355614763234524893877254301205676826968663616237843247997193664755408992255295724018758287453 + 117121510340484883218702815716016593017369400197866007284904378631159197139001634351397099006348261090254639042478158024516471273585541723720875693552232460895578362633596275449655253304174140947289638902997286514465275801294597279338210032808446791251347509758362087729471534556332712094330499939197910698121 1024 6 0 - 138781939743420141798085654234587085378791442750844156618218315519623156030775014083940843628427157991650536995512183146050090364430217798889903276779395691314769341501283521555441395248293145295446229257598584303226472282606025256289516823083353133125249557574662930559464988881796972570415006594877835195261 + 15107464790949779810848925539036116589164680473165481843812014434604020175520176471688364414295094594789131782714144993286259674728780246748998301348736396420755743906492330603688120075762111416310712907772599039447961132953865243297778270824554218777752426713792107606639541765351560469580417085799109151109 - 168420371175596160385314346470541456127930556988792934601264980767954150761074401191883764002057676025574635595559453082438403114835695017344400960903147888338845250647685131378444914574667053754042483424927960459645361430078126904416924147233083786086593890435155965855696708192722757613306648217414021209339 + 113132619367906663802193126722604452247067407379700239211440005578163970000183414500162238958023667292239182925037826362117516957239919821570280746619833192108348188339728009997904509491615767024576962472478540005115623781145645859430146502168842179897232042057741008928306919479034320821732539898654106307802 - 164599507864917269230220181044130466242640054454386799153052272100119238662434506377210871322725801768535465849520862187042461522458751851837119010844326508994699806461980159073458635731317238484887665362257435016594387971946664996341942792674855452076757886270233668811767159399329679444242304826944461878356 + 78831244758190029101616472362891555519371645829273483715261840379070989387145987292415360310610897488118375589143503280479343341807586436831967002903765461858758240031822865686048256893617339372987036343650345119947926372267957827867520649710294149310400270822176566699466347972287709536682523581276108603165 - 112022954554594868430694861746706902810007259966892035372848716164773714721760248918761857377457366770462246217862095078291990529093104794681337350992919876990886726535142991553290065736768419334005963502455897767959870639353796998608846837617297713305741565185682566104560690180553705181428610482999491959762 + 89583752214253883440042346912037084568006500039317399385601176574344374326678906556169715887314185264099152754269356405558198400381910728064450965723135896789762010431669178119883031744022651457596440185119193793176699852604878873526015261656614848828142855743809311777609303941862248597137943126610861447582 - 20795710379390313360149837901235593902809611922782438280826554162582584185176550436631972790505407403299851110962435492486911884529635673218790787915570636384717044595376003628898518022547995524968409598599237503027024128328270655662334146591298270627006489949537312823974893037600566816074625503584300399503 + 684918354387786416205491044839255104512468520452805205068164464332390890861013726899159853659380168702172547004069779846306014103550976054178864271837177474931121067671438226162027556594210608928930392798386737184879547657514532124037440133147012810854365196162946992675626655050241753400618846478941872959 - 4461068203835146920397273122878996496925951644023334909782795888195924230363311467297500231054245083629066539839024032350563196843805187870921285704555947110972472049763739700924273806542377974583744547273338787688284998293736197541473212310650426901783545952048410414287416361433915264087521382790658628498 + 2827090550656972121690688796630460105969591925581289110535338322165933007662678927433743438230413437638688120784053460847485119328516825633705134738699602887927163627101863584369718271691217967413302030401970248252827616171028363054960352533790801024629520084292963540458837640796067532543489914339488634793 1 0

- 12984815465718139976464939024875001723229509524339667690378713583638428557083258852077827822717623083472588218407867051847898495798522333139201280857415519 + 12630499922891895046013117100282886592162286502968270762082302629751001474994425717473886356760776740909996679625680712692434516132328086691314811018797963

- 13230482039279100231549510012632674263858285311407266814423211632024536906105987751850169694421467822291911960770965201757888760198835329800602452213646787 + 9272911686433754068745356771668009301724290378683563181975851091754486121030555283603751744260025115485113642974886345217742417979894572131881209044334267 80 @@ -171,39 +171,39 @@ 1024 - 107678493864345648666726963381598843005045134906745773568855127179729298765945796229988935480734186762723475076589458553114861073591179889992284613957887798550444135071834300620151269193028269405467525155137973905598460168964059816679287733081423902287277428322195154969572934367847409309681954541961841211929 + 99079153840397804685867478704958595964211219785958155284881016629530195136827933093286116921421314259616351394960959112126590774558615068567723955791014044034246784512429519014013254580736277387087599956862163226669530087515094282327896617665735736838287894898186772994803726158745804341613911571374382274217 1024 6 0 - 34780567649645587652662047318280460216197594322629290659397343806640717111602043777551795972363990570490561518129361133754971748815062877457811980871870613895746761204692874944262181605786891503668206019069701677551111685254064897625906904673396799614054762342291638726110702862138766341205373553864835127477 + 35578547039971283982645110066508624345573610232317627247471510693463768653398865835272238114026351004271431932575111890233938763056151590366620841232654704061531541940982892684581803302511323727831984614028154198292407031303845418948998407737432474830158607617228291146032822031461125981880732591780383080312 - 76770578985664099191449798911850613016440202975139749844785468106943538467941487623782662375335620379715667015148235397661770125559100524256505138827952950374296533996410404476470347577736554558794350087928716157046782489969073300743386412321573188949782078100848155826141059164451205262811577282438487833155 + 2839520020939910414585072396053942201285418477164512070052267230831770336300588444747762843759096401075210098436532138784880804799932247566970642529121364066612216811270441923475539213363391876709967520432970001189613754468394504726917294243804597283185825885394444717803465042728107614758510510324174671273 - 19375132007991059652876546182462672768720429677050803522934111565324016495763732172744623907045335493048740541182304274405106110493850369225158004210873483104238595711350247509966292622988932139561490663242014148110393502548086758118819001913181597386000596861820476450726333113377798106479230138706277155435 + 4257103436738693167679988473229289136213965822055009836429122086227208976617015158554335685934033709081255434321021922411600352023894639658729306158101602153035636660388068573921523812704376829383643150036396507460136150352573845700348414072481768647411162438985157824104787655967389449019995413270282384725 - 60332745111136671951489671083751897003291069716229419557442175701860610038139875996851654495020782497922916125497030526867835842055895873784260108184155213565134969114645958871640895775675472360543614497922018081777590790520072701770098022598964534954182431602697737796983390272144688966305745888541862833949 + 31273849552494023387697146195164619556065892108955510829954275657213643062645495427357887929042406068050763274296028240982751299109488666543364710271423257790548527234106226429899957206169892445232737790590754462461209360892073592865787825317580388584134032992457155327142814088810984081589994609099547807103 - 33206030625501357397902828493305862279894195856045523813806319914644617357371406587381751252409214237464923457683937662308696252667537129026830911327626477920950026367523422037741403916073653057335758700270326029776865721695045422550695292453931419295319756838382198216938790815705554550670037002167896435708 + 35347178693259636224425976955506604359014275201911436639125947893572572942967879891723093129361271536461729305849344256272804438952413715869305278809953911268349508791262359453574584301723678348219958163537617880479600787349102851371503927614310858588626874124144067272631324900475250505683917036436021292017 - 33699591887245320183352886957374795158953603724548326397696125237452265579267587282433792785552885615789973016310923276732538075279246287329477093697179355796742915804057038950601496710139911151519055346593812515824483642829165138763105492040862107512334441962031341198253373030460133402288720613467576919651 + 52102732689033856356640226142441703447547338607766799410243675288006455786150047981514503689756076319154821254787434210207714021249333494274124947142471750583698934512751038996632656769981162124907250526920201757770741572757079121833484338311748881797371896129073537143638484841938341861907569264174122123347 1 0

- 8086445429826466766976840778602128556427763126861092718555085428344325918560612728005964357058814370039705887555080490065308264985839108620298163559066147 + 9748964991505723546543868536062010971127128589119526939115913892146554593940386237933184712599429913743924002118610126365074816440430469386062335494458683

- 13315924134871259995943889972263783197676570583006459035153156240747027875844241230942104155569988885879710233246386342305956396267067502039128111156418707 + 10163043351445564172351159513591606430238448020421438472421789942995840932802561871322912366647551980193514226111956183684759285693928375857878407269416299 80 @@ -211,39 +211,39 @@ 1024 - 123460587970465722399480599701446111042791049424678164510782348298178989524706869827218072757318065802572872977206189692439610889543998303448261820274781115343738147716328254096174904353808537339736300386924394267507766388682907861666597761952802807474810395363126049870826035575374238638068965983199376357813 + 99954730175178004845131539653721707390533824134606712982410587911600868971245047100506766033962983317090892319656867952029116781250661480710843185739353918573345334339835797435830424130435498802133973879689630984537203490181103875802086600280921230328725473474449200859216711406629174468133378669755826399289 1024 6 0 - 117318302352368229229163809607702479318456428030157262995598611780776136494163450278418011369672196225024705223924157260734348678181103931116903595932563324645629923260513068155684589997607606713365161836567403767936006638718885167253192939940642824452024816730744123545240701916149057716603434108694989710429 + 58613911232307388786240529740987000882039067599860437772060847031357515586839511997150614558368535541427251986791314469299365847701391023351538654534248928653505326544257910522636722321510290544008094306357049503882695532643010370246985543037398842826556465466041122607877993972401850373499349505467940128480 - 79166656374368484214654356495255053395213742590584206280310930719755653489957925930346542517512620192097650425359579247070837443830862748231859562053718573394014868991678211219437490529223024342458612272327848652593110612340785752785585712120010687405752536405399684337596148008796260805479427829450136814686 + 23759200450495340002812814650036411105104184704810382581836582136381499246372180158982092762319176354865585492876056145343997330165572678887761521089111659694764726321928033912931120570410344269003877152629946202983994387902650140832036058989562136543699053859110798004475607769263425530430095499690012867361 - 40871868938993875410426205996751811587721008167871813439166564189762055623031521920195950886062485740929198925966775524584648439881883879228755988003547754790287586711275993853306093079373185290320968524077798129432974504079981251722944994855192019937284992580655570885903256271403090577186422692725459831875 + 27782425796445607511552503734068694227876277361913927009841359267890284063272744867098761749380021187439414183495224952502774379338236771979358642185898028829503362239763322899537168530813926957477896747390629838050847130063594861856714553628317263751461531880058526762279151869539133638780577291661705004927 - 89892620900640290140283566392805476442834511036692916092709883776370123872836264775868321860590685970283545083118729182759253902758383167687729739268452078465233562037688700620432639773342196188561501129246210605848453748122752153274263445164184465697547705606339433632142128437959746969173608800415728397931 + 8784981056185286950712849504706542909851983675476684831378521579437874438781947443207971368861700013318831210277930183684008548888491900029215961830883091576228665510223450239592867424261582734977160146810093587216625525411002439629017874997945384679431426050351258078369390184459312181275581036833509779471 - 121709777035471737364513670422914240357059445755508125094002474776054087244214559702633254647901247822895427221568520569724729995389163298559564480170015494003587855303221851200035414262844476231232261394773812801023837394666069091883472673028207084029985001140015089782123008327089253959339518752984564005371 + 67438312305077819888962412973544875116933726924127002079831365096482645787717754904826762149733256426407804919023613760756645934824283717354322616471896981039882491744840529505847451034873496543558273551287489104242041014171297514449081571270617393454781665775168456916896840386566994664178411923865986659586 - 118368291349285147157585550327202423335817645258822478079337019930721123815468331635525068128544253736950377216631099734999157547924851998471340790034858629390897530180532960195293567558086925678406847565038276833217752653830262850771875793504960255927890257698780412927440166594709334246027496966288743344300 + 3464604326727829206934168876456004920457656854740648111041341919379642725442948759261114328466645767790382904740245997674525442848992126187113268087612395494538879214628114838356903347298883717235497237827971476139254978851080082281176240683715669897361209280214505681097167531557140873892635301719665778459 1 0

- 9555708939079495611355915185979699054940167384681225047725748670929850843599516084564504017739835259712298489561139897471949689101632199222485821907536339 + 12939786488932276262323245278120924916535303702878428896930720195905603784347901951774974364977511870729292166884453413790631637944449943023839811207539187

- 12920086699748173672215351475621638389273860195435770401619903340348767410733675655724985891607786607181490238978036873680082748103544680734516847406362967 + 7724604286220007653749798947053474710559334667556480008209607824527906328856312857409846221987440911537516799761373127400163478907588364051834985163072547 80 @@ -251,39 +251,39 @@ 1024 - 115193322549187017758632085674974727024742715278872315780926012027804032179761766503288065034565716892785818153660349164554433828067796365626741896969380114418490544104123599167386238983295022270967054328089602503480562145153230657099035975059011144762714926206594556617956114445259820923651026107726741377073 + 148196264683866983246056824641461916553727188878286846814207149952700786295989140546602219816499052248745376771762136245911508160658056925812311366238900528068507706459965567045224239023241599326102923853309769022811634949971343037071212919062146382997355248278317770400104265846506381194883209546789678257953 1024 6 0 - 24958892788118393840566891402925212894261112686881756396217607457946596306978104211815943994414797105011718075194617345672726305027536665064724927900756862036945765691966423524893153682261745384165128816990435797199717205467355245097126693946214610135412865735012562961328364927779026079460708512689938357459 + 18228509827232960358109377366125905423396651073282009255000634400639380520576157033263066403255727758538148196007410118445711222636928632798833981031757422495552319975431175939254099574893434799433886121282995060105902206634281977941044087776314177795281177970367372303622719093916858010157621949175537375437 - 24288255554756812624762197103340158750190223778765519768405807403357684268583138358422886605098116268755079717463816662298139317595939687753107981126116196500860143071528623840509966635777831057754249172610936632021767758934196939105040316041127363794901161035243044698624148907282589708017305528332080549401 + 90741052971361642071954400353930918473049330103806494303478914341240604429740160266927238572355901048839288876493430663768138981859097012674365597674038606403261541063513022898915424660284139220319595247352870395164358600167094743461905071137254013807294601497510689150945162000419459659619999603827775332678 - 98573529002331715221466911082616318301300017750678680593832916072820765087229700809543111818625003499979817183312145679122909425246500434114287363675204505267732119319754784623466080567913652584576116756111506044251229410873182774035682045895464671545948436513530383740487677985431898275771829011975467387636 + 52734335451280775701279135902793102618804746933648573572440269533476207593955736723943187629344792274001509257176599036967710480587413456988273865241932371090713054609684326983191462176991220730297153396836508515256005211749658852141138853888828449929462905950872738295586503848336537871567551750808215082154 - 15353985435509734717647205939924424374297140311254436480413662376519872061599819892959995176175891437756042491481998969903341756892089428475760114248462830393435227191729623914880110584220456903870872511626091038462298582250901312945423814102221099309496784542055234964849111850334835617876760601457927418206 + 121858449637190773866676289376800522277568993915277707214462950174058584758252432920947572621722050668109626466687582272873980762806089036347506636343533340986613090442509515739606515227484919838200607799752117413416448281331606056270182334689643276303764467680282413521568568120011182673925501023231082406153 - 17455735070449738054682884370746228687686045089020396998083887583650988955042976829464912841928464950070337180970573621151968757420751546020224392735386909098113189353739054276774294071884697288831510878855213838041505870499205405393921909645992766577060606810395305981595413168173038810933707942671713337798 + 37196825733132964338623996101449346202869180967029642202058352423341650421724872464278502908541095717874629388572535601572954340968281300632852357761510380827733721910298105144168674114000458492760192448497375493358162287626785807975379359987001469882105036987321265846856757528606901421058839136798700287397 - 99078282433460334122518009685435268135390495565166370788375980674406524442600154170383521782130678737146346515697587435130336220692226983416874121180076768315197607852814628471856417469605509753709709939138595158453850817740160745949448738764045233343710173080910805476352529406131342795794391893459845853249 + 75089855211101765747300894547085312949871336795292159964546821502857006262710931284436535591390767143045054287236700353745766551337135697641239389214003872913304473085672132743841053938472186773425817048000547738177259207808092058727324924409903592113635766451695610110034720923274183936484960662875433336362 1 0

- 12673289315868749623674662876792526399689105251553138253832866963657700201414882030685426404271074917375018034885700283434611314390001132581350346803957507 + 12016202947303825023531335799913322382551195536742761139748076703098880974673847071754302534819834807871631469091115549435730929542440094686445020447774447

- 9089457336458712030766629429550151802473559635837189343206196901440327945060996267506637537707282012347200095016039598579224618836771879940545740195754939 + 12333036095825845430773725375739290139313531934846121709971815833613318772350157498961858315340781451390953760021411275599252153249166477673811092356969199 80 @@ -291,39 +291,39 @@ 1024 - 153256019031673973848391853908671616024035351852333113222956212092935054851555144537037154882131071118335109565772920677334385665987953763710322752551766091084637014937633351768184250877579165516584609222393690507834529036303945036774013832353124798268158248184389671641362425541416312746250270416649359548041 + 105921949191653130859423411775455174812642918848669759359209486362932598819678144087209481182550147678529129567658791265359717569767628215894734409001006779022322289698515237895707269420956251973406350695311822182673083730764296195817297540780868975477123852203726080688004629860517990328589192081987644050229 1024 6 0 - 15220542722079887934163021578416557040815588753014948049895358680874401987354756483638187693890778200226187944576153001580318905767308325025251868319513838639170229388887094978609944368236261084829465326382756814026047924860100572370509240911903760108844191920274365232194821110327754051188671927504786123847 + 86809400749152861743901567276848272927167445497006079265900998087562865265602440835156566344510296704141655423477235937471795088316625845837856447310120665238699640116252577611027501208177910037535632605368178096550493728239151536133777140960209848761693689914935806579004427834951787425614424456419297157510 - 143004036495287445500008244565089775614807488065311228319771443644042556939728810959906482515000410036341359319395672341423672298834030730662358936098971678898328809479500096931876973317120818472883465991015596717523641856810286626439287667681040066261020458108584755098587931772918575340120380122391279580630 + 84986197247511436399667031576140728639886927069411759928791244212693888161425776856726174455028312620459053949666751815466973657597394187896486659471058818599622253530061625009497213318036240988480751591194064567662021711447798444988895990719137206080680744526229981752063726938789038885269097160956167285566 - 25677830626343122473800267766987258667661454338633409925057452295050792502934635228012969731952432090824067546127184820674269109763072029928071755085679552707171555102523382002859000834013865264250888579699016146722510456747010192496630995123022435395781861793364259724814673958020662700602026307416209911222 + 12431205654625222881707000710728606382090929111990041388059059946907607046548243604353853640940005905715357216784232240313960881905454724897804957781475751038209721410086085767242939434308439807150162545625051293193433624790643565812552903666506190662522259255795554682338285362255530961345229551611440343519 - 62246636121089263731371807945897520167051837454698735241698439734694730001470335211863614247823007078485077900778766898167190790567301408855375740484748340320700390073275392868823940948653806683445411202776990790067823595294042946536030310357110325099679964532575421698733314704640641895828452919877756100011 + 62883235755082005523686546548606789143770348860378546277745391562811162140335817900845352214174699090463099544541601029119065647315851429798873533063329837639373217180256975002663524244050145680516763942257347656552764882712032814090180931672955198158069467918914707575354901887685922556718370751575138342589 - 109179195904717079139512297958344482754488860947001124419866306632211947700557001412569449694611680557227002345132253379015047209028361122554436255825724641792181226048045416132300441370043533054296640636019094847912470011225895961907747561407131402046285049780521232862899425601689434905370686341564422790289 + 39849433607740902504402507874016885026871507213461501810264903771866537152481854388265980706007990086277706589042473112769024003147970075181100851394556059066286357588607531753104924164102535180160270351409239344423986742160630582682803306956751475609550461013854012988551751425448894542674892017443824734012 - 72256199900300051197332501127222934244256559778006179914521739477500706464599171904600643790797361089413358501039731833363101680832368594873645195342133343135647784788351460716476460798313313942000048638227363109185805859595520325671335898545619147866290785844770980165710956429961244551737499380764677597447 + 85402225442112559560680078698274218019993940361574204599118634528616463142138719233262976451961276991618853156780942664995492868531530624507421313975512606915096058618792443156198101790705909662504630168187270536791683734761412420713398341369713188166278602069035350011783353145233527044956434445304512600650 1 0

- 12342925706968186973716394535438921214235596704954293960842039701459560221839812692276085541622342123471691734600034990812679842472477393419982807837038439 + 10543874413531138420552183302585089176867519635900090544987728636485354541478216632345467492041256889049596555096460358381763174812313358589354315818141427

- 12416506642760835382914337605608007021637845840379701356494020719607002466778798575874134408246939316921404868882276829304115457690088629985078174708274319 + 10045828036013179477466574983046463468665971382225481892440329537900748631696449009169658805056073780192181226505594061785793484031084774712279015886307127 80 @@ -331,39 +331,39 @@ 1024 - 135358305767271858027595880716111530935123928737890043873187024055476620530906467130993033452699358704424795550755169128359841746123492797756886097936671355386621176058979935393331413499392989299082084359031846630046001377108741347076252627789379769344457517235001038532356319713316214499718115421425871569433 + 108440748919252450268428286731731896396610163026933503975849925663492334776921174398497109505538747057893434317250808469760213233529336913398085925870706542294714657431121759666156575676722682156151413720356321723309169997769639095210994084916522091702333943625021802404556103531364881274617202822828310848153 1024 6 0 - 54594747011594798877885888974944176740233826058214590608446121481719016646101845365461669609593284564003581366359995275781810124519910313811380876256508679688339828939491429288889804388749815124253867496416627880709040603044538402764027705232404679640769755327219879688706197760711345784098387646185164981152 + 66366383659085004160581858686068110323987677633068554408731820055937312391603116323527462447105256578555787138213126535928787848971976541459974948337601213550884956798828607581314470984305212507805730810283981952589260529852613686591965244366260752647049304254010848262444064395193144695135425020863379006256 - 132783808999394318707408962088834983207010415125168788915872658758155889296838532193150695880199623917302322850691457856799843846471181568246727469377964494204689790089312937443605415487457400789095132034217110410411016988079403293808537223974569707930874192773033393470383855778863425429691879481694667628909 + 76945724108134514476845806024636683902509514081378625453698025707233689344313131316105525545539579926429167457073332412872790363136331080030707890397365463990420679800561805613345351927011441895347629470989024367971421806479256556337062265729708476344598157347724009574637722602080586962935931878380448404266 - 9473430635930700050486617160141204494342095550189134899476751191276019107931129114087093973056080555668662930307913633328246702572209665502366737090850431132340577394193612418080423291630390780237790223606432359088325373896719506291987815760514899446327539193574576164858114835145863147018536204496364575294 + 91945329973224060248558889328744255046597767263343203901720894520436658305695307815971264787080717251578623712083670325402817260476998336830698287676420656098045289735223431738396971319193824104754894276305608143683285127818367138056317944418094268645782094697587442950453451099229969927726915095865444522094 - 90024838355001075777783195974135066596911088933953254044502969121509346778938214241043930641227033089129624800092043075809246544470625613932569785625492513957934084324845138958744207292453298491639912468882105563813341034734148686353752495183156303339463108993280522860556963638419864094636988429994370751743 + 71371194814401374673127041666269343887336750774645785365973831168673801465656031844499219442062352660855087164791888562838903522706610239539435340535864232794707954647487039513635041583341855480149907762844377270478905725702421973086424891767443863000735666109119321036123589669276816773800922411249576027546 - 45914980508142788475969536593414423447529386876252836641757988714678457126161180788769040893130014877283087923780361131128613703067760746100124401445607902733176021029401905908890233576832489405771907746137014120822037941005000384307118527309121044551993381248785336586579186345829608419256901639247803554604 + 53718436417526636858730643071130396923526708450985497713286303484760405006322845800085165613155450183026982545846694095243620426398424635300019928951028659679765785677107062221527213905354703614993367947430698278405310236478443546679988798318205559042482374923767602250464637773429717300281505631064612985081 - 32911404065014905616571735182748738235851543040766582724263411775153690607184929086994340376410140178669625764641435927432683863591301353627927154715686151567872995056710033783341401210111884942070839872351093132272880604910175334910646752963148483903851675232134333338877843861382949858872798355076941765109 + 85230469722743515304402648589847925000201154330027354125047810198070022725031542612895149579396712621532910796627591852488733918035116059401887268218978788971949898670298569884150675654662295808772549913103127258327197135266119807509485752123513682985319604190596813804839912737937728219384325250171411540887 1 0

- 13318107756312790859351398116542175724849222734068960781305693360971589188723148557676433655469259538839570794714793364814074380377642061943802625475030007 + 9862981227862769368797719041463487267278452213802595900845335192390244678171432992590431200800304335341042208011653698525699059678409008267720275077835187

- 10163478794734330182377840913723115665713256953124119469242480062221283140639606280259659552725660927524440315179857892001570482716740571281058839906999919 + 10994723239755238747222553832315806507041992287431672695148498427805959589047328029147288267156720835206221791909854520270379355562497057005241762831090819 80 @@ -371,39 +371,39 @@ 1024 - 154218268867696507002031865996832738977246724680896068886617497685938467688459935868916544652628785991317792030286811386804084216509428288684761196875989322260388889257097276677216400072227578520525641529006704269719639306215286673007408730828431211470630255070235631883821820735534893283207489831811866541573 + 103432042254953094027999928574250715964500891045142387105955201932618522113984190182166706020884933161447941491385637733523319614167734344468728413306447688694643223282152714640407364090919183137006284201884535802398403524505317171875956878874168571207572265824173861602627771714795571730952163007208142820237 1024 6 0 - 27428799928169371477008314260818876148937722875877046040065001415256050285544612261240610068898749426541489168818274025311879557094462504325465143718226701031270459513481171715674711056192203762896591318737473272520615104809732143483277690473125331986133481516425478801944037361281857855867037438256343773679 + 72735857654996330036308578750037768707512446485674661426090344826756269113965804188268267650912305793719752190143646093227347682752079327651194810856984810512909164395531967789876907601998849500709695834360721633503971686727031033634428158149145749257438769804777610989050845392734398678464304671042690689175 - 105450822515849266246824784593332752863996144824625198279966526580096181889146860866466836912483527896334247490301097916546476481609859267630501968068493335890437763132841945935390933265030348476193713724966585347250648751479602155322327667705579310128424156557476020295924929348119910434857695122123769715348 + 40354197327776309644557445446598247511877805740566355719587647166808789073448238334020156687581688473278073371655120817040636086978579601886371654352774729778337067600125687099708508209515703504788115675665658396923040920295778105284271940275617551147714430295447383909281391532478964687175643491947382829869 - 17917586169419969792153843627847724624582303970451816452874219660498616008632452910042480347537075057133325092544315346979734775101435525533629606020738633039620963234297245636824119587829479049303232294479234284130684993231299911772911374146097317218619653947965414360245657311825149559284315208240541584049 + 26968813628185832884730391035851987751870560318430849916723371498400782087349207710865186129239304189549444082550532948832976767259584865952574643740037079740215589837871761474656629795571319987839311742585360362081712716843606865678855283492160943131234448889819908044401388366435372206735181092989882690610 - 83614794643827277304010494713733702635853026857962232621115526420680432673836574945397242148810823271595098760695291447287587902753143969200514260996554707598388279117974226336910323931721647138761776637137666044994683003226962992826724806567215542394880283109239037221417111570642218445097975627548527092539 + 44457756325918210432882749039045279802693637901659165506229652641196771463619711136701874027949976037693870830860638977238468910265640234729073206675396560391192913720942212407458029980943194950742066637775931509413627536969881602485810181257639579907992687706506901124298572869645460421266928082601925747112 - 98025334882817542595051261918088236466491396073054003041122381828466061599594157519317917789905097080123705591326984935802933433391754654298972150414662017901502818342450898330664054579806253102093229112778500389727696035428993861323041972409204375141288230032727654233984733937127115582284964721572192907628 + 17923816029308169688209802751254596783750808205473920711963121223110109870977619253002898105372250772280013117032657917924973651135856341002576602124287460305553253303790018252719017423511552791332813099369856129658602326535776342375244816034773978221082034151281828464402757244302554451737031177234874936733 - 103461867044654386108007921528414895482662948754475387341985070060736686576950492180848716520576397704988373242928703953709705994705234961029080392502757613196202086877221834313994327801773914413507546181585432001324248533541087174089562102726527826866350806480335498036140946354815641124317115290718066663234 + 58173516169174283964719668683473056584525739571524859721047404025100657870657926179915235481899922046403049387657375246255178245370444590309046031552510281811181831088860285782828294445034384018959362706962339714212986805788263200055409728428500955125311148857260741294606734880811179920282935017488093954695 1 0

- 12536655577251435153297128528495279017070952231480978492276109251795186322333973692359731778853961591868183555794714823581445343414531738768400801564320547 + 8672679680974973236690094113821641963666823374664779083333166639271801771951001348655097212003109871176706115983422580452706137508604577065592031926797663

- 12301388350138248799753824840982869068812246029803271748337924627397472168580398090458209842652194733464336605766181794711010942109258987663347521456971959 + 11926191910655851191252641261867726308467148179594475161094159206820033462251798048601413600297517962989506123688221777174124884142170100911794792428913299 80 @@ -411,39 +411,39 @@ 1024 - 120098847776259535343644334068493409247155794818213113642226621008837548248809756144435391881962615325304472487122528549774300242072619974184058684501061116769021957277559333567971936578385761656133295119311274656165996325688816719676095627842254071860445539705183362636859341285726107647847880667038640384469 + 126228903767442190738148096183580491175038013895363063255063879407638776222007762640020963679700983981505819346117331332097744171511439132259106773717665842976406975673619367222219945376954037887793874062977933096988373359681541459886631958588231575466518127177060945684448323334830138905052399414218163921421 1024 6 0 - 78341596191867165364462798149613513767187976045933270925524314074332359105916239984156112944388741605555584315673330918240662669972383036695380216369645786077675668119525313091263106903931060310783249892173696572488213764160500898695655888234795022024571259931035380458667979043363731060752523060256425326493 + 97539931636318677461475619122054540059104052317022399756575154292552051870858044057227021169523273160051067173161809677608371202374236595169900819410518245929982550711392322042314682950608013639486222401760902052975068868934717538248202265198283607804041217016155626510986296204640357633562628725262540901308 - 92197697267850835637041615816893083978440979223485010849369520091954329556817022954840969220750091574955501530801737742911131398158522167774789346516688492204741057116830688290864687904235809951324327245011263476463848478977798273152839939981363192465690825435376744018481972214855855772912890637337396617871 + 17056048088041119848885497185187738234341957332739548911174241850674169289366712176470014650655283087514808671532359181973245193579686505807246886039638542093762471617521947338468427670697788979094939538614633506767486848270358174624110579657908121127644226601122674835651841028567546912507950233461561314311 - 4748293030592378955093724566571489011651125070696427417853949295886768378111152102495476227775576523833542397763054262265966439448479602453489588304595952626064095178127493676309959239982750742094802606536171334162655130645407695836907472484934442915849957480725551564249920896993846998541219569493436633204 + 31717709189699030137875842801316834424645064031847570293530325225334129025771209881989868755679274813087722642958802113724122792623999410285511001585168859463078978573404425652982888882289493612951079566418713192311092484146177732644672658032091895076062007702891319957382778438919270892273974397851698486802 - 104584900904542556799078527703080866806316560026256596079705108220072609345471701770134318641946110143937813605502326970885364040335672893811516334052832715982398959853556119074396097391674101956889279124105778371957287930683941038772719876857983940733827806167120908159325650830304989434548687189098427086091 + 52701408784517534567979255300945480765809161198465471154967839240963141730818870689354317216286196381556788622550165176263143040912951902845119716643679329549799829193894570784536684136260779179477022420722664058284142073288038418969152156881985103589172969912151842893647108788505003435443026642491812317969 - 91477000374004348014105246188180409651649243135776551322813142142044628230484208001614477763449794744746082101984365227478095962810916246503069968738835364911647338508489896420278550004430041982623071421860079472688566117689119362544066175205618057687399701666608286724650867268340276001512993623664623275609 + 15916170466240831405710269071326971495003989098632832660085003103077847286202099441873708133501162524440579674719437136363718867648113746692100804664108054776712148615544501485090998986423172752761257930805965506564375676115179462856206417265463968081226820646414689722755150455107075664424251782354607115997 - 27335022029071511973872915368479831202151720242800820669365572158467591925687227633305136848793235934543162969534704442560517668695149887836214069200974132339079102773406068766037767764420212459478276529948373667413279044542607587605142289772231063326758841771162863193523221664294299814482921047353670436699 + 119874392493908971774593399912229045812669019257958357082614870704163802485902701553073252681759628404556483986983935409150939979774709275900622818557001714033801638980212024983490579855036873618987603097875751122714671577192226926342520061281357579934217951516213006849868891095137524137512935354897389930481 1 0

- 12065972956960263054303683531293153220877545209080865782763360344896177242905958506299126614232867538807178063979363544150515696532612909118238113675335407 + 11499339520580758253509229542741225135216456664063086084643722193312156847548408792529910681561333510768537871682042164700109432915244830423884287811578399

- 9953515411036989749571851292635891899300129938693414036200774667401727577909694530750019470986492657545284851625143349646524000492135746632402749851724667 + 10977056859789732894814562646715921877560763338630006106256821434974143239426025326128125137005756931804906605036182079761254305228156010117994276009412179 80 @@ -451,39 +451,39 @@ 1024 - 167849747908102684615783031952151303487318618058226134276355868669627336908402995742916429082816062902544246840315676375600682020395918653886440543549039685487527686497944229453172069154889512786032054308546997135806844060341575216655718028005098196791080486235476250761566643135320439910817103719665970114189 + 130984031670979893855543842480345875518508410205548385455401787667182043276909712853992897091674870836021665068146327054461603450458407290201372558787290109357683738428013567907514516775559018701817491758213188304978093675528268199327422042148541505303706207770150984130237176790872039958140095900892697292761 1024 6 0 - 124697971864257013069199803276420735672381775609467161633368671004811398338592994292357677388507254846498502768389738866111523924342131234320910182832156897093603904400854292861082845611922732284956492433793209240106822872232125951145778177387397679039918621121927819973078906987741480262525622005602565399227 + 77111031511076776748383055590862571648674736492772474529961718646938316725304876527853934806892564363406371656844786106299018421240298065574103119127179436601308127134820838280671592776233104655784461864696507484750746141074714338613753312756700370784915468572345403051130346709078319417883115672974802169835 - 108887781890361525299548949264309573612532412215054221866945026350960909252554790687820537292488822159239096136095460817189450475839784419203908369203805504902414189148576907397548005367318289848718165066768409808513010231990171238509327686404013042691377114557387525251911427307934702480124889546002434153883 + 3128131951563621685781519514589290396078543084150675317713253716044387307905521327893562744421717071028534528094967705348771755396568977554185830341410613830519127494248441161017549347924906597526952413022501285246828769224407661000067457541358719277808165554742389274830650941000817519093291137439421649691 - 99965937256071531833352267584518740705187568678398481975025487900445929854870225696845831801035897840798993192645749908958835960887390699965754669201895122689762609842067032782947025374191336414827383420980245403487860703320619493841364508653990560873053561052051848165272882782658715485304580849894447481984 + 24954141405440090689976175252555167972525713681839903660616337028203242900712021559077665304276350472093427384187451836674689185805100258168917640061516156543626305008035523276260649599372451478761753446079713760095403758829516730955461756588789162979921765890451415813246841487242760610785376086909463933797 - 135464487014068006350241183417277199933512080629319393539084556152088647569462879342427336794694607292779308330281931121306851709112290516904611886868248721653328973827011082831762202172003407136709090048796766379233700381954200275601566017619852103033202510881086909114257203408422383001855075728038739087666 + 10083134356469565434820655937850585425146227225076587201691007206376287612169498960565670490848694021370067252342213688465673488420651484169267195969254736060823678091580860232493159013856793525376166944993634152015542702135847543328581535175016508032979250811181479986919377039311967364297745111283924007008 - 116087460929649477650719239236850579624411409915463138669472799334909075618371332653913172377800254417621211492605964716808216033497729198457377469580439281611985552152638264761588841398460105860435413320874653840732276755863584448068058447432518834882323032920701627821579231087160538498920135097072056339130 + 113848733397666003768323762636821213490695764177128020789115723590466213187341258833452173134117916819367401260647045106530664613037790726812093687986435876985971021971510207916178699329669683834822651456959414265166368467473058891635488094103090980035908623302936245578454636917795970043625492656294734023452 - 87022481899114200452477329439521478334907267121400160768484310083510672665816499561166856734334611173826744984646636728146751086237799447687536072677043559995690196109619136304467129246411278102278767648846219215263506982413472377610126752110280476180152080765605425555155921191279654185124388043571147181327 + 86136816068775947939443892035798452754540048307990163601582410345529875583874238629932272530008216513299726778108060514260087906788536911056614574118478556477474027724459155894339604045879892134387001046080544595464847107133404856959533587474371075416239607580582640652535022808207241217726978029145005615879 1 0

- 12636642715417859827101007353201088998153392966769625361518956454328272594691632711789366661263629504337888950179922382595129311605158283150634452408979463 + 11408267927097292494421943021465092136859879230869963933878914044554698647201802346515123627079086986924606947152921819597576136415744791007252593064665323

- 13282780220042989825847520435951613240963422612857516952397101500145285194109725467697923880234771831873607951414903374146816937585493435872195952405446603 + 11481500303815824823701066311521986224668615318467744164273472355691092578076228467001390049803731395942719303679007978248732870976540462998083308693938507 80 @@ -492,14 +492,6 @@ 11 0 - - 16 - - - - 4 - - 1 @@ -507,10 +499,18 @@ 8 + + + 16 + 2 + + + 4 + 32 @@ -606,37 +606,37 @@ 1024 - 102680714876620505251519589456529850089969700556564489253162684638539597335736793998411151385396668678457395604056076455447346438315008567850445832409559094642617108516105196798178870587832997740211486024550117558968151215813802257578385470372409470175519459389641067956632237921585676408120047405305262039181 + 135218297597036027447710869998207208754674606065213053565477328119318307615909175526780620233213961426236879812016724358445271350587363396402647314849305621510012071242662065255846791249159498224132174763132326817952843159753470530205099792627946188037319629342446887089368727200769772054196948434863869529351 160 5 0 - 22923320959192453636423682385738922848216151492993760467429386172337582699603626592667966029063069617300543105850468927060751138940226489398256413607978816318065423599404211058602051331171774528282150565237472007558045410089374975467684411005456109694572501365211023547108753818220756570663968723659519304097 + 18208244590241069583945724715874667682021402381869122752191191011908431102922032101750150575398954442568433700325906936509940645446026799664167551673847031697308843403021189608647351053797462122799257330721911677799321262955518693413213492091091575031816278740442189255351713608125699206715386379787631136553 - 53945843214081887230506825685162514221944851452590973433147320105768347799035010333040104182762421540976644457898523154200390719416111152133906850059276116624692455403920555815325946146027238316284576081046322930997100925534589898400045746221732607763907326046366956881978962788748138738898197865947329746712 + 131540008933434439797345948918394261880173787648911427732001625350824200688345754946399083539327263132740551020405739246247253074652019164142804882841356667895761572327083692446423627850400085866440853738034890285736115428435401625648425367295082976489978122036860020082169538328537073357748608207155548379323 - 84070450444178810764801942593139363675201942216375234211388549548441399502573647392486982654665114331690463175765687779989817013063882187163233753732167024252613425512245014453169195391341163601305650730846456990348521068770085139213305228501503975315987245346014618040731218552889355850011776660968387243547 + 91272725802016999926151875073739471182280652070511760378850930760962342713681923927240228531890954606645620919696449005573523123959193016212029127692446066052985178174169442856720775137926238522268128669447003671386368122267146212347585948046238834952090600178685872531305631839437669077746419434508311013383 - 44698200531549202972232618323671999010830294896874839743157702137836602383560583870323823976773804259743506237545914357368122833664632525931647018821826400373691255566854594204199447306752422310463080619172699838408810456076477752430884838822369737010719356000558487625372180909172327760255616921931423991248 + 3469882655055659224110796061184855363317387895617202437236151222595676437356010103862254518369649822515215063723506132692782175600271281713617198794137567836935269721890075460941750695290740788356081320228309732607034651115489632489205897080536002378820247683062542665099079636940180095369957072814768593231 - 51872694200042776418703861731161005597647063174327775542825481250710848362720927717796283168056945768526737370976647132055902410582742570384884317599347064382929720903764261035793509472519152983496873672379499058845114238849894388800999929829175350045958631291831128454260459997110600204624172747502759593173 + 30597361783781676797521480522484587284592145075325385388829200913267968937767278691821499603927812902193661100233957450599038048910138756474842188339778893991336983286399329800775281795383858969341862563509964623791941848182839037452532512334863582834255155110971223966672416785184918358620159650430082221670 1 1 - 1381926471275670696491547928550620506717346803979 + 1244736658805837004330109075480297814211691129853 80 - 74302589183225406744708406598986697445626235129332961159539629660099003864681279676025057169598059221346100246653275027988998552977043535171844663879396255745429680604118860556814772359887881646573360468171271074105943974872534642719266485854337939537007792420 + 108632052121579197510727782738809674259658270667513999458233547257208694922342747151016335495460550311128145055639237925983221319028074946360737371864153589540779403314101093667591328047044940954750182782695379846347426671180342818611100418161230058992137373950 @@ -646,29 +646,29 @@ 1024 - 128057967809655946190316507735155452831314572900315216081434860144597217324346737671800302572587640910078110732912465466684478941477363845874613925338791275068167816621932721309235605381772586248486970010063355049965746801462578755831359666996420724229475198439645105729191854361248312605304734475323680662913 + 95288621726635968872770037150784213196985326131676843097938547136462929264841295546771500388417671294966257595433760953200547360249349740933546921081522125275115437397098973842360250826812492033263835470045512007784622189487961151941432994089813647862969606517420125770262374746820810455414109837014665020593 1024 6 0 - 60811636929475187479807521649087606074793642064167945690350627603203118950323257675713133373687111123714663109087066267073458476631246485001894677569393649603260477149691339449729864039552273625864812610179069562367245786370215607199308088083101677805342992837524421920973047652387594443568045299878715104011 + 91765448215067823325795421667963131269512371058001714218791999926519624355910110183970996302294343489487711637666736326993210098027018038695140474955963214538087467579370979300852114793975820201555823972904294803171664470191975084609410844843699562290002166572267125918023256183462931816866438417011288387597 - 71560986262474260038579847733152867125395323692136727882523150181177145526050032346646815633503819181049097447083396963116870388315714388861158191811280162852633670260478236187402519672391362381543748430716574725648848677812893437556332455280083345503039177361800148373565541695573258846852919928924249154877 + 40294104858917502207884187657330535256083121883845488158774475159839995768781522379296790456727414484487297945298577860348991280709907143209769263860571497761805544744736759396126801492587046865066754602032016892804265697920244305298307566030270409229660322389503909826850364964925423148539479481422269333081 - 5358493014159018151110306019414188401443366482533390828878588153924237270657211162207396455592545292115596564966717448066974022571552087820343845293928484045368156700279200787884399405557838594314421227423879077160333472477688129275324340290022874614042967407069455935447388415804019834527557283355835583238 + 37181927301328601230229509824050779944931890417371371899093425328383585668806438133965151915167895804116880861939436384092456427888455471167585465876401001715893034711967342076190251284011995257843683345831106685333128346207762133410990676468736935851749651853413574904157556618055537455150277384533267079125 - 9440403911953510704955609199118462522546969159294361115679964001969095067128208202978671380235142495494192920664243060842431049236464627103331285996753378993464968648353139689202039972946351834805543874912252883016750152554402795151625609573033493183190907610839726606922080056808873159110535921110839225918 + 67347955068046617987078271939584408214616385355082946652652558963004113886368419385065451148614904475564270298464228947932932400883150877198113111247417898333396047869562351233676189346740404229714576046346513957179597233959209788707913957203885684064580064021423353037303259164004893420671864177938248968460 - 34601241858178235153992489154363566911322825930412755051942961530163789553279237024169967243263931210587905323687670939702730687998131084839805896091785126613296047470576600055262500331821637746680489652121076447750079042944735474064557177506619768477733608759334395601504750316910835074596407622363931297695 + 57669000393863291465997741294941801999274879223745070978194979170456208486599787020905477696350469460233194798640650624252822592978323224264539104432394194340083276480589910796208101428768941276014721718948586671096753212427551901667894807759957845419273976923255392385335476551662714791721228240704492903472 - 103450953660312905541961327136746359534991486059040490771968614429013794227835017626759804639288113432551732347712210332460709755012800755979360542019454727242090797411218789006851073710562599252458946620552051918314153874747184637728072116094587384838416002546398982033848043597058533784377942968102172250659 + 26693245241650097930528211048506005550361754351170897843150689991780056709581651682450255357597353232814904745727236148991266683037674349270826986976517570248012352181812879805573443388140013853869016411689779861764052607477431441788218487198174043217144077012585519677983607140788959524397744180396725947903 1 @@ -686,29 +686,29 @@ 1024 - 91338861134529173742636614734321283317712406433818139285229062454925111527732609262828687047423080667973258817589805005737017416371360314088086808443898371429020158735259589920882443779130428607594850787634565846387075036083051955856286100630464641033224957452092909212599715224401427904042049536509604893693 + 93754528746270947617601056633800291364861682298136548284561953146489022955904322738006597336491255826850217147425593207106178206216828010702018655449477593047795515376414948882934704904553519186055641276786533221369873508841086692167716664918409533164054262959579372586508029429553217016081926497726561694521 1024 6 0 - 88481512963655310506095083872998303955363103665395614689748950761935149130592150567352051526842435768907883513122638406071951993833483039104880894260670448994086429616644971856997369229550170174238792300740232364024915015016653492885640971890845653859579668498528250516917066920672069528744730214455335881003 + 18718193641957314100730569270853083678067699981231377053218236440200570748514195983062189820845228989708114721036335865296839656769486571188331480498517073112230023384223396819136721032148578078215922950710122782193152236503585708948416278154158382262317851500701694633329332013554441192971028421049617669489 - 71420609539497237732868765033013438071208066944625734387424793864620282249588182875061993503837717471514509627177747945260865425509223920765478106067601828682271744524355493795121669193837190303641492443480194307599715826281960573836394123684702869297115710345424755375986644023739445330856168082010838417938 + 82896076754196599390958700658750134011593697922866943134696485394164355313829104791709121309680409072619102123137695639536409295590399553682662365861769296142916411017933128214043071624336717400223646514016780377509575552315798740608282027520372471946643222670649888877298101008604716866742635601384004923854 - 36213374277915021187960501154206429350509009943784937342853640962344665273661370341432812162660134104129081769292257555453657933322026058920570002011215114885632603237420344104120014493999772566832623489577942137696416594059207873047026684531831127098662368796483679106715230357303209903005563129291440998125 + 21409157001559082435198762389634006574011661991672395549556344452730268173323934115852207531740777161515961701461098746369193405027011628705790585563246956558634006855496001853186543137136893612905388690157500633486730387558679778087776089487182622558762079085605279790603515779276275365424877533098872706670 - 88784875219103004490867409187796580439336028275646934064032325734642172796350750877782655631487263690600595545185986973949637793376040039529334242727841787186152368722684829777472113434707623526142748869410906573019822447060135044716736888756586491608663760971724703067383426197232527066117239191970436021914 + 70565991640659014530782020171678876734088049089005570216201610770536518351424325792391149871467733547040543767770865459680906464111242548129734433235362473871904159393238510211564669982290551880614995619280240162572467822996375606151081508022082119563011842579690659846853164036860838326243732394765514573431 - 57669682815414213701829150785790139820922208365396385382451270040015047105011059602270677532141334599848749895445377163377797098101769663138915670832338561398070313576223809679656089041902001668549387570675942187547921753080749715443394968434937329744189522351133848627606864859717699163427995004551470140014 + 77371797128912592221963604938094942633911707145381583508738772419154024425791944438183290768376322858296041782716140964031431791761038113224908751332497360736934697933992269356158706338071119510267730514533442260161070478749011694884944792352277737582112505303044197289488663410941538147133378198748067540370 - 19430387956073665040008742545168228237366626380409449215616316415682054432029605888008345798193251163116713132110293851289775570086405711097037612492724618955613522669964620645767675728759532995017555557036656920568589220029848250912688353596366989096421783410644212433994547565209779383923475304673100010441 + 82906267256926337774982154418825451735160292585995227482630966060005770865073506792587615848461940397794441648783258220198681551004852811134622576927680502421722981730340736873927483483912074641562013505776184518064639060490292519532693639651522247920944720222077401382740855126956599277073236976642634255886 1 @@ -726,29 +726,29 @@ 1024 - 171795367802537336198216850040760302817719433285673072064016704297509263294972920968862879995019333546807716681922194952612358665832924006994420672781322683935998563828829629166676961578310364216820723333284118541610355614763234524893877254301205676826968663616237843247997193664755408992255295724018758287453 + 117121510340484883218702815716016593017369400197866007284904378631159197139001634351397099006348261090254639042478158024516471273585541723720875693552232460895578362633596275449655253304174140947289638902997286514465275801294597279338210032808446791251347509758362087729471534556332712094330499939197910698121 1024 6 0 - 138781939743420141798085654234587085378791442750844156618218315519623156030775014083940843628427157991650536995512183146050090364430217798889903276779395691314769341501283521555441395248293145295446229257598584303226472282606025256289516823083353133125249557574662930559464988881796972570415006594877835195261 + 15107464790949779810848925539036116589164680473165481843812014434604020175520176471688364414295094594789131782714144993286259674728780246748998301348736396420755743906492330603688120075762111416310712907772599039447961132953865243297778270824554218777752426713792107606639541765351560469580417085799109151109 - 168420371175596160385314346470541456127930556988792934601264980767954150761074401191883764002057676025574635595559453082438403114835695017344400960903147888338845250647685131378444914574667053754042483424927960459645361430078126904416924147233083786086593890435155965855696708192722757613306648217414021209339 + 113132619367906663802193126722604452247067407379700239211440005578163970000183414500162238958023667292239182925037826362117516957239919821570280746619833192108348188339728009997904509491615767024576962472478540005115623781145645859430146502168842179897232042057741008928306919479034320821732539898654106307802 - 164599507864917269230220181044130466242640054454386799153052272100119238662434506377210871322725801768535465849520862187042461522458751851837119010844326508994699806461980159073458635731317238484887665362257435016594387971946664996341942792674855452076757886270233668811767159399329679444242304826944461878356 + 78831244758190029101616472362891555519371645829273483715261840379070989387145987292415360310610897488118375589143503280479343341807586436831967002903765461858758240031822865686048256893617339372987036343650345119947926372267957827867520649710294149310400270822176566699466347972287709536682523581276108603165 - 112022954554594868430694861746706902810007259966892035372848716164773714721760248918761857377457366770462246217862095078291990529093104794681337350992919876990886726535142991553290065736768419334005963502455897767959870639353796998608846837617297713305741565185682566104560690180553705181428610482999491959762 + 89583752214253883440042346912037084568006500039317399385601176574344374326678906556169715887314185264099152754269356405558198400381910728064450965723135896789762010431669178119883031744022651457596440185119193793176699852604878873526015261656614848828142855743809311777609303941862248597137943126610861447582 - 20795710379390313360149837901235593902809611922782438280826554162582584185176550436631972790505407403299851110962435492486911884529635673218790787915570636384717044595376003628898518022547995524968409598599237503027024128328270655662334146591298270627006489949537312823974893037600566816074625503584300399503 + 684918354387786416205491044839255104512468520452805205068164464332390890861013726899159853659380168702172547004069779846306014103550976054178864271837177474931121067671438226162027556594210608928930392798386737184879547657514532124037440133147012810854365196162946992675626655050241753400618846478941872959 - 4461068203835146920397273122878996496925951644023334909782795888195924230363311467297500231054245083629066539839024032350563196843805187870921285704555947110972472049763739700924273806542377974583744547273338787688284998293736197541473212310650426901783545952048410414287416361433915264087521382790658628498 + 2827090550656972121690688796630460105969591925581289110535338322165933007662678927433743438230413437638688120784053460847485119328516825633705134738699602887927163627101863584369718271691217967413302030401970248252827616171028363054960352533790801024629520084292963540458837640796067532543489914339488634793 1 @@ -766,29 +766,29 @@ 1024 - 107678493864345648666726963381598843005045134906745773568855127179729298765945796229988935480734186762723475076589458553114861073591179889992284613957887798550444135071834300620151269193028269405467525155137973905598460168964059816679287733081423902287277428322195154969572934367847409309681954541961841211929 + 99079153840397804685867478704958595964211219785958155284881016629530195136827933093286116921421314259616351394960959112126590774558615068567723955791014044034246784512429519014013254580736277387087599956862163226669530087515094282327896617665735736838287894898186772994803726158745804341613911571374382274217 1024 6 0 - 34780567649645587652662047318280460216197594322629290659397343806640717111602043777551795972363990570490561518129361133754971748815062877457811980871870613895746761204692874944262181605786891503668206019069701677551111685254064897625906904673396799614054762342291638726110702862138766341205373553864835127477 + 35578547039971283982645110066508624345573610232317627247471510693463768653398865835272238114026351004271431932575111890233938763056151590366620841232654704061531541940982892684581803302511323727831984614028154198292407031303845418948998407737432474830158607617228291146032822031461125981880732591780383080312 - 76770578985664099191449798911850613016440202975139749844785468106943538467941487623782662375335620379715667015148235397661770125559100524256505138827952950374296533996410404476470347577736554558794350087928716157046782489969073300743386412321573188949782078100848155826141059164451205262811577282438487833155 + 2839520020939910414585072396053942201285418477164512070052267230831770336300588444747762843759096401075210098436532138784880804799932247566970642529121364066612216811270441923475539213363391876709967520432970001189613754468394504726917294243804597283185825885394444717803465042728107614758510510324174671273 - 19375132007991059652876546182462672768720429677050803522934111565324016495763732172744623907045335493048740541182304274405106110493850369225158004210873483104238595711350247509966292622988932139561490663242014148110393502548086758118819001913181597386000596861820476450726333113377798106479230138706277155435 + 4257103436738693167679988473229289136213965822055009836429122086227208976617015158554335685934033709081255434321021922411600352023894639658729306158101602153035636660388068573921523812704376829383643150036396507460136150352573845700348414072481768647411162438985157824104787655967389449019995413270282384725 - 60332745111136671951489671083751897003291069716229419557442175701860610038139875996851654495020782497922916125497030526867835842055895873784260108184155213565134969114645958871640895775675472360543614497922018081777590790520072701770098022598964534954182431602697737796983390272144688966305745888541862833949 + 31273849552494023387697146195164619556065892108955510829954275657213643062645495427357887929042406068050763274296028240982751299109488666543364710271423257790548527234106226429899957206169892445232737790590754462461209360892073592865787825317580388584134032992457155327142814088810984081589994609099547807103 - 33206030625501357397902828493305862279894195856045523813806319914644617357371406587381751252409214237464923457683937662308696252667537129026830911327626477920950026367523422037741403916073653057335758700270326029776865721695045422550695292453931419295319756838382198216938790815705554550670037002167896435708 + 35347178693259636224425976955506604359014275201911436639125947893572572942967879891723093129361271536461729305849344256272804438952413715869305278809953911268349508791262359453574584301723678348219958163537617880479600787349102851371503927614310858588626874124144067272631324900475250505683917036436021292017 - 33699591887245320183352886957374795158953603724548326397696125237452265579267587282433792785552885615789973016310923276732538075279246287329477093697179355796742915804057038950601496710139911151519055346593812515824483642829165138763105492040862107512334441962031341198253373030460133402288720613467576919651 + 52102732689033856356640226142441703447547338607766799410243675288006455786150047981514503689756076319154821254787434210207714021249333494274124947142471750583698934512751038996632656769981162124907250526920201757770741572757079121833484338311748881797371896129073537143638484841938341861907569264174122123347 1 @@ -806,29 +806,29 @@ 1024 - 123460587970465722399480599701446111042791049424678164510782348298178989524706869827218072757318065802572872977206189692439610889543998303448261820274781115343738147716328254096174904353808537339736300386924394267507766388682907861666597761952802807474810395363126049870826035575374238638068965983199376357813 + 99954730175178004845131539653721707390533824134606712982410587911600868971245047100506766033962983317090892319656867952029116781250661480710843185739353918573345334339835797435830424130435498802133973879689630984537203490181103875802086600280921230328725473474449200859216711406629174468133378669755826399289 1024 6 0 - 117318302352368229229163809607702479318456428030157262995598611780776136494163450278418011369672196225024705223924157260734348678181103931116903595932563324645629923260513068155684589997607606713365161836567403767936006638718885167253192939940642824452024816730744123545240701916149057716603434108694989710429 + 58613911232307388786240529740987000882039067599860437772060847031357515586839511997150614558368535541427251986791314469299365847701391023351538654534248928653505326544257910522636722321510290544008094306357049503882695532643010370246985543037398842826556465466041122607877993972401850373499349505467940128480 - 79166656374368484214654356495255053395213742590584206280310930719755653489957925930346542517512620192097650425359579247070837443830862748231859562053718573394014868991678211219437490529223024342458612272327848652593110612340785752785585712120010687405752536405399684337596148008796260805479427829450136814686 + 23759200450495340002812814650036411105104184704810382581836582136381499246372180158982092762319176354865585492876056145343997330165572678887761521089111659694764726321928033912931120570410344269003877152629946202983994387902650140832036058989562136543699053859110798004475607769263425530430095499690012867361 - 40871868938993875410426205996751811587721008167871813439166564189762055623031521920195950886062485740929198925966775524584648439881883879228755988003547754790287586711275993853306093079373185290320968524077798129432974504079981251722944994855192019937284992580655570885903256271403090577186422692725459831875 + 27782425796445607511552503734068694227876277361913927009841359267890284063272744867098761749380021187439414183495224952502774379338236771979358642185898028829503362239763322899537168530813926957477896747390629838050847130063594861856714553628317263751461531880058526762279151869539133638780577291661705004927 - 89892620900640290140283566392805476442834511036692916092709883776370123872836264775868321860590685970283545083118729182759253902758383167687729739268452078465233562037688700620432639773342196188561501129246210605848453748122752153274263445164184465697547705606339433632142128437959746969173608800415728397931 + 8784981056185286950712849504706542909851983675476684831378521579437874438781947443207971368861700013318831210277930183684008548888491900029215961830883091576228665510223450239592867424261582734977160146810093587216625525411002439629017874997945384679431426050351258078369390184459312181275581036833509779471 - 121709777035471737364513670422914240357059445755508125094002474776054087244214559702633254647901247822895427221568520569724729995389163298559564480170015494003587855303221851200035414262844476231232261394773812801023837394666069091883472673028207084029985001140015089782123008327089253959339518752984564005371 + 67438312305077819888962412973544875116933726924127002079831365096482645787717754904826762149733256426407804919023613760756645934824283717354322616471896981039882491744840529505847451034873496543558273551287489104242041014171297514449081571270617393454781665775168456916896840386566994664178411923865986659586 - 118368291349285147157585550327202423335817645258822478079337019930721123815468331635525068128544253736950377216631099734999157547924851998471340790034858629390897530180532960195293567558086925678406847565038276833217752653830262850771875793504960255927890257698780412927440166594709334246027496966288743344300 + 3464604326727829206934168876456004920457656854740648111041341919379642725442948759261114328466645767790382904740245997674525442848992126187113268087612395494538879214628114838356903347298883717235497237827971476139254978851080082281176240683715669897361209280214505681097167531557140873892635301719665778459 1 @@ -846,29 +846,29 @@ 1024 - 115193322549187017758632085674974727024742715278872315780926012027804032179761766503288065034565716892785818153660349164554433828067796365626741896969380114418490544104123599167386238983295022270967054328089602503480562145153230657099035975059011144762714926206594556617956114445259820923651026107726741377073 + 148196264683866983246056824641461916553727188878286846814207149952700786295989140546602219816499052248745376771762136245911508160658056925812311366238900528068507706459965567045224239023241599326102923853309769022811634949971343037071212919062146382997355248278317770400104265846506381194883209546789678257953 1024 6 0 - 24958892788118393840566891402925212894261112686881756396217607457946596306978104211815943994414797105011718075194617345672726305027536665064724927900756862036945765691966423524893153682261745384165128816990435797199717205467355245097126693946214610135412865735012562961328364927779026079460708512689938357459 + 18228509827232960358109377366125905423396651073282009255000634400639380520576157033263066403255727758538148196007410118445711222636928632798833981031757422495552319975431175939254099574893434799433886121282995060105902206634281977941044087776314177795281177970367372303622719093916858010157621949175537375437 - 24288255554756812624762197103340158750190223778765519768405807403357684268583138358422886605098116268755079717463816662298139317595939687753107981126116196500860143071528623840509966635777831057754249172610936632021767758934196939105040316041127363794901161035243044698624148907282589708017305528332080549401 + 90741052971361642071954400353930918473049330103806494303478914341240604429740160266927238572355901048839288876493430663768138981859097012674365597674038606403261541063513022898915424660284139220319595247352870395164358600167094743461905071137254013807294601497510689150945162000419459659619999603827775332678 - 98573529002331715221466911082616318301300017750678680593832916072820765087229700809543111818625003499979817183312145679122909425246500434114287363675204505267732119319754784623466080567913652584576116756111506044251229410873182774035682045895464671545948436513530383740487677985431898275771829011975467387636 + 52734335451280775701279135902793102618804746933648573572440269533476207593955736723943187629344792274001509257176599036967710480587413456988273865241932371090713054609684326983191462176991220730297153396836508515256005211749658852141138853888828449929462905950872738295586503848336537871567551750808215082154 - 15353985435509734717647205939924424374297140311254436480413662376519872061599819892959995176175891437756042491481998969903341756892089428475760114248462830393435227191729623914880110584220456903870872511626091038462298582250901312945423814102221099309496784542055234964849111850334835617876760601457927418206 + 121858449637190773866676289376800522277568993915277707214462950174058584758252432920947572621722050668109626466687582272873980762806089036347506636343533340986613090442509515739606515227484919838200607799752117413416448281331606056270182334689643276303764467680282413521568568120011182673925501023231082406153 - 17455735070449738054682884370746228687686045089020396998083887583650988955042976829464912841928464950070337180970573621151968757420751546020224392735386909098113189353739054276774294071884697288831510878855213838041505870499205405393921909645992766577060606810395305981595413168173038810933707942671713337798 + 37196825733132964338623996101449346202869180967029642202058352423341650421724872464278502908541095717874629388572535601572954340968281300632852357761510380827733721910298105144168674114000458492760192448497375493358162287626785807975379359987001469882105036987321265846856757528606901421058839136798700287397 - 99078282433460334122518009685435268135390495565166370788375980674406524442600154170383521782130678737146346515697587435130336220692226983416874121180076768315197607852814628471856417469605509753709709939138595158453850817740160745949448738764045233343710173080910805476352529406131342795794391893459845853249 + 75089855211101765747300894547085312949871336795292159964546821502857006262710931284436535591390767143045054287236700353745766551337135697641239389214003872913304473085672132743841053938472186773425817048000547738177259207808092058727324924409903592113635766451695610110034720923274183936484960662875433336362 1 @@ -886,29 +886,29 @@ 1024 - 153256019031673973848391853908671616024035351852333113222956212092935054851555144537037154882131071118335109565772920677334385665987953763710322752551766091084637014937633351768184250877579165516584609222393690507834529036303945036774013832353124798268158248184389671641362425541416312746250270416649359548041 + 105921949191653130859423411775455174812642918848669759359209486362932598819678144087209481182550147678529129567658791265359717569767628215894734409001006779022322289698515237895707269420956251973406350695311822182673083730764296195817297540780868975477123852203726080688004629860517990328589192081987644050229 1024 6 0 - 15220542722079887934163021578416557040815588753014948049895358680874401987354756483638187693890778200226187944576153001580318905767308325025251868319513838639170229388887094978609944368236261084829465326382756814026047924860100572370509240911903760108844191920274365232194821110327754051188671927504786123847 + 86809400749152861743901567276848272927167445497006079265900998087562865265602440835156566344510296704141655423477235937471795088316625845837856447310120665238699640116252577611027501208177910037535632605368178096550493728239151536133777140960209848761693689914935806579004427834951787425614424456419297157510 - 143004036495287445500008244565089775614807488065311228319771443644042556939728810959906482515000410036341359319395672341423672298834030730662358936098971678898328809479500096931876973317120818472883465991015596717523641856810286626439287667681040066261020458108584755098587931772918575340120380122391279580630 + 84986197247511436399667031576140728639886927069411759928791244212693888161425776856726174455028312620459053949666751815466973657597394187896486659471058818599622253530061625009497213318036240988480751591194064567662021711447798444988895990719137206080680744526229981752063726938789038885269097160956167285566 - 25677830626343122473800267766987258667661454338633409925057452295050792502934635228012969731952432090824067546127184820674269109763072029928071755085679552707171555102523382002859000834013865264250888579699016146722510456747010192496630995123022435395781861793364259724814673958020662700602026307416209911222 + 12431205654625222881707000710728606382090929111990041388059059946907607046548243604353853640940005905715357216784232240313960881905454724897804957781475751038209721410086085767242939434308439807150162545625051293193433624790643565812552903666506190662522259255795554682338285362255530961345229551611440343519 - 62246636121089263731371807945897520167051837454698735241698439734694730001470335211863614247823007078485077900778766898167190790567301408855375740484748340320700390073275392868823940948653806683445411202776990790067823595294042946536030310357110325099679964532575421698733314704640641895828452919877756100011 + 62883235755082005523686546548606789143770348860378546277745391562811162140335817900845352214174699090463099544541601029119065647315851429798873533063329837639373217180256975002663524244050145680516763942257347656552764882712032814090180931672955198158069467918914707575354901887685922556718370751575138342589 - 109179195904717079139512297958344482754488860947001124419866306632211947700557001412569449694611680557227002345132253379015047209028361122554436255825724641792181226048045416132300441370043533054296640636019094847912470011225895961907747561407131402046285049780521232862899425601689434905370686341564422790289 + 39849433607740902504402507874016885026871507213461501810264903771866537152481854388265980706007990086277706589042473112769024003147970075181100851394556059066286357588607531753104924164102535180160270351409239344423986742160630582682803306956751475609550461013854012988551751425448894542674892017443824734012 - 72256199900300051197332501127222934244256559778006179914521739477500706464599171904600643790797361089413358501039731833363101680832368594873645195342133343135647784788351460716476460798313313942000048638227363109185805859595520325671335898545619147866290785844770980165710956429961244551737499380764677597447 + 85402225442112559560680078698274218019993940361574204599118634528616463142138719233262976451961276991618853156780942664995492868531530624507421313975512606915096058618792443156198101790705909662504630168187270536791683734761412420713398341369713188166278602069035350011783353145233527044956434445304512600650 1 @@ -926,29 +926,29 @@ 1024 - 135358305767271858027595880716111530935123928737890043873187024055476620530906467130993033452699358704424795550755169128359841746123492797756886097936671355386621176058979935393331413499392989299082084359031846630046001377108741347076252627789379769344457517235001038532356319713316214499718115421425871569433 + 108440748919252450268428286731731896396610163026933503975849925663492334776921174398497109505538747057893434317250808469760213233529336913398085925870706542294714657431121759666156575676722682156151413720356321723309169997769639095210994084916522091702333943625021802404556103531364881274617202822828310848153 1024 6 0 - 54594747011594798877885888974944176740233826058214590608446121481719016646101845365461669609593284564003581366359995275781810124519910313811380876256508679688339828939491429288889804388749815124253867496416627880709040603044538402764027705232404679640769755327219879688706197760711345784098387646185164981152 + 66366383659085004160581858686068110323987677633068554408731820055937312391603116323527462447105256578555787138213126535928787848971976541459974948337601213550884956798828607581314470984305212507805730810283981952589260529852613686591965244366260752647049304254010848262444064395193144695135425020863379006256 - 132783808999394318707408962088834983207010415125168788915872658758155889296838532193150695880199623917302322850691457856799843846471181568246727469377964494204689790089312937443605415487457400789095132034217110410411016988079403293808537223974569707930874192773033393470383855778863425429691879481694667628909 + 76945724108134514476845806024636683902509514081378625453698025707233689344313131316105525545539579926429167457073332412872790363136331080030707890397365463990420679800561805613345351927011441895347629470989024367971421806479256556337062265729708476344598157347724009574637722602080586962935931878380448404266 - 9473430635930700050486617160141204494342095550189134899476751191276019107931129114087093973056080555668662930307913633328246702572209665502366737090850431132340577394193612418080423291630390780237790223606432359088325373896719506291987815760514899446327539193574576164858114835145863147018536204496364575294 + 91945329973224060248558889328744255046597767263343203901720894520436658305695307815971264787080717251578623712083670325402817260476998336830698287676420656098045289735223431738396971319193824104754894276305608143683285127818367138056317944418094268645782094697587442950453451099229969927726915095865444522094 - 90024838355001075777783195974135066596911088933953254044502969121509346778938214241043930641227033089129624800092043075809246544470625613932569785625492513957934084324845138958744207292453298491639912468882105563813341034734148686353752495183156303339463108993280522860556963638419864094636988429994370751743 + 71371194814401374673127041666269343887336750774645785365973831168673801465656031844499219442062352660855087164791888562838903522706610239539435340535864232794707954647487039513635041583341855480149907762844377270478905725702421973086424891767443863000735666109119321036123589669276816773800922411249576027546 - 45914980508142788475969536593414423447529386876252836641757988714678457126161180788769040893130014877283087923780361131128613703067760746100124401445607902733176021029401905908890233576832489405771907746137014120822037941005000384307118527309121044551993381248785336586579186345829608419256901639247803554604 + 53718436417526636858730643071130396923526708450985497713286303484760405006322845800085165613155450183026982545846694095243620426398424635300019928951028659679765785677107062221527213905354703614993367947430698278405310236478443546679988798318205559042482374923767602250464637773429717300281505631064612985081 - 32911404065014905616571735182748738235851543040766582724263411775153690607184929086994340376410140178669625764641435927432683863591301353627927154715686151567872995056710033783341401210111884942070839872351093132272880604910175334910646752963148483903851675232134333338877843861382949858872798355076941765109 + 85230469722743515304402648589847925000201154330027354125047810198070022725031542612895149579396712621532910796627591852488733918035116059401887268218978788971949898670298569884150675654662295808772549913103127258327197135266119807509485752123513682985319604190596813804839912737937728219384325250171411540887 1 @@ -966,29 +966,29 @@ 1024 - 154218268867696507002031865996832738977246724680896068886617497685938467688459935868916544652628785991317792030286811386804084216509428288684761196875989322260388889257097276677216400072227578520525641529006704269719639306215286673007408730828431211470630255070235631883821820735534893283207489831811866541573 + 103432042254953094027999928574250715964500891045142387105955201932618522113984190182166706020884933161447941491385637733523319614167734344468728413306447688694643223282152714640407364090919183137006284201884535802398403524505317171875956878874168571207572265824173861602627771714795571730952163007208142820237 1024 6 0 - 27428799928169371477008314260818876148937722875877046040065001415256050285544612261240610068898749426541489168818274025311879557094462504325465143718226701031270459513481171715674711056192203762896591318737473272520615104809732143483277690473125331986133481516425478801944037361281857855867037438256343773679 + 72735857654996330036308578750037768707512446485674661426090344826756269113965804188268267650912305793719752190143646093227347682752079327651194810856984810512909164395531967789876907601998849500709695834360721633503971686727031033634428158149145749257438769804777610989050845392734398678464304671042690689175 - 105450822515849266246824784593332752863996144824625198279966526580096181889146860866466836912483527896334247490301097916546476481609859267630501968068493335890437763132841945935390933265030348476193713724966585347250648751479602155322327667705579310128424156557476020295924929348119910434857695122123769715348 + 40354197327776309644557445446598247511877805740566355719587647166808789073448238334020156687581688473278073371655120817040636086978579601886371654352774729778337067600125687099708508209515703504788115675665658396923040920295778105284271940275617551147714430295447383909281391532478964687175643491947382829869 - 17917586169419969792153843627847724624582303970451816452874219660498616008632452910042480347537075057133325092544315346979734775101435525533629606020738633039620963234297245636824119587829479049303232294479234284130684993231299911772911374146097317218619653947965414360245657311825149559284315208240541584049 + 26968813628185832884730391035851987751870560318430849916723371498400782087349207710865186129239304189549444082550532948832976767259584865952574643740037079740215589837871761474656629795571319987839311742585360362081712716843606865678855283492160943131234448889819908044401388366435372206735181092989882690610 - 83614794643827277304010494713733702635853026857962232621115526420680432673836574945397242148810823271595098760695291447287587902753143969200514260996554707598388279117974226336910323931721647138761776637137666044994683003226962992826724806567215542394880283109239037221417111570642218445097975627548527092539 + 44457756325918210432882749039045279802693637901659165506229652641196771463619711136701874027949976037693870830860638977238468910265640234729073206675396560391192913720942212407458029980943194950742066637775931509413627536969881602485810181257639579907992687706506901124298572869645460421266928082601925747112 - 98025334882817542595051261918088236466491396073054003041122381828466061599594157519317917789905097080123705591326984935802933433391754654298972150414662017901502818342450898330664054579806253102093229112778500389727696035428993861323041972409204375141288230032727654233984733937127115582284964721572192907628 + 17923816029308169688209802751254596783750808205473920711963121223110109870977619253002898105372250772280013117032657917924973651135856341002576602124287460305553253303790018252719017423511552791332813099369856129658602326535776342375244816034773978221082034151281828464402757244302554451737031177234874936733 - 103461867044654386108007921528414895482662948754475387341985070060736686576950492180848716520576397704988373242928703953709705994705234961029080392502757613196202086877221834313994327801773914413507546181585432001324248533541087174089562102726527826866350806480335498036140946354815641124317115290718066663234 + 58173516169174283964719668683473056584525739571524859721047404025100657870657926179915235481899922046403049387657375246255178245370444590309046031552510281811181831088860285782828294445034384018959362706962339714212986805788263200055409728428500955125311148857260741294606734880811179920282935017488093954695 1 @@ -1006,29 +1006,29 @@ 1024 - 120098847776259535343644334068493409247155794818213113642226621008837548248809756144435391881962615325304472487122528549774300242072619974184058684501061116769021957277559333567971936578385761656133295119311274656165996325688816719676095627842254071860445539705183362636859341285726107647847880667038640384469 + 126228903767442190738148096183580491175038013895363063255063879407638776222007762640020963679700983981505819346117331332097744171511439132259106773717665842976406975673619367222219945376954037887793874062977933096988373359681541459886631958588231575466518127177060945684448323334830138905052399414218163921421 1024 6 0 - 78341596191867165364462798149613513767187976045933270925524314074332359105916239984156112944388741605555584315673330918240662669972383036695380216369645786077675668119525313091263106903931060310783249892173696572488213764160500898695655888234795022024571259931035380458667979043363731060752523060256425326493 + 97539931636318677461475619122054540059104052317022399756575154292552051870858044057227021169523273160051067173161809677608371202374236595169900819410518245929982550711392322042314682950608013639486222401760902052975068868934717538248202265198283607804041217016155626510986296204640357633562628725262540901308 - 92197697267850835637041615816893083978440979223485010849369520091954329556817022954840969220750091574955501530801737742911131398158522167774789346516688492204741057116830688290864687904235809951324327245011263476463848478977798273152839939981363192465690825435376744018481972214855855772912890637337396617871 + 17056048088041119848885497185187738234341957332739548911174241850674169289366712176470014650655283087514808671532359181973245193579686505807246886039638542093762471617521947338468427670697788979094939538614633506767486848270358174624110579657908121127644226601122674835651841028567546912507950233461561314311 - 4748293030592378955093724566571489011651125070696427417853949295886768378111152102495476227775576523833542397763054262265966439448479602453489588304595952626064095178127493676309959239982750742094802606536171334162655130645407695836907472484934442915849957480725551564249920896993846998541219569493436633204 + 31717709189699030137875842801316834424645064031847570293530325225334129025771209881989868755679274813087722642958802113724122792623999410285511001585168859463078978573404425652982888882289493612951079566418713192311092484146177732644672658032091895076062007702891319957382778438919270892273974397851698486802 - 104584900904542556799078527703080866806316560026256596079705108220072609345471701770134318641946110143937813605502326970885364040335672893811516334052832715982398959853556119074396097391674101956889279124105778371957287930683941038772719876857983940733827806167120908159325650830304989434548687189098427086091 + 52701408784517534567979255300945480765809161198465471154967839240963141730818870689354317216286196381556788622550165176263143040912951902845119716643679329549799829193894570784536684136260779179477022420722664058284142073288038418969152156881985103589172969912151842893647108788505003435443026642491812317969 - 91477000374004348014105246188180409651649243135776551322813142142044628230484208001614477763449794744746082101984365227478095962810916246503069968738835364911647338508489896420278550004430041982623071421860079472688566117689119362544066175205618057687399701666608286724650867268340276001512993623664623275609 + 15916170466240831405710269071326971495003989098632832660085003103077847286202099441873708133501162524440579674719437136363718867648113746692100804664108054776712148615544501485090998986423172752761257930805965506564375676115179462856206417265463968081226820646414689722755150455107075664424251782354607115997 - 27335022029071511973872915368479831202151720242800820669365572158467591925687227633305136848793235934543162969534704442560517668695149887836214069200974132339079102773406068766037767764420212459478276529948373667413279044542607587605142289772231063326758841771162863193523221664294299814482921047353670436699 + 119874392493908971774593399912229045812669019257958357082614870704163802485902701553073252681759628404556483986983935409150939979774709275900622818557001714033801638980212024983490579855036873618987603097875751122714671577192226926342520061281357579934217951516213006849868891095137524137512935354897389930481 1 @@ -1046,29 +1046,29 @@ 1024 - 167849747908102684615783031952151303487318618058226134276355868669627336908402995742916429082816062902544246840315676375600682020395918653886440543549039685487527686497944229453172069154889512786032054308546997135806844060341575216655718028005098196791080486235476250761566643135320439910817103719665970114189 + 130984031670979893855543842480345875518508410205548385455401787667182043276909712853992897091674870836021665068146327054461603450458407290201372558787290109357683738428013567907514516775559018701817491758213188304978093675528268199327422042148541505303706207770150984130237176790872039958140095900892697292761 1024 6 0 - 124697971864257013069199803276420735672381775609467161633368671004811398338592994292357677388507254846498502768389738866111523924342131234320910182832156897093603904400854292861082845611922732284956492433793209240106822872232125951145778177387397679039918621121927819973078906987741480262525622005602565399227 + 77111031511076776748383055590862571648674736492772474529961718646938316725304876527853934806892564363406371656844786106299018421240298065574103119127179436601308127134820838280671592776233104655784461864696507484750746141074714338613753312756700370784915468572345403051130346709078319417883115672974802169835 - 108887781890361525299548949264309573612532412215054221866945026350960909252554790687820537292488822159239096136095460817189450475839784419203908369203805504902414189148576907397548005367318289848718165066768409808513010231990171238509327686404013042691377114557387525251911427307934702480124889546002434153883 + 3128131951563621685781519514589290396078543084150675317713253716044387307905521327893562744421717071028534528094967705348771755396568977554185830341410613830519127494248441161017549347924906597526952413022501285246828769224407661000067457541358719277808165554742389274830650941000817519093291137439421649691 - 99965937256071531833352267584518740705187568678398481975025487900445929854870225696845831801035897840798993192645749908958835960887390699965754669201895122689762609842067032782947025374191336414827383420980245403487860703320619493841364508653990560873053561052051848165272882782658715485304580849894447481984 + 24954141405440090689976175252555167972525713681839903660616337028203242900712021559077665304276350472093427384187451836674689185805100258168917640061516156543626305008035523276260649599372451478761753446079713760095403758829516730955461756588789162979921765890451415813246841487242760610785376086909463933797 - 135464487014068006350241183417277199933512080629319393539084556152088647569462879342427336794694607292779308330281931121306851709112290516904611886868248721653328973827011082831762202172003407136709090048796766379233700381954200275601566017619852103033202510881086909114257203408422383001855075728038739087666 + 10083134356469565434820655937850585425146227225076587201691007206376287612169498960565670490848694021370067252342213688465673488420651484169267195969254736060823678091580860232493159013856793525376166944993634152015542702135847543328581535175016508032979250811181479986919377039311967364297745111283924007008 - 116087460929649477650719239236850579624411409915463138669472799334909075618371332653913172377800254417621211492605964716808216033497729198457377469580439281611985552152638264761588841398460105860435413320874653840732276755863584448068058447432518834882323032920701627821579231087160538498920135097072056339130 + 113848733397666003768323762636821213490695764177128020789115723590466213187341258833452173134117916819367401260647045106530664613037790726812093687986435876985971021971510207916178699329669683834822651456959414265166368467473058891635488094103090980035908623302936245578454636917795970043625492656294734023452 - 87022481899114200452477329439521478334907267121400160768484310083510672665816499561166856734334611173826744984646636728146751086237799447687536072677043559995690196109619136304467129246411278102278767648846219215263506982413472377610126752110280476180152080765605425555155921191279654185124388043571147181327 + 86136816068775947939443892035798452754540048307990163601582410345529875583874238629932272530008216513299726778108060514260087906788536911056614574118478556477474027724459155894339604045879892134387001046080544595464847107133404856959533587474371075416239607580582640652535022808207241217726978029145005615879 1 @@ -1086,18 +1086,6 @@ 11 0 - - - 256 - - - - 512 - - - - 1024 - 1 @@ -1130,6 +1118,18 @@ 128 + + + 256 + + + + 512 + + + + 1024 + 11 diff --git a/src/tool.80.user b/src/tool.80.user index 3c48e6c..9ed16d0 100644 --- a/src/tool.80.user +++ b/src/tool.80.user @@ -1,14 +1,14 @@ - + 80 160 - 1221497820309034144252477697639221506041274072737 + 855354828045887400174627068790510362312905882052 - 46595090496836219329758375093148588632444610893519141484167148248006992830821253282042390919028254358115157648668133863270649812817455449562766026403117693967002997445182573517098844620990728767294115963258577004010875215536547892464360125852879806390124390444522420382015966075500780657059956400651100497552 + 28794283913025973331815769588141583868106485627134315620122621612135021001355083428249037587375251848813991476171708978495200911688122020732431351826093395728425473901610444931078341608504688254326460670316961405945813351242983262421737723436662745733064835372410082574802232095204090082523318615201814811091 0 @@ -18,7 +18,7 @@ pk_u = (g)^(sk_u) in G - 29624695559255996981573654014457685746380963860972658536548118357563146036540291511543368813303433781280391202748072499145041357851200552297409091457980366612614954865906701583854493796742533764096458955429450568660399553817694286663970325864002737229485177070483451432877326131301283666627457911024561259597 + 61766389956936575191201774678991826422344726660619424241531957736345802477213037454198320157568791960697838532377222744888238908470617175546625291175403585151279082000579490802866843975619269579441645912387490624470317882256150027775801188922460990541150733575955350402364857551841673911962477553998986591897 @@ -28,7 +28,7 @@ sk_u - 1227361645207151049290540178790069739366052447475710776877430459919613060108917457848894914968548 + 1227997349131506874171458614312533840624095871804061347145029592332093732763775812056403035512799 @@ -39,7 +39,7 @@ pk_u = (g)^(sk_u) in G - 46595090496836219329758375093148588632444610893519141484167148248006992830821253282042390919028254358115157648668133863270649812817455449562766026403117693967002997445182573517098844620990728767294115963258577004010875215536547892464360125852879806390124390444522420382015966075500780657059956400651100497552 + 28794283913025973331815769588141583868106485627134315620122621612135021001355083428249037587375251848813991476171708978495200911688122020732431351826093395728425473901610444931078341608504688254326460670316961405945813351242983262421737723436662745733064835372410082574802232095204090082523318615201814811091 diff --git a/src/wallet.80 b/src/wallet.80 index 1ce5025..ecc1233 100644 --- a/src/wallet.80 +++ b/src/wallet.80 @@ -1,15 +1,15 @@ - + - 1221497820309034144252477697639221506041274072737 + 855354828045887400174627068790510362312905882052 - 334890037469528505292063872403560741615797786755 + 968414756995630807764470101633578832667834810497 - 467891691923724118079671494233217455404650302952 + 451485169377034697528434443924107613208404210914 100 512 @@ -21,118 +21,118 @@ 3 0 - 104716873670450370748448792114134001154989160104232606929436114430067413092861248830115530096859527414603288660070369081715925211702044873756299723555244865719197220967802691617506344311873414378698029231301187800054711527524828293177378563361445120297818439566810589659459942994448833778282752574997107528927 + 125595435089325385807462484654804578242447461129746899118248205708411853650834687645943042121373219989715556155744966358571613261760168207418561322682013256955500867958514253046517005634195929337281167606975350762985326132559562762228391362348065684809049314420211837594300035880484608939211324500666703825280 - 3011326496095911652664525241389839450248500672653 + 4314868942517643237843322368841190515795186823359 - 204150729121845267979857429649496035826461498858722447773211114108256004098754454510471653735606054865476743784621512003692225798737962397870414470503854211161583890302103406059209305985792111382623516243345667650543341830176405101533764113166728795918987416762548222593121195139895114524779757029161187673430643643379577109967959880160990703168784825797112346375246766136514665130 + 300072251920152654551720758804038498506750748643135964595300983421419365883525516826814229036995127246412651373096528763911506342624997431896084526357966773436818796020615656392030103693520065734825381843952475314883032435198456380751113066903308199513615353384664715923724321053736723225137411215816976761671455725165482291323299579826283114175312753087803597923318238658770239797 100 0 - 9 - 30 - 37 - 31 - 90 - 6 - 8 - 11 + 13 + 74 + 82 + 59 + 3 + 48 + 16 57 + 99 + 93 28 - 46 + 83 + 84 + 15 + 19 + 6 + 63 + 89 + 70 + 21 + 52 + 42 + 43 + 62 64 - 60 - 53 + 20 + 90 + 54 + 58 + 49 + 88 + 29 + 36 + 26 1 - 97 - 80 - 3 - 35 - 86 + 77 14 - 71 - 25 - 24 - 96 + 33 + 11 + 86 + 56 + 5 + 22 + 45 10 - 58 - 99 - 65 - 44 - 82 - 73 - 27 - 41 - 40 - 77 - 4 7 - 56 - 62 - 59 - 32 - 75 - 91 - 92 - 2 - 34 - 84 - 36 + 8 + 53 + 66 + 35 + 55 + 73 + 31 + 94 + 23 + 39 + 69 + 65 79 - 42 - 13 - 89 - 74 + 18 + 27 + 30 + 97 98 - 49 + 92 + 68 + 0 + 96 + 80 17 - 45 - 76 - 63 - 72 + 78 + 12 + 50 + 32 + 71 38 - 0 - 85 47 - 23 - 54 - 68 - 43 - 83 - 18 - 16 - 29 - 51 - 88 - 50 - 12 - 93 - 66 - 39 - 94 61 - 26 - 78 - 67 - 55 - 22 + 51 + 41 87 - 21 - 95 - 70 - 20 - 15 - 48 - 19 + 76 + 2 + 67 + 91 + 37 + 4 + 24 + 40 + 60 + 75 + 85 81 - 33 - 5 - 69 - 52 + 72 + 9 + 25 + 44 + 34 + 46 + 95 From 261b44cf3645a5dde071933a2b91fde64f5e631e Mon Sep 17 00:00:00 2001 From: chris erway Date: Thu, 3 Feb 2011 06:28:34 +0000 Subject: [PATCH 11/31] get rid of buymX.xml --- src/.gitignore | 2 + src/buym1.xml | 2297 ------------------------------------------------ src/buym2.xml | 2297 ------------------------------------------------ 3 files changed, 2 insertions(+), 4594 deletions(-) delete mode 100644 src/buym1.xml delete mode 100644 src/buym2.xml diff --git a/src/.gitignore b/src/.gitignore index 367e1c2..0160315 100644 --- a/src/.gitignore +++ b/src/.gitignore @@ -9,3 +9,5 @@ brownieTest Serialize.h.gch zkptest libcash.a +buym1.xml +buym2.xml diff --git a/src/buym1.xml b/src/buym1.xml deleted file mode 100644 index dd4390f..0000000 --- a/src/buym1.xml +++ /dev/null @@ -1,2297 +0,0 @@ - - - - - - 80 - 160 - - 3 - 0 - - 93382980843653883025762890886083409827607527193228789447271856528752096544087553429050463606190265498596154000815557432733908395732443745252956186362456673161553823344975032912682070157166069852069336154009036924783332731004173119463490793794707861374357535971351736236154736002902486868695733220033838804649 - - - 4608750384956787750586686299568109016423255065583 - - - 300499248208397369986794189434567819278810363998418257225892040135078181463591359705233791759248242503724785750168829666458234554520003855006156457096482396496601742633165704234336134578845247386631417524024589960104791843311261137171973588036911160310836018925761778895678813593759531219022906493835276571347823275301202705007136515965706812095662355573308279870074966198819040965 - - - - 63447296788253831527218480440289397892044257009255410272079920451730819294518218924841010900980215440849012477865530932838640373451255134910718338549625834740892761039214667901815881279356172857515717789655130256948015398369815239323979708188645555481153882466621070266194075404485431397356905466768409403811 - - - 64210593795065989787125228162792507652072430805377709518428732435265776634854443344687484242939186484836850791635609404599555083555886051153001840512087531876489819182002920546988369055620093669849109413909343479327917851524224022965786778186261276490193862174021354084614576690858202955977871827691488303890 - - - 3276864041035154367971009891599921099042250640965471715399912386974521757979638762794647588344475279090427226293382273850594490824243389957425347427395635149383696863281303863523935657008734560609471744746346301256183724302557064051765298747767791224449179761297597259829848180730856342743976261555622851780 - - 100 - - 20608143248128557852008941537685678519431445627385094375560048479860614871635600284846325692708716111631691090974237986506856522522905612163119422996276485379636600277789706382906791135726073239030200641775835379878619752108002785312154237112478854333516952455024046991447536348767202608094152695175267415152 - - - 48151385748168609807808022573822312102541681704239401367002937809958953084938989628755874343082204979854384724809772560658441348440731915019871416765484905368185838552719975186452952054318129741711439379431294935851821824393857192261881463638022724824161343445569345148144433945714999770256148215480034295198 - - 12 - - 419431187141677126737531654233752058147693814781 - - - - 0 - 0 - - - 8 - 0 - - S - - 20608143248128557852008941537685678519431445627385094375560048479860614871635600284846325692708716111631691090974237986506856522522905612163119422996276485379636600277789706382906791135726073239030200641775835379878619752108002785312154237112478854333516952455024046991447536348767202608094152695175267415152 - - - - ((g)^(J))*(C) - - 1270412417643046536246302763544136019674047357352646317144891113016943959378361528769935252943332090933830014337568261928975097817319228758487276514230292090976949733607830985895267364342789656575374824005139361969333697459552861233395706750866528732981104440134104983525068619207075562356465343564149651843 - - - - T - - 48151385748168609807808022573822312102541681704239401367002937809958953084938989628755874343082204979854384724809772560658441348440731915019871416765484905368185838552719975186452952054318129741711439379431294935851821824393857192261881463638022724824161343445569345148144433945714999770256148215480034295198 - - - - ((g)^(J))*(D) - - 48116991801485118486066998742321599295800538043843729622641690177000609923081499240218318198109120072376746344777640304235962478255687226005726716035580971567478252239469148804419253188481279977816796221118224797856305410736869825727344273492073564655204403532041566145337965542493350326750690947418265625267 - - - - B - - 63447296788253831527218480440289397892044257009255410272079920451730819294518218924841010900980215440849012477865530932838640373451255134910718338549625834740892761039214667901815881279356172857515717789655130256948015398369815239323979708188645555481153882466621070266194075404485431397356905466768409403811 - - - - y - - 64021382408920323838378684038649778113860844944663075157313674565339596919906921443481929083045348351313468395196427317709609596245645507477295154234711831796617290144578461400482352462842663866613620283342500591681753137563032728990332636153048958707297427148027243311867683862335809839336541546739412798909 - - - - C - - 64210593795065989787125228162792507652072430805377709518428732435265776634854443344687484242939186484836850791635609404599555083555886051153001840512087531876489819182002920546988369055620093669849109413909343479327917851524224022965786778186261276490193862174021354084614576690858202955977871827691488303890 - - - - D - - 3276864041035154367971009891599921099042250640965471715399912386974521757979638762794647588344475279090427226293382273850594490824243389957425347427395635149383696863281303863523935657008734560609471744746346301256183724302557064051765298747767791224449179761297597259829848180730856342743976261555622851780 - - - - - - 5 - 0 - - g = (h)^((-r_D)/((t)+(J)))(((g)^(J))*(D))^(beta) in cashGroup - - 83035272003659843983823393449559655350795004575870101781475424993653390115331692661998981595364643289455624063825615950700211714226268833843497359391451490192695039772308052240024471317083758176678158260993155618295046040369342374890652619999067711202556631311724556797443809522905752556487801234347469725336 - - - - T = (g)^(((sk_u)+(x2))+((R)*(beta))) in cashGroup - - 37502579662144231340021873782925119550587929579622574357130777530523108342530141192582794569777196161748034928393192004307282616822148766047135259262048540075100671549320567835687521948283322717830195038647289335706487232891139372473839502737695172160654234315755408526020071671132112920253737294719083135190 - - - - g = (h)^((-r_C)/((s)+(J)))(((g)^(J))*(C))^(alpha) in cashGroup - - 65207975631293138321589542369098077016056651386934194411112748479930266629902554808805750009617025142736173817235760956640000960262341334798778382939072773928619497945890043014534972222880793966310549316621313530590374082696941581094216735461598437284476410879718437057389358073851493251320142472243601108082 - - - - S = (g)^((alpha)+(x1)) in cashGroup - - 90527243382016317980940094510401707184198855787344093597399310872053301947996665666306976136278394426648906378990451923169800544709071889797567278822961788780113943746946900841541877294667768907932596735832088694723365861171784767891720111320937252110447462726705671888794307782825270321900270864536815326117 - - - - y = (f)^(r_y)(h2)^(x2)(h1)^(x1) in cashGroup - - 38725680430546933012342477142783227025169318411227530453695378034919148359790147662765636080180571017196444836246900590415251878022155698006299451672895006192567106293014769645544567903490008395531549752146899491643896061709091025732318462895809756679489427946207968570948111963589378284504390931999094491816 - - - - - 9 - 0 - - (-r_D)/((t)+(J)) - - -101196089766491177940272055921393424960351508788942331789033578727520707169349096668188042642885630531267681531346121369900664054929164544819618 - - - - (-r_C)/((s)+(J)) - - -19081418505643055225549794103652584937385334840232317445287825918607482270095265022641458329142897251764831022637844414761691048219712448127050 - - - - beta - - 163357754698871443628744526364059482838094031604317177438831395464750957346417015396909661673438 - - - - r_y - - 42828554819451643032306966449309974438107341686373171591066069676214401758876050606647529092353 - - - - x2 - - 36491209866672054163579551383054129999339215076623855915079262767635160849827650863029133447608 - - - - x1 - - 23619193800900482760561021122242297602027070935156451820187487505859953296207031629781078572173 - - - - (alpha)+(x1) - - 218959471108187986520893550610248570439052177304106607282456196126795930201896376762688349946994 - - - - ((sk_u)+(x2))+((R)*(beta)) - - 202008426349750664381991157701260858823344514453714872349324723687038068884100278442491627586625235142476224005543428671504601103327231763289226 - - - - alpha - - 195340277307287503760332529488006272837025106369758325329107152843966111319854190463233925582166 - - - - 0 - - 5 - 0 - - g = (h)^((-r_D)/((t)+(J)))(((g)^(J))*(D))^(beta) in cashGroup - - 53945843214081887230506825685162514221944851452590973433147320105768347799035010333040104182762421540976644457898523154200390719416111152133906850059276116624692455403920555815325946146027238316284576081046322930997100925534589898400045746221732607763907326046366956881978962788748138738898197865947329746712 - - - - T = (g)^(((sk_u)+(x2))+((R)*(beta))) in cashGroup - - 48151385748168609807808022573822312102541681704239401367002937809958953084938989628755874343082204979854384724809772560658441348440731915019871416765484905368185838552719975186452952054318129741711439379431294935851821824393857192261881463638022724824161343445569345148144433945714999770256148215480034295198 - - - - g = (h)^((-r_C)/((s)+(J)))(((g)^(J))*(C))^(alpha) in cashGroup - - 53945843214081887230506825685162514221944851452590973433147320105768347799035010333040104182762421540976644457898523154200390719416111152133906850059276116624692455403920555815325946146027238316284576081046322930997100925534589898400045746221732607763907326046366956881978962788748138738898197865947329746712 - - - - S = (g)^((alpha)+(x1)) in cashGroup - - 20608143248128557852008941537685678519431445627385094375560048479860614871635600284846325692708716111631691090974237986506856522522905612163119422996276485379636600277789706382906791135726073239030200641775835379878619752108002785312154237112478854333516952455024046991447536348767202608094152695175267415152 - - - - y = (f)^(r_y)(h2)^(x2)(h1)^(x1) in cashGroup - - 64021382408920323838378684038649778113860844944663075157313674565339596919906921443481929083045348351313468395196427317709609596245645507477295154234711831796617290144578461400482352462842663866613620283342500591681753137563032728990332636153048958707297427148027243311867683862335809839336541546739412798909 - - - - - - - - 0 - 0 - - - 39 - 0 - - __square_com__8 - - 68090802429843121154596278546065850456186532118805075362135997777912354236289243926784710096524736332658341530636111949790272172790552532711560050674942382975201790783550515485915262454382204281168959132555697253936378494719218862046646135104976348090313868387541051861214737989435103940817126229238478910595 - - - - C - - 116795643426676382831694309576866167539252173250058079562825834505908602551039301685394929502884813122838928069158431738480287613065742694381186425038175318237746923614572749010017026753973912124500193992428841438583649659040505910043988364109083397842678683018810795203558875765086342683564614936946244517337 - - - - __square_com__7 - - 75185679502637802629550083976612303171957913163214857177048981659755052739029297258724611592143882072319458789531826800333521219616294192848111176532677269697393450882644616745256730524929581383140612885071428761108695699599326338284625805063551774979664256306879770945073465937544186267814919396701131860991 - - - - D - - 22977591691061841892020922481748611752747807939003399325348132414592291838775492915368496138552853622571818366012816166761085112427729672779128131492478950268429678989524688061554753317076390217653971583504033571982511133608577199093143414129407272286894874472397729879497671207248255947472912609957553272412 - - - - __decomp_com__10 - - 62471378561320306425312940315261410911905020182973886990311769662202867577291345661196650003821211971463623388726893453555836224624901576429138534284961304697406958715301254590216252080548134802869336440927432138011990481772151239527117896611169594358490422139110081010042457046888020936750468688350640279919 - - - - __prod_commitment__12 - - 47547821144661884583583420379280189705095036825674642249381896854274545180636873107930841933757061970926497261100345571849857093392026574000968811152675140877017785783730436087131047582727531720378950080376073268681436665410010754331395097710318737065669875068537696844175906423193588853277712643942640913025 - - - - __decomp_com__13 - - 114495945232191548444058546390330134844401219213459075726236032147640730143922707712571567906248994654956214459878052164591070959445425198257322434980215204008815279290510058123443285914894549210936410767467971430899316963895574710213276930100286168259176743359784673345940714992345304822212820134752885136058 - - - - c_2 - - 64210593795065989787125228162792507652072430805377709518428732435265776634854443344687484242939186484836850791635609404599555083555886051153001840512087531876489819182002920546988369055620093669849109413909343479327917851524224022965786778186261276490193862174021354084614576690858202955977871827691488303890 - - - - c_1 - - 63447296788253831527218480440289397892044257009255410272079920451730819294518218924841010900980215440849012477865530932838640373451255134910718338549625834740892761039214667901815881279356172857515717789655130256948015398369815239323979708188645555481153882466621070266194075404485431397356905466768409403811 - - - - __decomp_com__14 - - 63947340859660559351535823227798192209333891778848535048841114358365691098509039834990451518134815937420358759776104252765824959658940394411663757609920747989929317000411546789652056791375385417065928435901907824314231083781078206129543874901981183276266086990056026933268600692565819167940943528654285574511 - - - - __decomp_com__15 - - 40943917150996918432221172523036129816482720221240186249393877175241596249619953634828097164714625418792585137159627392350595887775580212423542268045097147535017461781781814328585595277857443911188541502189817199338816773728915643926515184811436706650143370693279481474661299193653787907255668445638136003610 - - - - __decomp_com__16 - - 100345678957490168945589561762563076441868163991675928763501907449035443395986238119423913240309390545663125208326933807676722306449320588172738372771480965891571818832626314344583622501613381042695066058711488806514842681818132191217406834830149846478698422797003796014336407574374780471837350763880082745709 - - - - c_3 - - 3276864041035154367971009891599921099042250640965471715399912386974521757979638762794647588344475279090427226293382273850594490824243389957425347427395635149383696863281303863523935657008734560609471744746346301256183724302557064051765298747767791224449179761297597259829848180730856342743976261555622851780 - - - - l_x - - 160 - - - - __decomp_com__9 - - 70208924618467450905135242550415892998273262370332452493707887106074407136233508611930434877185661781158331875182717136637197237441488631479837665661701014966882298622864489521771318052189006860102542892564160866411189282223750969291260144297873599680367691286589083852364495677299799917392215366203211409764 - - - - __decomp_com__8 - - 105376404714684516635176280402306007233667691810919371045636140569131845692782591230850954863657195277003393022745454930978427063510933759817647417262547546343470042346491896967764612902749717465351561535425462240145358304439887363146981910618036628510343971299564802340347641611942867423524023204747154176324 - - - - __x_commitment__0 - - 66062880983434696568672916992602080138928522534816369199017661412441084207826468745883783549726295864053537681589408086696972361886600128055125373426207322129059472966559671135948075775018688947977518303411812736460320083459623303915638253068541506751726322405604538835062797583375993259123897717775758044777 - - - - __decomp_com__4 - - 51481268268429138498568413237237620617086909194919869308656146798841168668034792860838170223429306138642443309085046421755511196350050945432846902849921460431309318204337022742972883411446965375034843290987795636643184392038304741414482051732402096873090284499880951666881175534390465582338710481656523232367 - - - - __decomp_com__7 - - 2081623065337694385825019604779311941099430972442422051826519792969225490581702032074855960532167409145423226127484489842480686172890407098097780609318993589105083585304710402991286319718729587842186516713615102481395058920768432244990709184316497757241191353798925277633872613418788750853839338023423857824 - - - - __x_commitment__6 - - 86560132318334860869592245351417926891268312363159067269144545776593215013548132645902489249417344884681673097029098433418604300467562598959845331005628473408363733242864092391067525627844375665325365397401846951128351553358073467102028288328027624152036800313503503333724747415525469283216378049490107423950 - - - - __decomp_com__1 - - 47322164621864675342935853830698978022340958435031429889667367296893691255373753838089918994613535837892536912729051124393012651566850058968143534468412162462610993177315458286927949709559001261143144821106137089518563429602302437500621176961031970723038388517899740748663337597888348798601863076445823028435 - - - - __decomp_com__3 - - 11178951957421958381406936852358660736440345834395142327839359302717749979959758538303927107454578683647101878022976222668834503521025128147026722691921073554532451362739079459808457111041735432292331684729285533541324105469069359533839038847549555012124784259710958460230876797711979555582711775736130972286 - - - - __decomp_com__2 - - 72892728140920307970501795209662427283916378606939424672002137306084461234181884262469632036121003053433014672842300239828023611442134743534710990528974589230422226475433294797096737657266083909520744849085329464218899398008103288802905432971980577927226046819667219336562459172709099063818893562678639522413 - - - - __square_com__15 - - 19147132948510115820097758734351704451757009779468930969709965731963345772144694763481115222416929041121388212920719879713425670347230849797582683421848326727929258186744736965843406053254444813227296385999280129330892961503965999603131598692924483455997155439737834422985079598372569664823433858551695565852 - - - - __x_commitment__12 - - 105781607965992601232751434381441303964315275815150927942994886239783035950957523305849841771865908865173262770416520455110671930319088060494562741330852481723910337188717914018754777494065558413610216748104151305022615476495834509121291550265893556113319149246223177282228927139175902634994343178981627195203 - - - - __square_com__14 - - 39081466916364508828571481648050416594197109770734211013566628615766674625691215398493944148295011855955916254154429457778956833600636504095334279898228708100739153599317874914657784746630334989539972793408239913812669423441435935628405945011293707234464225939560620530794651909362984814304975744256014945135 - - - - __square_com__16 - - 114751759908717262249383415030228616842640974322218737878261392918496187484836772902942545716544464185098666689115812018866232104802741046831999104980858744235787081525817381846841513183394547713457895400234772671465009570956531263643065753499979738709158652886849695450075286543629086516397445216616829690610 - - - - __square_com__10 - - 78167912530220575866124753500839496913747093277702013435066471711509282083628139471545493199268484152911913791630719468865167723826922360518809388092738260346245057691783122131101473453326494149522277355095725768689432195529319448514996933127049066130953275359129410823274876682797062851406676270045360123544 - - - - __square_com__13 - - 68374612062087045119291922721532825711704677622901121794101481479627994036334230596674823310950258722322081153185499789031947066882304846607240923171688332013485383367372589074014437921503847498756821931052522277478550362783044175167804369557281386539574355003148651871136185751407309768450544194980520711103 - - - - __prod_commitment__0 - - 41368258637161398274328077575433341235740680528703911040228696262632893419562869846298704840257551585931148514432646934060617173179014146951364710796618420432683897612188812991937286846010074475150064557084579564842176473642256174017087761633336110629093021190364977101152131546841559214948446139952632013702 - - - - __square_com__2 - - 103595340044473277304103375709039958000514199291191483309708384525694793134410384187871357422690101053769730047826813124376354614392025541857108380630190615760798802100322821270414972877260992264216599133404540643444744918762486026597434620050651856644178224858958068492516200642594922849153826156322630216367 - - - - __square_com__1 - - 40823178169358092177692959522632551004824987609486063178593697386081924501780237363873257473599644669654847485571268976983965453014363792072360958827128435012250595293698014019433981120326274193486495397994524021643088430626101576477413449857637547643820804495068963973550615451805664839699982129442065930467 - - - - Aprime - - 76001113973766759072849186217594532633493526241522288676167261930215597824496341910251698389304649101736544797012947103650695169326587242323512657904025890288410057839862047981976667942478261646145990526121528536903403825207019989999418526447794994268078727884655371248062949264989747170175128951041878580985 - - - - __prod_commitment__6 - - 32199717225516132282922373362969469890264406520292309972158713671125413781875010987521616049389247554581107686915474254258759672579886274462329243501472354305337440131659016412499934183028256266347358913573259968577484929958473545436624914885179389723732507955701710365192155065458302291793485015720725326186 - - - - x_4 - - 100 - - - - __square_com__4 - - 96327237170242568844083235531745770584583935209001907135727315496715916683652273048560041252626982032523619298196638241021920260996840286922080094639029697476145515873715835783390164922009762867238096898575100003938350393920553027404447272804069983841675559421181211875714844419183536091692685884423859621649 - - - - fCD - - 118525390843816376480285979766799565450586782453638400257086372366221044741608050718604893268798392454677795906614984078286136985474193780753206312087269866414648136791808037291837287925625131057695121613464906255488570256073262109675470250675683517486492413204214755873214169369784690179482935437329839700206 - - - - __square_com__3 - - 99702052262166209186577885116709169909339793303536147424238544301612198731525673960957235781558571751679853965430490013831970436868868950554542206182831838159000946444427010417343058629153905471211267287787599560959887403032945287337311142273673386698782237870699773904934054465333638863504206931874173411145 - - - - __square_com__9 - - 82433694821610401864255702944918954428565868518952753237647527628836409236801467283841518069140957938716640532146162540985874034077105403961404885069993522450665662366776443684710712422199515514886690014066865800408395873042360018956185012916706381723120685478487520821390201658828080463923357164243345545262 - - - - - - 35 - 0 - - __decomp_com__10 = (g_1)^(__decomp__10)(g_2)^(__randdecomp__10) in pkGroup - - 99848509509553636414080979568546526052208574802660345486906955008473779387270805644591250755534493648436267813469034102894637531043868833173944148072010624075014596425505777341328573556524938343556422329212676048173155255525211970918217985367294693781480532728272939115500748092593792156695425004747747642313 - - - - __hiX_commitment__6 = (g_1)^(((2)^(l_x))-(x_2))(g_2)^(-__randx_com__6) in pkGroup - - 110858657232808306267309217667788164936899478627991640492245222054604941746398057871895037969267129992680038171470473608405925959004713570940595080650887439933128687187688952979498322254963130468657457233274634939320049013531130588845487477632135559811288677600883635722409379497474967477121030728858591312381 - - - - c_3 = (hprime)^(r_3)(gprime)^(x_3) in comGroup - - 67074675742873903326517619864568261538454005292156441858279893077536704441267812720977114211471695716249701024728458748329074276920786043739611670268833238113424369671157209195173875524973464280968907717816685047249858187077703522245859636109220851077866542253703876788076120955757207615352474390053702773796 - - - - __decomp_com__13 = (g_1)^(__decomp__13)(g_2)^(__randdecomp__13) in pkGroup - - 108799938544474863167521384371062310168580745191925631547756367105899531156576375517516270927762446809748492537971473053292208467516613214913675412160033746973546510678584092964298460506660722036612312463987639994287448110612006079151541123731511182164612976606326358960954582866631440466185736263475863587783 - - - - __square_com__2 = (__decomp_com__2)^(__decomp__2)(g_2)^((__randsquare__2)-((__decomp__2)*(__randdecomp__2))) in pkGroup - - 77597679271880971326072521470970922067187048209399485386708835665604608521866661335361085693058857463515867723502829059585632477320441416879325124193676623335922877027990530462859419695796660390074785693602744952174805782795704834063729264540716220659516347542321064162719239067120924875447822663906493778675 - - - - __decomp_com__9 = (g_1)^(__decomp__9)(g_2)^(__randdecomp__9) in pkGroup - - 84184289410069308262187008577953283875476152995806429510438511178653317639216907043019497752351897344408933105433657996203505579138665255941083923145926706824017105123429713457821391358400753144261861312693755293955935357750805084573744237072999106300068408293894372977875108697949443649701814302887644087369 - - - - __decomp_com__7 = (g_1)^(__decomp__7)(g_2)^(__randdecomp__7) in pkGroup - - 68286853874243764428756262087927332447185305316632050039446671768977030881833915628355289511457956791764309185487814949701424808694198734277560782398371866603993781116312343352112064669101006981283006498665461743753301535195194514516595733403150036590560676800235549165938199625045418768465846074894902261503 - - - - __decomp_com__1 = (g_1)^(__decomp__1)(g_2)^(__randdecomp__1) in pkGroup - - 68563033983905973099796880234381856811131401251959528176324413735778432706102081346571826178265551993646873715249756871227448486370587478136837809836900483244051901035817080586168494242467745428619740218897086190149041386983394423429620330172865118585417021790284334361018334591858574534632013875929751001547 - - - - __square_com__14 = (__decomp_com__14)^(__decomp__14)(g_2)^((__randsquare__14)-((__decomp__14)*(__randdecomp__14))) in pkGroup - - 12194762109238238403603396504209325643513354995634203844184621496411123007416646402488373176033842992356462760984155276286965495780917652897031738874412677848874622010177623732308313836743266406858500177614346896358180517828106782665641458536981618124310542563287461085777823926845096764324110399111395066737 - - - - __square_com__4 = (__decomp_com__4)^(__decomp__4)(g_2)^(((__randExp__0)-(((__randsquare__1)+(__randsquare__2))+(__randsquare__3)))-((__decomp__4)*(__randdecomp__4))) in pkGroup - - 68980957093049167161382626046242111723650697331747993009289200135337557922440496209981581124506136826371408374602374614319187302675590228210703164253265675455359690141416075263779290889581433473821596059089231800155731964783879508338330056279414257645476960241645374276752415439075642233214845534515841734571 - - - - __decomp_com__4 = (g_1)^(__decomp__4)(g_2)^(__randdecomp__4) in pkGroup - - 69550396024181007460224580408938785444050391622225348746847709581230857185633145357495826331186328499466157019211746645522385851152687785609836587556730771708025332391171057945990821655329269326031764063639025195958108661715322484110274765283555412611387746469928339825117241357566408365216330562060371348994 - - - - __square_com__16 = (__decomp_com__16)^(__decomp__16)(g_2)^(((__randExp__12)-(((__randsquare__13)+(__randsquare__14))+(__randsquare__15)))-((__decomp__16)*(__randdecomp__16))) in pkGroup - - 26390583335579898599681478985420079458894653474362956556638292354435728522814204905016046888777655239141454660488411092354607619502433939662882775690040139831531110015783138237841180619626631644275611967770909566329241315594326741724782623478893841982601057874019171119344980868519180586269455166418631547301 - - - - __square_com__13 = (__decomp_com__13)^(__decomp__13)(g_2)^((__randsquare__13)-((__decomp__13)*(__randdecomp__13))) in pkGroup - - 85971333759538104328401163939485409260396046038821329863321584633261298963463775139160811716300712794857106304089194525767792139028122491401760778115832262999674428283513753152077935951810813717242006889745322808400291701104601794669852468056382883151494282881058378491107108257264121962104702983603478586776 - - - - __decomp_com__16 = (g_1)^(__decomp__16)(g_2)^(__randdecomp__16) in pkGroup - - 69666014754733024870554428706034181758592755063736220849453363388045765836895957484212737121426552523151772814160360565920857475055058670682067854889815820070225455348116497734131062299237957534909554228334360314795774290608559604035736095426880602975747638255926358402548240284913441314501965605024556950136 - - - - __square_com__7 = (__decomp_com__7)^(__decomp__7)(g_2)^((__randsquare__7)-((__decomp__7)*(__randdecomp__7))) in pkGroup - - 68078177125313617236442945985603378634851879005344067600139753150758612108261257599562937491623351161397270570560162281613355703903967600103675934620873853188872514655607227064835130886773848420632314530523693072888104331199638719560415107257778757624065845283236870133573357358533004533431603354818320999283 - - - - __prod_commitment__12 = (__xLo_commitment__12)^(((2)^(l_x))-(x_3))(g_2)^((__randExp__12)-((((2)^(l_x))-(x_3))*(__randx_com__12))) in pkGroup - - 78443680701946902656577586841889179649828692642513814964017065188772699001760350156403017223378703847927390640878414585958234153000619878048037478920945478737437607037547484654326862235144945052512655323165997987445147208708135151167854492489324836219410002822015854698101243480760158689531896152545698575794 - - - - __decomp_com__3 = (g_1)^(__decomp__3)(g_2)^(__randdecomp__3) in pkGroup - - 7419558101065402583529805546007310226808798425365283697259277698883780996564217013982164357476869156725950820995449382471074713922484059160533419438107091421928916078191092582831129968566203533457038530285005531506262611486240387876089702383207192379494011421217146512445715707976715421679131909143715933079 - - - - c_1 = (hprime)^(r_1)(gprime)^(x_1) in comGroup - - 61104582867357023348920893091420884515898759432706208952695197514626079170342217477041021630805849312955061084139928224071921216697810216545373096380666325021381592697254360822156453387569786889143567567618387653962006814009338998287113961777874901662379381032162583837866490675862682260300784651145873005904 - - - - __square_com__15 = (__decomp_com__15)^(__decomp__15)(g_2)^((__randsquare__15)-((__decomp__15)*(__randdecomp__15))) in pkGroup - - 2838439044123557311904173430007720697693328220708357592335170536631834246732443267344532197864807644930943185368635884310876288143454518441103473900983829361855967742026580917214529987678749246083253343379232174566014656311981591721368337079208707499154047060758045232403768044807626039547154662241746533407 - - - - __decomp_com__15 = (g_1)^(__decomp__15)(g_2)^(__randdecomp__15) in pkGroup - - 41632639223038109528168634030627036646936103594414944172017568460574573706173582517388231217138990241727741890441079192937119123862983938113413154895086405163123899763372085966195458447763869865634965768151328818086437398896657472483085427915624403892454825150830897736184034089532519439829991562729729909070 - - - - __hiX_commitment__12 = (g_1)^(((2)^(l_x))-(x_3))(g_2)^(-__randx_com__12) in pkGroup - - 84754852045579917117637876129037053883894485298146011398050553125605021504253122387117581627246936192702347339975660766877594682848007884225950982114280316396462797009354841329421786829341502165172166672901197459844730934241020798533853457363642447669543761749361005965208604616547199199995625911724972946197 - - - - __hiX_commitment__0 = (g_1)^(((2)^(l_x))-(x_1))(g_2)^(-__randx_com__0) in pkGroup - - 107509211177288675250625241906976934240491227049563891885763222725128233408817319968420977078854493218827336523129876583991322156496681270367057391548284427351191084115097654986875255874234290602248747133401943378205750796178690914318092120762110820378332598998282279606155871353213042960545300760505319696223 - - - - fCD = (h)^((r_C)-(vprime))(Aprime)^(e) in pkGroup - - 12948520596072865373813894300651206689330548681228333053188292985538809393537442502667528356909003668139004043937132968923951490114565997755905099896769102801913064883324305738607211276450789231588936794047924273595199391287164565123749928116426037816929140089755007722396605870705067618793672715846363931946 - - - - c_2 = (hprime)^(r_2)(gprime)^(x_2) in comGroup - - 25736992450040900560097880854357428757948459785708873987986712041898623311003859715795779484130292951355116422732876033063095090034996567524788457941924092363909565928455941556409980415095559004820618838438465116175766245170344788787857181380699989751445158856193377037307233240865965487786165792137558573439 - - - - __square_com__3 = (__decomp_com__3)^(__decomp__3)(g_2)^((__randsquare__3)-((__decomp__3)*(__randdecomp__3))) in pkGroup - - 1678182393170036513033426398280201162318427935794209677639286305215984069115144257666255311561824933761836274071685938932684809480054187094243480412871395807405638461857490046433873761288769057477167325162642516837162604410281075008587550181327888506368479235326287624856866544166336196447133421482740077948 - - - - __prod_commitment__0 = (__xLo_commitment__0)^(((2)^(l_x))-(x_1))(g_2)^((__randExp__0)-((((2)^(l_x))-(x_1))*(__randx_com__0))) in pkGroup - - 38116845087104563123826073689109485453192533322544080391800894431261802318971225885323015964316579832666461813734986983518766767592534865716917343737043092282160445918262869931139915059709740496454183124559299626613673525649043747912997179873171353446780512965740112328916257026054589081092712791798850411701 - - - - __square_com__9 = (__decomp_com__9)^(__decomp__9)(g_2)^((__randsquare__9)-((__decomp__9)*(__randdecomp__9))) in pkGroup - - 117345314514178744193522046115645267668254106232854626419837764713478491775578990952020924904332957223398681865459105253223293745299920667949633012951950229786991053106437378447081505152945833944121050095862526463694514624314154959042505628191052517508695387061241202516782845817449768441732994462434223915278 - - - - __decomp_com__8 = (g_1)^(__decomp__8)(g_2)^(__randdecomp__8) in pkGroup - - 79615786373756357365250049391541409562327949623224726490644175007864912906648287170569533555022240302282079002211452670390756379311959232223396175998100996066354833450524370020638164277355466056435775889431066761414978653934458765291090313675307312824451301887351597040137721090968472637665157675254133163793 - - - - __square_com__1 = (__decomp_com__1)^(__decomp__1)(g_2)^((__randsquare__1)-((__decomp__1)*(__randdecomp__1))) in pkGroup - - 31526080946381536129193424242276710975906787192244885970418060960617420670851411954563056194378493301374626052660274485473534753815474932152927420547687475467866241363848750908329660939355035692135930496198007184665343889787669594466607469562645423081725058410752063403913587502192845048855946589931635222763 - - - - __decomp_com__2 = (g_1)^(__decomp__2)(g_2)^(__randdecomp__2) in pkGroup - - 21379371129224139297290692706945148145545210735689198633925201879022767761864491629804555866938905524784741031806163631074689225584499506837641268107943552104393116574583174469856327710366619370626044277163714981943539899877454012291064011160370754729392177237931336449112487627891853543609261038507901796457 - - - - C = (g_2)^(x_2)(g_1)^(x_1)(g_3)^(x_3)(h)^(r_C) in pkGroup - - 37832940283514516779976914315411834990127574260375850847584353285409555270281253864870182837179413815071663786268425321585273736631339816800156106141873866953019824059446323908352697215811356289046295439077741270965797287572293186552466938000422410474479828823218719257579983795868706940480263615371950667802 - - - - __square_com__10 = (__decomp_com__10)^(__decomp__10)(g_2)^(((__randExp__6)-(((__randsquare__7)+(__randsquare__8))+(__randsquare__9)))-((__decomp__10)*(__randdecomp__10))) in pkGroup - - 66420575384170336612674926664278673295438923944911201893384575124063747174804650567374078831949501850066294807249734429810917520609992690077825363925652490408669655721611558858902040252583053398937228300502593071472961949735688567750514928430747041548666893480321050277894809975877676591662389851755125272695 - - - - __decomp_com__14 = (g_1)^(__decomp__14)(g_2)^(__randdecomp__14) in pkGroup - - 14662642569308050851427705964736588078381017220026248893602810601506821416100574840667330957203950363899042734529667531731714714406940632087032060476673483754384819706589623829302043769232843250574976462874643343515068301183043900351964003441948229558395306374278657102566691249206195546802644182347688667529 - - - - __prod_commitment__6 = (__xLo_commitment__6)^(((2)^(l_x))-(x_2))(g_2)^((__randExp__6)-((((2)^(l_x))-(x_2))*(__randx_com__6))) in pkGroup - - 37764748903048889209664831347239015852539949678374450108952865316616668629354354861236176649054333681732369660048633887569964175710046790877176001171135127497448828724501491339728807780539796497891190245085080119996936357618433598304341665667613677606201173619868053449999162753103843709885823012505487839783 - - - - __square_com__8 = (__decomp_com__8)^(__decomp__8)(g_2)^((__randsquare__8)-((__decomp__8)*(__randdecomp__8))) in pkGroup - - 109456396684676572853152115654551665416349271748992176698671564292917290048120820147774519871660204594177168098532138600887643970264590032613043315423354467398106032526320932353334874279045900988354428874117609664269816849468631620692566134445768606998221870520969841635844550303595079876642968530496428826775 - - - - - 54 - 0 - - __randdecomp__10 - - 88974682322727688220844413654217331867417822967603456457150999947974155459699042912355503002237678555552846655748595151646981114084277107938848295964425445681517345057037371115862051750487790125001497595009420953370227668752302703038731140341642535592283227882104224917957897582703234514357195229640610182117486206526848081970008103056526683279894312014981674108460635451643516913 - - - - __decomp__9 - - 133907831601030075304649748009472604922690749095206001355248665331098304507934928857867690499981988590838712254739974589902691198858737833733344152579692118480869238549183745537782773004868279738107276236611734039755124734976463363952264898327517111819936537378203889535465670182616235126583121355065312084528825661583787337706352802 - - - - __decomp__8 - - 122047098779100663973165572680215554132643556980663879935569194055169918411625995212375225248168919632437776688438003261824382101716438626719633520557291502062420833508427826923258590113096040280299297049218839671884713279873458359308689603137378040430621785605995513284743431480843486695397269988883092097192134238375324987430505325 - - - - __decomp__7 - - 184912719086286729756241205605778489519715283408351654193830856629957207283156965205737921045171271305537136067337388127800346526443796725878448454327986222333979158408447775839644572236920980047809156540445717299789464905495907458207312326193893556272262189579953918084437281114975266577524635675534165019662675467349728538791072314 - - - - -__randx_com__6 - - -105850254407514307400035961850708018182956403919014951115459226998409451729460039499663729273863700822316946890529734302308538452709258615856078190985964829986592690418060368812603191041538429236195311033452210158137688946451352484654214291922270588635193270241047311932629086007458030639661653869118329176890155721812424122554220693207508413382986495532506681497953904787625078031 - - - - r_C - - 103239721388214548870696570935417107931907217414233310985345352222999415078840530240509043459904849933483354441865257157117649339120468753254078854375028792473803968103731805701322138834011672716559309462883371301225168819742326456208187023060170583795279526943730969564016422365698171406391390908662083577006668236273303506985195801160272670877461632867650844571743679618824393034 - - - - (__randExp__6)-((((2)^(l_x))-(x_2))*(__randx_com__6)) - - -21971201571722498489469918698624182398563719841811003381639022824905195871258189573821086631345293545331465505588316062277433850605049684800485196911209340988586734236886614519493374718482727785843532332071579369573419265382080278132120608837042861050687548901263536024163631275671878951559584562726489842160403389240429170653696696850416984490752494808664301367106114422411404010424591263841486105769990725475721938399089309455 - - - - -__randx_com__0 - - -106993832674046741090237024820986476206497204847182925863656581814389929009005432176990510604667250779739431803998314897767946534579407461219622564089304275302564913127136808595553160947126478668638004374095740905062623927309284899205009970633620770125129295274512960589236203046789455405885902284155598581591642295174923144286887908839670493437277455446472318864700613192208955787 - - - - (__randsquare__8)-((__decomp__8)*(__randdecomp__8)) - - -96638086106361973651416939171794280188786171352001416268819382645956873736990497360901572570218058852287359306920246044751097177836200746998832672780024690276007787730589888984287521119856581380907290547510838397032458504445452629651758789629942893249972575616841376042018906314910539385367475107233333718040021446896672581826728842930181224995324228283414297975662339558574738444905064601561783195603546111518677459399217570634 - - - - (__randsquare__15)-((__decomp__15)*(__randdecomp__15)) - - -262262263248060084984665289573174304661594546402792111057629585072373862222397772549921982850502728501871762659682221210054966677836327968963626370280021134177193843395042055955471671128443281339821042923566191532642331475841893013899510983234996791509043763017584048523361725448974385091181531797848029099615631408367961372027812472771839026736416758446144554712025468952685109489262478988342713704284378 - - - - ((__randExp__6)-(((__randsquare__7)+(__randsquare__8))+(__randsquare__9)))-((__decomp__10)*(__randdecomp__10)) - - -2288796078590694445241725661074176653686614887331120705106015518235748394404815669073938451402114665332663829722400610884260971356229184974038014624802587610922585128811013694019242302990641017599139246056553101804644828076042074143329880055073179595769140101354052258523840520615906292050056526367281269476803235677590671935109744233582478118176367631624171791353408562358310538098675978730377634355886790 - - - - ((2)^(l_x))-(x_2) - - 201820950362817029088508813579445070178562368461241506709277444450468729620697225280356520515148256151154543259467583722498757997890629031765723600984926416120526057482720624888109478334521918011587026696152956023800448790019121807993984000228167410190735659061787457767469617803454740713594830721874975015030040279631815083312415529 - - - - __randdecomp__1 - - 66231230843690302281412615691263356189847483271642244980053905824817812259892170250316123052335822582299896541499458304607178539677188848688108137547173234689881583851750287119588763846242232623051494431575860253919763988863092727731814578986021968592530034178138488171904171375596233827392944745246195609825211649903575249038098583498797975152166232985399885555752429202897143780 - - - - x_3 - - 159040965511047404680501586050334865297075312353582026639824717551213932760583083852210242280983903758049299865224591222603925029484449615954146741160786541395784797884217042754211287498872629829497562795785151584018357359883705108826506575142209765940097108842392873686005024340701959748865072125138397502434097395370370700521147010 - - - - (__randsquare__7)-((__decomp__7)*(__randdecomp__7)) - - 78590861751016347566067891879405744739397393882953565099989471198617337859687068508904767648555134638660650322464963209978374982031524513506461647540346200138679965768311566414394306765832804970108302485677700266746054267246798839170528086389158943834356148608232218088956527074611725846431336707026529772875688310998451644977291981176711234581151355810525071424791822403316632506 - - - - __randdecomp__2 - - 115834901484945066022470098802362407083090250300079240366356185846169403534397491447513763400702188300646349276266564317822214436401705636960795459960620363251768273370235323157732381512971217894191970010206371263956440772279704334177292530839380460664579096646366517194535278711353100335140183052207385554924269169441130473477452994312339886245540262580337743024708149326979876214 - - - - x_2 - - 196276845951651672155412760728950793056287070797307422262394120659831093345680195634202532397552639906796066245053180004112475032035924489926493164404605213427724258013738488905228837936450803276044126962814648989508046301485540577288518769459532201643859957565084660778612316206338124796487103817802721749829695590145788215309973587 - - - - (r_C)-(vprime) - - -373768587188344593829648782008178738330566005182521434618616108674184504180591384464656425399202568991491650765598933692272179077279647441021044515463345465041472379949433520245451978505371126649930708845237106744917395678990634394374018390555081347201125641826038468586127418780374122497271537324757119717222914424798335935657054626304022507099375786225554139979547752128538454660810092764933623262350889634218162606633599543029 - - - - ((2)^(l_x))-(x_3) - - 200118792006104834296756390294938926139578232261700739609506985398442780941439391701844429138728459791125193278294310683676155921652546677284911113805282122383950627176276947390920240315703028385663505017904369587157927949138854706719629608324520571462470344802894669935160705607191959366943144383309553721339525942063336256993378282 - - - - __decomp__14 - - 132080840357661965256768574605415438793910287863790587672889187168689925364923028158594392883420402191202270619131063732228906875560605697720948362604763719893908754542226998450171468984648166877226256970228542286584540815150716725067103187071599923774530991257574048989845410266207124455469739825454264921310561979221230852691785583 - - - - __decomp__13 - - 216288369131662173863822919908196786751564687177366741797120144248870993626737297500382489186950661603350449122681061756290439294210943746655788899903837674208698950165346161359220687368048346846916422886609826286792335968100673188412018624269493188610410628411482123982582839827047694406950759255196627551994902983594817469552852735 - - - - (__randsquare__2)-((__decomp__2)*(__randdecomp__2)) - - -92952013223161470533241730596910126434198948312596013482001864697076035226867230632242814281170550522758220600844945117575318281822723671418351645934781186501342177654520873049951472744216973626039452205179882562274227640781289185581869908176643965721412166602463810371667152192176872533952141943056062721299235063391314167998385513906005877544584816458377417382250136401637681628783610892442887612226376334665593302933551385082 - - - - ((2)^(l_x))-(x_1) - - 149096184096360282860044648653499123391648993212561715322528665247214573658742087736852695583468630513460447801231406736068151666291084733712889043088704955729805022309342266553271587912523689658259584650000541558579922666482261131767149191333811022664671718832105612027560275592439010914707534298006901323982631825220144338953378703 - - - - __decomp__16 - - 167975322170475309679296695985035507345503831648755607658314923529946265844203490415144857098137987120839042901493340865649857165914689338051662924488988178511828221664325345931890140977324429851070602917854630023281023817336217086912364754687883582515883891344594207748908992672189758906604224632123881811584435317336527492121504553 - - - - __randdecomp__3 - - 104636372859816471237682966823326778363349442356298406584620522997542907826474676884410928986374472196759532577518677701543532721835500516824790429293841928139863372508388009965426093853856960215722785151631697977791711653149456414470368365298550108091777559570254219043280683804427147573840224484752538853218410865448408703254614103274176904959777212873860518512919584451866190108 - - - - __decomp__15 - - 144740061694424128875207225560143971729544899062109778632466735018554787199213783562812431521315571106642909661846510017732149125661035925802627959155648413062638099137905856282480144407703578560269260051617421588421246084037145017042482600621411384969704422715617109169223421449422312348736129749720604958911861028394434456579062485 - - - - __randdecomp__4 - - 78400662912832094848185223966131450679622366606970016358536494760050283148344516698438829922410504252522345650184080991314625080708112519258414424404525875799344545033819165534764596180100783623687877933138712849900521229417256223801152115074992788579424266887840626477996947915796374999215396023486621788523309629888764596940757092141755363062941125726798399671185112730604039470 - - - - __randdecomp__9 - - 96917490829938786461734819061671072945666913102117703541684959504718755401880947712905324965783278560786292586153398613651126098256920709167211428234161054882899571188129854998128195952513054828873939543528413271222217808912451299040980289534249012861413241292218490840423216634005542897327585572748024763160608757431051798929696877570885783436863413282844765139704250162126396173 - - - - __randdecomp__7 - - 67407178149980476753862169671947182012613180274479370600798700107789681981613611901125275793263673256436588042195662498582420333506725975261591789018999596351794986585675689945443091612750199561309319820623971645878405563430592998302093508725662648592831981416175345096018412120628983611879369868832153004049603715618778073633593868683611188487548302048891571762203688529065438563 - - - - __randdecomp__8 - - 128720494295761226672753466359804551614932201102341621500514496820341406017542907401608755286865635382333389054941012149209634391113083722995360271189855941077449994157141832261871244757120957063419691040480145510510197625599919604326667066983094409775448197028239454382313313518702047365862773563414675105654005404329612847721483043723753432962216846739524293821850965876826236763 - - - - (__randsquare__3)-((__decomp__3)*(__randdecomp__3)) - - -952629809171179116913581549594604128094287387582197532980214334962213246410587906488464974357349119347130802594753153526363763490906559598856957617547863954216384078207531411933559765107215627224286012154303210561187566659022022397339325808745265064458578095122689689565577398565961943186762472603712233863069101757889807327599809990116181808147558902676519361734862152728199303829688194217635525339197426 - - - - __decomp__10 - - 196517095214167851408637899067564439480460525639706539888359890689950271095870458391875788153771895588801629420315577873556996039168209714063442623926644195379272886037494797407779719923051110783948076080525667584838224044328218451967132465733434981239650230040825782213548330958875968089576535484931480102526799629414590406746531600 - - - - __randdecomp__13 - - 114311611460151436742600501661552135445551445434218679937701893064406955232115388323670637638109682887525028834343284809985324708432302867059528961727010082632534351161123954127053012483648988170567338861788024984159063255025991287514171089127926887748759037377893630523134989885101963141140650290119671057955835270964608833547607426124431725092803077463525954069992953406856457976 - - - - __randdecomp__14 - - 122944287354220843930765437490384645332281121786936637687612690285787780873558146596261346090208708161311984877178861434878338151753912189548421494136645529399152739455636327037576987110982310328742038413935558552886813185197766706010960571805489724444545840789819796569769143311756773073268374825510887244265498665078576548393802580106307409153442651801726759240641814487342831273 - - - - __randdecomp__15 - - 64768862603461263615771719385566106373462718694718710466474372186876315993170886430254977423123526418188749835079530540967053002026777227749911059209959160443832277283848805120909189063327728336442675411541015978786331505916964966586250497651276581856363671371103367897964489479382581565004080765876730044234441785909297197013858192096895780663757928915838382301665536346330393755 - - - - __randdecomp__16 - - 112784962310932608367002588166803184217475558298551919498865292029856889474889274944746828406588997605538389517618862870180512592184545449664462242042536584039300598750745650381200770736682933089518598306137620829482312932765353162237234078877675425963471055054595824536768882137470484686482682871561709532646471521260730212270342662733683742323281135549368412178163093288405086571 - - - - (__randExp__12)-((((2)^(l_x))-(x_3))*(__randx_com__12)) - - -92145057745670273107671486351180090103584858594258320734092800405056748218716881952936615532436542768269813479275259170015693912322199419699934525599685559070620610768800371021334994791825244541178595687872992085743832367831463264646702317291300109389307994086638687513182886379443168886405531060268935749622677058665567643242529163763569171956545481424621050951847931442164993776403003475237369185736463048336591597636166231439 - - - - (__randsquare__9)-((__decomp__9)*(__randdecomp__9)) - - -216863024584153524531788557054117525037430073654038992662079418749752684325812181111665352109755488849966307027983661551909399328212751249769188604101909760540326675701855976173437966260636050138595874601003144005988919339128189307050299782692963784619717878762385946712999311050724790510825394482367577764200154835501929942183969009805947235503069930125006750148232918353962053572157315297015132076512231 - - - - ((__randExp__12)-(((__randsquare__13)+(__randsquare__14))+(__randsquare__15)))-((__decomp__16)*(__randdecomp__16)) - - -960081439420432775691678314804181809919435842256918861250912781644237665385618054855211404499878106565924897769912342746135903822197962281799107593127723195169101901775067028548436057974979555709608041607906385134248005633409589525145189051254305584392773204411069937353868281443946477826579984303059411838395588174720879567735600298496168049916533137923194689719979988794006227261513879588555461585754039 - - - - ((__randExp__0)-(((__randsquare__1)+(__randsquare__2))+(__randsquare__3)))-((__decomp__4)*(__randdecomp__4)) - - -1834926435048435539080220560572123802709133895403947918541243790410639897035866509075331799666060270668864931377800469946479962365143322703223086770680380256419907266587289370197958682134258422588529647819354631851637598618082362542105118803239048539917615396595976926264733405522067079125706467874907018577670142849691811903912170656261681594530406581005166181326567873531235649661461388082019932647381263 - - - - x_1 - - 186960620507508481000675032751251372835073338911747551314521709783564671985009249974164763571091229179579342020907622201614871586476712706269386966998191981320073424922527191432778231857219851176081218609210684138450455026833960725874485050087790998931017073442831327723038572600891238587172707611989048635862994704828425156949229425 - - - - (__randsquare__14)-((__decomp__14)*(__randdecomp__14)) - - -161498641579333729994069070938689842377405637278457166061705692047429453233102948529689381821183433810430003830403666156150035157823192955523243297344980132243063940241193687286309858549382939767239250687215528625331717890762529179486012630936387375172538923483971230194172488231089400151453194647640087370949214826858930574393060034589468104299698272245062197976984075357407621759840629822042690871691424265101967766238476761888 - - - - (__randsquare__1)-((__decomp__1)*(__randdecomp__1)) - - 91391210631978492215538970474692246263550773463113118317903132387208768824016525553113537574799221942340083079806172754921230183393841410281098056228315654609882714049456736304207881943714395295731421695818813353001715261253930455905580959226859224025745517060719834479676464431345708457453065422181165029542513573351103943526557636228271937809247368878810720904047106428147820791 - - - - e - - 126393994210685225645082621474081195450452546130193288314158768737255513977040757620891553088470057686137051830438250908777929294949089211896552797420653927959060593259626159083769296605508750978642672799828989515732319707635460393293254230311136009709460604616667156658382858957398999081060067848639396597186277792181679705521575814 - - - - (__randsquare__13)-((__decomp__13)*(__randdecomp__13)) - - 87617305061956226532798798089346151016585760816256793201481805360014193185792346441718692932284935259789315630690693985155962642782158914279155362248015879820452289228518810744056957792635844529076958262366666913370170652857565601486203683851147275295852267684574067858672002996085944959067763233632373641881909158925632531087926236894553124624495562175691211833018328785341812639 - - - - __decomp__2 - - 167661001110676343973799974545632068089451226016308529271724520621120981895261856766445260428170101292628769769566942670967231407544784660199550478535358561213847834985442183448407813891827562538367261641348881545291324044894611638185085686554333570008744450217167209411746302993781296176108147517987862146016510945265543109731618575 - - - - __decomp__1 - - 191911214650319357824270434977676561247411679760484058656325450397953168225033341286981706857207201352552055167172316467424968414351770653746303791720237462158084596831961987150367865480504152139165709895099805189643786405587618423066884990678115451461627922924275093935146977514681800643067885459865929618642265953166854672394988483 - - - - r_2 - - 195959161521768948208936981534454537424454106473937041775839982407121324882796731297001024412142228535725458926784448670152823740069003100627124383598482324219300320607252185079119895028540245235849740797946450112644588055000142849740485482283288256117293977154909846524546738075874389925034177124170805507391437753721595723106842805 - - - - r_1 - - 177679253651224141329432816940455059150948073922400593645527178209301178283362407671172317230787280718854666421711987008864318947017289812445503417195099908395652106890907575085734682306116582393411701173406552261487832014675441690577079378495366273232646704332240822826114890310711914068113195672172759471097845945137268553543929191 - - - - r_3 - - 177819062441714692824864629999340894230689628737030224347236023841547341982492729892619326800924906248151479676676760477756923302070430347085470358934136190960663228178346745270853342289062822728476750736447717940246957254063745827408595295471875443337691444423955141033449095085286906427593884074269277527553837055329439192752975218 - - - - -__randx_com__12 - - -112258687608598990193580445000978093318890304392081845789526440398525539784770393114510774807418101333909662396429194136995696273682114454776733088433371783971619811634759127551973779918526243390935324259988193758982242612879722914556084694015315510855810443378592504639688448361603931942266131348212972706640176785476191327996721721249916522150955359294127605740459033965289421800 - - - - __decomp__4 - - 213681806113994161735424079307215610320522786493862014880417520677201749301895640244462510242450278435820072512054334305724205876279899225286537881723160391482013411496635937751174533946937881822841994776472991295134155167895255492669967771521387717984231183012416258120077613719755649477880493789827039776296186829971312237622775407 - - - - (__randExp__0)-((((2)^(l_x))-(x_1))*(__randx_com__0)) - - -25678928239570358638989635612847158148771208315811113047034978150623071749813755423083090499353773050600281193995912836344707065147243919387550149580372399492276025901534376079700538587958237221734174983040697719585701375396171385265160850364082033162902463690895988266079727353233739786828649032293895830453182933716970969616324321531895389885935971225322037701712451440356048995830733035551126655491009309254913618571164202681 - - - - __decomp__3 - - 194064835791925857978886891111608324646720344798798697179440315305848111582901910323225127191475710056774129498777212571823606854472382546049540638610084073356918179421421539292420867316067971225223678273626644525848075917524775622112815668862131710613027893420874035169387291723295327150009788300168020869087806739225036509369743737 - - - - 0 - - 35 - 0 - - __decomp_com__10 = (g_1)^(__decomp__10)(g_2)^(__randdecomp__10) in pkGroup - - 62471378561320306425312940315261410911905020182973886990311769662202867577291345661196650003821211971463623388726893453555836224624901576429138534284961304697406958715301254590216252080548134802869336440927432138011990481772151239527117896611169594358490422139110081010042457046888020936750468688350640279919 - - - - __hiX_commitment__6 = (g_1)^(((2)^(l_x))-(x_2))(g_2)^(-__randx_com__6) in pkGroup - - 11668328095704218088209064242238442999688656578045862358466815592622901801766739732600968381577755865525498298337075486114085484295648437611082210638812833560424483309873697213457065274144681245815270640373465470524237527432173806447794585621522313305661930074189196536576163958697310334080233729406287884473 - - - - c_3 = (hprime)^(r_3)(gprime)^(x_3) in comGroup - - 3276864041035154367971009891599921099042250640965471715399912386974521757979638762794647588344475279090427226293382273850594490824243389957425347427395635149383696863281303863523935657008734560609471744746346301256183724302557064051765298747767791224449179761297597259829848180730856342743976261555622851780 - - - - __decomp_com__13 = (g_1)^(__decomp__13)(g_2)^(__randdecomp__13) in pkGroup - - 114495945232191548444058546390330134844401219213459075726236032147640730143922707712571567906248994654956214459878052164591070959445425198257322434980215204008815279290510058123443285914894549210936410767467971430899316963895574710213276930100286168259176743359784673345940714992345304822212820134752885136058 - - - - __square_com__2 = (__decomp_com__2)^(__decomp__2)(g_2)^((__randsquare__2)-((__decomp__2)*(__randdecomp__2))) in pkGroup - - 103595340044473277304103375709039958000514199291191483309708384525694793134410384187871357422690101053769730047826813124376354614392025541857108380630190615760798802100322821270414972877260992264216599133404540643444744918762486026597434620050651856644178224858958068492516200642594922849153826156322630216367 - - - - __decomp_com__9 = (g_1)^(__decomp__9)(g_2)^(__randdecomp__9) in pkGroup - - 70208924618467450905135242550415892998273262370332452493707887106074407136233508611930434877185661781158331875182717136637197237441488631479837665661701014966882298622864489521771318052189006860102542892564160866411189282223750969291260144297873599680367691286589083852364495677299799917392215366203211409764 - - - - __decomp_com__7 = (g_1)^(__decomp__7)(g_2)^(__randdecomp__7) in pkGroup - - 2081623065337694385825019604779311941099430972442422051826519792969225490581702032074855960532167409145423226127484489842480686172890407098097780609318993589105083585304710402991286319718729587842186516713615102481395058920768432244990709184316497757241191353798925277633872613418788750853839338023423857824 - - - - __decomp_com__1 = (g_1)^(__decomp__1)(g_2)^(__randdecomp__1) in pkGroup - - 47322164621864675342935853830698978022340958435031429889667367296893691255373753838089918994613535837892536912729051124393012651566850058968143534468412162462610993177315458286927949709559001261143144821106137089518563429602302437500621176961031970723038388517899740748663337597888348798601863076445823028435 - - - - __square_com__14 = (__decomp_com__14)^(__decomp__14)(g_2)^((__randsquare__14)-((__decomp__14)*(__randdecomp__14))) in pkGroup - - 39081466916364508828571481648050416594197109770734211013566628615766674625691215398493944148295011855955916254154429457778956833600636504095334279898228708100739153599317874914657784746630334989539972793408239913812669423441435935628405945011293707234464225939560620530794651909362984814304975744256014945135 - - - - __square_com__4 = (__decomp_com__4)^(__decomp__4)(g_2)^(((__randExp__0)-(((__randsquare__1)+(__randsquare__2))+(__randsquare__3)))-((__decomp__4)*(__randdecomp__4))) in pkGroup - - 96327237170242568844083235531745770584583935209001907135727315496715916683652273048560041252626982032523619298196638241021920260996840286922080094639029697476145515873715835783390164922009762867238096898575100003938350393920553027404447272804069983841675559421181211875714844419183536091692685884423859621649 - - - - __decomp_com__4 = (g_1)^(__decomp__4)(g_2)^(__randdecomp__4) in pkGroup - - 51481268268429138498568413237237620617086909194919869308656146798841168668034792860838170223429306138642443309085046421755511196350050945432846902849921460431309318204337022742972883411446965375034843290987795636643184392038304741414482051732402096873090284499880951666881175534390465582338710481656523232367 - - - - __square_com__16 = (__decomp_com__16)^(__decomp__16)(g_2)^(((__randExp__12)-(((__randsquare__13)+(__randsquare__14))+(__randsquare__15)))-((__decomp__16)*(__randdecomp__16))) in pkGroup - - 114751759908717262249383415030228616842640974322218737878261392918496187484836772902942545716544464185098666689115812018866232104802741046831999104980858744235787081525817381846841513183394547713457895400234772671465009570956531263643065753499979738709158652886849695450075286543629086516397445216616829690610 - - - - __square_com__13 = (__decomp_com__13)^(__decomp__13)(g_2)^((__randsquare__13)-((__decomp__13)*(__randdecomp__13))) in pkGroup - - 68374612062087045119291922721532825711704677622901121794101481479627994036334230596674823310950258722322081153185499789031947066882304846607240923171688332013485383367372589074014437921503847498756821931052522277478550362783044175167804369557281386539574355003148651871136185751407309768450544194980520711103 - - - - __decomp_com__16 = (g_1)^(__decomp__16)(g_2)^(__randdecomp__16) in pkGroup - - 100345678957490168945589561762563076441868163991675928763501907449035443395986238119423913240309390545663125208326933807676722306449320588172738372771480965891571818832626314344583622501613381042695066058711488806514842681818132191217406834830149846478698422797003796014336407574374780471837350763880082745709 - - - - __square_com__7 = (__decomp_com__7)^(__decomp__7)(g_2)^((__randsquare__7)-((__decomp__7)*(__randdecomp__7))) in pkGroup - - 75185679502637802629550083976612303171957913163214857177048981659755052739029297258724611592143882072319458789531826800333521219616294192848111176532677269697393450882644616745256730524929581383140612885071428761108695699599326338284625805063551774979664256306879770945073465937544186267814919396701131860991 - - - - __prod_commitment__12 = (__xLo_commitment__12)^(((2)^(l_x))-(x_3))(g_2)^((__randExp__12)-((((2)^(l_x))-(x_3))*(__randx_com__12))) in pkGroup - - 47547821144661884583583420379280189705095036825674642249381896854274545180636873107930841933757061970926497261100345571849857093392026574000968811152675140877017785783730436087131047582727531720378950080376073268681436665410010754331395097710318737065669875068537696844175906423193588853277712643942640913025 - - - - __decomp_com__3 = (g_1)^(__decomp__3)(g_2)^(__randdecomp__3) in pkGroup - - 11178951957421958381406936852358660736440345834395142327839359302717749979959758538303927107454578683647101878022976222668834503521025128147026722691921073554532451362739079459808457111041735432292331684729285533541324105469069359533839038847549555012124784259710958460230876797711979555582711775736130972286 - - - - c_1 = (hprime)^(r_1)(gprime)^(x_1) in comGroup - - 63447296788253831527218480440289397892044257009255410272079920451730819294518218924841010900980215440849012477865530932838640373451255134910718338549625834740892761039214667901815881279356172857515717789655130256948015398369815239323979708188645555481153882466621070266194075404485431397356905466768409403811 - - - - __square_com__15 = (__decomp_com__15)^(__decomp__15)(g_2)^((__randsquare__15)-((__decomp__15)*(__randdecomp__15))) in pkGroup - - 19147132948510115820097758734351704451757009779468930969709965731963345772144694763481115222416929041121388212920719879713425670347230849797582683421848326727929258186744736965843406053254444813227296385999280129330892961503965999603131598692924483455997155439737834422985079598372569664823433858551695565852 - - - - __decomp_com__15 = (g_1)^(__decomp__15)(g_2)^(__randdecomp__15) in pkGroup - - 40943917150996918432221172523036129816482720221240186249393877175241596249619953634828097164714625418792585137159627392350595887775580212423542268045097147535017461781781814328585595277857443911188541502189817199338816773728915643926515184811436706650143370693279481474661299193653787907255668445638136003610 - - - - __hiX_commitment__12 = (g_1)^(((2)^(l_x))-(x_3))(g_2)^(-__randx_com__12) in pkGroup - - 27775896124000438466840250626254719125067899650617735199865949004837959289750862900825868833242764932193696694426726744921058274210783824890671978310762156565712636389002035134025447419586216171594401604321279866195398814314495746322198337611963768822439741462893075047333649598437720809429324949154828044315 - - - - __hiX_commitment__0 = (g_1)^(((2)^(l_x))-(x_1))(g_2)^(-__randx_com__0) in pkGroup - - 29967835704904522276560615099583034128293004901771326508719641971489537665983049418844987341356400522340569598034341725543780614025307148964502266860478478775978279057357303374714410362112042306275658169383006241428025101308766698120400870034133392996037802688198243356379498076010620832845299434486416789460 - - - - fCD = (h)^((r_C)-(vprime))(Aprime)^(e) in pkGroup - - 118525390843816376480285979766799565450586782453638400257086372366221044741608050718604893268798392454677795906614984078286136985474193780753206312087269866414648136791808037291837287925625131057695121613464906255488570256073262109675470250675683517486492413204214755873214169369784690179482935437329839700206 - - - - c_2 = (hprime)^(r_2)(gprime)^(x_2) in comGroup - - 64210593795065989787125228162792507652072430805377709518428732435265776634854443344687484242939186484836850791635609404599555083555886051153001840512087531876489819182002920546988369055620093669849109413909343479327917851524224022965786778186261276490193862174021354084614576690858202955977871827691488303890 - - - - __square_com__3 = (__decomp_com__3)^(__decomp__3)(g_2)^((__randsquare__3)-((__decomp__3)*(__randdecomp__3))) in pkGroup - - 99702052262166209186577885116709169909339793303536147424238544301612198731525673960957235781558571751679853965430490013831970436868868950554542206182831838159000946444427010417343058629153905471211267287787599560959887403032945287337311142273673386698782237870699773904934054465333638863504206931874173411145 - - - - __prod_commitment__0 = (__xLo_commitment__0)^(((2)^(l_x))-(x_1))(g_2)^((__randExp__0)-((((2)^(l_x))-(x_1))*(__randx_com__0))) in pkGroup - - 41368258637161398274328077575433341235740680528703911040228696262632893419562869846298704840257551585931148514432646934060617173179014146951364710796618420432683897612188812991937286846010074475150064557084579564842176473642256174017087761633336110629093021190364977101152131546841559214948446139952632013702 - - - - __square_com__9 = (__decomp_com__9)^(__decomp__9)(g_2)^((__randsquare__9)-((__decomp__9)*(__randdecomp__9))) in pkGroup - - 82433694821610401864255702944918954428565868518952753237647527628836409236801467283841518069140957938716640532146162540985874034077105403961404885069993522450665662366776443684710712422199515514886690014066865800408395873042360018956185012916706381723120685478487520821390201658828080463923357164243345545262 - - - - __decomp_com__8 = (g_1)^(__decomp__8)(g_2)^(__randdecomp__8) in pkGroup - - 105376404714684516635176280402306007233667691810919371045636140569131845692782591230850954863657195277003393022745454930978427063510933759817647417262547546343470042346491896967764612902749717465351561535425462240145358304439887363146981910618036628510343971299564802340347641611942867423524023204747154176324 - - - - __square_com__1 = (__decomp_com__1)^(__decomp__1)(g_2)^((__randsquare__1)-((__decomp__1)*(__randdecomp__1))) in pkGroup - - 40823178169358092177692959522632551004824987609486063178593697386081924501780237363873257473599644669654847485571268976983965453014363792072360958827128435012250595293698014019433981120326274193486495397994524021643088430626101576477413449857637547643820804495068963973550615451805664839699982129442065930467 - - - - __decomp_com__2 = (g_1)^(__decomp__2)(g_2)^(__randdecomp__2) in pkGroup - - 72892728140920307970501795209662427283916378606939424672002137306084461234181884262469632036121003053433014672842300239828023611442134743534710990528974589230422226475433294797096737657266083909520744849085329464218899398008103288802905432971980577927226046819667219336562459172709099063818893562678639522413 - - - - C = (g_2)^(x_2)(g_1)^(x_1)(g_3)^(x_3)(h)^(r_C) in pkGroup - - 116795643426676382831694309576866167539252173250058079562825834505908602551039301685394929502884813122838928069158431738480287613065742694381186425038175318237746923614572749010017026753973912124500193992428841438583649659040505910043988364109083397842678683018810795203558875765086342683564614936946244517337 - - - - __square_com__10 = (__decomp_com__10)^(__decomp__10)(g_2)^(((__randExp__6)-(((__randsquare__7)+(__randsquare__8))+(__randsquare__9)))-((__decomp__10)*(__randdecomp__10))) in pkGroup - - 78167912530220575866124753500839496913747093277702013435066471711509282083628139471545493199268484152911913791630719468865167723826922360518809388092738260346245057691783122131101473453326494149522277355095725768689432195529319448514996933127049066130953275359129410823274876682797062851406676270045360123544 - - - - __decomp_com__14 = (g_1)^(__decomp__14)(g_2)^(__randdecomp__14) in pkGroup - - 63947340859660559351535823227798192209333891778848535048841114358365691098509039834990451518134815937420358759776104252765824959658940394411663757609920747989929317000411546789652056791375385417065928435901907824314231083781078206129543874901981183276266086990056026933268600692565819167940943528654285574511 - - - - __prod_commitment__6 = (__xLo_commitment__6)^(((2)^(l_x))-(x_2))(g_2)^((__randExp__6)-((((2)^(l_x))-(x_2))*(__randx_com__6))) in pkGroup - - 32199717225516132282922373362969469890264406520292309972158713671125413781875010987521616049389247554581107686915474254258759672579886274462329243501472354305337440131659016412499934183028256266347358913573259968577484929958473545436624914885179389723732507955701710365192155065458302291793485015720725326186 - - - - __square_com__8 = (__decomp_com__8)^(__decomp__8)(g_2)^((__randsquare__8)-((__decomp__8)*(__randdecomp__8))) in pkGroup - - 68090802429843121154596278546065850456186532118805075362135997777912354236289243926784710096524736332658341530636111949790272172790552532711560050674942382975201790783550515485915262454382204281168959132555697253936378494719218862046646135104976348090313868387541051861214737989435103940817126229238478910595 - - - - - - - 0 - 0 - - - 64021382408920323838378684038649778113860844944663075157313674565339596919906921443481929083045348351313468395196427317709609596245645507477295154234711831796617290144578461400482352462842663866613620283342500591681753137563032728990332636153048958707297427148027243311867683862335809839336541546739412798909 - - 512 - - - 1293834472 - - 1008984266666441195117347165732621136132040288034 - - - - - 0 - 0 - - - - - 0 - 0 - - - aes-128-ctr - - C*mD́>. - 0 - 1 - - - - <3VaUؠ - 0 - 1 - - - 1 - 1 - - - - 5 - 0 - - 22742123660790146149456454586663092621169886781235530944468543385675693721710523283196896122956762478151588861243439455900783102540735128109113371748503311037393016652240120687345943838760036186343687289775097704374844631404615974688974611957409890317778777850542046927612143742813899805896161956986244967681643016794350432508837735617054081444375218057123731477503778718164366252626119239201343450896325202982827675999708702974371978275488708376296419194781732151435653014010429385207612755657332455478576753709301989376927063293038107324315406988538547803944128436909457276914795636822859270669462399472642787689559 - - - 1164535456003901832797152248529358954065493100668574991572983484358249730955770349525989485640273261678179902510720496709843214370792480011781241743272525978022416800847643085060693645554708696514990042634237762962253816677290462276598111402433833442852041329103232263476088676391444575658007389698030424086594419866119889220840131410856801390805049308565659073040189973559761706288554399357979517360060188526249828279831386772342443403384753418655461496598715153931096506327837448595222275873685073256511069781318054670948641577779178805218412170233472845188967417141311135452079948014982879004958117573013398655728 - - - 18422818606961449444777897373394375787222409403528087415213285366035176248351237773120476214117837769469815925687522511365437857605089212374811228010297102507915511227294309826813877280301009731544843707172891243099443694684692173066321384814428149365977398183168734866043645528986154324444245709361224426240963033663717694586682045501272803814423166358089266512210887346102689774108329708939648742786816316674143443187157275079340507944267737292928279946444467163259452945737787986339848276515830231868398107885186501782302685593177064375713744714670686617653076172727870305601890719648731925204316265954922858483577 - - - 8187065689840714447860109475015022640546749268036492296792712759411765634417105723199123901437630644070699382453332488826250821291747119645874435934513599229319863159629075979075771749946613347535302163503303452888498105270465325922775282778072281519522567876860642506938708006170876402497686969651270579990413865683172865746988738148491896062407104588995222808831791569913530754398681806010708176386867523499164511143937507054950428831004439375505816793335786187579793003554678344348506804475201030121050926742963263734217615973205406171780624174096812369613885637408877580954052940024124052602768897700554124002500 - - - 95726715353788196635102298251882195143066839771655996266533858145844352629781377028407252224000641748463680434117946552137342391591545553839824730712391200129499699364846425225485606552769424290970865300624505066026565041341156468591269067009069051485910476356006843377861923193252982406335180212846970126308936502560595271664879320289699401500375926812402880482812981192437682032647121057197874121898015084434720574513122614972514196334265612077618514192103905582051905861950003554227957950213910995491223125731530690833643411099506963190324311755689371335164808553012604223085088735323654723294154231820943029161 - - - - 26999204700346411148415969200380363465066367647002513964582205594158118983168884993041826590795571356596481123480677616284756765252325528498645846677733421231787848751385126200012627513048017853036968392487433853051860825711774444624466584887199888598725307589694232328412865328197812372598367432411436487200 - - - 36 - 0 - - __decomp_com__16 - - 87211264569336296674266444487116096178283120811220150545051860369635205400594051090652867820489271244566450202446732609249946118531186979546448548307347329697930755098714122392032837325351122070432829885758846229338499801293693478768077408138350904121207467686522159030045876714065205217050809954394905751245 - - - - __decomp_com__9 - - 70093895954323489027343287849978040175834265569941715779591317144846235382656992106209717474201613852119081278937596316674302458972935192503501243475246025563303013093601332737117942611783363615781067094633074986062178048706277601482964035524346293144460132589853705308064821385578602886472375805552885381199 - - - - __square_com__4 - - 26939859187888798061108345523159082128956841460409614241711496555793431147787289083005758495101957105247577452885170881958819088945464414494605526895986315551205956392785629134370005464422628650241915231714608305033691059597266700878210597198925688768006970854335898233384973774637664194716034336938049100876 - - - - __decomp_com__8 - - 76969215606722698739324557019494690730961300463448363836273779452254279082489086030616201902406587564580682839832799052271877213724849762886177853653204690402808587144214000934300190326162132686631692035278719756746678098692712990105911920009284902060904924178585729456497292162045774711384206881546554187543 - - - - __square_com__3 - - 15228242000542765650029279800356759814038719647153139559997032441037513275508233148975850272548546226849973747761140615682262970355848866618833857471181156768422616778853588338047499049984666851012118627931039293990449574817373619447070157430779515149745633103927411751659188351591677202901467315078209401968 - - - - __prod_commitment__0 - - 26423976797407536978878044700983359433070430236372504643811102557500064343282760383638538367984705526274161781408736828880901548063085123427408869873879852559018013943743525882309134095909915397829625822552626304892180700774044447639999266916194761201545450729240637017410924800770053501552359160505652560921 - - - - __square_com__9 - - 90808627450301804963389149039007705397199657562646283222298142131503236324359106704689128539993612279209658019678302289507591030043580509302448441472871606860484101410179370704003884261797039742765584267879823416974955132112083640848106998339713133932744838848609966687066747337251542735537312192658289986820 - - - - usquared_3 - - 10037710614898850820136750958158972952071013048065218709134984587913328743257698654174843973013588078770492693319833762510401966463300772827726554982943702280844729070797709283972874449709815751680999288534912467625679931428080027118069193930261069067894569268448530980458781825049026069166499650298293566535012219128446090377480943601785497200085698164735098539207650595324692260200418323354178900060066643266294329462640346607462606803926481919639505038800670071445885827793093283328812693450660151225524550359798181653998310712169224955581065581099264189737640128598226498178247697055742503766647734510694389530579 - - - - (d)*((e)^(hash)) - - 17013898512798972887939872619355763001015040924273642211257339587632948093556234744586743612115522938748395096141294675546615668534674052259408680575882329297544405439266910630108511667369361078191269665510846438567215271919019306815082886053695363603560655465581013435586658434467387718947353405479806392988638351038336033089872433210316025663382767788377974993327348730049414498722565834330376511270014361510901194601362253031025138531899549074353184449959134049594938544006352492251918563182402212471305374460549042673908897652342573946329094471042037163196555477009664089829526141882038338130649445398743945238818 - - - - usquared_2 - - 3781735193753561508863698270260159602643238663884132617724877372899575065687400452791020293001509601809407557582050848145861314089824108017627905955699918346653513830942223739246889635785382198658356545467987423843437529761710445850577869196050324586574051667515960889337272910603847701401140295201459322290146253091154779073827486431631375185419733246565160046618073163594553384149988078513044862342507423615425723450493536966093241046972078812053461215047540510800187316125255803868624829292788635963970139955027689917475236322685826772022682719107372631163118239331481408296088467445029951467239947343872050873691 - - - - __decomp_com__4 - - 61669430484812839359397737039720852278392960080961713287490888238607315773728021304930084580548492130137994921240616955317973931300407357903851046142824362287206349680530429980602839503881794278339450336903755739433992940096500682765353874884401686886571019914255571343113182319918551150401707351460214983715 - - - - __square_com__8 - - 8555419856266700641550402739834526014847802794053236036977387500433179349063048002207002570454153288239399766480998363592991121924749934949131753218897863836664546529726232809158205925864317143181290007892347565165346525857597038360423449894004502788311871767409950048574493649317236028255209086618749424655 - - - - usquared_1 - - 2100041378114660783666246467865946673981227402761326441199884443748471327662874901593986828271313860877881290931251030837269930910690913079169972073843273500606940898506364115724781833914368836678765731779844568907584579263949989596702502732791762500540553498134529783559609419727419447618999636232844267068759194466292091252592730908378729475931393163041288315708890529249153977116657235616317339407986946364104810737308842456587301101758347768571348451248557402609447316161499076989828291278823669557693216706416004212623913895379949568623674703131532334551677361675030020578392460759755536917831977595857499173171 - - - - __decomp_com__7 - - 64434400254118453476074300771608511824044959858698526361824246673408342946381654825928292838618442425101173569082957628344497434605962500077190455100737127839857174210695116157801607259132120971251616541201647116741724522056690942975789938140011605101673365952452407995707052763244692915998715903759787839115 - - - - __prod_commitment__12 - - 51453469568845994813650854920033498540326832568485206719791994304050775042448224151759894871601910062083177013816360995442063272341869258997597573310500143960615756407969581514951264410800801070376282921396944712009664931514920852952992305653379557783414368970823765441731388769443943841815131734808820101003 - - - - __square_com__7 - - 75640200102878653128865799068288504798419381948932597716839734810798394622364381369302792879956758267628972347438026181981134968360840259588805584543914418823694895736411440664694379282353185081036367303142463373305935403967896866385805585809163051279020471701958868121518857754410239521175837952555799447545 - - - - wsquared - - 11654393620143652374883526561105341479110356831602299290337749718913722974486313843019945057422818534423773309317891115055775808922206008243584247598189923918436367408630358888249340893417802278218509930020632667782302348128314149711978406468205316206518093203256903053755769945897916816248602509801317314836698380924843963525963082341712297839785700843869281288507081794130051824649163257693821102745622912641427427688503449235507109576836364817665428270577349535994548302253970261350137266151562466976716977780672087008768712464326886912982497028358980027635451939974889739666722912010407897374772573638288926906547 - - - - __decomp_com__1 - - 77116077258093473950251500340149976127073768525061319361970496447264008331306753132919152752877424140770870641950988418363158341225795970242195093295877387198976560756605243087335092925976219425960760357583249579228418009947904380755281080752962910357804772504644292121575290160777896538647079252445698959858 - - - - __prod_commitment__6 - - 75578851147120173203036640017740149117354630439241627643883261346220920366259119859514536006736081806740811393895328658006786180023393217757482168593571890813054854449629925312388343716543920128700285837994386345342204211169607999266425165577767873162827285165111741216214447031005543903793506098537243037402 - - - - __square_com__15 - - 104176605680587341143774882484003255172422399879504078617494329999176927081130766634042229329231044532094461875934381086436843465415633994713418348537318435389412528249157449099022084888876120954438634320738181095040007440819549704856962377815105161833402982066406044300580626412927474682360468577250992787612 - - - - __square_com__14 - - 100895037696387385147975805712296626315691289764927064633777077322989912397595688510151003934143879814603596748017206927531566023890384358977254371791279554983931657528436664711476790632935305496576428536700882517743845370141173959020673227660416870342111237271108081445203718027010684931093778410812378296721 - - - - __decomp_com__3 - - 107332279385301540794122668419159004683153196260860730629037742151860275797081993681491657944739934213700847892586398440952753205641770285683012640705270696924380852870191879150200103743888960662855245681407673643060830381649633081907919173215074893308955548316333071174196932335041199385629088061455021154748 - - - - __decomp_com__2 - - 9745693350023924980461843793399725274931436455175028583445176845658320725402810365604107540905268355263696448037086774141185250526936920726584562120702452901596797930436140426725891592804478470854573764593937399365983187029364433741451764435320454962633278783326462539131987992671503228373066208049363091353 - - - - __square_com__16 - - 62993308593983530140620526235739930681804080921852909270091138177421864456086348938101769469578404965996434463506291689573027306761553561567833420748164163328799390327296294693827050472756381446457356650877988723784098682713637069592547909212746639281196648659648537672594332985413252908028663595995876999471 - - - - c_2 - - 56102094538754935571408350988939671451637279988915666280708326478252666557071790503991257734101977729243000220436474550913565843230608337169375891995474980431027300184510401988973318258636751873383164866120607155369594453237018695343676484460640065976208862116828258603018486526453082253916682555859718745776 - - - - c_1 - - 3613432941375508715823405898893402042616995932496410635639032773633558200841895886752138987524224398690383684472555034562734624186789556210334808195607203562704626336287888733002225557401159258808440107006921666313226357582492820541619335557030680787622717239134536158161579456051429214807694408427205916593 - - - - vsquared - - 4260694339777540709036205110133047007102972392151742369573260474393872184869505487583762861042049755798295839861439619518331327722550270921868676695271210840311161796989484949893945990485169721488586011740779872731017122226042656868062479906778657548790809051594397176970198618950629042855883988901923332121262262574003447664998323422021709888311360411192512389278725052401061925086988377892532186292742025531544844140263372625607702425419617251428252170165673540545323110613771531493630041710717349042375743110446367197688704242630280770144654461182555733438919340212842313606642622268679610695669163785509908316911 - - - - __square_com__10 - - 14802021608910031669337934357997841906490434573741149297987567914745180925993673486620419799975099438456077223504687966704585911921901850776972509848547241424611283973670616840006973554078894952319634808346405578383145852154103434727486232588648796637122128866488546210866113632577058712613888712582137176845 - - - - __square_com__13 - - 48791151109912294865927911025671041698764748349805578836698440624491812479322637385520795471126995769046175202907420271186028121637505755611201008373871029884241077285892870335079197058877453211253624599959885272400829435919622630711949889457158526512212907147500192765932388921483724611487261251751053538047 - - - - c_3 - - 79629587441763828796305468486802625163359201406953282916277372230116539503868098453699494448202566915151238818388828930442127394249618314315503153017443870059612988199061037835979497513413279127510471395398636031534585202386957342593619860957816160589884401955463637817708660941941886971662944229765301819241 - - - - __square_com__2 - - 93880031082799725006678014237164809780878556765619887563975773376214147266044056050106475517054712325913241413071554152075178537485501008972054330510465543742726530965353087699164893142208589364985133113373207776594171512818597650768087814062632943937577225872952545058738117065168057620328258011053206995080 - - - - __square_com__1 - - 27659812816766887863430436816405803520581183995422299304172810164191154758813077754926897622495897902650987000907643509989908093225803130144529118786836544822615011321342869866628822104513148680593909789169520187748926899700012059273105460377818307469732072515535713246018613968381398864237528621463478451653 - - - - __decomp_com__10 - - 20507610339147400435483091526363552567991429826016486889251759171141447703900767974890908517760235008986708880301959482966260938075000167864817718262971485686732321968316525288798792371190598191071664468106954094980818758795713955819097569217299056194141876690166830544410521768158313960420883464173548199318 - - - - __decomp_com__13 - - 41192217172371628689716344343753001202668919848373834757682419509745388435016399906375079764930535160158809814131318579032538264883879983954297210387561056469284938209957240493808116358093692862760241644752004532160853178360407349961009918453531423454379028347758452796104955255839932471315370005612927255042 - - - - __decomp_com__14 - - 77664039267665027652678976912797060528186334309034382947462180136970841745035088096779027277251723573963843864553148512490353566687663158476483536699077018100905078928647237046553965980546738643225845519135267832529788639863137901036266347780819959089926458557727081391728231364110240053585218378658242556842 - - - - __decomp_com__15 - - 59427814400259287908909654467597923028798233661916532557198072350096439127224364630811410849247496037183952856526118392533962877001641556668474359805776414597382473133316347472096748457439246290178217759477499939072041426368024697828252811191277690009767472763406199721519211355555575017637394127325827914594 - - - - - - 37 - 0 - - wsquared = ((d)*((e)^(hash)))^((2)*(r)) in G - - 9873164026920710826074730481512832261337136341798147465856251635710320031548361425297279992402709825899003731980383423613808239248076071225606894283028843978261841079526188029394927702754992660825305445808909051741577153964921256261754927210228271621868462224718218740112853242602420557120216963504354883196429050370977622828421074446897274756556285427827343858697204090947118439124384407947462872464269380015420103761358651637107172431500956842122515865481540182886556392528239426744725065607495373126058119520740832325664656324835993661018439122302417543809742603146725757231235689464652944056261632247328887793192 - - - - __hiX_commitment__12 = (g_1)^(((N)/(2))-(x_3))(g_2)^(-r_3) in secondGroup - - 83197072600846573843354264741988830408547559959357610318860573712866910878110543029056421544841853868909692489600006092450386051997972514235610953070197498040798932334478790138057521924537913879651359645104481090986940370961035487652274334793218013833505519378290481294670717907989870412605353793894999607258 - - - - __decomp_com__16 = (g_1)^(__decomp__16)(g_2)^(__randdecomp__16) in secondGroup - - 69196292054755492539124566991353709238576223635921642067766064341148262515510204156178968263964880522108769709234961005825179978497060681275315442599570694254126041094566652961590732624148791619357199081896054266290109415159951362056513711852668288984177352319781588143356259478401243415621305501148557115796 - - - - __decomp_com__13 = (g_1)^(__decomp__13)(g_2)^(__randdecomp__13) in secondGroup - - 100822367905100437663584303063936330103879701474977404981095645034534707391514470256261741178681427158034162060735675987191995710900620948785861003206127319813788161162433412770192081944342192563369371865070365793348828563502084813983951121441056428575166652372729855541175229692709816491010313656737161385777 - - - - __square_com__14 = (__decomp_com__14)^(__decomp__14)(g_2)^((__randsquare__14)-((__decomp__14)*(__randdecomp__14))) in secondGroup - - 22184687599399123703685185858332161745800732451817015370187015859567504042735116823319323145016787194975849268220850018932828113855252332707710895310061384411542929058949696220955460819628148292886489062545637370699390433005952634626596090933213166532916977506396324092710058461438216959304162347665981424853 - - - - __square_com__4 = (__decomp_com__4)^(__decomp__4)(g_2)^(((__randExp__0)-(((__randsquare__1)+(__randsquare__2))+(__randsquare__3)))-((__decomp__4)*(__randdecomp__4))) in secondGroup - - 85612594151638830319213324527067703671796530236138455168402318579593380007629512766573007978058263487574793760125662361298357095154609270056814515131642032848621942885351229133996856580392742666498480514538300450610688571153138875741604092396607321434207919843226853223499143187582422579375875638297191374731 - - - - __square_com__3 = (__decomp_com__3)^(__decomp__3)(g_2)^((__randsquare__3)-((__decomp__3)*(__randdecomp__3))) in secondGroup - - 102368255934616181480892396579760984634968705441879866130051706242035371179563533001792601045843424062162851929079627379586682409836870216739715676462351057489545389152082973019051718764471074738142912524914738801202262393984306743110111107032954044905179407834779463653200817189129870978351983134651095560989 - - - - __decomp_com__2 = (g_1)^(__decomp__2)(g_2)^(__randdecomp__2) in secondGroup - - 79366854436203289869504784342047697882984155670923061428834641684684019916126291541229177712372085785253435160422896780245616253394549835551531271144219126485570747741823926296026162944293911399836843179255659593160597222096892149032308756315263598152363966614444353181512791908912266090966268015048330414901 - - - - __square_com__15 = (__decomp_com__15)^(__decomp__15)(g_2)^((__randsquare__15)-((__decomp__15)*(__randdecomp__15))) in secondGroup - - 34755396444302615034487991519041422271495993721377277458202533037215961965678751616675723791084319697688466445558409370089134529738492326853398342447289310067211440165055487315487745240479416328918544515031269313877636818251374768168153689112018082096620269157837668831427805482245243950607406564258935852045 - - - - __square_com__8 = (__decomp_com__8)^(__decomp__8)(g_2)^((__randsquare__8)-((__decomp__8)*(__randdecomp__8))) in secondGroup - - 53638928006204632372179276758347778078224377675772127803613906588589824194370947136090933125086534542412801842148311181133844802859193647946757770154239466077851179172167822791060379124947054401706273820058149356659559216277987506285693955882956483762273461970220075216965741768890877897203627119957894544802 - - - - __decomp_com__9 = (g_1)^(__decomp__9)(g_2)^(__randdecomp__9) in secondGroup - - 22205604316521461554836189132860062553194279299732551610992592010502800674564422495773087560091088250795473339145643222471567458339014773641207404705037793010167435764110762531927909499001024949764007037839056211003030129497510059811229955798113198093034987246052636705847526014402104730078645878963359733746 - - - - usquared_2 = (a_2)^((2)*(r))(b)^((2)*(x_2)) in G - - 1194037900500953229211097904326739960290465374277194542660498795433970233528046028785001116319520493059007655456914098459121472275071895762506765571244602298988142742750257585574326679983008464299090103398956437799928155682565846031464158734110294110426466616111002365997983439140384059872918874947780433748298194295070714167354440190967615004429882933153236689309892841413928909685469836924726511496623627717964202177627693160585915967791095349306022588578578881773232190689362001947841195725665482983249331095297257204638431727005693238877690188114115503985037506968099630682556914494201177636305962076460718980541 - - - - usquared_3 = (a_3)^((2)*(r))(b)^((2)*(x_3)) in G - - 10317557636348125105123093690635654847102357916781403713148490259503369775755992061807923160924467104884008945623003374165993922161775760274175030735930179749292650707203671585322468187726758741882904203554830718126172270088084536236211726123489521539707732012576644516740249140256089755905107505887054261325245968980911901192051791009768629360867603808312270171922584941187358522875026393878296006853542296979169702393430903915867121617089521181341249496734920772041226019173170054932027640766601442872099350267144553971072304206727807323324946223882752876469655040488789202375965102996342760524311658997415419768120 - - - - vsquared = (f)^((2)*(r)) in G - - 11327001192965713990162389375423312546169475936590694204422199904109138662629032986805515935283616409120714212685695595574196910759207973734729093329903803563019246121141844846637383976366289085767011006692722717514838618185482868096657115993631068065156725684171370389049243728024243158806593506625096202740263869770392612817601901367049153854191640558796634682845212464688905686166886603791226323714398665427270671260582775244080128631727860340144624825575931692801499442050475431834537217812552972467818179079753340452555777585837258020171321004391121686206978675449935233526844525446696985685339709606353637906822 - - - - __prod_commitment__6 = (__xLo_commitment__6)^(((N)/(2))-(x_2))(g_2)^((__randExp__6)-((((N)/(2))-(x_2))*(r_2))) in secondGroup - - 105095266855135276547917847148025920761520158295285415747909622874196920972727245784432498551345642169263794846112137368267490504407956106062019000344853759785907207768527003438328568734053119634247978672852245711010720610743088437222475555546397299795204232929408695713289821203472465617235999014928685432319 - - - - __decomp_com__1 = (g_1)^(__decomp__1)(g_2)^(__randdecomp__1) in secondGroup - - 33803408319787589756075394281455590363991883438323062453872011906490624967070678662212219968108757481894958297850187503934121831199081150273574478825666062255470142664511205812692327582282496224018474357181616419790244680000955308399798936967757409916678508200825862783223339402654002526061673276181102747152 - - - - __square_com__1 = (__decomp_com__1)^(__decomp__1)(g_2)^((__randsquare__1)-((__decomp__1)*(__randdecomp__1))) in secondGroup - - 87664978512790867667651982481986873305735787878240293154854574985918137033094070488077679767651778066570484073262584713449597934734930546044104694326351846549083867858952908752806109066909282660445472921330651624757569565718999672916825761881664179949376015872829045074920877711408476897416211614854691057122 - - - - __square_com__2 = (__decomp_com__2)^(__decomp__2)(g_2)^((__randsquare__2)-((__decomp__2)*(__randdecomp__2))) in secondGroup - - 16118344247457885216665485565600395776419309348776779707070470923697286182812157760149612514779400888956236790956227403792313502375419878206407138833517088940465633320461260344962818865903817050853000685397671280311896725013852332426151505988189009864165741342880472857256302431941894453495632582992461566257 - - - - __square_com__9 = (__decomp_com__9)^(__decomp__9)(g_2)^((__randsquare__9)-((__decomp__9)*(__randdecomp__9))) in secondGroup - - 6249804976295042614486514759131804728500283204579598591917459114314256399690328152331325935672647415792938762732412750270361329572139571312229539124702242878392746610500807032161448538429153034166598175404712920926873830329137830236130236926887568467534953931800745155347694827799585232385546694873149455073 - - - - __prod_commitment__0 = (__xLo_commitment__0)^(((N)/(2))-(x_1))(g_2)^((__randExp__0)-((((N)/(2))-(x_1))*(r_1))) in secondGroup - - 100013319473220684842747516615063126752381334687132654986731041606457840101763928469498282100752154541019704169767359442954288828412573416173531245363571198728732045035912921144752953594733966227369679264046880422757566686950955221299486080955829604940192641507597182188159775277049744791017824706291940749031 - - - - __square_com__7 = (__decomp_com__7)^(__decomp__7)(g_2)^((__randsquare__7)-((__decomp__7)*(__randdecomp__7))) in secondGroup - - 88518558311340778423880870234505666888972830360459852693712098101129324345301841453763813761189669153998562238766416080110204275181958750291807764833865937242602671611227157965138559277813978018314815016341991945758307247754009391802291576743510614264531421332696769553322585657639116071484756472951245938542 - - - - __square_com__16 = (__decomp_com__16)^(__decomp__16)(g_2)^(((__randExp__12)-(((__randsquare__13)+(__randsquare__14))+(__randsquare__15)))-((__decomp__16)*(__randdecomp__16))) in secondGroup - - 539844800655329594308925793164699779212566890710496455103450832040653218220213470726081398935844419656252937100904671940762597897061326499353741209170817717317029343530871454303158319292067665018976703976245627541601622216485399757089788732784525506674254973238711280784919522198660813427591619619641148268 - - - - __hiX_commitment__6 = (g_1)^(((N)/(2))-(x_2))(g_2)^(-r_2) in secondGroup - - 92945188484341856938832575802606620438165973601707985260778738380506099577767176060675711449871937774846410775137151251016915854350503990901048759329442164733454169730266760747156026656163447518124954392961995654441713916993282681663419532211273951466832559441359718311779156671291119297011511751652132167379 - - - - usquared_1 = (a_1)^((2)*(r))(b)^((2)*(x_1)) in G - - 1848362902714044292612579925144781664429588380188920046085123392058499477031462969791871325057131711017459526514448386267536809654311622287012025184772420097876570713611761097622522123199072659412937509246835844884370903541602357040711381077311567009437067893377552684423885674316466541033189079700226110754684279680983663525828691088885411043043650238602267060000375711807060047146956885461695462590980629822211626105144043783214426316069574473776762323195982631865167573238453704717756033541407439776253087902982116563334548619005872276845358152577345905320974047689148116629203263980047247212768916088191259895439 - - - - __decomp_com__15 = (g_1)^(__decomp__15)(g_2)^(__randdecomp__15) in secondGroup - - 38453561859123321506362336256936055374204977130268262805777830102334162856285239128975983431434745250071973864136928327013361659849959107146497754413079388150292084384007291626161630908798114529552998249915635850264188538846183777260276797696694652349358910394677811080393797492156328339772275752264877408405 - - - - Xprime = (h)^(s)(g_2)^(x_2)(g_1)^(x_1)(g_3)^(x_3) in secondGroup - - 46056074463779645378361254239335603765492900486090749803566486346557521815216552559392917490933261952542793560740931599539850109249427345148433855344169345379110776284380245843205154355068494769746408456142233585952967268246216663697341762371784970989261100953817728845339138334229401207154363407876475645695 - - - - __hiX_commitment__0 = (g_1)^(((N)/(2))-(x_1))(g_2)^(-r_1) in secondGroup - - 39835297656544663888205361272253582138306720819999197729971070045781846472866892649530955163924270995547665654589916889165247134308486108707726954605765485887613701806809913052096047977127212867501302251230346952769344433119570465903656864106137613684196568877030270516541351098834858069835339806865021662755 - - - - __square_com__10 = (__decomp_com__10)^(__decomp__10)(g_2)^(((__randExp__6)-(((__randsquare__7)+(__randsquare__8))+(__randsquare__9)))-((__decomp__10)*(__randdecomp__10))) in secondGroup - - 99964610507771013019670846477674943053687169126147536797433012587168820714582510575623152504100442405118699111738603274137819064959577204141553260237103433862501691585424926617042809558039917252811356710151589234723640684330990561041038601204779084452420266707538367901361828207137230593309487937326012179313 - - - - X = (f_2)^(x_2)(f_1)^(x_1)(f_3)^(x_3) in cashGroup - - 30433247057411594647394701526776733233280072286299312296778293573670875726427659256355336189677448038109957837140049146406574616485139646505471836763685668385942850262047405035875768116887882052401157955788879495696728293486595513192762150817941511003187916939483966209422678083580266043000276943162049035281 - - - - __decomp_com__3 = (g_1)^(__decomp__3)(g_2)^(__randdecomp__3) in secondGroup - - 41265394564236580019355746208368050199554347678093848378698825391725269523471571876859450639648099178222499011684249931601683312806264305577231189947594639172612367128338106487997111814950757032279894040032237152366282187565136249345855128520436214881907936518842349692445558194934904801586547396532566898703 - - - - __decomp_com__10 = (g_1)^(__decomp__10)(g_2)^(__randdecomp__10) in secondGroup - - 78519048829889387474472997442479790440675357463051884928011453547269176175596301282212285530531153384762718044391002445384866879987856618015213121527740212271361239166729102231980041480964558994419824255972540370479402575533894992084725106640335698458218598159398883313030957545006968869527731127649719478525 - - - - __decomp_com__7 = (g_1)^(__decomp__7)(g_2)^(__randdecomp__7) in secondGroup - - 41383327742843950001711606897941707436941582110774045951651961655343379883958107391120082529169538163797020585878277891875971391867631125100693268436826819154057062412420248016007796898617526804170723477184919369729344713797466006321600888312478780064560576678391096196821051719756238928172255362776421445171 - - - - __square_com__13 = (__decomp_com__13)^(__decomp__13)(g_2)^((__randsquare__13)-((__decomp__13)*(__randdecomp__13))) in secondGroup - - 74269031469511840669523401080652633486696071225934284063611378393966656267143394655774328731717071970882079983767626750542028056420214521014935554069731628834354416286895763055181216658221870372529191812292098315935579688376975561464470417637943434242084521388717807803489986460519592722421859965313100306246 - - - - __decomp_com__14 = (g_1)^(__decomp__14)(g_2)^(__randdecomp__14) in secondGroup - - 38392787651402699097164710764749213591664681005585506304483160695753154281221593279377835841438093766935962058828976085657035828155790944925382584475535066833095472921163883997098775767449182262193146933525788153971512731052948437571735978122104493830602973865450996298266674809599812425130410010131412544733 - - - - __decomp_com__8 = (g_1)^(__decomp__8)(g_2)^(__randdecomp__8) in secondGroup - - 64915001160269017274650490300333363651668650298420607245243991097362774017984733508065506611406934076638729065075962434515894751319748082543289931292755525407551601682118422273581139718180159584481490003019517947532605828258587606273590482869846463365034914667981758468775785943942713432851631437069479027249 - - - - __prod_commitment__12 = (__xLo_commitment__12)^(((N)/(2))-(x_3))(g_2)^((__randExp__12)-((((N)/(2))-(x_3))*(r_3))) in secondGroup - - 59895176979908576960499593367732374939960436713642920756699835068848932453879342077726964650519369084557378058557088601974502528432832438338760328252152222809721025415243919005753169677422871947603662993726513344056579008246936927422724142192683438909799690033265767551398848957250744670389213002233295146175 - - - - __decomp_com__4 = (g_1)^(__decomp__4)(g_2)^(__randdecomp__4) in secondGroup - - 106383686002684876489333498060409522641927955819575360934818249634739778456463669971459597624539946545743360571849991865035760642869132676026584013774034727272347199703796264167794485704792755132785505043185294784556581905912369448422842818576285641663048372645894511972220071991348351630116423188968967144287 - - - - - 53 - 0 - - __randdecomp__10 - - 211686644920799529223260954341858083482093177890362068575929680371284116677736327880867278557209962046245375083527358303536718037301252812574819508503387419670140242938792497251745581456499284209161298403131237915990612106562617313854226897134563684840431377419897006956333996107695528653027316093540021644032510653284591828286443115123565096544395503386553497693096149694335757087 - - - - __decomp__9 - - 137393667451918101005385327590090986796326788478876998663422258977975788182503951909788690858075958087457654879055650260215839266816848397809708819587395793855917811156666791494964747453599519823846473852829737147452211027832082054685652836578322915203976680934560565067753790631520624963040003894697430262253374983863667762086280653 - - - - __decomp__8 - - 113426226527111655626687079374250367191597210512104761584584267114943597583640948761728271678861289473078501797317885734612994767021342136545520705169077724118513197669955833032383502126069155709229186333613127185795437278797272173169742652179439132719973781449482968522522873276909615506841434004002694348508575224916929193285532869236094871623898822179358 - - - - s - - 6056566097813114982507313905846459826145869472426572368911630294520465486666107617266938105145990954697716750132060989241514045188310371194511641395289800463773310641084343529507834754592089530086013723568553482994967036808979863665079321950448400765559515749771582529833617493633925795695270798104135340480026992931394407542320892953832202731696706233202 - - - - __decomp__7 - - 162928568590993942197631694380996604818406629026410597883342363738035964826438153629577709551860337832699468985785882922449980174620817657237339432450942358626163730830760179615903526763494412745524493489992100161234872450552694667220115686278903262673411065078310410307336207055837319813788845987620366096804435315424457431744773851 - - - - (__randExp__6)-((((N)/(2))-(x_2))*(r_2)) - - -13903640063302577177333980267991919082906770053262816221083193574858720997410550902213619213381785973649131916520472940384640164205553266568121425469951056359647087923231545488983789321740425243281366881183063004931099037750699803430464206335234081321449687292248913059829594214259566305436837388775460268107360363909147402730344926929510373904495480173902860210172388458907896783311514619363420997201824831424068776192313428330561446179257187880829761105894801418182150496450573756320263619545538805138963737813716380711615601348546777062082296333183571753875075046474395062625220036156415155002903395873078370782648795837002432516690332922260526826643292736725782635794546561047239311914 - - - - (__randsquare__8)-((__decomp__8)*(__randdecomp__8)) - - -16462770918825064605609688220439303687356209528339142535778549152985911376015436109301882068233789312579776956913724144210091974952474802652831752794365936128527423014086142413296250157723568571842026130671155328088959460117523864806902412232342426099593401124971881502154567883980875658497599273842171375366540933783700342364653679649313749239705256653013107008253809380389569013803096644704064494409697036729578583834988774482254931761394946145820632641528677965365514600783175207458900143084604784656808384409621616371856589798348180544241694726196613145273179881550835474647260745610474914360184197300385885319469960089969433065177868463681922807366987298209059875899089432482043199747 - - - - (2)*(r) - - 80619127109981418747364411939304950173670833220350160274934417684717121384197724112757200091799389325479929303806562734617076645644421481444549109588780954714841504178196320672691813603774196546627823155699349718897631002445190179905693931079182445942559319524189805571698322606900921028523478910202312578006928701467808960908550275036931453880706909545264 - - - - (__randsquare__15)-((__decomp__15)*(__randdecomp__15)) - - -24231381442575721178074706523806636485741308895170817056687401385431457941736401345584768648455089506662678782987133483493888940126935616016281522794715818758081044309892015867946471051144180605215091106957341725058256986253654099738221409027139536039948967115932765936099622029589131852803050269269477271753815292867973615799424745689387480073179438961189615216508677161350599103728200585537723513689241507010991515486498587893748099087810444504102939928665439193463280264117838987489766012194673075743367512160796871671913574004739196 - - - - ((__randExp__6)-(((__randsquare__7)+(__randsquare__8))+(__randsquare__9)))-((__decomp__10)*(__randdecomp__10)) - - -34024732755394191933712580630334306810544410465807938105148242775555987327893391962946353426144970171769057653820725334044711586114514992276972809784560818817997205031873685188865303055907407591935907333525805339227865947481991310341085569883307511332497732898701770311164898234840361574613131323774842908957978815450153858821796754233475718294774992711904524270315185369345091614948144785101031366783770111869442189948629608863495368098983712774771662269579058310157795710351501914337994888785968436965851984093240229393464355405959426 - - - - __randdecomp__1 - - 266711883160556812356109905640994490368896427124067656089243288246621128950775422057035826895022542139577006133845956120252745362243252239614361548864335151610731166433254943921459476877274730211546016695997569304414701621621403558312473987930244346218649291983759987200160043695084773512688114721364774985251824573549895695662291826902342775195201385626614115104702371036836645111 - - - - x_3 - - 129663070463560019708609397880381444224181025154508481029859503886502521400288429179051577402473283796236087756542127179026599082379907478295933788106769251643762557973029045237126377338277584011720337794214319175705374523694232373890257129698511995300466682677037474251860793784959128460853830055672596219452309788541578115077608214 - - - - (__randsquare__7)-((__decomp__7)*(__randdecomp__7)) - - 279534427474469091533083033907173519995581326978294687547714779587111310221553504358973882996744704539038925112323438487673336522825223760901538657715051754318247146203741375637151950274832991572218526901663364165355988259205543752456134382168101006512843202998658113866599802261609534443881895391540961938125437037962196841431268521782442266008926977037336054304610227026093459513 - - - - __randdecomp__2 - - 275746367365436437036392501515495271930538769853309154161021108992422814433718550256233378439284511675298938669923163163786781220709644531630323033977257867518064274621098131438430308072915086592115586759103642923998140569978891732765177158888473093403902375769924891999928931157031118057212463338976412322054287164928611561824685951214735962916813560570860473496757397622282409243 - - - - x_2 - - 182957337114887331610652801547724024173720847148063981764128237214170906092649876096083653760355819200970035511946924783095479740847028605069990269887168224732645957778244030886945342169098425024336812089106114330016996352370088607921035127666972220449411659857448591882538824548325928697356775951292982623215095073731139581167325716 - - - - (2)*(x_3) - - 135002254236231901809162055408052656489105532572269503517115977936532944313161589362494236878282485746931358630171770693819931490792924712666657504764308438917982208677236904974784985218245107269030836489180968553292442654275426391201931722551011634692459604601113411312004156686343406640041314148877606606324358671314407524281663448 - - - - __decomp__14 - - 113426226527111655626687078273967199026937339448280464831075546168206869327773541010049278544641620310357523509780561969349378899892904808019559476576703794435941330512311346580534310333064374829251067259182160592571584157090575883255743190789173403354439948947322861243048369709172913501568740744575545832624134207074047115279648922343465450190579112146470 - - - - __decomp__13 - - 125518334420700956014171455350053749126028981912301156563163821685753267087971973071664540641147253575640259806588474249053634740027268117941104164719511073522117195444324895884811480243802728147724612316304034274824027074909206202738851597325328608585909650826815559210886816589259915306764776059187488325982038752594681581621016563 - - - - (__randsquare__2)-((__decomp__2)*(__randdecomp__2)) - - -21709602440374543260536442451856850748218642369344943231909115874302585956151108815152153704204465473669735079208952733796482119410129509030836323373064536325939712398592558067549078142034778076395595911385350190383145042501274720133279136965202011314084766103371388459643022862202281437376686024041710503785730327873512612249136889801756368963162730783568172445278768851647762862309080351535321864128328303435930173901422255792282147943804775294979549544126578033775752904382088575477661927938765037896914242198496135102209606593591959328511186815533105592569849015337347555960899932505664211081943722241466649267312480570469172412966939100056883188734457902493765401285279140077057437559 - - - - __decomp__16 - - 152028481035461729046702348286340669969871641498635606659283874790166588968152547149721646488382272002313142363699595802030935527943358011541832226645856549305745751567736416959816771103135831037880614950129269664307891337284224289220129411671127405446035540734536017433678782086799095080633548556748385190681671375770086041941971942 - - - - -r_3 - - -264757726906097800507425278417506472096917948824208846073034243456957663448565506027051922067870954881135179129873600842195995804316446950169970817060469784759623817597482298331402372094449148606495631584354346746562591161068915236774403939833292149335534011171381152710023471564062710193154445694522042978372397182644365962935934902726313643985772596814511248152223916188640662386 - - - - __randdecomp__3 - - 201008639612884052253544677733352820492415672102825344492160518766337920622161991165309750184313402036482855863327489413786964352201610910725773764483721123530592776236816013820986278398240849246853079480621606744518784867210433939754296660842117322414372064555277000805672773747600872160129164043259445723189319560360174072161140055088990925074290096060638476027623527820727568795 - - - - __decomp__15 - - 176336914076919787078737810318186236769124205894199699265704577770537431244228850260560505816376864162394998882119314623205399295106051181238292755569156914756173827438312219001029124779692004634311191667321906985622130902559852288045644537203177549660145622520098256266264189562294491680308389926496798003717738025601304921925565626 - - - - __randdecomp__4 - - 210372276337313475131144059596922548826288035787580975715826214354636045302687308896217057330508157052376625044530474898665528497967679284279106006911023834135278158929913329748072833316549488483166531425650374377305869137756299667051090297287079252635398483679714062230183557932737469346490389221555947217118409148165635781150221144131250247723226472174547839626222490975889566423 - - - - -r_1 - - -283856117287231691387808868890608165123459856511601204890381360428083401762890664818910476015158879308663246597925536339973434312640702087816407772676819793295789952108069444377357137272204023608972309298985514706615237999937963606608896246971259948036314944839404751921583060130763648730022012617355878043475471807289909807744675919793700810515663988221407243598127797192915245716 - - - - __randdecomp__9 - - 178272843456854314638262587104243691124130147391902982023646688222509837335285301159791480390727517824607211283743475709292659053735132458560931526666983183010231966156440757705482718449125367740655926280800431861579191327129198654724594957585268542593798389539083986474211914265796977280990362215676446916115833299447582604917912302162344708873709251070659213954076842447637114627 - - - - -r_2 - - -176598270334152128903777699321068366657433158312172209774482246239640503019820655536461352131849632370232982463867151261354964925944668680637527116171424454082473656716535446156596903140103586700974436066037125922714856327995281345594706571508864492743793986421053926497621603700863390801901602321021544738714175027226708051729580263434899221438484462635186042181189909445732016180 - - - - __randdecomp__7 - - 176092391665030852192544441147462797622006722815663784813783318561056689967588052037421426567858760030173060273919786422370293875170119407918896783701164951874085670507187662064618228921184598484576346083819483104402145439236697089354921461067958569470467669480211875099842281111565180229918772768551026320938859891004969931119278284257213027962799236281932950941812601634963104414 - - - - (2)*(x_1) - - 130958830620330865922730391913423103320073213913772621913613206547506771268121380207706607779546636481084217625635875553598361759523793485622651211449218033609514726374165204845744440446190055738653916546833031948204904360707415114602740245927400671279370677250477041039645847111881271972008474011029721620430481919659095631488920698 - - - - __randdecomp__8 - - 209103289205928065540883557885369736402261443667133010551567285690420092728087834060718073695121389389272894799347443351435916601352511083892445139068208451327200775065734326805576389258606768681264925436363172698084840364952921100528866813035303215624667867045091910747363378631926621367109537384736120394668238634103311365317575097200174016638396225740062234378113582907303382400 - - - - (__randsquare__3)-((__decomp__3)*(__randdecomp__3)) - - -74071204721039505503338463082544243045777369569464661071731741149852202074954731956258324308275983135861697358339339908540623543047638625440038908915242270102577137654031223909569542611090795269118517831631772994189404445699664470992376274111419329389619578877870048292033212805171429785425593202879205488390057732066216756240846299187971747464812439382265848230611109874229458824655839725456620485144811389814820108587514243713337873735140684495846384817840523853686953463024802050168122470122120503860087751468380873641481765668093034 - - - - (2)*(x_2) - - 110457569982506313417790278354954397511279218536372499112664277709687509833079849926046020882101055655240944899567777170309620380807854911487844306423982150817062003312180643996677491747880448803532718114376387761789072516993076963594900029240548824266180365625042581201269113237565006468294815417918604785630083591697582994872555838 - - - - __decomp__10 - - 215841266792577926825713861489013937693395888113104204254818543153485968620027785393782929396645922531004308932080358984727797289272366494614889966948787266545588757784334344668132752174336170541038756022304147010645793118326608698021965676963209764225570492602444843791582591556930058932197748935311170757899182764654907463995806560 - - - - ((N)/(2))-(x_3) - - 113426226527111655626687120201209968334793998772837007188616286657445733833998699399842204134150091220369836452473808936514476680383742688873683199120585558676674025807925355210658228875067735949262585612233887594626667604808662931518344782697213347373566516815580060674072022350815356638561392815552953401952738392848338375073692116261245502476768942958351 - - - - __randdecomp__13 - - 289904653748473824019885239583236538690643433780341211623316534558187038451129537341443031749189632698606589013204040741920113008489376380163201014762388278298621833205818467543978659353734447632057976329958771177594125466732693013018428359140740492508612913825813656474406613565339914803828266714918829003798211106895359837985345751161455316576993404205310209900051884304472446177 - - - - __randdecomp__14 - - 210859431126293673941428510913729553726040439647619805468540442615289496989157720150991858633172198208900315807964113544625578590605914763738680809085531580528982975237034124368807244152715338470384997800732747431484274657889628651583409745974325596368999338329388579066401165518109008235297437520922343027953895355407540640872735806549449336291626101230059807013556021477370442800 - - - - __randdecomp__15 - - 225994227064461224132102578090522653831529324745490522267940475579175844918934517536053232225215949391664800302572875514311387461218301917008131238652661572966880380690422939305208441512271338459167222541401233328474363147003031208737803620006673596614157278902138727877956272900371851752173875050779067448648319700347266686158554260363830952191453704646870527220805759104729972253 - - - - __randdecomp__16 - - 272164404619713820469623938091105424063193380007568553951972872360718335983530562295838306298425036506711444015098451240279303889454493539623468449507311964294389388084308802479508133176815329401433237082045434803481009584923241775547893459959205066378349960972552906741614258064916460356844226494276550478940011732435242578128914891055714715594983954325581817687662318109191774283 - - - - ((N)/(2))-(x_2) - - 113426226527111655626687086496369050356473117030562457822771386401754897526099819176484481788105413128456955414403002822289432426172163030704467413463225643226018529827102218760475916189284357246455497077755862257816317984600316913123429305762155787462981514428613183446625824679773767002687943621845384574352491463970033827191375902128792147410554296706216 - - - - (__randsquare__9)-((__decomp__9)*(__randdecomp__9)) - - -22529595833245154791080322685668677732469525536558168344909683193287411348940222810278131135434415984837551638383113420968993999538916862497465092247808591266280573811787128666267610684057394864143811160974423813527137543981054176883388282518310595635795382250369684104646471400175892708319910184006679396532091620813655226144520387304710398188265304043657140599491441438169497958463707012297531422120469318927137557918134002451748665004328676502225456777557939619271120181358314857803347160833692469698322951340206853405187187782609500 - - - - ((__randExp__12)-(((__randsquare__13)+(__randsquare__14))+(__randsquare__15)))-((__decomp__16)*(__randdecomp__16)) - - -69948359566495648681995092252358513102427728868320305809040987979627165164633016203595333049771578667833354953658617379455681851455040835000667445220526485165815735506724372688420266868426952943998411421422342451705704845421569334457706878189646418843873747503757914054750762433797450908945483525734093640845049264234714031460723467500419424083717790990924675419225108852428215537539651540665032089815622463980424554809051972766735488047727643277303209862566570874207077013790937766816039014549356969422595247501889819119403391533026615 - - - - ((__randExp__0)-(((__randsquare__1)+(__randsquare__2))+(__randsquare__3)))-((__decomp__4)*(__randdecomp__4)) - - -94597096357431007544144844494513751220336536762573692072471034971845651286804170912606936068066026430626946730605187145502846919204605273765972702926214539173476648296228846849300957405819989317025054282689405551227334811417211356335755789666965073482672612945513252792663117212483702456966306514895326233305712329901701927141004515416793406341257772362514669246835020466934926321393624815027755050314740004719569974668687582230614881862729642668954110339014805791196417794859414741705566751000726909599055151864131669434383087291355887 - - - - (__randExp__0)-((((N)/(2))-(x_1))*(r_1)) - - -22348085726211300841978305953288603650569163456381002402572880720401628052059170776213155907366195789932546750210829255221199635867565341764307744103576217242001972418222300670795542371039626924279135926891385887111274685257392814226785355169084331637928388231300558556069339931235851187434529889571298678900142229912253291168053396087489969696020680214277022023836132070324900584544302082693544847180894456644050071190772520262349418960914409045571404338960164355492464409910984322883168635339919823950554930065501866900824986582272473223582039527833674611325461970414437961090367277043038000095170628064702266396641350704720597907537670530383008987455813781231873991465899231312687523102 - - - - x_1 - - 129174953751959272338669938775903371268541980044761585503725447049186874596370078258635763587284951256403071376746219135103911799380136029720588692287803962373860411505179234676036721832899934300701552049715359916816710866097090043100587765067222439305866061247860205208566199678860456398425467455639178543822340052908882914487763486 - - - - ((N)/(2))-(x_1) - - 113426226527111655626687035178532961111595045850775992141184383657717909481993036142995689367825259336974635756891008836616731949493734173080328747267253266513663857659039458368491163894193548513628414314186153866601480567469921551417400179199477914652287794773935780471813160240308270981373951332608905752340733508562163487473281429124229026152397208425512 - - - - (__randsquare__14)-((__decomp__14)*(__randdecomp__14)) - - -16601032551369029946664107433424440886923596148364861897713137652778178389263228414015902140677952663184123178529932761297190723210842652074737033536771111532798932605402221073167797583403458697978382642997041667873744368764078868796015515804452410653266271651307429278457430276851371507960440672386887848271608657694057098195286652332993871661070295848243833265691346329379872003974982741675852181673130588251662951560883562467358754102088641773290913089723664030909110117623661348647065863189158290144143589127840365840080156646280513422181853523816677922595150879375467329335375643758835238844966875152223940127433924429965637916910568685697115492740145772840458794016039759537700248417 - - - - (__randsquare__1)-((__decomp__1)*(__randdecomp__1)) - - 259076512184443927556396955848051151465333003360270009213271352147961616337736775956074351552242156957225712913017905653538169785527322698206942150792554229564977490266704654810435482625052770172097146288089848751386450591594364413558173098821131228437866948401953962009875977688838313579095974673139481011468994154653184110642358481222958001062627365335694594457916557485394460529 - - - - (__randsquare__13)-((__decomp__13)*(__randdecomp__13)) - - 276474964335657845622692340626211533922689274073577372539859196980504250729819996051362642213580225433233400586802693089647309247698903688912191723072425918112312654005334295793298296562329464057800167556556092896519796243543498688412855673420688293594025279733487499023152929130250466411459972981663084439338260635006017703023884298853346413183749597918438318708117779166648901938 - - - - __decomp__2 - - 113426226527111655626687116507868307114719649332001055816001295971006946466866695206059987712887233462835251080963291638043215270656054640335998536535469463712710056568536192722624623738018666058146704771728457688489531475481107332749811759041638459391190585855494751830163064831245255482432814463872374542223948636310758581524533236679727026913249874608484 - - - - __decomp__1 - - 206053191001043909066789216652451660482795446395973457894739898438668342732596806176542321333295929417762850241101958960842935227211347173989400679763122563525249517113387049005256606625595157355205829793453806498644156830797645220213016353441688328177725282518614069761794225192914786161016467131056654972456379701589652971915657093 - - - - (__randExp__12)-((((N)/(2))-(x_3))*(r_3)) - - -20844463153095001017579517482587481410726858215193497304768217232329106635032213131745473315056595299708228059368862369800983374191777940407869886347392999742451730759546197835276999235544015714472578654365555322878909686856319807717093546153572410100000147484846007318893448614488600022791952863735706740268890466195406078285121804234089267806109470625921157639453286203420756865018966231576131723790374798811947509759972369875662692437389978622152295321338485808081833256141884869253043605386093818578292565116808500221320485219307527477060711956542336553856818760417332604689901933931586283205895387972478296812502323231734710130875980883638776924278871167712995679740839358535749185456 - - - - __decomp__4 - - 113675382701079331187535804620910752677842997919237034271148822939368756865114214306911440955032118977345092934803930518310315897793314282984466654927846604603466750881016483301957341226637617997872277949811784266676316691515170617259644935247136198250128816356881278211799707728487607328986942685705089123979533469398081609258118625 - - - - __decomp__3 - - 136330036576001792622454465054694045701351787892874305393541661464856944913130874667576768973770046294708856681766637076147304703402980702435959805365745404962834187143740259887206926782389663473825288557343884847105067699967002871239142658306682397076498606513323546814460680599590379416262681924061433516777412243645758332357764335 - - - - 0 - - 37 - 0 - - wsquared = ((d)*((e)^(hash)))^((2)*(r)) in G - - 11654393620143652374883526561105341479110356831602299290337749718913722974486313843019945057422818534423773309317891115055775808922206008243584247598189923918436367408630358888249340893417802278218509930020632667782302348128314149711978406468205316206518093203256903053755769945897916816248602509801317314836698380924843963525963082341712297839785700843869281288507081794130051824649163257693821102745622912641427427688503449235507109576836364817665428270577349535994548302253970261350137266151562466976716977780672087008768712464326886912982497028358980027635451939974889739666722912010407897374772573638288926906547 - - - - __hiX_commitment__12 = (g_1)^(((N)/(2))-(x_3))(g_2)^(-r_3) in secondGroup - - 105963065600414136709391810567896201246767397133267485358503185234522414070896077312573699167242358831479576611798599095253058965668036049434224806354685219748922477608462979342890218322124365901641291707883419814104758119372013806355411023130960764658291229193894505221546032415543136904681869364961233702554 - - - - __decomp_com__16 = (g_1)^(__decomp__16)(g_2)^(__randdecomp__16) in secondGroup - - 87211264569336296674266444487116096178283120811220150545051860369635205400594051090652867820489271244566450202446732609249946118531186979546448548307347329697930755098714122392032837325351122070432829885758846229338499801293693478768077408138350904121207467686522159030045876714065205217050809954394905751245 - - - - __decomp_com__13 = (g_1)^(__decomp__13)(g_2)^(__randdecomp__13) in secondGroup - - 41192217172371628689716344343753001202668919848373834757682419509745388435016399906375079764930535160158809814131318579032538264883879983954297210387561056469284938209957240493808116358093692862760241644752004532160853178360407349961009918453531423454379028347758452796104955255839932471315370005612927255042 - - - - __square_com__14 = (__decomp_com__14)^(__decomp__14)(g_2)^((__randsquare__14)-((__decomp__14)*(__randdecomp__14))) in secondGroup - - 100895037696387385147975805712296626315691289764927064633777077322989912397595688510151003934143879814603596748017206927531566023890384358977254371791279554983931657528436664711476790632935305496576428536700882517743845370141173959020673227660416870342111237271108081445203718027010684931093778410812378296721 - - - - __square_com__4 = (__decomp_com__4)^(__decomp__4)(g_2)^(((__randExp__0)-(((__randsquare__1)+(__randsquare__2))+(__randsquare__3)))-((__decomp__4)*(__randdecomp__4))) in secondGroup - - 26939859187888798061108345523159082128956841460409614241711496555793431147787289083005758495101957105247577452885170881958819088945464414494605526895986315551205956392785629134370005464422628650241915231714608305033691059597266700878210597198925688768006970854335898233384973774637664194716034336938049100876 - - - - __square_com__3 = (__decomp_com__3)^(__decomp__3)(g_2)^((__randsquare__3)-((__decomp__3)*(__randdecomp__3))) in secondGroup - - 15228242000542765650029279800356759814038719647153139559997032441037513275508233148975850272548546226849973747761140615682262970355848866618833857471181156768422616778853588338047499049984666851012118627931039293990449574817373619447070157430779515149745633103927411751659188351591677202901467315078209401968 - - - - __decomp_com__2 = (g_1)^(__decomp__2)(g_2)^(__randdecomp__2) in secondGroup - - 9745693350023924980461843793399725274931436455175028583445176845658320725402810365604107540905268355263696448037086774141185250526936920726584562120702452901596797930436140426725891592804478470854573764593937399365983187029364433741451764435320454962633278783326462539131987992671503228373066208049363091353 - - - - __square_com__15 = (__decomp_com__15)^(__decomp__15)(g_2)^((__randsquare__15)-((__decomp__15)*(__randdecomp__15))) in secondGroup - - 104176605680587341143774882484003255172422399879504078617494329999176927081130766634042229329231044532094461875934381086436843465415633994713418348537318435389412528249157449099022084888876120954438634320738181095040007440819549704856962377815105161833402982066406044300580626412927474682360468577250992787612 - - - - __square_com__8 = (__decomp_com__8)^(__decomp__8)(g_2)^((__randsquare__8)-((__decomp__8)*(__randdecomp__8))) in secondGroup - - 8555419856266700641550402739834526014847802794053236036977387500433179349063048002207002570454153288239399766480998363592991121924749934949131753218897863836664546529726232809158205925864317143181290007892347565165346525857597038360423449894004502788311871767409950048574493649317236028255209086618749424655 - - - - __decomp_com__9 = (g_1)^(__decomp__9)(g_2)^(__randdecomp__9) in secondGroup - - 70093895954323489027343287849978040175834265569941715779591317144846235382656992106209717474201613852119081278937596316674302458972935192503501243475246025563303013093601332737117942611783363615781067094633074986062178048706277601482964035524346293144460132589853705308064821385578602886472375805552885381199 - - - - usquared_2 = (a_2)^((2)*(r))(b)^((2)*(x_2)) in G - - 3781735193753561508863698270260159602643238663884132617724877372899575065687400452791020293001509601809407557582050848145861314089824108017627905955699918346653513830942223739246889635785382198658356545467987423843437529761710445850577869196050324586574051667515960889337272910603847701401140295201459322290146253091154779073827486431631375185419733246565160046618073163594553384149988078513044862342507423615425723450493536966093241046972078812053461215047540510800187316125255803868624829292788635963970139955027689917475236322685826772022682719107372631163118239331481408296088467445029951467239947343872050873691 - - - - usquared_3 = (a_3)^((2)*(r))(b)^((2)*(x_3)) in G - - 10037710614898850820136750958158972952071013048065218709134984587913328743257698654174843973013588078770492693319833762510401966463300772827726554982943702280844729070797709283972874449709815751680999288534912467625679931428080027118069193930261069067894569268448530980458781825049026069166499650298293566535012219128446090377480943601785497200085698164735098539207650595324692260200418323354178900060066643266294329462640346607462606803926481919639505038800670071445885827793093283328812693450660151225524550359798181653998310712169224955581065581099264189737640128598226498178247697055742503766647734510694389530579 - - - - vsquared = (f)^((2)*(r)) in G - - 4260694339777540709036205110133047007102972392151742369573260474393872184869505487583762861042049755798295839861439619518331327722550270921868676695271210840311161796989484949893945990485169721488586011740779872731017122226042656868062479906778657548790809051594397176970198618950629042855883988901923332121262262574003447664998323422021709888311360411192512389278725052401061925086988377892532186292742025531544844140263372625607702425419617251428252170165673540545323110613771531493630041710717349042375743110446367197688704242630280770144654461182555733438919340212842313606642622268679610695669163785509908316911 - - - - __prod_commitment__6 = (__xLo_commitment__6)^(((N)/(2))-(x_2))(g_2)^((__randExp__6)-((((N)/(2))-(x_2))*(r_2))) in secondGroup - - 75578851147120173203036640017740149117354630439241627643883261346220920366259119859514536006736081806740811393895328658006786180023393217757482168593571890813054854449629925312388343716543920128700285837994386345342204211169607999266425165577767873162827285165111741216214447031005543903793506098537243037402 - - - - __decomp_com__1 = (g_1)^(__decomp__1)(g_2)^(__randdecomp__1) in secondGroup - - 77116077258093473950251500340149976127073768525061319361970496447264008331306753132919152752877424140770870641950988418363158341225795970242195093295877387198976560756605243087335092925976219425960760357583249579228418009947904380755281080752962910357804772504644292121575290160777896538647079252445698959858 - - - - __square_com__1 = (__decomp_com__1)^(__decomp__1)(g_2)^((__randsquare__1)-((__decomp__1)*(__randdecomp__1))) in secondGroup - - 27659812816766887863430436816405803520581183995422299304172810164191154758813077754926897622495897902650987000907643509989908093225803130144529118786836544822615011321342869866628822104513148680593909789169520187748926899700012059273105460377818307469732072515535713246018613968381398864237528621463478451653 - - - - __square_com__2 = (__decomp_com__2)^(__decomp__2)(g_2)^((__randsquare__2)-((__decomp__2)*(__randdecomp__2))) in secondGroup - - 93880031082799725006678014237164809780878556765619887563975773376214147266044056050106475517054712325913241413071554152075178537485501008972054330510465543742726530965353087699164893142208589364985133113373207776594171512818597650768087814062632943937577225872952545058738117065168057620328258011053206995080 - - - - __square_com__9 = (__decomp_com__9)^(__decomp__9)(g_2)^((__randsquare__9)-((__decomp__9)*(__randdecomp__9))) in secondGroup - - 90808627450301804963389149039007705397199657562646283222298142131503236324359106704689128539993612279209658019678302289507591030043580509302448441472871606860484101410179370704003884261797039742765584267879823416974955132112083640848106998339713133932744838848609966687066747337251542735537312192658289986820 - - - - __prod_commitment__0 = (__xLo_commitment__0)^(((N)/(2))-(x_1))(g_2)^((__randExp__0)-((((N)/(2))-(x_1))*(r_1))) in secondGroup - - 26423976797407536978878044700983359433070430236372504643811102557500064343282760383638538367984705526274161781408736828880901548063085123427408869873879852559018013943743525882309134095909915397829625822552626304892180700774044447639999266916194761201545450729240637017410924800770053501552359160505652560921 - - - - __square_com__7 = (__decomp_com__7)^(__decomp__7)(g_2)^((__randsquare__7)-((__decomp__7)*(__randdecomp__7))) in secondGroup - - 75640200102878653128865799068288504798419381948932597716839734810798394622364381369302792879956758267628972347438026181981134968360840259588805584543914418823694895736411440664694379282353185081036367303142463373305935403967896866385805585809163051279020471701958868121518857754410239521175837952555799447545 - - - - __square_com__16 = (__decomp_com__16)^(__decomp__16)(g_2)^(((__randExp__12)-(((__randsquare__13)+(__randsquare__14))+(__randsquare__15)))-((__decomp__16)*(__randdecomp__16))) in secondGroup - - 62993308593983530140620526235739930681804080921852909270091138177421864456086348938101769469578404965996434463506291689573027306761553561567833420748164163328799390327296294693827050472756381446457356650877988723784098682713637069592547909212746639281196648659648537672594332985413252908028663595995876999471 - - - - __hiX_commitment__6 = (g_1)^(((N)/(2))-(x_2))(g_2)^(-r_2) in secondGroup - - 107129287601946331249806470412316184053506866337201810726585481769980458875429269516117650986344811853321569279825201999871919051111293440073426890536894625013743006363769275692141566049099494479087839807987361027793178838766849372234775507899859693185733901705813075605825375061454170851692365869975583911343 - - - - usquared_1 = (a_1)^((2)*(r))(b)^((2)*(x_1)) in G - - 2100041378114660783666246467865946673981227402761326441199884443748471327662874901593986828271313860877881290931251030837269930910690913079169972073843273500606940898506364115724781833914368836678765731779844568907584579263949989596702502732791762500540553498134529783559609419727419447618999636232844267068759194466292091252592730908378729475931393163041288315708890529249153977116657235616317339407986946364104810737308842456587301101758347768571348451248557402609447316161499076989828291278823669557693216706416004212623913895379949568623674703131532334551677361675030020578392460759755536917831977595857499173171 - - - - __decomp_com__15 = (g_1)^(__decomp__15)(g_2)^(__randdecomp__15) in secondGroup - - 59427814400259287908909654467597923028798233661916532557198072350096439127224364630811410849247496037183952856526118392533962877001641556668474359805776414597382473133316347472096748457439246290178217759477499939072041426368024697828252811191277690009767472763406199721519211355555575017637394127325827914594 - - - - Xprime = (h)^(s)(g_2)^(x_2)(g_1)^(x_1)(g_3)^(x_3) in secondGroup - - 26999204700346411148415969200380363465066367647002513964582205594158118983168884993041826590795571356596481123480677616284756765252325528498645846677733421231787848751385126200012627513048017853036968392487433853051860825711774444624466584887199888598725307589694232328412865328197812372598367432411436487200 - - - - __hiX_commitment__0 = (g_1)^(((N)/(2))-(x_1))(g_2)^(-r_1) in secondGroup - - 50352642589570243789079921510206452103325622383518207175893462584073681990422100726205084489822608396611838279645475258938109912720924624784836392221930922966228109468708035173429384909865356670863470129787994608631658247929024419559944237335247190333141025057761774168009018011727745898218655149039997044589 - - - - __square_com__10 = (__decomp_com__10)^(__decomp__10)(g_2)^(((__randExp__6)-(((__randsquare__7)+(__randsquare__8))+(__randsquare__9)))-((__decomp__10)*(__randdecomp__10))) in secondGroup - - 14802021608910031669337934357997841906490434573741149297987567914745180925993673486620419799975099438456077223504687966704585911921901850776972509848547241424611283973670616840006973554078894952319634808346405578383145852154103434727486232588648796637122128866488546210866113632577058712613888712582137176845 - - - - X = (f_2)^(x_2)(f_1)^(x_1)(f_3)^(x_3) in cashGroup - - 64021382408920323838378684038649778113860844944663075157313674565339596919906921443481929083045348351313468395196427317709609596245645507477295154234711831796617290144578461400482352462842663866613620283342500591681753137563032728990332636153048958707297427148027243311867683862335809839336541546739412798909 - - - - __decomp_com__3 = (g_1)^(__decomp__3)(g_2)^(__randdecomp__3) in secondGroup - - 107332279385301540794122668419159004683153196260860730629037742151860275797081993681491657944739934213700847892586398440952753205641770285683012640705270696924380852870191879150200103743888960662855245681407673643060830381649633081907919173215074893308955548316333071174196932335041199385629088061455021154748 - - - - __decomp_com__10 = (g_1)^(__decomp__10)(g_2)^(__randdecomp__10) in secondGroup - - 20507610339147400435483091526363552567991429826016486889251759171141447703900767974890908517760235008986708880301959482966260938075000167864817718262971485686732321968316525288798792371190598191071664468106954094980818758795713955819097569217299056194141876690166830544410521768158313960420883464173548199318 - - - - __decomp_com__7 = (g_1)^(__decomp__7)(g_2)^(__randdecomp__7) in secondGroup - - 64434400254118453476074300771608511824044959858698526361824246673408342946381654825928292838618442425101173569082957628344497434605962500077190455100737127839857174210695116157801607259132120971251616541201647116741724522056690942975789938140011605101673365952452407995707052763244692915998715903759787839115 - - - - __square_com__13 = (__decomp_com__13)^(__decomp__13)(g_2)^((__randsquare__13)-((__decomp__13)*(__randdecomp__13))) in secondGroup - - 48791151109912294865927911025671041698764748349805578836698440624491812479322637385520795471126995769046175202907420271186028121637505755611201008373871029884241077285892870335079197058877453211253624599959885272400829435919622630711949889457158526512212907147500192765932388921483724611487261251751053538047 - - - - __decomp_com__14 = (g_1)^(__decomp__14)(g_2)^(__randdecomp__14) in secondGroup - - 77664039267665027652678976912797060528186334309034382947462180136970841745035088096779027277251723573963843864553148512490353566687663158476483536699077018100905078928647237046553965980546738643225845519135267832529788639863137901036266347780819959089926458557727081391728231364110240053585218378658242556842 - - - - __decomp_com__8 = (g_1)^(__decomp__8)(g_2)^(__randdecomp__8) in secondGroup - - 76969215606722698739324557019494690730961300463448363836273779452254279082489086030616201902406587564580682839832799052271877213724849762886177853653204690402808587144214000934300190326162132686631692035278719756746678098692712990105911920009284902060904924178585729456497292162045774711384206881546554187543 - - - - __prod_commitment__12 = (__xLo_commitment__12)^(((N)/(2))-(x_3))(g_2)^((__randExp__12)-((((N)/(2))-(x_3))*(r_3))) in secondGroup - - 51453469568845994813650854920033498540326832568485206719791994304050775042448224151759894871601910062083177013816360995442063272341869258997597573310500143960615756407969581514951264410800801070376282921396944712009664931514920852952992305653379557783414368970823765441731388769443943841815131734808820101003 - - - - __decomp_com__4 = (g_1)^(__decomp__4)(g_2)^(__randdecomp__4) in secondGroup - - 61669430484812839359397737039720852278392960080961713287490888238607315773728021304930084580548492130137994921240616955317973931300407357903851046142824362287206349680530429980602839503881794278339450336903755739433992940096500682765353874884401686886571019914255571343113182319918551150401707351460214983715 - - - - - - - - diff --git a/src/buym2.xml b/src/buym2.xml deleted file mode 100644 index c949ea5..0000000 --- a/src/buym2.xml +++ /dev/null @@ -1,2297 +0,0 @@ - - - - - - 80 - 160 - - 3 - 0 - - 93382980843653883025762890886083409827607527193228789447271856528752096544087553429050463606190265498596154000815557432733908395732443745252956186362456673161553823344975032912682070157166069852069336154009036924783332731004173119463490793794707861374357535971351736236154736002902486868695733220033838804649 - - - 4608750384956787750586686299568109016423255065583 - - - 300499248208397369986794189434567819278810363998418257225892040135078181463591359705233791759248242503724785750168829666458234554520003855006156457096482396496601742633165704234336134578845247386631417524024589960104791843311261137171973588036911160310836018925761778895678813593759531219022906493835276571347823275301202705007136515965706812095662355573308279870074966198819040965 - - - - 63447296788253831527218480440289397892044257009255410272079920451730819294518218924841010900980215440849012477865530932838640373451255134910718338549625834740892761039214667901815881279356172857515717789655130256948015398369815239323979708188645555481153882466621070266194075404485431397356905466768409403811 - - - 64210593795065989787125228162792507652072430805377709518428732435265776634854443344687484242939186484836850791635609404599555083555886051153001840512087531876489819182002920546988369055620093669849109413909343479327917851524224022965786778186261276490193862174021354084614576690858202955977871827691488303890 - - - 3276864041035154367971009891599921099042250640965471715399912386974521757979638762794647588344475279090427226293382273850594490824243389957425347427395635149383696863281303863523935657008734560609471744746346301256183724302557064051765298747767791224449179761297597259829848180730856342743976261555622851780 - - 100 - - 20608143248128557852008941537685678519431445627385094375560048479860614871635600284846325692708716111631691090974237986506856522522905612163119422996276485379636600277789706382906791135726073239030200641775835379878619752108002785312154237112478854333516952455024046991447536348767202608094152695175267415152 - - - 48151385748168609807808022573822312102541681704239401367002937809958953084938989628755874343082204979854384724809772560658441348440731915019871416765484905368185838552719975186452952054318129741711439379431294935851821824393857192261881463638022724824161343445569345148144433945714999770256148215480034295198 - - 12 - - 419431187141677126737531654233752058147693814781 - - - - 0 - 0 - - - 8 - 0 - - S - - 20608143248128557852008941537685678519431445627385094375560048479860614871635600284846325692708716111631691090974237986506856522522905612163119422996276485379636600277789706382906791135726073239030200641775835379878619752108002785312154237112478854333516952455024046991447536348767202608094152695175267415152 - - - - ((g)^(J))*(D) - - 48116991801485118486066998742321599295800538043843729622641690177000609923081499240218318198109120072376746344777640304235962478255687226005726716035580971567478252239469148804419253188481279977816796221118224797856305410736869825727344273492073564655204403532041566145337965542493350326750690947418265625267 - - - - T - - 48151385748168609807808022573822312102541681704239401367002937809958953084938989628755874343082204979854384724809772560658441348440731915019871416765484905368185838552719975186452952054318129741711439379431294935851821824393857192261881463638022724824161343445569345148144433945714999770256148215480034295198 - - - - ((g)^(J))*(C) - - 1270412417643046536246302763544136019674047357352646317144891113016943959378361528769935252943332090933830014337568261928975097817319228758487276514230292090976949733607830985895267364342789656575374824005139361969333697459552861233395706750866528732981104440134104983525068619207075562356465343564149651843 - - - - y - - 64021382408920323838378684038649778113860844944663075157313674565339596919906921443481929083045348351313468395196427317709609596245645507477295154234711831796617290144578461400482352462842663866613620283342500591681753137563032728990332636153048958707297427148027243311867683862335809839336541546739412798909 - - - - B - - 63447296788253831527218480440289397892044257009255410272079920451730819294518218924841010900980215440849012477865530932838640373451255134910718338549625834740892761039214667901815881279356172857515717789655130256948015398369815239323979708188645555481153882466621070266194075404485431397356905466768409403811 - - - - C - - 64210593795065989787125228162792507652072430805377709518428732435265776634854443344687484242939186484836850791635609404599555083555886051153001840512087531876489819182002920546988369055620093669849109413909343479327917851524224022965786778186261276490193862174021354084614576690858202955977871827691488303890 - - - - D - - 3276864041035154367971009891599921099042250640965471715399912386974521757979638762794647588344475279090427226293382273850594490824243389957425347427395635149383696863281303863523935657008734560609471744746346301256183724302557064051765298747767791224449179761297597259829848180730856342743976261555622851780 - - - - - - 5 - 0 - - g = (h)^((-r_D)/((t)+(J)))(((g)^(J))*(D))^(beta) in cashGroup - - 83035272003659843983823393449559655350795004575870101781475424993653390115331692661998981595364643289455624063825615950700211714226268833843497359391451490192695039772308052240024471317083758176678158260993155618295046040369342374890652619999067711202556631311724556797443809522905752556487801234347469725336 - - - - T = (g)^(((sk_u)+(x2))+((R)*(beta))) in cashGroup - - 37502579662144231340021873782925119550587929579622574357130777530523108342530141192582794569777196161748034928393192004307282616822148766047135259262048540075100671549320567835687521948283322717830195038647289335706487232891139372473839502737695172160654234315755408526020071671132112920253737294719083135190 - - - - g = (h)^((-r_C)/((s)+(J)))(((g)^(J))*(C))^(alpha) in cashGroup - - 65207975631293138321589542369098077016056651386934194411112748479930266629902554808805750009617025142736173817235760956640000960262341334798778382939072773928619497945890043014534972222880793966310549316621313530590374082696941581094216735461598437284476410879718437057389358073851493251320142472243601108082 - - - - S = (g)^((alpha)+(x1)) in cashGroup - - 90527243382016317980940094510401707184198855787344093597399310872053301947996665666306976136278394426648906378990451923169800544709071889797567278822961788780113943746946900841541877294667768907932596735832088694723365861171784767891720111320937252110447462726705671888794307782825270321900270864536815326117 - - - - y = (f)^(r_y)(h2)^(x2)(h1)^(x1) in cashGroup - - 38725680430546933012342477142783227025169318411227530453695378034919148359790147662765636080180571017196444836246900590415251878022155698006299451672895006192567106293014769645544567903490008395531549752146899491643896061709091025732318462895809756679489427946207968570948111963589378284504390931999094491816 - - - - - 9 - 0 - - (-r_D)/((t)+(J)) - - -101196089766491177940272055921393424960351508788942331789033578727520707169349096668188042642885630531267681531346121369900664054929164544819618 - - - - (-r_C)/((s)+(J)) - - -19081418505643055225549794103652584937385334840232317445287825918607482270095265022641458329142897251764831022637844414761691048219712448127050 - - - - beta - - 163357754698871443628744526364059482838094031604317177438831395464750957346417015396909661673438 - - - - r_y - - 42828554819451643032306966449309974438107341686373171591066069676214401758876050606647529092353 - - - - x2 - - 36491209866672054163579551383054129999339215076623855915079262767635160849827650863029133447608 - - - - x1 - - 23619193800900482760561021122242297602027070935156451820187487505859953296207031629781078572173 - - - - ((sk_u)+(x2))+((R)*(beta)) - - 202008426349750664381991157701260858823344514453714872349324723687038068884100278442491627586625235142476224005543428671504601103327231763289226 - - - - (alpha)+(x1) - - 218959471108187986520893550610248570439052177304106607282456196126795930201896376762688349946994 - - - - alpha - - 195340277307287503760332529488006272837025106369758325329107152843966111319854190463233925582166 - - - - 0 - - 5 - 0 - - g = (h)^((-r_D)/((t)+(J)))(((g)^(J))*(D))^(beta) in cashGroup - - 53945843214081887230506825685162514221944851452590973433147320105768347799035010333040104182762421540976644457898523154200390719416111152133906850059276116624692455403920555815325946146027238316284576081046322930997100925534589898400045746221732607763907326046366956881978962788748138738898197865947329746712 - - - - T = (g)^(((sk_u)+(x2))+((R)*(beta))) in cashGroup - - 48151385748168609807808022573822312102541681704239401367002937809958953084938989628755874343082204979854384724809772560658441348440731915019871416765484905368185838552719975186452952054318129741711439379431294935851821824393857192261881463638022724824161343445569345148144433945714999770256148215480034295198 - - - - g = (h)^((-r_C)/((s)+(J)))(((g)^(J))*(C))^(alpha) in cashGroup - - 53945843214081887230506825685162514221944851452590973433147320105768347799035010333040104182762421540976644457898523154200390719416111152133906850059276116624692455403920555815325946146027238316284576081046322930997100925534589898400045746221732607763907326046366956881978962788748138738898197865947329746712 - - - - S = (g)^((alpha)+(x1)) in cashGroup - - 20608143248128557852008941537685678519431445627385094375560048479860614871635600284846325692708716111631691090974237986506856522522905612163119422996276485379636600277789706382906791135726073239030200641775835379878619752108002785312154237112478854333516952455024046991447536348767202608094152695175267415152 - - - - y = (f)^(r_y)(h2)^(x2)(h1)^(x1) in cashGroup - - 64021382408920323838378684038649778113860844944663075157313674565339596919906921443481929083045348351313468395196427317709609596245645507477295154234711831796617290144578461400482352462842663866613620283342500591681753137563032728990332636153048958707297427148027243311867683862335809839336541546739412798909 - - - - - - - - 0 - 0 - - - 39 - 0 - - __square_com__8 - - 68090802429843121154596278546065850456186532118805075362135997777912354236289243926784710096524736332658341530636111949790272172790552532711560050674942382975201790783550515485915262454382204281168959132555697253936378494719218862046646135104976348090313868387541051861214737989435103940817126229238478910595 - - - - C - - 116795643426676382831694309576866167539252173250058079562825834505908602551039301685394929502884813122838928069158431738480287613065742694381186425038175318237746923614572749010017026753973912124500193992428841438583649659040505910043988364109083397842678683018810795203558875765086342683564614936946244517337 - - - - __square_com__7 - - 75185679502637802629550083976612303171957913163214857177048981659755052739029297258724611592143882072319458789531826800333521219616294192848111176532677269697393450882644616745256730524929581383140612885071428761108695699599326338284625805063551774979664256306879770945073465937544186267814919396701131860991 - - - - D - - 22977591691061841892020922481748611752747807939003399325348132414592291838775492915368496138552853622571818366012816166761085112427729672779128131492478950268429678989524688061554753317076390217653971583504033571982511133608577199093143414129407272286894874472397729879497671207248255947472912609957553272412 - - - - __decomp_com__10 - - 62471378561320306425312940315261410911905020182973886990311769662202867577291345661196650003821211971463623388726893453555836224624901576429138534284961304697406958715301254590216252080548134802869336440927432138011990481772151239527117896611169594358490422139110081010042457046888020936750468688350640279919 - - - - __prod_commitment__12 - - 47547821144661884583583420379280189705095036825674642249381896854274545180636873107930841933757061970926497261100345571849857093392026574000968811152675140877017785783730436087131047582727531720378950080376073268681436665410010754331395097710318737065669875068537696844175906423193588853277712643942640913025 - - - - c_2 - - 64210593795065989787125228162792507652072430805377709518428732435265776634854443344687484242939186484836850791635609404599555083555886051153001840512087531876489819182002920546988369055620093669849109413909343479327917851524224022965786778186261276490193862174021354084614576690858202955977871827691488303890 - - - - __decomp_com__13 - - 114495945232191548444058546390330134844401219213459075726236032147640730143922707712571567906248994654956214459878052164591070959445425198257322434980215204008815279290510058123443285914894549210936410767467971430899316963895574710213276930100286168259176743359784673345940714992345304822212820134752885136058 - - - - c_1 - - 63447296788253831527218480440289397892044257009255410272079920451730819294518218924841010900980215440849012477865530932838640373451255134910718338549625834740892761039214667901815881279356172857515717789655130256948015398369815239323979708188645555481153882466621070266194075404485431397356905466768409403811 - - - - __decomp_com__14 - - 63947340859660559351535823227798192209333891778848535048841114358365691098509039834990451518134815937420358759776104252765824959658940394411663757609920747989929317000411546789652056791375385417065928435901907824314231083781078206129543874901981183276266086990056026933268600692565819167940943528654285574511 - - - - __decomp_com__15 - - 40943917150996918432221172523036129816482720221240186249393877175241596249619953634828097164714625418792585137159627392350595887775580212423542268045097147535017461781781814328585595277857443911188541502189817199338816773728915643926515184811436706650143370693279481474661299193653787907255668445638136003610 - - - - __decomp_com__16 - - 100345678957490168945589561762563076441868163991675928763501907449035443395986238119423913240309390545663125208326933807676722306449320588172738372771480965891571818832626314344583622501613381042695066058711488806514842681818132191217406834830149846478698422797003796014336407574374780471837350763880082745709 - - - - c_3 - - 3276864041035154367971009891599921099042250640965471715399912386974521757979638762794647588344475279090427226293382273850594490824243389957425347427395635149383696863281303863523935657008734560609471744746346301256183724302557064051765298747767791224449179761297597259829848180730856342743976261555622851780 - - - - l_x - - 160 - - - - __decomp_com__9 - - 70208924618467450905135242550415892998273262370332452493707887106074407136233508611930434877185661781158331875182717136637197237441488631479837665661701014966882298622864489521771318052189006860102542892564160866411189282223750969291260144297873599680367691286589083852364495677299799917392215366203211409764 - - - - __decomp_com__8 - - 105376404714684516635176280402306007233667691810919371045636140569131845692782591230850954863657195277003393022745454930978427063510933759817647417262547546343470042346491896967764612902749717465351561535425462240145358304439887363146981910618036628510343971299564802340347641611942867423524023204747154176324 - - - - __x_commitment__0 - - 66062880983434696568672916992602080138928522534816369199017661412441084207826468745883783549726295864053537681589408086696972361886600128055125373426207322129059472966559671135948075775018688947977518303411812736460320083459623303915638253068541506751726322405604538835062797583375993259123897717775758044777 - - - - __decomp_com__4 - - 51481268268429138498568413237237620617086909194919869308656146798841168668034792860838170223429306138642443309085046421755511196350050945432846902849921460431309318204337022742972883411446965375034843290987795636643184392038304741414482051732402096873090284499880951666881175534390465582338710481656523232367 - - - - __x_commitment__6 - - 86560132318334860869592245351417926891268312363159067269144545776593215013548132645902489249417344884681673097029098433418604300467562598959845331005628473408363733242864092391067525627844375665325365397401846951128351553358073467102028288328027624152036800313503503333724747415525469283216378049490107423950 - - - - __decomp_com__7 - - 2081623065337694385825019604779311941099430972442422051826519792969225490581702032074855960532167409145423226127484489842480686172890407098097780609318993589105083585304710402991286319718729587842186516713615102481395058920768432244990709184316497757241191353798925277633872613418788750853839338023423857824 - - - - __decomp_com__1 - - 47322164621864675342935853830698978022340958435031429889667367296893691255373753838089918994613535837892536912729051124393012651566850058968143534468412162462610993177315458286927949709559001261143144821106137089518563429602302437500621176961031970723038388517899740748663337597888348798601863076445823028435 - - - - __decomp_com__3 - - 11178951957421958381406936852358660736440345834395142327839359302717749979959758538303927107454578683647101878022976222668834503521025128147026722691921073554532451362739079459808457111041735432292331684729285533541324105469069359533839038847549555012124784259710958460230876797711979555582711775736130972286 - - - - __decomp_com__2 - - 72892728140920307970501795209662427283916378606939424672002137306084461234181884262469632036121003053433014672842300239828023611442134743534710990528974589230422226475433294797096737657266083909520744849085329464218899398008103288802905432971980577927226046819667219336562459172709099063818893562678639522413 - - - - __square_com__15 - - 19147132948510115820097758734351704451757009779468930969709965731963345772144694763481115222416929041121388212920719879713425670347230849797582683421848326727929258186744736965843406053254444813227296385999280129330892961503965999603131598692924483455997155439737834422985079598372569664823433858551695565852 - - - - __x_commitment__12 - - 105781607965992601232751434381441303964315275815150927942994886239783035950957523305849841771865908865173262770416520455110671930319088060494562741330852481723910337188717914018754777494065558413610216748104151305022615476495834509121291550265893556113319149246223177282228927139175902634994343178981627195203 - - - - __square_com__14 - - 39081466916364508828571481648050416594197109770734211013566628615766674625691215398493944148295011855955916254154429457778956833600636504095334279898228708100739153599317874914657784746630334989539972793408239913812669423441435935628405945011293707234464225939560620530794651909362984814304975744256014945135 - - - - __square_com__16 - - 114751759908717262249383415030228616842640974322218737878261392918496187484836772902942545716544464185098666689115812018866232104802741046831999104980858744235787081525817381846841513183394547713457895400234772671465009570956531263643065753499979738709158652886849695450075286543629086516397445216616829690610 - - - - __square_com__10 - - 78167912530220575866124753500839496913747093277702013435066471711509282083628139471545493199268484152911913791630719468865167723826922360518809388092738260346245057691783122131101473453326494149522277355095725768689432195529319448514996933127049066130953275359129410823274876682797062851406676270045360123544 - - - - __square_com__13 - - 68374612062087045119291922721532825711704677622901121794101481479627994036334230596674823310950258722322081153185499789031947066882304846607240923171688332013485383367372589074014437921503847498756821931052522277478550362783044175167804369557281386539574355003148651871136185751407309768450544194980520711103 - - - - __prod_commitment__0 - - 41368258637161398274328077575433341235740680528703911040228696262632893419562869846298704840257551585931148514432646934060617173179014146951364710796618420432683897612188812991937286846010074475150064557084579564842176473642256174017087761633336110629093021190364977101152131546841559214948446139952632013702 - - - - __square_com__2 - - 103595340044473277304103375709039958000514199291191483309708384525694793134410384187871357422690101053769730047826813124376354614392025541857108380630190615760798802100322821270414972877260992264216599133404540643444744918762486026597434620050651856644178224858958068492516200642594922849153826156322630216367 - - - - __square_com__1 - - 40823178169358092177692959522632551004824987609486063178593697386081924501780237363873257473599644669654847485571268976983965453014363792072360958827128435012250595293698014019433981120326274193486495397994524021643088430626101576477413449857637547643820804495068963973550615451805664839699982129442065930467 - - - - Aprime - - 76001113973766759072849186217594532633493526241522288676167261930215597824496341910251698389304649101736544797012947103650695169326587242323512657904025890288410057839862047981976667942478261646145990526121528536903403825207019989999418526447794994268078727884655371248062949264989747170175128951041878580985 - - - - __prod_commitment__6 - - 32199717225516132282922373362969469890264406520292309972158713671125413781875010987521616049389247554581107686915474254258759672579886274462329243501472354305337440131659016412499934183028256266347358913573259968577484929958473545436624914885179389723732507955701710365192155065458302291793485015720725326186 - - - - x_4 - - 100 - - - - fCD - - 118525390843816376480285979766799565450586782453638400257086372366221044741608050718604893268798392454677795906614984078286136985474193780753206312087269866414648136791808037291837287925625131057695121613464906255488570256073262109675470250675683517486492413204214755873214169369784690179482935437329839700206 - - - - __square_com__4 - - 96327237170242568844083235531745770584583935209001907135727315496715916683652273048560041252626982032523619298196638241021920260996840286922080094639029697476145515873715835783390164922009762867238096898575100003938350393920553027404447272804069983841675559421181211875714844419183536091692685884423859621649 - - - - __square_com__3 - - 99702052262166209186577885116709169909339793303536147424238544301612198731525673960957235781558571751679853965430490013831970436868868950554542206182831838159000946444427010417343058629153905471211267287787599560959887403032945287337311142273673386698782237870699773904934054465333638863504206931874173411145 - - - - __square_com__9 - - 82433694821610401864255702944918954428565868518952753237647527628836409236801467283841518069140957938716640532146162540985874034077105403961404885069993522450665662366776443684710712422199515514886690014066865800408395873042360018956185012916706381723120685478487520821390201658828080463923357164243345545262 - - - - - - 35 - 0 - - __square_com__16 = (__decomp_com__16)^(__decomp__16)(g_2)^(((__randExp__12)-(((__randsquare__13)+(__randsquare__14))+(__randsquare__15)))-((__decomp__16)*(__randdecomp__16))) in pkGroup - - 26390583335579898599681478985420079458894653474362956556638292354435728522814204905016046888777655239141454660488411092354607619502433939662882775690040139831531110015783138237841180619626631644275611967770909566329241315594326741724782623478893841982601057874019171119344980868519180586269455166418631547301 - - - - __decomp_com__14 = (g_1)^(__decomp__14)(g_2)^(__randdecomp__14) in pkGroup - - 14662642569308050851427705964736588078381017220026248893602810601506821416100574840667330957203950363899042734529667531731714714406940632087032060476673483754384819706589623829302043769232843250574976462874643343515068301183043900351964003441948229558395306374278657102566691249206195546802644182347688667529 - - - - __square_com__1 = (__decomp_com__1)^(__decomp__1)(g_2)^((__randsquare__1)-((__decomp__1)*(__randdecomp__1))) in pkGroup - - 31526080946381536129193424242276710975906787192244885970418060960617420670851411954563056194378493301374626052660274485473534753815474932152927420547687475467866241363848750908329660939355035692135930496198007184665343889787669594466607469562645423081725058410752063403913587502192845048855946589931635222763 - - - - __square_com__14 = (__decomp_com__14)^(__decomp__14)(g_2)^((__randsquare__14)-((__decomp__14)*(__randdecomp__14))) in pkGroup - - 12194762109238238403603396504209325643513354995634203844184621496411123007416646402488373176033842992356462760984155276286965495780917652897031738874412677848874622010177623732308313836743266406858500177614346896358180517828106782665641458536981618124310542563287461085777823926845096764324110399111395066737 - - - - __square_com__9 = (__decomp_com__9)^(__decomp__9)(g_2)^((__randsquare__9)-((__decomp__9)*(__randdecomp__9))) in pkGroup - - 117345314514178744193522046115645267668254106232854626419837764713478491775578990952020924904332957223398681865459105253223293745299920667949633012951950229786991053106437378447081505152945833944121050095862526463694514624314154959042505628191052517508695387061241202516782845817449768441732994462434223915278 - - - - __decomp_com__10 = (g_1)^(__decomp__10)(g_2)^(__randdecomp__10) in pkGroup - - 99848509509553636414080979568546526052208574802660345486906955008473779387270805644591250755534493648436267813469034102894637531043868833173944148072010624075014596425505777341328573556524938343556422329212676048173155255525211970918217985367294693781480532728272939115500748092593792156695425004747747642313 - - - - C = (g_2)^(x_2)(g_1)^(x_1)(g_3)^(x_3)(h)^(r_C) in pkGroup - - 37832940283514516779976914315411834990127574260375850847584353285409555270281253864870182837179413815071663786268425321585273736631339816800156106141873866953019824059446323908352697215811356289046295439077741270965797287572293186552466938000422410474479828823218719257579983795868706940480263615371950667802 - - - - __decomp_com__9 = (g_1)^(__decomp__9)(g_2)^(__randdecomp__9) in pkGroup - - 84184289410069308262187008577953283875476152995806429510438511178653317639216907043019497752351897344408933105433657996203505579138665255941083923145926706824017105123429713457821391358400753144261861312693755293955935357750805084573744237072999106300068408293894372977875108697949443649701814302887644087369 - - - - __square_com__13 = (__decomp_com__13)^(__decomp__13)(g_2)^((__randsquare__13)-((__decomp__13)*(__randdecomp__13))) in pkGroup - - 85971333759538104328401163939485409260396046038821329863321584633261298963463775139160811716300712794857106304089194525767792139028122491401760778115832262999674428283513753152077935951810813717242006889745322808400291701104601794669852468056382883151494282881058378491107108257264121962104702983603478586776 - - - - __decomp_com__13 = (g_1)^(__decomp__13)(g_2)^(__randdecomp__13) in pkGroup - - 108799938544474863167521384371062310168580745191925631547756367105899531156576375517516270927762446809748492537971473053292208467516613214913675412160033746973546510678584092964298460506660722036612312463987639994287448110612006079151541123731511182164612976606326358960954582866631440466185736263475863587783 - - - - __square_com__10 = (__decomp_com__10)^(__decomp__10)(g_2)^(((__randExp__6)-(((__randsquare__7)+(__randsquare__8))+(__randsquare__9)))-((__decomp__10)*(__randdecomp__10))) in pkGroup - - 66420575384170336612674926664278673295438923944911201893384575124063747174804650567374078831949501850066294807249734429810917520609992690077825363925652490408669655721611558858902040252583053398937228300502593071472961949735688567750514928430747041548666893480321050277894809975877676591662389851755125272695 - - - - __decomp_com__16 = (g_1)^(__decomp__16)(g_2)^(__randdecomp__16) in pkGroup - - 69666014754733024870554428706034181758592755063736220849453363388045765836895957484212737121426552523151772814160360565920857475055058670682067854889815820070225455348116497734131062299237957534909554228334360314795774290608559604035736095426880602975747638255926358402548240284913441314501965605024556950136 - - - - __hiX_commitment__0 = (g_1)^(((2)^(l_x))-(x_1))(g_2)^(-__randx_com__0) in pkGroup - - 107509211177288675250625241906976934240491227049563891885763222725128233408817319968420977078854493218827336523129876583991322156496681270367057391548284427351191084115097654986875255874234290602248747133401943378205750796178690914318092120762110820378332598998282279606155871353213042960545300760505319696223 - - - - c_1 = (hprime)^(r_1)(gprime)^(x_1) in comGroup - - 61104582867357023348920893091420884515898759432706208952695197514626079170342217477041021630805849312955061084139928224071921216697810216545373096380666325021381592697254360822156453387569786889143567567618387653962006814009338998287113961777874901662379381032162583837866490675862682260300784651145873005904 - - - - __square_com__15 = (__decomp_com__15)^(__decomp__15)(g_2)^((__randsquare__15)-((__decomp__15)*(__randdecomp__15))) in pkGroup - - 2838439044123557311904173430007720697693328220708357592335170536631834246732443267344532197864807644930943185368635884310876288143454518441103473900983829361855967742026580917214529987678749246083253343379232174566014656311981591721368337079208707499154047060758045232403768044807626039547154662241746533407 - - - - c_2 = (hprime)^(r_2)(gprime)^(x_2) in comGroup - - 25736992450040900560097880854357428757948459785708873987986712041898623311003859715795779484130292951355116422732876033063095090034996567524788457941924092363909565928455941556409980415095559004820618838438465116175766245170344788787857181380699989751445158856193377037307233240865965487786165792137558573439 - - - - __square_com__3 = (__decomp_com__3)^(__decomp__3)(g_2)^((__randsquare__3)-((__decomp__3)*(__randdecomp__3))) in pkGroup - - 1678182393170036513033426398280201162318427935794209677639286305215984069115144257666255311561824933761836274071685938932684809480054187094243480412871395807405638461857490046433873761288769057477167325162642516837162604410281075008587550181327888506368479235326287624856866544166336196447133421482740077948 - - - - __prod_commitment__0 = (__xLo_commitment__0)^(((2)^(l_x))-(x_1))(g_2)^((__randExp__0)-((((2)^(l_x))-(x_1))*(__randx_com__0))) in pkGroup - - 38116845087104563123826073689109485453192533322544080391800894431261802318971225885323015964316579832666461813734986983518766767592534865716917343737043092282160445918262869931139915059709740496454183124559299626613673525649043747912997179873171353446780512965740112328916257026054589081092712791798850411701 - - - - __square_com__7 = (__decomp_com__7)^(__decomp__7)(g_2)^((__randsquare__7)-((__decomp__7)*(__randdecomp__7))) in pkGroup - - 68078177125313617236442945985603378634851879005344067600139753150758612108261257599562937491623351161397270570560162281613355703903967600103675934620873853188872514655607227064835130886773848420632314530523693072888104331199638719560415107257778757624065845283236870133573357358533004533431603354818320999283 - - - - __square_com__2 = (__decomp_com__2)^(__decomp__2)(g_2)^((__randsquare__2)-((__decomp__2)*(__randdecomp__2))) in pkGroup - - 77597679271880971326072521470970922067187048209399485386708835665604608521866661335361085693058857463515867723502829059585632477320441416879325124193676623335922877027990530462859419695796660390074785693602744952174805782795704834063729264540716220659516347542321064162719239067120924875447822663906493778675 - - - - __decomp_com__7 = (g_1)^(__decomp__7)(g_2)^(__randdecomp__7) in pkGroup - - 68286853874243764428756262087927332447185305316632050039446671768977030881833915628355289511457956791764309185487814949701424808694198734277560782398371866603993781116312343352112064669101006981283006498665461743753301535195194514516595733403150036590560676800235549165938199625045418768465846074894902261503 - - - - __hiX_commitment__6 = (g_1)^(((2)^(l_x))-(x_2))(g_2)^(-__randx_com__6) in pkGroup - - 110858657232808306267309217667788164936899478627991640492245222054604941746398057871895037969267129992680038171470473608405925959004713570940595080650887439933128687187688952979498322254963130468657457233274634939320049013531130588845487477632135559811288677600883635722409379497474967477121030728858591312381 - - - - __decomp_com__3 = (g_1)^(__decomp__3)(g_2)^(__randdecomp__3) in pkGroup - - 7419558101065402583529805546007310226808798425365283697259277698883780996564217013982164357476869156725950820995449382471074713922484059160533419438107091421928916078191092582831129968566203533457038530285005531506262611486240387876089702383207192379494011421217146512445715707976715421679131909143715933079 - - - - __decomp_com__8 = (g_1)^(__decomp__8)(g_2)^(__randdecomp__8) in pkGroup - - 79615786373756357365250049391541409562327949623224726490644175007864912906648287170569533555022240302282079002211452670390756379311959232223396175998100996066354833450524370020638164277355466056435775889431066761414978653934458765291090313675307312824451301887351597040137721090968472637665157675254133163793 - - - - __square_com__4 = (__decomp_com__4)^(__decomp__4)(g_2)^(((__randExp__0)-(((__randsquare__1)+(__randsquare__2))+(__randsquare__3)))-((__decomp__4)*(__randdecomp__4))) in pkGroup - - 68980957093049167161382626046242111723650697331747993009289200135337557922440496209981581124506136826371408374602374614319187302675590228210703164253265675455359690141416075263779290889581433473821596059089231800155731964783879508338330056279414257645476960241645374276752415439075642233214845534515841734571 - - - - __decomp_com__1 = (g_1)^(__decomp__1)(g_2)^(__randdecomp__1) in pkGroup - - 68563033983905973099796880234381856811131401251959528176324413735778432706102081346571826178265551993646873715249756871227448486370587478136837809836900483244051901035817080586168494242467745428619740218897086190149041386983394423429620330172865118585417021790284334361018334591858574534632013875929751001547 - - - - fCD = (h)^((r_C)-(vprime))(Aprime)^(e) in pkGroup - - 12948520596072865373813894300651206689330548681228333053188292985538809393537442502667528356909003668139004043937132968923951490114565997755905099896769102801913064883324305738607211276450789231588936794047924273595199391287164565123749928116426037816929140089755007722396605870705067618793672715846363931946 - - - - __decomp_com__4 = (g_1)^(__decomp__4)(g_2)^(__randdecomp__4) in pkGroup - - 69550396024181007460224580408938785444050391622225348746847709581230857185633145357495826331186328499466157019211746645522385851152687785609836587556730771708025332391171057945990821655329269326031764063639025195958108661715322484110274765283555412611387746469928339825117241357566408365216330562060371348994 - - - - __prod_commitment__6 = (__xLo_commitment__6)^(((2)^(l_x))-(x_2))(g_2)^((__randExp__6)-((((2)^(l_x))-(x_2))*(__randx_com__6))) in pkGroup - - 37764748903048889209664831347239015852539949678374450108952865316616668629354354861236176649054333681732369660048633887569964175710046790877176001171135127497448828724501491339728807780539796497891190245085080119996936357618433598304341665667613677606201173619868053449999162753103843709885823012505487839783 - - - - __square_com__8 = (__decomp_com__8)^(__decomp__8)(g_2)^((__randsquare__8)-((__decomp__8)*(__randdecomp__8))) in pkGroup - - 109456396684676572853152115654551665416349271748992176698671564292917290048120820147774519871660204594177168098532138600887643970264590032613043315423354467398106032526320932353334874279045900988354428874117609664269816849468631620692566134445768606998221870520969841635844550303595079876642968530496428826775 - - - - __decomp_com__2 = (g_1)^(__decomp__2)(g_2)^(__randdecomp__2) in pkGroup - - 21379371129224139297290692706945148145545210735689198633925201879022767761864491629804555866938905524784741031806163631074689225584499506837641268107943552104393116574583174469856327710366619370626044277163714981943539899877454012291064011160370754729392177237931336449112487627891853543609261038507901796457 - - - - __prod_commitment__12 = (__xLo_commitment__12)^(((2)^(l_x))-(x_3))(g_2)^((__randExp__12)-((((2)^(l_x))-(x_3))*(__randx_com__12))) in pkGroup - - 78443680701946902656577586841889179649828692642513814964017065188772699001760350156403017223378703847927390640878414585958234153000619878048037478920945478737437607037547484654326862235144945052512655323165997987445147208708135151167854492489324836219410002822015854698101243480760158689531896152545698575794 - - - - c_3 = (hprime)^(r_3)(gprime)^(x_3) in comGroup - - 67074675742873903326517619864568261538454005292156441858279893077536704441267812720977114211471695716249701024728458748329074276920786043739611670268833238113424369671157209195173875524973464280968907717816685047249858187077703522245859636109220851077866542253703876788076120955757207615352474390053702773796 - - - - __decomp_com__15 = (g_1)^(__decomp__15)(g_2)^(__randdecomp__15) in pkGroup - - 41632639223038109528168634030627036646936103594414944172017568460574573706173582517388231217138990241727741890441079192937119123862983938113413154895086405163123899763372085966195458447763869865634965768151328818086437398896657472483085427915624403892454825150830897736184034089532519439829991562729729909070 - - - - __hiX_commitment__12 = (g_1)^(((2)^(l_x))-(x_3))(g_2)^(-__randx_com__12) in pkGroup - - 84754852045579917117637876129037053883894485298146011398050553125605021504253122387117581627246936192702347339975660766877594682848007884225950982114280316396462797009354841329421786829341502165172166672901197459844730934241020798533853457363642447669543761749361005965208604616547199199995625911724972946197 - - - - - 54 - 0 - - __decomp__2 - - 167661001110676343973799974545632068089451226016308529271724520621120981895261856766445260428170101292628769769566942670967231407544784660199550478535358561213847834985442183448407813891827562538367261641348881545291324044894611638185085686554333570008744450217167209411746302993781296176108147517987862146016510945265543109731618575 - - - - -__randx_com__6 - - -105850254407514307400035961850708018182956403919014951115459226998409451729460039499663729273863700822316946890529734302308538452709258615856078190985964829986592690418060368812603191041538429236195311033452210158137688946451352484654214291922270588635193270241047311932629086007458030639661653869118329176890155721812424122554220693207508413382986495532506681497953904787625078031 - - - - __decomp__1 - - 191911214650319357824270434977676561247411679760484058656325450397953168225033341286981706857207201352552055167172316467424968414351770653746303791720237462158084596831961987150367865480504152139165709895099805189643786405587618423066884990678115451461627922924275093935146977514681800643067885459865929618642265953166854672394988483 - - - - -__randx_com__0 - - -106993832674046741090237024820986476206497204847182925863656581814389929009005432176990510604667250779739431803998314897767946534579407461219622564089304275302564913127136808595553160947126478668638004374095740905062623927309284899205009970633620770125129295274512960589236203046789455405885902284155598581591642295174923144286887908839670493437277455446472318864700613192208955787 - - - - e - - 126393994210685225645082621474081195450452546130193288314158768737255513977040757620891553088470057686137051830438250908777929294949089211896552797420653927959060593259626159083769296605508750978642672799828989515732319707635460393293254230311136009709460604616667156658382858957398999081060067848639396597186277792181679705521575814 - - - - (r_C)-(vprime) - - -373768587188344593829648782008178738330566005182521434618616108674184504180591384464656425399202568991491650765598933692272179077279647441021044515463345465041472379949433520245451978505371126649930708845237106744917395678990634394374018390555081347201125641826038468586127418780374122497271537324757119717222914424798335935657054626304022507099375786225554139979547752128538454660810092764933623262350889634218162606633599543029 - - - - __decomp__4 - - 213681806113994161735424079307215610320522786493862014880417520677201749301895640244462510242450278435820072512054334305724205876279899225286537881723160391482013411496635937751174533946937881822841994776472991295134155167895255492669967771521387717984231183012416258120077613719755649477880493789827039776296186829971312237622775407 - - - - __decomp__3 - - 194064835791925857978886891111608324646720344798798697179440315305848111582901910323225127191475710056774129498777212571823606854472382546049540638610084073356918179421421539292420867316067971225223678273626644525848075917524775622112815668862131710613027893420874035169387291723295327150009788300168020869087806739225036509369743737 - - - - __decomp__9 - - 133907831601030075304649748009472604922690749095206001355248665331098304507934928857867690499981988590838712254739974589902691198858737833733344152579692118480869238549183745537782773004868279738107276236611734039755124734976463363952264898327517111819936537378203889535465670182616235126583121355065312084528825661583787337706352802 - - - - __decomp__8 - - 122047098779100663973165572680215554132643556980663879935569194055169918411625995212375225248168919632437776688438003261824382101716438626719633520557291502062420833508427826923258590113096040280299297049218839671884713279873458359308689603137378040430621785605995513284743431480843486695397269988883092097192134238375324987430505325 - - - - __decomp__7 - - 184912719086286729756241205605778489519715283408351654193830856629957207283156965205737921045171271305537136067337388127800346526443796725878448454327986222333979158408447775839644572236920980047809156540445717299789464905495907458207312326193893556272262189579953918084437281114975266577524635675534165019662675467349728538791072314 - - - - ((2)^(l_x))-(x_1) - - 149096184096360282860044648653499123391648993212561715322528665247214573658742087736852695583468630513460447801231406736068151666291084733712889043088704955729805022309342266553271587912523689658259584650000541558579922666482261131767149191333811022664671718832105612027560275592439010914707534298006901323982631825220144338953378703 - - - - ((__randExp__0)-(((__randsquare__1)+(__randsquare__2))+(__randsquare__3)))-((__decomp__4)*(__randdecomp__4)) - - -1834926435048435539080220560572123802709133895403947918541243790410639897035866509075331799666060270668864931377800469946479962365143322703223086770680380256419907266587289370197958682134258422588529647819354631851637598618082362542105118803239048539917615396595976926264733405522067079125706467874907018577670142849691811903912170656261681594530406581005166181326567873531235649661461388082019932647381263 - - - - __randdecomp__13 - - 114311611460151436742600501661552135445551445434218679937701893064406955232115388323670637638109682887525028834343284809985324708432302867059528961727010082632534351161123954127053012483648988170567338861788024984159063255025991287514171089127926887748759037377893630523134989885101963141140650290119671057955835270964608833547607426124431725092803077463525954069992953406856457976 - - - - __randdecomp__14 - - 122944287354220843930765437490384645332281121786936637687612690285787780873558146596261346090208708161311984877178861434878338151753912189548421494136645529399152739455636327037576987110982310328742038413935558552886813185197766706010960571805489724444545840789819796569769143311756773073268374825510887244265498665078576548393802580106307409153442651801726759240641814487342831273 - - - - __randdecomp__15 - - 64768862603461263615771719385566106373462718694718710466474372186876315993170886430254977423123526418188749835079530540967053002026777227749911059209959160443832277283848805120909189063327728336442675411541015978786331505916964966586250497651276581856363671371103367897964489479382581565004080765876730044234441785909297197013858192096895780663757928915838382301665536346330393755 - - - - __randdecomp__16 - - 112784962310932608367002588166803184217475558298551919498865292029856889474889274944746828406588997605538389517618862870180512592184545449664462242042536584039300598750745650381200770736682933089518598306137620829482312932765353162237234078877675425963471055054595824536768882137470484686482682871561709532646471521260730212270342662733683742323281135549368412178163093288405086571 - - - - (__randsquare__14)-((__decomp__14)*(__randdecomp__14)) - - -161498641579333729994069070938689842377405637278457166061705692047429453233102948529689381821183433810430003830403666156150035157823192955523243297344980132243063940241193687286309858549382939767239250687215528625331717890762529179486012630936387375172538923483971230194172488231089400151453194647640087370949214826858930574393060034589468104299698272245062197976984075357407621759840629822042690871691424265101967766238476761888 - - - - __decomp__14 - - 132080840357661965256768574605415438793910287863790587672889187168689925364923028158594392883420402191202270619131063732228906875560605697720948362604763719893908754542226998450171468984648166877226256970228542286584540815150716725067103187071599923774530991257574048989845410266207124455469739825454264921310561979221230852691785583 - - - - __decomp__13 - - 216288369131662173863822919908196786751564687177366741797120144248870993626737297500382489186950661603350449122681061756290439294210943746655788899903837674208698950165346161359220687368048346846916422886609826286792335968100673188412018624269493188610410628411482123982582839827047694406950759255196627551994902983594817469552852735 - - - - (__randsquare__2)-((__decomp__2)*(__randdecomp__2)) - - -92952013223161470533241730596910126434198948312596013482001864697076035226867230632242814281170550522758220600844945117575318281822723671418351645934781186501342177654520873049951472744216973626039452205179882562274227640781289185581869908176643965721412166602463810371667152192176872533952141943056062721299235063391314167998385513906005877544584816458377417382250136401637681628783610892442887612226376334665593302933551385082 - - - - x_1 - - 186960620507508481000675032751251372835073338911747551314521709783564671985009249974164763571091229179579342020907622201614871586476712706269386966998191981320073424922527191432778231857219851176081218609210684138450455026833960725874485050087790998931017073442831327723038572600891238587172707611989048635862994704828425156949229425 - - - - __decomp__16 - - 167975322170475309679296695985035507345503831648755607658314923529946265844203490415144857098137987120839042901493340865649857165914689338051662924488988178511828221664325345931890140977324429851070602917854630023281023817336217086912364754687883582515883891344594207748908992672189758906604224632123881811584435317336527492121504553 - - - - (__randsquare__8)-((__decomp__8)*(__randdecomp__8)) - - -96638086106361973651416939171794280188786171352001416268819382645956873736990497360901572570218058852287359306920246044751097177836200746998832672780024690276007787730589888984287521119856581380907290547510838397032458504445452629651758789629942893249972575616841376042018906314910539385367475107233333718040021446896672581826728842930181224995324228283414297975662339558574738444905064601561783195603546111518677459399217570634 - - - - __decomp__15 - - 144740061694424128875207225560143971729544899062109778632466735018554787199213783562812431521315571106642909661846510017732149125661035925802627959155648413062638099137905856282480144407703578560269260051617421588421246084037145017042482600621411384969704422715617109169223421449422312348736129749720604958911861028394434456579062485 - - - - __randdecomp__10 - - 88974682322727688220844413654217331867417822967603456457150999947974155459699042912355503002237678555552846655748595151646981114084277107938848295964425445681517345057037371115862051750487790125001497595009420953370227668752302703038731140341642535592283227882104224917957897582703234514357195229640610182117486206526848081970008103056526683279894312014981674108460635451643516913 - - - - __decomp__10 - - 196517095214167851408637899067564439480460525639706539888359890689950271095870458391875788153771895588801629420315577873556996039168209714063442623926644195379272886037494797407779719923051110783948076080525667584838224044328218451967132465733434981239650230040825782213548330958875968089576535484931480102526799629414590406746531600 - - - - (__randsquare__1)-((__decomp__1)*(__randdecomp__1)) - - 91391210631978492215538970474692246263550773463113118317903132387208768824016525553113537574799221942340083079806172754921230183393841410281098056228315654609882714049456736304207881943714395295731421695818813353001715261253930455905580959226859224025745517060719834479676464431345708457453065422181165029542513573351103943526557636228271937809247368878810720904047106428147820791 - - - - (__randExp__12)-((((2)^(l_x))-(x_3))*(__randx_com__12)) - - -92145057745670273107671486351180090103584858594258320734092800405056748218716881952936615532436542768269813479275259170015693912322199419699934525599685559070620610768800371021334994791825244541178595687872992085743832367831463264646702317291300109389307994086638687513182886379443168886405531060268935749622677058665567643242529163763569171956545481424621050951847931442164993776403003475237369185736463048336591597636166231439 - - - - (__randsquare__9)-((__decomp__9)*(__randdecomp__9)) - - -216863024584153524531788557054117525037430073654038992662079418749752684325812181111665352109755488849966307027983661551909399328212751249769188604101909760540326675701855976173437966260636050138595874601003144005988919339128189307050299782692963784619717878762385946712999311050724790510825394482367577764200154835501929942183969009805947235503069930125006750148232918353962053572157315297015132076512231 - - - - ((2)^(l_x))-(x_2) - - 201820950362817029088508813579445070178562368461241506709277444450468729620697225280356520515148256151154543259467583722498757997890629031765723600984926416120526057482720624888109478334521918011587026696152956023800448790019121807993984000228167410190735659061787457767469617803454740713594830721874975015030040279631815083312415529 - - - - (__randsquare__3)-((__decomp__3)*(__randdecomp__3)) - - -952629809171179116913581549594604128094287387582197532980214334962213246410587906488464974357349119347130802594753153526363763490906559598856957617547863954216384078207531411933559765107215627224286012154303210561187566659022022397339325808745265064458578095122689689565577398565961943186762472603712233863069101757889807327599809990116181808147558902676519361734862152728199303829688194217635525339197426 - - - - (__randsquare__7)-((__decomp__7)*(__randdecomp__7)) - - 78590861751016347566067891879405744739397393882953565099989471198617337859687068508904767648555134638660650322464963209978374982031524513506461647540346200138679965768311566414394306765832804970108302485677700266746054267246798839170528086389158943834356148608232218088956527074611725846431336707026529772875688310998451644977291981176711234581151355810525071424791822403316632506 - - - - -__randx_com__12 - - -112258687608598990193580445000978093318890304392081845789526440398525539784770393114510774807418101333909662396429194136995696273682114454776733088433371783971619811634759127551973779918526243390935324259988193758982242612879722914556084694015315510855810443378592504639688448361603931942266131348212972706640176785476191327996721721249916522150955359294127605740459033965289421800 - - - - (__randsquare__13)-((__decomp__13)*(__randdecomp__13)) - - 87617305061956226532798798089346151016585760816256793201481805360014193185792346441718692932284935259789315630690693985155962642782158914279155362248015879820452289228518810744056957792635844529076958262366666913370170652857565601486203683851147275295852267684574067858672002996085944959067763233632373641881909158925632531087926236894553124624495562175691211833018328785341812639 - - - - ((__randExp__12)-(((__randsquare__13)+(__randsquare__14))+(__randsquare__15)))-((__decomp__16)*(__randdecomp__16)) - - -960081439420432775691678314804181809919435842256918861250912781644237665385618054855211404499878106565924897769912342746135903822197962281799107593127723195169101901775067028548436057974979555709608041607906385134248005633409589525145189051254305584392773204411069937353868281443946477826579984303059411838395588174720879567735600298496168049916533137923194689719979988794006227261513879588555461585754039 - - - - (__randExp__0)-((((2)^(l_x))-(x_1))*(__randx_com__0)) - - -25678928239570358638989635612847158148771208315811113047034978150623071749813755423083090499353773050600281193995912836344707065147243919387550149580372399492276025901534376079700538587958237221734174983040697719585701375396171385265160850364082033162902463690895988266079727353233739786828649032293895830453182933716970969616324321531895389885935971225322037701712451440356048995830733035551126655491009309254913618571164202681 - - - - (__randExp__6)-((((2)^(l_x))-(x_2))*(__randx_com__6)) - - -21971201571722498489469918698624182398563719841811003381639022824905195871258189573821086631345293545331465505588316062277433850605049684800485196911209340988586734236886614519493374718482727785843532332071579369573419265382080278132120608837042861050687548901263536024163631275671878951559584562726489842160403389240429170653696696850416984490752494808664301367106114422411404010424591263841486105769990725475721938399089309455 - - - - r_C - - 103239721388214548870696570935417107931907217414233310985345352222999415078840530240509043459904849933483354441865257157117649339120468753254078854375028792473803968103731805701322138834011672716559309462883371301225168819742326456208187023060170583795279526943730969564016422365698171406391390908662083577006668236273303506985195801160272670877461632867650844571743679618824393034 - - - - ((2)^(l_x))-(x_3) - - 200118792006104834296756390294938926139578232261700739609506985398442780941439391701844429138728459791125193278294310683676155921652546677284911113805282122383950627176276947390920240315703028385663505017904369587157927949138854706719629608324520571462470344802894669935160705607191959366943144383309553721339525942063336256993378282 - - - - __randdecomp__1 - - 66231230843690302281412615691263356189847483271642244980053905824817812259892170250316123052335822582299896541499458304607178539677188848688108137547173234689881583851750287119588763846242232623051494431575860253919763988863092727731814578986021968592530034178138488171904171375596233827392944745246195609825211649903575249038098583498797975152166232985399885555752429202897143780 - - - - __randdecomp__2 - - 115834901484945066022470098802362407083090250300079240366356185846169403534397491447513763400702188300646349276266564317822214436401705636960795459960620363251768273370235323157732381512971217894191970010206371263956440772279704334177292530839380460664579096646366517194535278711353100335140183052207385554924269169441130473477452994312339886245540262580337743024708149326979876214 - - - - x_3 - - 159040965511047404680501586050334865297075312353582026639824717551213932760583083852210242280983903758049299865224591222603925029484449615954146741160786541395784797884217042754211287498872629829497562795785151584018357359883705108826506575142209765940097108842392873686005024340701959748865072125138397502434097395370370700521147010 - - - - x_2 - - 196276845951651672155412760728950793056287070797307422262394120659831093345680195634202532397552639906796066245053180004112475032035924489926493164404605213427724258013738488905228837936450803276044126962814648989508046301485540577288518769459532201643859957565084660778612316206338124796487103817802721749829695590145788215309973587 - - - - __randdecomp__3 - - 104636372859816471237682966823326778363349442356298406584620522997542907826474676884410928986374472196759532577518677701543532721835500516824790429293841928139863372508388009965426093853856960215722785151631697977791711653149456414470368365298550108091777559570254219043280683804427147573840224484752538853218410865448408703254614103274176904959777212873860518512919584451866190108 - - - - __randdecomp__4 - - 78400662912832094848185223966131450679622366606970016358536494760050283148344516698438829922410504252522345650184080991314625080708112519258414424404525875799344545033819165534764596180100783623687877933138712849900521229417256223801152115074992788579424266887840626477996947915796374999215396023486621788523309629888764596940757092141755363062941125726798399671185112730604039470 - - - - ((__randExp__6)-(((__randsquare__7)+(__randsquare__8))+(__randsquare__9)))-((__decomp__10)*(__randdecomp__10)) - - -2288796078590694445241725661074176653686614887331120705106015518235748394404815669073938451402114665332663829722400610884260971356229184974038014624802587610922585128811013694019242302990641017599139246056553101804644828076042074143329880055073179595769140101354052258523840520615906292050056526367281269476803235677590671935109744233582478118176367631624171791353408562358310538098675978730377634355886790 - - - - r_2 - - 195959161521768948208936981534454537424454106473937041775839982407121324882796731297001024412142228535725458926784448670152823740069003100627124383598482324219300320607252185079119895028540245235849740797946450112644588055000142849740485482283288256117293977154909846524546738075874389925034177124170805507391437753721595723106842805 - - - - __randdecomp__9 - - 96917490829938786461734819061671072945666913102117703541684959504718755401880947712905324965783278560786292586153398613651126098256920709167211428234161054882899571188129854998128195952513054828873939543528413271222217808912451299040980289534249012861413241292218490840423216634005542897327585572748024763160608757431051798929696877570885783436863413282844765139704250162126396173 - - - - r_1 - - 177679253651224141329432816940455059150948073922400593645527178209301178283362407671172317230787280718854666421711987008864318947017289812445503417195099908395652106890907575085734682306116582393411701173406552261487832014675441690577079378495366273232646704332240822826114890310711914068113195672172759471097845945137268553543929191 - - - - __randdecomp__7 - - 67407178149980476753862169671947182012613180274479370600798700107789681981613611901125275793263673256436588042195662498582420333506725975261591789018999596351794986585675689945443091612750199561309319820623971645878405563430592998302093508725662648592831981416175345096018412120628983611879369868832153004049603715618778073633593868683611188487548302048891571762203688529065438563 - - - - r_3 - - 177819062441714692824864629999340894230689628737030224347236023841547341982492729892619326800924906248151479676676760477756923302070430347085470358934136190960663228178346745270853342289062822728476750736447717940246957254063745827408595295471875443337691444423955141033449095085286906427593884074269277527553837055329439192752975218 - - - - __randdecomp__8 - - 128720494295761226672753466359804551614932201102341621500514496820341406017542907401608755286865635382333389054941012149209634391113083722995360271189855941077449994157141832261871244757120957063419691040480145510510197625599919604326667066983094409775448197028239454382313313518702047365862773563414675105654005404329612847721483043723753432962216846739524293821850965876826236763 - - - - (__randsquare__15)-((__decomp__15)*(__randdecomp__15)) - - -262262263248060084984665289573174304661594546402792111057629585072373862222397772549921982850502728501871762659682221210054966677836327968963626370280021134177193843395042055955471671128443281339821042923566191532642331475841893013899510983234996791509043763017584048523361725448974385091181531797848029099615631408367961372027812472771839026736416758446144554712025468952685109489262478988342713704284378 - - - - 0 - - 35 - 0 - - __square_com__16 = (__decomp_com__16)^(__decomp__16)(g_2)^(((__randExp__12)-(((__randsquare__13)+(__randsquare__14))+(__randsquare__15)))-((__decomp__16)*(__randdecomp__16))) in pkGroup - - 114751759908717262249383415030228616842640974322218737878261392918496187484836772902942545716544464185098666689115812018866232104802741046831999104980858744235787081525817381846841513183394547713457895400234772671465009570956531263643065753499979738709158652886849695450075286543629086516397445216616829690610 - - - - __decomp_com__14 = (g_1)^(__decomp__14)(g_2)^(__randdecomp__14) in pkGroup - - 63947340859660559351535823227798192209333891778848535048841114358365691098509039834990451518134815937420358759776104252765824959658940394411663757609920747989929317000411546789652056791375385417065928435901907824314231083781078206129543874901981183276266086990056026933268600692565819167940943528654285574511 - - - - __square_com__1 = (__decomp_com__1)^(__decomp__1)(g_2)^((__randsquare__1)-((__decomp__1)*(__randdecomp__1))) in pkGroup - - 40823178169358092177692959522632551004824987609486063178593697386081924501780237363873257473599644669654847485571268976983965453014363792072360958827128435012250595293698014019433981120326274193486495397994524021643088430626101576477413449857637547643820804495068963973550615451805664839699982129442065930467 - - - - __square_com__14 = (__decomp_com__14)^(__decomp__14)(g_2)^((__randsquare__14)-((__decomp__14)*(__randdecomp__14))) in pkGroup - - 39081466916364508828571481648050416594197109770734211013566628615766674625691215398493944148295011855955916254154429457778956833600636504095334279898228708100739153599317874914657784746630334989539972793408239913812669423441435935628405945011293707234464225939560620530794651909362984814304975744256014945135 - - - - __square_com__9 = (__decomp_com__9)^(__decomp__9)(g_2)^((__randsquare__9)-((__decomp__9)*(__randdecomp__9))) in pkGroup - - 82433694821610401864255702944918954428565868518952753237647527628836409236801467283841518069140957938716640532146162540985874034077105403961404885069993522450665662366776443684710712422199515514886690014066865800408395873042360018956185012916706381723120685478487520821390201658828080463923357164243345545262 - - - - __decomp_com__10 = (g_1)^(__decomp__10)(g_2)^(__randdecomp__10) in pkGroup - - 62471378561320306425312940315261410911905020182973886990311769662202867577291345661196650003821211971463623388726893453555836224624901576429138534284961304697406958715301254590216252080548134802869336440927432138011990481772151239527117896611169594358490422139110081010042457046888020936750468688350640279919 - - - - C = (g_2)^(x_2)(g_1)^(x_1)(g_3)^(x_3)(h)^(r_C) in pkGroup - - 116795643426676382831694309576866167539252173250058079562825834505908602551039301685394929502884813122838928069158431738480287613065742694381186425038175318237746923614572749010017026753973912124500193992428841438583649659040505910043988364109083397842678683018810795203558875765086342683564614936946244517337 - - - - __decomp_com__9 = (g_1)^(__decomp__9)(g_2)^(__randdecomp__9) in pkGroup - - 70208924618467450905135242550415892998273262370332452493707887106074407136233508611930434877185661781158331875182717136637197237441488631479837665661701014966882298622864489521771318052189006860102542892564160866411189282223750969291260144297873599680367691286589083852364495677299799917392215366203211409764 - - - - __square_com__13 = (__decomp_com__13)^(__decomp__13)(g_2)^((__randsquare__13)-((__decomp__13)*(__randdecomp__13))) in pkGroup - - 68374612062087045119291922721532825711704677622901121794101481479627994036334230596674823310950258722322081153185499789031947066882304846607240923171688332013485383367372589074014437921503847498756821931052522277478550362783044175167804369557281386539574355003148651871136185751407309768450544194980520711103 - - - - __decomp_com__13 = (g_1)^(__decomp__13)(g_2)^(__randdecomp__13) in pkGroup - - 114495945232191548444058546390330134844401219213459075726236032147640730143922707712571567906248994654956214459878052164591070959445425198257322434980215204008815279290510058123443285914894549210936410767467971430899316963895574710213276930100286168259176743359784673345940714992345304822212820134752885136058 - - - - __square_com__10 = (__decomp_com__10)^(__decomp__10)(g_2)^(((__randExp__6)-(((__randsquare__7)+(__randsquare__8))+(__randsquare__9)))-((__decomp__10)*(__randdecomp__10))) in pkGroup - - 78167912530220575866124753500839496913747093277702013435066471711509282083628139471545493199268484152911913791630719468865167723826922360518809388092738260346245057691783122131101473453326494149522277355095725768689432195529319448514996933127049066130953275359129410823274876682797062851406676270045360123544 - - - - __decomp_com__16 = (g_1)^(__decomp__16)(g_2)^(__randdecomp__16) in pkGroup - - 100345678957490168945589561762563076441868163991675928763501907449035443395986238119423913240309390545663125208326933807676722306449320588172738372771480965891571818832626314344583622501613381042695066058711488806514842681818132191217406834830149846478698422797003796014336407574374780471837350763880082745709 - - - - __hiX_commitment__0 = (g_1)^(((2)^(l_x))-(x_1))(g_2)^(-__randx_com__0) in pkGroup - - 29967835704904522276560615099583034128293004901771326508719641971489537665983049418844987341356400522340569598034341725543780614025307148964502266860478478775978279057357303374714410362112042306275658169383006241428025101308766698120400870034133392996037802688198243356379498076010620832845299434486416789460 - - - - c_1 = (hprime)^(r_1)(gprime)^(x_1) in comGroup - - 63447296788253831527218480440289397892044257009255410272079920451730819294518218924841010900980215440849012477865530932838640373451255134910718338549625834740892761039214667901815881279356172857515717789655130256948015398369815239323979708188645555481153882466621070266194075404485431397356905466768409403811 - - - - __square_com__15 = (__decomp_com__15)^(__decomp__15)(g_2)^((__randsquare__15)-((__decomp__15)*(__randdecomp__15))) in pkGroup - - 19147132948510115820097758734351704451757009779468930969709965731963345772144694763481115222416929041121388212920719879713425670347230849797582683421848326727929258186744736965843406053254444813227296385999280129330892961503965999603131598692924483455997155439737834422985079598372569664823433858551695565852 - - - - c_2 = (hprime)^(r_2)(gprime)^(x_2) in comGroup - - 64210593795065989787125228162792507652072430805377709518428732435265776634854443344687484242939186484836850791635609404599555083555886051153001840512087531876489819182002920546988369055620093669849109413909343479327917851524224022965786778186261276490193862174021354084614576690858202955977871827691488303890 - - - - __square_com__3 = (__decomp_com__3)^(__decomp__3)(g_2)^((__randsquare__3)-((__decomp__3)*(__randdecomp__3))) in pkGroup - - 99702052262166209186577885116709169909339793303536147424238544301612198731525673960957235781558571751679853965430490013831970436868868950554542206182831838159000946444427010417343058629153905471211267287787599560959887403032945287337311142273673386698782237870699773904934054465333638863504206931874173411145 - - - - __prod_commitment__0 = (__xLo_commitment__0)^(((2)^(l_x))-(x_1))(g_2)^((__randExp__0)-((((2)^(l_x))-(x_1))*(__randx_com__0))) in pkGroup - - 41368258637161398274328077575433341235740680528703911040228696262632893419562869846298704840257551585931148514432646934060617173179014146951364710796618420432683897612188812991937286846010074475150064557084579564842176473642256174017087761633336110629093021190364977101152131546841559214948446139952632013702 - - - - __square_com__7 = (__decomp_com__7)^(__decomp__7)(g_2)^((__randsquare__7)-((__decomp__7)*(__randdecomp__7))) in pkGroup - - 75185679502637802629550083976612303171957913163214857177048981659755052739029297258724611592143882072319458789531826800333521219616294192848111176532677269697393450882644616745256730524929581383140612885071428761108695699599326338284625805063551774979664256306879770945073465937544186267814919396701131860991 - - - - __square_com__2 = (__decomp_com__2)^(__decomp__2)(g_2)^((__randsquare__2)-((__decomp__2)*(__randdecomp__2))) in pkGroup - - 103595340044473277304103375709039958000514199291191483309708384525694793134410384187871357422690101053769730047826813124376354614392025541857108380630190615760798802100322821270414972877260992264216599133404540643444744918762486026597434620050651856644178224858958068492516200642594922849153826156322630216367 - - - - __decomp_com__7 = (g_1)^(__decomp__7)(g_2)^(__randdecomp__7) in pkGroup - - 2081623065337694385825019604779311941099430972442422051826519792969225490581702032074855960532167409145423226127484489842480686172890407098097780609318993589105083585304710402991286319718729587842186516713615102481395058920768432244990709184316497757241191353798925277633872613418788750853839338023423857824 - - - - __hiX_commitment__6 = (g_1)^(((2)^(l_x))-(x_2))(g_2)^(-__randx_com__6) in pkGroup - - 11668328095704218088209064242238442999688656578045862358466815592622901801766739732600968381577755865525498298337075486114085484295648437611082210638812833560424483309873697213457065274144681245815270640373465470524237527432173806447794585621522313305661930074189196536576163958697310334080233729406287884473 - - - - __decomp_com__3 = (g_1)^(__decomp__3)(g_2)^(__randdecomp__3) in pkGroup - - 11178951957421958381406936852358660736440345834395142327839359302717749979959758538303927107454578683647101878022976222668834503521025128147026722691921073554532451362739079459808457111041735432292331684729285533541324105469069359533839038847549555012124784259710958460230876797711979555582711775736130972286 - - - - __decomp_com__8 = (g_1)^(__decomp__8)(g_2)^(__randdecomp__8) in pkGroup - - 105376404714684516635176280402306007233667691810919371045636140569131845692782591230850954863657195277003393022745454930978427063510933759817647417262547546343470042346491896967764612902749717465351561535425462240145358304439887363146981910618036628510343971299564802340347641611942867423524023204747154176324 - - - - __square_com__4 = (__decomp_com__4)^(__decomp__4)(g_2)^(((__randExp__0)-(((__randsquare__1)+(__randsquare__2))+(__randsquare__3)))-((__decomp__4)*(__randdecomp__4))) in pkGroup - - 96327237170242568844083235531745770584583935209001907135727315496715916683652273048560041252626982032523619298196638241021920260996840286922080094639029697476145515873715835783390164922009762867238096898575100003938350393920553027404447272804069983841675559421181211875714844419183536091692685884423859621649 - - - - __decomp_com__1 = (g_1)^(__decomp__1)(g_2)^(__randdecomp__1) in pkGroup - - 47322164621864675342935853830698978022340958435031429889667367296893691255373753838089918994613535837892536912729051124393012651566850058968143534468412162462610993177315458286927949709559001261143144821106137089518563429602302437500621176961031970723038388517899740748663337597888348798601863076445823028435 - - - - fCD = (h)^((r_C)-(vprime))(Aprime)^(e) in pkGroup - - 118525390843816376480285979766799565450586782453638400257086372366221044741608050718604893268798392454677795906614984078286136985474193780753206312087269866414648136791808037291837287925625131057695121613464906255488570256073262109675470250675683517486492413204214755873214169369784690179482935437329839700206 - - - - __decomp_com__4 = (g_1)^(__decomp__4)(g_2)^(__randdecomp__4) in pkGroup - - 51481268268429138498568413237237620617086909194919869308656146798841168668034792860838170223429306138642443309085046421755511196350050945432846902849921460431309318204337022742972883411446965375034843290987795636643184392038304741414482051732402096873090284499880951666881175534390465582338710481656523232367 - - - - __prod_commitment__6 = (__xLo_commitment__6)^(((2)^(l_x))-(x_2))(g_2)^((__randExp__6)-((((2)^(l_x))-(x_2))*(__randx_com__6))) in pkGroup - - 32199717225516132282922373362969469890264406520292309972158713671125413781875010987521616049389247554581107686915474254258759672579886274462329243501472354305337440131659016412499934183028256266347358913573259968577484929958473545436624914885179389723732507955701710365192155065458302291793485015720725326186 - - - - __square_com__8 = (__decomp_com__8)^(__decomp__8)(g_2)^((__randsquare__8)-((__decomp__8)*(__randdecomp__8))) in pkGroup - - 68090802429843121154596278546065850456186532118805075362135997777912354236289243926784710096524736332658341530636111949790272172790552532711560050674942382975201790783550515485915262454382204281168959132555697253936378494719218862046646135104976348090313868387541051861214737989435103940817126229238478910595 - - - - __decomp_com__2 = (g_1)^(__decomp__2)(g_2)^(__randdecomp__2) in pkGroup - - 72892728140920307970501795209662427283916378606939424672002137306084461234181884262469632036121003053433014672842300239828023611442134743534710990528974589230422226475433294797096737657266083909520744849085329464218899398008103288802905432971980577927226046819667219336562459172709099063818893562678639522413 - - - - __prod_commitment__12 = (__xLo_commitment__12)^(((2)^(l_x))-(x_3))(g_2)^((__randExp__12)-((((2)^(l_x))-(x_3))*(__randx_com__12))) in pkGroup - - 47547821144661884583583420379280189705095036825674642249381896854274545180636873107930841933757061970926497261100345571849857093392026574000968811152675140877017785783730436087131047582727531720378950080376073268681436665410010754331395097710318737065669875068537696844175906423193588853277712643942640913025 - - - - c_3 = (hprime)^(r_3)(gprime)^(x_3) in comGroup - - 3276864041035154367971009891599921099042250640965471715399912386974521757979638762794647588344475279090427226293382273850594490824243389957425347427395635149383696863281303863523935657008734560609471744746346301256183724302557064051765298747767791224449179761297597259829848180730856342743976261555622851780 - - - - __decomp_com__15 = (g_1)^(__decomp__15)(g_2)^(__randdecomp__15) in pkGroup - - 40943917150996918432221172523036129816482720221240186249393877175241596249619953634828097164714625418792585137159627392350595887775580212423542268045097147535017461781781814328585595277857443911188541502189817199338816773728915643926515184811436706650143370693279481474661299193653787907255668445638136003610 - - - - __hiX_commitment__12 = (g_1)^(((2)^(l_x))-(x_3))(g_2)^(-__randx_com__12) in pkGroup - - 27775896124000438466840250626254719125067899650617735199865949004837959289750862900825868833242764932193696694426726744921058274210783824890671978310762156565712636389002035134025447419586216171594401604321279866195398814314495746322198337611963768822439741462893075047333649598437720809429324949154828044315 - - - - - - - 0 - 0 - - - 64021382408920323838378684038649778113860844944663075157313674565339596919906921443481929083045348351313468395196427317709609596245645507477295154234711831796617290144578461400482352462842663866613620283342500591681753137563032728990332636153048958707297427148027243311867683862335809839336541546739412798909 - - 512 - - - 1293834472 - - 1008984266666441195117347165732621136132040288034 - - - - - 0 - 0 - - - - - 0 - 0 - - - aes-128-ctr - - C*mD́>. - 0 - 1 - - - - <3VaUؠ - 0 - 1 - - - 1 - 1 - - - - 5 - 0 - - 22742123660790146149456454586663092621169886781235530944468543385675693721710523283196896122956762478151588861243439455900783102540735128109113371748503311037393016652240120687345943838760036186343687289775097704374844631404615974688974611957409890317778777850542046927612143742813899805896161956986244967681643016794350432508837735617054081444375218057123731477503778718164366252626119239201343450896325202982827675999708702974371978275488708376296419194781732151435653014010429385207612755657332455478576753709301989376927063293038107324315406988538547803944128436909457276914795636822859270669462399472642787689559 - - - 1164535456003901832797152248529358954065493100668574991572983484358249730955770349525989485640273261678179902510720496709843214370792480011781241743272525978022416800847643085060693645554708696514990042634237762962253816677290462276598111402433833442852041329103232263476088676391444575658007389698030424086594419866119889220840131410856801390805049308565659073040189973559761706288554399357979517360060188526249828279831386772342443403384753418655461496598715153931096506327837448595222275873685073256511069781318054670948641577779178805218412170233472845188967417141311135452079948014982879004958117573013398655728 - - - 18422818606961449444777897373394375787222409403528087415213285366035176248351237773120476214117837769469815925687522511365437857605089212374811228010297102507915511227294309826813877280301009731544843707172891243099443694684692173066321384814428149365977398183168734866043645528986154324444245709361224426240963033663717694586682045501272803814423166358089266512210887346102689774108329708939648742786816316674143443187157275079340507944267737292928279946444467163259452945737787986339848276515830231868398107885186501782302685593177064375713744714670686617653076172727870305601890719648731925204316265954922858483577 - - - 8187065689840714447860109475015022640546749268036492296792712759411765634417105723199123901437630644070699382453332488826250821291747119645874435934513599229319863159629075979075771749946613347535302163503303452888498105270465325922775282778072281519522567876860642506938708006170876402497686969651270579990413865683172865746988738148491896062407104588995222808831791569913530754398681806010708176386867523499164511143937507054950428831004439375505816793335786187579793003554678344348506804475201030121050926742963263734217615973205406171780624174096812369613885637408877580954052940024124052602768897700554124002500 - - - 95726715353788196635102298251882195143066839771655996266533858145844352629781377028407252224000641748463680434117946552137342391591545553839824730712391200129499699364846425225485606552769424290970865300624505066026565041341156468591269067009069051485910476356006843377861923193252982406335180212846970126308936502560595271664879320289699401500375926812402880482812981192437682032647121057197874121898015084434720574513122614972514196334265612077618514192103905582051905861950003554227957950213910995491223125731530690833643411099506963190324311755689371335164808553012604223085088735323654723294154231820943029161 - - - - 26999204700346411148415969200380363465066367647002513964582205594158118983168884993041826590795571356596481123480677616284756765252325528498645846677733421231787848751385126200012627513048017853036968392487433853051860825711774444624466584887199888598725307589694232328412865328197812372598367432411436487200 - - - 36 - 0 - - __square_com__8 - - 8555419856266700641550402739834526014847802794053236036977387500433179349063048002207002570454153288239399766480998363592991121924749934949131753218897863836664546529726232809158205925864317143181290007892347565165346525857597038360423449894004502788311871767409950048574493649317236028255209086618749424655 - - - - __square_com__7 - - 75640200102878653128865799068288504798419381948932597716839734810798394622364381369302792879956758267628972347438026181981134968360840259588805584543914418823694895736411440664694379282353185081036367303142463373305935403967896866385805585809163051279020471701958868121518857754410239521175837952555799447545 - - - - __decomp_com__10 - - 20507610339147400435483091526363552567991429826016486889251759171141447703900767974890908517760235008986708880301959482966260938075000167864817718262971485686732321968316525288798792371190598191071664468106954094980818758795713955819097569217299056194141876690166830544410521768158313960420883464173548199318 - - - - __prod_commitment__12 - - 51453469568845994813650854920033498540326832568485206719791994304050775042448224151759894871601910062083177013816360995442063272341869258997597573310500143960615756407969581514951264410800801070376282921396944712009664931514920852952992305653379557783414368970823765441731388769443943841815131734808820101003 - - - - __decomp_com__13 - - 41192217172371628689716344343753001202668919848373834757682419509745388435016399906375079764930535160158809814131318579032538264883879983954297210387561056469284938209957240493808116358093692862760241644752004532160853178360407349961009918453531423454379028347758452796104955255839932471315370005612927255042 - - - - c_2 - - 56102094538754935571408350988939671451637279988915666280708326478252666557071790503991257734101977729243000220436474550913565843230608337169375891995474980431027300184510401988973318258636751873383164866120607155369594453237018695343676484460640065976208862116828258603018486526453082253916682555859718745776 - - - - c_1 - - 3613432941375508715823405898893402042616995932496410635639032773633558200841895886752138987524224398690383684472555034562734624186789556210334808195607203562704626336287888733002225557401159258808440107006921666313226357582492820541619335557030680787622717239134536158161579456051429214807694408427205916593 - - - - __decomp_com__14 - - 77664039267665027652678976912797060528186334309034382947462180136970841745035088096779027277251723573963843864553148512490353566687663158476483536699077018100905078928647237046553965980546738643225845519135267832529788639863137901036266347780819959089926458557727081391728231364110240053585218378658242556842 - - - - __decomp_com__15 - - 59427814400259287908909654467597923028798233661916532557198072350096439127224364630811410849247496037183952856526118392533962877001641556668474359805776414597382473133316347472096748457439246290178217759477499939072041426368024697828252811191277690009767472763406199721519211355555575017637394127325827914594 - - - - (d)*((e)^(hash)) - - 17013898512798972887939872619355763001015040924273642211257339587632948093556234744586743612115522938748395096141294675546615668534674052259408680575882329297544405439266910630108511667369361078191269665510846438567215271919019306815082886053695363603560655465581013435586658434467387718947353405479806392988638351038336033089872433210316025663382767788377974993327348730049414498722565834330376511270014361510901194601362253031025138531899549074353184449959134049594938544006352492251918563182402212471305374460549042673908897652342573946329094471042037163196555477009664089829526141882038338130649445398743945238818 - - - - __decomp_com__16 - - 87211264569336296674266444487116096178283120811220150545051860369635205400594051090652867820489271244566450202446732609249946118531186979546448548307347329697930755098714122392032837325351122070432829885758846229338499801293693478768077408138350904121207467686522159030045876714065205217050809954394905751245 - - - - c_3 - - 79629587441763828796305468486802625163359201406953282916277372230116539503868098453699494448202566915151238818388828930442127394249618314315503153017443870059612988199061037835979497513413279127510471395398636031534585202386957342593619860957816160589884401955463637817708660941941886971662944229765301819241 - - - - __decomp_com__9 - - 70093895954323489027343287849978040175834265569941715779591317144846235382656992106209717474201613852119081278937596316674302458972935192503501243475246025563303013093601332737117942611783363615781067094633074986062178048706277601482964035524346293144460132589853705308064821385578602886472375805552885381199 - - - - __decomp_com__8 - - 76969215606722698739324557019494690730961300463448363836273779452254279082489086030616201902406587564580682839832799052271877213724849762886177853653204690402808587144214000934300190326162132686631692035278719756746678098692712990105911920009284902060904924178585729456497292162045774711384206881546554187543 - - - - __decomp_com__4 - - 61669430484812839359397737039720852278392960080961713287490888238607315773728021304930084580548492130137994921240616955317973931300407357903851046142824362287206349680530429980602839503881794278339450336903755739433992940096500682765353874884401686886571019914255571343113182319918551150401707351460214983715 - - - - __decomp_com__7 - - 64434400254118453476074300771608511824044959858698526361824246673408342946381654825928292838618442425101173569082957628344497434605962500077190455100737127839857174210695116157801607259132120971251616541201647116741724522056690942975789938140011605101673365952452407995707052763244692915998715903759787839115 - - - - __decomp_com__1 - - 77116077258093473950251500340149976127073768525061319361970496447264008331306753132919152752877424140770870641950988418363158341225795970242195093295877387198976560756605243087335092925976219425960760357583249579228418009947904380755281080752962910357804772504644292121575290160777896538647079252445698959858 - - - - __decomp_com__3 - - 107332279385301540794122668419159004683153196260860730629037742151860275797081993681491657944739934213700847892586398440952753205641770285683012640705270696924380852870191879150200103743888960662855245681407673643060830381649633081907919173215074893308955548316333071174196932335041199385629088061455021154748 - - - - __decomp_com__2 - - 9745693350023924980461843793399725274931436455175028583445176845658320725402810365604107540905268355263696448037086774141185250526936920726584562120702452901596797930436140426725891592804478470854573764593937399365983187029364433741451764435320454962633278783326462539131987992671503228373066208049363091353 - - - - __square_com__15 - - 104176605680587341143774882484003255172422399879504078617494329999176927081130766634042229329231044532094461875934381086436843465415633994713418348537318435389412528249157449099022084888876120954438634320738181095040007440819549704856962377815105161833402982066406044300580626412927474682360468577250992787612 - - - - __square_com__14 - - 100895037696387385147975805712296626315691289764927064633777077322989912397595688510151003934143879814603596748017206927531566023890384358977254371791279554983931657528436664711476790632935305496576428536700882517743845370141173959020673227660416870342111237271108081445203718027010684931093778410812378296721 - - - - __square_com__16 - - 62993308593983530140620526235739930681804080921852909270091138177421864456086348938101769469578404965996434463506291689573027306761553561567833420748164163328799390327296294693827050472756381446457356650877988723784098682713637069592547909212746639281196648659648537672594332985413252908028663595995876999471 - - - - __square_com__10 - - 14802021608910031669337934357997841906490434573741149297987567914745180925993673486620419799975099438456077223504687966704585911921901850776972509848547241424611283973670616840006973554078894952319634808346405578383145852154103434727486232588648796637122128866488546210866113632577058712613888712582137176845 - - - - __square_com__13 - - 48791151109912294865927911025671041698764748349805578836698440624491812479322637385520795471126995769046175202907420271186028121637505755611201008373871029884241077285892870335079197058877453211253624599959885272400829435919622630711949889457158526512212907147500192765932388921483724611487261251751053538047 - - - - usquared_3 - - 10037710614898850820136750958158972952071013048065218709134984587913328743257698654174843973013588078770492693319833762510401966463300772827726554982943702280844729070797709283972874449709815751680999288534912467625679931428080027118069193930261069067894569268448530980458781825049026069166499650298293566535012219128446090377480943601785497200085698164735098539207650595324692260200418323354178900060066643266294329462640346607462606803926481919639505038800670071445885827793093283328812693450660151225524550359798181653998310712169224955581065581099264189737640128598226498178247697055742503766647734510694389530579 - - - - usquared_2 - - 3781735193753561508863698270260159602643238663884132617724877372899575065687400452791020293001509601809407557582050848145861314089824108017627905955699918346653513830942223739246889635785382198658356545467987423843437529761710445850577869196050324586574051667515960889337272910603847701401140295201459322290146253091154779073827486431631375185419733246565160046618073163594553384149988078513044862342507423615425723450493536966093241046972078812053461215047540510800187316125255803868624829292788635963970139955027689917475236322685826772022682719107372631163118239331481408296088467445029951467239947343872050873691 - - - - __prod_commitment__0 - - 26423976797407536978878044700983359433070430236372504643811102557500064343282760383638538367984705526274161781408736828880901548063085123427408869873879852559018013943743525882309134095909915397829625822552626304892180700774044447639999266916194761201545450729240637017410924800770053501552359160505652560921 - - - - usquared_1 - - 2100041378114660783666246467865946673981227402761326441199884443748471327662874901593986828271313860877881290931251030837269930910690913079169972073843273500606940898506364115724781833914368836678765731779844568907584579263949989596702502732791762500540553498134529783559609419727419447618999636232844267068759194466292091252592730908378729475931393163041288315708890529249153977116657235616317339407986946364104810737308842456587301101758347768571348451248557402609447316161499076989828291278823669557693216706416004212623913895379949568623674703131532334551677361675030020578392460759755536917831977595857499173171 - - - - __square_com__2 - - 93880031082799725006678014237164809780878556765619887563975773376214147266044056050106475517054712325913241413071554152075178537485501008972054330510465543742726530965353087699164893142208589364985133113373207776594171512818597650768087814062632943937577225872952545058738117065168057620328258011053206995080 - - - - __square_com__1 - - 27659812816766887863430436816405803520581183995422299304172810164191154758813077754926897622495897902650987000907643509989908093225803130144529118786836544822615011321342869866628822104513148680593909789169520187748926899700012059273105460377818307469732072515535713246018613968381398864237528621463478451653 - - - - __prod_commitment__6 - - 75578851147120173203036640017740149117354630439241627643883261346220920366259119859514536006736081806740811393895328658006786180023393217757482168593571890813054854449629925312388343716543920128700285837994386345342204211169607999266425165577767873162827285165111741216214447031005543903793506098537243037402 - - - - __square_com__4 - - 26939859187888798061108345523159082128956841460409614241711496555793431147787289083005758495101957105247577452885170881958819088945464414494605526895986315551205956392785629134370005464422628650241915231714608305033691059597266700878210597198925688768006970854335898233384973774637664194716034336938049100876 - - - - vsquared - - 4260694339777540709036205110133047007102972392151742369573260474393872184869505487583762861042049755798295839861439619518331327722550270921868676695271210840311161796989484949893945990485169721488586011740779872731017122226042656868062479906778657548790809051594397176970198618950629042855883988901923332121262262574003447664998323422021709888311360411192512389278725052401061925086988377892532186292742025531544844140263372625607702425419617251428252170165673540545323110613771531493630041710717349042375743110446367197688704242630280770144654461182555733438919340212842313606642622268679610695669163785509908316911 - - - - __square_com__3 - - 15228242000542765650029279800356759814038719647153139559997032441037513275508233148975850272548546226849973747761140615682262970355848866618833857471181156768422616778853588338047499049984666851012118627931039293990449574817373619447070157430779515149745633103927411751659188351591677202901467315078209401968 - - - - wsquared - - 11654393620143652374883526561105341479110356831602299290337749718913722974486313843019945057422818534423773309317891115055775808922206008243584247598189923918436367408630358888249340893417802278218509930020632667782302348128314149711978406468205316206518093203256903053755769945897916816248602509801317314836698380924843963525963082341712297839785700843869281288507081794130051824649163257693821102745622912641427427688503449235507109576836364817665428270577349535994548302253970261350137266151562466976716977780672087008768712464326886912982497028358980027635451939974889739666722912010407897374772573638288926906547 - - - - __square_com__9 - - 90808627450301804963389149039007705397199657562646283222298142131503236324359106704689128539993612279209658019678302289507591030043580509302448441472871606860484101410179370704003884261797039742765584267879823416974955132112083640848106998339713133932744838848609966687066747337251542735537312192658289986820 - - - - - - 37 - 0 - - wsquared = ((d)*((e)^(hash)))^((2)*(r)) in G - - 9873164026920710826074730481512832261337136341798147465856251635710320031548361425297279992402709825899003731980383423613808239248076071225606894283028843978261841079526188029394927702754992660825305445808909051741577153964921256261754927210228271621868462224718218740112853242602420557120216963504354883196429050370977622828421074446897274756556285427827343858697204090947118439124384407947462872464269380015420103761358651637107172431500956842122515865481540182886556392528239426744725065607495373126058119520740832325664656324835993661018439122302417543809742603146725757231235689464652944056261632247328887793192 - - - - __hiX_commitment__12 = (g_1)^(((N)/(2))-(x_3))(g_2)^(-r_3) in secondGroup - - 83197072600846573843354264741988830408547559959357610318860573712866910878110543029056421544841853868909692489600006092450386051997972514235610953070197498040798932334478790138057521924537913879651359645104481090986940370961035487652274334793218013833505519378290481294670717907989870412605353793894999607258 - - - - __decomp_com__16 = (g_1)^(__decomp__16)(g_2)^(__randdecomp__16) in secondGroup - - 69196292054755492539124566991353709238576223635921642067766064341148262515510204156178968263964880522108769709234961005825179978497060681275315442599570694254126041094566652961590732624148791619357199081896054266290109415159951362056513711852668288984177352319781588143356259478401243415621305501148557115796 - - - - __decomp_com__13 = (g_1)^(__decomp__13)(g_2)^(__randdecomp__13) in secondGroup - - 100822367905100437663584303063936330103879701474977404981095645034534707391514470256261741178681427158034162060735675987191995710900620948785861003206127319813788161162433412770192081944342192563369371865070365793348828563502084813983951121441056428575166652372729855541175229692709816491010313656737161385777 - - - - __square_com__14 = (__decomp_com__14)^(__decomp__14)(g_2)^((__randsquare__14)-((__decomp__14)*(__randdecomp__14))) in secondGroup - - 22184687599399123703685185858332161745800732451817015370187015859567504042735116823319323145016787194975849268220850018932828113855252332707710895310061384411542929058949696220955460819628148292886489062545637370699390433005952634626596090933213166532916977506396324092710058461438216959304162347665981424853 - - - - __square_com__4 = (__decomp_com__4)^(__decomp__4)(g_2)^(((__randExp__0)-(((__randsquare__1)+(__randsquare__2))+(__randsquare__3)))-((__decomp__4)*(__randdecomp__4))) in secondGroup - - 85612594151638830319213324527067703671796530236138455168402318579593380007629512766573007978058263487574793760125662361298357095154609270056814515131642032848621942885351229133996856580392742666498480514538300450610688571153138875741604092396607321434207919843226853223499143187582422579375875638297191374731 - - - - __square_com__3 = (__decomp_com__3)^(__decomp__3)(g_2)^((__randsquare__3)-((__decomp__3)*(__randdecomp__3))) in secondGroup - - 102368255934616181480892396579760984634968705441879866130051706242035371179563533001792601045843424062162851929079627379586682409836870216739715676462351057489545389152082973019051718764471074738142912524914738801202262393984306743110111107032954044905179407834779463653200817189129870978351983134651095560989 - - - - __decomp_com__2 = (g_1)^(__decomp__2)(g_2)^(__randdecomp__2) in secondGroup - - 79366854436203289869504784342047697882984155670923061428834641684684019916126291541229177712372085785253435160422896780245616253394549835551531271144219126485570747741823926296026162944293911399836843179255659593160597222096892149032308756315263598152363966614444353181512791908912266090966268015048330414901 - - - - __square_com__15 = (__decomp_com__15)^(__decomp__15)(g_2)^((__randsquare__15)-((__decomp__15)*(__randdecomp__15))) in secondGroup - - 34755396444302615034487991519041422271495993721377277458202533037215961965678751616675723791084319697688466445558409370089134529738492326853398342447289310067211440165055487315487745240479416328918544515031269313877636818251374768168153689112018082096620269157837668831427805482245243950607406564258935852045 - - - - __square_com__8 = (__decomp_com__8)^(__decomp__8)(g_2)^((__randsquare__8)-((__decomp__8)*(__randdecomp__8))) in secondGroup - - 53638928006204632372179276758347778078224377675772127803613906588589824194370947136090933125086534542412801842148311181133844802859193647946757770154239466077851179172167822791060379124947054401706273820058149356659559216277987506285693955882956483762273461970220075216965741768890877897203627119957894544802 - - - - __decomp_com__9 = (g_1)^(__decomp__9)(g_2)^(__randdecomp__9) in secondGroup - - 22205604316521461554836189132860062553194279299732551610992592010502800674564422495773087560091088250795473339145643222471567458339014773641207404705037793010167435764110762531927909499001024949764007037839056211003030129497510059811229955798113198093034987246052636705847526014402104730078645878963359733746 - - - - usquared_2 = (a_2)^((2)*(r))(b)^((2)*(x_2)) in G - - 1194037900500953229211097904326739960290465374277194542660498795433970233528046028785001116319520493059007655456914098459121472275071895762506765571244602298988142742750257585574326679983008464299090103398956437799928155682565846031464158734110294110426466616111002365997983439140384059872918874947780433748298194295070714167354440190967615004429882933153236689309892841413928909685469836924726511496623627717964202177627693160585915967791095349306022588578578881773232190689362001947841195725665482983249331095297257204638431727005693238877690188114115503985037506968099630682556914494201177636305962076460718980541 - - - - usquared_3 = (a_3)^((2)*(r))(b)^((2)*(x_3)) in G - - 10317557636348125105123093690635654847102357916781403713148490259503369775755992061807923160924467104884008945623003374165993922161775760274175030735930179749292650707203671585322468187726758741882904203554830718126172270088084536236211726123489521539707732012576644516740249140256089755905107505887054261325245968980911901192051791009768629360867603808312270171922584941187358522875026393878296006853542296979169702393430903915867121617089521181341249496734920772041226019173170054932027640766601442872099350267144553971072304206727807323324946223882752876469655040488789202375965102996342760524311658997415419768120 - - - - vsquared = (f)^((2)*(r)) in G - - 11327001192965713990162389375423312546169475936590694204422199904109138662629032986805515935283616409120714212685695595574196910759207973734729093329903803563019246121141844846637383976366289085767011006692722717514838618185482868096657115993631068065156725684171370389049243728024243158806593506625096202740263869770392612817601901367049153854191640558796634682845212464688905686166886603791226323714398665427270671260582775244080128631727860340144624825575931692801499442050475431834537217812552972467818179079753340452555777585837258020171321004391121686206978675449935233526844525446696985685339709606353637906822 - - - - __prod_commitment__6 = (__xLo_commitment__6)^(((N)/(2))-(x_2))(g_2)^((__randExp__6)-((((N)/(2))-(x_2))*(r_2))) in secondGroup - - 105095266855135276547917847148025920761520158295285415747909622874196920972727245784432498551345642169263794846112137368267490504407956106062019000344853759785907207768527003438328568734053119634247978672852245711010720610743088437222475555546397299795204232929408695713289821203472465617235999014928685432319 - - - - __decomp_com__1 = (g_1)^(__decomp__1)(g_2)^(__randdecomp__1) in secondGroup - - 33803408319787589756075394281455590363991883438323062453872011906490624967070678662212219968108757481894958297850187503934121831199081150273574478825666062255470142664511205812692327582282496224018474357181616419790244680000955308399798936967757409916678508200825862783223339402654002526061673276181102747152 - - - - __square_com__1 = (__decomp_com__1)^(__decomp__1)(g_2)^((__randsquare__1)-((__decomp__1)*(__randdecomp__1))) in secondGroup - - 87664978512790867667651982481986873305735787878240293154854574985918137033094070488077679767651778066570484073262584713449597934734930546044104694326351846549083867858952908752806109066909282660445472921330651624757569565718999672916825761881664179949376015872829045074920877711408476897416211614854691057122 - - - - __square_com__2 = (__decomp_com__2)^(__decomp__2)(g_2)^((__randsquare__2)-((__decomp__2)*(__randdecomp__2))) in secondGroup - - 16118344247457885216665485565600395776419309348776779707070470923697286182812157760149612514779400888956236790956227403792313502375419878206407138833517088940465633320461260344962818865903817050853000685397671280311896725013852332426151505988189009864165741342880472857256302431941894453495632582992461566257 - - - - __square_com__9 = (__decomp_com__9)^(__decomp__9)(g_2)^((__randsquare__9)-((__decomp__9)*(__randdecomp__9))) in secondGroup - - 6249804976295042614486514759131804728500283204579598591917459114314256399690328152331325935672647415792938762732412750270361329572139571312229539124702242878392746610500807032161448538429153034166598175404712920926873830329137830236130236926887568467534953931800745155347694827799585232385546694873149455073 - - - - __prod_commitment__0 = (__xLo_commitment__0)^(((N)/(2))-(x_1))(g_2)^((__randExp__0)-((((N)/(2))-(x_1))*(r_1))) in secondGroup - - 100013319473220684842747516615063126752381334687132654986731041606457840101763928469498282100752154541019704169767359442954288828412573416173531245363571198728732045035912921144752953594733966227369679264046880422757566686950955221299486080955829604940192641507597182188159775277049744791017824706291940749031 - - - - __square_com__7 = (__decomp_com__7)^(__decomp__7)(g_2)^((__randsquare__7)-((__decomp__7)*(__randdecomp__7))) in secondGroup - - 88518558311340778423880870234505666888972830360459852693712098101129324345301841453763813761189669153998562238766416080110204275181958750291807764833865937242602671611227157965138559277813978018314815016341991945758307247754009391802291576743510614264531421332696769553322585657639116071484756472951245938542 - - - - __square_com__16 = (__decomp_com__16)^(__decomp__16)(g_2)^(((__randExp__12)-(((__randsquare__13)+(__randsquare__14))+(__randsquare__15)))-((__decomp__16)*(__randdecomp__16))) in secondGroup - - 539844800655329594308925793164699779212566890710496455103450832040653218220213470726081398935844419656252937100904671940762597897061326499353741209170817717317029343530871454303158319292067665018976703976245627541601622216485399757089788732784525506674254973238711280784919522198660813427591619619641148268 - - - - __hiX_commitment__6 = (g_1)^(((N)/(2))-(x_2))(g_2)^(-r_2) in secondGroup - - 92945188484341856938832575802606620438165973601707985260778738380506099577767176060675711449871937774846410775137151251016915854350503990901048759329442164733454169730266760747156026656163447518124954392961995654441713916993282681663419532211273951466832559441359718311779156671291119297011511751652132167379 - - - - usquared_1 = (a_1)^((2)*(r))(b)^((2)*(x_1)) in G - - 1848362902714044292612579925144781664429588380188920046085123392058499477031462969791871325057131711017459526514448386267536809654311622287012025184772420097876570713611761097622522123199072659412937509246835844884370903541602357040711381077311567009437067893377552684423885674316466541033189079700226110754684279680983663525828691088885411043043650238602267060000375711807060047146956885461695462590980629822211626105144043783214426316069574473776762323195982631865167573238453704717756033541407439776253087902982116563334548619005872276845358152577345905320974047689148116629203263980047247212768916088191259895439 - - - - __decomp_com__15 = (g_1)^(__decomp__15)(g_2)^(__randdecomp__15) in secondGroup - - 38453561859123321506362336256936055374204977130268262805777830102334162856285239128975983431434745250071973864136928327013361659849959107146497754413079388150292084384007291626161630908798114529552998249915635850264188538846183777260276797696694652349358910394677811080393797492156328339772275752264877408405 - - - - Xprime = (h)^(s)(g_2)^(x_2)(g_1)^(x_1)(g_3)^(x_3) in secondGroup - - 46056074463779645378361254239335603765492900486090749803566486346557521815216552559392917490933261952542793560740931599539850109249427345148433855344169345379110776284380245843205154355068494769746408456142233585952967268246216663697341762371784970989261100953817728845339138334229401207154363407876475645695 - - - - __hiX_commitment__0 = (g_1)^(((N)/(2))-(x_1))(g_2)^(-r_1) in secondGroup - - 39835297656544663888205361272253582138306720819999197729971070045781846472866892649530955163924270995547665654589916889165247134308486108707726954605765485887613701806809913052096047977127212867501302251230346952769344433119570465903656864106137613684196568877030270516541351098834858069835339806865021662755 - - - - __square_com__10 = (__decomp_com__10)^(__decomp__10)(g_2)^(((__randExp__6)-(((__randsquare__7)+(__randsquare__8))+(__randsquare__9)))-((__decomp__10)*(__randdecomp__10))) in secondGroup - - 99964610507771013019670846477674943053687169126147536797433012587168820714582510575623152504100442405118699111738603274137819064959577204141553260237103433862501691585424926617042809558039917252811356710151589234723640684330990561041038601204779084452420266707538367901361828207137230593309487937326012179313 - - - - X = (f_2)^(x_2)(f_1)^(x_1)(f_3)^(x_3) in cashGroup - - 30433247057411594647394701526776733233280072286299312296778293573670875726427659256355336189677448038109957837140049146406574616485139646505471836763685668385942850262047405035875768116887882052401157955788879495696728293486595513192762150817941511003187916939483966209422678083580266043000276943162049035281 - - - - __decomp_com__3 = (g_1)^(__decomp__3)(g_2)^(__randdecomp__3) in secondGroup - - 41265394564236580019355746208368050199554347678093848378698825391725269523471571876859450639648099178222499011684249931601683312806264305577231189947594639172612367128338106487997111814950757032279894040032237152366282187565136249345855128520436214881907936518842349692445558194934904801586547396532566898703 - - - - __decomp_com__10 = (g_1)^(__decomp__10)(g_2)^(__randdecomp__10) in secondGroup - - 78519048829889387474472997442479790440675357463051884928011453547269176175596301282212285530531153384762718044391002445384866879987856618015213121527740212271361239166729102231980041480964558994419824255972540370479402575533894992084725106640335698458218598159398883313030957545006968869527731127649719478525 - - - - __decomp_com__7 = (g_1)^(__decomp__7)(g_2)^(__randdecomp__7) in secondGroup - - 41383327742843950001711606897941707436941582110774045951651961655343379883958107391120082529169538163797020585878277891875971391867631125100693268436826819154057062412420248016007796898617526804170723477184919369729344713797466006321600888312478780064560576678391096196821051719756238928172255362776421445171 - - - - __square_com__13 = (__decomp_com__13)^(__decomp__13)(g_2)^((__randsquare__13)-((__decomp__13)*(__randdecomp__13))) in secondGroup - - 74269031469511840669523401080652633486696071225934284063611378393966656267143394655774328731717071970882079983767626750542028056420214521014935554069731628834354416286895763055181216658221870372529191812292098315935579688376975561464470417637943434242084521388717807803489986460519592722421859965313100306246 - - - - __decomp_com__14 = (g_1)^(__decomp__14)(g_2)^(__randdecomp__14) in secondGroup - - 38392787651402699097164710764749213591664681005585506304483160695753154281221593279377835841438093766935962058828976085657035828155790944925382584475535066833095472921163883997098775767449182262193146933525788153971512731052948437571735978122104493830602973865450996298266674809599812425130410010131412544733 - - - - __decomp_com__8 = (g_1)^(__decomp__8)(g_2)^(__randdecomp__8) in secondGroup - - 64915001160269017274650490300333363651668650298420607245243991097362774017984733508065506611406934076638729065075962434515894751319748082543289931292755525407551601682118422273581139718180159584481490003019517947532605828258587606273590482869846463365034914667981758468775785943942713432851631437069479027249 - - - - __decomp_com__4 = (g_1)^(__decomp__4)(g_2)^(__randdecomp__4) in secondGroup - - 106383686002684876489333498060409522641927955819575360934818249634739778456463669971459597624539946545743360571849991865035760642869132676026584013774034727272347199703796264167794485704792755132785505043185294784556581905912369448422842818576285641663048372645894511972220071991348351630116423188968967144287 - - - - __prod_commitment__12 = (__xLo_commitment__12)^(((N)/(2))-(x_3))(g_2)^((__randExp__12)-((((N)/(2))-(x_3))*(r_3))) in secondGroup - - 59895176979908576960499593367732374939960436713642920756699835068848932453879342077726964650519369084557378058557088601974502528432832438338760328252152222809721025415243919005753169677422871947603662993726513344056579008246936927422724142192683438909799690033265767551398848957250744670389213002233295146175 - - - - - 53 - 0 - - __decomp__2 - - 113426226527111655626687116507868307114719649332001055816001295971006946466866695206059987712887233462835251080963291638043215270656054640335998536535469463712710056568536192722624623738018666058146704771728457688489531475481107332749811759041638459391190585855494751830163064831245255482432814463872374542223948636310758581524533236679727026913249874608484 - - - - (2)*(r) - - 80619127109981418747364411939304950173670833220350160274934417684717121384197724112757200091799389325479929303806562734617076645644421481444549109588780954714841504178196320672691813603774196546627823155699349718897631002445190179905693931079182445942559319524189805571698322606900921028523478910202312578006928701467808960908550275036931453880706909545264 - - - - __decomp__1 - - 206053191001043909066789216652451660482795446395973457894739898438668342732596806176542321333295929417762850241101958960842935227211347173989400679763122563525249517113387049005256606625595157355205829793453806498644156830797645220213016353441688328177725282518614069761794225192914786161016467131056654972456379701589652971915657093 - - - - (2)*(x_1) - - 130958830620330865922730391913423103320073213913772621913613206547506771268121380207706607779546636481084217625635875553598361759523793485622651211449218033609514726374165204845744440446190055738653916546833031948204904360707415114602740245927400671279370677250477041039645847111881271972008474011029721620430481919659095631488920698 - - - - __decomp__4 - - 113675382701079331187535804620910752677842997919237034271148822939368756865114214306911440955032118977345092934803930518310315897793314282984466654927846604603466750881016483301957341226637617997872277949811784266676316691515170617259644935247136198250128816356881278211799707728487607328986942685705089123979533469398081609258118625 - - - - __decomp__3 - - 136330036576001792622454465054694045701351787892874305393541661464856944913130874667576768973770046294708856681766637076147304703402980702435959805365745404962834187143740259887206926782389663473825288557343884847105067699967002871239142658306682397076498606513323546814460680599590379416262681924061433516777412243645758332357764335 - - - - (__randExp__6)-((((N)/(2))-(x_2))*(r_2)) - - -13903640063302577177333980267991919082906770053262816221083193574858720997410550902213619213381785973649131916520472940384640164205553266568121425469951056359647087923231545488983789321740425243281366881183063004931099037750699803430464206335234081321449687292248913059829594214259566305436837388775460268107360363909147402730344926929510373904495480173902860210172388458907896783311514619363420997201824831424068776192313428330561446179257187880829761105894801418182150496450573756320263619545538805138963737813716380711615601348546777062082296333183571753875075046474395062625220036156415155002903395873078370782648795837002432516690332922260526826643292736725782635794546561047239311914 - - - - __decomp__9 - - 137393667451918101005385327590090986796326788478876998663422258977975788182503951909788690858075958087457654879055650260215839266816848397809708819587395793855917811156666791494964747453599519823846473852829737147452211027832082054685652836578322915203976680934560565067753790631520624963040003894697430262253374983863667762086280653 - - - - __decomp__8 - - 113426226527111655626687079374250367191597210512104761584584267114943597583640948761728271678861289473078501797317885734612994767021342136545520705169077724118513197669955833032383502126069155709229186333613127185795437278797272173169742652179439132719973781449482968522522873276909615506841434004002694348508575224916929193285532869236094871623898822179358 - - - - __decomp__7 - - 162928568590993942197631694380996604818406629026410597883342363738035964826438153629577709551860337832699468985785882922449980174620817657237339432450942358626163730830760179615903526763494412745524493489992100161234872450552694667220115686278903262673411065078310410307336207055837319813788845987620366096804435315424457431744773851 - - - - (__randExp__0)-((((N)/(2))-(x_1))*(r_1)) - - -22348085726211300841978305953288603650569163456381002402572880720401628052059170776213155907366195789932546750210829255221199635867565341764307744103576217242001972418222300670795542371039626924279135926891385887111274685257392814226785355169084331637928388231300558556069339931235851187434529889571298678900142229912253291168053396087489969696020680214277022023836132070324900584544302082693544847180894456644050071190772520262349418960914409045571404338960164355492464409910984322883168635339919823950554930065501866900824986582272473223582039527833674611325461970414437961090367277043038000095170628064702266396641350704720597907537670530383008987455813781231873991465899231312687523102 - - - - ((__randExp__0)-(((__randsquare__1)+(__randsquare__2))+(__randsquare__3)))-((__decomp__4)*(__randdecomp__4)) - - -94597096357431007544144844494513751220336536762573692072471034971845651286804170912606936068066026430626946730605187145502846919204605273765972702926214539173476648296228846849300957405819989317025054282689405551227334811417211356335755789666965073482672612945513252792663117212483702456966306514895326233305712329901701927141004515416793406341257772362514669246835020466934926321393624815027755050314740004719569974668687582230614881862729642668954110339014805791196417794859414741705566751000726909599055151864131669434383087291355887 - - - - s - - 6056566097813114982507313905846459826145869472426572368911630294520465486666107617266938105145990954697716750132060989241514045188310371194511641395289800463773310641084343529507834754592089530086013723568553482994967036808979863665079321950448400765559515749771582529833617493633925795695270798104135340480026992931394407542320892953832202731696706233202 - - - - __randdecomp__13 - - 289904653748473824019885239583236538690643433780341211623316534558187038451129537341443031749189632698606589013204040741920113008489376380163201014762388278298621833205818467543978659353734447632057976329958771177594125466732693013018428359140740492508612913825813656474406613565339914803828266714918829003798211106895359837985345751161455316576993404205310209900051884304472446177 - - - - (2)*(x_2) - - 110457569982506313417790278354954397511279218536372499112664277709687509833079849926046020882101055655240944899567777170309620380807854911487844306423982150817062003312180643996677491747880448803532718114376387761789072516993076963594900029240548824266180365625042581201269113237565006468294815417918604785630083591697582994872555838 - - - - __randdecomp__14 - - 210859431126293673941428510913729553726040439647619805468540442615289496989157720150991858633172198208900315807964113544625578590605914763738680809085531580528982975237034124368807244152715338470384997800732747431484274657889628651583409745974325596368999338329388579066401165518109008235297437520922343027953895355407540640872735806549449336291626101230059807013556021477370442800 - - - - __randdecomp__15 - - 225994227064461224132102578090522653831529324745490522267940475579175844918934517536053232225215949391664800302572875514311387461218301917008131238652661572966880380690422939305208441512271338459167222541401233328474363147003031208737803620006673596614157278902138727877956272900371851752173875050779067448648319700347266686158554260363830952191453704646870527220805759104729972253 - - - - __randdecomp__16 - - 272164404619713820469623938091105424063193380007568553951972872360718335983530562295838306298425036506711444015098451240279303889454493539623468449507311964294389388084308802479508133176815329401433237082045434803481009584923241775547893459959205066378349960972552906741614258064916460356844226494276550478940011732435242578128914891055714715594983954325581817687662318109191774283 - - - - (__randsquare__14)-((__decomp__14)*(__randdecomp__14)) - - -16601032551369029946664107433424440886923596148364861897713137652778178389263228414015902140677952663184123178529932761297190723210842652074737033536771111532798932605402221073167797583403458697978382642997041667873744368764078868796015515804452410653266271651307429278457430276851371507960440672386887848271608657694057098195286652332993871661070295848243833265691346329379872003974982741675852181673130588251662951560883562467358754102088641773290913089723664030909110117623661348647065863189158290144143589127840365840080156646280513422181853523816677922595150879375467329335375643758835238844966875152223940127433924429965637916910568685697115492740145772840458794016039759537700248417 - - - - __decomp__14 - - 113426226527111655626687078273967199026937339448280464831075546168206869327773541010049278544641620310357523509780561969349378899892904808019559476576703794435941330512311346580534310333064374829251067259182160592571584157090575883255743190789173403354439948947322861243048369709172913501568740744575545832624134207074047115279648922343465450190579112146470 - - - - __decomp__13 - - 125518334420700956014171455350053749126028981912301156563163821685753267087971973071664540641147253575640259806588474249053634740027268117941104164719511073522117195444324895884811480243802728147724612316304034274824027074909206202738851597325328608585909650826815559210886816589259915306764776059187488325982038752594681581621016563 - - - - (__randsquare__2)-((__decomp__2)*(__randdecomp__2)) - - -21709602440374543260536442451856850748218642369344943231909115874302585956151108815152153704204465473669735079208952733796482119410129509030836323373064536325939712398592558067549078142034778076395595911385350190383145042501274720133279136965202011314084766103371388459643022862202281437376686024041710503785730327873512612249136889801756368963162730783568172445278768851647762862309080351535321864128328303435930173901422255792282147943804775294979549544126578033775752904382088575477661927938765037896914242198496135102209606593591959328511186815533105592569849015337347555960899932505664211081943722241466649267312480570469172412966939100056883188734457902493765401285279140077057437559 - - - - x_1 - - 129174953751959272338669938775903371268541980044761585503725447049186874596370078258635763587284951256403071376746219135103911799380136029720588692287803962373860411505179234676036721832899934300701552049715359916816710866097090043100587765067222439305866061247860205208566199678860456398425467455639178543822340052908882914487763486 - - - - __decomp__16 - - 152028481035461729046702348286340669969871641498635606659283874790166588968152547149721646488382272002313142363699595802030935527943358011541832226645856549305745751567736416959816771103135831037880614950129269664307891337284224289220129411671127405446035540734536017433678782086799095080633548556748385190681671375770086041941971942 - - - - (__randsquare__8)-((__decomp__8)*(__randdecomp__8)) - - -16462770918825064605609688220439303687356209528339142535778549152985911376015436109301882068233789312579776956913724144210091974952474802652831752794365936128527423014086142413296250157723568571842026130671155328088959460117523864806902412232342426099593401124971881502154567883980875658497599273842171375366540933783700342364653679649313749239705256653013107008253809380389569013803096644704064494409697036729578583834988774482254931761394946145820632641528677965365514600783175207458900143084604784656808384409621616371856589798348180544241694726196613145273179881550835474647260745610474914360184197300385885319469960089969433065177868463681922807366987298209059875899089432482043199747 - - - - __decomp__15 - - 176336914076919787078737810318186236769124205894199699265704577770537431244228850260560505816376864162394998882119314623205399295106051181238292755569156914756173827438312219001029124779692004634311191667321906985622130902559852288045644537203177549660145622520098256266264189562294491680308389926496798003717738025601304921925565626 - - - - __randdecomp__10 - - 211686644920799529223260954341858083482093177890362068575929680371284116677736327880867278557209962046245375083527358303536718037301252812574819508503387419670140242938792497251745581456499284209161298403131237915990612106562617313854226897134563684840431377419897006956333996107695528653027316093540021644032510653284591828286443115123565096544395503386553497693096149694335757087 - - - - __decomp__10 - - 215841266792577926825713861489013937693395888113104204254818543153485968620027785393782929396645922531004308932080358984727797289272366494614889966948787266545588757784334344668132752174336170541038756022304147010645793118326608698021965676963209764225570492602444843791582591556930058932197748935311170757899182764654907463995806560 - - - - (__randsquare__1)-((__decomp__1)*(__randdecomp__1)) - - 259076512184443927556396955848051151465333003360270009213271352147961616337736775956074351552242156957225712913017905653538169785527322698206942150792554229564977490266704654810435482625052770172097146288089848751386450591594364413558173098821131228437866948401953962009875977688838313579095974673139481011468994154653184110642358481222958001062627365335694594457916557485394460529 - - - - ((N)/(2))-(x_3) - - 113426226527111655626687120201209968334793998772837007188616286657445733833998699399842204134150091220369836452473808936514476680383742688873683199120585558676674025807925355210658228875067735949262585612233887594626667604808662931518344782697213347373566516815580060674072022350815356638561392815552953401952738392848338375073692116261245502476768942958351 - - - - (__randsquare__9)-((__decomp__9)*(__randdecomp__9)) - - -22529595833245154791080322685668677732469525536558168344909683193287411348940222810278131135434415984837551638383113420968993999538916862497465092247808591266280573811787128666267610684057394864143811160974423813527137543981054176883388282518310595635795382250369684104646471400175892708319910184006679396532091620813655226144520387304710398188265304043657140599491441438169497958463707012297531422120469318927137557918134002451748665004328676502225456777557939619271120181358314857803347160833692469698322951340206853405187187782609500 - - - - (__randsquare__3)-((__decomp__3)*(__randdecomp__3)) - - -74071204721039505503338463082544243045777369569464661071731741149852202074954731956258324308275983135861697358339339908540623543047638625440038908915242270102577137654031223909569542611090795269118517831631772994189404445699664470992376274111419329389619578877870048292033212805171429785425593202879205488390057732066216756240846299187971747464812439382265848230611109874229458824655839725456620485144811389814820108587514243713337873735140684495846384817840523853686953463024802050168122470122120503860087751468380873641481765668093034 - - - - (__randsquare__7)-((__decomp__7)*(__randdecomp__7)) - - 279534427474469091533083033907173519995581326978294687547714779587111310221553504358973882996744704539038925112323438487673336522825223760901538657715051754318247146203741375637151950274832991572218526901663364165355988259205543752456134382168101006512843202998658113866599802261609534443881895391540961938125437037962196841431268521782442266008926977037336054304610227026093459513 - - - - (2)*(x_3) - - 135002254236231901809162055408052656489105532572269503517115977936532944313161589362494236878282485746931358630171770693819931490792924712666657504764308438917982208677236904974784985218245107269030836489180968553292442654275426391201931722551011634692459604601113411312004156686343406640041314148877606606324358671314407524281663448 - - - - (__randsquare__13)-((__decomp__13)*(__randdecomp__13)) - - 276474964335657845622692340626211533922689274073577372539859196980504250729819996051362642213580225433233400586802693089647309247698903688912191723072425918112312654005334295793298296562329464057800167556556092896519796243543498688412855673420688293594025279733487499023152929130250466411459972981663084439338260635006017703023884298853346413183749597918438318708117779166648901938 - - - - -r_3 - - -264757726906097800507425278417506472096917948824208846073034243456957663448565506027051922067870954881135179129873600842195995804316446950169970817060469784759623817597482298331402372094449148606495631584354346746562591161068915236774403939833292149335534011171381152710023471564062710193154445694522042978372397182644365962935934902726313643985772596814511248152223916188640662386 - - - - ((__randExp__12)-(((__randsquare__13)+(__randsquare__14))+(__randsquare__15)))-((__decomp__16)*(__randdecomp__16)) - - -69948359566495648681995092252358513102427728868320305809040987979627165164633016203595333049771578667833354953658617379455681851455040835000667445220526485165815735506724372688420266868426952943998411421422342451705704845421569334457706878189646418843873747503757914054750762433797450908945483525734093640845049264234714031460723467500419424083717790990924675419225108852428215537539651540665032089815622463980424554809051972766735488047727643277303209862566570874207077013790937766816039014549356969422595247501889819119403391533026615 - - - - -r_1 - - -283856117287231691387808868890608165123459856511601204890381360428083401762890664818910476015158879308663246597925536339973434312640702087816407772676819793295789952108069444377357137272204023608972309298985514706615237999937963606608896246971259948036314944839404751921583060130763648730022012617355878043475471807289909807744675919793700810515663988221407243598127797192915245716 - - - - -r_2 - - -176598270334152128903777699321068366657433158312172209774482246239640503019820655536461352131849632370232982463867151261354964925944668680637527116171424454082473656716535446156596903140103586700974436066037125922714856327995281345594706571508864492743793986421053926497621603700863390801901602321021544738714175027226708051729580263434899221438484462635186042181189909445732016180 - - - - (__randExp__12)-((((N)/(2))-(x_3))*(r_3)) - - -20844463153095001017579517482587481410726858215193497304768217232329106635032213131745473315056595299708228059368862369800983374191777940407869886347392999742451730759546197835276999235544015714472578654365555322878909686856319807717093546153572410100000147484846007318893448614488600022791952863735706740268890466195406078285121804234089267806109470625921157639453286203420756865018966231576131723790374798811947509759972369875662692437389978622152295321338485808081833256141884869253043605386093818578292565116808500221320485219307527477060711956542336553856818760417332604689901933931586283205895387972478296812502323231734710130875980883638776924278871167712995679740839358535749185456 - - - - ((N)/(2))-(x_2) - - 113426226527111655626687086496369050356473117030562457822771386401754897526099819176484481788105413128456955414403002822289432426172163030704467413463225643226018529827102218760475916189284357246455497077755862257816317984600316913123429305762155787462981514428613183446625824679773767002687943621845384574352491463970033827191375902128792147410554296706216 - - - - __randdecomp__1 - - 266711883160556812356109905640994490368896427124067656089243288246621128950775422057035826895022542139577006133845956120252745362243252239614361548864335151610731166433254943921459476877274730211546016695997569304414701621621403558312473987930244346218649291983759987200160043695084773512688114721364774985251824573549895695662291826902342775195201385626614115104702371036836645111 - - - - __randdecomp__2 - - 275746367365436437036392501515495271930538769853309154161021108992422814433718550256233378439284511675298938669923163163786781220709644531630323033977257867518064274621098131438430308072915086592115586759103642923998140569978891732765177158888473093403902375769924891999928931157031118057212463338976412322054287164928611561824685951214735962916813560570860473496757397622282409243 - - - - x_3 - - 129663070463560019708609397880381444224181025154508481029859503886502521400288429179051577402473283796236087756542127179026599082379907478295933788106769251643762557973029045237126377338277584011720337794214319175705374523694232373890257129698511995300466682677037474251860793784959128460853830055672596219452309788541578115077608214 - - - - x_2 - - 182957337114887331610652801547724024173720847148063981764128237214170906092649876096083653760355819200970035511946924783095479740847028605069990269887168224732645957778244030886945342169098425024336812089106114330016996352370088607921035127666972220449411659857448591882538824548325928697356775951292982623215095073731139581167325716 - - - - __randdecomp__3 - - 201008639612884052253544677733352820492415672102825344492160518766337920622161991165309750184313402036482855863327489413786964352201610910725773764483721123530592776236816013820986278398240849246853079480621606744518784867210433939754296660842117322414372064555277000805672773747600872160129164043259445723189319560360174072161140055088990925074290096060638476027623527820727568795 - - - - __randdecomp__4 - - 210372276337313475131144059596922548826288035787580975715826214354636045302687308896217057330508157052376625044530474898665528497967679284279106006911023834135278158929913329748072833316549488483166531425650374377305869137756299667051090297287079252635398483679714062230183557932737469346490389221555947217118409148165635781150221144131250247723226472174547839626222490975889566423 - - - - ((__randExp__6)-(((__randsquare__7)+(__randsquare__8))+(__randsquare__9)))-((__decomp__10)*(__randdecomp__10)) - - -34024732755394191933712580630334306810544410465807938105148242775555987327893391962946353426144970171769057653820725334044711586114514992276972809784560818817997205031873685188865303055907407591935907333525805339227865947481991310341085569883307511332497732898701770311164898234840361574613131323774842908957978815450153858821796754233475718294774992711904524270315185369345091614948144785101031366783770111869442189948629608863495368098983712774771662269579058310157795710351501914337994888785968436965851984093240229393464355405959426 - - - - __randdecomp__9 - - 178272843456854314638262587104243691124130147391902982023646688222509837335285301159791480390727517824607211283743475709292659053735132458560931526666983183010231966156440757705482718449125367740655926280800431861579191327129198654724594957585268542593798389539083986474211914265796977280990362215676446916115833299447582604917912302162344708873709251070659213954076842447637114627 - - - - __randdecomp__7 - - 176092391665030852192544441147462797622006722815663784813783318561056689967588052037421426567858760030173060273919786422370293875170119407918896783701164951874085670507187662064618228921184598484576346083819483104402145439236697089354921461067958569470467669480211875099842281111565180229918772768551026320938859891004969931119278284257213027962799236281932950941812601634963104414 - - - - __randdecomp__8 - - 209103289205928065540883557885369736402261443667133010551567285690420092728087834060718073695121389389272894799347443351435916601352511083892445139068208451327200775065734326805576389258606768681264925436363172698084840364952921100528866813035303215624667867045091910747363378631926621367109537384736120394668238634103311365317575097200174016638396225740062234378113582907303382400 - - - - ((N)/(2))-(x_1) - - 113426226527111655626687035178532961111595045850775992141184383657717909481993036142995689367825259336974635756891008836616731949493734173080328747267253266513663857659039458368491163894193548513628414314186153866601480567469921551417400179199477914652287794773935780471813160240308270981373951332608905752340733508562163487473281429124229026152397208425512 - - - - (__randsquare__15)-((__decomp__15)*(__randdecomp__15)) - - -24231381442575721178074706523806636485741308895170817056687401385431457941736401345584768648455089506662678782987133483493888940126935616016281522794715818758081044309892015867946471051144180605215091106957341725058256986253654099738221409027139536039948967115932765936099622029589131852803050269269477271753815292867973615799424745689387480073179438961189615216508677161350599103728200585537723513689241507010991515486498587893748099087810444504102939928665439193463280264117838987489766012194673075743367512160796871671913574004739196 - - - - 0 - - 37 - 0 - - wsquared = ((d)*((e)^(hash)))^((2)*(r)) in G - - 11654393620143652374883526561105341479110356831602299290337749718913722974486313843019945057422818534423773309317891115055775808922206008243584247598189923918436367408630358888249340893417802278218509930020632667782302348128314149711978406468205316206518093203256903053755769945897916816248602509801317314836698380924843963525963082341712297839785700843869281288507081794130051824649163257693821102745622912641427427688503449235507109576836364817665428270577349535994548302253970261350137266151562466976716977780672087008768712464326886912982497028358980027635451939974889739666722912010407897374772573638288926906547 - - - - __hiX_commitment__12 = (g_1)^(((N)/(2))-(x_3))(g_2)^(-r_3) in secondGroup - - 105963065600414136709391810567896201246767397133267485358503185234522414070896077312573699167242358831479576611798599095253058965668036049434224806354685219748922477608462979342890218322124365901641291707883419814104758119372013806355411023130960764658291229193894505221546032415543136904681869364961233702554 - - - - __decomp_com__16 = (g_1)^(__decomp__16)(g_2)^(__randdecomp__16) in secondGroup - - 87211264569336296674266444487116096178283120811220150545051860369635205400594051090652867820489271244566450202446732609249946118531186979546448548307347329697930755098714122392032837325351122070432829885758846229338499801293693478768077408138350904121207467686522159030045876714065205217050809954394905751245 - - - - __decomp_com__13 = (g_1)^(__decomp__13)(g_2)^(__randdecomp__13) in secondGroup - - 41192217172371628689716344343753001202668919848373834757682419509745388435016399906375079764930535160158809814131318579032538264883879983954297210387561056469284938209957240493808116358093692862760241644752004532160853178360407349961009918453531423454379028347758452796104955255839932471315370005612927255042 - - - - __square_com__14 = (__decomp_com__14)^(__decomp__14)(g_2)^((__randsquare__14)-((__decomp__14)*(__randdecomp__14))) in secondGroup - - 100895037696387385147975805712296626315691289764927064633777077322989912397595688510151003934143879814603596748017206927531566023890384358977254371791279554983931657528436664711476790632935305496576428536700882517743845370141173959020673227660416870342111237271108081445203718027010684931093778410812378296721 - - - - __square_com__4 = (__decomp_com__4)^(__decomp__4)(g_2)^(((__randExp__0)-(((__randsquare__1)+(__randsquare__2))+(__randsquare__3)))-((__decomp__4)*(__randdecomp__4))) in secondGroup - - 26939859187888798061108345523159082128956841460409614241711496555793431147787289083005758495101957105247577452885170881958819088945464414494605526895986315551205956392785629134370005464422628650241915231714608305033691059597266700878210597198925688768006970854335898233384973774637664194716034336938049100876 - - - - __square_com__3 = (__decomp_com__3)^(__decomp__3)(g_2)^((__randsquare__3)-((__decomp__3)*(__randdecomp__3))) in secondGroup - - 15228242000542765650029279800356759814038719647153139559997032441037513275508233148975850272548546226849973747761140615682262970355848866618833857471181156768422616778853588338047499049984666851012118627931039293990449574817373619447070157430779515149745633103927411751659188351591677202901467315078209401968 - - - - __decomp_com__2 = (g_1)^(__decomp__2)(g_2)^(__randdecomp__2) in secondGroup - - 9745693350023924980461843793399725274931436455175028583445176845658320725402810365604107540905268355263696448037086774141185250526936920726584562120702452901596797930436140426725891592804478470854573764593937399365983187029364433741451764435320454962633278783326462539131987992671503228373066208049363091353 - - - - __square_com__15 = (__decomp_com__15)^(__decomp__15)(g_2)^((__randsquare__15)-((__decomp__15)*(__randdecomp__15))) in secondGroup - - 104176605680587341143774882484003255172422399879504078617494329999176927081130766634042229329231044532094461875934381086436843465415633994713418348537318435389412528249157449099022084888876120954438634320738181095040007440819549704856962377815105161833402982066406044300580626412927474682360468577250992787612 - - - - __square_com__8 = (__decomp_com__8)^(__decomp__8)(g_2)^((__randsquare__8)-((__decomp__8)*(__randdecomp__8))) in secondGroup - - 8555419856266700641550402739834526014847802794053236036977387500433179349063048002207002570454153288239399766480998363592991121924749934949131753218897863836664546529726232809158205925864317143181290007892347565165346525857597038360423449894004502788311871767409950048574493649317236028255209086618749424655 - - - - __decomp_com__9 = (g_1)^(__decomp__9)(g_2)^(__randdecomp__9) in secondGroup - - 70093895954323489027343287849978040175834265569941715779591317144846235382656992106209717474201613852119081278937596316674302458972935192503501243475246025563303013093601332737117942611783363615781067094633074986062178048706277601482964035524346293144460132589853705308064821385578602886472375805552885381199 - - - - usquared_2 = (a_2)^((2)*(r))(b)^((2)*(x_2)) in G - - 3781735193753561508863698270260159602643238663884132617724877372899575065687400452791020293001509601809407557582050848145861314089824108017627905955699918346653513830942223739246889635785382198658356545467987423843437529761710445850577869196050324586574051667515960889337272910603847701401140295201459322290146253091154779073827486431631375185419733246565160046618073163594553384149988078513044862342507423615425723450493536966093241046972078812053461215047540510800187316125255803868624829292788635963970139955027689917475236322685826772022682719107372631163118239331481408296088467445029951467239947343872050873691 - - - - usquared_3 = (a_3)^((2)*(r))(b)^((2)*(x_3)) in G - - 10037710614898850820136750958158972952071013048065218709134984587913328743257698654174843973013588078770492693319833762510401966463300772827726554982943702280844729070797709283972874449709815751680999288534912467625679931428080027118069193930261069067894569268448530980458781825049026069166499650298293566535012219128446090377480943601785497200085698164735098539207650595324692260200418323354178900060066643266294329462640346607462606803926481919639505038800670071445885827793093283328812693450660151225524550359798181653998310712169224955581065581099264189737640128598226498178247697055742503766647734510694389530579 - - - - vsquared = (f)^((2)*(r)) in G - - 4260694339777540709036205110133047007102972392151742369573260474393872184869505487583762861042049755798295839861439619518331327722550270921868676695271210840311161796989484949893945990485169721488586011740779872731017122226042656868062479906778657548790809051594397176970198618950629042855883988901923332121262262574003447664998323422021709888311360411192512389278725052401061925086988377892532186292742025531544844140263372625607702425419617251428252170165673540545323110613771531493630041710717349042375743110446367197688704242630280770144654461182555733438919340212842313606642622268679610695669163785509908316911 - - - - __prod_commitment__6 = (__xLo_commitment__6)^(((N)/(2))-(x_2))(g_2)^((__randExp__6)-((((N)/(2))-(x_2))*(r_2))) in secondGroup - - 75578851147120173203036640017740149117354630439241627643883261346220920366259119859514536006736081806740811393895328658006786180023393217757482168593571890813054854449629925312388343716543920128700285837994386345342204211169607999266425165577767873162827285165111741216214447031005543903793506098537243037402 - - - - __decomp_com__1 = (g_1)^(__decomp__1)(g_2)^(__randdecomp__1) in secondGroup - - 77116077258093473950251500340149976127073768525061319361970496447264008331306753132919152752877424140770870641950988418363158341225795970242195093295877387198976560756605243087335092925976219425960760357583249579228418009947904380755281080752962910357804772504644292121575290160777896538647079252445698959858 - - - - __square_com__1 = (__decomp_com__1)^(__decomp__1)(g_2)^((__randsquare__1)-((__decomp__1)*(__randdecomp__1))) in secondGroup - - 27659812816766887863430436816405803520581183995422299304172810164191154758813077754926897622495897902650987000907643509989908093225803130144529118786836544822615011321342869866628822104513148680593909789169520187748926899700012059273105460377818307469732072515535713246018613968381398864237528621463478451653 - - - - __square_com__2 = (__decomp_com__2)^(__decomp__2)(g_2)^((__randsquare__2)-((__decomp__2)*(__randdecomp__2))) in secondGroup - - 93880031082799725006678014237164809780878556765619887563975773376214147266044056050106475517054712325913241413071554152075178537485501008972054330510465543742726530965353087699164893142208589364985133113373207776594171512818597650768087814062632943937577225872952545058738117065168057620328258011053206995080 - - - - __square_com__9 = (__decomp_com__9)^(__decomp__9)(g_2)^((__randsquare__9)-((__decomp__9)*(__randdecomp__9))) in secondGroup - - 90808627450301804963389149039007705397199657562646283222298142131503236324359106704689128539993612279209658019678302289507591030043580509302448441472871606860484101410179370704003884261797039742765584267879823416974955132112083640848106998339713133932744838848609966687066747337251542735537312192658289986820 - - - - __prod_commitment__0 = (__xLo_commitment__0)^(((N)/(2))-(x_1))(g_2)^((__randExp__0)-((((N)/(2))-(x_1))*(r_1))) in secondGroup - - 26423976797407536978878044700983359433070430236372504643811102557500064343282760383638538367984705526274161781408736828880901548063085123427408869873879852559018013943743525882309134095909915397829625822552626304892180700774044447639999266916194761201545450729240637017410924800770053501552359160505652560921 - - - - __square_com__7 = (__decomp_com__7)^(__decomp__7)(g_2)^((__randsquare__7)-((__decomp__7)*(__randdecomp__7))) in secondGroup - - 75640200102878653128865799068288504798419381948932597716839734810798394622364381369302792879956758267628972347438026181981134968360840259588805584543914418823694895736411440664694379282353185081036367303142463373305935403967896866385805585809163051279020471701958868121518857754410239521175837952555799447545 - - - - __square_com__16 = (__decomp_com__16)^(__decomp__16)(g_2)^(((__randExp__12)-(((__randsquare__13)+(__randsquare__14))+(__randsquare__15)))-((__decomp__16)*(__randdecomp__16))) in secondGroup - - 62993308593983530140620526235739930681804080921852909270091138177421864456086348938101769469578404965996434463506291689573027306761553561567833420748164163328799390327296294693827050472756381446457356650877988723784098682713637069592547909212746639281196648659648537672594332985413252908028663595995876999471 - - - - __hiX_commitment__6 = (g_1)^(((N)/(2))-(x_2))(g_2)^(-r_2) in secondGroup - - 107129287601946331249806470412316184053506866337201810726585481769980458875429269516117650986344811853321569279825201999871919051111293440073426890536894625013743006363769275692141566049099494479087839807987361027793178838766849372234775507899859693185733901705813075605825375061454170851692365869975583911343 - - - - usquared_1 = (a_1)^((2)*(r))(b)^((2)*(x_1)) in G - - 2100041378114660783666246467865946673981227402761326441199884443748471327662874901593986828271313860877881290931251030837269930910690913079169972073843273500606940898506364115724781833914368836678765731779844568907584579263949989596702502732791762500540553498134529783559609419727419447618999636232844267068759194466292091252592730908378729475931393163041288315708890529249153977116657235616317339407986946364104810737308842456587301101758347768571348451248557402609447316161499076989828291278823669557693216706416004212623913895379949568623674703131532334551677361675030020578392460759755536917831977595857499173171 - - - - __decomp_com__15 = (g_1)^(__decomp__15)(g_2)^(__randdecomp__15) in secondGroup - - 59427814400259287908909654467597923028798233661916532557198072350096439127224364630811410849247496037183952856526118392533962877001641556668474359805776414597382473133316347472096748457439246290178217759477499939072041426368024697828252811191277690009767472763406199721519211355555575017637394127325827914594 - - - - Xprime = (h)^(s)(g_2)^(x_2)(g_1)^(x_1)(g_3)^(x_3) in secondGroup - - 26999204700346411148415969200380363465066367647002513964582205594158118983168884993041826590795571356596481123480677616284756765252325528498645846677733421231787848751385126200012627513048017853036968392487433853051860825711774444624466584887199888598725307589694232328412865328197812372598367432411436487200 - - - - __hiX_commitment__0 = (g_1)^(((N)/(2))-(x_1))(g_2)^(-r_1) in secondGroup - - 50352642589570243789079921510206452103325622383518207175893462584073681990422100726205084489822608396611838279645475258938109912720924624784836392221930922966228109468708035173429384909865356670863470129787994608631658247929024419559944237335247190333141025057761774168009018011727745898218655149039997044589 - - - - __square_com__10 = (__decomp_com__10)^(__decomp__10)(g_2)^(((__randExp__6)-(((__randsquare__7)+(__randsquare__8))+(__randsquare__9)))-((__decomp__10)*(__randdecomp__10))) in secondGroup - - 14802021608910031669337934357997841906490434573741149297987567914745180925993673486620419799975099438456077223504687966704585911921901850776972509848547241424611283973670616840006973554078894952319634808346405578383145852154103434727486232588648796637122128866488546210866113632577058712613888712582137176845 - - - - X = (f_2)^(x_2)(f_1)^(x_1)(f_3)^(x_3) in cashGroup - - 64021382408920323838378684038649778113860844944663075157313674565339596919906921443481929083045348351313468395196427317709609596245645507477295154234711831796617290144578461400482352462842663866613620283342500591681753137563032728990332636153048958707297427148027243311867683862335809839336541546739412798909 - - - - __decomp_com__3 = (g_1)^(__decomp__3)(g_2)^(__randdecomp__3) in secondGroup - - 107332279385301540794122668419159004683153196260860730629037742151860275797081993681491657944739934213700847892586398440952753205641770285683012640705270696924380852870191879150200103743888960662855245681407673643060830381649633081907919173215074893308955548316333071174196932335041199385629088061455021154748 - - - - __decomp_com__10 = (g_1)^(__decomp__10)(g_2)^(__randdecomp__10) in secondGroup - - 20507610339147400435483091526363552567991429826016486889251759171141447703900767974890908517760235008986708880301959482966260938075000167864817718262971485686732321968316525288798792371190598191071664468106954094980818758795713955819097569217299056194141876690166830544410521768158313960420883464173548199318 - - - - __decomp_com__7 = (g_1)^(__decomp__7)(g_2)^(__randdecomp__7) in secondGroup - - 64434400254118453476074300771608511824044959858698526361824246673408342946381654825928292838618442425101173569082957628344497434605962500077190455100737127839857174210695116157801607259132120971251616541201647116741724522056690942975789938140011605101673365952452407995707052763244692915998715903759787839115 - - - - __square_com__13 = (__decomp_com__13)^(__decomp__13)(g_2)^((__randsquare__13)-((__decomp__13)*(__randdecomp__13))) in secondGroup - - 48791151109912294865927911025671041698764748349805578836698440624491812479322637385520795471126995769046175202907420271186028121637505755611201008373871029884241077285892870335079197058877453211253624599959885272400829435919622630711949889457158526512212907147500192765932388921483724611487261251751053538047 - - - - __decomp_com__14 = (g_1)^(__decomp__14)(g_2)^(__randdecomp__14) in secondGroup - - 77664039267665027652678976912797060528186334309034382947462180136970841745035088096779027277251723573963843864553148512490353566687663158476483536699077018100905078928647237046553965980546738643225845519135267832529788639863137901036266347780819959089926458557727081391728231364110240053585218378658242556842 - - - - __decomp_com__8 = (g_1)^(__decomp__8)(g_2)^(__randdecomp__8) in secondGroup - - 76969215606722698739324557019494690730961300463448363836273779452254279082489086030616201902406587564580682839832799052271877213724849762886177853653204690402808587144214000934300190326162132686631692035278719756746678098692712990105911920009284902060904924178585729456497292162045774711384206881546554187543 - - - - __decomp_com__4 = (g_1)^(__decomp__4)(g_2)^(__randdecomp__4) in secondGroup - - 61669430484812839359397737039720852278392960080961713287490888238607315773728021304930084580548492130137994921240616955317973931300407357903851046142824362287206349680530429980602839503881794278339450336903755739433992940096500682765353874884401686886571019914255571343113182319918551150401707351460214983715 - - - - __prod_commitment__12 = (__xLo_commitment__12)^(((N)/(2))-(x_3))(g_2)^((__randExp__12)-((((N)/(2))-(x_3))*(r_3))) in secondGroup - - 51453469568845994813650854920033498540326832568485206719791994304050775042448224151759894871601910062083177013816360995442063272341869258997597573310500143960615756407969581514951264410800801070376282921396944712009664931514920852952992305653379557783414368970823765441731388769443943841815131734808820101003 - - - - - - - - From c68957ca12d344fa7ee2416deb1bbd8b9153e533 Mon Sep 17 00:00:00 2001 From: chris erway Date: Thu, 3 Feb 2011 07:07:52 +0000 Subject: [PATCH 12/31] use std::map to fix serialization tests for now --- src/Seller.cpp | 3 ++- src/SigmaProof.h | 4 ++++ src/Test.cpp | 2 +- src/ZKP/Environment.h | 4 ++++ 4 files changed, 11 insertions(+), 2 deletions(-) diff --git a/src/Seller.cpp b/src/Seller.cpp index 6015f84..6b19972 100644 --- a/src/Seller.cpp +++ b/src/Seller.cpp @@ -45,7 +45,8 @@ Seller::Seller(const Seller& o) /*----------------------------------------------------------------------------*/ // Destructor Seller::~Seller() { - reset(); +// reset(); + cout << "Seller::~Seller() going away" << endl; } void Seller::reset() { diff --git a/src/SigmaProof.h b/src/SigmaProof.h index 38f4311..7269d44 100644 --- a/src/SigmaProof.h +++ b/src/SigmaProof.h @@ -16,6 +16,10 @@ #include "Debug.h" #include "Hash.h" +#ifndef USE_STD_MAP +#define USE_STD_MAP 1 +#endif + #ifdef USE_STD_MAP #include typedef map var_map; diff --git a/src/Test.cpp b/src/Test.cpp index 7a7228d..ca0137d 100644 --- a/src/Test.cpp +++ b/src/Test.cpp @@ -1543,7 +1543,7 @@ double* testBuy() { << endl; // test saving and loading BuyMessage - string bmsg = saveGZString(*buyMessage); + string bmsg = saveString(*buyMessage); saveXML(make_nvp("BuyMessage", *buyMessage), "buym1.xml"); BuyMessage* loadedBMsg = new BuyMessage(bmsg, params); saveXML(make_nvp("BuyMessage", *loadedBMsg), "buym2.xml"); diff --git a/src/ZKP/Environment.h b/src/ZKP/Environment.h index 24ccfbd..3d9620d 100644 --- a/src/ZKP/Environment.h +++ b/src/ZKP/Environment.h @@ -4,6 +4,10 @@ #include "../Group.h" +#ifndef USE_STD_MAP +#define USE_STD_MAP 1 +#endif + #ifdef USE_STD_MAP // XXX for some reason, BuyMessages are not working when unordered_map // is used in ProofMessages: may have to do with map serialization From 7ab320fda5532d04c6c0eea73538a160a22a33c4 Mon Sep 17 00:00:00 2001 From: chris erway Date: Thu, 3 Feb 2011 07:20:00 +0000 Subject: [PATCH 13/31] Revert "add operator== testers to some classes (for debugging)" This reverts commit bcb211428e6d0c88391d2095d6c0e08e3a733546. --- src/BankParameters.h | 48 ------------------------------------------- src/Coin.cpp | 32 ----------------------------- src/Coin.h | 3 --- src/Group.h | 9 -------- src/GroupPrime.h | 7 ------- src/GroupRSA.h | 7 ------- src/SigmaProof.h | 6 +++--- src/ZKP/Environment.h | 6 ------ 8 files changed, 3 insertions(+), 115 deletions(-) diff --git a/src/BankParameters.h b/src/BankParameters.h index 79e9a75..dfe8e87 100644 --- a/src/BankParameters.h +++ b/src/BankParameters.h @@ -40,54 +40,6 @@ class BankParameters { /*! clear all secrets and set type to public */ void makePublic(); - virtual bool operator==(const BankParameters& o) const { - - if (!( *ecashGroup == *o.ecashGroup && - type == o.type && - stat == o.stat && - coinDenominations == o.coinDenominations && - secretKeys.size() == o.secretKeys.size() && - groupToDenom.size() == o.groupToDenom.size() && - denomToGroup.size() == o.denomToGroup.size() )) - return false; - - for (size_t i = 0; i < secretKeys.size(); ++i) { - if (!(*secretKeys[i] == *o.secretKeys[i])) - return false; - } - - for (map::const_iterator i = denomToGroup.begin(); - i != denomToGroup.end(); ++i) { - - map::const_iterator j = o.denomToGroup.find(i->first); - if (j == o.denomToGroup.end()) - return false; - - if (!( *j->second == *i->second )) - return false; - - } - - for (map::const_iterator i = groupToDenom.begin(); - i != groupToDenom.end(); ++i) { - - // check for matching group key - for (map::const_iterator oi = o.groupToDenom.begin(); - oi != o.groupToDenom.end(); ++oi) { - - if (*i->first == *oi->first) { - // found, check denom value - if (i->second == oi->second) - continue; // OK, same denomination for this group - else - return false; - } - } - } - - return true; - } - private: BankParameters() : type(1) {} diff --git a/src/Coin.cpp b/src/Coin.cpp index aa79f75..1421745 100644 --- a/src/Coin.cpp +++ b/src/Coin.cpp @@ -147,35 +147,3 @@ hash_t Coin::hash() const { return Hash::hash(ZZToBytes(S), Hash::SHA1, string(), Hash::TYPE_PLAIN); } - -bool Coin::operator==(const Coin &o) const { - - return (stat == o.stat && - lx == o.lx && - coinDenom == o.coinDenom && - walletSize == o.walletSize && - coinIndex == o.coinIndex && - R == o.R && - hashAlg == o.hashAlg && - B == o.B && - C == o.C && - D == o.D && - S == o.S && - T == o.T && - endorsement == o.endorsement && - signature == o.signature && - y == o.y && - coinProof == o.coinProof && - clProof == o.clProof && - - *parameters == *o.parameters //&& - -#if 0 - // secrets - sk_u == o.sk_u && - s == o.s && - t == o.t && -#endif - ); - -} diff --git a/src/Coin.h b/src/Coin.h index c5f2122..fcae4a8 100644 --- a/src/Coin.h +++ b/src/Coin.h @@ -67,9 +67,6 @@ class Coin { hash_t hash() const; - bool operator==(const Coin &o) const; - bool operator!=(const Coin &o) const { return !(*this == o); } - private: int stat, lx, coinDenom; Ptr parameters; // NOT serialized diff --git a/src/Group.h b/src/Group.h index 45eb6fe..472f381 100644 --- a/src/Group.h +++ b/src/Group.h @@ -97,15 +97,6 @@ class Group { /*! Used to determine whether the group is trusted. */ virtual bool checkPreconditions() const = 0; - virtual bool operator==(const Group& o) const { - return (modulusLength == o.modulusLength && - orderLength == o.orderLength && - generators == o.generators && - isTrusted == o.isTrusted && - modulus == o.modulus && - type == o.type); - } - int modulusLength; int orderLength; vector generators; diff --git a/src/GroupPrime.h b/src/GroupPrime.h index 44b7961..3e4cb6a 100644 --- a/src/GroupPrime.h +++ b/src/GroupPrime.h @@ -45,13 +45,6 @@ class GroupPrime : public Group { virtual void debug() const; - virtual bool operator==(const GroupPrime& o) const { - return (Group::operator==(o) && - order == o.order && - factor == o.factor && - stat == o.stat); - } - protected: /*! returns true iff 1 <= exp < order */ bool isProperExponent(const ZZ &exp) const; diff --git a/src/GroupRSA.h b/src/GroupRSA.h index 7a2b799..a80f649 100644 --- a/src/GroupRSA.h +++ b/src/GroupRSA.h @@ -53,13 +53,6 @@ class GroupRSA : public Group { /*! debug */ virtual void debug() const; - virtual bool operator==(const GroupRSA& o) const { - return (Group::operator==(o) && - p == o.p && - q == o.q && - stat == o.stat); - } - protected: /*! checks to make sure preconditions are satisfied */ virtual bool checkPreconditions() const; diff --git a/src/SigmaProof.h b/src/SigmaProof.h index 7269d44..2aa75ea 100644 --- a/src/SigmaProof.h +++ b/src/SigmaProof.h @@ -55,11 +55,11 @@ class SigmaProof { /*! gets our third-round messages */ var_map getResponses() const { return responses; } - bool operator==(const SigmaProof& other) const { + // XXX: what about commitments? + bool operator==(const SigmaProof& other) { return (randomizedProofs == other.randomizedProofs && responses == other.responses && - hashAlg == other.hashAlg && - commitments == other.commitments); + hashAlg == other.hashAlg); } void dump() const; diff --git a/src/ZKP/Environment.h b/src/ZKP/Environment.h index f2e1cac..d5b06de 100644 --- a/src/ZKP/Environment.h +++ b/src/ZKP/Environment.h @@ -75,12 +75,6 @@ struct ProofMessage { variable_map publics; SigmaProof proof; - bool operator==(const ProofMessage& other) const { - return (vars == other.vars && - publics == other.publics && - proof == other.proof); - } - // need to be able to serialize this friend class boost::serialization::access; template From 0c3d2daf491623c6dee61b4ad955e5988c6465f0 Mon Sep 17 00:00:00 2001 From: chris erway Date: Thu, 3 Feb 2011 07:33:12 +0000 Subject: [PATCH 14/31] fix interleaved/repeated withdraw tests with shared_ptr --- src/Test.cpp | 90 ++++++++++++++++++++++++---------------------------- 1 file changed, 41 insertions(+), 49 deletions(-) diff --git a/src/Test.cpp b/src/Test.cpp index a8a2e88..96d7bcf 100644 --- a/src/Test.cpp +++ b/src/Test.cpp @@ -1175,21 +1175,17 @@ double* testWithdrawInterleaved() { // load bank and user from file BankTool bankTool("tool.80.bank"); - const BankParameters* params = new BankParameters("bank.80.params"); - - // create new user - VEPublicKey vepk("public.80.arbiter"); - VEPublicKey repk("public.regular.80.arbiter"); - UserTool userTool(stat, 2*stat, params, vepk, repk, hashAlg); -// UserTool userTool("tool.80.user", params, "public.80.arbiter", -// "public.regular.80.arbiter"); + Ptr params = new_ptr("bank.80.params"); + + UserTool userTool("tool.80.user", params, "public.80.arbiter", + "public.regular.80.arbiter"); cout << "user pubkey " << userTool.getPublicKey() << endl; // step 1: user sends bank the public key and desired wallet size ZZ userPK = userTool.getPublicKey(); // also uses tool for withdrawing - UserWithdrawTool* uwTool1 = userTool.getWithdrawTool(walletSize, coinDenom1); - UserWithdrawTool* uwTool2 = userTool.getWithdrawTool(walletSize, coinDenom2); + Ptr uwTool1 = userTool.getWithdrawTool(walletSize, coinDenom1); + Ptr uwTool2 = userTool.getWithdrawTool(walletSize, coinDenom2); // also sends partial commitment (in partial commitment to s') startTimer(); ZZ sPrimeCom1 = uwTool1->createPartialCommitment(); @@ -1199,8 +1195,8 @@ double* testWithdrawInterleaved() { cout << "Partial commitment 2 size: " < bwTool1 = bankTool.getWithdrawTool(userPK, walletSize, coinDenom1); + Ptr bwTool2 = bankTool.getWithdrawTool(userPK, walletSize, coinDenom2); // given commitment to s', computes full commitment to s = s' + r' startTimer(); @@ -1216,10 +1212,10 @@ double* testWithdrawInterleaved() { // step 3: now, the user sends bank a proof of identity and a proof // from the CL signature protocol startTimer(); - ProofMessage* idProof1 = uwTool1->initiateSignature(bankPart1); - ProofMessage* idProof2 = uwTool2->initiateSignature(bankPart2); - ProofMessage* clProof1 = uwTool1->getCLProof(); - ProofMessage* clProof2 = uwTool2->getCLProof(); + Ptr idProof1 = uwTool1->initiateSignature(bankPart1); + Ptr idProof2 = uwTool2->initiateSignature(bankPart2); + Ptr clProof1 = uwTool1->getCLProof(); + Ptr clProof2 = uwTool2->getCLProof(); timers[timer++] = printTimer(timer, "User created proof of identity, as " "well as all commitments"); cout << "ID proof size: " << saveGZString(*idProof1).size() << endl; @@ -1231,8 +1227,8 @@ double* testWithdrawInterleaved() { // signature // bank also needs to send a proof of knowledge of 1/e startTimer(); - ProofMessage* pm1 = bwTool1->sign(idProof1, clProof1); - ProofMessage* pm2 = bwTool2->sign(idProof2, clProof2); + Ptr pm1 = bwTool1->sign(idProof1, clProof1); + Ptr pm2 = bwTool2->sign(idProof2, clProof2); timers[timer++] = printTimer(timer, "Bank created PoK of 1/e and partial " "signature"); cout << "Bank proof 1 size: " << saveGZString(*pm1).size() << endl; @@ -1263,14 +1259,14 @@ double* testWithdrawInterleaved() { ZZ rVal2 = Hash::hash(contractInfo2, hashAlg); startTimer(); - Coin coin1 = wallet1.nextCoin(rVal1); - Coin coin2 = wallet2.nextCoin(rVal2); + Ptr coin1 = wallet1.nextCoin(rVal1); + Ptr coin2 = wallet2.nextCoin(rVal2); timers[timer++] = printTimer(timer, "Got a coin from the wallet"); - coin1.unendorse(); - coin2.unendorse(); - bool coinVerified1 = coin1.verifyCoin(); - bool coinVerified2 = coin2.verifyCoin(); + coin1->unendorse(); + coin2->unendorse(); + bool coinVerified1 = coin1->verifyCoin(); + bool coinVerified2 = coin2->verifyCoin(); cout << (coinVerified1 ? "Coin 1 successfully verified and we're done!" : "Coin 1 failed to verify") << endl; cout << (coinVerified2 ? "Coin 2 successfully verified and we're done!" : "Coin 2 failed to verify") << endl; @@ -1290,20 +1286,16 @@ double* testWithdrawRepeated() { // load bank and user from file BankTool bankTool("tool.80.bank"); - const BankParameters* params = new BankParameters("bank.80.params"); - - // create new user - VEPublicKey vepk("public.80.arbiter"); - VEPublicKey repk("public.regular.80.arbiter"); - UserTool userTool(stat, 2*stat, params, vepk, repk, hashAlg); -// UserTool userTool("tool.80.user", params, "public.80.arbiter", -// "public.regular.80.arbiter"); + Ptr params = new_ptr("bank.80.params"); + + UserTool userTool("tool.80.user", params, "public.80.arbiter", + "public.regular.80.arbiter"); cout << "user pubkey " << userTool.getPublicKey() << endl; // step 1: user sends bank the public key and desired wallet size ZZ userPK = userTool.getPublicKey(); // also uses tool for withdrawing - UserWithdrawTool* uwTool1 = userTool.getWithdrawTool(walletSize, coinDenom1); + Ptr uwTool1 = userTool.getWithdrawTool(walletSize, coinDenom1); // also sends partial commitment (in partial commitment to s') startTimer(); ZZ sPrimeCom1 = uwTool1->createPartialCommitment(); @@ -1311,7 +1303,7 @@ double* testWithdrawRepeated() { cout << "Partial commitment 1 size: " < bwTool1 = bankTool.getWithdrawTool(userPK, walletSize, coinDenom1); // given commitment to s', computes full commitment to s = s' + r' startTimer(); @@ -1324,8 +1316,8 @@ double* testWithdrawRepeated() { // step 3: now, the user sends bank a proof of identity and a proof // from the CL signature protocol startTimer(); - ProofMessage* idProof1 = uwTool1->initiateSignature(bankPart1); - ProofMessage* clProof1 = uwTool1->getCLProof(); + Ptr idProof1 = uwTool1->initiateSignature(bankPart1); + Ptr clProof1 = uwTool1->getCLProof(); timers[timer++] = printTimer(timer, "User created proof of identity, as " "well as all commitments"); cout << "ID proof size: " << saveGZString(*idProof1).size() << endl; @@ -1335,7 +1327,7 @@ double* testWithdrawRepeated() { // signature // bank also needs to send a proof of knowledge of 1/e startTimer(); - ProofMessage* pm1 = bwTool1->sign(idProof1, clProof1); + Ptr pm1 = bwTool1->sign(idProof1, clProof1); timers[timer++] = printTimer(timer, "Bank created PoK of 1/e and partial " "signature"); cout << "Bank proof 1 size: " << saveGZString(*pm1).size() << endl; @@ -1359,29 +1351,29 @@ double* testWithdrawRepeated() { ZZ rVal1 = Hash::hash(contractInfo1, hashAlg); startTimer(); - Coin coin1 = wallet1.nextCoin(rVal1); + Ptr coin1 = wallet1.nextCoin(rVal1); timers[timer++] = printTimer(timer, "Got a coin from the wallet"); - coin1.unendorse(); - bool coinVerified1 = coin1.verifyCoin(); + coin1->unendorse(); + bool coinVerified1 = coin1->verifyCoin(); cout << (coinVerified1 ? "Coin 1 successfully verified and we're done!" : "Coin 1 failed to verify") << endl; // // now do it again, with a different denom // - //UserWithdrawTool* uwTool2 = userTool.getWithdrawTool(walletSize, coinDenom1); // works (weird, why?) - UserWithdrawTool* uwTool2 = userTool.getWithdrawTool(walletSize, coinDenom2); // doesn't work + //Ptr uwTool2 = userTool.getWithdrawTool(walletSize, coinDenom1); // works (weird, why?) + Ptr uwTool2 = userTool.getWithdrawTool(walletSize, coinDenom2); // doesn't work ZZ sPrimeCom2 = uwTool2->createPartialCommitment(); cout << "Partial commitment 2 size: " < bwTool2 = bankTool.getWithdrawTool(userPK, walletSize, coinDenom2); bwTool2->computeFullCommitment(sPrimeCom2); ZZ bankPart2 = bwTool2->getBankContribution(); cout << "Bank contribution 2 size: " << saveGZString(bankPart2).size() << endl; - ProofMessage* idProof2 = uwTool2->initiateSignature(bankPart2); - ProofMessage* clProof2 = uwTool2->getCLProof(); + Ptr idProof2 = uwTool2->initiateSignature(bankPart2); + Ptr clProof2 = uwTool2->getCLProof(); cout << "ID proof size: " << saveGZString(*idProof2).size() << endl; cout << "CL proof size: " << saveGZString(*clProof2).size() << endl; - ProofMessage* pm2 = bwTool2->sign(idProof2, clProof2); + Ptr pm2 = bwTool2->sign(idProof2, clProof2); cout << "Bank proof 2 size: " << saveGZString(*pm2).size() << endl; cout << "Verifying proof message 2" << endl; vector partialSig2 = uwTool2->verify(*pm2); @@ -1389,9 +1381,9 @@ double* testWithdrawRepeated() { vector contractInfo2; contractInfo2.push_back(1234567891); ZZ rVal2 = Hash::hash(contractInfo2, hashAlg); - Coin coin2 = wallet2.nextCoin(rVal2); - coin2.unendorse(); - bool coinVerified2 = coin2.verifyCoin(); + Ptr coin2 = wallet2.nextCoin(rVal2); + coin2->unendorse(); + bool coinVerified2 = coin2->verifyCoin(); cout << (coinVerified2 ? "Coin 2 successfully verified and we're done!" : "Coin 2 failed to verify") << endl; return timers; From 245890ee75b56058ace8fbad47ecd2fe10c29c64 Mon Sep 17 00:00:00 2001 From: chris erway Date: Thu, 3 Feb 2011 07:33:20 +0000 Subject: [PATCH 15/31] regenerate params with std::map and shared_ptr --- src/bank.128.params | 665 +++++-- src/bank.80.params | 1455 ++++++++++------ src/public.128.arbiter | 26 +- src/public.80.arbiter | 28 +- src/public.regular.128.arbiter | 2068 +++++++++++----------- src/public.regular.80.arbiter | 2070 +++++++++++----------- src/secret.128.arbiter | 18 +- src/secret.80.arbiter | 20 +- src/secret.regular.128.arbiter | 18 +- src/secret.regular.80.arbiter | 20 +- src/tool.128.bank | 1242 ++++++++++++-- src/tool.128.user | 10 +- src/tool.80.bank | 2947 +++++++++++++++++++------------- src/tool.80.user | 12 +- src/wallet.80 | 180 +- 15 files changed, 6584 insertions(+), 4195 deletions(-) diff --git a/src/bank.128.params b/src/bank.128.params index 36662fd..1f08424 100644 --- a/src/bank.128.params +++ b/src/bank.128.params @@ -8,37 +8,37 @@ 1024 - 90000278626803335022071328928549219898885302384625475495696392398041617532339176000781540756682863545809747716887032755416794808588346560036356164136120481509791718483984106496955595265188352354812499812418959904332704497109194612021405713759146559536486405580066561793963466329799894446251125233278254413761 + 132586371625540188272717355152503291082194944773874348160730089517080215758433188246670084161603515500793161734437218894423509289350667458921271350716482458292925230825020579791114673070527334926842852620298590627765794522844957752136110446956842602639569535315869135720632207165398851660087123916784626668767 256 5 0 - 84952928249130151973298415363181405934425632655632115778308463282059463338236865931296101426297526563658948002184139200999561648482881839074260566238572499825086270525185681999983976048752950468110441838444302174536840077824800149658497720596712765680466487230694643780160720986569161115381394045270542636932 + 444711850241942269050111205816993253499463843473002504230110807671858222694554383347572694188908315571195087707305820529714310842879637068467519625933412377458243347380733774223351850987694051531205308113161321536862250254739554299924124841693266077654147765674885354260594228125335613642200900313119427348 - 83823422347071832310202241797538871759236875794554776551486639777920752474612093767516062853883710596935352567774526909794499891200906130963998176677545477005366895241130475505211733945760424486160628732385405224275208066995806606801340910680568282711150291170703079865519290710972910144663841430640073036682 + 41209700743355705032564005698395214498347760801263036391725228647895399675349309961563091880132407824781831813354255190803445597632918140497013072056912901544642784200428099098365026588833346657366789993561623223604080325091007601542298019609963768335818282029672642560574744501300661128117046024817359001171 - 35849089841289364253948714258020208204685671356192581855290227852019018717483998411587574342873073385258079658259115340273378168186154479042131730008910591593996492861747136750988844665985839953392124822100746029014207531228044262221891487246321361562775577782777086133079091066696462712996192835906944242313 + 6446456249053093712961774394830159504216368184920731966306588476349458057905082189424010275845221210118048230949644397292764394544137466107406978764846181873083683095375933965624031102370398802846797896837427933100851422401896782450351306623941971756959103392771121916978470960251274981347667713918996206728 - 44993111468035458127411254007557303514163354764312226352950806441073903717588225250519315301972483469299887688008374022117971393356091547860989811367738243460295286919643706409540086559785015845310269696573602593867769133816054050072346574989513809640700623477366965793690586571852070177920494937227461227038 + 128942009923248960202737989392555192330948309662109430333408015279051100756002214687447459166616926309107942733466318315371686086938737877455146081585461954655266849660331645493441582178573313181967415653285373999772877564781127798233564477855600314888538458827047031018920203481156313317224425513356998517395 - 47782751121904984867222975138034478658259829592117370523490446306353366571924009941190387774146363339850170365479666714437521691944370239748413195524036565698748289347186014293129251732791859921500089288180751097409013466303883577937739199270126924794903240806647241648473248286304241245639154764388575161214 + 105646044682501949175359480662828487821338614225024760040207388881353954698978011716470791029007776608699222164864942659473657227664662524379359672974579454113718951885356016174720789985679456503861201845756012281572121424844270023329653340683868555098515545228296050473146879950379143230651068209639817637098 1 1 - 58833984347066500481753679622935614690148767231727264912768190102759804491277 + 99943103275601323334379680290023552572863829986595931543298554810786122880601 128 - 1529732851269842743606688651498541651235063375097047922528069742157086152065901175156893928008071924464798570438896914537414484496691904452286113910073258123605413924828169154006478218771173871524710107131729509569405208275205170880 + 1326618518737829952594896457296731573831666075318061668513236789468585250868493936789556007769924143075274891558400451748309669686657868181944670361332155622022465687486173299989326763682367912910270126971637522343847475638855089166 @@ -50,29 +50,29 @@ 1024 - 141616585298119217169938673619272677876305616664907670349462441847709088908557544251515175474998451124985776273719472516186975914732010747332385402556781605861230647217768774351246547532123486873407558305048213544186544101822289439187078298382239897163140169395914127785862389362310917083618805462620101257137 + 99683430209219299202938906775017606724469428760930594089358427410134860618365868965004793074091319467805535748972215503524038403535258504555855034146311628672944167557855048795425950230778419329914800959299004291330197945213922372702252933746294221376666676943038735011157528710864090248805630235321387417233 1024 6 0 - 123727109476116790943807606276979081317838052696320038195918991980066492632864230426852841587692914942820131088423410904298112220663912397253955152150290232236846510050561379085907165419811686059157224902031906975841439950319087019658750534314932635772345543751326282412575589843075956716620069519309950766707 + 44374832064487549703432106936110733223763329868662976410465532166844075257057406776673624549161360987249861412044599719051898091867684286031639599197726655387219559815670638611226141829724813072055389849106845806446371521054197013515692281584194734156442408523349320037692677236600725489054906594525371744098 - 16739121827871785835444215380519805044105898801943828077420183146702251620562505157459967480939750191428737889787196437057661410936990325964940540163810527097601732711128952991104601176625485059333229818650182275857725956838887432973203079413493497365404762545005809784649881008806121874429232135314954947917 + 4630463067468923828162750583060014163210626720569193915638610638185648687072871454313570584495776843106357295879749151692425383863181535413318641399457012780863140523020442450319803861217678809327099130460454107396219723696639091046783275546878275618814275775664817225756657644407131100216751298115908131194 - 97375614112970569625132790069438867798598419085320275283540878783046350758057833265530242045591945091677132469614875083251494123223089424487413371352813662970634592209020959244089334944705716985296045040371417323190053606559785249013795448858403251609474416639759372147128274432987243250064036746349255269947 + 81502968578916182738903954868803437570755946677134177447602235141924201499139137044596035140222509670602871331791597044073071572412228544534819523226128580024545496766294194339793960293820231413658047109091660897365966097797938250791336718369379316371047772899151957904896765356935959814025957982674691345123 - 114687961738740033823889195608051804089459927982231308182683629888028268120493097845984745816632701845729587764997735825504425814728087113961943899377369172330181661859437490500588891277289700129684963041235091146245110205297670695195877570309282199688173517697376859702369996333750969206200170937896165130673 + 19530914161602779659551760133445821552317320310152365572270824124934166659722311454746309953223673997078297436243931292053801888013480083060066216140461485920045976827407762286163098778343580397538509809300097680026549826911680050446687580200949249156718366777430619222680797133560540120874109523363374682532 - 98956556245296456584577093682467520726488330699184024849705470892885919464790997973099467460411363147058204306005745127138920560984804957598832063633882251526703968694422432450762300036047912913590078648344136687298222920345966641507711224727734216915549548491251597779292132585329078814277644874144204440913 + 84981501181908958407165882058596493360698119711176806078279361144462965507837003283079265547534700328302141973542643476952659223890385025553457948180508055232705101336878525770094803887787098569156979516392327273966990531171437870101999949275825950472005389499746008518249966417744874164049226960084391812234 - 8218711316109398818437555174328187884834609897538691761989679256437380592327815751286455401090985919653442559863520717095645205034753676592015185588845079128092994088741444345604130626340515428779578880076398800383782584834593428970597993920696951877096600611130564303813235201917584729022486546946822366933 + 7893650965033577198334191201028694180475332921983002452552068231359850151359044622733422029300099432801430764455555811879002006862417563061903629164535541080083196159447478495410613617151717517389931741132158488141349634905171776801040321832649612992461489685161324965894513229375743124200392574150125896106 1 @@ -92,29 +92,29 @@ 1024 - 100677872533448097220099073817927225589055475630822761961661319507436767260247962574830306797547399857781154385436014063488669402763403415091104567315393691654026955705776261657176967138613165736148127307375877404250329399909273377427494681955673966773158210439868638545758901431523257149533857118548573695153 + 100372618494278207809325833745671140482141053299167545555496772471748336142814309396477676570872646968276341124341133734057291102742322081931492248898037896745834964263295089835223282406172162565851658852298315452525264953060051812464058668677471281862812603962337079805583614207759557014036925354032849631573 1024 6 0 - 5839377183160546196138319897119413819533325290939250174575593045995174313475312205945945357055929040779579042794701761682029074264866480789865312953609056002821973716478508653340243227365822718890898045365725287867056213748842174512563251603915175595564725054642781273676797433229430878858389245500824743808 + 57246992409737900342577682555961117349863309601824510421222521894627026751282629144846490064039264510887449820515663063426823074414131547854380098425944664198668967874835264912524369399371752886788019144257660363843875576550200910324966658273895956429073677736320994573692181961701978193186571833694420723781 - 9151338872365456247032717330023984817312003721470040367866914325835929050847541512893356563960746271338592363780657094336983072614756949921658742346136022440773075267625363772764997118641654642047453514303934687316270160956126363474797775317059257977306640676186579158098468551494846968917059541160224014758 + 55359130326043304577443995739779715186268346376620963862107764611659939071774803889709800904940211859512035433140926280209277737074076862166823314552825380623600695178406779285250666101690748062116072596864033546150050905356796372295859111563103651519324597646670380478259352333788125722561335356419351548649 - 15860462078020594899446488453060204383074528911840636642395812152658404384773630788846753886078318028031717908550692048913327346694538337028843405557564091344380651382749368521326303402847923001644830121385004337342100353523944772816711424003643263838603214628799049788306385167746279563912796396209660261753 + 50281672128225695904327755312403473270464636265873620911439875862842840579216593986516290933013798705736976869536862767378398131732278547320623614540644278314658335040286056564380320042634960782424531211557936644416852933930918166129586584400530703576432511573646243132971344472696494676449191196511768751040 - 59280453386284268103722404818421935125349847117062067877062879155069052841403836024105963069599655887155452164105099176021228094793764216693782009423613079455095372318275672973730755562706833809477508488161501575489132985770359851116797381555522798604015448469012986551202142312190104532872642555400431538917 + 4954009689876130900433823183239394059971025313181438225168723025500650021819168443266313593092459139668294877241958627180344247118460686185955251050098451412974392505212283916588312535306656898458413369812971999245044625814448902655421908545388586239806219956370126085702941241215414372775529176415068272226 - 11959326964505022176122057605248516896052345863763775335139405757193376929752494791885391469975876878766319851839438096353807580046606579780023620923841047087539991803724304310957287998745435684644513096501010121155383206845327287587823058414357025978022388111255752075553240302618911479039393027325471320781 + 35515595255709896828997760466304152492220728871829869589895003772974924553700508769181219885351038370363994580037898364522369466452803833450527848565405566973922751414158220323539740873051032498388712296543446809826888174558618629333699594826671750960039792539335312071049065457401731470572849760698057282405 - 6177579976638129693210753607638242900276262970293481477769650385199343455249855440373112796330681567779910729221138363049080433151875368596183841470489471223925643244016045037076031268774299214810121690782623205005340682907161134695923622607473741383050943010143072228547358500840387692910435578143502761692 + 53982898161884174760525264593615577676431520915620030422211324465890277781242664656285886912152301003799278505578589234713539160914623954004226071684048051930405768140214951306139171510110595301853061292778036789451353938383524392523322187090038385843323099742467194272605232422277182140459271404712596189859 1 @@ -134,29 +134,29 @@ 1024 - 158549598880497910400619284184066653665884514457464725056768436866603595915335001503460851844850974358715989372194927287779149005186564988331891384665053217634456737547126364758858138872586892253255394750999169616944724727592844850714668934638393746312666960759504183331319204851426992765085999107926643694481 + 179056286208052838965292614776285578832391122479516523035040871652754296525571820223688635982962783601316990610178153476124475074036124841321454348975288658062663380306451105704874611989409092134086971615401167426036221993116519591467159928284378929315318332059386710030291858650404083425005871892071186857273 1024 6 0 - 93135385672767619151614708098349472889111574862403895832900403488405262294311700071780221413175865192127505467287235249436679093528332912073950460319914480237801229576091653612981537747710960008601195559264248334535596264374321659435352642578799838762400334615105834863748637436012737070473309049538807423034 + 178377552641377500865286063648727556416404015075127401685534575975076459575504794560246301298721955859013913893640507231906329290835420911614600529224173881974520601196077215418521752161496328570548883044296041742448024685274297430678209781623977102471902189695810814984063443362479850712510121572973530768995 - 51100805918688964402505526106672810654026246094743783076423842041266350504540434099536162579888280257996838643916583635000431040359595396270367484548169882088538657541370581945648014016634266024081155709079844574500049887926900203053504468337355562894716369800630590510955477576372293377576414984286865704516 + 20769688870070165436992427339694203145292523059408806374887538935528912003699615548213392704619780037234390842067366936848278728385901533105547087225530691157902332145378484532788468916796432069325744865727857779279958043613873271149288783780319280513887160495047913315001985643689388969419602435921902916576 - 40954138852584501330557995609393362851788163581790148849132930469568667958967552504567618785551372519169424010215341566815088956328709957140638967201399600875219375387078406843464165429103571413475420280161660676675443278274258717907664987423391379274991438613260930984339735930912060988881640179932205929786 + 174791262245464645868767317839235021278766075455568196624276220286866571918403921718660783240456355740547605541359691882609396468612630630288115927266879724308965128595708829504857559201862612088203911860982726216825023258650320830660279603311065370610444214613451198710481166631253077931188456029167534479371 - 67567910533597432321299232485429791401290139019339932236975647058342373771138400522776905613039749025127200528960954291337962462027684428991102623967412192986506526414473491728042679629287568729837940385955692113018499901903221157048158330248546449889241970747356866640637156679384285844113917011752158630971 + 29430949861921363180532447370885938675197960719463985708429902998553499813907878796936758756888004352632985956057062412412857262290557262267490819588447955842941087683905824771268511538073109920236468184221145418158999188651980852958196002535495729417164668317975247134260832577524795061940668012070262660148 - 73237829702573440741759249754215968389862198041217609745558420493153015170848295065344233533687319549910089232836984105194853553144015141580533929822733376074860918542845474984944112360873464441170015339755000503279087804538873573693087194749158449305674497676544329941057553745545296134364423900244799497350 + 33823064666593497298664315122406795314149352648971525159868342766757305003383811070461423407856422008038095751430603738498258035799096142237609225846417708519893838218075447938462930393685967123434545052565320035862550253181734081559761406167043844418023672259049372762462061867104300604038115705269215470437 - 82179444756948194708930468703603675936773896864340106471506598591147013312113289913205405582188002889610362402757220689034199206170748124751053730159295889149537374801068158132723024332374266469665711966308941584660089635333076756110609522964449574631097337185494199508229283997828204144978253951475448199211 + 148058038465200793690340551348246193382881082948352221607273933659845806523220248031935813135858162670302995149394857476311437030948371832650496514019132121253661904600363352472468971446343853681200879325567745500014430783962951146409075530755861224679906402281793275989220685808705147046100986005410229853772 1 @@ -176,29 +176,29 @@ 1024 - 112226024163060325842497082935242911437822799361715040011764225873823841843362665021097286568627125826054818959335508843522200127557421761424207477974910332835451361279761825290721561724151982532242025782107278639207167210365399280901214574230356879066098545048360997676978954992541835427725637711352089258997 + 122472266630673589598992895062035703233848661693214725901405010631525288379574816031770542696065901636562582576773506864908929534663254247331128605764728063087768770017178540062512081945440960866895139848947409308478976883048112403100515017574348656902851568267215962238033022095687410295184090742019791113413 1024 6 0 - 71239922071560696057686325157017099561452940720553826325791509522173483093195766789627023245511877959611783139495828307887148219033725560935896850524309494654992978845037383316444089224033283522194927612931729319559092231538361639065660999098247872642416122519724346666921704520413018260380294916115859324475 + 7728944715899189434388609909724774035809842938667678317425460301603605823013640478927439541969555413709778749118826660002926674529472346548351718382698588549714060210062274800686715297407856148427378139345265348221133978168696684278480173159890783005838020735251419417910753567965053175165025017789858820644 - 104100661273376270465886769879169851505531293946822966310792246023467407855645974808863782309856374904477476292149951550740825062715024964707645151979144037592534671919520398388018624170324976513148395020892578490738063518282942080270412870732319083237028161450116841595726751222449069356050605483543771779243 + 26448003475986841497968052832575367195088016660519408677049324275770039699268051736789155417037960727921739548551366436808295399762769326861031593200532414836942831340943797676033433793694248322768289140083303407565490613002830404023055002980920011289126814582058510573151951384518941752137790627729966328601 - 110488868124325694000473049416595622980239420675299669611969175422326466813764904082172231659718170199735458215194796472884939819081256706093075218364801100605862923768360082238898809025226720468034843518384983904015745724070908862094049352305342943596509289086463976573372882658180863414903750573928633852267 + 86229288105115393213027250384970878195046658018230121981926087622908360019070695476890286000825705817855128868466090874517044630051807932688080137330506741796383851543511055620171832099182323963400791787063009161982955132748352579514479641889009556728765160794019431155612835281884746046945181179175314072101 - 25410228806705654077148682147097332357839890944247165564190684922840298388299867638438827012677532576086018749376404828171035283387647200245053023769111444077837804914597953847390409288178866420637004013666503923354082254710390384221283970252579173635674446010775881895161898242766536161821771080834657772966 + 118443298197751601243024301938618535427519013797625162067557289257443424747667332390767128609364405814370507956534181923146947118096415153388797603904285387277089456614581467531519932588788044429896623956929401613125989811394848718430770395258860135232715671961233760465960973508438597288028258187771963652303 - 8700465729485478716436679387374808038842851134149874623524593122226981420347470308842049813402269673151224856853073297143325064623726495354598387296949669243141564189391203779852508624676043820972832102539278773465602710364558074063858793656203754150771289330924164853335287990948557683276550122862479787734 + 63079025970083405739511542310056249842741383381477548746042147188133572370748015807051874328665981591645313044641075205479762053757917936684941075988549900240466490390069845305685504221361215041236490072242029131680788253507798397137448619734983297278496456464706652724192001914955923548292849880375166790857 - 4590915121025968668304639606926756883325865873477544481474572578490074803478225104926374593330488341308936918650623315112092392991210275489461309706062948223964695542976508808980472334651279799360416574108887150627444457044425727368708654119214936977048615234462350878487398563250522004179490745502733804427 + 40509648238776346975545047490038074209435447170427898755134516674702980824141055142532620643304924945704236217094826204991308792562157103171370843664395790315537507859800004916243411935772744533205257928339062171373642112948854794088844210884398436494877111172199985119678162349590861249848666085931258412086 1 @@ -218,29 +218,29 @@ 1024 - 110508930023534740162738784191716106396266335164397270938431638503656165107659850330942905570953139940993657700596611415015607996088094999591509442279914455127708604959099069404688874088746699227873907624992382646997626069790294936781645163137238191771425911876338378552905914927709093135968272189138379267781 + 94552121250876779226056478441985417834697549046525732037515214317098721124385587683741795285943068838272470889450545110834171450997743673526780259637641164399765807542836445604258361269046692410035177576626482842170596945096381486480085953604978737328476456016612043198968867965622421691858552300474095035157 1024 6 0 - 16190252281963301459787670341671658629584528013767349213762859480468912549003876067650185735368277305827860774447519281507342480468379511248984320380597596488155420581524852768209199457326484571591741160741133450056641461305735721099040547991891766427962276214315415989497188352902633732196066899033086212891 + 48083218856562860783737525775191328434529309725786982977533090588932781124076143659736041475811675446369495170676614042227311991610162480246804621885146024797948097897694587243264636437130851802277584364037533108489941116668460359722929037448947475873025984332615369387428734396236836178248179053324432289387 - 38826277848371273930615545685144151653881579668858046356703460477374467440986812234109754499967493373876482112740873179936925901985617887446499078394479826073834356951775431338400653339847270609580889890760782492450607831490636597980084536315344012754358523394495776843986421653605957824956062545579741203078 + 76634283139631251031930451482439094786633969169628830486414552234002484146483166767407506407205976751241526053457671304683137174566086803880644871041222985640288589016393229489142957844430267204654938648698223944585668424596705445851412046692088325329062368117357299350383261539550382410503213810360724768831 - 71646312009953726585550999318016381728894835203227651601905196263732648675495704743394057456680994475015688133021194892503509352062802874345113499510264292034852826077782353596162892893546954580749714902607471358408536121219401940038604527833559852950095486320467926298856159034774928058008762284219448719448 + 12396003202718048909550176869357200835167344522002799990717342448836637227464886796471669915677173549704514451874300300953954982243388321237604630205234035637633279054240127538882158729863053103189998107664715943383217977914655949391169809734095037466008231841791029642492622767619951904866524114245681424782 - 21874682139468327413608068754387545052399338719612361230844170368285314628799275547483736572943076800516046110251464024901652994004988699192583423511184828762535276498355160755435749895493906535665270038315334007057838458556523945211028789483453870687979556847570031469514412547221075372398639896255331415712 + 5539923707394084506717087117390496695592232635500747359889504943711791202029940555652040925097713452840277213496395608270510922111988739086756598726879548966887102615418006792507194054375683371861709247204702686528673393330441503439121615585771257714697719537117389431199585862074149372310085911201841216186 - 96485886870303326345904211454959767604603492416819624580214167931710430644807998515456945236664931372874407149454966426025549280311056741149653492504887840522444962154099454509666362392794676843546287394031538028146586973611391186630631976452692930091569234770634565514877707049005506297517217351335976772644 + 65968532979690524565399159109865869898284017329187061132541714089842101359911218133768358539795047680936832650790336463801883632609130291164095510938785421650736176533067266082084768408474334973607759685176339532668176044078942480494801077297292582190823343166661955740154699563110781755198790163430805716978 - 12785877239137418417784292919330214786540476069274047307555303653719482893838360620072099761662940232951539617367229428631511122705967065826801788799962011105574136753009905808872237581618957162579208042634433180768694671453748498981034084039730230512577739611331291227312701253806873170015239680554532602932 + 8929410934781893842920542351761290516339838143391027227969566157758346551212210108169096861146985810613153289756321515096365399229438452562850172935225676505051199564664874135916650774022233114020462038340430857303825774705427727079183433773581422911290563266734751511815134252968205031225916496632965260619 1 @@ -260,29 +260,29 @@ 1024 - 114320904105962694045397744642742670738048257184310093494555991444797482813541118111089781291973630159615166108623145340076966157058763576254419730586523987064937573255477687360566485912548770462482964712896247855433748205951273000550785436521127560965961207101500452024629042283206406224736658616285564030357 + 124604760543224075224703067029823671929197848568290368816278071531248699417186480889975307973142321087447654043163779310314373817531396202633137323160556385697895753637371197560517651126571956117326552395441960299276166360937411641365637714128170666757748021061815851985995399358099600530948464000050172732357 1024 6 0 - 7634980763917251336810352442357448371998689864333667880034797625983922573956604927507091153057925834966557368153665350952469635289997623199645010366672568755268366132281637350085786040653129895114097176398518818254163092526258937460259952070799536897171676497277456147895219443314951763502209309659091052046 + 85374642385284771257823631576104372768147056924874164883253839053780686027174341621883343533017782072735743106871350181141398460483873793075998118728027487068606054873854312222135302707457420590697930884900408430012501778121848164769218884832197965000311562550813948768513322057496853957945086012933955768928 - 39513914270257186999045123068986181195448982016797938866373057019566828837955513133438599189868275845622617299770436258975352809529287933910551502311896583318371095881740366452813502219840573856677630193614218375755742299659756715459463943851653507238741255733611459003393383900876162248979536493885002255277 + 109951715000613517319568467860069810650403863415999616962622233849462032087516269516115308808422392422344711580072435010666722823022715603530377444205621343005261890621173920886237616524419996303640950274964938929401949794216034721670708285807410307537304208774095446878328504393857085245159895842518397081669 - 18167369757222349874149183086362367126461854444912423618804351161500550590220283466858584901575245048167478301321712034958573217907589648518102523082969954103472047111844471497564088614618941728636204609814701518261137512280812036585646045975899141794125470429012289420146864294415569547756913918243318752134 + 113897613942613897227385400755632242796147855678163991969863715867699990348445814363632179253538407757961828124650703384323771690430094496902916699863026869603726373354595025416632525977003500517288059703060134213925130696858407196313572396734576461499925537889675832368585194225936684535814825774675818271594 - 115659157727664268206450535430401805063622559678330348748619885867341499736258484564346053283108051768579166247030304386659132072868555723898339395057157927971925643873235951706157077387599251633769178185066973826635598142353897168084539609732401905046581761008472697206388538828572770767797878372630530401 + 7126020928855387487678674994782820081171280721588220504548382853994207252414761574612270717533602534438287832704904426640097554047836373585430822304067094169963601314200955936766302620704531487418270186290467140502478905642048977091606481152460527776657066274437262112903743860557673135498824456202362431095 - 3426664709529533437391571211205253199061329661076698960247127381685666234868514959022963068658977893643991317246165092367331894188404086082503039904120328585856135644459126243353178497330006112686726485264532000169430991453593080490018030232649130523173383244316414940044730285810446847065836212299135305477 + 28704319304982437230631355216315820387776115028078205817309612642875919182450943971231372545448637321011435895481695278298527227533430029440070142783852154597895389875946571611035965006088562868353361887342978399010005933994152947285950976477013299302158959465667564151543055870642032282141512399669701684124 - 9720276364157748428375729186584353075775686541908983001018862454608298347400073748391355173902141296635314362147841513011916232556770801476014443006534901959642238002225992691396906805833800927736878352540861324108974447578594233665142983632777115139851230952161253915149829416505746009019992709649626348347 + 94385116545288685745006313511411261449412016951854864094148648114948170929374208755686282030124840944301610566544929548845042596674629788759596677932904948695542436232339591732388400574815727980732194472187560302852072006892434987271733784466225284120170184345573862472817276658753020379680128757909201180493 1 @@ -302,29 +302,29 @@ 1024 - 114018788189557511817784680777759550591059300446069489825990203391278774682846379925121383247445026704680855939747076538617338346952583982823150625163847912360243751931641735204142746397358989487244980883569001075104105660503422089073982203603946209495964255659336268090771693239026629518847066637797329341449 + 92667338402278150042501616331571845170553916728035435044100057040256065504286462484564859200605606351639537638200067692153833627624658309284127823039676010855431298672482526552316853836499357114282811689667233085741354835345171033926521816008894273405946326529381849176517255761872896679958965719410137872633 1024 6 0 - 105771865854712726031661312805356691041156950978664071233717840702230721173775166963435908803130293365277028420399947505708472971343434936146777505026203385690681745673746190215396150188524463510950391373552417104994016598945888250670295709770381365086544152932230892285140494283570873464274417511277726277858 + 16811849638918050357707196041977965708281779948508812087747452461640318210048722407843231825782189557782450810427679617933238834899374426352555709149349530750985291583473604357471905484577529661955836023008264742969193839994095846756647807398434006424747681519563767314229263412212943470716671982233598649422 - 56067960422996654785503196659679662304784257095572295353596495065904724904864214411957167404534503933390444473647257997043968292686758056607523867033460296191837077415497301294901578368869369840880476488916426512905326045817765043732231060238810512889645188362774849394525869257622061386047025902399957411486 + 58885675164871396171146017162515484784619548791139875240864919327966417145277963785116921012215956550942923762313051096493940189775695160566267858580994075124508420959429871606332304029906432878856949417986879035877178605192180897139164552555409945582515862076757143979626309158967397214623905109570430339616 - 76555359344532961834469727383761748263588667663975541670526178407628858671688631277865774606980738342324272796712506007955347037594215608252218446487558094405278068719697426233828695948978338404991606284163255665414548757594746306210665091019929309221874628420870709257137216644157695962606948404671774530883 + 78313914382473412665786170356493362330039144085905477110883824576655127416478576581225802910372034259178502168118482520057731459855605400355454141177724737465710455795317797057050749690825582952562593287731630723650451698245064627076719872087412545623712737338570571765968440087169043872698907874927081077861 - 97448860338293536080426214067977203384642545230487574516933699965496862196802646188108694813109456872158119087697029021789943723211502840824288861022543499621397452299411423155443449323435716318577089161392178509859404220013166899433161872516817639102994784126761826914611504520508993927516110127071353793555 + 44353657461760237924006107965806380925063513414349843041392711469913556488536732791027490710958460726040728309894307767887311757312709852005519327917263961141869470181271532151197810341309095643674076995541951200855303977317735453912469969481851102207308778763085134371637143049916350432664038803587826589668 - 39333754459659265538526105439959580098386355384151393724409360053973465878634502742658655012636443629348197646057376691378886609795106875409633567281446864754343766250188743435873546886306344018718387853638437800170990059987019086375527632585332181910853736306151318161619900142689696759878795420294633150799 + 63191677686706411065075451325037944524770770352269227650110085952842205184411082582248537168068154849796072871117393766031688195935193176655508324522062747802100124202901719531065193631269306020605398068520343217692627311881974378600699699375644522702645562717393999591546273213569688686511625264588794858942 - 62340770600149789755116185666878218403396738536592892859569892681203814186908713160885886348719267305078966166556976443038011866368088500335522559518997169439834664718165286652304289398463954725683679672008133900387070879967524926113851148447956549098233397127209776910303688311821508750738841808688984022961 + 27652205832407072812316692638518470944442957295475291784728971848700300617325041310215882904190200515282258358913505115222303725583753141504691540734992043009934166703390905035504237286974303243546757023303143754911949085074241979579452470343610112357023018098721133940051104802215521754650102873786582518475 1 @@ -344,29 +344,29 @@ 1024 - 145755358828725794629657224569476512892816619644030296533983977452645470112017832485255279476798424646174051887315858677594074945302422016021799731467824127362191624021497454803516739911480772154941148324780431861239176828348183403935055337558417115851468054465579102211659096249603340357997186792408089510413 + 93157218669182241490675992530576993151056529971540714396387059359186171724141659509029018057496673375724745430589386646269550119148269920362701170548242476230586768200869636627791503553887247127935915598948056541833660695015447621632102308915805855759457595752248174672016238265085118720537215599842731173481 1024 6 0 - 31523735331381975048528908771169248998373451704138540195275403351002056512371837911719890574231052620902463198358325054233883049782594600769036053959342191289602146282724390442412115041087052203520381288237161272062714625554850251131909886563148460405270347042318069277356651515553233700901811776733807993221 + 87446462010353589849746037738234397066041473308485353520558292228761982279440351484864438349240495330020592425437696919685785793208107143350457464619455468991461033208092266100997622440647061373010236248292121737230754562108067582715630848468665181694081670345632763908815931968482206657871229689506989460958 - 4856419463547700820745826759190793841701274325485230250981359113763415733004485008713948552664551916489650202249096660011827581814591723621885087405965926091857973706384714735525849416076095340486432886015064528227235173106098777452566208591266769671595049385254386712107179341222797766180010225291855300476 + 5371920121762799854663805307274467928931803539482488713998579982300346943296540013798537887678792263719765633413574049203047372443993219255970449761492609162518050585879685358159056493779021272257216677045502035242860798630295376382443183089111094958049041573618187286695690622912661979805576995484142294786 - 31126278372771606359234231911014554624034489388082366028676138643722940825165929165067089166398251984026648502966591171726229763912060018724027658449621680847861758655071966344333256823776538706716540300966280411627881332015355120657749891093002965506976878361398644291178038284164057680745379443782519744074 + 81378360108595166141754602315536604491755704238697043758045707442510949873531408936241895016195023908288422505205347691391502628187871402288416067822115977595084051625939256053609321368824929989321365961690214884892999027122683999087792024864593514390929829855011841082638494789836356873844223507607133041030 - 14505227187755127088024357096249485912310033473904690580573823596773137142463129181272166831437409332235014325772035604544897900780170315386674110053799130639907676517366386806046884983510700934353166750867929712932641292497154893019775617644759290075202353526068537558179626685810937288374235411056904506462 + 38267072007460605093022646226649253830904974117624582796149809817168470090793680581881206510714356664433778954062641981202489800121664733504370571757280047612362826025256016849008537963783691716960805848243559388372461046653234761099749619597004542806650489263676912191096870908180220417926161042166859270558 - 12591770697879890948400188490168447225201120882113455897093276083809722399686209674637490920508480142532225013763006271486178289067193021951259921168690169086395720351413746928992790068800280023014140030745978087461414486248827420092302677283587910768747115600699344909469148345176919368048135713450091879705 + 84915700860022964551345495171007866352879240088072004050514163222400719019015839857792496006221417914139406444513188151320138028620777765653670914650866905931580757496822620485139991117159813430362743832682381564303151718274674124557309714731995606931148894273370034729964486353552790602411267273089740887112 - 61963811858450059484094292226459874610628156491789118681061770657183581668334089970264680381954154464594402671493337174367454195720412385050194560857225798954395231201367739182412366239062972376674861346887183469596295917970740075776709065993546490082814731595048922758051526458335652593747622887360146590584 + 73465385450573914162870333292460394280010999377154874726178119439395665018458887558540867390535647454464513516463027161883108146373385017590161224608954678928418471159107754308115958338408278114189275959429408867213689090594608868255919833667342809714741419864644591378701510369412610456785454373134014974624 1 @@ -386,29 +386,29 @@ 1024 - 91159619497500033197884536815445959810175409515386487837855394240105314257873356934593868632132878001605281568188244384557179829505944147504880979013467676016416235398009487473343738074973916668769840200013444982872977779907890602171748578135333184461760418234539076233954818280793933041180932968884490908269 + 140182840369015629677444253779509392454802320870075099123427668377849033675466983060456985009733763204337800460423127911008212609447372562429098014335706464989758758740208247220281377732265746185919831902770207371875995669747914690479775278145713009649187153850562571367375647870857686415645933669998400329257 1024 6 0 - 851568058585399899937372232705434423536952847430565821565766740217001032646042191958749447838500427918671175845515895824168019446995478001439311307050713185427794346680912504202828615386316667679673330874054783503489172070360663685622061913230263919551874901320088371742057397260601282646611223691006443751 + 74455685967512838759991043750305999910403603361183393124429352295087548634063792550278083139223072256316954107311975400422338099594255999639972081273763818226105881287714634621018111690505668683540182433029581703552270786650780911280912244521550082056222427782968317532204880864580429169559407124961989279707 - 32853481178481306662809213899238190730085008930191818876938337647623384172585236018500528741630068002074355773321052999161717874566115974326843836891547682882694099906355149962039196672446849544660965770031512758879047559223876646292061992711486938453084596030346962561348683900323712583330663562482221197252 + 71098481933317389508569823052638450315420923677123524058701261064638659975025357178946016865061229212313198312082030748560444802197489378720773582152083681326388737157127068155678066123024313578023437832536817853345391300578991541431790615516076293902237223211118896078445149399495702412008571155478344357778 - 34821630985221854261082769032381272381889335079115317454594613279201651424060863976307958093345069887661788541272077905768279548978092749172436991258111611785111031639869013335062241661177501133089670418516594765359676479830500698674545744272864957111745168610586941119390624143496100355537247102220565125639 + 115110610485112803170120890450410861574735332789506157208438130110718586860547346474556536575500204293436391141549746837480167672278952099431935207514750592413620333211437374119350533399344562363227946687352699621710249905144747106242855517490419002537117779923863031017721389280577474729281675375467381798626 - 39701953805260571638469049449691835239853134691939309256700403354554836879758252676652302276665164254297831698163047921022762575660356659994728788420610448500042959049629515326684247604813383958855794143730808203410803226791390099230252998419624372655348850970634963424417793986834969073688135684887367027883 + 120330608270420765105059866265760358553479026206034965536914273126027422997441964175805966892926981299384783642394441490277394150460201516690147208336317181939038974254656090718976077645572006247799258611056018020338006491430013096063728859631805749332510316766006851947333925001066287366791726970862626291132 - 29102816744006481949922051536647157073416693426053833714560784125052861984877696461610084509770379744109649790378172039960416596777455186767557728516511071122873283107812481567613267778992249393262570114077799095283611024119101424901204459337010870960869064119548524952731647436544574215554906082308834659921 + 67539212953786831170362280216666497485098591299326042738929014343236632821022313674668368128665233026533515361422201716455042909840388453755300604586113248821093293298975026375527804693431927109520627809902308115727777408141187735844148052245177579943379084039246961911533284602081296628198055404193130343482 - 32974936530171477426558926657295070590730606099588594703485031901034392895235354214912037047196552839479577074742266989855931041464052716865470322846484487128028154869801955066047347108551355865253253586500416370694357777624538379474512556176521939937160375514993050845196770742383544826662501396150957423109 + 112319151352986482309182686404845526390525841147671287070408503736033729389413743209528546967376916627199467539007813942237692812742367671894844803642688285719773478359579239402994226436424644351759771456595365332573215315742895224090559937302371921472603333002763125960793889174407708080428577912651608328701 1 @@ -428,29 +428,29 @@ 1024 - 112714347547092648743627817624088578213968013751572306140005777569417788627034861548627030618210536511972670209192802693425052532524071823425541785153877392095531364840175519689871958031940426012176629731724076153477808129684217007187843243383002059060567768991081310625185556025948667300903236326347927671153 + 153151384061946112819130335133246133008687957295267397843621546909999994389152979903838543621040703741957204585362979532683591012452196507341382378765021930080594638301102581447095150079527571736299826032393569032760089515710110573763393320644209463370199325193630893641761118983295588307360421992928735239641 1024 6 0 - 41453190700847065246269778898852141912639219706248915701165628007851815942083621302391511900783289860613782906294104422830007190688668507600477793932716807567672278887509305765714280068794057434538394015116339344703501375893423066377924705073474230723019195711249481995028512130408101561137355440864266889011 + 7892700375071886213801667690949643081301660897876362862716031719252735631702246488042663317065226596719123642472889160164166752467928542946405290110100603916619860642652639874051908104321563771186198974277403372762475742407947778978713423261366968057886211939863053226416845695474626247148481144599879632770 - 96415473406497856667236110185119678021609839806444362560942490898772794655825836680251611594710297459293856136100308291899266023943624303948669941021882453080969342857718276992715105728166762740103353100224946268582284532435394981387666771302313544340616355675582128146757985518033153723015048993545771680411 + 96969751534332024137525673827305338765824331369062793244711961878338464229795343511369854914166525378159544513335008692960110239281780105946345751882081699160695192471425870929619862347261616029408965621832016372001825462464042514637488252183465735075947917168352282007926612702365709391433705971374480650330 - 5329771000113845362591261372882676498247347752026309010372759444191286820466993656801815402621479673604280095352453435140876825130762923962832777307385134557257387448392537204029000791203936139360913899555546748267799257960246583213855295127569947108519594262943400940582226834642581611875182359279188137365 + 114875699681605178113297100883725137816850022442270985408429076441164419167544283646641922160696686060996835821391125325554032812396928565692163322239663071368311305838437496947782958069105843521971767109289961823988985531772396017645122897804718943025519949475202876055846445752244455583140057649113803614259 - 70825465947181369379016766145109007631092060526829443000571323931479984439416579538946250685062921177121149520176090390069424053862437014080717521460006192745939354416571922457649873969883045662320737566496738458149568266569804262889119363706737911970041890864991893722216615934529285708102659412333240436514 + 65142979135827041975796028186758506145854632340505778500302049061619882852408057984561028536581103479186917953904089923319512041375743806093313722634211811019559763185887128205817238184749522143717887021843379119212824449556508752556588828478467790333950728028611785497198162523007873618632206089861361401340 - 73991179277760330038195415092823191193387632706282678107189783050146939524299427404575923452035567234547018641575084961229435181302012865072480304587370096188699743453085613121532257939129709105940300864243324811978033055046100048427785469341560204912813061289508780279815105705562417449080508228178367200728 + 36365653562546380774498331892233340368119440850968377366594978378206403596397349649940162495672849747856663451682615481355115460892329551644027193052781744071836000722331822907728424967318270206822200346897424772482580574472348312641051213825757952065374047265006433093383031570608989752280846790724625652114 - 31461687701241355840202272347802592236794985127490032010364094325610277487618212189243380506649234733982547483029134406617715040782953181897339929518135167288016440191503889749676267123243816545961641823288904946612888502090166210728064150949885531980896752883252889154649675823535367077881030273857334448377 + 37367464132260763212677594935535066845758607432576735529782786049728028305368775183042501847621998510706592209814132747806613258637353374842271547029492874993834491837910337348454981742243913507887896589909317221528522453457178954812875123817140250207188061720075701080035731147924455124722653493077166508317 1 @@ -470,29 +470,29 @@ 1024 - 90709850988183634883747146504520812305479616362544762717264767624480713843787484468715945022848706801815793588306393524025802655805229453394177222515245400623164925000957490861514300185291366427334011741079978619317279902405535111362511891805977098467575343342798240483468745456622946654384413405714727111049 + 100867277587437185905738415973319241270762549783559365763080515113732381952674153438473522936350424248510177050073173341561288174108410763783076387484742275185420071112263308649492980833108007892837870942819215088251575737730473861793336237539084855310382517708806608778283659205231502432743977016620509670369 1024 6 0 - 84919799314745735832787810125873543828065655104516783839565647691248215516359835680325809877446500234093245505337708761327514836455069648943537283941371069748836618942896405098164011082131455690036708374862628669201291724015337105884416281199271404498957591588666105937717599340402548102129688608671172346488 + 39255559716883834710996217195960790231690219648364596063642252732525253626322537184453873865040277621949489316023974802886660737439109091681259589237564079506421532205836519587245678559994523313948203934718792220230453120669778118668541975297967552943217325494302005027700187260063491922501505329489123345084 - 27592679420801014730715929720577911639178387223364096917099445894820948297106503183856084215556731845565010736083520611595677924955301145714878769981153202834608139649181574210484004057187171534099812954364473224451272658221245570585294103435378349057982473974869866578077162069304472547230546020087797051297 + 39251487206514441563334280658297769620912136371041423458186372978938177189264908183631867083771532146089831189040237231008162953455496756686803076545387981343077808092826097431496885696159376910241346660709064489706335519357501003266465818976562287434337562453673352957027238784722579421141604136610413865069 - 33829734038452341058501623833341351574562143156927976338141417157628211716738456683032489788533911482646850127137345110538297989627447238997872569111103407878351511889741396804506828238334901865903850154295339748009238515549751976866660542500739535545983390456708509155386761320270406660928912906646720547244 + 89788387309278240674496295908504187208537159799772080051192292579059805429479222048578000890516118596274242793098756842780898980765645869881610036023411374800834386223748464825899794852749054346765657959106143650692839796441237207630886842547087030398717915820598774482068967247661437905594328521425874979057 - 11124479801627523239560573811320263546870760761274494405626513519688011602709990162807279614911932381926257437778864781726042301387825810466192780508342318812522861430074353719597599129926767958390249454965081195805817855672203611757794583827186340414504862159428296513760018549704081177357871925356586429427 + 26357966711801363898328231309025314087616129417836161948306497415882603318843666161160822637115952535994405937855709900736450964992853399251490227990497967839030533819424971389267533958232849226183830101254778677749362868289847725471454616517783178514849063798868429799551121680536684866362141823781948326955 - 32880992540294033643928779972503468005205696794031699830392654616829919979722756470717860586107870645791429893323265370512750961837989273283871013146249685784109354110756530910036429057128129752940811337653870209208256903275898953200512500172584636259421754371306492955086813582817806744254291489143226383387 + 14384849599051764661772057823488151609489203006676366444227243390117693698668322782327983827142983439221014466954818465181340731717991045271712496710923417891229487421449062528271933023092771365428984997787726567732777005825539778159234635254765002400637042489824209849704387913027726439841852511942249366530 - 64488809336695391318011568983078364916500775881097605639096343959579383387461043844483578842238766681280882600828703088524166085956024741191119425065692954008717449256641788315388984961945826338689782533654764325185225279957376013706222894155012908069205181312321319521791430494808333769902714988147244616292 + 30051432193108012845512883901872689742838894686285390245961092912227053842938452415405389199460855252222500571948227564229716905666340774672571874746019951658247579047627333063178030591379609682038552274663193364087296307923630239584978473289012247558758375337308299796539977243614211858116751481256713921208 1 @@ -513,69 +513,498 @@ 0 - + + + 1024 + + 99683430209219299202938906775017606724469428760930594089358427410134860618365868965004793074091319467805535748972215503524038403535258504555855034146311628672944167557855048795425950230778419329914800959299004291330197945213922372702252933746294221376666676943038735011157528710864090248805630235321387417233 + + 1024 + + 6 + 0 + + 44374832064487549703432106936110733223763329868662976410465532166844075257057406776673624549161360987249861412044599719051898091867684286031639599197726655387219559815670638611226141829724813072055389849106845806446371521054197013515692281584194734156442408523349320037692677236600725489054906594525371744098 + + + 4630463067468923828162750583060014163210626720569193915638610638185648687072871454313570584495776843106357295879749151692425383863181535413318641399457012780863140523020442450319803861217678809327099130460454107396219723696639091046783275546878275618814275775664817225756657644407131100216751298115908131194 + + + 81502968578916182738903954868803437570755946677134177447602235141924201499139137044596035140222509670602871331791597044073071572412228544534819523226128580024545496766294194339793960293820231413658047109091660897365966097797938250791336718369379316371047772899151957904896765356935959814025957982674691345123 + + + 19530914161602779659551760133445821552317320310152365572270824124934166659722311454746309953223673997078297436243931292053801888013480083060066216140461485920045976827407762286163098778343580397538509809300097680026549826911680050446687580200949249156718366777430619222680797133560540120874109523363374682532 + + + 84981501181908958407165882058596493360698119711176806078279361144462965507837003283079265547534700328302141973542643476952659223890385025553457948180508055232705101336878525770094803887787098569156979516392327273966990531171437870101999949275825950472005389499746008518249966417744874164049226960084391812234 + + + 7893650965033577198334191201028694180475332921983002452552068231359850151359044622733422029300099432801430764455555811879002006862417563061903629164535541080083196159447478495410613617151717517389931741132158488141349634905171776801040321832649612992461489685161324965894513229375743124200392574150125896106 + + + 1 + 0 + +

+ 12156351937563573658659580053253823410691110073159632064873022501836009465486592594749999599277950935800838070217509230652132563179395724644794952186872179 +

+ + 8200110585906438032621304395054179270119353002269548331464070505333187116738310343642958392223816278303064396050910031983689028221128048940187204440059627 + + 128 +
- 256 + 1
- + + + 1024 + + 100372618494278207809325833745671140482141053299167545555496772471748336142814309396477676570872646968276341124341133734057291102742322081931492248898037896745834964263295089835223282406172162565851658852298315452525264953060051812464058668677471281862812603962337079805583614207759557014036925354032849631573 + + 1024 + + 6 + 0 + + 57246992409737900342577682555961117349863309601824510421222521894627026751282629144846490064039264510887449820515663063426823074414131547854380098425944664198668967874835264912524369399371752886788019144257660363843875576550200910324966658273895956429073677736320994573692181961701978193186571833694420723781 + + + 55359130326043304577443995739779715186268346376620963862107764611659939071774803889709800904940211859512035433140926280209277737074076862166823314552825380623600695178406779285250666101690748062116072596864033546150050905356796372295859111563103651519324597646670380478259352333788125722561335356419351548649 + + + 50281672128225695904327755312403473270464636265873620911439875862842840579216593986516290933013798705736976869536862767378398131732278547320623614540644278314658335040286056564380320042634960782424531211557936644416852933930918166129586584400530703576432511573646243132971344472696494676449191196511768751040 + + + 4954009689876130900433823183239394059971025313181438225168723025500650021819168443266313593092459139668294877241958627180344247118460686185955251050098451412974392505212283916588312535306656898458413369812971999245044625814448902655421908545388586239806219956370126085702941241215414372775529176415068272226 + + + 35515595255709896828997760466304152492220728871829869589895003772974924553700508769181219885351038370363994580037898364522369466452803833450527848565405566973922751414158220323539740873051032498388712296543446809826888174558618629333699594826671750960039792539335312071049065457401731470572849760698057282405 + + + 53982898161884174760525264593615577676431520915620030422211324465890277781242664656285886912152301003799278505578589234713539160914623954004226071684048051930405768140214951306139171510110595301853061292778036789451353938383524392523322187090038385843323099742467194272605232422277182140459271404712596189859 + + + 1 + 0 + +

+ 11896551745918105362971728512744277845835439532818452881315269737992426112588024541732421368934755554982621680641446753621028215232581368061969077812779927 +

+ + 8437118640594123178620918076897688577337677623112766785827012578840671912538015040671630458384450627586876621108564469770753964000093941226835845074624499 + + 128 +
- 1024 + 2
- + + + 1024 + + 179056286208052838965292614776285578832391122479516523035040871652754296525571820223688635982962783601316990610178153476124475074036124841321454348975288658062663380306451105704874611989409092134086971615401167426036221993116519591467159928284378929315318332059386710030291858650404083425005871892071186857273 + + 1024 + + 6 + 0 + + 178377552641377500865286063648727556416404015075127401685534575975076459575504794560246301298721955859013913893640507231906329290835420911614600529224173881974520601196077215418521752161496328570548883044296041742448024685274297430678209781623977102471902189695810814984063443362479850712510121572973530768995 + + + 20769688870070165436992427339694203145292523059408806374887538935528912003699615548213392704619780037234390842067366936848278728385901533105547087225530691157902332145378484532788468916796432069325744865727857779279958043613873271149288783780319280513887160495047913315001985643689388969419602435921902916576 + + + 174791262245464645868767317839235021278766075455568196624276220286866571918403921718660783240456355740547605541359691882609396468612630630288115927266879724308965128595708829504857559201862612088203911860982726216825023258650320830660279603311065370610444214613451198710481166631253077931188456029167534479371 + + + 29430949861921363180532447370885938675197960719463985708429902998553499813907878796936758756888004352632985956057062412412857262290557262267490819588447955842941087683905824771268511538073109920236468184221145418158999188651980852958196002535495729417164668317975247134260832577524795061940668012070262660148 + + + 33823064666593497298664315122406795314149352648971525159868342766757305003383811070461423407856422008038095751430603738498258035799096142237609225846417708519893838218075447938462930393685967123434545052565320035862550253181734081559761406167043844418023672259049372762462061867104300604038115705269215470437 + + + 148058038465200793690340551348246193382881082948352221607273933659845806523220248031935813135858162670302995149394857476311437030948371832650496514019132121253661904600363352472468971446343853681200879325567745500014430783962951146409075530755861224679906402281793275989220685808705147046100986005410229853772 + + + 1 + 0 + +

+ 13387369053706524441052298969953816865931215541493627201932050414288871500077266522988236783752625813315396589969797844560751620685738565702270168506745819 +

+ + 13375016815456955841470279163167978032541957986847763585725171697601726229270480352604959863298180469690218668879817745445241491655372612081421695369484667 + + 128 +
- 32 + 4
- + + + 1024 + + 122472266630673589598992895062035703233848661693214725901405010631525288379574816031770542696065901636562582576773506864908929534663254247331128605764728063087768770017178540062512081945440960866895139848947409308478976883048112403100515017574348656902851568267215962238033022095687410295184090742019791113413 + + 1024 + + 6 + 0 + + 7728944715899189434388609909724774035809842938667678317425460301603605823013640478927439541969555413709778749118826660002926674529472346548351718382698588549714060210062274800686715297407856148427378139345265348221133978168696684278480173159890783005838020735251419417910753567965053175165025017789858820644 + + + 26448003475986841497968052832575367195088016660519408677049324275770039699268051736789155417037960727921739548551366436808295399762769326861031593200532414836942831340943797676033433793694248322768289140083303407565490613002830404023055002980920011289126814582058510573151951384518941752137790627729966328601 + + + 86229288105115393213027250384970878195046658018230121981926087622908360019070695476890286000825705817855128868466090874517044630051807932688080137330506741796383851543511055620171832099182323963400791787063009161982955132748352579514479641889009556728765160794019431155612835281884746046945181179175314072101 + + + 118443298197751601243024301938618535427519013797625162067557289257443424747667332390767128609364405814370507956534181923146947118096415153388797603904285387277089456614581467531519932588788044429896623956929401613125989811394848718430770395258860135232715671961233760465960973508438597288028258187771963652303 + + + 63079025970083405739511542310056249842741383381477548746042147188133572370748015807051874328665981591645313044641075205479762053757917936684941075988549900240466490390069845305685504221361215041236490072242029131680788253507798397137448619734983297278496456464706652724192001914955923548292849880375166790857 + + + 40509648238776346975545047490038074209435447170427898755134516674702980824141055142532620643304924945704236217094826204991308792562157103171370843664395790315537507859800004916243411935772744533205257928339062171373642112948854794088844210884398436494877111172199985119678162349590861249848666085931258412086 + + + 1 + 0 + +

+ 9644368850153322034703315103697901051926884488301430556546617138464400206683907769487393990184694328778511476546020068068021945752432673918387223686904967 +

+ + 12698836858435435937675913359997765775785276976783023925769404814538947216761763836785592069485979944242173136025323887368624786677577164791726164185869139 + + 128 +
- 512 + 8
- + + + 1024 + + 94552121250876779226056478441985417834697549046525732037515214317098721124385587683741795285943068838272470889450545110834171450997743673526780259637641164399765807542836445604258361269046692410035177576626482842170596945096381486480085953604978737328476456016612043198968867965622421691858552300474095035157 + + 1024 + + 6 + 0 + + 48083218856562860783737525775191328434529309725786982977533090588932781124076143659736041475811675446369495170676614042227311991610162480246804621885146024797948097897694587243264636437130851802277584364037533108489941116668460359722929037448947475873025984332615369387428734396236836178248179053324432289387 + + + 76634283139631251031930451482439094786633969169628830486414552234002484146483166767407506407205976751241526053457671304683137174566086803880644871041222985640288589016393229489142957844430267204654938648698223944585668424596705445851412046692088325329062368117357299350383261539550382410503213810360724768831 + + + 12396003202718048909550176869357200835167344522002799990717342448836637227464886796471669915677173549704514451874300300953954982243388321237604630205234035637633279054240127538882158729863053103189998107664715943383217977914655949391169809734095037466008231841791029642492622767619951904866524114245681424782 + + + 5539923707394084506717087117390496695592232635500747359889504943711791202029940555652040925097713452840277213496395608270510922111988739086756598726879548966887102615418006792507194054375683371861709247204702686528673393330441503439121615585771257714697719537117389431199585862074149372310085911201841216186 + + + 65968532979690524565399159109865869898284017329187061132541714089842101359911218133768358539795047680936832650790336463801883632609130291164095510938785421650736176533067266082084768408474334973607759685176339532668176044078942480494801077297292582190823343166661955740154699563110781755198790163430805716978 + + + 8929410934781893842920542351761290516339838143391027227969566157758346551212210108169096861146985810613153289756321515096365399229438452562850172935225676505051199564664874135916650774022233114020462038340430857303825774705427727079183433773581422911290563266734751511815134252968205031225916496632965260619 + + + 1 + 0 + +

+ 12626409640272974655233521254634505986113859217530798906873548183103099611375959546554379604492110745715846535234744512031965162358286807757060219473790103 +

+ + 7488440811336818363937159595177873184411792902918658739383421198307395028623162698428263224712461137857458567206419473562071318521697310662858469799194419 + + 128 +
- 128 + 16
- + + + 1024 + + 124604760543224075224703067029823671929197848568290368816278071531248699417186480889975307973142321087447654043163779310314373817531396202633137323160556385697895753637371197560517651126571956117326552395441960299276166360937411641365637714128170666757748021061815851985995399358099600530948464000050172732357 + + 1024 + + 6 + 0 + + 85374642385284771257823631576104372768147056924874164883253839053780686027174341621883343533017782072735743106871350181141398460483873793075998118728027487068606054873854312222135302707457420590697930884900408430012501778121848164769218884832197965000311562550813948768513322057496853957945086012933955768928 + + + 109951715000613517319568467860069810650403863415999616962622233849462032087516269516115308808422392422344711580072435010666722823022715603530377444205621343005261890621173920886237616524419996303640950274964938929401949794216034721670708285807410307537304208774095446878328504393857085245159895842518397081669 + + + 113897613942613897227385400755632242796147855678163991969863715867699990348445814363632179253538407757961828124650703384323771690430094496902916699863026869603726373354595025416632525977003500517288059703060134213925130696858407196313572396734576461499925537889675832368585194225936684535814825774675818271594 + + + 7126020928855387487678674994782820081171280721588220504548382853994207252414761574612270717533602534438287832704904426640097554047836373585430822304067094169963601314200955936766302620704531487418270186290467140502478905642048977091606481152460527776657066274437262112903743860557673135498824456202362431095 + + + 28704319304982437230631355216315820387776115028078205817309612642875919182450943971231372545448637321011435895481695278298527227533430029440070142783852154597895389875946571611035965006088562868353361887342978399010005933994152947285950976477013299302158959465667564151543055870642032282141512399669701684124 + + + 94385116545288685745006313511411261449412016951854864094148648114948170929374208755686282030124840944301610566544929548845042596674629788759596677932904948695542436232339591732388400574815727980732194472187560302852072006892434987271733784466225284120170184345573862472817276658753020379680128757909201180493 + + + 1 + 0 + +

+ 9597358002501018309121870214896018217870800796878035069254107760851644762277443459596584060261292202253797548066433643464174883558533676208438650069878923 +

+ + 12983235647847331021494993308557649154523925317581742012198005373331971836785398319725866868674038165717344426853381930807126225951081067813158445817413359 + + 128 +
- 1 + 32
- + + + 1024 + + 92667338402278150042501616331571845170553916728035435044100057040256065504286462484564859200605606351639537638200067692153833627624658309284127823039676010855431298672482526552316853836499357114282811689667233085741354835345171033926521816008894273405946326529381849176517255761872896679958965719410137872633 + + 1024 + + 6 + 0 + + 16811849638918050357707196041977965708281779948508812087747452461640318210048722407843231825782189557782450810427679617933238834899374426352555709149349530750985291583473604357471905484577529661955836023008264742969193839994095846756647807398434006424747681519563767314229263412212943470716671982233598649422 + + + 58885675164871396171146017162515484784619548791139875240864919327966417145277963785116921012215956550942923762313051096493940189775695160566267858580994075124508420959429871606332304029906432878856949417986879035877178605192180897139164552555409945582515862076757143979626309158967397214623905109570430339616 + + + 78313914382473412665786170356493362330039144085905477110883824576655127416478576581225802910372034259178502168118482520057731459855605400355454141177724737465710455795317797057050749690825582952562593287731630723650451698245064627076719872087412545623712737338570571765968440087169043872698907874927081077861 + + + 44353657461760237924006107965806380925063513414349843041392711469913556488536732791027490710958460726040728309894307767887311757312709852005519327917263961141869470181271532151197810341309095643674076995541951200855303977317735453912469969481851102207308778763085134371637143049916350432664038803587826589668 + + + 63191677686706411065075451325037944524770770352269227650110085952842205184411082582248537168068154849796072871117393766031688195935193176655508324522062747802100124202901719531065193631269306020605398068520343217692627311881974378600699699375644522702645562717393999591546273213569688686511625264588794858942 + + + 27652205832407072812316692638518470944442957295475291784728971848700300617325041310215882904190200515282258358913505115222303725583753141504691540734992043009934166703390905035504237286974303243546757023303143754911949085074241979579452470343610112357023018098721133940051104802215521754650102873786582518475 + + + 1 + 0 + +

+ 10116582691417961700450409660073771821080163993540593392966288504372235050089155909865587090768071015740429923980831573662177196533033546908068144339312027 +

+ + 9159944739134999273570507299028731020005326833476187868753450219363085518454977587499939070133919505623808873000694070158656903559252933145645844495267579 + + 128 +
- 16 + 64
- + + + 1024 + + 93157218669182241490675992530576993151056529971540714396387059359186171724141659509029018057496673375724745430589386646269550119148269920362701170548242476230586768200869636627791503553887247127935915598948056541833660695015447621632102308915805855759457595752248174672016238265085118720537215599842731173481 + + 1024 + + 6 + 0 + + 87446462010353589849746037738234397066041473308485353520558292228761982279440351484864438349240495330020592425437696919685785793208107143350457464619455468991461033208092266100997622440647061373010236248292121737230754562108067582715630848468665181694081670345632763908815931968482206657871229689506989460958 + + + 5371920121762799854663805307274467928931803539482488713998579982300346943296540013798537887678792263719765633413574049203047372443993219255970449761492609162518050585879685358159056493779021272257216677045502035242860798630295376382443183089111094958049041573618187286695690622912661979805576995484142294786 + + + 81378360108595166141754602315536604491755704238697043758045707442510949873531408936241895016195023908288422505205347691391502628187871402288416067822115977595084051625939256053609321368824929989321365961690214884892999027122683999087792024864593514390929829855011841082638494789836356873844223507607133041030 + + + 38267072007460605093022646226649253830904974117624582796149809817168470090793680581881206510714356664433778954062641981202489800121664733504370571757280047612362826025256016849008537963783691716960805848243559388372461046653234761099749619597004542806650489263676912191096870908180220417926161042166859270558 + + + 84915700860022964551345495171007866352879240088072004050514163222400719019015839857792496006221417914139406444513188151320138028620777765653670914650866905931580757496822620485139991117159813430362743832682381564303151718274674124557309714731995606931148894273370034729964486353552790602411267273089740887112 + + + 73465385450573914162870333292460394280010999377154874726178119439395665018458887558540867390535647454464513516463027161883108146373385017590161224608954678928418471159107754308115958338408278114189275959429408867213689090594608868255919833667342809714741419864644591378701510369412610456785454373134014974624 + + + 1 + 0 + +

+ 11972876868460753275066668486585770036484418629508842316078562629031483418581358900234477964808845988274094119408005433429985716131502349487632772118136887 +

+ + 7780687940972589315665978051594632936759069267966371943055920664881608463464192616257011149675403935035432853275767376331164649569829862304894745789920863 + + 128 +
- 2 + 128
- + + + 1024 + + 140182840369015629677444253779509392454802320870075099123427668377849033675466983060456985009733763204337800460423127911008212609447372562429098014335706464989758758740208247220281377732265746185919831902770207371875995669747914690479775278145713009649187153850562571367375647870857686415645933669998400329257 + + 1024 + + 6 + 0 + + 74455685967512838759991043750305999910403603361183393124429352295087548634063792550278083139223072256316954107311975400422338099594255999639972081273763818226105881287714634621018111690505668683540182433029581703552270786650780911280912244521550082056222427782968317532204880864580429169559407124961989279707 + + + 71098481933317389508569823052638450315420923677123524058701261064638659975025357178946016865061229212313198312082030748560444802197489378720773582152083681326388737157127068155678066123024313578023437832536817853345391300578991541431790615516076293902237223211118896078445149399495702412008571155478344357778 + + + 115110610485112803170120890450410861574735332789506157208438130110718586860547346474556536575500204293436391141549746837480167672278952099431935207514750592413620333211437374119350533399344562363227946687352699621710249905144747106242855517490419002537117779923863031017721389280577474729281675375467381798626 + + + 120330608270420765105059866265760358553479026206034965536914273126027422997441964175805966892926981299384783642394441490277394150460201516690147208336317181939038974254656090718976077645572006247799258611056018020338006491430013096063728859631805749332510316766006851947333925001066287366791726970862626291132 + + + 67539212953786831170362280216666497485098591299326042738929014343236632821022313674668368128665233026533515361422201716455042909840388453755300604586113248821093293298975026375527804693431927109520627809902308115727777408141187735844148052245177579943379084039246961911533284602081296628198055404193130343482 + + + 112319151352986482309182686404845526390525841147671287070408503736033729389413743209528546967376916627199467539007813942237692812742367671894844803642688285719773478359579239402994226436424644351759771456595365332573215315742895224090559937302371921472603333002763125960793889174407708080428577912651608328701 + + + 1 + 0 + +

+ 13237924258845536022467370903429005560216761805502124415245746897491664222157520847731290544684340754169134287990322205959239073554837394903803257845482543 +

+ + 10589488021533733426785614404860859276142077436554165783580698037906205094105402178674240662351883735104625400113876626148523838613328267286425534418402599 + + 128 +
- 4 + 256
- + + + 1024 + + 153151384061946112819130335133246133008687957295267397843621546909999994389152979903838543621040703741957204585362979532683591012452196507341382378765021930080594638301102581447095150079527571736299826032393569032760089515710110573763393320644209463370199325193630893641761118983295588307360421992928735239641 + + 1024 + + 6 + 0 + + 7892700375071886213801667690949643081301660897876362862716031719252735631702246488042663317065226596719123642472889160164166752467928542946405290110100603916619860642652639874051908104321563771186198974277403372762475742407947778978713423261366968057886211939863053226416845695474626247148481144599879632770 + + + 96969751534332024137525673827305338765824331369062793244711961878338464229795343511369854914166525378159544513335008692960110239281780105946345751882081699160695192471425870929619862347261616029408965621832016372001825462464042514637488252183465735075947917168352282007926612702365709391433705971374480650330 + + + 114875699681605178113297100883725137816850022442270985408429076441164419167544283646641922160696686060996835821391125325554032812396928565692163322239663071368311305838437496947782958069105843521971767109289961823988985531772396017645122897804718943025519949475202876055846445752244455583140057649113803614259 + + + 65142979135827041975796028186758506145854632340505778500302049061619882852408057984561028536581103479186917953904089923319512041375743806093313722634211811019559763185887128205817238184749522143717887021843379119212824449556508752556588828478467790333950728028611785497198162523007873618632206089861361401340 + + + 36365653562546380774498331892233340368119440850968377366594978378206403596397349649940162495672849747856663451682615481355115460892329551644027193052781744071836000722331822907728424967318270206822200346897424772482580574472348312641051213825757952065374047265006433093383031570608989752280846790724625652114 + + + 37367464132260763212677594935535066845758607432576735529782786049728028305368775183042501847621998510706592209814132747806613258637353374842271547029492874993834491837910337348454981742243913507887896589909317221528522453457178954812875123817140250207188061720075701080035731147924455124722653493077166508317 + + + 1 + 0 + +

+ 11652347351815546411928608048767936237430835628552112025242875188652549195683446121582057824636748462894336452288925511118433186493764539072256929831649699 +

+ + 13143393295607830664327305287951872251956799388668596560544307288415888343206753186700563936883765295346535048622643095185041142765817463017352516628312659 + + 128 +
- 8 + 512
- + + + 1024 + + 100867277587437185905738415973319241270762549783559365763080515113732381952674153438473522936350424248510177050073173341561288174108410763783076387484742275185420071112263308649492980833108007892837870942819215088251575737730473861793336237539084855310382517708806608778283659205231502432743977016620509670369 + + 1024 + + 6 + 0 + + 39255559716883834710996217195960790231690219648364596063642252732525253626322537184453873865040277621949489316023974802886660737439109091681259589237564079506421532205836519587245678559994523313948203934718792220230453120669778118668541975297967552943217325494302005027700187260063491922501505329489123345084 + + + 39251487206514441563334280658297769620912136371041423458186372978938177189264908183631867083771532146089831189040237231008162953455496756686803076545387981343077808092826097431496885696159376910241346660709064489706335519357501003266465818976562287434337562453673352957027238784722579421141604136610413865069 + + + 89788387309278240674496295908504187208537159799772080051192292579059805429479222048578000890516118596274242793098756842780898980765645869881610036023411374800834386223748464825899794852749054346765657959106143650692839796441237207630886842547087030398717915820598774482068967247661437905594328521425874979057 + + + 26357966711801363898328231309025314087616129417836161948306497415882603318843666161160822637115952535994405937855709900736450964992853399251490227990497967839030533819424971389267533958232849226183830101254778677749362868289847725471454616517783178514849063798868429799551121680536684866362141823781948326955 + + + 14384849599051764661772057823488151609489203006676366444227243390117693698668322782327983827142983439221014466954818465181340731717991045271712496710923417891229487421449062528271933023092771365428984997787726567732777005825539778159234635254765002400637042489824209849704387913027726439841852511942249366530 + + + 30051432193108012845512883901872689742838894686285390245961092912227053842938452415405389199460855252222500571948227564229716905666340774672571874746019951658247579047627333063178030591379609682038552274663193364087296307923630239584978473289012247558758375337308299796539977243614211858116751481256713921208 + + + 1 + 0 + +

+ 11871194330006119075814063164847621988250895029346062235036869017307700154221207494837479274646830156979463437583772905378112331319232584531756665421941123 +

+ + 8496809569739828636416865104250710430755229036839126522199307417003852295908536338099771857812069765678990190616829088005492474195283849698868360489389003 + + 128 +
- 64 + 1024
@@ -584,67 +1013,67 @@ 1 - + 2 - + 4 - + 8 - + 16 - + 32 - + 64 - + 128 - + 256 - + 512 - + 1024 - + diff --git a/src/bank.80.params b/src/bank.80.params index f363ace..fc96c62 100644 --- a/src/bank.80.params +++ b/src/bank.80.params @@ -1,583 +1,1080 @@ - + 0 - - - 1024 - - 135218297597036027447710869998207208754674606065213053565477328119318307615909175526780620233213961426236879812016724358445271350587363396402647314849305621510012071242662065255846791249159498224132174763132326817952843159753470530205099792627946188037319629342446887089368727200769772054196948434863869529351 - - 160 - - 5 - 0 - - 18208244590241069583945724715874667682021402381869122752191191011908431102922032101750150575398954442568433700325906936509940645446026799664167551673847031697308843403021189608647351053797462122799257330721911677799321262955518693413213492091091575031816278740442189255351713608125699206715386379787631136553 - - - 131540008933434439797345948918394261880173787648911427732001625350824200688345754946399083539327263132740551020405739246247253074652019164142804882841356667895761572327083692446423627850400085866440853738034890285736115428435401625648425367295082976489978122036860020082169538328537073357748608207155548379323 - - - 91272725802016999926151875073739471182280652070511760378850930760962342713681923927240228531890954606645620919696449005573523123959193016212029127692446066052985178174169442856720775137926238522268128669447003671386368122267146212347585948046238834952090600178685872531305631839437669077746419434508311013383 - - - 3469882655055659224110796061184855363317387895617202437236151222595676437356010103862254518369649822515215063723506132692782175600271281713617198794137567836935269721890075460941750695290740788356081320228309732607034651115489632489205897080536002378820247683062542665099079636940180095369957072814768593231 - - - 30597361783781676797521480522484587284592145075325385388829200913267968937767278691821499603927812902193661100233957450599038048910138756474842188339778893991336983286399329800775281795383858969341862563509964623791941848182839037452532512334863582834255155110971223966672416785184918358620159650430082221670 - - - 1 - 1 - - - 1244736658805837004330109075480297814211691129853 - - 80 - - 108632052121579197510727782738809674259658270667513999458233547257208694922342747151016335495460550311128145055639237925983221319028074946360737371864153589540779403314101093667591328047044940954750182782695379846347426671180342818611100418161230058992137373950 - - - - 11 - 0 - - + + + 1024 - - 95288621726635968872770037150784213196985326131676843097938547136462929264841295546771500388417671294966257595433760953200547360249349740933546921081522125275115437397098973842360250826812492033263835470045512007784622189487961151941432994089813647862969606517420125770262374746820810455414109837014665020593 + + 93230763739280571504135894981758464921549533244404977499280100317610642158696171760528104674637737229733175941568553403723105175097015515319699070952376427079443371106935342247851424088952059295885886935097518162672135947106049387484840074591589257360230315769557689696542382392519813078599471190744767574869 - 1024 - - 6 + 160 + + 5 0 - 91765448215067823325795421667963131269512371058001714218791999926519624355910110183970996302294343489487711637666736326993210098027018038695140474955963214538087467579370979300852114793975820201555823972904294803171664470191975084609410844843699562290002166572267125918023256183462931816866438417011288387597 + 68483281100617598890690260390149768811612212228415625203522044461046667111481879531370567312465572767471594307638295801373186418716158142849817983459330707680663417874829025870869126176489427613080242732002651745488662881285588979959921965144385346078984637002460369031880302928947344993869585533184880578110 - 40294104858917502207884187657330535256083121883845488158774475159839995768781522379296790456727414484487297945298577860348991280709907143209769263860571497761805544744736759396126801492587046865066754602032016892804265697920244305298307566030270409229660322389503909826850364964925423148539479481422269333081 + 83265639626129173611789599010225302025152409809086527203484455901023769133886691838273456108748805496287706878962773757945456134873405263745164606965847314532700391809966780181133976693605443364901583082171984350459199737213226723745536820865782465101328993246611565093204456820916921489432935715107535378903 - 37181927301328601230229509824050779944931890417371371899093425328383585668806438133965151915167895804116880861939436384092456427888455471167585465876401001715893034711967342076190251284011995257843683345831106685333128346207762133410990676468736935851749651853413574904157556618055537455150277384533267079125 + 64494645596589253556216597795109317230393144753176410221096594531458948364177234628870736479592689543360905599602657314236263592101092566616235573847064708472909757312236854415546056402214693799474345167566671352673240454618588407803218073337529354507911802599713376224420664104074189347847705900767264872038 - 67347955068046617987078271939584408214616385355082946652652558963004113886368419385065451148614904475564270298464228947932932400883150877198113111247417898333396047869562351233676189346740404229714576046346513957179597233959209788707913957203885684064580064021423353037303259164004893420671864177938248968460 + 905161046851521409257577111452816735715252358623913604457484229604130369307839601749333327613605388607433350593708810515691575210160388761595869399020222667210908597450718769664858099351646068693841593092163471515550082960630078586622005691616793435150664360492128321931098927419019241842770901510122534086 - 57669000393863291465997741294941801999274879223745070978194979170456208486599787020905477696350469460233194798640650624252822592978323224264539104432394194340083276480589910796208101428768941276014721718948586671096753212427551901667894807759957845419273976923255392385335476551662714791721228240704492903472 - - - 26693245241650097930528211048506005550361754351170897843150689991780056709581651682450255357597353232814904745727236148991266683037674349270826986976517570248012352181812879805573443388140013853869016411689779861764052607477431441788218487198174043217144077012585519677983607140788959524397744180396725947903 + 41967547411890952815359321374560089169572366216165489882401854020396349040651479953032950680353976700315040441376320576704876897753122041503541594885225811640391952804794467791615197647585183498734975425091154552964180829385469542341052967827029779452736068735777647237824883904045150416844783850957326457638 1 - 0 + 1 -

- 0 -

- - 0 - + + 768028739645457608782610724486466841945856438193 + 80 + + 121389681045423325292614017485147832276096371324287958707137023784247707201994560568190745220945575100850617828806471788665848145386600911065071127506834995734161325061718372704826817340005630257932482772489716899084347057504860573458772886343641833581315715476 + +
+
+ + 11 + 1 + + + + 1024 + + 132805917336342357621340347406652851500160158358616478910647979991495279410794939929518375989150750446928132372271337608193443333865973093134231559072633996501463762859681361235278609969585631425793848655519125510571433841525692826089479555621938481220398806492169797461801342643036874762401113827812141565129 + + 1024 + + 6 + 0 + + 123724192971345628283598524077771574642115516306203819302642840518434734884990023342093372590141717915386280139738278686607193677120717277193327685180610485720329861045086429532831247312816073761794696539180603164001212548485317103853221255907270707439711950418933701675350040464705736338361874491112644317294 + + + 14625429247927685090341663241649949148258959797292039323692281863043191792520221408569037942351234266447978782199478598250390786360135847682725454656794862494759779321288036136608651289809110043898514796554758669357170034489653566653604233508960098637358973041647160974378868936394566361597245297526090809584 + + + 64007057126176875784921548625312090381394744981912355585114232564443978202823028666354191570270582971317908560590960255621718151644865169079937946397430383552508870164313540570101112038765363492847255578958178618499930646151629515550809210720009750548884710211145008245153069694049417395148648829340938687662 + + + 103115992915880337411327588408688265150975095052055138397293144081059692734045417060416587664821844857318695820398000363692718875618295012846030208453079674394744433816396921378281051337563089579440046048625384540937518959711246975878537125941932878593410102488330542299641806404417418885309003319570534438453 + + + 119457315332497076188739071965563333761790600794685011698971978110574170937694642037185938145352267447861601656017195376534888030612146228692269726722534673032982839555108591230005930224550822365861369188758542352070280899039005900661300902275599304439000283009496810058515041286869086152747650395143418209695 + + + 97738799315708788763206134320050643392532463560258106306083499059560293956823651670664308620427613476046927360217377480809698815484522143039469284490440932497202203091566977872700143965467171603897734591262817015477036444327217869465633675102793500947186640843443170349950215500682011284039501098188488514980 + + + 1 + 0 + +

+ 0 +

+ + 0 + + 80 +
- - - 1024 - - 93754528746270947617601056633800291364861682298136548284561953146489022955904322738006597336491255826850217147425593207106178206216828010702018655449477593047795515376414948882934704904553519186055641276786533221369873508841086692167716664918409533164054262959579372586508029429553217016081926497726561694521 - - 1024 - - 6 - 0 - - 18718193641957314100730569270853083678067699981231377053218236440200570748514195983062189820845228989708114721036335865296839656769486571188331480498517073112230023384223396819136721032148578078215922950710122782193152236503585708948416278154158382262317851500701694633329332013554441192971028421049617669489 - - - 82896076754196599390958700658750134011593697922866943134696485394164355313829104791709121309680409072619102123137695639536409295590399553682662365861769296142916411017933128214043071624336717400223646514016780377509575552315798740608282027520372471946643222670649888877298101008604716866742635601384004923854 - - - 21409157001559082435198762389634006574011661991672395549556344452730268173323934115852207531740777161515961701461098746369193405027011628705790585563246956558634006855496001853186543137136893612905388690157500633486730387558679778087776089487182622558762079085605279790603515779276275365424877533098872706670 - - - 70565991640659014530782020171678876734088049089005570216201610770536518351424325792391149871467733547040543767770865459680906464111242548129734433235362473871904159393238510211564669982290551880614995619280240162572467822996375606151081508022082119563011842579690659846853164036860838326243732394765514573431 - - - 77371797128912592221963604938094942633911707145381583508738772419154024425791944438183290768376322858296041782716140964031431791761038113224908751332497360736934697933992269356158706338071119510267730514533442260161070478749011694884944792352277737582112505303044197289488663410941538147133378198748067540370 - - - 82906267256926337774982154418825451735160292585995227482630966060005770865073506792587615848461940397794441648783258220198681551004852811134622576927680502421722981730340736873927483483912074641562013505776184518064639060490292519532693639651522247920944720222077401382740855126956599277073236976642634255886 - - - 1 - 0 - -

- 0 -

- - 0 - - 80 + + + + 1024 + + 137372634310161859676135284402338656224702625790752326093422619912065941056411155016565478217907728879945260871334556369999320378181012769399229672757185658932449669547994359702315835117004920960039833723832775157892486474472871781401535566138599328187388026485937842777690668704923449947159362940419397279397 + + 1024 + + 6 + 0 + + 116441115010520204443701551044388141672708396572634839287898503254446689571343162226795875092851665648107955057536241015609708368366718318010287460951620183224189985722483322655563646525334936557072068472012436067191783998514083593670357905410483156163550019788757133637004401363151527763776723191808245083150 + + + 27044557351618142662356552877489107755687685627121911493229457826128074471372139670480946601583473364230995461783264153391465908763057631990861033738028356787438011645743530045595363690544107938500296332245528760556413617439234729949411192040200982595365086278803028719387624406149566721713663632397652758734 + + + 18668480646476250585503852417335962920930545198501147882117553235027914985366130789840737981562565180298275654871023023936581742688856218428559624653989709620342050760568013862082037009826528078528308498338926463622071936645167033131204995449391746215916468228090340406579421220320039702041285615945226682497 + + + 124831643773880234485522390232602697151624554744878469357280937852918545591277448221883189230205072357252134490470478766733175680960201808445712280554760481792295061585139951074758260903784531587541999977882176959445583638063216972509599746798664421534897232964080914317787532005374524315535445105635534739855 + + + 59970642815973695149052494697659654637535503354257025919678495841553238031034885486365545257363298700332014605474361404182598059404831610511163756704140132090268579779044407534827161198033244776683186964741076946492327722988775759361482746512239360253228317139110005567490550026268269509261260489164598329675 + + + 22923915272163963950857605925330142022074779916236347548886633162654056167070402255377093400484185256137566072514608718416367258335630496123774726992155837700585510673044223219699749513900672323661639291542257718222249838123282120567272749819257073710511915155801225598478720475650206575779832514355014487626 + + + 1 + 0 + +

+ 0 +

+ + 0 + + 80 +
- - - 1024 - - 117121510340484883218702815716016593017369400197866007284904378631159197139001634351397099006348261090254639042478158024516471273585541723720875693552232460895578362633596275449655253304174140947289638902997286514465275801294597279338210032808446791251347509758362087729471534556332712094330499939197910698121 - - 1024 - - 6 - 0 - - 15107464790949779810848925539036116589164680473165481843812014434604020175520176471688364414295094594789131782714144993286259674728780246748998301348736396420755743906492330603688120075762111416310712907772599039447961132953865243297778270824554218777752426713792107606639541765351560469580417085799109151109 - - - 113132619367906663802193126722604452247067407379700239211440005578163970000183414500162238958023667292239182925037826362117516957239919821570280746619833192108348188339728009997904509491615767024576962472478540005115623781145645859430146502168842179897232042057741008928306919479034320821732539898654106307802 - - - 78831244758190029101616472362891555519371645829273483715261840379070989387145987292415360310610897488118375589143503280479343341807586436831967002903765461858758240031822865686048256893617339372987036343650345119947926372267957827867520649710294149310400270822176566699466347972287709536682523581276108603165 - - - 89583752214253883440042346912037084568006500039317399385601176574344374326678906556169715887314185264099152754269356405558198400381910728064450965723135896789762010431669178119883031744022651457596440185119193793176699852604878873526015261656614848828142855743809311777609303941862248597137943126610861447582 - - - 684918354387786416205491044839255104512468520452805205068164464332390890861013726899159853659380168702172547004069779846306014103550976054178864271837177474931121067671438226162027556594210608928930392798386737184879547657514532124037440133147012810854365196162946992675626655050241753400618846478941872959 - - - 2827090550656972121690688796630460105969591925581289110535338322165933007662678927433743438230413437638688120784053460847485119328516825633705134738699602887927163627101863584369718271691217967413302030401970248252827616171028363054960352533790801024629520084292963540458837640796067532543489914339488634793 - - - 1 - 0 - -

- 0 -

- - 0 - - 80 + + + + 1024 + + 145833845432288909121084926233534057685357293274340350126668766405212197351890804174287842353814414753368096405191002821422184530789175512390729502084743232689937559449075513447581521298005309418519751610349842123168680301350588679553600672970038503825238594562290725630967833045040620813816180930525533629921 + + 1024 + + 6 + 0 + + 5614206228798301098336705931671638644909555489877769303373552985024454467948272719941276640621802213319824489026627166503592953601271862091261438770581967429841000215861631061086884950337508297975792991010971325252918140265180480069954277705396167335598614372709439485252924902184204172397796469683948482249 + + + 77829222239122835610084423738321562150497279446208639514447460343866380070175601047808125427733325611930916432062196605539354365357794550584735606610432247740273684874796370960540670916977515416987155254054153328167529316792368006397532847978034025278821903835834149607180869130216088411657110222021618483674 + + + 126526668999549527105050115708853820539308975410043121964399106650368217475035537783616879716348093999454486886707365887651216832345937994185160915756008992749761345129872838686896268682011102041005029710003412657931850689656325888000091306838802288920011025039877500299503261395656474277902595055003645939377 + + + 39519547515028449055017861664894155862617764060490711234501925837865547671173429701804910726363843756169165093168047068989948316277502727839336504944846821161828359833653929929545581648110770846580090891357587504044246698977653720185664161165761777760965438539711667531830065447338000177079619272633974997808 + + + 64911171886091908379987659695928798436999618688156351616885354569475319404854703300389871388692848749447706845284633183118607140873964829806267750277059617538075740035634698703898760746137798807795759428578283927848978809795704455781269250994050734576159373116072199698554416776935114764908963304498490630504 + + + 46337737440906880658350695547525646305900567458168613888364269449075743635956571509878774476192279074625591314542016353903902280576521867929458581523010335829319495590409102271909715542993648132948180305225658201466190786746685383311897244330788754428392449915461044438929637233785244332939802020516997653890 + + + 1 + 0 + +

+ 0 +

+ + 0 + + 80 +
- - - 1024 - - 99079153840397804685867478704958595964211219785958155284881016629530195136827933093286116921421314259616351394960959112126590774558615068567723955791014044034246784512429519014013254580736277387087599956862163226669530087515094282327896617665735736838287894898186772994803726158745804341613911571374382274217 - - 1024 - - 6 - 0 - - 35578547039971283982645110066508624345573610232317627247471510693463768653398865835272238114026351004271431932575111890233938763056151590366620841232654704061531541940982892684581803302511323727831984614028154198292407031303845418948998407737432474830158607617228291146032822031461125981880732591780383080312 - - - 2839520020939910414585072396053942201285418477164512070052267230831770336300588444747762843759096401075210098436532138784880804799932247566970642529121364066612216811270441923475539213363391876709967520432970001189613754468394504726917294243804597283185825885394444717803465042728107614758510510324174671273 - - - 4257103436738693167679988473229289136213965822055009836429122086227208976617015158554335685934033709081255434321021922411600352023894639658729306158101602153035636660388068573921523812704376829383643150036396507460136150352573845700348414072481768647411162438985157824104787655967389449019995413270282384725 - - - 31273849552494023387697146195164619556065892108955510829954275657213643062645495427357887929042406068050763274296028240982751299109488666543364710271423257790548527234106226429899957206169892445232737790590754462461209360892073592865787825317580388584134032992457155327142814088810984081589994609099547807103 - - - 35347178693259636224425976955506604359014275201911436639125947893572572942967879891723093129361271536461729305849344256272804438952413715869305278809953911268349508791262359453574584301723678348219958163537617880479600787349102851371503927614310858588626874124144067272631324900475250505683917036436021292017 - - - 52102732689033856356640226142441703447547338607766799410243675288006455786150047981514503689756076319154821254787434210207714021249333494274124947142471750583698934512751038996632656769981162124907250526920201757770741572757079121833484338311748881797371896129073537143638484841938341861907569264174122123347 - - - 1 - 0 - -

- 0 -

- - 0 - - 80 + + + + 1024 + + 146080828996844893786930415030267236937465501130613168303735364618844293026036288220097635327009673585003284120262747096635449871857553308329749899517971369512993356899511456706337957628017589622952308458223073708168002051201346250296138111717760726492689696085001720244510576087189788400173594849773775987061 + + 1024 + + 6 + 0 + + 12143846516438032065549326588564641993076335572135680144319973070565227510388555878816485541168565333330331360373203107549711159307955856012988849600497784921648620670877827610870429166714421302856006331726388604858639217479516237211099294053777590279150366532220218255101295698436049419849141612097902640451 + + + 130110283334213982281592724744587355779238888385612173261041558390337170888862195730988952587123072858116524751419665014046802853625023209193025314170209762095895716630052691721289740627897735112480237539255012944565383695831051013027460838684588426430717433008544285106825419868548234785369723450095304865124 + + + 28936184033269797712301045816156985323899945333237798274523352177150263697445409224159438231819208355168670625188283196276111898818482147589072075244562000752484990678046008139123016667919771421087077668072425052038197223173671078453038383761535748778879934180519804845917837931720125662698639707169019951825 + + + 139743313044528582631657668286088123161464964626310113284683779085342948598023633133544825825929928312362129974614186131729049145084732952532041531975841926166858606672969874133254866846900373891351537597368983313837098495423640205742172752175958379844629957134932742930140902857501238693610132562014310099849 + + + 53044581730188892877631548732096143188468162339421906645278191018430149084642776390613644404189469954372875388873708624934832371281884377986981016031495526801835709924473080917358419053075051086050983722965169085001326293901098332606081215826837456256432766108294919171060244900518692093178547790827213354457 + + + 13720982697614420642042383264268813339206827429441510070099063031077866574985037908849971402680608542067662118645382188812605442192530585575940209920553520942641967018589809365098731467452204409869649415457166095843163238375083308117631225271409506085279102769367813064999165660319126220444280297921602368577 + + + 1 + 0 + +

+ 0 +

+ + 0 + + 80 +
- - - 1024 - - 99954730175178004845131539653721707390533824134606712982410587911600868971245047100506766033962983317090892319656867952029116781250661480710843185739353918573345334339835797435830424130435498802133973879689630984537203490181103875802086600280921230328725473474449200859216711406629174468133378669755826399289 - - 1024 - - 6 - 0 - - 58613911232307388786240529740987000882039067599860437772060847031357515586839511997150614558368535541427251986791314469299365847701391023351538654534248928653505326544257910522636722321510290544008094306357049503882695532643010370246985543037398842826556465466041122607877993972401850373499349505467940128480 - - - 23759200450495340002812814650036411105104184704810382581836582136381499246372180158982092762319176354865585492876056145343997330165572678887761521089111659694764726321928033912931120570410344269003877152629946202983994387902650140832036058989562136543699053859110798004475607769263425530430095499690012867361 - - - 27782425796445607511552503734068694227876277361913927009841359267890284063272744867098761749380021187439414183495224952502774379338236771979358642185898028829503362239763322899537168530813926957477896747390629838050847130063594861856714553628317263751461531880058526762279151869539133638780577291661705004927 - - - 8784981056185286950712849504706542909851983675476684831378521579437874438781947443207971368861700013318831210277930183684008548888491900029215961830883091576228665510223450239592867424261582734977160146810093587216625525411002439629017874997945384679431426050351258078369390184459312181275581036833509779471 - - - 67438312305077819888962412973544875116933726924127002079831365096482645787717754904826762149733256426407804919023613760756645934824283717354322616471896981039882491744840529505847451034873496543558273551287489104242041014171297514449081571270617393454781665775168456916896840386566994664178411923865986659586 - - - 3464604326727829206934168876456004920457656854740648111041341919379642725442948759261114328466645767790382904740245997674525442848992126187113268087612395494538879214628114838356903347298883717235497237827971476139254978851080082281176240683715669897361209280214505681097167531557140873892635301719665778459 - - - 1 - 0 - -

- 0 -

- - 0 - - 80 + + + + 1024 + + 115562432164102251406622967052071750807258172151285544566894218498931362209567346945848561669965827548724769820749118527361500484654503353982654831132691503147282822681740720558479928440623829908178283919727041827646963738754679445285325013831451162488739515312866275942511475472857933145326220132237853644557 + + 1024 + + 6 + 0 + + 1918843058365060902224156698824791077915048816126174273828173328827925146094242787808159127789911738230990921536461350767134197215631858847922569466378620788070681199103616323592972003068116871618652298189097954624870678096346675641822861238845361050835764226882558875078705801193309174207649691981387676761 + + + 5633663323728715862831888845777946094661002864544824727134600431003469539113905131778031633116781888360230284434775486594799461335499354181125564310162945192736493983408607583043279052489225101857443790367000861445428439571903674899529423583149897600345297997769124326200352679791494774441424376422975993023 + + + 92224572490734132466871405475772602483548793692969421833571278855151455741757597222662182273880403467624396109857103285036810071642000551787217955918908430643545014752792961549564256530725754107414785146542687179641756227242772610219435049498467256907877773547533212521894936045955979927225093316843447273624 + + + 66183053406824854997955985382355384715497240013453258897437176350763562425331521822435595550265618083659590969116645425396908998848723993833538106201823652953927058335013828106360478760501723552180389313206057782227500096729295807156679165429081748514586663929593834603229571872339167803106406082026242486247 + + + 69743124750042509642467145074976059009243861971684272053034970423993683530657827278165993761800907370985552130382901391446596933005528253256387440804145356085841981356225970618247323173456846551942037337211218981373022884854505546817351938007556625763760451941625550568126244464144092301218250589930964771252 + + + 72915756120647370787512976134911056390045357692685473282250206465655171985686451881325200537334167943578623112088025120468788437772822762261349053705299070854344523813062549426226658609713960083898353784228091780561562317369856737756233116861220821234249458074025030344466225233689070112675547477388012361378 + + + 1 + 0 + +

+ 0 +

+ + 0 + + 80 +
- - - 1024 - - 148196264683866983246056824641461916553727188878286846814207149952700786295989140546602219816499052248745376771762136245911508160658056925812311366238900528068507706459965567045224239023241599326102923853309769022811634949971343037071212919062146382997355248278317770400104265846506381194883209546789678257953 - - 1024 - - 6 - 0 - - 18228509827232960358109377366125905423396651073282009255000634400639380520576157033263066403255727758538148196007410118445711222636928632798833981031757422495552319975431175939254099574893434799433886121282995060105902206634281977941044087776314177795281177970367372303622719093916858010157621949175537375437 - - - 90741052971361642071954400353930918473049330103806494303478914341240604429740160266927238572355901048839288876493430663768138981859097012674365597674038606403261541063513022898915424660284139220319595247352870395164358600167094743461905071137254013807294601497510689150945162000419459659619999603827775332678 - - - 52734335451280775701279135902793102618804746933648573572440269533476207593955736723943187629344792274001509257176599036967710480587413456988273865241932371090713054609684326983191462176991220730297153396836508515256005211749658852141138853888828449929462905950872738295586503848336537871567551750808215082154 - - - 121858449637190773866676289376800522277568993915277707214462950174058584758252432920947572621722050668109626466687582272873980762806089036347506636343533340986613090442509515739606515227484919838200607799752117413416448281331606056270182334689643276303764467680282413521568568120011182673925501023231082406153 - - - 37196825733132964338623996101449346202869180967029642202058352423341650421724872464278502908541095717874629388572535601572954340968281300632852357761510380827733721910298105144168674114000458492760192448497375493358162287626785807975379359987001469882105036987321265846856757528606901421058839136798700287397 - - - 75089855211101765747300894547085312949871336795292159964546821502857006262710931284436535591390767143045054287236700353745766551337135697641239389214003872913304473085672132743841053938472186773425817048000547738177259207808092058727324924409903592113635766451695610110034720923274183936484960662875433336362 - - - 1 - 0 - -

- 0 -

- - 0 - - 80 + + + + 1024 + + 111927356566104023053025699787625550838058397847053053322552127284788489517366540434191289811946944159151898144044517991896201183248020899355294666452275356580458700724360087814407783680353738034566389540489206594576108611637326536178335876673250303367935270215570934307497912954941670160094818547669559266293 + + 1024 + + 6 + 0 + + 26083963272420992631361325874882186826320192111270492885447297527829930121512725063041771515422873794638132630732246178945827524916353536920338032942329648884862506341847807165763917740516440910242943041732772815639040483973079510498995058535404124602763024963637048513509262352040839650701377899779182492450 + + + 96349476044790960219277900737494348910404104317713878532186820315042836896394111182750693236907309305366101392065377818174119922772262450705915928502291955836072143986901878966783486955686515491687652827133207058317134666488154155770640867360263153123215807876346934189507244403619175620173481171524025037609 + + + 54690578151752424968627597530623695060322314333503222637738707156935596285996271874663061813880600223163657890492147882784449085042519744202705258571783341725890402018930973779086740363427426280862005142662828899727835119949559802395804426318658922453509773311165866730072879701477097084818422964205782730898 + + + 48548246442536242336650178813376090147825187269338203565219773463426768909891921223610424888168123366278860170690454785019898354608412222321318035320240409277155997290872403728887253361243526450374951908929982176434127615635172022089921656613960936488084542875629883983721976542934773414487851263961537403813 + + + 8413113823923925485688787367614707477657758975525795517827722017213206555788250307268244325721882479636008606295000856384190034186952886166588759610523745356045626108013064205521440618996713728008939728528935599492193135365285724053499413941300417129252635867240091199959544379912710341678940281432723529492 + + + 68772694314410414206205467046690216598864909706182681421449044403117172244107392479030110544064478992356950657658675437260300111069834928175128122254740575410509949599612145656885798061073750122226817037094964836568463944945479934451259985250499721987903002593433201657517849139533217227834891411340995860823 + + + 1 + 0 + +

+ 0 +

+ + 0 + + 80 +
- - - 1024 - - 105921949191653130859423411775455174812642918848669759359209486362932598819678144087209481182550147678529129567658791265359717569767628215894734409001006779022322289698515237895707269420956251973406350695311822182673083730764296195817297540780868975477123852203726080688004629860517990328589192081987644050229 - - 1024 - - 6 - 0 - - 86809400749152861743901567276848272927167445497006079265900998087562865265602440835156566344510296704141655423477235937471795088316625845837856447310120665238699640116252577611027501208177910037535632605368178096550493728239151536133777140960209848761693689914935806579004427834951787425614424456419297157510 - - - 84986197247511436399667031576140728639886927069411759928791244212693888161425776856726174455028312620459053949666751815466973657597394187896486659471058818599622253530061625009497213318036240988480751591194064567662021711447798444988895990719137206080680744526229981752063726938789038885269097160956167285566 - - - 12431205654625222881707000710728606382090929111990041388059059946907607046548243604353853640940005905715357216784232240313960881905454724897804957781475751038209721410086085767242939434308439807150162545625051293193433624790643565812552903666506190662522259255795554682338285362255530961345229551611440343519 - - - 62883235755082005523686546548606789143770348860378546277745391562811162140335817900845352214174699090463099544541601029119065647315851429798873533063329837639373217180256975002663524244050145680516763942257347656552764882712032814090180931672955198158069467918914707575354901887685922556718370751575138342589 - - - 39849433607740902504402507874016885026871507213461501810264903771866537152481854388265980706007990086277706589042473112769024003147970075181100851394556059066286357588607531753104924164102535180160270351409239344423986742160630582682803306956751475609550461013854012988551751425448894542674892017443824734012 - - - 85402225442112559560680078698274218019993940361574204599118634528616463142138719233262976451961276991618853156780942664995492868531530624507421313975512606915096058618792443156198101790705909662504630168187270536791683734761412420713398341369713188166278602069035350011783353145233527044956434445304512600650 - - - 1 - 0 - -

- 0 -

- - 0 - - 80 + + + + 1024 + + 129247253695959703790072509914691217099002852368322468045795757340611236783965062669505460428210762504741229507573883904113055589574393037898320307119534601325006470049122917644647993271072364497135274094746214874360172173123358949071606257692363319647094023309480718209008941035284596506382336215735779493909 + + 1024 + + 6 + 0 + + 117762663225409742292003907909356310395762445497211461079165975468263649230373970302717051754658639529032746668081675057812533532269905582012773970520260676258789891000845981509443336988580006031339603500190556266787092149644268028195165941794896901354362131862834598206683215509345587690168857698887589234574 + + + 41307676734324917289596188448768037242041561478666611229918508332376293249216584670403871893840311327117612839717795187029126418654206536820216938628666056443197376483010899927824631712516956909063917313355829047154852269087395692986828780702480137828937293992857398565122465372059669336909756576677250313503 + + + 63089817419614027949713869705443303414261012258660802756430718945673750293937911985030722540073735567220860290764744309902169310419281458073896754765094348815090678089662279005948235003153968829581576084867530630559125676708622432223591998446524862273768360980298243277853419634774064906702269062659305426330 + + + 71199445873142743890705311828426192993441595666700751966078671905336982229004736114861991503242913305495774688716514992606079439892068289110033526877163042238652945854618818253560032930426612158830717352398512190160864531194414597250521382878357192086557641764475531942766422233904908929408968343948911160272 + + + 64619094101169861260658686391437493165297845452472272358760304057989905431808036959407913033998903580567058744493381896304542424570477466803135163609233034624791665491361616919472989117059076521170734411692284721188464794534574401950171105972902450942503245521469623536413107373984706704691477763216841890189 + + + 6677644520806874248729709604946168760244903183951381719735625530119707560190818287421767756180188265855439551326384671573103541157197475833159721985859875315233932931981009410659195950024397916060600415042070216195290723111879774732526912066923480930549563204082983120980936536428103764153567950378551358385 + + + 1 + 0 + +

+ 0 +

+ + 0 + + 80 +
- - - 1024 - - 108440748919252450268428286731731896396610163026933503975849925663492334776921174398497109505538747057893434317250808469760213233529336913398085925870706542294714657431121759666156575676722682156151413720356321723309169997769639095210994084916522091702333943625021802404556103531364881274617202822828310848153 - - 1024 - - 6 - 0 - - 66366383659085004160581858686068110323987677633068554408731820055937312391603116323527462447105256578555787138213126535928787848971976541459974948337601213550884956798828607581314470984305212507805730810283981952589260529852613686591965244366260752647049304254010848262444064395193144695135425020863379006256 - - - 76945724108134514476845806024636683902509514081378625453698025707233689344313131316105525545539579926429167457073332412872790363136331080030707890397365463990420679800561805613345351927011441895347629470989024367971421806479256556337062265729708476344598157347724009574637722602080586962935931878380448404266 - - - 91945329973224060248558889328744255046597767263343203901720894520436658305695307815971264787080717251578623712083670325402817260476998336830698287676420656098045289735223431738396971319193824104754894276305608143683285127818367138056317944418094268645782094697587442950453451099229969927726915095865444522094 - - - 71371194814401374673127041666269343887336750774645785365973831168673801465656031844499219442062352660855087164791888562838903522706610239539435340535864232794707954647487039513635041583341855480149907762844377270478905725702421973086424891767443863000735666109119321036123589669276816773800922411249576027546 - - - 53718436417526636858730643071130396923526708450985497713286303484760405006322845800085165613155450183026982545846694095243620426398424635300019928951028659679765785677107062221527213905354703614993367947430698278405310236478443546679988798318205559042482374923767602250464637773429717300281505631064612985081 - - - 85230469722743515304402648589847925000201154330027354125047810198070022725031542612895149579396712621532910796627591852488733918035116059401887268218978788971949898670298569884150675654662295808772549913103127258327197135266119807509485752123513682985319604190596813804839912737937728219384325250171411540887 - - - 1 - 0 - -

- 0 -

- - 0 - - 80 + + + + 1024 + + 95993586374937066529455162653639008917944416331769895672692447131258623823530601748524840575528704991358520416600542951520877430553404290694537271374818615310922199629418777773940917285970907448620026552905846347625729841466963377261529302788316386653331236574151237767948556621396949628879930029930854431773 + + 1024 + + 6 + 0 + + 83824229456454055467034777958381886084070099575662029359808652417840721999302831923458207007454244578968532619690321777920454748871657405334691831931976377684607781703339528597558380460921586675470307191208505362126230822462336917172922636421883257035328073770261565664854509432609003556170229901400608515196 + + + 31449802613073682797257425139131419417588192884433609539928376773383346328101742134248510325629565365298437902156586786944230581371313578612449753268670024177152333713470507828982714894227374723227899934752245499118873909871643883739539742747200765153224975710081093451787655817266736145458329023747843360297 + + + 24046901626095895679816597945607311212403525239995850573241184656254370764719651915880942229067459392372913232451799155395293798882992625761937473873153502423890736622586766763795872931503799528290427421747236393467366420155132576017108972252571854737191517057107119000077313989206985638792731956505981706798 + + + 45175832503961230046015360947078569944511308174669274010627205837152263355923031460360917867200068609487136017032019574229194707255438267238936157298227093781866090322680638607700980856948120525143517256771339934483638452609457869091603314126054310638555434194657134665694213555411010667515926827636647302610 + + + 27226310139875595061545788405464522559218586869146317221006148013240284964686677834822701333166143350393682277077841511590250822499110747742693496232681426234740573959099299323631804367485077842063495311347905886490364241276494837378393667776950517833124284734693981208106073674942158940515201927225260896177 + + + 28061030032752164801968067580170072035179782094538078442993446829482618382199841587780304480987658363417992707765141978367745403741272853169468282987262916058066756117715451557465508245153549381212217078275504206215654107054783849807504784914064329691028379646444146221420807715386913209285477170712492499628 + + + 1 + 0 + +

+ 0 +

+ + 0 + + 80 +
- - - 1024 - - 103432042254953094027999928574250715964500891045142387105955201932618522113984190182166706020884933161447941491385637733523319614167734344468728413306447688694643223282152714640407364090919183137006284201884535802398403524505317171875956878874168571207572265824173861602627771714795571730952163007208142820237 - - 1024 - - 6 - 0 - - 72735857654996330036308578750037768707512446485674661426090344826756269113965804188268267650912305793719752190143646093227347682752079327651194810856984810512909164395531967789876907601998849500709695834360721633503971686727031033634428158149145749257438769804777610989050845392734398678464304671042690689175 - - - 40354197327776309644557445446598247511877805740566355719587647166808789073448238334020156687581688473278073371655120817040636086978579601886371654352774729778337067600125687099708508209515703504788115675665658396923040920295778105284271940275617551147714430295447383909281391532478964687175643491947382829869 - - - 26968813628185832884730391035851987751870560318430849916723371498400782087349207710865186129239304189549444082550532948832976767259584865952574643740037079740215589837871761474656629795571319987839311742585360362081712716843606865678855283492160943131234448889819908044401388366435372206735181092989882690610 - - - 44457756325918210432882749039045279802693637901659165506229652641196771463619711136701874027949976037693870830860638977238468910265640234729073206675396560391192913720942212407458029980943194950742066637775931509413627536969881602485810181257639579907992687706506901124298572869645460421266928082601925747112 - - - 17923816029308169688209802751254596783750808205473920711963121223110109870977619253002898105372250772280013117032657917924973651135856341002576602124287460305553253303790018252719017423511552791332813099369856129658602326535776342375244816034773978221082034151281828464402757244302554451737031177234874936733 - - - 58173516169174283964719668683473056584525739571524859721047404025100657870657926179915235481899922046403049387657375246255178245370444590309046031552510281811181831088860285782828294445034384018959362706962339714212986805788263200055409728428500955125311148857260741294606734880811179920282935017488093954695 - - - 1 - 0 - -

- 0 -

- - 0 - - 80 + + + + 1024 + + 94684004306111857506841112997261544480170843980474819684454351726404536462307477506168949707131540890820127688938124464318983598656261985060474394464444104662851771105569910458875690156971112007686589137184650027225996873453992879004305779154307234416186725944747553098765878314910767432398939363070193432489 + + 1024 + + 6 + 0 + + 41813145478284531524339888170688849836993489808773877061381898735431270330468430771009301788662385120899147678167321573709618504876159814346635143345363712394968468974763358047056541628004679516114879569313531494252386434132347497962429320391260372741017674071011042604271806756255040001608579498316923849593 + + + 66985412989141614286302186698499483703029319437106991649103297187111727830751850293036846281738132181703909496240817794912400219147438773406404404501967357891659448492407736665354464273194466557245973728459910312238904312073312671232102333552915861810338965397370533857859494752184791937326095095137600260354 + + + 47312445634335688130580705786493131286510846896090168556933453943379704950126824709335441743633692656299109794749138042476418368529339230542721236120630910870410825198394675989175724057291495828269337126435824903651873397607780035162801925793363290999747965512990162389907925450219773635717120444444967961403 + + + 26680941685059982265916590861304381368349841644910847763290590165644980437512586663772588348564786395142074985622665652147665283975844718675959745082420493895716957522519133528284438195566054958860953512709923937286271601444639896244630126540024459226060622212289739313704639649931735161505997395694497185980 + + + 74083443550392038622058019232286521002128537943817376082249256877190604066000435323031376336866028072662736957904562553741115362551808059312277922794883095838735071899792161563043461419534693122988468859364640131280222420706345691410443643331380352418667933129375191851645103967896117642593878204014509865042 + + + 30557934325334532582271071478001957018070185356327913496618682277547859447967138146722346701435719877241149540478472366310643131902542023167448548815882595053911370946603870567964058986679361070823587016887587552099878742317560934642428976996087168254547665849214779296369547563107675774229435656829473513432 + + + 1 + 0 + +

+ 0 +

+ + 0 + + 80 +
- - - 1024 - - 126228903767442190738148096183580491175038013895363063255063879407638776222007762640020963679700983981505819346117331332097744171511439132259106773717665842976406975673619367222219945376954037887793874062977933096988373359681541459886631958588231575466518127177060945684448323334830138905052399414218163921421 - - 1024 - - 6 - 0 - - 97539931636318677461475619122054540059104052317022399756575154292552051870858044057227021169523273160051067173161809677608371202374236595169900819410518245929982550711392322042314682950608013639486222401760902052975068868934717538248202265198283607804041217016155626510986296204640357633562628725262540901308 - - - 17056048088041119848885497185187738234341957332739548911174241850674169289366712176470014650655283087514808671532359181973245193579686505807246886039638542093762471617521947338468427670697788979094939538614633506767486848270358174624110579657908121127644226601122674835651841028567546912507950233461561314311 - - - 31717709189699030137875842801316834424645064031847570293530325225334129025771209881989868755679274813087722642958802113724122792623999410285511001585168859463078978573404425652982888882289493612951079566418713192311092484146177732644672658032091895076062007702891319957382778438919270892273974397851698486802 - - - 52701408784517534567979255300945480765809161198465471154967839240963141730818870689354317216286196381556788622550165176263143040912951902845119716643679329549799829193894570784536684136260779179477022420722664058284142073288038418969152156881985103589172969912151842893647108788505003435443026642491812317969 - - - 15916170466240831405710269071326971495003989098632832660085003103077847286202099441873708133501162524440579674719437136363718867648113746692100804664108054776712148615544501485090998986423172752761257930805965506564375676115179462856206417265463968081226820646414689722755150455107075664424251782354607115997 - - - 119874392493908971774593399912229045812669019257958357082614870704163802485902701553073252681759628404556483986983935409150939979774709275900622818557001714033801638980212024983490579855036873618987603097875751122714671577192226926342520061281357579934217951516213006849868891095137524137512935354897389930481 - - - 1 - 0 - -

- 0 -

- - 0 - - 80 + + + + 1024 + + 127727743954354624281854745476887090335808566069742443817890352306117585796239126022362261263079819519314090394014361647646460805892494614420724452999880429561236881692111401169717707414124936138355932922564368207508256915042248864594779846067983034559994170386441595183852296112119579847539416226299289211653 + + 1024 + + 6 + 0 + + 38164224196132104532329483574437124604055028410291615521779477243849960655602119853635308460253142535900192481558061899029051510773421915505181034038040205053976600340395226223552584118692639276068809035773829056879281287542819362565227716773397503446437660962198956566256514393193806524849148173695204924223 + + + 110678530127192027271644996149003445969262072382022151859817469310732453833899229470363319557449911586003069509988091720697116396999513012913686700138918399808920334993823529829378539506175486461505670850531128082734443433833237420355314390270799453960429479062564346339269484877851018621073091246726296041918 + + + 122548490956895798346580701645021683468493703155724198028852392301507630566051709653966677479391148249019113594983455772425222329689492967526169663910403291783540669836098877872130493149328608829969126991475661060234359382873009916476841684477657337780779843037860445806000967591640647467157452180419336440064 + + + 115049765164512475615816754723709421915820944110057140572079223148858284078493729853694322750937204306066347373205296833140390979619473240003424221005440943252946247163179631339839082762769031171800431973311643442309923874949666515334367655281859772013653858842591796008806616434102016382825819024401335460344 + + + 24473572867891230766459628437908127183343542625048075648139993688246520961765676225141015722308250646609649372811767064660575479732024522516576703257333821736317565819935529241994964671174856884596066767646349413206450874945566058276469876978552642627552830542673524471166381537681830302599987521202991056916 + + + 121681456438779282590844849528459680640771312311817451946372654804617948881697814947418283630307162863219078621980522042948479034075970549463192538890581557434181542676057282587529357950472618576160067047151888130114895592153330967041148579160247158143832010635353491887390135911088640467337273087059507194017 + + + 1 + 0 + +

+ 0 +

+ + 0 + + 80 +
- - - 1024 - - 130984031670979893855543842480345875518508410205548385455401787667182043276909712853992897091674870836021665068146327054461603450458407290201372558787290109357683738428013567907514516775559018701817491758213188304978093675528268199327422042148541505303706207770150984130237176790872039958140095900892697292761 - - 1024 - - 6 - 0 - - 77111031511076776748383055590862571648674736492772474529961718646938316725304876527853934806892564363406371656844786106299018421240298065574103119127179436601308127134820838280671592776233104655784461864696507484750746141074714338613753312756700370784915468572345403051130346709078319417883115672974802169835 - - - 3128131951563621685781519514589290396078543084150675317713253716044387307905521327893562744421717071028534528094967705348771755396568977554185830341410613830519127494248441161017549347924906597526952413022501285246828769224407661000067457541358719277808165554742389274830650941000817519093291137439421649691 - - - 24954141405440090689976175252555167972525713681839903660616337028203242900712021559077665304276350472093427384187451836674689185805100258168917640061516156543626305008035523276260649599372451478761753446079713760095403758829516730955461756588789162979921765890451415813246841487242760610785376086909463933797 - - - 10083134356469565434820655937850585425146227225076587201691007206376287612169498960565670490848694021370067252342213688465673488420651484169267195969254736060823678091580860232493159013856793525376166944993634152015542702135847543328581535175016508032979250811181479986919377039311967364297745111283924007008 - - - 113848733397666003768323762636821213490695764177128020789115723590466213187341258833452173134117916819367401260647045106530664613037790726812093687986435876985971021971510207916178699329669683834822651456959414265166368467473058891635488094103090980035908623302936245578454636917795970043625492656294734023452 - - - 86136816068775947939443892035798452754540048307990163601582410345529875583874238629932272530008216513299726778108060514260087906788536911056614574118478556477474027724459155894339604045879892134387001046080544595464847107133404856959533587474371075416239607580582640652535022808207241217726978029145005615879 - - - 1 - 0 - -

- 0 -

- - 0 - - 80 + + + + 1024 + + 107749505110219293735979142621600906412060268221095964958047755054026889014562032384740357183948942425034845634341718222816289382158342428614326831095853091684651319425403499920271331624120186696435758082078835771213653665909961668175363666309216938446744591705304849284719196276795882657769948946973809132161 + + 1024 + + 6 + 0 + + 35641763542538072741522529757414549050982531654163758594796572814515332674264107217382876227414938150895794246663213699203676045040345468365595904518557216932736965338172782300662556342977609863343254371250428708891065753017339503387158828908221127194666840726277519886534325430466409332054289264640169277844 + + + 51516953028966449446491964497485751517990094628891894167852992419474152195473677450115630109656769378494026370993046135905409016172357252608391232821836911141770346398361516943084535741619501601620828360646455885527609024954604847125816880742230840305389082240666983369173612747169877033987337057571277486908 + + + 27524154739611696404554678600200022524307387187913330804982598161151693948859012016036623758443668517076661729602221235091099505199024928670720378443021686975221010739315229994281385292748497564017937013704629634698304615102321124160754148064847705580729356980912869939320882633389771287388187641972691550724 + + + 103377113942637790287003533084222224091635314875107183584866015855151366109148344152031526934949226690062760107225264806479505653533683391861954516724319175283894690835928918195415330630293690379979533803005112548786693580568575416145999408621762182595356921903495847865510985584950381585268423739186644819794 + + + 14673500808702279959267062967735040754333506548920926780094883070331750919458000285586391469687032554437676209528650776647628681974602751606955902150200789053315798988526116770065473921424842764231711641888281788435107438350932690834592578132496704763814673717109277628114653974891957529423081709795618347068 + + + 38859009087118888846561310819205669852627803673345854898080307923291445412916752468089587603202768160020948351869132135244840063989628351242421729167402060220673267655462881686556526660062794364572873029867581614425348332512100620476340441607712247927956176958026610185773841792228062538690034354280429985168 + + + 1 + 0 + +

+ 0 +

+ + 0 + + 80 +
- + 11 0 - - + + + + + 1024 + + 132805917336342357621340347406652851500160158358616478910647979991495279410794939929518375989150750446928132372271337608193443333865973093134231559072633996501463762859681361235278609969585631425793848655519125510571433841525692826089479555621938481220398806492169797461801342643036874762401113827812141565129 + + 1024 + + 6 + 0 + + 123724192971345628283598524077771574642115516306203819302642840518434734884990023342093372590141717915386280139738278686607193677120717277193327685180610485720329861045086429532831247312816073761794696539180603164001212548485317103853221255907270707439711950418933701675350040464705736338361874491112644317294 + + + 14625429247927685090341663241649949148258959797292039323692281863043191792520221408569037942351234266447978782199478598250390786360135847682725454656794862494759779321288036136608651289809110043898514796554758669357170034489653566653604233508960098637358973041647160974378868936394566361597245297526090809584 + + + 64007057126176875784921548625312090381394744981912355585114232564443978202823028666354191570270582971317908560590960255621718151644865169079937946397430383552508870164313540570101112038765363492847255578958178618499930646151629515550809210720009750548884710211145008245153069694049417395148648829340938687662 + + + 103115992915880337411327588408688265150975095052055138397293144081059692734045417060416587664821844857318695820398000363692718875618295012846030208453079674394744433816396921378281051337563089579440046048625384540937518959711246975878537125941932878593410102488330542299641806404417418885309003319570534438453 + + + 119457315332497076188739071965563333761790600794685011698971978110574170937694642037185938145352267447861601656017195376534888030612146228692269726722534673032982839555108591230005930224550822365861369188758542352070280899039005900661300902275599304439000283009496810058515041286869086152747650395143418209695 + + + 97738799315708788763206134320050643392532463560258106306083499059560293956823651670664308620427613476046927360217377480809698815484522143039469284490440932497202203091566977872700143965467171603897734591262817015477036444327217869465633675102793500947186640843443170349950215500682011284039501098188488514980 + + + 1 + 0 + +

+ 13384863556442163322952458250977420071347303306250951371869480166206360749972742447864759873951415001010653138692615849046841726507827289409114950044040247 +

+ + 9922097209009096465140505286723232344813197265640635285799288755528166758850118654231004127875732325223233807063304934221607752104237886183649175903422207 + + 80 +
+
1
- + + + + 1024 + + 137372634310161859676135284402338656224702625790752326093422619912065941056411155016565478217907728879945260871334556369999320378181012769399229672757185658932449669547994359702315835117004920960039833723832775157892486474472871781401535566138599328187388026485937842777690668704923449947159362940419397279397 + + 1024 + + 6 + 0 + + 116441115010520204443701551044388141672708396572634839287898503254446689571343162226795875092851665648107955057536241015609708368366718318010287460951620183224189985722483322655563646525334936557072068472012436067191783998514083593670357905410483156163550019788757133637004401363151527763776723191808245083150 + + + 27044557351618142662356552877489107755687685627121911493229457826128074471372139670480946601583473364230995461783264153391465908763057631990861033738028356787438011645743530045595363690544107938500296332245528760556413617439234729949411192040200982595365086278803028719387624406149566721713663632397652758734 + + + 18668480646476250585503852417335962920930545198501147882117553235027914985366130789840737981562565180298275654871023023936581742688856218428559624653989709620342050760568013862082037009826528078528308498338926463622071936645167033131204995449391746215916468228090340406579421220320039702041285615945226682497 + + + 124831643773880234485522390232602697151624554744878469357280937852918545591277448221883189230205072357252134490470478766733175680960201808445712280554760481792295061585139951074758260903784531587541999977882176959445583638063216972509599746798664421534897232964080914317787532005374524315535445105635534739855 + + + 59970642815973695149052494697659654637535503354257025919678495841553238031034885486365545257363298700332014605474361404182598059404831610511163756704140132090268579779044407534827161198033244776683186964741076946492327722988775759361482746512239360253228317139110005567490550026268269509261260489164598329675 + + + 22923915272163963950857605925330142022074779916236347548886633162654056167070402255377093400484185256137566072514608718416367258335630496123774726992155837700585510673044223219699749513900672323661639291542257718222249838123282120567272749819257073710511915155801225598478720475650206575779832514355014487626 + + + 1 + 0 + +

+ 10516953854195957215920418989214698161452474081769918026684971214243445196839612444605885055607074928941932296923395924708679567920201588472554570885991423 +

+ + 13062017406813494145316429683225609621025324451653771268782679331113932572358409228199347215573073163757686558693301128497363343749771624966776957706069339 + + 80 +
+
2
- + + + + 1024 + + 145833845432288909121084926233534057685357293274340350126668766405212197351890804174287842353814414753368096405191002821422184530789175512390729502084743232689937559449075513447581521298005309418519751610349842123168680301350588679553600672970038503825238594562290725630967833045040620813816180930525533629921 + + 1024 + + 6 + 0 + + 5614206228798301098336705931671638644909555489877769303373552985024454467948272719941276640621802213319824489026627166503592953601271862091261438770581967429841000215861631061086884950337508297975792991010971325252918140265180480069954277705396167335598614372709439485252924902184204172397796469683948482249 + + + 77829222239122835610084423738321562150497279446208639514447460343866380070175601047808125427733325611930916432062196605539354365357794550584735606610432247740273684874796370960540670916977515416987155254054153328167529316792368006397532847978034025278821903835834149607180869130216088411657110222021618483674 + + + 126526668999549527105050115708853820539308975410043121964399106650368217475035537783616879716348093999454486886707365887651216832345937994185160915756008992749761345129872838686896268682011102041005029710003412657931850689656325888000091306838802288920011025039877500299503261395656474277902595055003645939377 + + + 39519547515028449055017861664894155862617764060490711234501925837865547671173429701804910726363843756169165093168047068989948316277502727839336504944846821161828359833653929929545581648110770846580090891357587504044246698977653720185664161165761777760965438539711667531830065447338000177079619272633974997808 + + + 64911171886091908379987659695928798436999618688156351616885354569475319404854703300389871388692848749447706845284633183118607140873964829806267750277059617538075740035634698703898760746137798807795759428578283927848978809795704455781269250994050734576159373116072199698554416776935114764908963304498490630504 + + + 46337737440906880658350695547525646305900567458168613888364269449075743635956571509878774476192279074625591314542016353903902280576521867929458581523010335829319495590409102271909715542993648132948180305225658201466190786746685383311897244330788754428392449915461044438929637233785244332939802020516997653890 + + + 1 + 0 + +

+ 11433764776710887644313307473143211739470953398100578362765074750279421702519343502035319397892519081434634510608848725022778926493880686061311307529867103 +

+ + 12754665526208283348644128814962849642731331257467717548123984357615435694821301803974670523354845944657439610208446773346423677076013726301181649046473407 + + 80 +
+
4
- + + + + 1024 + + 146080828996844893786930415030267236937465501130613168303735364618844293026036288220097635327009673585003284120262747096635449871857553308329749899517971369512993356899511456706337957628017589622952308458223073708168002051201346250296138111717760726492689696085001720244510576087189788400173594849773775987061 + + 1024 + + 6 + 0 + + 12143846516438032065549326588564641993076335572135680144319973070565227510388555878816485541168565333330331360373203107549711159307955856012988849600497784921648620670877827610870429166714421302856006331726388604858639217479516237211099294053777590279150366532220218255101295698436049419849141612097902640451 + + + 130110283334213982281592724744587355779238888385612173261041558390337170888862195730988952587123072858116524751419665014046802853625023209193025314170209762095895716630052691721289740627897735112480237539255012944565383695831051013027460838684588426430717433008544285106825419868548234785369723450095304865124 + + + 28936184033269797712301045816156985323899945333237798274523352177150263697445409224159438231819208355168670625188283196276111898818482147589072075244562000752484990678046008139123016667919771421087077668072425052038197223173671078453038383761535748778879934180519804845917837931720125662698639707169019951825 + + + 139743313044528582631657668286088123161464964626310113284683779085342948598023633133544825825929928312362129974614186131729049145084732952532041531975841926166858606672969874133254866846900373891351537597368983313837098495423640205742172752175958379844629957134932742930140902857501238693610132562014310099849 + + + 53044581730188892877631548732096143188468162339421906645278191018430149084642776390613644404189469954372875388873708624934832371281884377986981016031495526801835709924473080917358419053075051086050983722965169085001326293901098332606081215826837456256432766108294919171060244900518692093178547790827213354457 + + + 13720982697614420642042383264268813339206827429441510070099063031077866574985037908849971402680608542067662118645382188812605442192530585575940209920553520942641967018589809365098731467452204409869649415457166095843163238375083308117631225271409506085279102769367813064999165660319126220444280297921602368577 + + + 1 + 0 + +

+ 12493492711183332270979559538554053599683729030245785867773420794402300221675894642818434063789983730803397982796207617918477674051272987189478076120912867 +

+ + 11692553265435788466377775542312669391426810033951519327193947944831637324422698077279540119648681098704682249147810817531550857711325868161365161046877383 + + 80 +
+
8
- + + + + 1024 + + 115562432164102251406622967052071750807258172151285544566894218498931362209567346945848561669965827548724769820749118527361500484654503353982654831132691503147282822681740720558479928440623829908178283919727041827646963738754679445285325013831451162488739515312866275942511475472857933145326220132237853644557 + + 1024 + + 6 + 0 + + 1918843058365060902224156698824791077915048816126174273828173328827925146094242787808159127789911738230990921536461350767134197215631858847922569466378620788070681199103616323592972003068116871618652298189097954624870678096346675641822861238845361050835764226882558875078705801193309174207649691981387676761 + + + 5633663323728715862831888845777946094661002864544824727134600431003469539113905131778031633116781888360230284434775486594799461335499354181125564310162945192736493983408607583043279052489225101857443790367000861445428439571903674899529423583149897600345297997769124326200352679791494774441424376422975993023 + + + 92224572490734132466871405475772602483548793692969421833571278855151455741757597222662182273880403467624396109857103285036810071642000551787217955918908430643545014752792961549564256530725754107414785146542687179641756227242772610219435049498467256907877773547533212521894936045955979927225093316843447273624 + + + 66183053406824854997955985382355384715497240013453258897437176350763562425331521822435595550265618083659590969116645425396908998848723993833538106201823652953927058335013828106360478760501723552180389313206057782227500096729295807156679165429081748514586663929593834603229571872339167803106406082026242486247 + + + 69743124750042509642467145074976059009243861971684272053034970423993683530657827278165993761800907370985552130382901391446596933005528253256387440804145356085841981356225970618247323173456846551942037337211218981373022884854505546817351938007556625763760451941625550568126244464144092301218250589930964771252 + + + 72915756120647370787512976134911056390045357692685473282250206465655171985686451881325200537334167943578623112088025120468788437772822762261349053705299070854344523813062549426226658609713960083898353784228091780561562317369856737756233116861220821234249458074025030344466225233689070112675547477388012361378 + + + 1 + 0 + +

+ 12113189822927171917747077461227561629579433288786188878566494896649974610926449598944988710018811572259934174588237955489017835938680313581298226839062219 +

+ + 9540214745530703052602614329672114296360144346165078233240673810509000843141104476510595240420457567833307788137793450661014218709382306011850801095444103 + + 80 +
+
16
- + + + + 1024 + + 111927356566104023053025699787625550838058397847053053322552127284788489517366540434191289811946944159151898144044517991896201183248020899355294666452275356580458700724360087814407783680353738034566389540489206594576108611637326536178335876673250303367935270215570934307497912954941670160094818547669559266293 + + 1024 + + 6 + 0 + + 26083963272420992631361325874882186826320192111270492885447297527829930121512725063041771515422873794638132630732246178945827524916353536920338032942329648884862506341847807165763917740516440910242943041732772815639040483973079510498995058535404124602763024963637048513509262352040839650701377899779182492450 + + + 96349476044790960219277900737494348910404104317713878532186820315042836896394111182750693236907309305366101392065377818174119922772262450705915928502291955836072143986901878966783486955686515491687652827133207058317134666488154155770640867360263153123215807876346934189507244403619175620173481171524025037609 + + + 54690578151752424968627597530623695060322314333503222637738707156935596285996271874663061813880600223163657890492147882784449085042519744202705258571783341725890402018930973779086740363427426280862005142662828899727835119949559802395804426318658922453509773311165866730072879701477097084818422964205782730898 + + + 48548246442536242336650178813376090147825187269338203565219773463426768909891921223610424888168123366278860170690454785019898354608412222321318035320240409277155997290872403728887253361243526450374951908929982176434127615635172022089921656613960936488084542875629883983721976542934773414487851263961537403813 + + + 8413113823923925485688787367614707477657758975525795517827722017213206555788250307268244325721882479636008606295000856384190034186952886166588759610523745356045626108013064205521440618996713728008939728528935599492193135365285724053499413941300417129252635867240091199959544379912710341678940281432723529492 + + + 68772694314410414206205467046690216598864909706182681421449044403117172244107392479030110544064478992356950657658675437260300111069834928175128122254740575410509949599612145656885798061073750122226817037094964836568463944945479934451259985250499721987903002593433201657517849139533217227834891411340995860823 + + + 1 + 0 + +

+ 9285545230814175208263411435100595524047654027631834821681899834374877184982061448521038956716454217041218352384599587282695285925315242520173770910063167 +

+ + 12053934775383136892747067774553082069477539062529530957973630104838578048572374622235664986486263135849198509434839037199331156566567604229630900604978379 + + 80 +
+
32
- + + + + 1024 + + 129247253695959703790072509914691217099002852368322468045795757340611236783965062669505460428210762504741229507573883904113055589574393037898320307119534601325006470049122917644647993271072364497135274094746214874360172173123358949071606257692363319647094023309480718209008941035284596506382336215735779493909 + + 1024 + + 6 + 0 + + 117762663225409742292003907909356310395762445497211461079165975468263649230373970302717051754658639529032746668081675057812533532269905582012773970520260676258789891000845981509443336988580006031339603500190556266787092149644268028195165941794896901354362131862834598206683215509345587690168857698887589234574 + + + 41307676734324917289596188448768037242041561478666611229918508332376293249216584670403871893840311327117612839717795187029126418654206536820216938628666056443197376483010899927824631712516956909063917313355829047154852269087395692986828780702480137828937293992857398565122465372059669336909756576677250313503 + + + 63089817419614027949713869705443303414261012258660802756430718945673750293937911985030722540073735567220860290764744309902169310419281458073896754765094348815090678089662279005948235003153968829581576084867530630559125676708622432223591998446524862273768360980298243277853419634774064906702269062659305426330 + + + 71199445873142743890705311828426192993441595666700751966078671905336982229004736114861991503242913305495774688716514992606079439892068289110033526877163042238652945854618818253560032930426612158830717352398512190160864531194414597250521382878357192086557641764475531942766422233904908929408968343948911160272 + + + 64619094101169861260658686391437493165297845452472272358760304057989905431808036959407913033998903580567058744493381896304542424570477466803135163609233034624791665491361616919472989117059076521170734411692284721188464794534574401950171105972902450942503245521469623536413107373984706704691477763216841890189 + + + 6677644520806874248729709604946168760244903183951381719735625530119707560190818287421767756180188265855439551326384671573103541157197475833159721985859875315233932931981009410659195950024397916060600415042070216195290723111879774732526912066923480930549563204082983120980936536428103764153567950378551358385 + + + 1 + 0 + +

+ 13081877070293567144772392907238627006925879869965145211592024037074476968339728750851771748210736710346605928219186736869646018548035900973688960242107443 +

+ + 9879870679220447556464714657502384107730265997772677436404457680252845162599412275546553090201887725923207763225634095749647052759030060561134760329575063 + + 80 +
+
64
- + + + + 1024 + + 95993586374937066529455162653639008917944416331769895672692447131258623823530601748524840575528704991358520416600542951520877430553404290694537271374818615310922199629418777773940917285970907448620026552905846347625729841466963377261529302788316386653331236574151237767948556621396949628879930029930854431773 + + 1024 + + 6 + 0 + + 83824229456454055467034777958381886084070099575662029359808652417840721999302831923458207007454244578968532619690321777920454748871657405334691831931976377684607781703339528597558380460921586675470307191208505362126230822462336917172922636421883257035328073770261565664854509432609003556170229901400608515196 + + + 31449802613073682797257425139131419417588192884433609539928376773383346328101742134248510325629565365298437902156586786944230581371313578612449753268670024177152333713470507828982714894227374723227899934752245499118873909871643883739539742747200765153224975710081093451787655817266736145458329023747843360297 + + + 24046901626095895679816597945607311212403525239995850573241184656254370764719651915880942229067459392372913232451799155395293798882992625761937473873153502423890736622586766763795872931503799528290427421747236393467366420155132576017108972252571854737191517057107119000077313989206985638792731956505981706798 + + + 45175832503961230046015360947078569944511308174669274010627205837152263355923031460360917867200068609487136017032019574229194707255438267238936157298227093781866090322680638607700980856948120525143517256771339934483638452609457869091603314126054310638555434194657134665694213555411010667515926827636647302610 + + + 27226310139875595061545788405464522559218586869146317221006148013240284964686677834822701333166143350393682277077841511590250822499110747742693496232681426234740573959099299323631804367485077842063495311347905886490364241276494837378393667776950517833124284734693981208106073674942158940515201927225260896177 + + + 28061030032752164801968067580170072035179782094538078442993446829482618382199841587780304480987658363417992707765141978367745403741272853169468282987262916058066756117715451557465508245153549381212217078275504206215654107054783849807504784914064329691028379646444146221420807715386913209285477170712492499628 + + + 1 + 0 + +

+ 11584124495512725645750254070004151397235431960197950698997506155994900934855991765691043061376387584749228555244927245784250963404172386615517446654797547 +

+ + 8286650097046310145628376011970887020008693692489576545648941788788304647918380756171984084142680168440231134333303978377479157454970188552258529292449559 + + 80 +
+
128
- + + + + 1024 + + 94684004306111857506841112997261544480170843980474819684454351726404536462307477506168949707131540890820127688938124464318983598656261985060474394464444104662851771105569910458875690156971112007686589137184650027225996873453992879004305779154307234416186725944747553098765878314910767432398939363070193432489 + + 1024 + + 6 + 0 + + 41813145478284531524339888170688849836993489808773877061381898735431270330468430771009301788662385120899147678167321573709618504876159814346635143345363712394968468974763358047056541628004679516114879569313531494252386434132347497962429320391260372741017674071011042604271806756255040001608579498316923849593 + + + 66985412989141614286302186698499483703029319437106991649103297187111727830751850293036846281738132181703909496240817794912400219147438773406404404501967357891659448492407736665354464273194466557245973728459910312238904312073312671232102333552915861810338965397370533857859494752184791937326095095137600260354 + + + 47312445634335688130580705786493131286510846896090168556933453943379704950126824709335441743633692656299109794749138042476418368529339230542721236120630910870410825198394675989175724057291495828269337126435824903651873397607780035162801925793363290999747965512990162389907925450219773635717120444444967961403 + + + 26680941685059982265916590861304381368349841644910847763290590165644980437512586663772588348564786395142074985622665652147665283975844718675959745082420493895716957522519133528284438195566054958860953512709923937286271601444639896244630126540024459226060622212289739313704639649931735161505997395694497185980 + + + 74083443550392038622058019232286521002128537943817376082249256877190604066000435323031376336866028072662736957904562553741115362551808059312277922794883095838735071899792161563043461419534693122988468859364640131280222420706345691410443643331380352418667933129375191851645103967896117642593878204014509865042 + + + 30557934325334532582271071478001957018070185356327913496618682277547859447967138146722346701435719877241149540478472366310643131902542023167448548815882595053911370946603870567964058986679361070823587016887587552099878742317560934642428976996087168254547665849214779296369547563107675774229435656829473513432 + + + 1 + 0 + +

+ 8160211128333345566540434284968702413044967260865517592707045146213011922768838116572601821572574063631758048568559271866605369501181303820592196835113387 +

+ + 11603131685815862998758132106767773214584562494355793433835542445435042202940039220130186654341099402233149141447271216788328587869315947097248008800765947 + + 80 +
+
256
- + + + + 1024 + + 127727743954354624281854745476887090335808566069742443817890352306117585796239126022362261263079819519314090394014361647646460805892494614420724452999880429561236881692111401169717707414124936138355932922564368207508256915042248864594779846067983034559994170386441595183852296112119579847539416226299289211653 + + 1024 + + 6 + 0 + + 38164224196132104532329483574437124604055028410291615521779477243849960655602119853635308460253142535900192481558061899029051510773421915505181034038040205053976600340395226223552584118692639276068809035773829056879281287542819362565227716773397503446437660962198956566256514393193806524849148173695204924223 + + + 110678530127192027271644996149003445969262072382022151859817469310732453833899229470363319557449911586003069509988091720697116396999513012913686700138918399808920334993823529829378539506175486461505670850531128082734443433833237420355314390270799453960429479062564346339269484877851018621073091246726296041918 + + + 122548490956895798346580701645021683468493703155724198028852392301507630566051709653966677479391148249019113594983455772425222329689492967526169663910403291783540669836098877872130493149328608829969126991475661060234359382873009916476841684477657337780779843037860445806000967591640647467157452180419336440064 + + + 115049765164512475615816754723709421915820944110057140572079223148858284078493729853694322750937204306066347373205296833140390979619473240003424221005440943252946247163179631339839082762769031171800431973311643442309923874949666515334367655281859772013653858842591796008806616434102016382825819024401335460344 + + + 24473572867891230766459628437908127183343542625048075648139993688246520961765676225141015722308250646609649372811767064660575479732024522516576703257333821736317565819935529241994964671174856884596066767646349413206450874945566058276469876978552642627552830542673524471166381537681830302599987521202991056916 + + + 121681456438779282590844849528459680640771312311817451946372654804617948881697814947418283630307162863219078621980522042948479034075970549463192538890581557434181542676057282587529357950472618576160067047151888130114895592153330967041148579160247158143832010635353491887390135911088640467337273087059507194017 + + + 1 + 0 + +

+ 9797347328962033146488368412716816572855884675950751084714870398060105480643989536965963618504712119836099411058406939329852572231708464480258091257726299 +

+ + 13036972117623859846367583648505887475031070725674408545288450375638101888384702261874720182461609709100300353224517609830394811715149997824925879951644447 + + 80 +
+
512
- + + + + 1024 + + 107749505110219293735979142621600906412060268221095964958047755054026889014562032384740357183948942425034845634341718222816289382158342428614326831095853091684651319425403499920271331624120186696435758082078835771213653665909961668175363666309216938446744591705304849284719196276795882657769948946973809132161 + + 1024 + + 6 + 0 + + 35641763542538072741522529757414549050982531654163758594796572814515332674264107217382876227414938150895794246663213699203676045040345468365595904518557216932736965338172782300662556342977609863343254371250428708891065753017339503387158828908221127194666840726277519886534325430466409332054289264640169277844 + + + 51516953028966449446491964497485751517990094628891894167852992419474152195473677450115630109656769378494026370993046135905409016172357252608391232821836911141770346398361516943084535741619501601620828360646455885527609024954604847125816880742230840305389082240666983369173612747169877033987337057571277486908 + + + 27524154739611696404554678600200022524307387187913330804982598161151693948859012016036623758443668517076661729602221235091099505199024928670720378443021686975221010739315229994281385292748497564017937013704629634698304615102321124160754148064847705580729356980912869939320882633389771287388187641972691550724 + + + 103377113942637790287003533084222224091635314875107183584866015855151366109148344152031526934949226690062760107225264806479505653533683391861954516724319175283894690835928918195415330630293690379979533803005112548786693580568575416145999408621762182595356921903495847865510985584950381585268423739186644819794 + + + 14673500808702279959267062967735040754333506548920926780094883070331750919458000285586391469687032554437676209528650776647628681974602751606955902150200789053315798988526116770065473921424842764231711641888281788435107438350932690834592578132496704763814673717109277628114653974891957529423081709795618347068 + + + 38859009087118888846561310819205669852627803673345854898080307923291445412916752468089587603202768160020948351869132135244840063989628351242421729167402060220673267655462881686556526660062794364572873029867581614425348332512100620476340441607712247927956176958026610185773841792228062538690034354280429985168 + + + 1 + 0 + +

+ 9728152380631131681740808838984346417922505362633733962369711808826276345645215837727287141565994269326014156795037119740007855698527133598892615473492227 +

+ + 11076050301673918422116439895802538274231870898680460235999737357428177346058924262307656177900696772027564584760665000075886788813530389221467934275923243 + + 80 +
+
1024
- + 11 0 - + 1 - + + + 2 - + + + 4 - + + + 8 - + + + 16 - + + + 32 - + + + 64 - + + + 128 - + + + 256 - + + + 512 - + + + 1024 - + + + diff --git a/src/public.128.arbiter b/src/public.128.arbiter index 95d190b..72788f0 100644 --- a/src/public.128.arbiter +++ b/src/public.128.arbiter @@ -6,23 +6,23 @@ 2048 - 17922566535173472321637651378992309491881261370824389295796478778365933043381199025931592287687444863193498807053180174214942396304465286807504307195589537646962295543730745729314839986186549732683780068825682050157479962058126258836630962336632323681533116375854787590019546728936436615378805666244633817197486165296006010782771456085859946287408639193922449676261355569362932883933339118425710148445368993964357524766679911141755684869627820833071195228351652183708830438110367625689260808383249127503317161270575865050386901761505124292760209352296155681156309523576732824775045524905650441730672756219902055885777 + 17374462145441103293102237909685069529709950138189218259518239041370913308288925020994954647836624308760597678275648901519661672203079867666866935041780050692752194753036643218012155542929622206920219543756643095347131589462836636328881688348465970795214944458000693805962363391403271957152914450547707900987877431303960637352383365517596655060990815937293933717881539842911299668565140660798838029535362195478421006558915377743750951439564307914734144950206370754802443870083952795780224966378063720872668995780197310384887043602929175896716915273616352339132430799779165540306551564868585368196550298337897916338401 2048 4 0 - 1114493519872388528784525416661159634793842355304076937737138660688780680899409786151347615350988765648895892288623125616168420692510374005359515348595560892968218898291124030776558208034223741448392827277059844753982393719819581432566123132950300842491539757803217621653524340158874657327270147877695302426942455159584361688413878261702832534933210386226572274081628187570371498093777697392120973856190411261065620327585759211616967449882300426518535961616927540250237417509767418656401292400812306987762336964924415174902443142977092891596494361115690736420770160671309034566916659034623814232434418112134862033584 + 15250744150015882366654321731032712302647439209938022154749142641352911886068068705832734963814670118753670736851038642209175922041807024277873829057612452104978723712661600174386334996126040244808835598318418800951584027687753947852104947190880061848782462394664942853493338277264269372249672541263817377902709475789753096309234107836492722082651571370930259363736289488722405702051005855510127006231390031132855290443003627061654458973109723184266093884567093003757342474655931105138925070824498487517125289858481332658608778820734003341272287972527004838192307752847583426834781582828652171552599605058289985971214 - 17279059602328782181514583846072474326786206049789552120801657065133355380163828680613684878977486540659615089912794302305899584311049801279041381077016081154404877772729243835057185376916269689140393077659099657423438574576051601821966360624063880380519647843436575151324059669960825741688736447235134771015104431196092112664828495047982827505798760053745098305011544018282461059749693966523719366283828131145609919045909357550813625168924044838446030510993386430189602870867885183440454535146102890247017472347836753560631961153377380642975654487478389375573659163647436016572766371559694369841679598227147203879679 + 17275917662849810842185034896183050129358968573505498653892103954585690183226189547095189006177791255977227211324731947564008023929843978990596966719385554829665160231395506209252888519013576263195311497223110899713256441658292784276785596303592290962143556459867410432743254581720463231336489785135346206239124995001689107663955472098581022740647434849243095772907962131072377970911867058176903038263927618079571437221165405433238205088136980139386853660553931349856987961974194917275677282154156270289573920884439454842342822269998352989422635080547739774742724073473132829233360759944058982493526714997368421144354 - 6922503387754218221524782287398154882150830991603343868445766325614495507360103256217804201663456165299619716550570759510176838182160079843728438424255957301811440242032543178548495474255921739185123456062191513052302784666282699702938734693020712951064196560985382475996138249448355404016711497628671600748262361779279890606801998102749003290283604804104364981305701849418518108404806048492990382993120583863182544462202219559634950890666267777732647677835419700483234429029070776276908811978034271012781714481000557982111164612186032951836279330329544205299655416665520619309779448947832960139196087480419546534838 + 1704916494117043342991634479234348720937796761127252866483999216479388390437563080311372881594159527592376846390096565279539426841390553209592149640632064670805398919392880859803622938289785461518763388469074630049006073015801355723593294284255148695480542626015697853615296224888822146751509616410857150010431124091611986869580826932112504335424862130177095429270540179261270248319161250953219377094878583869311026819662894548756605014342440310003956480955662495540600326710973515668355160416272723165261196605517535832721811138350874151647764676540132086427394861694020966638416559163447589457749224567124328184940 - 10745222032590232762035928648548561243172823373839669733701684007540756109594549421972543100007605777010583105570701996246564040604952426509566088235330637229658648506406760702384496596693208315827361425366397665379989235858907362422381822962021893562692067498738176739864520510186556493207104406053094514361838898207928085232088561595698975150747708280876381112615354789334488531956911482774718063248888353034932762280040464308572065741455945851657665405287123402036672767373004118050429218321362800093773356089024931060125550312595442765140362210596607399368121948773182528185878906170766641772640283618733486057518 + 649481150725642104996859353537993206372358880775452638829486858615936163307363973082505669639611753038505370522951017378346716051981932296392112355771851870498788958233833724022842601787734643035360853122245826073848857177112114768246561766733182810145997339050384774050328461223342937130799913664067652653126159738641723263524811931182433215106521669407246590062574530645844849214679101923519418370118765184293012447551816168195231098360527942813955329644149606254914430428129212055671785213239764009176524091271792059578033881952190905693658403295275118140737019738448574907757830595348351541955594862078235137670 1 @@ -37,32 +37,32 @@ 128 - 23353349544628782731763892580453357401950393402527024144172409445365886006295633046350760757455630908410562146226653124985441988448778685568375854777123469529530005398155148071342231881617578497401238075810701449297766006618069246388446611355328818072473955848854395436299891318413876667278299342998180548724277989420710786231788803688206474952398792529223498440933891226629639072554368282753267238008519762562726248121567451539429817736553330708707439901477062167084151234476049668288906966758830672370388418587546567379981136839206215779824275779399256315413705276908048777445764985743988964831848217093339883010489 + 19141356014666624758352893767644545176848614812914107943338324318697242601645528124706538913107746071674050914847144793488257451118714733475611355177880057494934490258268256163170936542191704389941652847080868885902478915560824252601167871397916996693993235410542785815987198544174861654636124789059164127578926229688423054069148665258365393615186378660354704646261700855341044803090298120193980334159786041321165324411344335649234714577836482048761256512971581604726973816638970224770967312161588986592514319975164160038331820669336331222445029404399369987893439382411714440368258024842684097604449374385096806828441 3 0 - 278674700539435296802663134601670906801126010397182566012584282323118504178190834419273203650001530930434746672667583798958526785974958542174230410668288904567866943776202710298840836128913241110052223224937981619141295702588266613118548297564504976314825969584169400570086696124397105962955302062253856061506204748377549139157950251051010446939478008057096263817222935779481737596525003011219375999421311499983446017571071226219411750383812561846118584826239735580723172406242278389233605747507622886839046968563191847159593743382512185912174479180666688404221237596305026328359504691908677353816753955315822659884807486995908527531498566344360785175696150245379313371376969551868388912949024264257578061836510322128175794482192666060248502449840406879189621504045968512955785580781520203371777771638527338070418444884886258737825850335058606411960904833672526103292799447806931263817273080264574479826355194220898884455138593587642098167088773648334793993299871019350370119922610576274891066647614355255443876872627181087076877215621161327336593533495633465312348789567425328686721725685766993761039021841277103123863723067071449129964151408085284475011842433790846457952322002224064153539599338324291993725829633995325407251573387 + 326016274304962779215660356270689522459671578716596447507184390103458863379659065343070089997972835376770604892875304947203679519688267696046688491076088377076718884454008903515605976423383063793613737298088794950691141496549385845102927465416946559480861699586197424775887757018869252665646625578845034720774978312116206239865360564920852414276207955579938905236694352647277829511546082521513163136207238709797793906094435648938698023305477437419213586427729390690893201231437751023617686057941774320349878558240349646042008678575221392602110424107290910404204003395498787830647680078689751202371320635991538427946763938451885814397271578377040163614705539695192095455149625399323456020092346336388441121693623865314898393231462031429636933674594886541346899303503887938250883036922145492164215375973137747285485694361441486154194034228408302553611434407459308686484939556596664491155273820970551396152857545994235308121733180531298778202881495952001762946339070375838488969496864267681588174360025594575101110643596257950474179752866341483361586884970001566682830632869604133703460999535301669645767726987572208240513647876528651461127904303224564058648393198553118740819855068061648181264683730061190077391550080799319318488511108 - 301195464791963642641947404283932480782791215158305770028357883559970880908683414957904777278954057043954462105989357507655785233860875340614400254293212652656308022857359117236557583797270994239809359384078980077756469049781146048918203854551374013226232042285421086709724298328976047293562536801260349586719699348646683995077446526389119775955899496366763789305162038790070332791341583135804765785463603581334311324754561412524929144543405840091812864112869674041033092151061196632104343576159525765826719791594648088799687666044681439982085372960442665174347775951833542863816687776842041123148956890117270321667690677943116216285514010668674155215811539655707413356640158296992313790350818729505747410464579930486338908697792331777510393471467398118024809554573998514518251361087702535783101449078483233910609528281574439104676801141954085578932196965122284988465474476790786823798076531650147725528734601160590463970356596061831268818954228493110927532005624239287728949425177116377282246285295165539139618864694259097788773898460853440989044988336601329349204598430963525106849978818229018745417680269561178901714443583657043462233511440196112383527055050830316303030040031462841707470928880913130994359166284434660477961607690 + 39007456914088993849982571465137459764853640813531066297283075188105092748962932956965783638954311266380666547081909502795650741894546286756668802152844305824989127349479643742559247267656645258084461270643286446299215927127498600423832845546665106596811883921710267866070555370619188346180330112487611928667366779417374387221668626829926738649536041357186627985774942980761995644494925062890987496592961353922712934424194552846845684498968073050568768337021251602911943122364438635477557365384790189034187797317533684366685135144042491896349025995315068270150854884687839607043679550047945532032393826609694205803847026747942800836652597517409379936205791816132354476532618997141530416093506951847959220160892312699129197115070061883756832070410401032644820328668124993137779965631681449759570852994757461086066657998037246062811024794126227778598333017238414840909775114024731822127915196174355500495664781529341015121348105658924398772979254797514292140637246496223101968693466670154609712452306897249455639674755150347452636874813491933430823555928588211921802443073189707049098442984890141532413320154894763146990143585625625802246025572714907629823971559293108530118284269590743736393724676564251399746921914327766284373448049 - 138180954303589333960605773765918699493100826990029192144391315745175013598827161597046813983014945117891631568957914872080758358262225574770173995713258374875152071728600978114252146576837138258689310357023781837473641904028184126022355646135341944325685229448591480947589822692535426092805961533224673707923991798241594872352938709361516429031457218276032126961136216855460598250467270539500189563300158123133769876616591233620295170515505732483045673212839485168648989616996816175626128347985558263769048059222781951041891498442035803024164948226516618740190661795356424434438952575456225821464987251165847923459137454444060314758597480610972594717275963613810917028407029458507413656006071490535239952906939551339170181662253517876392217304896016812672535715683783016274108285724364534754994095731312470067327653806956525420937861547931057478675398586131817949491881521543678765572421305766876334055705691838531890504309321246609530192021780624411430255509501964830416074039224219467133667124747260675087897648948396311606515147978926051645291336622717846473545506681342564387537926463280576973109681568936783606665366205168362313537377419265845902959430113241428047900837682320208211663936941478383084710809498128307055338165233 + 38302651294383155650077296272157828100911137086407667516197762300082571466175982393900469704248852609217517109385281379705717572179657453626843215243972760724028946888929491537512771423430407384480657076588174510134678935920402527442500890901661095607900469403457776054268150628042722792543045954900813786515254558831150381470374164278054769185575635410850069152697326440608437974469166703377271024559140693481433178605450195240796102046648958118602094903194044477527476362422317434847314906877675432648823969992228762701093925931118325812327693144647698240161717982094149947448760999466186255771998053305562629783117807677601016827089152144098416700945135098195606438963689476937796073301851458579753596144795170898829960003258982518621379874493488887568965576222206094376141961772305652909928000835183971396633150431915080251375040154839629574465729629309734726091206585621006037283581758302118594877849316213550942731756260918898389896611604030518610249057312724343149796406036069946492477093597121628445443436359340970968307718976169264431706276833284790385472130736782914475166364350818556246609085417869322873219439695930033350007063608411661970646163698853134431419049010035546276357525085796887932281179683651757905230100440 - 23353349544628782731763892580453357401950393402527024144172409445365886006295633046350760757455630908410562146226653124985441988448778685568375854777123469529530005398155148071342231881617578497401238075810701449297766006618069246388446611355328818072473955848854395436299891318413876667278299342998180548724277989420710786231788803688206474952398792529223498440933891226629639072554368282753267238008519762562726248121567451539429817736553330708707439901477062167084151234476049668288906966758830672370388418587546567379981136839206215779824275779399256315413705276908048777445764985743988964831848217093339883010490 + 19141356014666624758352893767644545176848614812914107943338324318697242601645528124706538913107746071674050914847144793488257451118714733475611355177880057494934490258268256163170936542191704389941652847080868885902478915560824252601167871397916996693993235410542785815987198544174861654636124789059164127578926229688423054069148665258365393615186378660354704646261700855341044803090298120193980334159786041321165324411344335649234714577836482048761256512971581604726973816638970224770967312161588986592514319975164160038331820669336331222445029404399369987893439382411714440368258024842684097604449374385096806828442 - 200409936153417079687085291033203729953654469794094662513321938027491199258052299914577739682265822133856055532852005603609002550094767166058248034725767525935443613047475313426195949416345960955473961626917439587937965292777357287299403566150005710658758968539919989061191560911141287900789543877186339118429466653765167872731227013644516965774773044241085082926318261453771147731362496884325031688351191709190827908243658960719473596457863412017256925989150742254765054400303899235023500970180193556570973439540694324584449094547975014473171781301754087040051690366436067307358820721879165849865809409579408600290664214931613382852976006261670860048938051025462380115957680379380494368211606229551623844788145614912379535007372163321826116610650126681203709951461339522262123380997647931192182883498839683234720826117206191677275237628439650466546393164054619715120721272550663429602839498429928953803663068891267226391060867314637060824189608324815857712039966589342226114195296674155293739305277179324701686487452635138405495218219613410046381069705263919651499861051718504179402095628909980308209942008754504720826441274600152607860692737742352790542787551575886175951321825764881981224821545458533471338755440320738933694765552 + 197550009871325353874245530902979283822174482849102595915045583776682693405799505735639548882736968862640818305914683927701677300233511702372156988567958067832149851261132913464360542441682900535933784810014949548387266988772220555111818624117579949768656249112834103055056783792279298249088345321789567765928850566029847514272523725844800185963217422724694651216005957151331679071412985857022134633815366996337639592225237911620724642818623183660392306709948504025695153876703023029726893261429685186322182016290852128478715463405066177085200366391101547207196142255499701273386770791600012785311841713414059834102329012301000781073539272992548054329798675393841616816563587205936945017789836190614006282170421779960247864516287121131162583502291407402534790241443157528834845880206054891061498940674150482012358494881009603546025202863608414782791496916932893354104019706832649902928985023757817586311623414898248638939928933970920420529408711366139130909336600691743167971085949660810886484801144658793441471419970668588535021731899281723778209658720950980631867369361364092760207249587967773066918592642019267569032913105682425814513640822421463235017655794001539505115662091031060775251147816898047799698767079739532538243361195 - 156746826079093463510202671117590274450550944189698755734784136487590305460128666464197131644671788232555462231763284698706422253250012012338275596448403280176302094063092790751121080558296816536263723116374505662040890296222741166743849029669394332148907571544463518621100495696886333219723928681551458117572606062940166558200946030924535740986611001143742355421233013219493499934770691917780515182737094260976550878751644321311594766116435320016742492540448517453930825635816220900943369320095146142103201995748838358262337737605104030985794762126999219084611842057926980135070280415786726998260376401751186863421469779836844974513071715701882787606844667110348030197441431769596607344892648767256473521913168852409138110595390908792905985765224099266938849090988809657254576043368723946443298414096960909090823886104251774891671694780940675086851918131498747984539956492533749304109767703153428322599989851614993109025739514843483236871785022679990338882949069231779148938976608475112831871247651180691879472472043811948837809531128939602885051079442347584466593414783671880575245773322099875723947277107455709937136885827183463736662955060424888824105922498822384511127390847828845669254075381572833164966668492112514652299682522 + 37876259810979111201899902897652701015178139223276269777886845612974315669724568775900883350412587977886268998635081616996327057634592129243228795481507279144840839757291402746614105979275510390719070383395579305060063858548495499646892162071162340218501753187795306760561962934094266294122643690983929478023853447479221876870180846775843648830906195778874452928324573348074830545757215538080232398946935549347895807356370947724167247524290210003220321689948846373702610172888033117232102001336135614166995631555296504910256350472698699794966369070903994678309640035884885017328584587146039162173926421474992545563906218687380032281098083672000745547222601616122014897248760782107421988682911023627831792445199752242270010912957568386374908398232043466332699712728732437738394795306143055245112323547181069677806974160537916653919537239480109776606288154322730597031868548468443362965853679224089705895867538418926761145349457149360914996704231009162652972472131566383089367424862290754654348272699598078100815428406413460409519435856511393379550231361036969884945038717862949351102714155941459221943136750663291218093273237565279646242859396892477196279949348555468022112217212517961676456642828850289197265115342193755162344741029 - 179022449734090890628705937115291585954145329389417143506349897745496100022564150794651924523591835736468857850372289763717636952611863025433107069051819476251614114497415871198215238379279261583117718588528649542045213619500002151385477257094204028033766566593686561767579027772495491981947138346847901614569015519888987655269853564816464416381083560800361484562622576369783571115746483859034317115559280972276916549689599716351650574504262665516143994884578375311816538076490002313960459046908538985351319970453419868784256612344133156750770121163634942551118817916496501975253647644699864793856299175588631647061475023113812133691437165390516440136589602257500004408710729854045715988098599228902702195065426328175017040256219846200439163626485436450885686452462811365344130617713856718166816787993503619172839215660076807264011284452092113186882551059740377381592002427157285798316094344149104594970120769408348339692490200169481093109364147864397053203048548033350866172688070330803263078308949951812072661180356329461089663006477064229094480073683423988921970196477753864175025296117381720464773200667727062133439125687768270248084816613871998925485046947026471906495085805383683038434888821221180772893478454523603972997700859 + 254088112497916772910846191398274146723378639650725615138500683432228612460779263649597968161950129618390531252373640792018949849594677880194926380178497615920333448738221014447027992839304625705272874254317473550037785324966071701005546202205598200786706425888597141041603742834208126237391118443894150853882347187560158127703072464518467255017508720602768641249274909409678169455782096373571562457740467295507235096517836484571734765306807034195260961192035815827697843122081978848890919991322238091574253754526698732455462870659370883897321653119644691843346566388137479801278695219060967244512248580245416913720300503652809582247638306731718465857920548036658652833467977333313818358046371122058661013324897942399801738310311663634205893348382241345084105620337491046218283709478281259209577951880983610207263028862609569595560660195876553676123451255136661050158435244547301854050297949390031356132343571946639054540895258092153866546235213031057840866039651040263729601202255016085196094694123406731883711489534435495054140001859342377158987810827602223928631498597251159065785952293182029103806781524825935817483285585330560832493083929717614187085017770209671254977821817938249744897549532500498951519546922875140319475087411 0 diff --git a/src/public.80.arbiter b/src/public.80.arbiter index 1c1dbd9..6712399 100644 --- a/src/public.80.arbiter +++ b/src/public.80.arbiter @@ -1,28 +1,28 @@ - + 1024 - 144170976074442789633983107720812281636831493890379871906787928656361496141630954481171789878922117317597881692156452921035341622818820997437128131939421191758553556013894872714046871899449247182299001867291572298463169447225166408746784323306962750801506303981484585244824291489519750898628009536609567257373 + 142989038163143514137519181808747254897617413646234561160112310961320979100839120372565797215885044589416362667571697218660951894772769277204777058632683611703825247620853282561125668936428131762950263320275799652968847841112215028038452304194194033144008119787035788398136292314302473155467644239868739048517 1024 4 0 - 102167314698774588654423585575807195813386320099505085954591484440510450019565006083809908126072889138849880553432760605779776329527612978044112903373860536694374931924179023839245264077860593363743355346541545021061682562619006375321044610853089295750210183872471305158283184919540389779582725681838056158168 + 85797346357994066584969857517288127695119959837751981684174386041606745155101155049408847865285620475900693478943292040143449120772645888283038855471545476677630771735539840281112190413986585861863487516945772289127336637617134740013224022714690718282385451469865535950889868288128581025387193359488718908196 - 79558062077455367743392037217956916812213349397820505050159263473493933731383178460036717204138935625285374625016400011831665158139500804499801167215454652328950641790950217810257808162924527535997213318494779807692621607182758878914550008280090367747948227913172684529749190978275600204694665014126047068767 + 53750529524151027509528414219471912857012299911436909306810958486153201871772435050270377305726613641866558230532537026456799585704705074786795480600386363392416891817433760548735300312924063093399771197856622833536724182832404602363368801090864017937623392197277201124192870898639445113454913704412034977589 - 29917219784102933954061407623289928623253809976174568801723492246847838975308001183988921631537547768354083610253061645107799983051210135111594450656681532330637918442525981541243761819695119333412955114427507322359979276789876901559456926908464555235532780317065480996889965098326875193708628798327950044538 + 93281123007152455925655036128783161963565241350421235077239215558593127304794381965097862517105787576967925566716331898506083388079226378533480975266844411679211726254350233866162487227671769124113214380146380900511851620526475692914952802917885068058513090919979358548280079990702788862542965204072042315661 - 32808921291185200067398522140293639225134448609752742861088287277024375760863494167566155685020227624615879619766646031250212139646836727091085883199660855643691490771884365702183297274760510272282340298286075419019660507478845538084255712884067559705581249405330972486440534214731134875937014626799811072159 + 79608330330704928088561159974127205180514708583804952822775603457881329254995819732597508457577011522098295017315566288375106362447016010789422892797237607655774023997692626260233300767337343608058747076471737091104743225762917991550768262491993884298846524532611530872009651566161779367484721074831230514655 1 @@ -37,32 +37,32 @@ 80 - 109621814999543178994664299620770313737202289023745797590367311817448907043710064448860083510439273775922315698372336051724579680094541416786280181823824022411818684244538359050831732027081079679813756346073618836447841319532690642670177823538548450184825626829582186658750429944169447402160737265159281032921 + 133179061310316044143668236714915555758793055703274051071055168359186647488299429322722247251220389807349621761768232486355469262999116000458441491099352875165870647157324176427602759393254098292300392039764466398791774057061002289610299370153576710907488845167318949866043094476530437006902677609916035507089 3 0 - 2347937209187681221933400396019228561830405849725757587911820091499251056310114835943085431738610138327724079079589530950047195039640064789194395947668029964280929265602866361297757844805715084246971457793588305772750703066697079157834104722215980129387427235883378985150777176914989789011699063135268557074482795230870101360394872298227164069283841717793512198589474862080008002005536521870117607795079649374368616583884789499931960637666258520671585982129165083394621651280622562151713900960687712772486619427776444467869140005045706886195070964842138297949840721570792135339731833843570013364280546510674322691882 + 1411640131356869816680519647294595667016376813359468359341001148323934542419288162928061715154234287438504413158751791147703378269713239956687246865458612854618063567764551376735395710256417058601368620130617180356452828057817882295267509055691642229150426929008794338733305697727605175539450851486031817525509230461760425849284658444373095278867110765980731782674802372172363969379086980669705389460368771230077776573121832152596521392762047964758020547595255214219739861012740188086948806078641234528869231674212150215094560259421865441797439919776724686199828364954799187229689255153470020031603371709478934916383 - 7685892279220969148316460515434773703468709695988833717207499040185869981237339338705982169157398418958714236102685618854436487792620675508583021242723545816280550951164389102224072049790095553745530285499486654230279223318060016071080048643783775140479379310078287425871427449837579408360393236497072310678840034592075869900756981801991714580473240669089436629633510037775789631110179402316394430362789968939349164827384382548889832966852999022669546256249719232886003817696139063051658319837108699604423117989234018247992842098751660626912589997771594135615058371999187906762080078482043964331763963494198896908789 + 2770997013264463099006170006102388947654964530837160505089067796645189521735160099646481848129270281540100111132397089017328642082738657245771759905053853747169280632723112237097828724839490782773538260544181399058506528451829029585621893427793663076303062545056337720135153459768945437284846745031082917619561712098748547314068806630329948120190682736845890866180636319767098044215334125756810544148333541722246793052570632581647355009580455544162986235720011478700156450144717501483608924970312770890072032400356733896051777211690452830209464207283017809515274973294177553488331097333947404010169714458058718836675 - 8548063763522968473147660667552551086798489783644791298145743886165281857767182762386743795706504020014802599542788656083683954346255803729433926586722982839243472903732722942965226535265492284965578195162427821658086945736241325871030692816966127394816129003529139213411392977309662153467297538747557449244600811122025725651779062218439160640893114838571908342332694080520633759105702976333032695803216256513493459636760465938671016751214674305864003539568326036373428221019625673329798754881740447330456182279235517958808121816299458786579398696085367214341968900093997337343974697366009865355993779868250686917724 + 5387573987767484124560452994266744613294742731780417179393082300979776201373537613124582567280380196031437169774062414932969811500064992140764846421128735107611238713349852937394339696728503165912434630924896238112384609223334673374720188210460564949162537817462683572011429172481856005974956969631101232599288526490105360190258324544894565845215030140228619615473690175333386819514157384381412430519802493033659549673525369970675187453263918509454728125873909076822504027368051065548963571993476336303862291099957973772682982313707251278613685277812716998132144471097057652882260745716138367502818647202021798040416 - 109621814999543178994664299620770313737202289023745797590367311817448907043710064448860083510439273775922315698372336051724579680094541416786280181823824022411818684244538359050831732027081079679813756346073618836447841319532690642670177823538548450184825626829582186658750429944169447402160737265159281032922 + 133179061310316044143668236714915555758793055703274051071055168359186647488299429322722247251220389807349621761768232486355469262999116000458441491099352875165870647157324176427602759393254098292300392039764466398791774057061002289610299370153576710907488845167318949866043094476530437006902677609916035507090 - 10761898997336652834524666984668608238142781781165970600436237602598831502574309426166812995708768125838002413449045299853938812846358189512117249163916073458106681755456197897822095992130573212449787846743061386661373434482192109100499829913070148422722242883576907806637993935204677634762939049254356243770397668534726405701822123079116178390317934209281125067917114357148512657112913730469554785422141406709436131581398280917475334620234471288833728902200333395930877094335323049314933743558131153954301096118905512793865710302231197798693862139582850825078577362943508728993241301434078253220682078907723716910371 + 15792760628438143772238865007256637099758802225442828434887254934861928032947624963697147473771557119312836883906497937522403338310756347122467390581773301781110025721966899967823241045634247402488506412593350161022925666826766140700812765848379244794008153971429483606914550026447346450822637651634244878943152931094404253860708086174788425675915197520482698907536825093519523489279715711320686629583785292385020882872961862565664629334564167034699138647793846276408688629640118896393521237248632053650254058460146929500253712605587898702496748854177844007040645818033099080368154132707026195785000901799467845295414 - 3720648006313320957145023943005132227060536792073485745679870445047893827729031757343770827591498355621969789002949201790677922928466489914010246146305093811649866505293799724715015565115200815683839147604227760656261727167461434754829732538953462559513727226682730754261416245086206078958642846157210862875117168671013072851976275946457754429610564090997714196324363100970604775337795687580639952083786484646390174804014401198781174398297866971168329873721200250390868344004628509817018717134823574028254733988904601481192585913000756729900642165274086770792000099931433466936305024485290013974910909206954244617396 + 16270995922883323978370358066032151603855587404391704880833524028480056385715316246552670565295705585334187510479172476099122867215635588469312578812291300477691248601213877314111513158373548168007091515964359055216113809840252797831619628579460131728273394529003589886136491157718176711136988188404504864465444548417781834581342524605482273062042561575072730439717305164420600699495980343117065585597879230355911669757075604205217818118499837827903833104431672575633064452104259280693507948619348964891643097397672702825538648986803305891756442626887863670646491071483107906926029728217085775140674733129706087216436 - 10573859509130516817416042490348852657559027224329552410329095787632203050586519608231932571299119471545903304268702588803280272018280735510397569541955402276318879549863893445794681053880405169316741147256920422801654766225334338841887110053705989784534685952305072298455416558313951502275624882332800946341442266349865871205287758357807438018244121713529409887988042455629378322716406212172270817088346492827864178033171019353914976124838459320987662662455469136346883877327760200958283005429081522528268806188385147991557108418356064007108940150743500635708977428566884588097557121708542294200829926120965403340250 + 14683437557141339980605920824284653924369812055836374899971450248445990953286010094191297312530556272853536596364970904769779972409883416379150467619857682500561516765846501595566871480146360013634257284163117950956185950128162506552754355940334083113487831946534271482538492588501215301418349602057404826150139011981366203128962405572518198474742498062725604565823501063375800557016415983629720695655330869903955854246577939684062099157915715085447828605158893898038244336170652389311611962707327608111192204316813799676757021443853554227961780695636137259778193217227346524200783822327565303207950606535467711571550 0 diff --git a/src/public.regular.128.arbiter b/src/public.regular.128.arbiter index 42e9c9e..0fba8b1 100644 --- a/src/public.regular.128.arbiter +++ b/src/public.regular.128.arbiter @@ -6,3086 +6,3086 @@ 2048 - 17949823565417453977679055631378840470310452600959659032822302478471442492463065895653135246970750893691489828320453810048813441340469129171111083927695609663552772451463591881073597565760427527600577723608477847737499196341008206502613694994675002253273759501124619026725627198130161560564293498049644506610526104360932209857427409776688184165968395122271347590306287348714845149599660262295572277088622803944560809591922217512266575502650989550399443154093363261010020606567985118495109521964353918983343687196190310332816758453285452760685870930349577809562599054742263900186490458808194811619541950557469750269669 + 29941565509135583958508359712292538181374967077267939579798419524601328143713546321511890345017360038297031805701605643559948032425580298935524894211966978623325637133713894829708288391823961634534388168080522792994205740602404562773452476637615036668970375771035082118152890105995348353796502710894805398778674791568066453944238719681022303707870285704068127370466037024508243574469005595845774356570756921768785757398523196952517308878074165052099570149163013916560249374968898064766049183755551980813352668710646671405455748490626974456595966427222231007617198593340123081202172280202512636624447461144140469619413 2048 1025 0 - 17607640042018391011308441625532651774944491009163820455888716910977293180687113288021189857263821231404902792907983518333267284904778834738652413107750276637733443946151015456033379798635394331244563444872475350291102868512872508471103739431625911563405653640882791878453987028658693930981385724491947846954083192130942313765053097365543655927478562795845816313057248113440125904085152580387652969054928878333971116737940923833116563204810978187129438690637230843024273785276215895827111601983519118742210118396765031769027609617409682420758205869475702179922595750682510383559292127570496053586941352790305901603298 + 26813008787581171006179666828793961285625204646126314089266775561554010208228907506988555667093423688411939379173268038451202808839719982802696227452950235019180524365436883342203448395809123663088768250275576085442446971041870956531179945634509142307686527764849826254303028222439834165888720826627760315517411645567415291657383804176351779631224861747688443317750882705123953379794687009129642904851810814910148168274799098148741293358927192429648013554470026623418721148295580100195211292016907881394687980604805169241945540867211018932169903457520854878053478387456973290965138984563648294734722068314537154943051 - 8375510975325882623540524934799037012730716274043482668685822405817205178549617848241972493787224231395771499114546119292055095315702840929031569232565843205945215318391053559161410602587778097732355767861717026487565655948380624372925493289131059128579070115083157020418167608564570895823501220452774430629575720378241186219136903253226470661220859641062920773034262947671350208393917110976634533620288501477185967430645656549244671256070599789376218409731444312282967164939548808623171691162240840878178742118138880561036045623988628906563464858101938262070386287640349532005157568876925818680032017374404952074213 + 9392680531578953088990806061036699295257552463966451342590979623570148402017309217183084651531182554231903084305572139661301865171340867331657069469493291701449005881833003886743353068303003188023580246455181219164870762841639910634577468222606484211617849840027476572541059313360652122560913169716515459828591800700043731398737213518517033624289938649412104179078009823939934630078117988615673111504320646690377898902577008182992832163155949919381465303044489710602675358367225924976916805893207073810509183280171924531034863327265374359568080737845796346235612627904652276974884286712430198545166401248570788334724 - 17065701705278533874133607555592380043034055382529269584159285926382743550214333981867543391762082820212392479967449562268392137008751145598248437675714988650516335925518373223886421079008151372068954506902791581067478933826592313708432513977901250637977976577476491051678287441035680532505459378578622552166489471698372756460925772608185294440941645431094717321789043004754271133520910545920110352478462809414614955702608845714565387194725425425739062150222954788379605598774152461196179597009486607015708240870870388619462352536379302666525940086324716230704596753092926825408758396460833545326742698908602966002189 + 19087005817205912784642313534073765901711185316405246637970867984831754459701934147830021509717858580232029389130313629119291460450346215595632156966266535699529407380799896751052522988475747877642287358388802006915309927985685567467741400267784002058761180059758729822559690955336250136258475324969712242090205528614365477828486728544264062002305264896844265437082634075165217931995646601596447251839635552436357050542010121115324170052549798907803455946669523358102461622580397740382349239718747799979395188082899859817637685903275503490262453496981016987264168932552471836239703772261860175361022475243423057687186 - 15448879438275925809883387516202472269768000062384662787594616373571415730128833921387715912058066243361604288532287049346173847721008410573231660925443786210466792265267123538809190168355447650198206770894290159878437883067066797232581969464785683161599091111320807879472324779951354487260284059374876912987800523946038177678317125204367525868209163082037894926050050182283996860953892899204830095297604516191481514233480225497316306004505408674346267365930580650859627660587850415584299046593059359500947343509029178062272753181885769639982971932156351258843942107615808079893885760002114147073747018998799799824552 + 11084320710091901449744226462081306173995034623223762131716476118377298683194609645781320134071063671757515579486457389788776143089555081559154692523896047415786879243430982944019654382986246921047075696292487601488558019993010742114202967377186069558017658257343995412948949445981966451494101795108907052590832350773598695410888489271773019756886632746296243157865096578259892864740939528430153341961173510566243525361696471463567243702491523464538815381587666919069907625986981735781644032178724543462026595918377964371159678421727010633869233393180204862578081493599282218273951814887814964878021623221704090461151 - 4187323412090661570837002891242320265841696721947821114320633678024616825722184202576551097991653602765202003037074437776755042864750734425505051912865061743421790346659229520393695318703895051554189119020171727765518249166718879519514797459137337002103428462674459780397234570600032539880441004960309793957306714324159772940592490545832456568275899496516802889631078056694740963904921727298354217168346601482057039300693799554012805225485888407578353054564520429004039220902942278388877985685816196684622320653427311410893334003594168440034134545950844307338771480182332935073113825386738548963594092626524413476594 + 13615902169942735520759146018084163991741395092154329168165518138298377614305291698265631553381921643416410645592666772084222086626548094283423671199288125179474544074334529244075008959245256896743453378077949009944803064453570594715066898015398662247422816076877218737151757384059648249797389838013970374924327172792425801730349880297085031926008367238336366804103581189504213195658040949849653699131461894527522099963819752369367049967847394401668245767105304619510649106619071226901082025127840137559006428766365289160613901737385535170779545081553780268376947246823356734859351734137953892936711465196394670499938 - 11407564881631659537404090403523982335526372628961118214584655154351583715034089552719178772313590496864414206241127034685254838736332876913050492471427205643212129120724634929718244973545208633275053696976529072953110641781694733139020510963423901074805273882944514023246979196008258137550739092728241636395396808322247855874091857926136987038296231648385486694291203937204484548499446085902306654275834600678120845443166710137675988539762612507349823984347831175588075173421480057845981298759151423671303243673140239236930423337023422373442619737142617062609353503624532581574881687246794242725581367867455080939887 + 2217321688962031256631222035287105705227456951293482399019737663614399961402048266811600455351383647109059137259887204803695523809930967063665371869901570463420106245814241126878720693878000893184554562731700943231998401474509746715826439274297841209701289790426895405798615186765792942087179821970650635387761415510594337961454707622705841202704018604181876674712215540498541652224857975544403610423764571745983001771740202508149459242066008055610773447071557868420859182211851299593605008748646780947536681091461122739685498086164938794885998675388225216434068417346435647580859508866065203938558910335101206990838 - 1367068923708228757821599610592275026686803253091569690388383936857980982741170266032933176174138841644637011093547646073870730586795356908092433863466342887060751993611803865968475056069383435011660105617188888071013340486325093026995664722648903340111384604966791895570054928932873704941661869916877000680151356751250981083923758578974083219770758327402516214106267208908709195175258824502443753288916193236415636158281014424750966064222017491609001264821068475576195216235732442591868449793078841206021507151493465259879041375277789052546491119989257227573065269053210486796890274869229835255603372346680230968094 + 1306210761775632359872158119329498215582892984034894988907693059938356924593191100084045519400541468555834097015461117035654004947480487456280793467981631305195225145943639674220083545909791487307998535918889372891481631926538967588702953077167903934759686005617569004584973987698472610434015363065468246226352047480496419285426830913675043076870489359286981450395200270032367736441568888969484292794341332427507738831971144667291882035104420666906539826008268391034894793897507796005984246875485590055013105555615077410628854289196622634590555996290526940838235839916272299153885574847993476290931780457523879075334 - 15313164086887113325158861875326638864216572958563589776023245469734117801518480984576062787310896424654564429833678440365914890799668580249416366748836766153713461558896640684183027315792500820313666779374977837310411994742184620859421724445620604473530161785553271317640866072386718090416041325952973225013073791855716907145732239265905695678048455151441520064941754181376372317554695944581034252117018109176393265207095059874389528647472385559856181808427716469268413237193376316730774910396492075914997444974635239256485018348794548753655034206677560477997934207701059967427753503876099088663489206613053912994667 + 6433422335784355344266127682146556434748928650413474258064977672288695454129519082021054864385658141996771660550098610449114199958881698225358648346327207632736040290792791316907141645951639837940868999487786230319315074970673335370693489617124199676247763321121686243309789293382859444837520547758564946838056844101573815394116885386276403957431013355348209471757978467962055274174018315988718661042546381305430833617370992120635486474426666220132590009348164954927225134022957457231271767009687700951829539814556442322676904364878555885637086331962070948532904529718310130676707590506233701114793757803702462103228 - 14634292909299654429997643697373281075447174046746048778720799329870832734106662192201199742847493765259220089605963857639531446381139879883624976643899306245132562490057725536661195116939608487413942887413019427040811794077431923542316082690985774970689840734603305813826023041653086246603625335448608809245311448953607517959524343476571722991745972829894906346193255371660484255645160508752476668513920797820726613232871997122797715443121426583875669048633008220026171373761122916622137692606811211080874849621453995665606484502579498634418200813352067741383700379565897744068383660513485138013863439157468393412142 + 17037331382275200011881648354122549753133091919328597065394618970726822143283394212812997782852768990474524873101509587170688955351108687094627428002823062456176974883288834179828084105163759429019955676099641704976743481857084966126100655949644663600963077840056323735352937583227143988703262607759684429897494321564606677563732771780323088416329265505066089846902881805241699906601257284585915881389409324800186799378006756942899452031372502011611694022221271171889980771353496008240114204487070055192647153377480550862553303308934767355445338231460883979265777308908079287094033598495511979370793463806086202548616 - 10000665445159652932884264621939602156408732094993066591653165106680198190608639568356310870942735903057783601854809425301951019711275294677092453221278825512688148659134045069981989480549951268603766885958184535618622926199584671533597938618424623734370453196695765913720352757840167244906669408201498293387793544557167251493712101245606395825521681998907640868283974301580222952198838141295647426703191092164482842706062263460960350931793016182196393989563536419519849283442840123842937973592729026291262729461889865070481535699980565000442879023724903613433092339707460066896808426461928642027476076529490178026470 + 22716583343404744719435541842103477199489829064447818778131773476502777154495576889060562857485592194190134971338191186519498662871572933812254095558928560177037184753841065573687370018861094614435117428825051707883947153731916750212571423214058984581538971774042145683546927146428444150465141587745537413414297749260218175582622269595359175374209578985464129635334893126041972932811201939058330245699619456324069970204054558012866564283312379732470205279376797507637365623424493394651406947887631368917217727746710055769637622396665352970787003769533270200193807203440687238510434577811774666884414231310452580768121 - 13758725443263832676130259588662621246482356869888255809323519858952583281943811372619496267417743238158941854347996471813259745530663006834498652797756882648816255499149215589399068125108401479848466514784254068583946342611089222836524213514400752155515201477042808654068842708745066519233565572195013713290439416635494809146477974164596825955228211165900776313217379333412332514697844607767734082704465676486676711392414762106565606322024815776344038905116916990061047823613432306919901722251099908892543538333703088954985315227919939212831100502687362897739967321313719232609409732271702223703218672894061439503666 + 29581978201997132456048753506042372825335256066785888622370546140661838313922061316682214961869532568483014905951795730771427206615711312969298596016632386903348228542595852182791252354027454395910405418334879418243911221457106757658055307183987829918433028554915489437653734700248380505747166268978455808941335859600155715443230655907297953608608147059273156244512680355504108742536368816301638652443338646436020820124392749152457492262505231006045434204987418217692211074420152604106376211655554532937588093360109402120461552251436669729313842858463931321200285468127442442589312146020437113835580029330551034067059 - 10305835694684913663143327485706324240865036561272460310056698535338248669686387046213283544764212899175338723687603405804072389398031558555759158354750770917880184728008916458494556252158547596983567908261941524982339423056842187206350085432777323648919698554187394559357563602940804436525103175054886900672563219048685238086551229163623870783813414534842937132022859498185160844223087608396920187307914763603670411309708694743230310441610411238830036721682116366470385013692594103815470446929085006124412709023655349481911342463520671606648465871556342855392485949711947318352743875278283757017900153291099958741710 + 28496545852771371906216611272111497684932266299860772018983377313554253378983676717504422989675508289889759982954410439618635408170273933888298090290697227549908445822607533030176835782407211547191048805618524632127918539315255867679539268503299609146234081251659204897786681288889453974462964832049773321556150550878203794212187882569463930026755779929380465068218855142079834843515224679098481026133317584701651291730998989471377193615825366970518459982055687563013394575273298684043049124824034896793746655056966964632365978012949772794632169980801705446641007856505435225492944950546660400148082967342215947511171 - 5026689199482333589129451365840316920981203107862405645304463853598883559549319505127398259371719734586698220347723789980804297966642838622244870134586281513985977234874177736119089238758982390094065303593825583093907625233395366441288810153686355350591933925780015277408359996697109649388490254781048694832613134717528110257059347125834233545743600439240727861780226258887620214306788347578894479377161425038954761342818310707936417272377603197860928552879098368396107186594185565610153940815078295701361687713534402307132961062262878562797596248037294068478998796703183074692219890748672168673784302161704542907414 + 1767206569563073365914985405792452896466535240627489488379853773820454405601878931114443911199837556742930332776122725331633974886883458760227454540587407540520261061454790141312091497358500288112134559963959565530852782086947242274367854460794565708931459865413340273345307950900064731373753358126046883077421688506060129598046509718763123499000473939105366762830908769781785727988438907732826652216983573148263469488539566620143398112095076729788450073144389209308113770172222656964875746829672733423575357299337030284524950256846854183178756342155790415866508267714696212065215364906509385098986335443010962267332 - 13368869578740340762167656532173944517311633586227492797870889423933831993746511444505837727149583461109630424686210203363961804513957532232491354537746836076066392723383955814463413630454451990579407599485995530997175201748170182623987945833993343412154020577317160879662053610198700604147496961500855549466597742039776924342222633208240169831498105566104421719660418157639724054392672370647288155658118623720787762054920625972068040944760060051878662096287141271279302419789650232282555179379676190744414601451485953493670538028930355460958821207418026841808133152923028159205872027911270909576284241128866640368169 + 15036596172286044033286556399569891835733158492625527463652521111261070752974357601612858094644724305355341561566641279303707987998785293199133198782521388953992007010051107197465164539406591148444173133586498137696894826476825226688183000003783225899452136126325492246524543644599170165320013751514152569484933523174049940832645208391613751064692293092295812136174759143561748759916624421084921852718396089874696227588269751459014726496118024313417521300152670473069499751587758753937633808180550030708752203958185982620993877005058913059886297336942019440921488852622604436137785911444699076497594731447992337750133 - 6475746354219616053082136521434329417416440051023095966334867897883790764754332764029993155290063729272248170830007742619126916547327286050919358771949978606942782138285995147350172257706476709482171559362805684955021701110994466547515780481171620743727186399844085923693554195786756703625153156489889594561966809611254058398884702300928302438789208197244533561630648244702299574280732912288616932887274748947423114563089932330611438490468366932555679134481985191362588571828981840274795112819598791751493636186690500410176119464158226174260586655711180907280372682784181995184262594271619082895104516719845804606415 + 26898140694149370242968426848091035568573373785734027886251236994229789741896087400354943445996611501360674769415530170968388675610384939794189172011518769954840031663306785140421273111868870205070790741527545269475374246553228129499106214979402001355993762078359228978710415152566996392115208397431318735810868278438640135871509969243101325249624058055723854002423017531396965906227761238473259448914940232156027317511204483526944279320387137324431492298794251361289715461625317840629240089299568796797801032788711263951782140584798387692165310633687779794762498600952744881617676337160246059049702620173947347944727 - 4093391706008319496766491981641040862399571235842425435937806893287471106182199947870623207701548273152078490728397996357184940283010415807906531701035933279362302524697912271906379847010660988024141686667956855048927726319457661054226471433784531431455382827375342740727461165793501334085005261509627184151289816111863607666639626033070330578623655836959970758695225056398429735375742856933566974918159917844450245195893885429609960194118022821024275736331916855888612753032171659504787283321675071707691640352585155569099776252963449275272328388832363684832035840118971302273300531618130636258687096080957767307195 + 27902702130594104956961215204633107444833055200586292141962244296122843272303893852218525790369291158142161592912615710477848834854417786908064727980085582165806106982238425539004546597810956394118550925503427864572269162496058187911108704311395157599692695406264795832945147476326321728333171177076861492837809032935380506588669951493075878197426193439365904080431407155885899886714537358813166248505979944392134928421930135933186936063514108898856182759991476343762511285717570633576133705399162413933527412543688888536314184412118106471090525064741852295047617238421823496091527450421141063625325887221835021826790 - 1657230032148474229981368828203451429669340628380691953752966024509777313670295858985275554672337059149156634878694867253487158705897358203106307538933040661813774094154217856605167477081206925839760480722624519044910793402841426441219464644122339174457326101461708617240260433664632039420125538633246950552541048198329075544967787726456766780288223018686814223173491026135367372741131938893711331457113668574418259267927559004159813051826835261643531304062497300357837733044000786952333499463239443297487399001779409343385593191784110521178550169102239413910460011711470497872922737641920460740328715765622204710854 + 9050987477031294239271872619194591111699369505206510933023410351314684549757019570351216877705240604641372432424405806781304171102900889957470781670691518049543408647012085878501961981066286708921719646613517337361146914134276318763031508909385040049018004745168472196040811920062448631703953186083920606625201837987751272567737264017834344348136568164607567691460874274242075828695204080914000077583157919628874709493159712728540123314914502314593841433947529080578722607274843124266680751990623607947873354943582897356933788852029469550749974726912979197869999858026465898925347928066926235331451099987172098915191 - 14751305502518553000295788216838436356571065264935491750676712275511431813623636214824734906547532350367436755631226540308515595366348537827348489196632563197578830999152805885611437430228800060564033586106841778671469994977978322017940807135076376512569817774120137203711774843059072916990479043878722810369615384623624500129022033625172017605611160710992787640073236761628433653313063228872493847785833004962875101931957930811037067505237411099359950618286045787741374566907584912817190047741600651905456663335073544257979618728185038541889101180715948542184077002191323451187662134951447337275136064529886266046407 + 21941818092803831249880149360183994287046602165059008120616903648069940464292270478189169873050507119848935531059131712630289915630462043605853707481758615912101875342524906613744258840425357924736726432475959235125793929840665334141725417706821852701043634192993640757410931115606091845702250670528024117083723126470795464389784261131312191589668063439783319805681497067010444252887290339171823185871124664087959742820264869254551285884971710391550536648765893002218333870812294760680130502577213755184594246592379804646338898257642277180745166528295223614842204111047065218436921418346845802693224875803580937132206 - 17515618357609284813179213163779870216790000810495852335240015572231698485233514356368133119789823852510151027324295996477697417416620541538907875857374182607771185350543918376250201267648967837903760987658441978841463666251712962147266967950247991310793192966893798765675394144762434883940633099794385581141284150666967807413718771152903180704462096631651620991014555399851556805411610913944903326263197744096484401462141683172929637689675243430633039550899203062256871206037557935705539586649188184972316043916854195013042571842721551223653904333595630977149586720066654149888982580859679017359384207875495368430090 + 10950958426085750460507278957182243226265743958366112151739458737009700768732056401965883991527248175027723005130430448691895965219009952117393058838862102848401110659886478406235008501664716086304864227526856635566543128903420765241491468877786168259411226937002084421363680228672044499149019723605970727683853048052496657834143446310833755797581929954338643360392336986546257623917918095429588630316640581776693655508644069919669654912831393862461991766595606117133035429970414404739864032988281598985739463454716978329009021755802027951256707351410871786124086031746894163997884683935419001772227414896409581225071 - 14382265644678264391455013949167710441119678334500740480888894453379062093064680460156792493266988160191080589545697706351918510443706738652407782747634203061953536380080629862861228707820487995727732804740395141225493076326349374315021081152520679523393913162093724013002396658119842891092886635049941100604823406369100492802790296770523083198499113064746157832239241862908334616528640862781534489211374048492054980315931666562370257577049697819210335772520530749813612395818648366740101511341643573324176147687059917289729723493605739682444942491725340931187645631245010318563644541715767876664349034819593732998869 + 4050233682486071573060820433135839828077669143765154724916915662738856072370429465566659033469545326944541361164099199297116807281126017073155444540775182888859503407342365445947349594420310893421570081202028331376315813009581348049453536761028083258848270632525871169388958622839790672453860557136127161505182688720792159046037100345280978139439778528245640798872345103028417115667907588065537462776662213647396559325410281479545850329698161524219490141126572645407682962458407465552499495735042774861714863064433285446270923853599925960824076362691997991456892898081834552962254745963662495837105369681191783150390 - 10204760684725606190098523156330291235487174627632717584318232795346128984529636145827730607015412677989213794037139043760970953669217053021702915766259776429677357244371473182982977079171786625762372508692870419321907147479000100914750870098335570680938659537441096896148132041776419814188296796141989928986130683195771361573938675813487362616456130041543291605382403153764120034890615863147877963510752245747102484557702609841726111214557828042171285661367093144593865583215175106525497725853927467705238614254772098977688266541094696508256236990927580510095452209722588311116437857510806108908386628050157891805936 + 27622351280164086138439388821767091249606710133405736546516756169769813624584865191259350677800619171706155055541131116055091728789273588560764388608098403034584557881457128569820160098050391143306304204968454468832605893909918925262753718323056613261492970485449720021207344206078272941988950757213294294923233241396014288984997483077903372837455955363541041335165142389588452125369836120240822331538688915750241938726792606658057160591463445566794576908862878793748684597917317495109328705519250862541052215389915799170626474546207199770744775836067420846573496445620461748368628123994121265196937588480311175687889 - 313408091302225894441212398433774278884162441019465076726790179376569712156129145266626240931432503085829503733136843137824966972941070067971424732020375854704882367700272273403159349685538280148857001493371602972070716280866381779476842532125954606207950345798146460929209424298634084399872712676732214540896290528763045164708857535984141497695046326655242575445555404735649207409123063069255336672912613945349166246672269816874119551751100390250474073770439393393248370278283586767896551354552790240807271941935242112820818787722345876541705651932191827567913294450317276440197458654365758493496693278615160412638 + 14426959138590362280290947128760395596592856256070253996118776853858509586108496937867313317639329288414484645053374369049884753249135607888022892109471870699847111044218801238158518958040085549088144925896860630692653358614657185610348712935535472842612185229346026174314112169119310643976796735649538434998759405452366389055679823875636304448112640318967816598536197754814548893976860883752174270683652443001124709260998776998251512095748236911906461861044822041316133775403269011388329029263120400838168475984138801650240266584609475429524666813753424821594780287979819824747714338885330212405045696340445305287448 - 16958581213402627853377490831640082970060167445599367088915740179448440595973272608326416752824079386984593235242733259811699775109363861243231686910999110854315339671181308329989853955020030193861546569931897366861835718845721329116238433982987346066644581200216479871417957861312167209792216602715641656349010671414334714088914668275101264435201183425849002874305874991125232168484570603637528141238595650715202971037084322643957588885122129666928908610009436894991191005018797893091160137926187378361838269922930993406718705623283447675869260567858165735972484825033074263038419190548098617187118721415928915120171 + 12248819227031229298993861785247202261598345788613645119893675542668265827710492673259148981479711023818658735513293990043575689359053509455942141211254009600009228935062436565963654800044942071019716735731443800713990161225469365820664192934338457893667775162015974665540354298429969482917050056527453557763246097812303147072484765370790818037613926178607017299633565015942752349062364738491780761380300191412307449409929448049365707365572583368681471307422296002963729472204410034279847348542230754132411302979328156465789013016110775804501530852608614456186486072123161688421224384794026229300123320814178149822337 - 13327331670391169195062467388573330433799834901533710340210271557709669484798199294828469789235916221787061012266700253710989664589773076258209858001438562908883192967909410917269175740645240099977688897419734952412737535704670379524084732451824732858349238829473928966674886507998483884954712587141728717654290102968454072927689277413490922223530257638973843559918628093229232729274176823332519787863647319168062161998941586904459440334882486068078887297633472377837914205886600395933451068670955049454539223966262305570646398828296330537844800910709432641055332495805182405643983324165972058294778814083778804203968 + 25064245777348622592457587154900352669524527534754057963410236258652154329381029610508243179271380949021060564214066541589002126722516518400760486134854503411613773105606940522855787935016555356484678342448172156169237419742508907300272332915232242425491187728362598897533098201197622541549609943271667999723289818952571351406658621814910605935144439140560973683515133929450779626190361044591920349344983956298437766250641002703064517714904012764544769107696127136502132931487172821185132238686356898503574304136316395480890807916053507812515154508453895620296376125819646482189112570404030731250722012478209608219550 - 10205177204131624503126054435079469910719937617650972970636420473786849144790313194536026068210443617859319616421170764514990945359244165210239407625038285997609450606550458030202256922830858997932130399622963305361403446820675106983815419793217487647376283542547139186461508254910543496752543314391778085802049367368340826024880118067703911006587511351984170219911581741097471543791930691250069455959886368402643881836431043368555322322673221455689471946824789237396324401634950380017935366221121951166629917211473008035686464288248603201555507447136566060313933617853911386078316653023257091832688354768024872674821 + 12012003223706385200073323839624764913655813288930020952805154281537197814525466822742362698158912672303397166380568053681536086539249061063866057578688412351042079786573270958548862297542788621158048114781499390845839515526212645879006031133855646648387705248529497239956450344091116801358502223936595324757242912084265701369600751595868694294951469239904050888590886523223952147089330252857680843101364101882212181687090340765354564841867171449332337697735004618274063055502711720228723934180088715270126594456790464727040262912157057056886945849025887300049173815914499623432488847443587408960356450581898166073865 - 2474891089115579499886683862798561202014057694397033727009761501808274275971244742949464158143317198489967344577485022199581811071256795425366001670006972181226978820796005965943741690288823386642278189054446740157233709076969127660406369292402760939657233283739039120093069888872701366069836822258695541206198193742152176167538403880619689288335164958383782700034034547114303249088100811650759109125091086305443401947525214467442152614020709313893454933798323381974407783892196923658283254284316788729065249733748883628151915301497486320586286450146419476847582755634466163348973455112951580819479590711374248574081 + 27270749080756868735409062303095529896602130863042132665195453392426287468029739687321838266955309796910384658099141788714055084035437518422834242269717343428398462680505658140471118988453739163730191664686049006137822217589150141724447806807917083914979514894968226679864185347484562038255654311363893919465177225121480889975299250416239065838726511862346630619467553498599868463398689272178182762240130262230237382084845591338399230164684567662030560136474842653695198757402699812373536347519381475115339987797396613388790158176933650579819224729654891714177328903627902017291930358580481417170043610746064530625723 - 13892384403587378520340175322689114086092346751359647278359629733691913662405414256366647580136613317187040948826813127588590219619134871364625644357379842303055328869101865746596030575570382948859807896721563739702998919217269858687658918308735931741835447824557837788215845873667411856159444649696551254452633159251434817756861806366225332274384019500476257856670565544586867856304753916125990779273188833004101491446088836136817198454666165941644419267120658984748542193248183025528081367589865255122344143891113812212756391509582521128458531245004419880925746454933750082768558851856006921726153339656897807739655 + 25128040100218476709354759795376898627552395690816946147506602131637608807251719901580119012950151646678964663834989075906426350867644272787926142800761680413154848256870030559353586795054079939017714921316458844041985715673229621091759897771097946379904494379609526213147026606891958136003450342932571161426837699009266276519024083717009027683655679400673230872130061917767329147111553012239068097927538049895708186764773481175645084990451925426532277052600073657533900505268530829827852126952446375484640804823562017153026176509033347979877510493584832651680401906699745871159795134172645508561710167107263941027352 - 5181450489046002683018323501702747219482511367861103856429037053406171408910478121521915412643404039047337138837003615855394375632176234524318797645783025558753540310584525760494696398404505747774407904601027249015773768954957852189959204251323814094202067154066386484832089681703058922754760716134945891360700375574930704920383462457652062374156236613682753495892959337456948286301492974362452798679344008881709242572592776511994363382045571522314087413219918058241753767258774744524978596037279651112139878261447624175118792519995627829610327323280082642804597260354732979466879009806801454759581358185932201717236 + 1049252062643463849769643147421047017313129156232802359615469528706160426379007722516407327509483338350214191601664876537271430492289890398221586872038260747573470566390397833496762308527433850387314574343024888765498648015227613891538263761626699083620977186848978328300818699980287868565734300982272524097854524701894746768534869611302021068534178083144382476732114373772175098140129798993468732956023563556164535712601012997814334825062964232246685989799741638279781444787474686624071877844440757487161664840271847042022127211380319430956664773137223628580771627152246942190596903548212634706689711929731419714897 - 8645004051171281653389243797558015631966875562746845215122933775300285442575773571317225642827935392600182914825349422303781835459030170581379193101405413680467213526485534213610928533582271202439558155829111209209699005070436556423167521765303161489507123861393540445372610584304759841954213873274395117009474113624644774686885549903993819635356953632914530451739862806498342003081157637527474864907729532675557658170547921572445695931408019502238947107559912342807216591172682188702274297105798400975418399349314793246144751107584752364763100441540205988893432200014681334722026472990668718008946468639546449424050 + 20271194762986569928798267707574430570856854673123753162831196410580205081074922953579281096995056910599848518331188231835541701345512553422755118991837514119564441817679999378811287881116747404244418158341925998980100891697596248621359267321296345873376823258461312344567535776695035976243754298456297507862376810779007685066833478734421546939845638374423493176070959255823442726253045274148294813293398417423969627036692162718153949545496547936551483751556267522854102467137205878019768525465832941798014945279920481876554425095052338538969145623626051213105225250601509233620169396689216845430856367243712760591523 - 11477313330524073184608031515754183625397633819126256719296627697175105908924658560498254174525976503118690299983026915282845667849150433141236075605229767659130473343329205867339146849406298329647985949276831431921526596849922217686048186187199541308297462647809480758805757031468746756566254005332243543082092391195780794189473923495667148757122890552705815771284608968968178812432694520033050105606069717907472230801502666914312190982262122433119155844916463853478512000787127018297343840018318225160727746327828870168600791422851654268968374235257193702474169062501799237277805924171237938103312281762887650337968 + 16698112596007720281991428768249911608658317796695362772940126138468101434476885944808624049953690405845054318217898333613357918598420078313155116246811225593714538037288962991258714004702575161548184487641807501287525672315875102603678250591648941272034408069168415401480399309366214777297830322268552486847248503721666258056194706550367554176830534344246189737319295958666349453659778496769407524714429413315379795459008234221550221884964154753256275227953830879454692992082580127655810336915331007400617734658297011959247057345252602011425097446382806850076260254590963243549785200898184323894600589629481855179732 - 15753933944984261446962464336838325129435006492183667388524319549070314406837129352039780076940946585502129270117394339512151683351926923014957742235884318078510916227654173938945359095868757107520404179879331659287425915972119173782174104347723280110358648054320730489248184450981569401017839289429833709104252295901827043318370182582457332846713648479027818837332675793707569929862532062144558790825532486292227457581710758764393730145866423917328523585464931612841305945248794122186877791800649099439719475861314700855640891759072156570658974930286458671846030512952943883978351729666613977121860817346269909242587 + 27898713288779918183419139982627096159717717660532036647608316326603849816951872001814611829676269522244508326635275594517384930363111155892783533421300492495808830284979031479396428741916855850839682110696165427788398800841256586224154762638327102771652280818296232059790817939355535448767245168653632967139920877810058937989256706262253791005053981948500078660213910333667889349706875497115798090648262157119711368273670579085514580158315022318725137793420703520443747365639413602449801072787218330870008425756750539157295035446404100516926885659180458949570677034948364221443795365604285005145372830881394962530552 - 9750198723382920013140138943926409290490747246271824477240843838618409237403140953181316808555879345275578442594828655194489284892328453620837915858152351277095332922758438402902606859426796269231881466386739366438264884214919293705438029301793044837389463076880079956048224263586832707212648425416050402025209048273730270036939097626592926290161089158515853916962215257884924371813142480803734118621472245637489988142727753631089855995090665671842583241195519082046525530703965735419463144730887241596671063184508496544900408190899221270332730411630760193395043768519855859485967467607220274664944583481493000121024 + 19038504738177611740758442008108592747644643753369543788599302719340035466328379707388846370733626257927279918460303357535543886825894179476176801039175758257035914550801984693754051163116467152921781725871673219998396118430539336601727528013264585542520429933099954291655398062482922099363653693452129189764035021570690270322740507579741029760023201493693801415572974607881579681681163275185739125609474668992182615278031353766576888249791365714124693681311403789595285961248291339758183392134182398632843137789181957394840913957402242828468455100377061469179141691601667629355737513090227890597047129601868361496492 - 16085886774253811226833062379300327403358144889290370281904515454306135915695583470264261606137560608912143407581165166609754009060782210622521571262534620975266985416915654189543018004425179514815051729881275337652002292233078892490695759399433581634326648565696504605676609247853269233875431577062650202831726770637162351070586627347363333688182194288737317153350678070251755431689396163990202136499100982138176687236558460276596911425079438281686764346235455130778041778667891591222551116729122181093855806427168359214390526687525220087793476720570777612995712432345968873844344166955398771481122696166287384091092 + 19622472792528162860485730845534302446788987442974042519839915523629687889298635293743669217852703770958363838502951864566955372450948298360822505487734784765810387747915989552639704420330371510978416245454780888598165525668790168852778518088589091333797156470975950436693659506621479743000372002527268318576776741197097800509079521094926277987279290368161770252421182959654114156856918460071342725644515306386041980747964436292966355924199317732973156284013724451167340866920125841207039821057074536993908468064974090611173506073886334151700694512826740656959667990456067088406074337191765946755884399341178267091568 - 12833537970573845415066840891205304930498413813658750758378396160298583653115613885411359404018778856787057086309084145378128542811403968045723496462344648340414100331419312910380194237150005106752017705977243336949135416294318670272826762716454918705313179843780310410014430668456732556393095407826951550040623572227269051250070528617715008934157009421527511549191413973456953394050636580873629994330558022835385351130346067090670201844223602744901932949307754673417540324714876935726080270805701117437562508390540218423794990009488070974818883982984534518446656787513936998663380046130773281190445562384556144367620 + 13935504861156790845953083902780719118189919916249280580065235599595337690420563983028346285571361208876923656227365267318477791864136713706072734075036394157648998197271905473469038477442337446010044278086486179631071026559699560449865509365943025405182234832433293527144069162372692304609976377861827834002733051363891200153818101113709452760636194779717504423138093373324004127668170440233698465057716737128669026242552998164936186333447931097410655072514581237036995714768411432527271075306689032528732844169330639882036105692812548893154017560424383348921211775583192285879347545577006800001271072823415462592072 - 11190428982072117563210073621513875829775041539458208681922285724767561279706172562757293760448622034537480160359815133166924952683472021898841383833364189909609704064073232158957902719013248211545411007518298910862129623688198204821822799552214376888892351707600404472668310971007445119112963070926254174207741790957402381659700147570553504262837354587140014483493510943381005670302825326856705587882918281367701927028389052047333099156023440392269477709486222972160629303698324298850204419997211555935034883752973006934967649550320934700757898848838365784606457582395063048614222325193235827293936438772332683911985 + 3601384282255791457486466454764899736955131374107747368611094013631645492307902856908472343520728766041307858873080262758325508142649470973769474428106329994110574128343429004058942076262567125535839601536798896527142538857094919457241521358875633355777610261877104737043928495950661906348762330491580261302559116234293660122839984064546437361885110529087106227892436581864943726665982814887451669102670079724249436324835567043291133437997472713803522516302544935951048738596346990940733607039592633617072598948727011115393690373742402262759951685040834508910449935767431512226080457719443907853562380024853964611556 - 2420096576527250872584076961302303353985227646334522324137389206331246989270358024399181745294256860257321405507225066944906305480764826743647113096739782684376078622957527677706840592361202500079384735205942914209814525329300276158553532473591343441398191681006542063269271177288973936295726791871528648416944391929851084478257340757539962598316078224429606674124878915373031224122689861043321347157001252923586324092645857451468089052409681022023731835479105837225268015812738390718597039496406936487747809581935020948111953732779711982668145932283450087714795874927712922231811740030260312023095438653715806214628 + 25121582278154060553969217853410260502799053726669377906025758529999592885671893239169406145315245998685043828483875029841085830264796195749904906961533462986515925158447974965351217567952209515962693552484064241338298610470263248789778647282588728416856734958367810190668817275155138609725481566837066177116001008040196368918620171727856586810641723485316885034442118135957512827095678346290925050146009673784801391861189518073588823937905823924481653242746491408600895429785031654957448412357003806378739604740689214161221319999821120998392268394183334936056746034267087621871345156903290708703717678436943399827158 - 6328933957018705740736771883876514078800099124616776104357488631085693059848229473760241783215773250643333142205910791592240113557936497894594192030023471441161370202794055733783630727045353657567248058951926015865345866450023723030157812163425319723728028812257740558994596319943711387223999438272129484830462929319765433295457069979941055262518706417928745801370471484112595575816451212272570446761284353356271233383570847925106604905225198390232534459204604644411890134608355939867716934826461164412505420043935057453687404915409827319959525821185468502545531083782895324043699192875845638247599997292886462397092 + 28877467527208082668842149817537277277877890248985611138193858119645961467325692710648674096621018457845716208677450653449790483941584451758193033552827709912937812691442744461971917600521395831431348910514905454732809824022699921048177758283187060606324365135660292151275536054723753826143811174468453671106341029567713070571384189363059447396860483240886313032265244360041553458924799779079015483838907015916078752955248459468383835898747097247131373377904908160157614546802623574794804759099430458632589374222911852924004739630112229586878810979450647854137447311192917592177598255944003935440342289412098116665310 - 6269695900378367563778205525902901194869127775913870344988657776642721815863931041434648172834664562877014769857530047473603560800089985864460025157539814558432272569187554584420719678569093115429345871655321093582625859049944730973058715706991329074418166224894257286681753779920025054422930300792610270704644506490468849433117755241529925478182676213990459087108382027142785217568226752883194920369117005233861058933451556006219866140771511211537107447803951223350096791360779736042654973944169648685736906558537636003154901674041635389001818596814107580028838125967628522913380095266686616334133986684468060703095 + 17618205537063689491656831676558254866189465769391363887836029019680590869676390089232111644280573771733945299151095861231707574186003393381013755524910318346465569132493085230284343998690574964346503191151284882890160283177846899688871110043060724587911035894490363438753763047654921425574105507246283613914794280445630110011611188581742326672841075583768378696076629280148314164289130668301398142878965910702783036824846460217990760354239055692055985848851817642867767762462006519572929145514892083033392329442576444704858495641339430283314417362946573627437818490369695958980834876735803806190612540963579677618362 - 4077932582204389611423187691157381776077149581987870789096119192873461941012558145100026044759648299996955441302664840020701208582698655215487224148328050264711954915533221371239011810721881079127238995945866551068377719549064194460220275514786956710667499958822260454145991523556540236736370002258360413399112839030371680126555514264565374678007133366378562184404703086924754052402075705729855703898174759524129465310504114048286586754607008581174931972872657112897905197429330113681406129865548471982140838084565771285429886994466930102012870998257767641902831160663866562121202493893794189543170768885704156296619 + 28650720766815388753776851731007371134091805732904884115629760072155157385862251493795572590467148622079530103610433949124998861897273309549854139918325137936799011403757274843719079527966266404364475873398537155726883923579053189866855920670608130291039176718815350721390483589886219891932352005742871474516598241795754548307997755358359250372553182236862865276429717703199052971589222977247019204981104010728370370756229341820422183845284982480907021505487855106201151630208346557590035783078919006542011397176546374252404881168752490142261424289704972228178676641937649390809317264597178814905808218005060402038262 - 8726305190830608016979160519906898924592666859071925506326943285687617844244694265507600123395388177661756068153456689877038066583416086207038784811167434357285142263776466885265254804960611547709617287459272364155937611411367957851762177501905988841369192037274639637775211466646068065851162540209043837257524385007012448582046860148566091946763495885146724143315226814003608421963690955680999775671874816938569420443624701558504445846402469646687876874375536021869354180303630517691281963855219337858050395379860965219049935884641258112555437453025433184242903957760085496708432413220030498319874926174362274098842 + 21947595934604181523940043364167700158718962341249768438842166086547880890446892492563768139912122692519763616463704132426293591482062919496516413291788595905697003786623964185807898761968607771990342744846902364820487296270603580904904249708483476797567167159186042491471790627178404403053008344305228207755035161605267252775044455781418720356636764278244207759516892936565264907801775760599898922461041663208504561137960532010412860590495229232949809240281674929580595720637584856410959675596958190288579757063372576144152265666998193847155479200708962880105300875156934330887587740641750759357528122888784179738823 - 6521125038172640563349500068793522573819588780839417927621579259637859264487985483740392778621428417566909621432932003541994387894346202086361641757742628637527972667224901528789604161744908417526207997520281050909441827877829678213831429908233382054737738521807373557742093743686566426170818211386714610746264386451802245931117930671717192781862367784311784627770631632922551208368298710917824890505966743500732279883236331500739864869456132259605517823614172864748035154226320078958702178757440231264709692908914573036517323051883885347592873038705078084253156924531720540148016001170804373479683341249640533503065 + 29046524937780235213267954255190340430056642719350156715318829273987809284371711046319927964871094715706723246744703828343176492304998125921730234725048920130839891533561804363941581406096780679524902152354622532201015994409685136367922011744952630236945164541491087706547017250439237768728554681742466187596950140222673091154651285941316021506371197538462350249965432198653235788559363681194690370867494474167990148048868813853999232218400761231981008272093961047607250140042657909008343535163092141033407535417282296517082327566504188089565943156934179788295971949088461180646654645873409317163520050047542562560713 - 16728724483827863077262649791107928810476349122963945601253844111709596176845589652503055963630817451503260922852352641044527196692217475496226185968098591388707380885252940853207341286224681525306343225478591902143583530834202024363091162359057137532507670443230728068891546478603451413915944510352108763985392009891561541086287199345320591828525052288728425038525046610531297753993283178622705512755805165248929103450268812611078770079636848799863421708090690286545848927193999369405723232500839218049343635666479309129968605493928780303134245047405460302830671498834464177071545358795722973861376786574664363772775 + 28753717968817907621001962972883248246126932321739469706473545988063540812441855001378178363337925810781889764688096021612409596757844454559402356548335609005973311891712460849025252581083387477958389508837972041117902067667803978361018777326354585702988332687373083262453933339291957170539785888230000432295764069177624126119725114905005145686222457493497651754831909207574974985949476963180806167729879416223719992520786557255255952012669503903812759499558115478025129272349953209256392546817728798778710279122532970030340860347811959514795354655815425791920066536953913760589271479878158567655504531195785680572018 - 1516911792567691835124959566578245598135995718366626849191612454743003674451154094320712083433270192503352087523625427237378413306942821521432828449692918834035774209094112188829203003648804033366150378473162227636151348280027149882560064498659571146982455602109153012047508631244394007874164571997771474682067924234517162018281051143205802746003548758471794335743147301278506948534667638038633613222402425277398466547587183826961018258667248788982561854480616315163935627408160720836212731410451525598427686505492955939053093424444728242267105020130235633345663481584630292546389097488055399602667011417467400144889 + 10173985187523225633611263134202794482398055877997419378757970632012342557961346100082281515556348866919030847093335901000402699063245669841513990675318656184587473630454588825291194329671509831822885679265532685443224307001048217517445984384864902729727529888554775989181264774536893261291922872505545697728751583971668571262536965216583761527634920078707607776714193835775257005715659739483374505599771252902634120826007228375906262677205751176875874902481403333410350625152675074625072728938683519109973106742816407637466268969039522842409199565471558667534425411289221870868446774476970145321734003511685206609992 - 6041708554680684010654389955546058862970994522387349788889648622247468930435159599397956411731013315373305410428891423720619040880905082327842248123614603429618699389875403296993871158462026826128798874153812868759712759789412199245089091781801960145612493805915934631281587490930037571699446248055934628890810353490070800334699975657008507329379523733664179701586397019777619743704020812941459975397335177698977231168204882789494335103760247324061041730691116748068041521183296519801546254823149502358043812406978093195620313080464180450541028416403127322536772719639399537271655425085084781587188695626186664178707 + 15965730569072996433302447672382765440079043776410966336732066013081621881898485580698002748757248142713153630724067412873552950228875970802830608987706587448120972721458397103172965117966656760243382072142202119863623208033811976720984303662190319885399184542891470725897661290666597416006275667339230417469779956309122127835562433097912368119185607850133718722895431453941127741569165765092567326299623530187506376055633050473103724786749881120457273365000783912154734063230655309036165047743034725522756741461448493735291802514241775108040070602717244992723908714346718409196413479607153650006179206942319254770311 - 8552743401530178664238768049160510904079084904031666681249310816201970649585113786401826618806360838264544131352156237254708744794654716386516138336054384174027598480419377595632037016000737729451997927962224744160671054278426941799984119363442775560637733203867228294071126455166668055257737897719442642628891237171444077707667771868645748487114356398550415614159152549893345498210773875204501561608298612780818685861286039104405267278302167132055550360914230591666888423224200438454494507453133832990077320470765227156004628975775793837059076714410507170185988815807037112421430939119495951274025340500357831010443 + 12154326900554199304461240767754117667305707293228275177608555236909271078170372178480346984699683889249823770676853389820121202328883383343948554573648458890245696878065504643706230707269916685165859714078090185696038103921203361866319428918071274332107049112060739631607623679062890536000609024384366427811159533214374126487688655521865008989910228740388450010587076096249732699404249555438182403585979336653576138943235274020505924011282826654809677584965707609652371978990331304337260352012223277922809850815244409693991745778465706083547564679093257549926518641221091937531708111404415189835048882899465393478397 - 7543097010476884260903365712326519675842944421984558396607376549300405414374231798025173677132862138717048431883988767911830606646643915097188417199308118307416215163955412214472202335561892801826416603009210965616082986054386203573357267173349928805105926986799272267557432063599901701699458462471295547916562935937297716898043060295450606220777502808911244429512336712628072326903337963829816727288920324321193847871576481785080097957704675788026418677359373687230464196454061312881216561376499153184891644690370850092100091143042254270242344943456879850184555710380295306878199263398016225332358547940525142386734 + 8919011651194450405401141162065490062450163378231548815167687009623863355763220396298777473196171142352219400598132636081071664023532897900781616205342613529440986044143632135617340470560402652399518281194712434237727566807882639493473031973593711130354908803589702398837102330264360396829493224147137523701485031692989206269108630514059465349170293133715654309125151144851832918075006861057145810522126678903297673111622712610244179629810933397239674869968675288991730510289538029940250975463580096854539852645279002143297613093350825129829326433900851365798137315599973122810092992048189145896099455580201228921211 - 10707549037176663391207177497899807878519049552196080637499512346628881752971534763472101022111759935444297180903643320937849709799510660490376414749742596167207147447566366789143480703371587379658798135927071535085275743028371058046658240178125696719191985297239228364376626418507277147574396786273551232577272270120456137361742986304370473515236068785071130409769139040531651012611112492938360340459215054947354343595726697863531320561567318053204018151511784893220788428403415439680348974747903132757903733964694975666494835312120353095391790973892740448869875970144258417473891458454329880946388722626042368366250 + 477397698556446842609624627643595711629811833988744731577872280014994979290858333048335450303951342388301936921427139104335951093820765805880430157860736405096057811119843208226053473317096397606937089901501688531121051631308000492427016642734120153174215013515505548928392746283557380711302541609271933817027281128094139146433928465588188992486136778413366304085364319404762324402310504035954655138592593209521205416068497684269503235917910395951709405316974444975855038091003553731409036111568948597677194486966942454034053086293331245756218703294711952821830950675843360413662353397905358308294480894735394700438 - 7421582492891260228238160419979560431582062410146479990204905336883479920353121411375507360368274328933331230390410610247648443879184854415537942922223363149989353865331932931131757428535285517806609445553076551745050326799666493563316424855486790936313270093234313222623686082022584434189904930840516683570203764251299026324935408102800056951487400431488188044966762042051698259457950453694787440285552484055037395539571690431201846806326725536508002146231854553136490603288880977346413442732671924014182761181369296636701782679774153416423145407231006461533670106517956183462743045819336473495525309669762122395228 + 10730480221029218918762353947277512370227953896226601899419062291469610390859743015311912883373947287465184684866485904330398621866856639533665198763552860666694101530731414489683955679755054004311068419658731271080672722501314787658812939648212737953173794951152939704929715931444977292893780837189201893917885752563466228346414746013957956923899390752134183417785895463080000422663636566372654704896178523066881457574136785279450217175108726750747558993397638728598617020807542785769496442360573838728392113945000133566580149982290379079807383107711639924751274624779711913374155808461151484677451719885040141726582 - 14306961684807721323947004246296939563245732247126622447183883639173716409700052289749565276559003436848052760964436530828357544991217648098038289939976789541267426419471628772584122230131909702962220960864141036525222407482799924887522443292344418972933798093929003050767780358279925007781732494729585968784663987412592842997003988776970079595535393518957425930907290286337995833538842868807924570629592250407581237475243739233714592902992510210544282571976108096188119213650554897919597204099134747417177464480036065920765519681325143229868356686104443872832214360468181196338417319401440151008589271991584011206124 + 18975641811522539962702866371044527231365549890027200372409538069925144653664502030464180799228935474902815082560630418167519521939998836980278419915335863256905911190554738789370682232379641553666898838248727941572838848159401736151029412757780986621475325864766611718683899264496636675244171152254177344938748698587416535889774061337786569192329094393393025235605158381180403621107753002991663887117101347090992498692079223227798516455112513269990864697809786494992713063710363292414798476279942077521661030337583392247114725618634501420500214686987222686624247371405100374152241473080856634487796960306299317214805 - 14199321748524147225813376548973085781651495100872708803735571350159454443388701131242053457560103665704241115017497979141841643870842356994586064166572834072970159604667927972429758411028331198367616631370378195748317340115477555649617289913433825043524186806995572562306642997281459519943849696875914456507270366188587379970489809364005522385650778274695872464101138583268196816855439636890867046696428351827344654975661938221373975175203919680853513395057891867020494785965003459499888222964947077179644356746738350009771911521204980703770881640247957997005933835948609195614605930811336096880341003564763269303178 + 11620957447339642664669299189025112685399767876977191320951900179949497920542135575965393197527288494355640777134543571855553053226415346488237975434652451920608701380823915194040539292582287927297967542231271257782598346833032907781996927155479143010788999719887830423626776736162631252766014605667797102634990231842690500742668666870515672210760129251892561843304570097578873114785219882472907231323530458956846685518454104687264649422259192900689027982126062566273813701639832200115342379319026671430679031376382537393676231206149114268623427219195385217289349447148538449645491710763715094331555387000291997216637 - 825767759779500377987548580503866220744565979580448910106546122173102500248134399388858038331206908056604052454173063445087975190290271574845574474591521022642121333012210381659984458784996057336933242360346480792104343778583237323994047062255817908141767487949219896098605543540922387818975682825944434270374542997911595008666918916839617220720036456283181429110744915222350959544798736028913378795865725594086440942893701980895504129753368597427961381479582860281528262238461906146592566464048147464038579832112029237513195042215806786928024929876166260275380111515739704954605114186650778147082944108352654660485 + 18221807519868036066565016807553851527142780338105561449335845982629508300849320240860912209337739652394797096742599488113049420083097236197970693248371936690607167335695049888824285277465427266900482125773737295478444705162249324783248905587679853422525099225957085378937906293733794141173508297658566117426770195136813221815484376761371986563676043756529356661496357556695138528113203563009719555001223876149296463071533694390261633987621704571358868170047965485785924887111772463539864324791092285255317093868129864072164587272799678806229545979231328103934647702983881029235448758637129902080231258932175880874024 - 10188060756992690954216533811389923977821845259643999858109952481082355395471513919202343682990784793698626730256314581911125414001885143243022233949262062182706675738852750608113832855786598704827636801625233349197745819442928029342736403044624404497117372318771600963019599113228145210293806704241371976074016260325047844216977233637708671049381824438464377388468884135985268436241452851330780506354326143465105712938097917848772326696182789832328361232198631437232616848881750509696404565764094252030691485427450813691452921632228034878332965468340784363479451124053564117698630211341332184800546118342478039794607 + 13189769627490026380410017137838947304880475323450249151453118295303797904006430104418473503730425087784515392618359559822753384958691696770501939029841652717198595655910947528405021308378603822159775221003327809415846174973493727856170391894090583753034378994149188342592785537715280356335099867127662497474209442867338854222320735567378742977468871760448519087689549983495553747457242199335027984161286637197845100451842988616829380262168766983316095375395031601302724856119371842190903989975505525743374668911774149518547950523713502177832502832912876586852669197848659564086740764620977602628217587336810718951210 - 17305864216065480950195586436982271420519503852563613512472888644368932349656077613897729763822554193438366385823989876409003077938987350463827722401887632149355929442864866948744744075091517633053147887142600975402412891425990859682355624581270485366511474289849915202270149557026172881677866541394421722019123500687146295569725541406524591082308556882856667154130636019268062406403213931912187323246248538172607703908049508555621428188819690839395138161256432239954721290870846092342099229581577812364756404336592479640870658084208763377566777509782622273313607911661035862677983985353055233089168755877818836853787 + 3471537439823568353716500095948883375092643288593867397286204959280921618998886213607953611198421026565709743539066781916724416016364654751049551703035334086132521368968403729868006246139802520391586843491536991438590729534935146940762740955402578886262459885372690042450765682551177961514135384085764334378957967976816112844395410956367547505543293162458779147237219615934241059020647906158228030633752550604484142331465755616496117221474932639624087024827522631605687773776915871064012162629833987141654352396195721019810480987677126593259548225877692871092660018447233411228514427326115098556359851093559020790435 - 5341217635605834955433766088507576324661173946316752821588449174741293801673667499655830597438982125819252061115347281491324707815506561553149815258381475754380043977214734487291796317028785801909926410267856806369563624204609681982143280101059570213137213464507697164388090964620418958588821979515487873321391903028932423516825965750897604154161243720869754023364316389611738083675723758570109840851368884501002807574876866088607400510901054040389783147269938685044762427452896354950914878478214064296673104416390666100254601097588466477406486120334153795344046171961364362682475296348926318245327068170810751800378 + 15891485644169594900377424294826241362111062920672138960500469608042959381541301897328910202669387903393659787813969382893928207252859909712254213062858288972886174222390272282392879608129774669786797234724470227752916353457919025816446384894657156172331002818636326048680775493816461856323043917640489702044587290848384627288124818057947487726347513077518939562960192620285292927053316646104855656506177935128741583374702474794487574736929390434620067073546726757565071942157294082135170005293797196904179087941261556063631692245559544597166095116923878090743096752450888882100416733393627653420096114590398472288080 - 17408902509872007830846931069053102934377313191084211514066804844392695949083189328224243648893273234596888503686616760688881158221616210551428101513590882567828627439860537653736102587815541143513459558359915616015228941841268005635903571492251800348629885621914534188218458253299142322442825657295948743464677336072842318410404800055904627614350804275180056302686615900252985759593375473719665053627709454826022978021818447065496993053346528540930311957660183142528052771879746135550121394294798012693966605373089282577032090953697674084323425418618353928182515051243303354646110547519727404136858201379477800493409 + 25162752649425039675582993179518286347577852314383603390822680833275340430758935112074228586836061817863357251654629350288867282685266565921406903999297642408374024993195210304566987799303611148660637738445157068680626528485361392674794163334890201945494806754795390306720539931731412643178164734784191014122495373765876029923491739622400063384837671025695885690210000256223242911652449397257484709672338384131549763134187812396046420799893620410499152774139143392257372519703480092251415924957055492388483744565007634822379484324256523767440124521105613003126981848747877060506354073711838014997019349062873516300710 - 6654482805398614886926080193224670250345732988143263322437818771110488399276094336499342943814670510533207539210207602752912823786797393417035775405904572762092364338387080209458780686415043803420780533300052317627860009194365727234720712955009792025362738392076598233637118685651753359248432038377143677146258008044256715335656030556550802811782068835642702704860898148964215831176942632102856075550514164727746413550919338138077378140031723468742480565148394035011497229912845061039108468897873538183043347718599578504705339246803282278176436358326449763164685176778266457851974007970801219594275495249926813159417 + 25834830021267586790709552662811324054642538362623762734468072007400767398806640428349598215519968825528446689355489392671100743274992157138822712625251153834255524914459988110606319765639747809490516522211997835215930461779198413593889594260032616803053630672742228899901550637875031792493979388526064148582626318738338129063331248937572836949810534929144227017630794996472313637889167657495670110541550659100172001075214028075246611898207298936712568421570444115922529428798438846070753654149142303570781099057831460414631298094774408762652378149506014509231111135978632989415851521195308967284157180097243639090044 - 7682082303820508654018683989245065666021488700923513856663972013738959138600021632612150447186126962644979123894978112249979586051279009312325458317971165166548671982906068604675699356735356389143572800722191739823270030154097127795454429517667375178265285677920096661998656752759361866895197963866187906568743227182345303288291423123574245370665815003479002491195953732337525770602147957282471704452083797705250595794041827943876316196586047343929647401763990014218540500480213607398732176359722158321471355185115335370959758314983872305892514366141717094659034506665197050971745071831230539963142461760756945424500 + 15159455066337818160845386706286110641217496447224335431701708551709384647355186441962208325775205145432967065202416450467707857078898457104506580961074344888298284430411494976092894498988692677623241924612728815385455393768357507546402346706925951932808947454507711789284449342184707472768343863110722103515430284207497319846575184544470797865750672447589461795598161942816922503719232752564788229535217619519016978424441053222778912046483112018620013512817154250327678809399710560312988671273036212543836362452810143297283891007984191680701330596249982015971020996820617543790653949660777008696287648137739225480675 - 14772716659813403555446076832349919517670976846585837840421650106519197270434683479519906565689781506226823026243148088784163684816333416095343786778793807392450156474683050625179091379109954296195393193580099747381724334487136284832174275516156652121871651746631877683889956167993528099936082914756271266173580080418018831932890131974234118100715908036821506583205941494938044642529576336284564965603754492304521216226276156220836808854380853769827801204923908558589691225981915987874307035949288586184771382641243074371879845774938157548917720502272310034002868694656090493886113289898066562780475111320612461880533 + 19429721656429583639895453013531273000241320192458485506174072904704170894206686992912656288294404331772885065880273641527691567196862092288142035664418408498060703177781924260322424420363654525859865365549413633672632619377539379995334211374068784809557091483313145661627616690936168927265884263236755467230986517882304563276214678436013202343108830043677850495997833566167699906084851158470806941630219359404250271076171599303025327041372766777301024577172922252315507083597078747521409064482439839328958173220553153199417355991111949390815349215042781622043048725987030751511786344802730278603052262474221420403337 - 11022679469114908105442524528241739934012677046740507301901486931111467379091788633000545129033012309402646425504563807825509706664837763375338645043603501631189618498772759282292948374112937850342613005500467667722503670921336273791585434347299593317387568271803777755211479999532876041997677275288419695676330790150960099020400759445971321602858476108897007528916123971119239820857362172433425978837063652111159124856885511557620254402415137800560206108922559739097709264580182744302106972397824478599022683242959399974937402044990148363914397645952932343159853944857695412594109667473705158296614596283094126238700 + 11169017112496979274578048092465878074388382401996697631211068903313219874660904491767245453217746060786440531525386672841731499795006392297638537471072417426387897401450112282618445924330529231751104695528439696824336776483144923584619722861779469548106919486036265426122755216522693645269623113699235481565356626270575270619702988947105320034869513524967520071424901729354654362384773963335242112707877494454145568143485325036322820329835775633666722156869063895683787820742776916009145808162904761196125045792762254583444841297362138988374078908423262497995728446461223223473016046879205756199990106301331139692670 - 12400828124758505466775285424325539628472032855881601270264108514506518916640506234050529221800785603850830769538501609584637590847490197000472842965975095510950097590820361801995342413863785564863052182817084140335495664415597918660758726108186857662312507819895238006905361638901337810185612676414487835603756762695159752207282103620401128003212860466235114548573495271973364206937337655681387121147171408175004797103330149676133159807741012494359801642499637411857501822036712651157017770937175138856465077997898122892706086028290066443097221582302676849797104827726976834909401800428590930649699431682785292143808 + 25884564596616481196623310671344852570608669527679254780366598823172040239886151788155241472670141632725726633845949741858006964576645319370416424908671552814469422635776284983613910163768175184933171666107942917457270741461312717398711547589772444411070819039291879289568348799687028215314566644081208365861056637457205069358411192740398566998542597011767749126616432549527714672355194773054351290180549498722959699016922283398214046625125243351445515464774883603799229273639937068545942977360348918026579259261497463668051090563635897981070049422272032088538594377861713703698811493002979756783263622976966097943420 - 8565404141133018496767913560476720183767859202626151888756227047881189753227858693266208179735861461364004233404376878777566242934614414112055310501167589685717608636497921024904215104509753306367826223521642711397710226975405029389018136832182690828198420384727953395902257223688109488722616937882249330341403783323302775027059132885107451797445038443380255085816139587051123158195671517243682417125827983044316938036458282238955073315312483697126499603436705247846471841680126857487748785145274863485058762644371591340155432868972512211216884300102549100815914414260631714700368243376358587559420054978473924646960 + 20895120260457210990405139830020114034718565738022347255113833746355477703321544239258070190952828235441617199275645169136216351783418694412540645387105329092061762441866382069871517602706478980072992702187309526654832140963537725924379515218619055948246663507413022462628256004674727368443116121367228272535538504996838728748592851133951568441957746401733419701297143107149173639430047008981378242857164289332866061260195295497942574587707894502442177646063255900804686216054639339987788614320638713496812011031947272069895418021913285220062979742628381829806282889613338010794107600261755649400212368883294206520831 - 5642069496649572650547959591436569532195591386672662407997327816713893896911323502168945979179941289540887472506020198258641170402874438123627762409146652557187342461660053538966641478526879511777557373334730942510669709975391453449978112621337822069210743885981478228613122992380934863986724477953428943810468485315237949381238270446585982914818725398476247074778071636039707755966945778249795167158107123858879291762887439542157755036283816113255412288593252509630720591790746956838141481141114083625837712309558396262841781464507051239603136817593909290701641944448629581759118723772046088997938323095678596898096 + 5519671022883700346218475721162245958285207099287182351103014516210251364516665654057663319341286650466616843572775934015889728491185362648593990790924861263340745351681195135247794738331190702023028552375706299644376943025340116968146772701444159142334125569386836681492650877328856223045296600511408237540700254503166641039576981261803684147128531017117526234931381588607176143504764448096727281788786562095262707942508415316006895232345272327233345293630845158907676783081683645852562282064602944791727108287264528191344025468780090862430013033527297919752433170196715288091017369342584484612532145369593631711241 - 11412832046625375022761003723662888401141092597973195602868917383402840882397239443557221784469994057378558590290389866047923414691977562317651912252486572276915859924040810553248878571835367633878996916713035941149943706592367264461354388120198160800728044707551744875485696993540367368719958368293860231253109671893122375116140886047899813081996877951767555888430773620053532733372830215178765868353438611913610383847747217971335055174714320743605958729569168474350720292357944587560892109512703288258357885574981175327445453080524723163422490332666313975817660841657632477875869860395787508451153118542470104058707 + 15322869823737172116770206314909261315608661632579662353615892261662493147468422487435013648830661266571334514645901638473611899308574989892439103607917891577596511659778808590272085943417172566751712334815449094275928621776884578061621460129239807859149444487785052260877400002926481772804554508841757271647714925990686334603993379109578003678505847328179453310570941511368127945121742345403900164646506973446418870344794307291835108796426042214374220804919665167622599866506723138320080610015628467137658340455909517339550351030766153858753823823292937935804650123521695221245976244140626351679203749813780064194575 - 12248617478153425576426249622369266085772807808224523554771389872332880552892592183124378489185359376459667432449172715496161475447972552887033912436735244252196415514355015387530373258281818292403671077092106581519375774322855818643583121770449232592665958850334519683587204848350618324698637702773887696772247498891200173484278424978322494967863437004314689832203283716184111724718701266016054212598072149760933436211283676395832787095102349774003613478984857289546445588547580611037676544674448364342140289776071420419074775946708475890326633261793785080675233187928026807529345780696854487580919243355614221072886 + 25237794551495429187600428770815574066716430569895542543394153498607787892085549145038829439883055016560943684358634859521786552849552610904695985792842990360541483442120346074941274640529251377274058142058740996133089321231818389107884074779580792802295534983657215455866898974832979487007566682051297861962163295707814062874986560229126478015421373864887906518930546383508489863203365063083381965548533444982245422866379442358544354180249714263845912576158517015891112054671810669634282177370366633738860817595763934756110640512066806221855893230342305700519276145050508466647187903723359725834942369979906080296522 - 6440950122976774528341744206426891385784555029315974367668244368515795624736105104329684344800225902377645678821414655542570184240481075968165876198500151075488221954369371156520384821141457250606768155648812897116673962272082472923143153382701268721242386328633112097349856075949940010987648569202705898137396690880535237489369544267536014359929562853410410597286067286846101043895485483817621615170459066295502567747616819853838353746621190152083556582227944508382504416992994521970670848329352488597809961399005896848741745215988352154210791127852880565700678830420904190528616934463674401489903472733358630045503 + 24055216935164846487893971424380162667084345333153038124524072456322146073964203010798611432908971544084400796373804228532740807897349589121687829985408572990865448113726474243328944832441378249988620820770026754603818261797649560676237525828019336269419013421525577704291195264394439881058747630676874364184894208832252055720466726828226831533516639913358289529254530576970263351856098956012744728985204110130434641571881094519055215397502097551278882922739520900868901244781890458408025609208884387477916455669714111605215034618094492814665833856440617397429023672522404893776732100757315612006336689707294807792559 - 8511478811065162606281692752924106400087003268291518300130090166801175886195447092128726203311798947756496635921728962984693526713008344953498505667234766910836368743998595576353505304862963190459560267454032809207560902720205220968718076065081512202449289195696888804916962021251778183255730291600548854202634385235195452870127863936300760372648344942045441902424885546826822633435810874857229510838485396043665094234853674384403935065416960352395402786095537034598287064736809085970552226206114923487721291996503876965421517629160784752166091705679244903443493791538014220411968167434589955916139185889806424506218 + 4722106126817678651533673168849885689200291349673723383961345885527091783070539281724565028912346981328213529823169431362384852465370466999064423425313954108075751257484564854683417065428121525229358743795993344661952419210893556418260558151556605709023335587238807400490094997860080041700179216218344719996500273619848690278590979005658054412007589131984905891870503552875875342348405991383586312644921967489681606533934022728017887230104272522602734188829208982650208299704889545484850783971712063502819128853737676108733008940573236192469163637535038530550768630360795906883794758964273959762230759217740978941996 - 17533557551218752391992413603123412933255024829864360602311537056457924446020410434396974009893350289276433123633894815037615673175827020735551956096659569448852113511231232790039722362487249141810248866256727830694790308626499727075842706599869606808114135141808467760870433510353225036994367778083764590723784901444694509146834724969971385636201126514441733965204488548532889457087589101688173392126921902132566758205430651589632037863948524966075953323596914381042542742437299085686314135721491675367216455031205911176808020135200660760158683892317092594517714814858458964387838329305969848838684764783984837721630 + 16520066486688176369466195072273745723857415773775963542509833849847012323884964944311414340133130580246153627783116901651983266374614858239175886333258582763749584054376632718830117864527688702759827138472740367773891480986880369771155603018891926450131053369181560271304163873108861145791526057296037234983177577038592190834625126662917042703657333426299426445519486273096767283130304254941114681995480284488185217382624766885049574957370164886875927029718293793063710115462697971863393060748152758472038330341183320739116134171417445186365922229034117511174525095530988672942552699414972359439191047847237250848522 - 6427505440471726503367908827386107792816372247424942841466862195217811576276643395767616180216294793272133314336053629333186213801228160396230011193928222810981822338422305457109337828347352329297548240751612642001061615990082467681389875392695248562602208815288696161793262438642563328928294829489263302564467555919705240492176244146441255400164471073080524140120290957755115509358504458435585833840434776056575145930210582841512727111478693457077012855823115270761958202449159343693742793458513436739221082873703977938888965053636551619047486829655088391197715525980224417469531211633318502787490128630518345936953 + 1571626984316339834027075604086719817741979953048153508141730270847662950375336168932540033131925035608874912248859816356072561289229407640133977619318009039510535920060956245340799406460006660630271997358473487281985569074178772563834252316331642714660774024084562820036798884678378589925349945663810560182556292647152018851933818077477324987581467204356365036428487072358342598746314151171353363507016038727230705206329100014161450631122177441632883099525828074779072679279008621306157170115105271286773274696079861259385908917323468643550495911745237704802058997755063228720216227160252912028994466771041737776850 - 15127261111707206802124372590796527502931311683070437810334467027341006104045832665444594128216895475220433974210127121314284000214251511721039876236813547261076351412963051331026827004035373576159914045829978721215079063996629116062637205994323988573714615117405225094577249183938833769125233253682102472988116956916139887324984295942941026479028710960714394523209576635587641302025800723092656921597061673797513151476155058071829537536628548410698115624309360201457403489354513617694000405542982994793203569524821212231510028169351607512092316029834711782279263596019199232581965593163384696201595410731169871518303 + 23008243848370820956735510294969627358848961133400064052047082205020349422896952273629310280295494004910820131446963015334357309297224923844268674986930076704128457321305305410365038639920937053876827580916049296759415469489382724374106005098724680316448308683659775087527406234771866335873666796261578192967265255775563662537257505665213394940678762396770385892863058289339715856400776269499981246092842968365785983289451331578717011539871760502828120615158052507673334945360052642655209098533708820455406582241698554203279168092150675787225101540888313189121629685718137958249043549986543967080153002420169403135227 - 15628142597321703150533330139215277064673487020665639502097942079157467709273657987655301765382373484437301340419005653114989220947788685094786310757721312313106447894484264315949914825760369864747010576355767037391512967456693579000938372834062631582995021956421129114728519675138372943765922349999374617629843419870112824554394800809200594519160016534886131457857620065677018598988138832526090880251060594400177361116528402080436360047428033489771301867776738896835091071822321960063121674130861067161838170524216327753228271757000047653317171063633390852832992442388356298160390380181985522851441230066735208814789 + 26173507555832993863484616361290879439282861891089782048918225816968929421209294226092178003950018953993172989366608848686008143028649371731855609117552620468141253513423567367045313444677062701919775564648979178286115487012787461255295489542997220668984249762648031176198104960011533385568967280436943685206694785905560641507265689895847895410896239638784684746668462219381496066638771485118880001513989397295834575296321561209376688052578299441374256397243357012968545449044397734633973185549647598738197413497531662607956026784054021970993938785100678686542846285475416732239524240839657007014299075192275616449995 - 8195887110731609141410067038598903713422254465002091841719072958603131798834936328698509013550982180733803813500388095832666920300074693022806620255787368794062323071428380530612510742693145352958198849168174083335136199212047243075344405533994471894937538204790814596964769527073772504464810380436319815447081121487190600568984717373338581235540232366733620805339487047759912283967767017797421809998532279306726019151750227531300980105958667036202608601037847150005666178730412575678397777710545431627686543976457085531455215468628425197739091224968850426908116316712386752918461246285813657026208527743204174094297 + 10518437023012728199278441290069494237609550992257438693899624506734648479612564994440599969830654241344350594826645535008855231042552541246729666640555007413998515777711275100427609145119638953280413775173167794516473042160003988641095830827176958275932672844165690708387381099825652661324632170114312299812556912678215656975278255669620383993075787822699419540127536320313573165546205263556018442282470104258949635831260830533877527885978041812384954261889991861075815697475511768583626737392361792034240182715655900764430341645431313584468773176933680285494363859991072769797289217823866851006488917027409767867713 - 561230546289869969800329376833537539228403196291324534387708226368434582822652632310368243766243712221280033033040816041607083153667542019219607135692175909001448521852051044898161150452873406587822071740244797849207992322160876065078047193037775405725855180662337539775800013636967860023712688280521287628667836090917638991934553553946131711072099816061010891076526880215158620347436176364911676158846174901289934694889933478147774222905008002767941662047309411474484583360878685398305840246724210115267856540581072007062938424960083333416513743933369066072610253198833588287364050911056923687640312427666499047492 + 10648963860082618304717100547044108346231100688827499710445987766755324285360946923245046202492907539644366095028032017690971139860866822000907176923910133766284471936494421100978885870480088054598055449377700096344295872681800432113519702197944766940106071489219202006861198075003905696042811996442423525077286655485916797044676666393099603369370733702449306989985357704956189784183439937119466335393720058798273331466264464759579724721879908824185941075492644243316242762110302939428259176778946822247313736122378067248659496001908115760347101387283416855936347918295040647156785420548164699807603858427359651597863 - 16308836442839729753231334114624696808638712038674817166908450101398566447238214787642475507635330436816206334562606102175016259096570203871062194588484601302976342005834427130165330521848740330292286803378015887413576286211962114411041877262700115379183725630817902484118708862839264057592165640175402918819947591242912052322213337726088256034082530123683066356369331224832064363215774457785912650602532754038197321996883082334104109135367995545291577886215306362945658126883187738744347631646523598191732945854642692995627439104438979548473421389411841387650724208442593045056697016460085332847913960543480643283187 + 13131177900167873246653475642024492821408750293540710053421818698635191850970398206879232480408180641882742178684455148383778717029343616422605732797006882751828565985831754396666042046969156917838362397499049186326824567174108371752726352678454034686012611606231809290075630245194529378942951204450427319726119068827644692385379600109256345973698122357125648474640970361838761240322529280146908475577343940483326058231880440571121831974061337193244422139306691486745417397539824929471188793874699397195887898303873143440083497364681420587887286691581440923079067149572382265477743926982137189325251406850248119066446 - 4838824063381151010718483168123708553521366946016026118771449295989373176745134348361433839098077163394186485950268765400551583474076993117189694043531422447558653390523203682224252530594376967945838355498075351120985873091762523416605256312987925355042122269723372940818242339504655092284586807733863494037542899018648742480905286362169041195448938077956749949658342918178528375775635351995938204801542223865696780435964760388564625211925512887030670321000159718876058406615054921696805246610377147383251958682361681298970385312618660218205965199646980568281660748021937932785614077660730801472803261012954713162751 + 17761208975010949332805373220827953231746072965014958704954509940187763597330062994372171470375149002569602519293293683220702286534976414898119016086887295509970191655008724753137034823125898828404824030314136899802803130897075807222100662901564296212749072273047084332253321327962070515108591256720060173338856127342578622792780295333443465344168687323283530405135175364660277517291454099046315811337353870298232669067069382740402862776249322852535667499917392452898097167574296237628067859150051099890805796189313777833993462542946067791091049200943137995924695046200660277524388064436246410401603694807282614711261 - 11283944942143400542767909698354522218781645682581667264682875596118805776149008012709086797786788937521009615953211483304419827266826554537930115701321232882476804480332841617931174764018963349371058284220397685128092026794315607060213044864716033418495489862537580438755541344745989202405932051486949207997288794789192536081283856629933210425108713279567194505839342140140408896566370964003075448948690096606595674413640946604456966072025466172945735205448182954356457237406091462956194514750864951135655812234059636094899719233253531099831147440904829401921010450820439996673993962074481752579075311696125737333386 + 23557526178075603128693628820752786539681441761631783268131381933280589642588430132777498526352552799742888281803525178309943329494787961797155617057393301338347245991759583789171518641834516381429908787646178787454349305428698159195692250039383112213440130800375648367029426802949097691172845518410550872277074486492183607536610097313901062930130078253719921228732774693107305140180263992910590234565811059046233813501641350274798290324851792016204202867034919499253703224814933379880289950604053070609767874411570434580813461344763937616133490438656569989092906838213357941957076505775622402849005854271278029184998 - 2618513466310395966526041856175992165115664768924887955008969897324776408747218445734395622527083509451230261332635890724539483250990927877552694707538639846538317385702384545366567037307237901453010420085913600442624811318038932728941008765547183522378493669041789940633333741224788260179533551638328405997780603199044412729390046680467700729714664503662102130254444674610013887304581560945106421779372471111604161893009116810295566891350393910048391584839052063785898231961980191711197622621282078491934085464057610605353917123941858106784992186403214199314043422731761159718514398652822237523398400179955010244821 + 20736073093567474070798075460577353279634135362564853158402837189795315061859050641941414604542248839842430023471286391546879619132988223595037236282884170709198707739892184873005835917627479972853957955417835204460873102997516611206778522998811359546514938355998783754757026376892330316056433056730520953294242008942924488041638174550352438134569595812976961098329945161189006174728589546353290395760349451655940584445437277456718786258864280706368989748811798190299359186869031291082739982372063084631346575892162940820466295004773398863571682381221833290185624502143744914361420550556818998840205091227885986466667 - 13233572088007610259854705212775164763530205449805481316789391728123224657637830067553231320553281155183632706691318996965957866491953681033972846994501512191523710886507893826972983236303814136305519265953323138327090320883424131340586369551006077531208433927853850194114984130819345538917228890672821546205181999068874299403310926148122715179569209533241237137392690914434940796250155019703915774174434510103280333143371908633124525645503893725725501989595457330263647524496857857957416804527440889639916122459279723541909572022143111104193976534132916512280203416428087788329018306533475358784644945798936268262684 + 4678864102876973284396455767940520276876818169968905266011094529571801708446031747076959576605513766532764191652151813268279296391917524647768371711265658325048478456914677269048034372724422364857098532253082779686785048623460442240147880280421389329123678623853556431081533201667415600712037846044513399216745405828291757487043554653269449535867631057425693649344390712714868966723510329307564614695020625357334716104373570196437478435741999785257251037846487801812479456788453373321694934742419594596541555136753174459831801787948618534475631244718631111958631951003581054063465860924463946512078276956293785561546 - 17670724819834371398150472729633000045450635906480201722434810405459928577900448000297808699538286474798295973272237952672642905125544250369390662853275630036736368228158622794014143701510808495023182991244470355266840336076923867037306067493662326531363665869028860475435124638680423960031268124512167391734706278712484312014402213488096652707435891721119007838744971475907637139588924037089914362800033329110346476346745531398960495377610960596781941712317789797069685424044295760460285914451512086096796801134524237836460992067869018250637494279544239586528486829403071330156841484208170678000299765967460375784502 + 19593735692173981863622948416118637854399851221194030646182171935572777745367426951179651648599709616076043096432782472119382681365960467897816996067505415820744644269404745975795848577646839732521676411045914323085037391959557926499870835211196980841157010421267551824696431308322799261024935955422031393609288461217197793062420520163769300814943393367728147510466416628989565536264455669312725516997703524283788869451445840553539937780676740388202066231582281243418327145901643759692582026002476395014056811590605678051005637022470435353142889770426567016798620869228637763223962172690607133696295976450212519363558 - 9662531129662056202600593731647670497009462074744114120081385379240361970506458130033915327604255087205715086656171618369297385871416109201226455874134425272171571615366817439968206948479913666685978553479133103983653157187840494911645523153193848334168387380759307404919785100920142834194820014307757921137543932240621468445911315622741849942263130681155576782004696932395260133482205793583156903603983486062627915855538110688202580478046478157321948310284005367087005066791697934877698423259990630046551350219088222578065400542721867699406592946473557256800945469644669201410305158650121730396602852898223197465671 + 2943804815595839245990508286170639677928483724458005951146094455104301152473988983608856023472793232045273155766317398299611052081355623282356189438617473409551066448122682710351816472054010577160922356136059653939839671608169468507708367105393070032425011866942270054794466825183302912453907399730589753929011335706508130482247836117883123906397944798338887015279675637320539816545424242535190497294304994093719750302932554117843833863071292432870015879761898383130443724605316488476304250048892377973009060619289163041414175575802138603973472993282028839206780464606800546126269058592844902416667000714257691928147 - 4694194473672630781727041884935653021285639486822685877301801965039085553587671026020452621401944512438853927821769626819500254190740033420431301411848474362006391661758275049333188852118636758709618790138643709389400742582396176897500701040448369152711077628987884543607915087193901107514251680818758160522884181421483109415612249768514278141971030121691876129437629479931203176862962838522310010136471955307246764207192594135932779205798024211911919888279192545471249863167887117679516666641526792956412171909978774512857462929836344209780613977912374597168890408124382161697094610669513511119620783839992871322838 + 18652889054023684943466248064183491099489848699244064673797727657200644291526933815567613446341808737278373492486970579743623851768284346248607072279653734197348074249297085632619656854344544392819527930669338873437882078805401180128448113074409482057970061173290980385377679471019548471683909135542890907911209314730208488915949589653248487755567953377190793247226744916047987938751186764095214546374482983628067137038927994499116964136953718680391134664542528127874218408471748426182808632525084476176556171542292495442366647850945294085715829892267983175760364243418711860632561540721323959550341999840313668569605 - 5019428816052306495238102278294395513656552487452728204225010779045307499232620840088151811510769391058250314399843797051551738709771385347941673105234892529336461711819629249197435783765641363179300873281135036835229472207252487378624845208739039226561171218350797894735653340765465134490406347540456515186117918119173709022353529896817064665575685293855640013907319627589363407114536670891078003213875486356738943423189808323775288568961597763557410026588819558339381583030596428025660505819203739443487836204641866062225837211474180224588466741030676751192825915735443137211152812507570298788125612193428618836353 + 18961651224156197465973324431327013218271918598759640320769467718394900365431832860187318054471161814619858889982094518416919202071898067572309537332868037128013546656988080071624125935990683132118605818422861108479011769697535304228332479261147444972822881920802499200854326563537185235768388595961090425177221926794863523921157134862169452199580063828977008514353836620287167881028113026513666640694546195408196592969427590677421762733751781854819009452896778852541502768831581898175452812563102682016828089885145171903093322344013290527545800609514061555956330199502385509496751656430211371748593872860972043323476 - 5092070977336185394920733940789151065556420895385958008233246556410056514893298054268921714088677796504185402841825618126782934990312144808990337543128916481503769899199668127375963278741037172993080676039390609580499378533082488231685789009141672031117384436071148632446277546760573373557791701714856986108811086133200528499947505363037327101440901050079620296613523199116807266231948293082994263174338766615853976502306732052016821708571994944963413368560412333642725295084512129249732970640195829290853449325376825436873406550389394004984496394037295945708275512695385399193063847720962999709417609335575151097071 + 14819155109570612962372795787850620366459859108340624041574889878573784349850113063735423852611177215913336371334897620782169005869021273600120819404787732594069964678234610303985458673619413230107370805483483184820310110693558729135040328046432537027608660219801439242545546030892954573506533183758940325378598583829222952282032323936052833402092868583579565373276294386520495697756487354901301895162624764406960561970066418292643274083803985765256247877239617284847488590210653482684652614240063022940013295846438045769124397495809623799420227675597994023762812786658685402621207234001348895665245110222827881304653 - 5771733599649141620451150947859113668556306123562521200769727366979527254774674024590733632292267008687977133651802613338599660108789610027840374966201288480693622117219332286023964042154837905826469799523503411585915641048369063831297768096197990166300383796959465381607327681403017311454368466852400444439680698512480740921991561720144741782004968452787379953976517461705973050760857834327864484233258740170488711239166752927290556045616687890848174734864043218624486743726553974373126870456182870546171923552418419063874248865366321068389251199608500934438001125434201536859954875643473652758172748730685293348727 + 7615701705346761928782195122839668331842789286010116807436969486353055970294209063339414660210531028700527937021779198515785858885323785205616316312988747914145982377171747990072653781810385757888489567205651799661281155343562281041988554197749453945399490220917900437081200651456279315154809447994955034263804760764749515456265348582428664852551218133680445162120977214839179037928725775282923019051868235967943823014603266907329317286620141677934070103597847825008244386188515328962017272519421917453779543287371124732306522290167532970176065574423101644815308392619573991249233199789633385447097052128228175874188 - 17876795743661723162567770290365668591271515899270116306657041667916204277384469371300137693430996235095093586430912539834885585759548888092763768094489955885535546958461680714842824097482397875317294617391473746819067571930944447322319704560939462768431298780824472039698366731322998847723267629193876980551289926378100071473923251136570346166672471320725391033884926306410703831900016433946506787400870243021583483731033738072910918339773984165673152859825693658451616674197903780377908699593026865263285382673547077394549028642446825819337837950493401600326575912654408818633666566086464628895246822613938210281595 + 8516902985169576761435650104770299266548183975553499230644277966586283202168136088825087194197835572814701049103824522521854465146349576549470019733863347924654228626308671677750880844509726199192438459460816201425278511273725961340646306322107933924245029225585683037762145009406620040114408436477511913893867172634793492045358705903773490645138547972541084515654615727494813528397512175573202707606841716047197117536611653055589613753762297990615559402649426600624680831731103409644840335986100878103867503007740147539408767780496034750353680282961253063189844717107345697811325485590294983847395450760972878869495 - 8924406586667427297402328248810046422508573557492473020977175512332238229619926387876244168043093882238468658381519428128612778805294136079836875955547817133588447127986968279242288727226491169527511570963270465196129835457384672351577373441116807030380177639642729656500758941153939231262226515272962774312334039664451131362242603493268811177209423340805577438650241699299674544193969920407579319295637329951143610353973392555525936154259369895689013514764429788530108388626892810603948518906532605421923857161276337709216916109980539023617480980857245497142071901693070989776709319861780267607568231235864628824020 + 12116676076641656353946413467896877563391547514910892148828082482842838963827999161253134841135932276828673262308596343391337062033778043782184708260747234271024212615688215630083369416959245740545135821895345171354906688505775198770491860128771998762182659906576023419893934836010931955168283307621331205754326823201539185591497547087928898080839860339250855273098760923735205115477329178303977160760011159911715884551390867486912618036167651173495265046157388560994294217498518268526708349471668139412855856644758328186395100711572136909527645213419703300205792428117519419240990536927362799741682034458887783246419 - 10631743150011465213127627989992281220329806264279797360633711239998861002189947959596563413721209198643171304258807482772571336734542988475112250317513136084064941752304188059853693315908963269867313766021124042086977269511461246931647801894951478910881144869063772898360688598772119817853034487863728494165938981409410588712533576237258938220025241495034448490425313137758539448299064168951421760975001118541450741209241397616632523298898276619183165580807102529286693381841895545880416787770039029089067411212378953766516142207632732357113612709590264775942214289709095317539858194883068187839827281971167714438134 + 4894647302811185551315313581460690385281205966373051400497509675888075658501589908733891852121964619014607860164468909564150247495706676572306915023849699193478114182260153324293682670378340539443889129443447894869817775300552502132687994914233829716635161838811978542778241956565924515070043711443683408020302688325631747678844373752466297299759289310857039225309497899182559038289793657769027242670248045026013247644849237476631137398602701946212982973848015567187556608634350081940978206877819617121034212624087370856740276924192669901339918106458593144123079935065356266408233939551366673323328688057353557221309 - 12654885696262349719115778321812530599797421422427303224542893594727202949132349359113428822209946979940248851504190975414436445985821265846115094675255849217610060720545839879330993831533919403259191689087408108108521061876522289684628642227604481967704020136522810927537622670413525235697855139947000623457103649646331563296500163449966727878305790009149449091360025444513836334150324200915756501887484816240847801727561903528959893219152208508794190371329758662397458590745439376662849498503105913063833648108986111312317065618025058934826885404692899683383767294317219234183624461003561926461328078318198202713492 + 24351894382042125854452819234871151460000274139043748088415371165455717723116719889088512622227651215227197026978710034529158334322054677354621702560749876561837988301949454209217140226412962904156545340239603745640076335012266589720137040773772480484681643364380426831962392517169973929432944407640485994167742188008950028025866380824816331073319707297689461538780577142866547994565397011659140834584429563346075762940373914123251968211587854884283339677604213681961776832120252083169975497307156835846100315806745693895903281783995170948740421927768506514068216151434340396908257308207554385011115272633120738185559 - 14567501729925461638865623184328399370890981618442627868078494936943536353418178121577668808785775948355200679960235514038590451248426809369501222976369304834060908061593550402228354323013960349853067181829271824767095782252409931798849390995729701245544270567210961753152561418534445202361833342892965344334361799096140906664296797748438658544584599270092548805336596270631834110475121677032488586986309240846879968757007869881992081084176921889492450178382768075594812153509960180609333213830537534861201439552372475154543780402144238272141264067616608499878595170916713131498126600842419060560556771424383174916118 + 24372911229902778662883379265934243770993226510504099303403571527403932493791295943638301004274235724336212062673213935362783104432206175731422371108301271550289626398523910090659678956307683332122853853715718765393776352471717968439359099476195291460070425837727233124691773335491818884108659304311293685967141492515509450520247212606830810305227094456194525378751851709925221397933559189348327697974729184022984608212478742644754604375532741130015695744673666140232547893735541668627070405361499223218839173050773128725137195830507134619955461859809000477361629387936383521645031365497802253788952721865438971156401 - 8723294490505326767097853368821910789793749568502923944937647986343074837880272376058209361181853886082658006292279412046404257906138716193040746001400236239955703947791901391084322722964179926898609152095922846794695803870163367205539285567553464675746620038538517088905657201880471417836975782093512510409517565500260275750286534101673438199196112765099619202062371916030273582256727650373398853553125387225131312291180516019598057633955644011335211028918326193955933359911900959539951681529605975118135307448470501335995730988088256354353292392319075901921133811863423636423628937451396404310668169123716831477162 + 26030586141384866194859940238144856195690588859408254145401705370746767287866817746237576971874854130541289798544399395267627915400170731655921213834857319464441459747418060378696192185086848347860818931112097387359078145199621815193260873510364742081133786001136693686397471343350908895085627371059626528113148945407539465821926572568609374385346446289096103464162559456919200719004347759994171818533307241389918221132552431870596199845909371931203855151789293140119431966752612125810361764256352392685557047451655489605515856533850442557345127815290508636556130201511408850167815074225306294858086939581531036176457 - 5451056258912391601673315022960654802542576025656383686413916991957122995524533024353201354689069912627822178340799943404393558199529659495701021279464960698314232451827549727694763647300384231889639279028050338592018325511159130212634799004396120822008209048193342096249771252927772103467052235442247867533394527354382993170490859951458159822493944711752517879353689922726398179866863177419733714165864895410609176139522186455836441179424124067492527995754139784897808787295381876118999424954637004159013820250481325697856334199397608359551247945650870346658194066514302436647430066026340712971738337042310414747801 + 25197589109988554913568432751968083667771832727114001940340152226104944789766235473748707921185703260809426362414791449423976122959673172854960031141345075979692405333925021395316134671909744332593438033804698313239361732537620426473248880767171231147384020858610632405918238976680140372396609470628884863690884137195631932262629542555350103659071201975912786477837691854046017482903004882433974326430585566091751900918805618439191614598506813119265805399068617755439543872758152486741573487370559102120702246678720429350422601845373418108695307220793880727919037191326004295358334300005148619125990750034966264085845 - 9599501034424553663644431238344524746516546817964739657131283921575939247360152031405867570236500549400719487055660505963092706676144369204164004641634658596235809288332656461051233550423241265590092453336135925385232158753148219435662249822707083345623407890827623359742067199654900122822660647638908546430830970065742070728425341268032988565749381197299748006329384098536774824439698352570748275681798258749701267790234323822079118433605029007960952426671164771758909113465548772252673697318325232179388943799426206174140608411713305199342203923258964093583619179369350977821906382081443709290590706778609659293596 + 18069886737486047093696230209576669360111923562544026154532892907500366271603188743222068569482802954482431917178402351862468622269110350359886655360545480349491088906447263592718723179418798794055718917407980310214470797667412815056950632753103587690080852244425969182772621394145107064975658918972094542130944054075538503945401244246798466817226429118403205917941000276554837489397572945040848022740090121725481680962603590564857700374165222704920133488450005676676207684231702953074328468142178912643155008507970837702249529528890605232244091021080145269437177391523298416507603572749827226868629169235111871963758 - 10762037431200170917232942633382572835629301213812144757334189475229134721076298988544768050805770251503526034081982365769661789434329827180854650372400847262331832039135387174068479526432651784469916784933331410445776624734074409263163030614754658513294679021345645027002493758743134766530589072326748221055332610196580623280623951998201353378962492084344120464458941606261237673154422356681557230860720537747731215603757116286190305093376498287329398161497443063134081500472599054305939292266892115364513860010840575877636438376649489532316452226274929986554157727706942758953519069385848655872224959574119834639126 + 10901023468713785796009215196228425818197017129727675527536676633808381703218904420248822831810425017366743189124216134547372396314412351320695857714233826604319182768667021313773138192989325127384207664324892063391121665381107819126965324494427609170693285062211750114585412674545482458184349922695370415261716195851145225923731144042226987662436937300705242217684124226822308887998424693582779820842383429952984007241591397270203837166704678490615862370967987549096775043433289742816556310870008896427182378226272898222678303572519634991235390179545325477892001728394207725445559284488458348939045758043926224190411 - 9032592835008116887632277592659328261674834280256501447004924318571114141965964476914120111230631161295977199644609153709655464229007131915020410183467445671346869642324212320698250435929834653709588336121417751196149352092442433009286184109214156250118901878087188644084524303770727318725330867823856508681200611527001652630527789080640672014469229151377826435290743908240521330515893666787532316163403631146322943464063277952695617447972839242505346588316375340428018276844200218620448059113604497278847503805723928192575368063313392317910671196375215871523023355810586895939484883461383314703432878411398902024933 + 18090800909164343783820713260649917018853562125556006355569678220694265736086343655401496842546540248475929157982922507073914449618646835022051519418044367775577955254106939589369350866590409686759621763894611031031231666984177956641188841331297054519300096014574095365697010711607547934217711522008386027323212351104928295937221428335344882054465439539824277211929903656711092105141935747442232046741574749339235020049947145006027517437741954607239017282629321556503166999027442309705675801517538561169701007749684808926533509779841461808597426571258542378187448968750306292880366296549325537065422826795059419938901 - 11347043228552189126783966873256633685360248454560780983000776163795166475555104195812631699391419353881730748316945500343127565387142344796720571590104888276250149538162514224675180652609133478605946464339227579232738712336696311824808962885356513032228206589325077765429409748982138501155093108002552219233525393767061976549734836201424084711602394334279531101411841541899105771043557181738697197187245050137823889147125414101521541031381385151847288515542132404112300902893694074731328555380081385276282018816921354235562315840807612561110133708199855605611348279944218597035703919008963547273286937593046672927256 + 1657983112613521010072610196069927573319585377518929585743092250719643967566868666573264025174124753358757851300528974083071679832550908684081449101009985430799923274378592944683663227071067558118690783384451529069183538515719486584213613757050784273504961076868480069786818167724922627691099677238088886473117875216232628971898119493717206147523825339611946461884865263162704764750119688584146074496484493662339205343955920708135139964623297483397763216709655627678322539548589875205191705062633907405629733455299892106469238168362203947195713693573010902911619035604777063628193979109041415219559132819079134619832 - 6302473949091612294927818547641284836759637741509004853737205213327512981856601485069057073961194774933576764907315029850839218216726870098620981304150467201054933601729948936647749641711638199943111105116707415390320222376912973354567180164911712759646516768779962114403793416452239180131433404869575936016164049027263335091699335261927043575748587352774464205134816606815317231725358937255418181237599749486292389706364676528067496793656793425619608843214592861771467294823540283777081770983974257453676713795473146866948255637709833575805764890626857578180269357942474913383756174544251615461849275169740934911337 + 10568560484543876568579944732702535824701966665627950322714723385460504213849992546104843271549600478000543219633905174322671081858160555048522211666033819578508492815432535884568737603856164192137791100217059838569372719116789719529971890908110582736707397119459933864523256336645511875046706000587649199833746180983020861341755436456773302060701203556655306903781090423414594913710725044877077323422523970299896213032185694004147346782436761511369308732630879036314122103418579485675678262968383370291538907701711330218199020544558400106802366671624768079542664798248915811816225195745129533412023504893278031499307 - 16501528535686746297428143176594913778179124724473033667871860597810100155062894027807659437856351600958385826479295063731719965378843544293852447289187938963814631358929264995958551915124218739264824583004574924297832816535420851830708596872498511202113811222717775061687410542711939759467470445666738906869503723189478790456777490643410223620724570987271978791776185461632127473760919939228825442519792808183640931629930686521549061856530839058211473643126925470813715659268853698654790092938567653161643704410499093113922844243483067696044498872843455508614604163235884237818257105103805351670862295131960174594387 + 4093233563807039708954389738467374442107929745589986385863734443260918097233453824124051203357827765377917710899195249708415579593916934510475562962568327328885304174023764755648887166096590321575000397195031846036543109585169794315887263534892866280562885986489844175609458536820614699048856995061252784072428972489556596249693342717169095927534606000441394531076052938994610235673372071187150166229444079066318557359634865512014525466576947250070542402218308253849724675478602590510220115284441052979407504541344477967425231525005389353689091902801372308226468111498486817205857496311045976645666551095002071029879 - 11841256829170642018222099612969060995932314056897813577394463721725532263261321340030226732482761827446285787863195136860564477946361561770940225973833028404465628744534479846248851521519469253149754820437883252031763269421614753796044883842515877518316415493984459037568983731605829778228097204279147142034273363773695373696347397225066754397547352083621783810627135142282372026564869201572421496421893900379959693338124940737921471656242361028753261196347093230213004812366504875570351729712852251335697450003583577809689402434103631197437650896830248018606189750933789316916491191474402185425104039908333750870812 + 23845626795314566673050283813627294553781275585216152130111727555980306447740336249805274472047256060986026628932782969796246573572374041281467515608450567652305994932177044076979229248920216036748073313105933558410287734315483803830762553538697847083130726121919228286217971036295853522637893545538893338014882793906805684606338467623664389303011724368642808076347591367302454667869489458343388825962306181072253574979144173518284541347469503240787421736941840756905253649419004240282423942722153104390841144676988303679156227456352191970802978133927235321771248969306280166307296730061954925487335159713856592476784 - 9881244148572502143180811867077458078034106158966786568096603266757822708306816705751948900224982422287302507635235293557531945901327499494799139322317129134302645620184050834452791372803332964677172187602226577570089294084409539672742695817946167810295667081408374819955685032417997285658060973439537483669360262177381129157227475472667118184933332759720675416250970047015620938550836874111027724235136824916559942060635783644672548121708188153911103062026010354671027552077540127054143136531280449160853736514396992414842962705470532048034788400126311431735210396614349157473772567465285921473941655750033172548436 + 15821878721221243644459842039292143811825236125786219521891283183635949629440296398411064279000818244704493558916155176267032126431077753845120231706858332077865675856411976256390252689587042007607979551853007193886525155850657018380278886446095411998107978491167218423468601665899973943941011436106007872420562631811715166315844043945605111031662235170996253019492646371696244143037856431025989336897345761692992769436975364594152856564241145138100085861497188931306714136677941820702085441751750655327829102828069406412535665060491168765171134433523704847567419069723762753831873894775103732611179009257222295279845 - 15307693413274875515452904000466293907855554139289781745459837394145663687874358882450014983209819924117441238558468669947071795828224432536653356220076247657070786631946311244521466454945492148630874893657916889861688643069416097533824611921806177221907553306570866988564421231216091011915554305237855578471840671110400434173784289213501382971483022419693807506737823141358998425478370210331092707801523285159602865936317041198290488769545560843795809006733922899308529439586164164983546339438570790251389961417086595266969607096403407544468173477682800756481052136463207299061562336932671839549362046540983906827872 + 28131356830273900835953735804298691039458366905225983614532557185269903995813156294160903914599412030866681166319359586020388453292945343888272770171821427886605553352480330728740736378960089575881065246577423659859933335788792926283003110075102030580395777409047502075973553064128092032107681228942603550181678492594687770478660033953641109893240905754680844069337130889668308919798553847094830327527615157601718712705094388091739616565513415411560257769438021736346590137682476500691636931411729898190052119097143966921110647004913695916856907473462491127348305513698244255890903776152480418737513501091217261934459 - 8140100554002972735777388071889275646291082466551346266848801225290562510528082903917551146856058086862134544806657282704259227029172642052743341040163970699855218110649537843306363911056027626495185413302542336614875941901610249815180635379110280952814608677811783699119756996620279808117486591760547908817845367448534634597977091625479681384510343115462814372164118313144768243866178915991704419472239891652340925224633274861604754159352545084651034308215505267192436020310625802088636239356078317719887328987987144419530424691935850951011895849625031010151665821720142958823489845664912518103174132972959308964004 + 5423238782564978797363981918554970892659374349326790053202800435082748090398848867152815465948470501702519038372123861372568746469750984288562623780697694166166699454965193706835036979930846706492235415888891592398251810294571994825594918102727675174894636156465218372840422444945784261751534916202670477010111028477372968232501956040837925849994498288777492197455570170676062428369662631671049586644446409447326980626807249791069498277294983217292884916528369116504033193852432075137862173607005107425820655136224192366536335891756612087612640670593149584388194153240796199995645109209186348201364887260138533174913 - 88752691808989476841651515227455340418067241793928248603650251702920531237867668008558031020185933038897756615112084515585832382299182475258315593663135594887202218473342122874066389895594856144414740941494444366904091344604371079743460291435500091985902803372539318230219990194574040173076987848531503887719179036410411083418520676517400398005369313049928403460787718094284662095316835808831907248394083143134779806662458276590682462302252174668556057132600901547339060340914260407702978873340922663402165990637587274880835481416142523928687546453439484534631977997923128555565552024273969588970062007171876602384 + 17771814958478819035273226728575596729940039510943282495176138868882523908700568531877317324354678567426537481667637419972958389564614139363881837258543061960855942838261189174481382230034060116251651552415872140184363180373543607324317560053030609257445325704386095623821915282169769107377745097403412912715326794550820709977107102013782850722087351369929988544133332894269907878616163838172826984802607747292716432755533769385305053882621463869107163574924142647458357683588675204679647013398421261360054374591327264521618105337038495292585246706137716670991340740333978389350540734307053286967104374613180379492460 - 1792058127797590610361536118164113085201960344576962636086220746914390006301283934871162942611553019651541106566256060765012789900322236890000535367411295403094557374223177768254484388773790665713008502931886657523240544443573732749046219202983747179507148631328746030841327284388745313819892698356767546349017145730349723935819671952675720432631406410605099880202524964640618350028002027632470002271364644736395981043192390531698564309209863964150014364246050227676625059843297614301099512147409777757937183390281755416790124546768179411348156067525566239291953575398911111428029636481493761860593635044307495081855 + 14198505390946891777787505427342412585828133346516153679663911916072335088270436817202500424681300800465920079039502086063477786205990501661780334370527784889763655500600200902850205335785323755943785274827265987590364098000249801891483364474702157026855523258439189287903852362417793867273480130484920988738083752435187719905149619374303216699524780570253663870570520770701143111940424848102223682282147215282557846103653906620403940627602452431799666698097421721816540121661131224204275429237154357653238330206271749786918278740379249102427497806879812672980346112618653989531927611392933847965917437337432887572709 - 17810927600443070764148547128829627885100922721994775414761809426745301615751499652839375160494393106460904064030498263900567009477178994376797669668145164889277543115116254409886636737009835165367225728147219263217781759948810995731988399116430237044463949265301320270052509074207266401379753178890995636431745385608414734021304826684572414490435120964041189938066078480366916381283420182004548591740689276345058216362552899353521163613879242019559664984602764865591735559597860562203909952212820892701097372799257581892696180180394734584976289709696848913573175492609204141393071411451677408167851292540640737246324 + 26734054447079001826084344919987400593502181076890033250386527310485165394383278140133179270377949205433773716291547482564118045949952346549199803879098133083827954248353089985278770031667852233068904011675008162630245111880060621571358180785898591528280021793768690004715020913582528119255982983373606144361172696374974191714021431943290354902581883623192472487001623048730547725375845121804484755120452309870690336020221894905422464524208964310559616000515790088017957779679418276330377993868957588734192180330537910156353279277507076514256771316055042981320072042248919585002004313879522993507774916372213204311621 - 14134682361880120264537310923457730741208837602660419522179345392831657023772700931448221913860407407859908536458563247575327353284686360762308648536681963965942306255963922198485435060176804953930958452205915783204998277006685387905916992617361708357222488951118316226827002832141507098936090190695348428479111936801382899826098649966788402837327448736792421126211652269556764274302799192040880542007427290879258563438267685970433353307974447326216107423019117572387632297917789269689177353313440409577030605664492062744361053939759193734912028367250902376960464059583515308413896189534865972306334838589476002588526 + 21794077230977781318879278827434818662410703172644902360550681554030816048026348235195059492068454992268326154564523497771097894536697808205856503516010117211945554135980716463745870546125763388873144395436574544885939845811918870363856337546144608604095909275664479665404656102480772848837024981923152353009641483190740046396360112969834253203400070317289414171172254123463301014426101120427660065862282944213588202033388795105870517093918842926863355354937618758487784150001723238541497664832099875268051061625242279693442103626493704881541826298339272571796323592520591770093236908643202749008872305667072589907959 - 2758343687481432853409950623245808216096059348409469675852720013355030349536310070668393005271771965356985127800300800810798320038719714995761206727906246724557484774515215023155876879022260814607505501577935911360665638140798763305260227445866861952047092261505573721578664164726274362226073623168235127963632419862998466820815098327674166991154026524079735923091295058258582533828771476327855501534353597810882758242863386091177349777817349338852109200256683917974151544419515356053526981885623700150424818431144701737059982726802573772689039926848754707694262862138668703225533466809839160358592695401106911641271 + 7436213471936752273759921957007738598813134719462184639797691555617963194573085798408500973353448989047530040930687812180881335797610751271484072682543374551839808696797025245887660409032074387259508832724532205803880980841095954915829760153162802736294400907937876619228595104269782125237926868069078064554182632883236185889164394721498515070189661423724791766036272233626853670943563295300946257028936603357445452583991762713343176966735989875419867147124806550976024773607812086833100350139412702319050433614719610043565900349249072398900524344334953009915161882715679815833929618289097830014486681439849446090857 - 1710522522552862100748757676935281077021837042683212157972389281482301542238490614188704145764155125336537599289330022179180296568379300995487805842499601844422671686223477784955933955129175330885058055787784492722080157700117935431338720514520463497671625013689657513063443858472619857206930173311495829666818804007145818219719518231383481230025046591339700826455304539606206979521569546358821881700372221690808485681656093129272937012028582739218823372987305345765508962531191776460731029261457693053748855702343149503340767780220578552842267349533110257945065359684269938722826332412121043878407619359089977823664 + 508788810919206664828447776909918878277182603423421193022040923196501931089475056488203736466640676170753939951308598248482212082035106804520463729255512625457443022915873125435771798704704570678554941385493272594700770680338124718751288747538092408848436269052045164907677409229401530227289793711105437885615386184261565562778198342151900296988552091115616423641310394220508583435821731901263911670168275135462379918685672116960565054210575988090095619309460216552334772177058104191103924199108797392381599820857313944342697749567088250605990646732910424209614994972571934875739030686184740336774431305160765677954 - 9873295563136682692374222714412280445429125651309530175981180165302984507745456164661853178334676493351981969255363080564043245448248266755035832165021171162853382400429712159451504819876017199568012267455835042162646290950859379119685241152159064366238719004404178887194380995224658439499843372627634746513977786617038705545579343061160450126776175873483837827347586102506443818073856198187631500323735447020882577209611652101237717331902514413492911730793582104012388426657598756320927001435210989717929373079481299466101131841846756655782179512149550043807431098979821061410127477723206397855682222696227327828047 + 27719205632341703744195292375509111080687674420309702486662383005715512291313066592496634762552229005770636083486100475521331366436677974313119369269213422505085931047832081167194921173743390424289092195659555709910222279291662175958514781813581690197988900831916339989358037833949850072421784521924665587115238835539112927197830835843138563936211488884581162972628551559500257983255278970932018699541143009498223113497319543117853829783916457310338519347526578044061394002675837557077599029295009337439410439797616184450484640805622639104909604134948194925717742254556062628198371168964261423367759999816444410326552 - 10991164124558732061457941953208086910210436125143107002403513119553977956322084114519997216004471513299341408495811376951236001044643101809730152284478971910986137877612067694485052571676470550667592936424466334728387568103318895970814388501134954849386311050770942891855639538529850273906358641271024802268407860172720960527092048041460129967250536975573591895801635858163726634705011902741141545209621829625992685908142186016052082132084674840388004623214363479640255531715953197767301701618390942474958828974238291534921620464626141278181858447256262538050301588769195951961669807322573150612223740397947305738383 + 26686415092997716070248728654768312974851517196642345100235363108557101412065409968250282791770205967141585845688080399895322024282924815593791686942783615604111298418902356849806113234063169959978510244082150641007420857007297071220351667502212617685000685948247837637417920729904898520309209795704902013426740755446784838743920306813511479113451024641632272919497713404792832589481257309107206545412392639058053790585144472902803700485841744222894053926343509306560297157521288724441490723052438748743209432046660919434711470149591879674998579018992610245396105822970910122063036488604003578063497835867709227994411 - 15541230537700340460390219428784130600839229507702727822536274504172195996672935078404195876503540849304310207488626030257580297036628596664164684996211870478518935046477664151818460960643665361908450714901736229944182926462461546884449173582576853818104962108753607353109942370742919034106641876059709235465974000513427666138836632090112892615985350538520349561285257765495979673483488765378837572287074925630057405612587785180531925848828846054321359344525220941845650448303114140108808404635654243149391333947517175666179722379085911100048642431640736162284057889326786232260363701149135541486365426105499384004 + 18969760317299834739976601625083978855879440919933485543341316599281676459283987688039653266173056655413964929717781030884541327546352032792424608420526797417441706088810506281482359962654455701324475371829517559367864414970299955815089739321916079768686585784243519704429340118811889603484022196135011506700233216616011142119972551132562934227686313861982094504724348434942299033597524252996035932248418136138728408911729442365614205977059466430558995966888256549034778674616351879969360201946756748984642007342745209455585134785959613275492125649387959782643102570598918887394043381460747162288974447143784707093002 - 8057116629011902540163428689460660635382092889811899486892659306792931134996932874588451293869299204205047501202406269004461287756312370798553950768510711831428495791257747719963516848008077021738180828282713455436553478226780269482224390181676028875653926414480048607901462193255618585237279892427426325006830031928644404610523047407620864501369438894592264131594604092446906892243495502453737552094779696876969276470203989653574573467018882412079778270996813662540911953229879882394127529432717240987330582258737368325344043658236044578513851303862662310484440124894434585424762565604518087930127961366048770958932 + 8674402682009882413991236438770688942321254751383663306079241649741753575169206895215437719348603674136532067901485313345126299623623438505159257810170589000491290711403123386973370842970489440814851123851401591804484043032792662829433409056339105252481990425762786596473623567996372969674206790731350515491072129738722274488960181913607051450614465078463013620674036764510099803146311652977336816488794070259110896540761299930554802369478497606987289374809996251286572149448975360820946217758546532356761545023263903253629417533982100759647695498700796907796283850773453314998199893071505901580227688074177153428275 - 4958096587976495283222543442537841038153238891484218232797946315796531859530993932815429621692656801054143204127822600478490027767572569322899275700033291790903791240213185744928308889718168033723867058333189407257874018662741116353746575041659249686040068901269320590924379269725543329039566522094050596269207007915880872085808712797452905534365569395894574175566877185402598621403497390507396411219685296519104212258546005204580940673676477120792697739681239358487076615309755887689361013485266103562280793182223404163101462193732077049658823724575050395400491433526011350397895988349899614953557108922616000240107 + 5089765701021515857498427414491723392755684288793529902647249101831792224381168838190574994918404696019768157128224581732817170617545213087052984066982797227817015526060034545017391575958735197622779025105432782697622605007067480476569865528909894872582934692039181559396164508801923137131488517479725327607621139919650949870855339790152658676897993481493022486670203137319833053556796325121950229861636870702319001517615884076798674094687883914142602860545020973359465479023524235029160731986779856263562205089807482810604647460385554527792307151680852101487052202585660206340707950756187170700178371341986251127270 - 7225143153825754887603823973009778418157010970098129054127811162928335524652980884398590518595464154584991322522277665569647151496431518984046615873844213984742626501749537535838289204426623142474366174345315704420942667398669084541548653123618451796066309657652020567560852825723329290381527287640920471651585239726209259499915360994108701509006572298027869557342190539088657754613588812646044696832342031378402250561001692089460222141140079136132541623397118553183543706012703592721134248029229284471670883773565772022730036554120858790101852861761021851610704346691476377118207034087782452741697897088155218411967 + 13204267206481364993520977406349215774248316687237455355681475630339729782321295324770147829517157961666801378599124986277392373727140375090566147350927677200141080307464935521076960751249047368879618398257935224507193040722962695354984803955315958813689844182362623836217628333731367879573387373023608486249611818287708963619274932714667380039664438338501366384501566735321773434065178979375331955000012597923448348539158901780122819010287883698679804704555516615635246845649469133063316661166436491450332299266683871914324346802195967852966893906044860240118296199994728342074061833266417452487987146184803583386682 - 15294374456246565844391052623641369255537838630637392907241890731574169490992479496029280842285573949029523877385377648954314335794446901571466145324189282150646537005842449804245494439088687693750151867252932839815036808689741663457227468592746790766941463670741706894274924854218532986565945207857883014085537430604648012868078273673367746711512998086697830701755279970113556422452945456157244866827946017096187201793837445705639083180917349861667960535579525847880037477133366887487927452883828345343678423668700039123823529980284697996284675289285750986850314483219187851080480913842335948362913520646172233339804 + 25757109580506839798385483677708278831427194457576562128308473432438017896449475667685514175710054137050433056101740935947073489231409189251935980677033188735923625150329348490825650886435290154966488827912498180630710199143401881978610562559163884856543484007729818282993235681447170996627403016445895505743780100348409059399373785796943209197147790509100106653700468377542049992824149450782003979401849297586402967828149616339552990885140056880057869471198649872469203240705510832519959084375966412366205921817964418327746661097637744789158976290691592680388701276793186423984476758155810688580420529368796740037538 - 1725132152233070730712526009622327162882029240108093029950585319758336540167350374453112160760198899719984088180881319557646720843525263569908706471869994778178068518386267616738240443389143122419489613812851212592617688868653201147535735474868077302844737256413254933608579121573395211807307365305932514688998580419037927322054043025820947270707910372827320325861342574556367839805060460601834970197981891907982755276249234377478432248373582291943535785209550576282082304787130730903194468257479000516430320837123844439324217653687763761549274873781519110132994263960979127569913890442646804329526515780506402623272 + 21632746214027801134683906035061273792107534291082853921494467297559613477106113811637762254292461093746944929100745021688031083575195810487104088390568299609234676124267986197473174802721836496510070899162847886525985403369939511637926717703584593061744731297424620354670759784164244260632174295830488150140841111495422959820642733508747385350513418801848009852331466537171030307122852503321525325513989707495834930288483507139652450464907183730911850132606636500907169597773343679730229496909966252850318607217271543049112583223139940126320387335396056961643143825613034312658572646688367527781290134136209234011275 - 17241238357491082391696366281073936194822117434506117938999622682813126932139798245669844604281104557186809499572213711576731608827951611768240581749523782632136634939681248262471528574522813199362906189162882968252493118345926116487460188160728919403904155372780689611787956718269082998481529694487177059417175406984112748845416865660982357809339456448563233340184214236874671880609942363514688249504550071798065179294743464519896822505457207230797182283017176625365105468702343048200019391501387782892073092197285855274591328827846505293885930713579372845975639681183348960338677674853577479108850671841931083176883 + 1673305327487666770741389165425329105954111982336854600582828091820786534064854566648534222246405309406692311787887771173678585292222899573677493521411882016208118792019557927508688608661307680348618804340534950939887552648586526025772086909781566312454360496178595532047842050408958879123745547608889512676260548797117840372371311270880236606225983142538408514205070643719538539289633247509238049736670098953346267266900155068179975843679429599210744779062198180658876725645817965855810077252563111442730061599489604089006947222267214795046495701848744571464149632683454930800502223709313517716321716765543837604165 - 7253060828278728462322562897288759544662174792790563403832254182401176389591784691037782970131351045699001830004924889036646030024553971497934089385728403503247457227321951897481852193516038707733401010270139616329586758946655986758078098178399976142278615392166745934725697443351599961142451649160945732711350884648087912220961641950977786625058738488610963023989915877837704631009641828024343292878090608328839327172301706404856523523146011775801748979553726624777297182085629433364154874388170061335465836132065364634772488050076350388931013017587723583238427603522022128975370950749328488211646775109487115977687 + 13892883204173357331776473763751700813641324889456326303784956479107878696642630426848911472483725955307460218067096505948926051719826045196306107156518868422682325165899607987577614915159646425082468637835229180352287053452242190436091576343219569534591025881587184706629411999871253583767708782594018242159823269231395080247109801244440753021103343469200072669725740091679265129443758309159418770352814298546256584734818828988073805377408075386063467086289736081369750969618639945670787825295913854134064361334312026051398639474116898279240112387278472860618654051570923978818398192182408119474934277517485324582085 - 17205321057365319130320519533445840331519097577223166979192221594880431698099374490250556551233306285975438124708340165104704395712861234085618101407311015173016463867404072078090079165961234125556396461746700854997116684619244244359939574998936650293348547822753704037709777149848285275700172634850616237415390875349597395821943718282828390888722961498278667947369252007057856522205234276891237293331492618169830387245680589914238231506275665015677940674512055069749108198941137452066162501770919190494591875194233378969145062397440028224289821718161418004708873356001374173697263952321580492430181672000080671080510 + 25875769204820898185111152876146961110385441998126374200940526803672076838188849542686309778386957409435929657358510730459387216313829999621746831288825216311283904512716410314463918088529085619444995911415590156490421494819978230758275288396959646583058310328288066636334760146146072421093465678652900343488068067348143863304120515007511465411862479834307473486209126609055958663602910473480422139584270357927009243905719502725241798286959425592129956969338255283183232472407307932320833483817166142839638099268314169651218769381066477596581101247306481700832153683757511603531867995389418481991510571455851498699580 - 17895915128822177777820875058590811964045928874091543070899996769012244299673763445993408177342744342247348906513481615922551429551860663756835213212298264888679360136911462905549199621530286361070760621581402576240027720236002088016661009782403389956840235079858969648915607866922296395948839145966377229930288156839850686277404637292836740278736267464994582523324886981005049146133964233455450274034012263613604809389345944686859851867622508395826240910923303622626284957704379239665128658977066082313170985571699017597578053903212495646685917384173410017854459941544761634049238427188131857830615874416721803743764 + 8159625383020010085460928624672455222762216695221168889895697166787453282942035260524829173033524166552401457383870335081958036470876827603571946544678599579313654749996649099035494198916797127440981179387905238041845962556434583289636824769786626310671882646077674449644437639142757567177225173524393454295978269602651905590563599922091876710792689365508901008475478135647023353889166898929030367716402977493559577230561715388641114089417800230531445154682150686844757708195982008564772222727939805258854709363208110442263789411917644768252866854314305321238203896548900401342777658019554096697273071973420992513935 - 15726709151589283930538597447891234809712382063628776720125746686328470781088435780158935129678317234462441133558346477669665536915988506255962857753191323726300989642331229971625777432073001165405104633107371885692277135528658674397428509656594426511223483600280448670993426133320168801037037126667296972822461338519176462584676682837257309950348398946877296212103090720673272344052840588543815193310111868838828591315480643127151079404768300179660275275403506871666717413453045948639605193803094549180757131696284727001499115652863104537367926630772269836000452652324008151355111511807548982538197346253758992951389 + 2742064987846231990260358954059594800989449637001458210383982045761072396819350414685277885018534811288449996947049077998210354053628451528906634506745936850571439401446138094225033432908859883570831821918112766790872301817719068794420283357185723541775749565202536966836284300778880418748125353641820823015405018790411902696815632674490859966617074183671661655588158414334168660078408203773277822739950546525219940523469462311359963089584285624773204110804768406576586277451012366189462940702264274856194474903133662067950938188168423159891744930432343638706691519612191747382167834078408986489733234310437464881920 - 13249628176081786119213123854313419204770077068138560079740713262601631264087371682758492399702755234495759341623334755083813006275509882857457668152541519563162541255865970123928838274735489308104141396554495442421992604268459096292344770400647667015990573871377839942628366560214883855695289365058857876600893954275723670589265896063381768456766530548387464012181456620329639834874937041446700949305149024350719351794242313075861364723860106051294039138533185619400446374499533193646576607121898591903898998844692790710494879710197219226338318822470683407286444805772715845829787942918473261526380352788548724724770 + 1913409351827867679037796184905785915908124555735930823149865482603614912655541045130032570206966730765178430959089424027465027119510353308503800753330869084141442488359611670471169922692523672565415111838197190053311196180745846358332887168203900167679955815372800788887618461360434635988431569203966912304096204328628634168313276713529345372753065520589994403616534039689152259759313419778057632075347547547768030851403343435045149391786072817608211742354386816186931033473773549241186059838387339784237568890865494457496446120640075147321659986841520635969697112516844447365773002284232363039470261286617662346292 - 7934075326009858921284669515694346515800167783376176585361687203257511192788296436350430247970270210224656075408997654660302734646863204037564110134304782025057986956829541905521298051066020624465121817577705479962943033880544439778830358510465050528685373169454173135932214072060134750354060823900918292997448666940579839748217983931764592269555325432754740438816534631738746020035323896069556202552094507712955357596001115682365046590538288698069951281555185621235939826906972972804276887336279659414563780738421945940120182878341767447344042191595009143541211731593557394353584801836797019687964319059616449698351 + 28070453961694358972526528835928015522673096055364256586213289631815270313893487938396735776576991743310275870224662901006446100187742791430145043024634449563212985661112171384767283083787748032648742494965694908783970399962343523826911512911698038579368567010758483721095382723455920574848267273754324910640888442701574852321759670328228710144996925248725469051823154026353215830140977699282642150612136557128578403954804322778172692913627531932547871466973714594255072356033365024616776271991453049023053708290505416356521792658314314134973344359113336974983905242086627552457727084565288564426792052781532011121966 - 17405280689506465218467611720196402266866955548565911564981618994580661200278041324635588475186511900855725136033636226929545639058073360257108466002296441375648628338680211183618511486734395186444435391298917535350724981911256252088360339197953566017932747101246760560021390921971393813279858471267045823908896686431817593199102979913324717403389540443033447573277696574148729235442693602171524490059919299961775671526471131961079634079908166203237340835099087346188420650888820810246089325262174426402259327164036377377131631572437843572338208842287298331226036461776282341222216258343210383040048751512359010792836 + 26407483158219995090755179394223486687627635085690815774058749081782772505430605548178759722277161454967444700733773312094670270881502027089620847147191815493360619187245397372187946990867125284841311520424712008682080017365708050869392984247747544608918139028356597815822413065872044719194555353272171848147368071510979643621344673330370582540212627271108007924393236361613950500011465351419854742471640620132152445948958825896936889108869930438788857328531651920044903249364431721596753051716594261190374243621889389274029399921517629742858326448056918638006202426940535402513736915064998072166364963417984266123597 - 14185259165027055854943434353862114023653521792357185861703455280766161600605747563518682873302997061777510786468246121973566388701223226062721695097208123231907464616657462237406496517861139366808878353842090697129829280436835212144801750628638957365778764036017594356664132433731722725121385191016750742909009475662859701177198951109533544458332587884218165250581325809279954063214994119142175835897149463320763777760995469464674454506347323160840971474683365020031958035775377228202669288481058588898671287849337636354023133808822263437827022686566651689399495968403471356308753325493663303623550209139495437598722 + 9362629621925283822429477207240729974205981975294208610224125768641691113057587749021176139518484354189756566727966377862587728291417907542055694094138746264836845352057601657553950755547214781697405805922591832464235253004452768171760277201983752647897099299686417369013549486996115392392654606296989070661249695194458100164432218744575064395440638228719809449070057731341871919992882629196887031669401835602824003847576235396501594556897306508699936329256640093418421552368223212395887595121898586191240017561480488148426133370799742780418892777667850996109007417429033049308725355560882212612404271918341249773146 - 15844875630407823965169243660979055124621256995323584972218061439138211073135095114491088763818848555388753797719895962152577603990528514331636893715029425838294555330243383920808313772566766251274483510429604707305009895345162986399341599847230964798208637234305440012940152403532554373628831285660636092350888394038786467501405923008099249715294113755725963825370222798697938809119608300788403959661439380926676132664340804863679831574814690821808252572457285129294708092173762713833742962690429493974570213144351911842594093769572214053617137653878344301620972782813792298645431277988409625900680724663250609418681 + 14051104923134877141069538863122061737968718790433511626117087312941340120235400858483412183982733386563832054602987073501828019276462118426824125400863290729105246105884720165708728499277291941383318062195463800824337933817813830396976092912801299737617270917041746266758684877632860529230085899724542508495002612011988369459966239255513171599347216765115055812298624171065099135888661248790765325726056475831951880961700269964663498109189595754034032125906697696984543675751500405278237822343639811126531864069912412436505157518090746284346501633922775012985063053406478295084978521192917723543369057650229151487159 - 854272451270847329282520020820741778274264840344700158964742301358115216357747919821105854732950692375788863257654862441881779796417939449448978192287197478848936453330067411339062922359748320786091035449099840368245575169467171715629904817806665225430968967697985379744751087429855713143165762091760215461447558012882740882882725693472932204539964333333403193437945602932289969838245045618208209205705441314266421932502089003950156600384362191674274127257299679972263681364563926015168528995038942232841162752675536479745530919437715824967113736111709477567646914478284702775534831474669489019428906011345660604340 + 13525954809898867435657673746623213877037142634288809516327006113307003566409223623503967800189851600622296577141063581516222648115681894028677309682419804229821381599339884321847318585991288614140383751808433616921257335764838889700505296819375713631979802512305829294720964122163531376069466889825425267968858576801279657434799280591634532816439751105024445273910232063204210789619798020894774776452564794506610655057211797127004026761910619186703710964420245961748520512544996399909733067835797512670728485668679884838714196597189028802367412361937920516360068727689040748756624354912123674150935446678874850894517 - 11501510589466997284780121051948515402453927089011171802835427318789553181247752346948259822332296369921497596443025187976629303922211903664315389722600068642661376720925740117060850760327046875358167626128162516874657511626335106456721881472070821323763560711189353615250500171660669402159347570728674811773469175965135135712563457658274997244495545742685871925779336199343472771766099152237715082499649978199249313565925106008811628227111703920236312288227343643008342473191763865371205542302871935225680910549662413574275221143906148492568232185425749288435423251914699346068962788309694117721149354461546375329968 + 26308959254775163491831717474719506957225054197502112775820867239457063312642549558555801157593214133063881995870411989597644176183168153379903195584799929823988236255563943568210988098648123437524538862530536629954178067441587242751262411313872805524051297888341638393030880064424082963170867887599634895245716344469906881314603699350536682576171522857526164492937244045967138230626807873518058329264957171070374095748497582883816314276592799137321741395565892523696477933915197215915385369774620380759652661711122625884090318560258792265919641789373303281587579603002138320209167548080278935615896540355993166504176 - 16353578737168492938488132433667931648279957031504249058064605954048944574831016705280924263484620843848966312537637430826800959097305908120777584451476940176313839221232438815167801035201286934511842106207919790417908999060299169999762839517249685866403612737575481740926108226042388093634455865346712099647539740673153796530507271832634965600874862168541089423886666720264593712583788341646444498684328210165784177550928137621902506004400489487626337499735775635500520430318561963947908732095012877745920507678637878007095971255658333389196341545247247455632457293566725002520477723087123730588053573893954040878416 + 4849852686630742447955090161565145347222536829143448567296096017521224010821341964520376837463764319597140252436764163870165785004313775201118357441567225048055556416610990129679879213567817994421910696145992797039993861427481908732978107350648417251238233591220738962530899581969063510891154569895485557196070359614444931289342375914008437057668233087074747663101855234802114805752603996129700113142258340567324690365187154892350656274533186962075414580225705890991165369296954193700172688223471637111340907694392036106931541374637068573384502721108463656228609352726343153001021328200712089131981449305065625762244 - 2719872341181884093730109300545779505710566775795619254825732149186980950808153586430133627251539366150170293171071350198889563838951638533072328431756292994373043899218648835153038390171656788106767642020331661797060219701168456681358683624427442938061567656851008240274485972120780057228355827791215565362488531129397380671618108104301365474790972078706726903074224839967333502798743512915930083783502177526939478921602470684898513067776644980192480831186648878230816515410828564557774387569944044287201030019526089745430583636636841979568056742156813453921545678286069346229909383052988136873914164391065564113217 + 8513639649066208475907720935109140254369114405442409903383001261446441135344740450280160189169164290058562377969539273836108815568332429594317641389379008961363461040673770044527239665803930241518482996516966548233444751569958216055219553926561759942288363188116231354366756285749429777616288416809044983295249928518055563251337275958325097933655988603035143923853881876088267059362810580851365154310791573149533482439351325887038386520441753373394723515705000173895305421229901548055883746941758285025934122156958495961510584970156838904976066233288170982255187489123117259395955415497102971408480861120109115513267 - 9209155142422338230853038677160954513707937443528078163546676215292150952588332166159555192785659716819464772914880130930548427590399294249736458287687604058984764489913408981054269026606390041324292248289889395355141120850756111404659894547636029776318090362573135529834794404847080154995665134594711568201815186499427404011192077063726482147859081020734185206759786486288112384230234842904207552278409354274943414211830290710785644547438980567378879740716834724030556874316433094916147975734063344429286318094486399171925639598313694414637701703509807396282421549025298286096661101654319878083265107758007768163440 + 22730237990338221819978627129668195882061214416569797378693951253279074900690966115078396114144547030505489564761749843467105480487379190422349608307948546928358233905190109135164525530056433950900126595022668228844158882605395507312840707577789361113817541307535601610678651799210547524084766248077114305840404499110786860128524639054223867816609478628762754655209550042716963719363345680636930475239378716667077769046712531351796010873225452559500639686184735927259025096124921149805879369421590054533173477438822551357169633480738104868104363972743774797561761404373211011826718484320257996265198977477337259470368 - 14800844649736204480517710066448833835961564331023168923436648671920300048089632685508217611192840074875996328776515842362530950791977694214963424338695028273795421778910695511638490079163094285664529452983908372033930188361137381071966355235451258608181344240686326901771652080916512995820598429839089851291451083870240592117340143813782970808749785461711648201806782510859777174363951062181886092591451313275403016005662118780424000315199108506279723762875891523680668121533636613909555779749933238429077493302386814012272865699365305133969541941732637390983068117321667162215559548170937471311757530854835648054075 + 7560806197216747543621052766287815215095362765715735028076315980746103781619399013147473113828236686898156780179009657527716734641460093618497480109006507970606839644902853541431076104646134883399233944244163726465651793773627492233569312018640568050012739630842939510237833968937947620120375251119642704364491236744908462394971301032045236080850600777722515178439162977986320135090463498507308997641988147376786287179908401072671837058766243686300989221209014938675651710764991964180147964903548478427346988928083868913686583579621699464929869462349907373616951755170519826874030706324677576268987068226189148872327 - 6263226005675144941634657361500840286311711655453810098179659017481284808766203560364268825201496715813328113770303311721727345304324159234629619255874614170374400521104805681844117213936306145491180402025088316274258272214229420216751904061901967367829275330471604535790925901281996005453208828374601603947600402913890668748265552163215559339808729517374095819587418073416532400094843008984366888298404185977803240340581114412854750174192280391741070283380748419266986531973008310384085444788469968155685839567629784859865903057191368808345548002318373796399901030943604618604302520552917786114033405829686889777245 + 11357595944191152969262269041565901330720086127179686720411277275882945106604230628004286438101732514320796035020931395601119097862954092593024828317988037881649507624179143734732575955531041499295282452513324527488782344844984673610066477313225190637131435429706306541644330477203672323848499806544509654510954473455604069723214125161543372926933959487348444442574206349832198832946740119209965218646048435693829183171266936992863178267501484513846724461312476666744675263741871183874467067209936704747387922544462983120380723529101718565327899638799064911655976702138246413415324528580424872673326810092074246690979 - 14174066485007787227625949636324021908411338263351424458722749144716947763292820883258667020093824581213107104171684003336560709210546405987781671560143532432689366024498471505439442693498203244031803802686855369126044459565014720163804176898307834891934613528033058845113124293251673791873850034114042757315940000763224370304434777776082774322649536602679046991788241187052476779567667767314234345544121985004059663755227486041663687106627345702007378265713785450120128046711970909385516388996485998579693852053595079335996076301626157397821773972494683751433007174041835056651736118709154777350987929604810053921648 + 3446556458094122481728367636606654260849410621238189736283548202143324796546405579547052786523672162200550135097201920098043528972184962100514879247943640193066065149349832084968365874805872635070920962758312793636819248347527644119115301617649186408120588916711589699372850886436021643149411125015614438335571179146816396278861761699296095340542836197829598144341869642657064583586125178787497489023778134711623232184118272018392040123262211114637269158520205979706942100525762530453157562869952804590066769629681473598084656371614251680765264548320695599653011064021038436811854533221160584496713942414778590479609 - 13686913303528753737937469679621899119707833114660171935404823584004647008867201036384766783263596637251184164985047239789379708703254531206681435887999316125649778570847907597597968507076432761036553229424074182093479474493669814750758050108640923945744318585387578874448078684789289806746123212113690137429391478007179275374911552835420436818907732972210420933434276059604923682196892875727401089583745556548094908106031558302496145890435086907137071353599442743669548096600205059958675220891682616731674447182324146894270896251572559856629783387647268912750249937398945769166083049564305776692833987461691513987283 + 18691248566811143906638996280458044801022788051860182070456474152502830540435036849049825164145690825228554243081907440457807455864620693606421195554896768385780852323405656282452005043273591527661426932641427832684076357797249602328257727860838966428699030258847825610521096609480731562787308713684562802491014778357853864894089796274103053063281138223767310111523434411338296926597909397178712534867430604448134282771998050932253101792214646149493209093206555244440001620909891393019551333355884921628211165217143823094311258363177030000724960329651434674458215138262146290375726526390710291036604292663990913594756 - 4961125396053754787084802312056556342352965724843747927199512252527607515306923384062794610374976738272070304053682767301999690404477483885652669192375861255485103847745139653804428752676068378175789778747851628020178679011688392006002707541350808224338588706279314466508305045806230321030545493483852615387326768606611097381141279008749644497586479340094540821170418792873501028017678397143703272069487204060753839787038949890556662423096180344851458233105906979413043878195067093396924316839923306739647594195300366077852886687258570561550619752287374017160141462834189867202694932903861348085924362381932882260493 + 10131059536285412651615775511475084982987322475690055767654534053658239683274941051478765687855012796126090087229318909702087098369679983604809354890436451580772957015313816491025000278106423999220850299096568718176501440569285925312974614762455197628016507079869828672297266324968173249234141187568832232149317810638621238815996723319019680345557467454714080602935433551355268795679653535029928473782143140200165182284446634054731884925020657041762074532235861422477578979785217156690813590264976414078458057309773905219669264433242071869611330273033821961776129054054166334172368429759401524381506182121357034607476 - 9745127852770381249125612514263455234194215212922599448258143385140958537094070465878662447726490262025201618001839273408962547279147915394516573619291167625625369620774981531442243702726736356675428008959502771125537899695983695204229085878628366595299523792338282294515370459351976419178632770247297004256237618105708934181858111932929619420191815233834847964379990957386422957468052509720454847553395569251944653382261776053587117576789962310033735581228581178247819442334361843849502666742582017256836765413114166086351658892446836089162479074625403314958362860975532190126581107023926386397604403649059265890406 + 8545091753965049845868726873705995413651163172426242998501540387976510863946959144295530408266866300380436665751402452186537624212289993251997293925114596737206797704343736178818090523390964095203057454115735396621497759982692758234156500125934128194478767222948856674215961247716452755694102684942846736224377353214243918529519644787546078722867060924565735547230875985496447660868285021363087561614463963411691339337837053540629884743358430148388880984823613765013331895400078533807553822905525870695866976109623615921667958772821096890552424248709620894995069940473466811362088112351980324996748624635834798786994 - 3504500444373815099130593228499253628000268696447580892275592133079790514896499310395288304584317665476821383126478106512254272174286276312218579185942206959277878660199707302433169886624499130281989028671948066228842723734774904021369560632349060569545715327943704961611447897176439650811260486828773734682640549396945986533836576177595154901040648177585087688622788324800910854800416636370333049584203798827953219499101376115512893843979492431055880571916266117339084339225647663474489369481808722195411366925736372337916999759078907287742796410534719211617973243783892854103664146716055675254928611796376929492673 + 7768084670936277662385430777357057792845552642261799734146502095327838716323303177435651134050020139662398099952050691307325480655918752365370144885295154364378727454310505783097337851485928431097810749173136831372185651681941451927239475236250275380575734339178754158140788886667221334169711705773417303476047877822954650509340637924554976227831536514336637364474410236741231642656918436233018508476055618969111338530332935954180054532866626291890003806610762387977906749801095383947009747445821709198694062910847004308693103402596822773581930158172152034337141273715677504948909944164431679706524608713461527008267 - 682668308432026922422820124765055006095009608820436176800876027316273339787428142394810746768535737492876087510192251242307170580944514144073006333166672522919814541138355575756039559176421933618892417286552445039001308808828768494356673979936177087561816355250853381721518476106017204891392443839228813133794131807962775456757112001121860516036810604740447288834085001402485505176623690822737937084359823052443752831129235966333600307247615680560026103649848028928155613848040652254450285632308638170546944399258754268694950474367179924121102521497510519594217874502294398295173715385914836898308648183271546533286 + 14747664682845191110680408892511705556399210539059029107383640096220651778233031306094029185116894257169328719807573923635395816738549224389689705581007314053498470815921901273749030578986174863497964143943978597411349329930746658717526743653594197182834470855029193956019532140495168368118854177928281407395451843927648317152141406890443905082591431712305877980746515609300084212245110351916542620470656090403480790497025896653975772578191852574031121341087978159474874911272442685627778940484202586553346282366751606814717415404896674957671357281300220300377616323239529049924723005588442313667398469983787131011819 - 7511478364428289366387664434396135626590458925629683466588287799489635287754868072063806135781887030951494384423905883851884129769882571837849047373521775062945426728734068203598595159998737784778293475934243534545457955457394842317276715007319780690583152728217943411495171259342903055348541750706913616699200638322819103250485510421914973380696111460599839845377551699152250115481474679545474162460910601551564533934605454616048437260775610517756237772728948352541917239605209637701297549399693077959496496668547390309153155332948162801164738797139077170183135848708536706705604379701978675558167844683680156383901 + 17074848291560752840254335669562192265018694977760629421204319670144078059800523593204646543025260534692597600646216808785994528110326825682123028293042480941342405743852640038099310669707328235277178624527166711484552488872290510749847931922216457964391303421394089447237503200969311990828764077996086117613535422878693598751891030176283996324301950914075215396674954911267070157899635154955384302443460077378644486329848141471508335317963054512314242092830479505220399615461913753072003902373233014299581203919184312410127587916307266402239039444108267115668596563740562569826494093517120065971644388847534978436590 - 16941125020485141899630053722697234321219720814879187243670350367763286231394451997966639266594959430125150735788476387446640698860104361364028622833599281658986795946623316222893474222781837241349178063901430285125495169515442286920304538426181498624601356519804251604834205288817795308154827691129796114513055758557495133626090878877152763077092546284801248148124607229802742379307143124729446339626006589977962256300745208026277695904381912628469234936414941461885181435100893397888487251956473303986328248422716462028095774809289497597971187550781248705578722073461354826658067035411410827496341136471683346684121 + 26321243934273546089919254540672359720611443546515081570225234361671510149413015460596023335964658137467883745462154917006173550030582689800903039333128560754249209861047934866226172946016562056007124439566863228942575685856491110685771094649974004713979406476074949507272137365816280172169484165508544110514310719260199510707658265701171900505646802763689935099258919616802242545313646837746210608118552484561820581622072532500041091535414001533129627298291595766014914171853673040020620281985576921695994121945826537039915753255923834257012816605116856043461197379651504666534337090010432931922332605899166655178523 - 16953707841818380685364077301676895153523229176681537337848071052612915167591654813619702798950045071255153122611316840310626524506408675274975967331860711641621464983905755479469346125637848233588857205510211773833593032344232712705581294073173156367260259701061897821417236504830994122033891269856535020095173486676790987799000603580766364467565664351903454501217684889249100840908991228390716562781367832086875614850297416374965114336581547987282932767316952677296489392571298683732706232104892736402924823799892031672541299532438098204543037144741463421387851595695021082329079800153926134678656655773855833604339 + 23792979574995423376598525365383170798730770655989879606423984313072814876289881660084092214520942645517375578421487911925607341705820452713518244218988018979579946069358904856917747008624372142652456253388230624908040642991071554816474644972280820363988266575982764135478327092775634509303906188743629774726748291962289206109196307746724481377160287497672184725475177773817112646291012915027138459867042480150093374892777523150084238405819406751363652320975677205409777717340978421937166528835196604104564907268496309937934729674107941708315411284420784525936453262508405484339153648953797039028799222027557070342572 - 7497579446656520823287788534068644227904444446491468089049829409866775066484350979479504379745020694910070968839105423037042964161382203681444291896247718798291392752979191435082713989394325057341958454292360864598752554732306648147854680472421425762636492841966335349832006547163612516278724343532789545918833524236635119290392085774139290717642692103184529150734844549009105544484291540737620640213261051139541839272119527517701335407321772594139257832097289028060365859526408451289926933371609208261506339839881689335934357868772740342878775661058771603223247503831178408220495304788395386797846385344331278356539 + 28644416302512966158203927181058380383583068421855800315023142841341328652811413159054918282342125367827645375174288045232865821399852237192248568731777273398360807548360441984469474227650759951864843571748998684945144868051948975898650513957135910680828252733035564893527770591939044091288912538965012097866704548467656253708352669315864698927232814861099082599105388094818657743675325483207828783653466488215221783353012050722567207882351772942680284794162333169851976007750574839736285257794450577562977046794642173716798042557607731993297844385754978333635422870798080138144616589343332300198994332121316001564434 - 10406944896891760926228930092066487723482856787807298373288471372698982927961722327837106533345328377086051177472782145101293226066971523979250525200530018405745798694486467377858541126558150312216954850939765100195795475103708760910149209708685534806534444972933208156467900636168354511577843701225623071760961145316279692041316853212824081745549177123003600381165627522715070314415366230509538734936950731089182714312512435419052843310569067078985542802656667172766466338334709330149495366803415561162175977310061437154072939959836847670967189581805014344216381366910640243734219923658974177147607296119696892182027 + 8756146339821501687685791632926951276698745493874252111398771066414038712987382977664028831306570980447621443467803448708902890669238205389455219067751716103228539763950612249195017309975102619515539167596839641956730648131877295240275338205715392384766413158784235687799686186763443326645991572420998966211539387132688034703053160497197474705220515742368815868885310387949077715297389371120748170914965770832027898645815121386812307811308234895295791510882385030765222876929111619745342899591871706733899795791199743950505975712051986756893489076220369796419543859191866805321472382369263014231969522658063857450607 - 11958118850243389186888288806448450032886608361282846347924591791730745032478153707457847812988812996129349942277066949619402852904737886707821303022954633080662072900507589809286313885851518649187075267967415624557254274923790953884119198785124870886941345707661908510587441878352978617389471725747108595798857559027941660273782290308721550736712748167779400081776558273204704357673681607449093415059215543616967418339589923934676378319959751932742631636680086503132268306982059532456993287430130996420784438829067246707979062367187328329486634125401052242873605443116793035200633633787293853106790252560925479966345 + 19161734690994234207972810306520919028534993295743107736324054198319001975710728725195037703900405029375540076048588561661820177498007162978550370324086438999428671262464971530366344835921471744995366886089744059218271788605222779434393919445722337158507038498015487938389401039854159536572601400242620499663404750761107181444529378114776764263741726995392525698404369540671036304124199912086950658887851176343650109337539902208638005087760238267394537379410032014985220962765755971859020067772313930108143697848498402886273451494338062050283595865408739500589310153639647711967173914932867227799594902887740999430803 - 11950884735967096189143418559870662113442178836641806942262547738473652761911604367761664084117446924940446509812265738051960617735823135617523029352987590894643168331394081810442174122085886607486203886091464193389577433627366538795448655255173329343570283223469670113269218097303882511984838674692305629244797457814759827079323809428283162892108649773453931275570238539244116889530693244663796041576661016895529333114083225198753030833130002147943050414794470929194944146660360455837077812345669106740386246643523664906083292791389660467297658044298001176096775663615732802790459338622772992096110185573048879549167 + 1783347609372150489126323054272371484851966321718679970130406063344320668307719494989953533977606581219989928270772914069748643418595003018215385771958535545924398520045034389446549283912208537239036382170483460411181632419900366786184445702611770732071201029304014426970969205491411339486402341138587118610139952814169848484434538106647583593971361667930752943744961050612255704182702956594806512449703819904459016765097967083134361307013400967594241526602022105334651284563896809861803233745124278116795856812908651934270478714529115814468711692461092186352174450850498627411298453999690489743412562103830151277210 - 14727752595371083340328644750692042448368116906622241364105016630229944398931601354440318086182195719889271295575619322034749791165460275243640187163441723918874110434769648213510310176342466097623868057389336037859115708646737553065499217967061176256675032956301461816284012218133483899935766580069763993989493073684042348012504585050274373865181313228444752053885925576566010389443382985428351834046966976135670175768466090743290663303034685868915167578568457806138856342136749323737423015464241167072591368127640295229959565052977756938338740804279694718626761395303067007692935007750717138018228523363167213301698 + 24317851141505572517618714349394117878594054055291940093743615053031683361728276037878504489458098134755887427444926936878177481459380105459711181239823927252522979429601188217795917559665627771852951289527234764079190084077348325401451932662699774506805924950852434722944708324922864242023692770708103025143461815222047920888373026233376383614464656866427085107928558929658450967666697399610786835874181523262117074460043618726957117785748848420776306990332795104953938448913800691719730640353066944400640416976797878401059806778979386609207102538133724052609852017520796286052679540853733243204246156017591588035849 - 6093902456904366730833012223029466525870720864153876520208015873857169421878657379593775948390627189700417669093349720959151882513700144118885864801722738059984634692990822215673315496293538184596038978816016519645770269902935330156966429727739773761671048095036005149555994866126824371188402999917719003884389453873743544067819749289822565559776406682714420952116152054549621926101925208356166124864735132019146540756551830803180040267644080402247162319937401349325105618960936409098112074181160205223614618325793257439271154082004218027629991958293996449593346653258327595364761860880216359257797247971192191474342 + 6247780302253929602601259002083652187322073221729702877168586886598705618501194760407509170006391710580996835701618885375812665295305602996624296204543014946724960884789461558392061255755735426195271518625662796242150349132088321160151164876826890734812427104807254475903032017762368547054656896155549629968862245636355375110452116422517772762202807707883723753908735955544908178058229485422174841341260299594825371053612009630784611070268323555770534757532189874185286422084052589799830433853785648581031498866809069467794915903407550412290983546532930163106654883104410504575483842244095513448533524607755550247991 - 8226533517677667589936272045022283203929757977364200203510821516219799086858453032354483959793416657005103221103546208124032131236827819204749285523168093296403558122489705535462652563324147630576443104626208657110815150120796250211484412166587950260862096801678886368626291105455725326116369916978525346941797146369484676390020903146830613510954449531563221387460737533885462095650861658815807824370765957162363897849216274340279831153704008299588111086477580718512632223804810511453793074336277276959781900336879482987405969475280470232474901794513057572542868852066232929186829040304512698193182568934928374906215 + 21785056795339351196207420468935417818953375203322534110688028640381977401917884573466001075158759682902335204909801632807283473073827190007939754460980063781022268475704987922512956536718986068095054276186399169109975150691230161050704224866271153192337000260187171038285988014110737470227390753403890179875352864817183364642541071485526125193567959815174273328140943869371641241871408873090390456697330270863100068717433951168807356999561736818914688366166564464214535180426552909161491463836463908211753635991230178582113606462508554569763916442523509491865927929989317448256636178580235521338853248499870359627780 - 12957529540601574105107061213704426736867960208406237842857568581510225817517801856861314831490083139462918256700300612242073275275977308249813583057662938920295971788829685729600780881222150831989621523627196095208964956508304347652111486969236051221973470256583793827502017042243222635535323401926631433927360850724512506835331195224403602985492379337384256201144708861328749036286320230159077881063380378036417019040524465817613387321831720786181317823476802619509239492146011080432757755085906359163841143947844516222258823764404752155005581176617289062061504353538018347254776454445196817357808155472006541691721 + 7374318551157564001937095529707498399558409565405018253797427278716247256312397187179165618883423782364653744683301522708252057589092017918137680315618486381243289275951810187886605335024448178296232169886802493941845675404215982922356621816083743953308085304113852927562291783010406964372833750119094570345106381821163637729815849949506932560650064942766114602135796512821800619319439689178635039900526475273699102206013616078696168205209545746807849686680269354597534147201375661065511844013410236612167384386175763601867022348474324228156035877223864219664749198256292380084964015193456812236726376859711899986094 - 1730195812908650409337457565954175360287678587285251118804724532377096140490556183508549752008306935745569765046051873623353224411766104825413663693804243403017492561146507426202283880511961911103154028431421386451944239577982174959347189795690280130387291580838013389108646919020336782414447201242427157928840620866220379810154256058503429933742195264839467038381354066039091124182350451311586147882890489436126479688482662763520256860313289888856891651530069182129377581513826690168441015822150943577821255322132464798133071164862235092794885488289611639939924675049129531275916284179556747093910894885696785106337 + 19961083263693047641238930378806588811663999498172610661037209345518054228516752490845659646317238634624869198476298201068078777708885492214601698989710139711793022430222082518404189124011954747199669486755196359875613032850386449310043930586043158184711107514722955309953926652307875594667905983375849704194786939312319269049016509618665595416136753822001652888119015734344765442572539007618646990710487185689959918344642670495344032506639228079977033725450591135843519833430291668479948757013882552399719489677166051204464512215911634274699942611274387779666326204207861550079519844669872942119477610047393854478843 - 5809067215985190843032640423938383678529286020635104623723395382591188816998790578604443753148658585485592570843983016227606317586849158517891495363982272618767554187936962624622481311343909581935946018335559264458400743475696896752681845318158215296922257138466359223198550174776390742036567616188927205892356449328329164156754677856159095548932861967883783434444372464120870283273488381099165236919450220271462838041779990411698200945175412134596860790892655305872182197360306872540713111091539864738730574677152109425410996224372903368157378427516772470156422789890863601379840830310080989140240925331244132081738 + 26522657000676685141748819122978770842522465309006134702595893757071583610416764266775685535715730152592226278544995483301877115511370566402221841985698210077196958526902545667874348172701224245619216940827203216626773332919709354228614714627105380034913973150148206042576678822382138402930556025027002592221875394113584278642552945456077738369659122565195219777446776144697984563455012482422050323183928472284725939814406459279023474101149656680175559477157273660433583873818113327730185589359927603028315106467939462536865685694132871790636912879950153334646955816952432065310025006564816454253173921296545702926549 - 13974185250885065583677595719280508047390857416985431488408129603434023091268036058762707352930187364880248252838373330061046689936547132939513686586769653813351057962901504632608825661108750288546832015812808594215716395667265495555956530266093004721927187722814215509812736564853384036778689121061664536817597376829762112400256543186213491218636942304254724989645573859822203254965683205578482601293328493435199021573070516454954376088555266213637200575054954919944111069281294298151348742077982294101412131242801785014469846413232029763040152514819674077163721493480532073258141401548680200424050238098403423530738 + 14603975133692705679206433391224146580530478107999269026819450730085229199119675899206047235617081857264228621599658632498316676435097064315529575810602658625068085059062895792517325741813223912824678432046905731334253543522216282796968780216055174788015917656123242509389908227795523448065531244138792892880659107745300927473511831058239509556287071097259332767813537811657467921208236425518255191844708974247939200840864980208815751715941009174206324073989360793422143601660590346107610051271508034924621664059543748079809477526214942923405420413206030639299194637262108732912364405094623058635914244481341890014628 - 15346667359342044667807064756379171122197277885286809530674782537083578142242170777357320404634081627886735871179328018401576401699040637664995639556831900830205471256236667466962460506529261999318145856398288948889660309472248576982868834981583452914070323626816040837628251375480498973213862181758704564092026061330724838019723530226898467596068781509234424776309681002019141638971990888201832218470950220324421582752350865930101962628174773224820396900016503033534987293789523688293467840336458467769640529589591307349892578601337193284595883922728721577006226503928805929806477868022365282730452187100691812989300 + 17761683504255223006311542865962682720129980623009791014450217853324469301328795764241117844619893150519558626547000547494727894440767945426602346745253628410297450105119395580935035538929903215972832144613558279760892529300609299450682718239909591895597803187674787269998254874175488542469823095226677204465182235094106425990473662110635624448654549642908826562715307664205417487890620480474549180815027306214185071131812857625745439058956373560226724101924929267903726133746128172848905051300094214946928634082100541235180354611986919306929321726673361597348508304195465930037146307426649768713019412387264771615777 - 2846130664116242471158164579994287877947438664121226208439009389630863516537316663441040491300328428394616894843633758086104674409386856365878581446985657862922653378068131592088065332941658071098018518920481478113117906488780596127083953084928366103174810503626539738263547776629591650306283559998388972542562705632971559078561286135773806344404255689223071085786249355536387358244849526107079422953630734856985061095405986447602085687998262924000874741265334292048546359861456247649143847575411588323334169033397158668728918426665305743643408583814125229842832075700525088099520586967062576526247717314207504433484 + 1695417156266523691253971943094148316303221241283018282602307291512789645237306666880002415505300565875500348206397217044628505640707055270489064990051430973305267003404559415878924020384263597247877460249670877113126881052107952237773124327395496651479737936825815619825551691417325424353653385554265276903423759105980076862298876145785027542332693213514868301306635216592936876826551953459639426487220980064034457051085918735202531262700870767228353032297733857317436511670500165111922895038579100581981906025288684151824146545153057998663937818720899686788913324827317720689758088123411509454381278122416053537699 - 17324987936334425853250077732081229898637271880366459151285998625259554594079891347156087252008397472273721008683150054711352243199102561806799346221462346355812302209698245174537466602333228849427133968040536366999439019312463519117734684694459464251359953277637823914728023267297059768790774212776259090098727377800832774998823453208804492365441485616180994385233012288244284064496990224937049686467811519963130362851502530556550351016829343909326781361740931077838300926788389410735633306900650230337639730593486147670880758189297613627652828185185405457023004478813654776327577309338163075101905239710691093262201 + 679488139521913803976850254343905935796632321295054209470123597589330351324713719937067091501828182311084802441352042864836303435528440177530111175218790048112169878518268438580550688841395300445394610370723848532104248078103471268414080888478996127046072757945673364751024267792666613378695568955189688052792295503428355764624881913671838180859717854202474101678526591998080175649244886055323532715533446864892774737004184480872053278808387106030477368571158687885479050000385250993839347320458025637067479007045899025814796171053868559107433208440502918003468514035656445443744611990340960722838176067413954900155 - 7974791467429367583496221566804610846238467954534971557943022770575662341275733343368830241843124359282105695634658718247799877405197234696027539307482618739608641282233549159891649135674627760877263673640829871171303858353406165975259929416432300923991717724700441421489041609780148656253438430192640956068546683646177755705329712845075259237201664155039611124550988425121021747489466408400813005462022844781800613778312124539702023380743728528516567774770840279462606992843729372764123306208788215937297932976495668828507008254655937331034386212288795023139689600001818129047540224122257821556370872958967983713916 + 28639027107242215350092963026126762201431407996809222443465966370341173465182277964112401755803342003385286989345485326451219780018436717321871800163157442357944187539198841039698079587875656879319305517372760106054308533317895442060163756518232231698048902670836952358967493705600917760401151919020105882012651630896637630557121006634409318737655676811006142879278493331323126031671670664757823350407834580637367487980815176577963465172008023041811104020427201285165656312413142482845938641812921549402287991028982584421940143861580371963494208219806460124101433281696499292275773587705525949539277161975536736840961 - 14426751631852933601042672627365386566662079163787582720982550835505661751932007654011661204238596742202192987951089149679663198071474142314101531053874500492736672972737297100423714113457744462844914826561220564982175547108339766392360856756975985920462361665767471895408893799017731547070657049375364969859917218615489398330199759429701754588443293913263950541100036496043965704143052938193925486437016808944600424129123769089869979740653934879745198737944493022616400248193011629749148417823664102310557195423292839353921170107095648256397877184283355072370820539418819780680992471433357073878944633413401393849115 + 11053606759417624480104540769739608081654523095060844055077193207277484731596678160079737532267826878462779266159438539521160891861277635742506016751437066076278773889914876416083656184016431948676077505931191096962896088691092430485198895508819524429966804784096886014910316121219020790004479375802402231067489250664979991376507252046607310462823313682671039540092385054829520942458025835836724185171691282205236304229229021840624891000721869177110723673599341660441423581151583319751301589322025181124446676742845294573364451844341533389739947610722934273158807765583370127223059885246461913972695644266464593789398 - 1500912421139976769714060689488439703003694349361913417161526859821736086921574145583782052184272489519622904479586478866740744816018490136882032761309236360140113662381559155036101057838295506309104216040634706463756934636979653502887869868290336521972855162537066773616401998730517499828390414694841337998007797520327444723557734768245571869465547946481537450764579609115092075993634021316778824977098051499167014088815259819626516176698415207342230399002647515390820547424979080273752129691781763813289029085844274789860788263285740378281289478876808744136169878320867285936320538118037792071256692280146864368325 + 29684805878691814236920078120908643231446612167195338217213599563823151071561436089544560358076208205395845753447845560245346708640444513883107216606509228240133604905488976028821657778934992713791717511299264110588429166632478699611562220780519285783403149038335380878605314504117291281279046807859924820141944124061682073929638093414304355219416356581021566100608006403379456338052759358185203522070841063460406380522137208130460097430618720376537448233327068020454103321150387861435239663225679773673880890350325624506590047670989225873240363940914669015579468399690422096021831200413444486323675904884591971305982 - 16366809267899710640475343399019673386060095685065272885693106954630440287940830092033878828521919685021573879890246356494074576043169192778093898551274018373349050200400506278898994444759021861053668964312848101273622723192871963716557034706982230296060710449864281265671807137704336867475792197274514662647305213002330400598302375365020519351762875996716310538075446193682615649871181800070200854134188774494666613314347000641311622821371313260993870157995161985193132750720644375408452048412829133432591247158809611164392504526981680946175845511812497175376495588631276150127113114852999620138912450789393190405489 + 10749222385188659303163698809249903433634765881472738089478966353943942834415517495915957466890526624419048703143309538174163870232218755921836879279439272584481585119458766661593944274851836716738902329247932124015210800363705328064500002416311023224585970309862466892261662655119049310095739332115820087770119849279132939131746920486534790365666392090067177229984702103531803366988061367824738462637602225677580538557335324900747250977338855565843069636926331809165977617114829912007836532161042591091976900423938876723088783799677032139741679608674734285355163136896331762323845527057445464102926028790160443831659 - 14452394625015533801785156353502779743620636477051819495996673700300086905339037087834554407009521954216614359653409025267614206600083896849835696892923891755912816653452850968546478615906843904728737323746843625581441081581714036031407461290141095988860273578124409983241550698338721393844614816773106114914749567104360544175529933369479975644854361107347977648382506477443311535014465471767221521373997392244062004490616794761196294945177327261630244640836826709601187705108440680401007915983198361208163502337871116013345736758974098568689029058461340249603586044048819813310013776289503454052788434281873014630772 + 10083007522036953350762492862960870307884527697936671996358612847441036888123153255153234933147317688138822031246584286290455064031016451636223965115780754288386757495056685321384538268258643999924843904124292442883051351399273050192986268117656090341714183934987612921012529902248902870886952233251816642267602058397558752527918812256584968944623395016680244249175261658006025577676695577316717797014913746036652083519585793266319923229345984345223646097384671800135225498221495352860181978894578649080268903447919291555453492311878367242929161382562072396000815493451489558227814188859228567930747282180188874807012 - 6911916310914116850271276331249816376325646251368013279059437895510632039081000722695964069878285020339943662433138667657301774307311782792175317029151011113591912820491796821167303745287848061566586155413264135614887896890282986809473190978423946482982342419749185997723049064214031154048441094885111355677522483307359850066977477450942132491418372727563735466814238141839939500842053202186526823449701479823698782551352386446856045279342548787058427949092835580809846983347042259348362768154399437308319802632538372125080929079431706216650748692284728161095736508770855169232773506378172653627175817849735948697316 + 6806178690140213590905165457354607036839196150582028226013657354145131207795682312648716093877463527106879454955851636427652243442987944743567137256711788182747590973867180471824883659566408113493621311831490506296309667952206218164881556086186058133160523401583006239018680481441928846722441090058037096450603836995256111442220946134736655122547448787899279871702378122580206770586808943548982930565517439698292822445270610690304323766451390130006088976940940423467379707090742929927550771618792597697755504808323129797447149351804987523781369711655219717448175110958216605120284172051315972598255181993444816603758 - 9974147575005943548171872290983026590807148025979776196549269557096247506701316510842553210828410400254373258889002169613826096765533087896267159569241727776779595735484046737858726083368114357415623257855947906283330526093400566883330616564578640441791720797421741622191525429885821607383247430214229785270761596744370289250374242003007809296858275034925157194641275530843186093760595380472921351189877070754457803924686882480791944108501997016173892368285534283561311275745891440321282260127432522391978534604161732925266815192521135009475781901479719157679488892464302625289674319113529963493758378323910968230886 + 7417753916859613165266116203015112185296518958734616837508240570052120567483991510248378730658870083758554774457797371821951495976248742877452444658550468688102043617595555843858584022886940264974672353705831637886985261645900432734599233537714798691808225540255778746835240319783140077552597834585265343899459947140474213649156084970245833223464684290525569312344849128453833740813605599728457859621307264428779382776167928742029933434793970040382904269926099517098432057107183741439113660092769124621268602276131367308291414228084407471064478239451102334917231340245270632692272081850452035926665193290444129151754 - 13357090847958120508986685258534983528964489918420732440721723413989292846159562043569841549661592774114094220637743815059099917577349594229384582922250840612584960939315091926131912053633441939629636335394567040265328859138594868360139708556293231042742758956432330561552542042237860507260798694342571746325191015340843063277225761832699566156572006188902898158916149798449103835233957896811771649370045514996202685967914093751404002427908179498738803029845841504152620138438835474638788031101915550152682924318241253187990102222251926060309717344204709937115313031904439951159407971086635692410936425186880127858097 + 10740705761832368741413668337205414331827577896516631795146767984804471831613525482684907641500730050586071057103087288519404519866282848805267333057600021782558154899005610212862474712947628091612134627918372459327308096211836528393432716871934454165837239162164369985505229542593966659970775551478626389124381243302636962921815757540083432045176995007597842160768584210623670673016752284845295135213923995305216776905329484812210343129975959386264719207471039654861408785281300636730236371757887037046722976267390792576761932097191167017572087852577184257217927041345469729353904565783936604534690704272560917580804 - 17512248496731013721904727119858449901883521384437982781344345771237722495090249813764595394486674827470837433932641314885272012038300491459738509953682693763662112479056572005938176483181699840617821329741031814437408761003026562838478384306725586581731560273739107078252174225612518152010091403099646364937920056057782613903399042076495839822263061362952903866183091741887554011419062805132412677222704630538151479487665498628147074155849318232010388212353897953940735209340776933698723458344228068680612806378648558380898111217185216635574865330274934801608876943927596662527775292253503731021313076068666072410220 + 5182148520138093166941142707784377691181941157269980301833610275713516132351746816470085489543589176680550323522321293265461244284602863505942625451351462763889819162280804367177039177234562043580851662111459919597245113610770526151851478517429024878184721682447948680843134619410555937572887458585123867652189845931603239711706496258270200443674151935139697667972805821756092179649920392297483030840573161546130493159922515757103106726608308682830708263309452290079809197292413509528558182181400192658659084675248063325363795233736260443473032025824087838598796438363793854659843551421444075616350573205844808535751 - 3579323285190777188751408069845886869495954160742097548729236946781381152994086558391157092753804410085107996420879929390535242685854196803262248901449068223943730984952830894179633051361797515516250720315150824675697760509293044646168135715524648343804405388530778115938839231436084135715176437597243791702208387698460094474910885438670806084554994155218299327697143436261699800766202000281092819927794660821854071080220735465718584450337180355539259214366558896471144568506010834024224124352979599961316475582904555963410400019886620990073969044915321187479228075296079570458094009301374984031592914083338108229216 + 7098503928187055825023064910136210178734387745434404861487712914003665462728817360654198802689118707779770363728528814208410065321951717091917328363437110451608662124154096287331031200463237874933806746634555268799513028085118499992453060523101716413650324560456792392362880512536163477848386088768804744799231033540187300871877300160224415836105684488339749402885647575793465369592914510111152715440620345699950770331115971938588017253504696302399255095424486841296533366792234307901069557280860590595733235455819236295590326852604381872778722745801316227184035570398238817363104065417693480751944794852374255864041 - 7294325449629636285035722947005023575713932657966710790504725500901027132162376266680375848264222432118444587081455605064826571719318316682255421237005069844024252126935120967560265309402343151044262004899706615475470693578560259509238222830750487655364389795269567507782253845505417902268573946352962595458204503947063338318023965054833253534921486085692891506240098104634820789202447603170488089698677602668274614233805784878696320704921311405273031749125441168665780097022599359512724510012984595078893171760489193228462878310588555074211067034423997075993334361619009356126025599426263016467970836262572426637671 + 25985759885901282807655517460061709421339935243887774937784738862588974342430124742790988976396774033587950363712882396825983484855441064475587706415829554936039042749838064942947483567014571924898368426107651698342006942209993953328643886558179107639314098779368548956805043571608654516295748308087597737190486868111540801871901171403365261870965969900948338732457851293969160021523328579183118854835783231813658524451165778998611956580915130571781018931486906148931810681884167667556683823561640998796560029810270287206635293296057354321506156019173701952503245908343822563434730776446249032217362748037308710188215 - 356972328551569199500650028549236219303158633514750769078395245330216493902280337946637276075223231024482178331222171121696616282905676573977030821580566497812845906143020044275306459364623200556189001935316307778838275501567340397715474477523667790961567302153908037683629211804177892404558480581175482372694480956311407684584324544878045334238470656292036490300583649914896420042675839803567922004438853379080900799525866041724767929750297779851734198026663338218360286400134333540955955580470258900745546090173254318858595390204125487202324871503086302554390605831247555978987869003358129608993006539551120408762 + 24084517691327936196488177459366405173146159600741473552922362988922589320029255466941565302229255483657825094712952996893612567715957860554533539077183532466964414124223457389115176186319441899140291397008375382678412444854623028436660688453879331227676414605235022963660622627660835750028594486812739173858263537110194014090916500802149329951804220444982708418763213891751936336358429546745872667600002541388915220949027273316726265394577554877021591158126235880221103224771412129509627646812943578905520011367562396434893175315953527639554699882831019037805414021530853423956804514917440614405956367926892729625054 - 12975701233493047741354399651794141943498473132303263975868287105025716418580058313289217830342179067954937788559359622965049329733402628532867173032493180221676640641266793369386831759728417102602991132851915897218315709535893659230092591651648957165706031336161648038249745405237016576168112751524291409328203912549009718021075301752733212579001749650644695497485410804467182318847998007338527873667385368116579045453584501960062852790806685028127567209000833376437921673081557173425508340729764267882186662630071272697606374827198760690843969808432033741693011189634113965211774291226731140747954547408658645341817 + 11642626714044161459204982259630065867311767944300842576174144554293296319019625493942609622539272647258456625627378699010401394251403473981307031482359744417187943924296708818998952651321469735150853445338064646672659272113583215289393281015705922730296912067030539926023022501305674706644834878766568626093537174490754217286030256405043911486076961897672883521217882303630030906958873625416153879780726839743520182302352909414074413883250137139512758737596762630594926898128229848865758211441619753550987167305657577918594669441580175593587783183393337782907820925893449937217693837883000791053932026608643140484904 - 10883029602943994268396571141190285227237429018237717076757699035751742058120789726531046688860172463122228614244983980913439202057538538204787114447640193478726751668085280821245965472208113291335317774680736780734583328513252870634033881349168361729172483478436628752768958952770729169655630417521232025622854261950340117428373334921279510309143999534168200526220318468684784666640898472915622295085719802532598726355912274220540897372638001991367117673426035651682028963866178182134581503188902744421548287812019555048593703770145025375359731180992415210529019554390842366609701537060334553892087170737296107830569 + 6969541538861645947804332192641594636980856236522751188939390400383038827016569590962723548591149213563826834192780092512577524889785615158328935711609322529912572474177302266471979006036625692798825709403868563122703679774549392013712028803191244445547595122925395058650493910866857390313985869477147051517748466645580940766817221858831875188036768778647987065263142025958927738637414028117619876751617733988649362906111851769142055438864529000642836955139478956487661470534881886038773293275419806221061967928794301520849262690550358839087985566004156134172163282243558841542308042379060825867664734004373848748351 - 1426878960314212914509298764030748947400748908717056022025626270763074096361055228119540110346372534047868925320907687585132538739575148502190392731709295120962206260351243126430528007281336477978222816882215851687757284818329738620544660084097386118115419830649118930422197909877023478524012238716909531143052022898583550505515757948192987576452751579763035664719759221817148841955961447637422984220856279149931281814341698535098462934371302892696856652628275807869342489139295721926189068611681043318954880373906971434267061877008865046279611096743364182257086809517451356525036365437769754899897960896886677708017 + 551363250904755388085875019315401822572634790115306233643908350850160320232401488889460284255945611042971113044080535882960804802970517528302868331119160070266955239151903326157137016818155292244332189266685946642697473150999745491522226769680576307941003837585084215498709863246155394158465816343911742238010451771992430473359430769931691279294512490251580071304921966395092847192388455984846283901554719402795164255539521899228130120587210243747898274108003024179425685805832709472265181706735937799278419927663051500442366142012431616949077133681153795694495752748750699130530188462215629177561091151293363402150 - 13172301065793641208748305534845347653832293822944069103868346191213889914667970271581448886778172190642374544986026648857800271473678861833083174037371961368320344857491072606013135078994592216454267713607484964744153398619953612989904459522373122039997953260965783071594270945833539060044388301424071658693947385446526244086261860648253593281402657190903560431358367154813833578292609876179462940315994638737554394188349537376054903872513717687636705250008570483794619416553946616701008524143115924338739082722903307613487507895622334774127021862913959972622866267209108084388773321215896816041024631080537866224493 + 20648653872894980397846140454814665801612754677997826706227881572226945092669765629576811028669300822165556324722008520015714792295987463365421036088906268274571549941341426936321104901806415504649860808174352063951284815383773228840967483778261743865981580802751447497881923043538744735887144583373009467563395138201430495929932296459053780401710699860885590737595569016630926850701148784103994812614741098859083780857799777101352830374028379832773984138693282523046699871187530199698794239905765493553229945602433235231271496479155666751581230934785326179274025917982629759135854867949803201146318933806911267838391 - 14247979642994483547049461745052878591672000790504293305508179541327231422122268569336608596070402418771974120809312086097266409704812112727026444324546856316287269107768715250405264807548403609865487412566118336890680655830836210439087314957599299803918965984947538884984414920134765740490888935967932007233089584314427634420695944656280464116273858294033847988959916155570005596732115827623069602599526759466507379990759632687793809646473170410870537917325814554472415954318318025901286686330999479233870061190059076051233417782398150918040147378497102634451412504992002928295650556419669351969612333686275725779790 + 25319785029673594365872114698251220375351090693704373444495061992839384301541643224619456614848118097696314992121803128430944886010893433021347250490754703643727973476165916597270879441364646839785470396937031984876912857313313837479144520115751727437756243731649870655474580037256914439425408083175681391318572013451373167666577716665726469651341829403440264256183636240677748404199942697253729469239761403637235521959982613674164023675094334511823173243970117422289191028303263488237976478878478347579334779866044739129337074187066462036949783250579540060804915193821897711543612741132013221794983084985111826970481 - 8273237178961064596269514723586077267036283430777704730266335880528169423254151013017993207729498651404290885308224166155938891445159857230217604358564788174809208512932407245134820917892851142611536875072390238705354181137356975249242512473649976954390974632732935983993907284512603250649283799268478575306250415133636100036046987510533129075919906592037266499374292395405797277564241736221763947243043561027692114717731514026601627980829091242047877981298334059504693873625265307665541171992512070912066924626838938886294017817830647539285613588357795485715852608112596890498657752358605253911984924630380152117376 + 14349349109511358900722310649156976900311801711400530563041113537466405448813197851272055830231071214937965422649402259292703118122299211412754905374295161328235166154445001444331394127498898587155187295958745711263349874213670102646196265950223592880836294416515639350060019412313225545845285978112505721733057054636700045059015862368909605818260613751287042028680857300288319741052249541465543489565395706150233225943067229659751115183298639097475295426542012643436011502578258687798371388924239168941376637821806099695083513757622763051966933400598008688089515863827123066075129575784805203414966896481351659909724 - 1133907126394486172209571576722866694051579076666890388323043664008257540510589690567148939746079345464142051213615122015521163486021653386894849790880505479738446608971534777687133533474176861946636659373303033937343098125235897776592457738605920300515150800949000570569963962854478488270639496353149524268388079001715549154824483553185021058630268356132318439916436916634481002226788689879379453887582386776721471993240445818973981779353573979416013905390096363698643058811881345037834508577960335627567376803685895841965331655197937069285854307869635465293923183024724015748110676829370362543449778541428333161535 + 21192567670100904725045198985918256438678102833102042466254513710744138353569006340285011780626501763022715214961305277540574268199734022389522756987361110586035842988520334150972506380750359737714040489615499764900238512259177018214018457332812176761883663218237988005469779714769070921330633945745211641295409953241016953145535288023258720324993481404421070877538174274584224214881695319206784961381431416923343007398838827419264608605033848308695554218436915997824858723825796059813731175873969702161160687292541939525862502263689439537091690249745039188574540890230054753829071350136510409374668298621410454381117 - 17297823138983699287065085581566524945523444713125572548529223126233697220523494940016196014104420966975131741567876250730451395773027858878287291826290746993543773118483058007045610694824777793151581369155398197209173695401080124425356033836983195480345332439539035025825541983194995431812023730557245357952904291876456923739962939817305473360040506292577199415216673751258949104433525641639351139626648124597354462030811076846050185033938968984544828284642750160949989910888342763983294452147836407552113315957204381000515290000509342363153846785968319072555660871680958615326014445420554041986138189071811727030430 + 16535261382646207064394640649552837805220402305427906437982948951423270357684381506589206461112451989104644355705839291082229783444701165671631575794148406050880752629492439340568533654333645820771165707673065407314064568374422333220810822157362143682465875168488213551150551874392264282953617634902440814765715161910776175142903551137896523535339156054577594010547530691961276369142585993642555110472131706214974171286411151230447449994258011920652449627437943578552152784346260497162585712426752229077034021415228568688018984606667360252461685157594210670837059836273070620282803238708025390397220999140483020647289 - 3296672793187169830981715896395077198183963819509772153933042499781048264579353640149252087071479701970023891178305018947611195863714075961233513748764952627806686012494177658148910485274831071796303168907406651609840110125257410544947698282519263386912487229359304412026318989224403196858300461273522998630519744020954731385138799018093180200582357897395476885751551377009230174250702726269301295213899489665877117500880947890763693899034699508642763994430701840038404985163133295777249552195185032220735952714165892012213291545743547556135075870098359040265021023080561747582342571189759457769766042179419518989595 + 5026926415794261968592942097604064672232001396372741973604776785622352224888001226238206666119975361614732988326998114323164652847288139687224129182426257897712299336992260005984975352432620193243188234254394717319497910767460476397371809181353154828354736499402150063136124608230327851886366416316468364399273661100050907893984683263398750370628564916126492818165524385171981027974385832464580990286360942014951033460433526546046949382341102559007244255912830631037691394639873278941394895686606464815368825287338644106717575157122213916340167547251486003653073451901805043205393605764250163081617203449708243973096 - 15755783819370856095591400245848531993923409735431343446777388499830115590218793770124188095113676399387013846678349496966444327591663292122771704216281512335609415317046936185611585125371046285726088469854538818187682973470104442992060381898252326326286454886868253757199803121733738251197185744483352141768862172946657446630940232109239519380467932175839491035627679060905644434698138468427168205414153231786615802387529338916040384278453743414425695071296157902772580922473284205373648719332492478802204539933506228040831435910794501918554867120591740816179775564175202263248609804749426991117907445883186400326687 + 26474289146273797729107697995516030047224726943854113524844988685784543280533306780342519504772497140209688264994090926979288015820903192923895517528432980170252428231341313508064678466414768865843379217064722965421935355835011870595573522598790146703754984806445877406761637675147916122068675966786961583522903458068047331604362374232456629240367140600596206511020102813079476501686701549404568764117015752691616669112457708679920576134442219697484824247498303823285082688428730864780399189017235077711433065003858607831259668306470324851594849289143695648486891027394793433322882125101764499444370913165935911926748 - 8387071179657529646428583753100797822882790573855484203406609282916799691170748633728486166141602676955662441119532320546009047321666212224148727564485086231082307496863916471790256890249218241453990177181825777758652103557319679826956225045061630137660451810539992448183456269628531557153228087545157742913848958825545923724346738907948062979981158939271297646985664746834749441581331999941524803130030469408375199724730356323917396142173471245123212429326887437888176596894707021591213259631540585351277699683901544968588689755533208910400080184677962531574775346096856410947034953881306235010772162939135317009402 + 1394844621100234598199664872983687988693166635417247463901609153877464531728898821782858453441064422044155546091101754011102695826116663274399795756452575991212485719224086034646675820644216240410357265113552811119879747706635212944156128623477712133752070099016003783301805178266012155500069551400520966663255309698961210299332406354039895319713600655547349475556396835245830006576731981596912320119125170553395892152667387896628582463761837589478598955125623043991037883462896840855067528287651037412561637682543388174332152536170004228549570774066513523009664894179095233178975132129952516704116433698435794269402 - 8417615484980081435982107250613852511942880085918067231781808742372158545388989155155274882669759364930567806401209411885328398034353605214133733043896859414881625945329723184015254251298789142028014736888663863567270435400981704366022091991570220692899070839762289941285574012753071044379702076750217284448054838642249344845171097968864359155513539386408667842245505163933699173143463680495728122184431663736325743120662353763185925232087449745198238107177509488612420303352409804624914503032763880337935151646112772639285670570046855195221261830126203704614777244803244936542146325138104588735575665020925858499154 + 12286641043757883761192671867357368831904956185492195584062374189862920576141366279426844435546832318040826043895265017317215093638969326794071470025726267153204569905924395646636308350094178187847461957653992607392070122433089739799073056381678857814752517180020293021847356110820810373479032715799067718553477326045969088539967298191187435792350600398769082121369022026541577565427647332196507692818521888624868290617020362591443837728002406805286147657356142233851617516780994245284104770337258422770326207592586865099069783516740100443154235763939145574026475380337337284897942557467568343089036083238202649716963 - 12836241530892111168813996933812383849365192127969491692795821969036711551136586418924963785274872274166680107108612908298750987574606287998359938199431337230015177748549900645132927636312558076260007928284219136257621153542957650772764668762904782375883777070609369703683278488011883561418211736049976274756253401392028422741300567887015100490103232768709395327536326060993318159497289713241720154699963512979221524299909460163050768831820200061172966974118369639764265121553771097619081925197945328560374702577764514751298948206732087974244514112536659360617361276807274435654442706738990566574273599106525753944199 + 19746733296551185155806965161734536456949478336823871149415382630030011138329525547831968714018870940428895454746586978518568178950754035049073771704068935285221459359514600239622809810754199637062718559276086534092170836659391474278670278684379029435151991311721052092174249421455164654266108562334973507063312895424061315644326684787672114128386400622279034649301779026180060844783927668338778944744725324459348583499829421337798009382960691815601090349554956601446604135711572918568039362951781948408269090053847008202775631320600918717625586834710194072303226577671887335986407908291965119331779111468751470889257 - 13797771636973510751393068163027852884300772850401851290573547364442700111286940497220060103044536102652653878812589338087270292806313468914703582310307505753163380577714646995782299435754016243595871630444833478373926765133329449281203437187702470226824822853593687022389560274634965174898142990739175570487952606390210618782274071423947273926604024037132893523081768879358585102942785452472789072461727781354266009058781531610023825597229839006930013409817576378077601784443761182386775193774198684779883964297695874089983681783710001142701465361413734651197198036703912500621658717724068434932128449088565717152431 + 16125910783183910220248929323926568864983846645547999921012141234374418250880424310900630854372560026663977409264077018301914266039295102624133588239396470589044109900241575954960170317732382274718475368718592479075637118334622374490834039663202325214935207566356453560715851774526803088416665681081762994309980975601496292575623781491660878221384809007655628254027977660556957402462708716477957444068836309818614312837201179948914489267981486256731817056014915451998665344527697368903246453567293381784906968474317884009769332519505149850226740882932665198863589553591340663008793984175855490388633254124322865728683 - 10200814612921418151556429027601311040908952104181858653466876619995381297788580663191997849068844981330465056768295840636089843369751968787141396998798247883236117475398088019546181416512972701068219338785101736494051187519194860720196982438449745686886780670054145828619434706093060744014150923609888100140056210100920681129594884918912624568516845976375757672368294835155465768530550155108615783077811567123704363733943915706354579211640413505085990399231010932211587401703692023797531304138200382763379347523461675568451933625146451211604498684414601923169413691068040021701455405815768739305371853386955765393566 + 10804335374150975956017567857605812767992269739861192507524201018269106734060181073595187716348827110956675082121047970002204090257839206068823424055580628397949017487225944391828569469133395198723526936634524340061439543840966923871229090739022341369262943588596020613508788015365398165756776838322016916324109182335919092454201396106614145651996316493487685134226595226345367644268321246862792022133824963001561948181269145597398815063084383499630076395929119213418815859652797628130479993287039339521791061330233293398167081947208397578295835827402990956640814446406141913930781977091678388509210054890035751295989 - 12832925661167128037259697649049266901968771418492138974442832488318820482780081628810927566000479216740253131189059090079787493843411557605440800223640741139485470513424209288548766428513036246479027941016714514674102817222577597377811082816286982715673244239861292698490026619266570874834086919055180734449910449177636235692712751826486028829023329937715226120243055212466216997308820569174297473959431988196639117964242624701671763172310469207370882544972972854866823185895307005680124423682253740889011103730463406490184782700402330261550597802628996961116516177640664942747240725946290824100144511076121970620151 + 2961079993242243799775784445191472906721377423454788345434508554994887575095010309667224770206698116093729231718617111631948298723544240023251689565327334939032075295086823396991876169732855280617564675740875106997416175790296761728288010952353170729606454991305504611901128373887952411229438995925331741410524693799696838327412216535183899057490660755859570876524664157417973254673217127737433873225513826282024280509163133091662262508366880457393375384094772139954003191854581445276547465182410210396686727747217195895723554387861177096591105753296069555604135066273105594729748111170148132612273594975160406928426 - 12349831783474430866441543910646347140965043536270969117325416073911370397329840266000541651944005943707626810376845180900518626760945441278176437016018480385421123688849899554830553955342408621933251904030804017064553404223784628513758648737353976141904152607784993424067373939994826493777420453785325771446089806587407653593692625295989279090105765876165199957066995877420296778388843084644628139555536877424210817085132354918093862475495469180153873157148630164423779872300812007555757765630567748710135597119252743123910475183944250013679867389626970086528332849298735764447698260650231603737855624964009987591816 + 16098172318931152787974899017316913648642030116376194245359420673950499166414795138646095966664373048143012606177096287259549919091389209399076071191155027160884396956201380663257901891311029971354530250110643012104973887623079435739557968727022091144224301259038846915551543427607008678476999090091939252175414386238461448959371217965363358103148153917268288462563933841098601434718177135739218009041753213545368752113117043453175908526946657629626791712970637121137166650507226429071593812081673255115235093109000163765890851604192719696050353171947037468330251309600364987527184964916237343032196023282371845581076 - 12127209338124587633147512903387338199980698443832930271321170017539665391521420874712053705745459047701692627651527209642541521837089881690491483370327189221894609454399530015796935696959195786733517059922583367306038473570735181801526612861230305090504407088863127176308564529365892107807563268757764900475243428966121985928799224558419899321661759932357537558336802037849076057513283822753555823578279701524508189418971023866159034597010807105478684937486372028152980498844463919916134366596366574840321095247974819453370013417728477410938661190865978217368121634249932109327015029031224784503761507739407628213653 + 12642631366924240468527778565420559077334338690033314072434832362639099606470409038568401974239407897204566353695562593168073818017350949036193793186766448448816596694922679577132937822409177317533715981883673750031984033126500022736505377071741699921138777034637371246847536740697085581011798279199670180233025155326498969021621001970043072656910994586909992804048130287635122764699701928969835168809989562183988761544674749609087796550582867564599707081396888257032449539500096954068312421464636809146677334626815723248029192673072512372477858690056452019467115802582707542287228852638701732690443802322292006616551 - 14304929096422568456674684933239662653168934685893655038241367381863385612918240529306082131432266783519700987840763394073026377961324718291061042154691272293118318999550150155197059265975330086537993537761739465888149092168231493963367924953607620181197677596379954842727822871270256976524750663031920058946592163690295540860626061363766926352280827944465796769231418690216126119637184036042466770375009354737219919086441782054029418504253983373436959947247498218746027810367922211655062618856901085412772942609665105925526732024284774167009547412640929486096053307554608198244799936011009950577256852532231223961867 + 24475756991771846642989969668339274438445392303523537583131123354691487989326118351476616856759498470860944378314509257994155400736364101051362487843446700350403491621126578880052160704715671364283596438901423758659274946528737806935187390758794220352132463582974649251279720929192348875166490884815558982988146629872307077923305343464555478487611104794690759105107593354540505901654676142141951215540081585727459305282371879531551155946030526268181680834680955845954892725509124526206503222698184733579216192728492434905714884333403596863593194398263021373258450088862195952583193118014164661692926154769326435220501 - 17763280543403564004082206401559851471067724247271322791849960928321372094096247732779022953712388065300972845589885192390042696999494615764591216132487446350361539161437304980193518474983223156930067092812226013955021189336572029105618920936131964704805570954095918201800783397431143969856044364889249904654288397917773854150153181403069231923241680863997445911226276862300426312254050182095405049783210793315203716780335500689670092126143131548006205454842303247421509548676120006391741401269398995905066939998601224888650036338202297879015572055268481753614583845396595920245123308715086731781208102197166763857940 + 3469820853928424613426978676344781397332591049113664520610293009885398067527463043786983016636744623148847637708069622158541525750262719624950951090114047757033466002783216787180740803132714130790488369341807378965641138084933392768234579946778675940984865319089793265269417513109495243386786900327388322398568552033164042097002524248137884310672223849154633634208338348766291249172667271729065139598675288400032711530329487257013779633040336726016998884040375960335627137305203066147790516935338237800512881958235801035877999054108827655662603406819675345022376554339240134877817448065624029533650220446541623952145 - 14762778739220721929958404192227090910453319873438347927549734840697718768703954184687507490690532147268542814417460843275478969111494561968656847551328992388532286914447024725668796691909081744757747468530393383500307531244209169940354592227460529954776004501762326311208769106887462231634365571224276535051055685238863117663996783261582486500204024552413811298098700775662338558227237724227566112841707490606381996290585335570302313873272474498841128652327147969037629248463947051556638552360307435959116778619826729460455023941755574662644594757472796487940683240941603482244525823230938791792338495461580590033898 + 28133769212010583019740371272048974709480385835071989030692410213910664104980055370480282913227867262092029439309222132342864753339063244485650754807388889294969822946263172319030611388676774849122945456233366255329319468560534441292308099171617502543904361563198656951008017962190645560622536798332181132010324901594996577648850604063132009760655011426730678542632666716869088204744672498447075138987119142777722407619092839069446354051165931561136822668418353443053422756980707046034515678536977334915097262268619119938178954698666063681200616555572763193722534220775613589272916331018381187788701705139511604544506 - 1078853425774788752932745400729353455340864487186055470441299124646955723533375046814859239702861904806929427767779633071310198086444391420539817268256373201208257425398738519918610870359215144139462674834887059637399678339854362308101966123346026274192729475983410296893411757477957486498142418018144200322916503562248105668128331195250763891216863660148302594563691930379993642937890061961246089823558736827705568903610840980309244076132040277686335220499813869499701849154038418591081162778403906070551560507223953215382566762238540983194851214721165574310349266321187959614003869264808452067208074788063070415747 + 3955583717280321373505787530232676842852642517463730368213593758243798794255796279429551185925952265682392292014414197588148914101115475311046891328793443972754305536913672828922232725092172146107899899735620538897693881449606399599621124085568181090157274003854180786338449390555399709892678737912287827061443507886524026690982397999123999960502936801024722289318743064917375335787892889965041932797608150984061117418723242904440879154542368638286114813380735677197441968556760984368533962982647176511579307718716774559304977071061018883286932423694173960370285178720009205241694090234421813002911794532179677631011 - 16200441302818269972148763089708001195509195299662251645559734949546929218181418797142949523141570754386501078690936307751951477532191580117620039127717883894963384327895167819604191842116208216713072633816507349880937190175161118570238978200049868653289705925219827341346772948694613582096588083539115641461591138048359655823292321546137777789855688900167891016970744281645817428305019538191550369771089898841617824021015100423430094132274013328137355229566302339516873323670117986683556948258456876412753374273371500224641582905567126127864244922636736734916356595319275181918801087535690568956320613801404078938623 + 9092298508924171416032540264826978207623401840792795984696989447789026152539121617100732417961774463854893075253414896236706101141257126573343566396925405584232257437145832778551338605871938594937293844352066895861151489469684252310013766890035444314242989764291738192579140854765043027104196506641795600440411005778775001206221688108222796891210196647447156302503579477532107562292662129354288069601970926916756164659900900497166043351936943104232734475887218516403854443325914856810143816453385415230825508575316539103560467266385433359086604333700312406423937150464720858393430418878468855042297983470054070636085 - 12051213004587515537067575801515354376025749611353117445291142325313819081947430245379757243007339334393433573319570996136667349137861131705884457424340769501721477488115200750022568060159584902412506074712804439543851454534488852227622356957139118997723356354779386185645108520576017077708250859283946253260480472493461209719617540378724809436457837669397258186044460334923407114206172897245498524252040860458345307704068971522847661923438783227856159378647753461699644795932102279296401961784485720027206004580025186392005976924778226143932517771244895752161839252200391438488828796174130712411389134963216233260216 + 7000513026681354544894371100379607801162454958908833627307988112819894828455613406473338957998900572070600368004174530172298991158200769493660781249170665028861249361162104376098918764701253725083251913683191708653440126654518749280370936088330184266290499326574675337164163250129594291642709796146129147736766813689846495281539759098647693360569084657719468217677638343550694929545961353802017716808004984507454577432050157699946410611580750477006433096220537915926628128799574325672846622099443290558874572634663535259933434921706378805635167747349140694345586476110105286245698818232997174614840734193782867430704 - 3071037335435849242779442795203123321432246230892174301314065657271036154081520417298989184167398833648596209048222661974610874396942464852079211397327480182080962585661155799868247446092838600153980008779308029095191673001518925898236835339322336820096517818186636501443975857676348121589513775889802046315537186476583203882109047928836027137868774256848068675405097227157637234412762435724454880654614869949449105901431863200962142829385013348905442414556605517042886813957720638312902913364679174178227081999871493215842106724812967364361842410699387464153034294586254256981603689556989701598859782642302736009773 + 9893269152377766637911751775327424823770831746757377986497495167085957439187132208026632295435740085761645568395091117462600943692258639344752629077198220808948312961351855508264439213424594452517793182786503524758254287112431246989036994962122336061622028654807562120362108490121668673017961201407169766585907620909782640898540221129341357711466950716649640221565243689544736066181410152496168006390602481705760167693840112638181230192812264529766648035561529061997201478805497220923241649516554570587329436848916660188159758893326241278097014837546505431536086856853497658286849862411475432203021619888403586492061 - 1242822042473143874910792091511904738790983885718143879810752075011732177615941848722138605422227894975929766196311082734861954112246432667970398135823966500091945659714409045976841449776655588332529551192780523857095075123434152255194149641531060745192583447764842675979861612583178189330816968508321820183664989690191601773358135931498247581997465719403199400159222219973055614119699654147206299053437490312435530127683785505078695909684193857680025484272771953777767451339837887335951125550913366030773227372871029256359400180933863348502843878479240199361918786435090895241982000858193413940388889297052135815723 + 15550051031024406713545426599840364452703005243031564049111890403393350938646593856271315557826778611006019658073429617171389618730618111747171477026422599300044177336695678340213354792490386110555827327331563366659720593077814150518004364047742939619910362655182814528252919118060052914831414937793438158095734118502724886682238197200761812922431468646258642601920484889351520647824841946560180023022432999808679221849956782299944006041968143626810707776470755074283060034450441921869347636997862740111620863111135551563540634600665839280680470689271753893395897174311942765530694046054065883062920768128672945731665 - 9152658060361264275868365366064696966217833719441409945736071506254532943456343562823301080469661704085900670477190788851414273123924966855381723630169772155769855448427577523926082268900072238501616530756162606815832085939943872924746466418710009704242667549509706498055187109438440065372072237483262337112740272906129643972554653147445849215234316264545985294915231864775386970283358604261824555948503721335669652387145793532987103038995871147756648199535678654929252134710488892921344734039371847163671432858662554355312675320110738033511459126020484854208123366134607932463915808535639847011113702661375212637162 + 13500502932229741658702934991377253231620195881825984126766666926623071998389868050721640517961566193651520019860738224771615330522524988921486621650162948194678829759943655571006655668090895318092552511330676124183286456317474877723450758339254924931180125086293420068018589664907723868046217510246396203731150798870113214367610614587771643365249810216042320501921620329770411008886231328822726920640986758876254262633368102318147264265230447405683923744137265701652847571212733439471528532417209173995895348525266938267200374385778495847546076880861589175323639335253709037917648875758185140763894482289109918803018 - 11604017070020379851672867213132097957239582211219765915524580865230691151156496156290983818380594732746940962845924352593756932389298582786937670584280142047714544490298769857260893088626299788446028452342778676653365071282611061929862753247341838141885235417291532613452742972648143010482719345614852423264577804010284054595765731933092892147443995709280112491752598348572629401257944058951843956416359132563637314216799669969982980871391748091848769002923470685552935233119983720726657993294952727811993306884101786694127511464746307931708081948857670391699206387098936042178658223442588311492520360520252917037160 + 12929687745946771058774890780102761981265021291547652027918124851476162039702656283819477519778599077024377257897269880007849793416275657899248025756656292667366480135529010933635900570236027371288086299309838726723317439183177494584195353882020771213531060571446886065426984265989089526940683700813954077990587139936710970285064206342331975556604010414304024134600447668538441464708612528777005869247209856477472091496181682984086587470152315672266096571072666631837202820596939888048640920031964517740563400486414396304397764864768189406594551697721818769237471634873326680783769715259356596987996885328375852640940 - 17179277318853905557144572619348419559270502210580218772210987817865505388845489866930099817177718930663391502730917455476551534084194240014231891424945402905964868424949157574837027181657515234758704266552982506166327787475618951538325875675568295897287240189801324304886958791657088151212798920824708067853344367580476783549416920045336741964431826760639252962006830588472125726346320957972003643833164449218636279159585452384951579128085091414110539131775759660361584619810008842296894586780888155177596663946961616864269820396560621464016301615250607361208386611647838826403235442985554126343239382376474619367728 + 12436107960433187554726892331012870150898006562226030598109636667430312227701697418617300397285798961993752389001459185777132907686019740134697803223377895270941196774945412752691308225076783379473098540710324405450671039833518212512313649115361452584965703439665207432729178572918726905089645056861797533843955204408438467280105731143232463027552987468801680119678241557990617381971641952952845018483727159206262983283646473960634066851621038403231701654948778119758998906595301066261848867713577960594558945493561571648913564026413251941558644782418660594833034633206588099516312214530564439157394972900016694706798 - 9423553784525300299899596659717693219367012025690944678485876815774114084418429757212745977629246440906516903855943629495637294382738041785078567485855366388220286180353970581358454467979324293947680599852635327349034332177897864619077142467110791658497269208400504023639953012510234433060384174717785606360608569173089882594090716874381433902530766152628703025132004126484478936335811649371012807308632636321398561741710516833967995706670861106304361274330005727506659526820918668151547439137774296820301529761184050096495570280041479920350916694456751627808171885222099812592381962321075098471968467804409001040149 + 19892862848437489897306572796397701338974222971606796139436922335207553808050400458595407794154936415763966486993975687700037219476604795055943904574934795014896321882656052910019187946268859906809577996814063634234191286115505822002151300857139693209635600247402396173738085359860640288500601841753355330169236268677158395040266671809961419729566845904798854822520287589538889300512082718926965112756635941503987242287301017029613556360049973149730701224441348749024505968358118124772431765534282719087980097488155811998899681718677442394341623356012439635304765174462475250604593981747843768786664502182695987478045 - 8587391938552648621739487028201618708423305935754459587036556401542668687550782100112354404205893921989993825486449062812242953349460737748048230232236830175184252421640767153090969774989556729856363990119720407147676842280917992575880577646229815051462533374575149989189080751530771623551435254093327201791993473894323466001042691365136869912648360737822167844552620513538313420853501879297143953616894775554534040627615877416855997480465819027671978819592128537111678064609437407786156300904054766723178244390380048277715207656935012471847660231606937616806797179464395290777339327203835860909535533448788783178292 + 29595101615392099687118015134079665236140819304058263898346959477562536302319939542282253634405732477148682817685826734816189141067319412278112343378575672712770961049468232974510499540226522136805432463192862290507788791607080992524439233865498624765984997212962081144749584678527165819345668279977242459487286474455026987305075882204995257792601026240100326526472632033790263568668583254072375696934536229476535160581586742293247468561846179846965419617596083813361473518279391212672473604358695283723999696359393785144094175888100269438166993773560567869177397668438132934583053641024641429952847374410660516304485 - 4762651860158865319800507679760491329132698543577821107362930047565239994879836061020495343636105196383050302919046430821547493132037896850504382256866058524409832596740836266426396262151097669552264913098614553172165937112480009105064326152656627004202370268113954386034758778010965149406639955359809259038568466214280361076567323188872289220997906390013367758365779734367364066066090709430325863308110587944908430946368711190979048774639400363109282935671399230148851358402710771368670013794043344069130158811163210877469057621681957609571404139926424889024204105162232833382197756036505128401900948038848459792096 + 23323944382026522591616623033696575702783698753681674387995607326511845360013888875886056277763378496048226116379406090759776194436465455796455852636685428813770204106395847005564099121652153635062233895629184184915202489422311479720584709678851729122372615631854290243670174428071028261753029008101452587976532463672712532636810281901796751587869052965161844104047145873550919446074423013440411838814472903681943960017753304690897872233616178754147759852723588117953342047150617970565451588582389902223117211683909567067005759191866503366128639839129797380286740476557778865721174242303217834555230381871462090209560 - 15648707255651819663831769080262322181753770491676332271353016053796325517922451605299235752020221804400888346553205003869435996140251442258559544624617177131377589087022832830679405263253828967245865039542284541775974223664845488380576730624678184147425837223939290350668608727356072881309690982289590285169618346691517951687745026580545868154799293709078213670741513171673516919904954753061636028044185392512330893964324283892532218384311168584360379080219691772912554235860701593814021826879836901903394103884208745116388371232131565340945594530504770946903104765812030809358142364609947045835780548803377939497407 + 23531296129929953475923359875332218039147673313988510979244517025849213385219254804692095720759896138558628433541516981499581657627903158887096984544272063787020613838685751854456087152688404923132852088062334742685534051507679876671394931994213371158391349010781404877752852104824172557718834297872705681329218585096227210921066863314592053401094045035076902724441677690891563572581528129058034019863628241553693055207111130507443294415789339623402679078072222429490677437505184525567010157753357863932981054605060005318841335536539299656095233064717178972096243423296485048408285614769726232559177428176550620160485 - 10103386589023131054171767070272018101104238433731558182887693741501708934293786719067372728513048231056373050472109457812565473987477387387852884153097756073075208185771121723186817424192824521667171346579394693718729558713134462142540615487267806178779876763489552516995987965695473812719594336781701313576680551460508050314074330421903290754831712042482525025958082106471021488286284313568175157804109920583004498342502351442955800362114617485465549750213975323773271322880524967938372814865030326346163404037031020124947280572623516596954478740404900104213176131630351429248934534730451836816506545809905535374128 + 21430227307563419865742490203802971111872513769933877147966426031962943675434605701468067931782213130248855249679109832827450245806249559611197613723981775427021717993095141312379417449536576689778764823055070306687309184490083848110627082482877215210677233570684943037510208779577660036660321444151856896250315573610929044227044907558361475928052868965959861387499751014347473670030530335251042575965560367027746161641562803750133188551709672695206859093174328949180268417366532053932501850953605819278983856671211319947590782192640471899476235984161787731920791787653091399940605811513650766648196876742882528546162 - 1905905670361484437994326681054071654208346104504485157221342652315352448564157958035506813326712672972352151639382932855498848842064936571889328970898540059250283141990383585567325175269412222596127724412203096237312402425624492321706086224020889361959078725712564919972656333076155106322048641923193172461415105146828243145789715192002983485840444985144042085238080158317266019090974337600942918861036008277814720838296670467683681863286198600078848219280438325794060570712982917629449520764886289349665016300252983479719987237606487392639929367469997432872629064093267597743239477607288959807622296263947489172123 + 27931519421864216840458911427700941784085001481008315647805060365865098193068813773283588567817108544319800627924749423747763106451623711619759423553131515262732860199186392086470844684762333259626743826756717208854631300887974415093061978020115496053129826566696270516771200805951160781574061707915104220239999603032600816285974067526994823270241315416651610774371054921335806861971707543873638267102179128478826341693488932221463039745762218357199868938878235931084555341787550990957149018262014590342686859654035484928734095957385693581206573168874118393074085172338943895370710820373786317703108923330768613340995 - 8955622575645662911433267687391814065492643672579014539522011350817108621390459593624049307794368849690128240358099604026612827494356961749561263772415827209993332838582587773626417602469828878853135628165370802702496715488529436869419403583681416129802835442108480357842377402572350478368590600873909626101373692953619887877458791720947654014687201142998711777144907142534669526122980961620987298144658720940084968817797253813624763296758068670346999730053343992585188089377987530413800619127576786669283535630958906026201779552000172721271732077153454064350993033893604791899964411607922306849652874017189892207229 + 4472100940704543503854885693226838987497401416917333635504506341540131018597283586512086324782180836983588837997484694376628096334047836043736622708441746636250130668125018454665117689454943697069681199895305311502435390849551008130123419238067987673581106517598898765890159777618647280735480214278535851993141285174088071586036897648735899638030315025780454771810657355584013760699235384128299114318800209245604892739060223235249087620811421801130898902707126671445489400557551029144226349200932149944461933323499686378046258987422901236359260992099214939095121006560099635425006661354550133518884203338172104645009 - 6423721779657052568827518742462734268649414026562015445249904950422334000499473793622699713266271443807559192841148257084535883133387959803804684270342590391805943461376212341255561950320405108624084362835062802059330527461175459514664305476014489184061546146789340712822364058884097359280826005934933025196730603547205798342978150951275197567168346082874192767051104587795798635832596511194292382556415873723338363742094826990229996625466049548933188188793380890739012619749372429259676785920051745278748599793609097118487015959224734108264658662784887873159281321528577968532272613356043826788877456043420773890648 + 18962559233255513160030612000430557954712743207871484582513084611964567693788215795040963177349158879996264342830994820947089416776792235746886350072468657221844567401157311603369890134428663533877878531191433031545220168432721562851981180607079260385450166822083582211041683180949345217228208202003467408451705156818556829184886205532071478983363968243187156832404373055285320916942685449362067901459545833716078715260227464304017736728789472471427813871308619518161487987051860676667496676386855122046476218495500544915247695454593740107630621133482960988353781091796691356155114393821900127455955386278235148887973 - 12897771586021115182985482718898314865419060637612570965903701981626017804902498021006665690780501681268492587901994275634016906913697427899604366059442586563045545943842470462294881524290458828058416112645832602969595411505338296589536580420678828597250400882324833267218989116761040573005860133588189755984856895518541476065931797662890930775800686429436968339137308986950214692345273987775772693813489525250169691917817092846984118899897833441063099761823873560361641240927459151180946489349049800202520546166760378482503454119350168335472373265363642884297490670763454144496102962799218777624955591721323498635451 + 7172437424714102910565803525710687920770095223974268814869001830781580033583780166116915448716506046074721761993308258586623836338792239253523068598918574049467071516466708154546820778267098060967143356207644240338562122006657877237885669744872123559015970817447811834630131472949304991554643956149308551558049105685769706983073176427566663886854742945221581006676485237015679567148633910877656409222333669036426297833478022781528080804589679435566948504564769704616969884499749612477437445896778477764654862551649628038970820490704267261106871238274871091637481367602133279544826891530194205265040331001887139393466 - 12029669577582628600385969057592495655455894124566028871730186809040398358195306353983125874540096513475421039630864933761087085351218240893363662500604341447936922893833585721137144596598439157440599565103817639037683370899931075319793664972807653130361222714470737971662647169346529290680150156237178764974147063500537693331918449473282737181428819119303066849774182835615046099944397651147056658082236763539647378784449180103722115270187291826906040002539542484510097957008582925224731197874356759132366495184315660896644237203490795204237359771155669331755448297904431334382997650256216083332371869589185035935782 + 6710945280921658084450090005359467883020093524800322727925400792886433462087818966301482469539433522144339613956553846368011657752463656050065262297957681467811589341100436735389596150546973646930870455770502277976542294841342577143415718095844030986511350854122817730970842058348819219615442472956092537400906768277195914261982248201593273255925076704882812112537909688869185641446730937334086370400113367105419023084842719794799456653648291232572816835608496287826061037437055767834229356218333393901645469764732812497453472168677472727117064568492821248467887259855396335148598866051412708457328085211121365506152 - 2478492369957384000449714271109968663786857678796491140114262255808403522128203449723017903150223916224080051232271352175473954405417344157561253632554917760513529609362288275830321554161905376723014063396424043307484028889132100878996001299282577649858514019656373857859219165629416268188698169194354689412690576323674446743552694381174126872076811686047151742815097898783255263224933128485753360542008528948970013841198951027645333498863318621220056581842564237170943244369551231630229827642883047703679024744819784973769167064593111437365511944273903233904948259280233421267511854328743015936676701306862690238881 + 26821120195337408303004361483393229975773418087161789710886799977971485212073613808788465373632097646946885721922568129294424645937483926371918741350115756789051351255374395861627994184975145949161101804135988813155467724503212972184315922990901803751869214902849190255080620414281777942983862885439611953365823398690224482101163716688024278850544197262668210969247978315238463740874796395633931167515395091752443346648683595160984859966816922251822659223608942929120354195354210313782914963800725081059438833060016373530942684176528954062725352998795862990714188434740214012491479336921843636531532735187898873719368 - 15394564256030744624320669624158170949429353955362334155728434960439119423648981856387381399307335724715967918306755576801930560347478249478799746171225476947377944767421371997627116307570682929329774339772321365149301312070551426897500289342440573488986175338761259246108715802536535025035692492338375505806881628553342037588743155658857266876079691811184032708656442820521256355862777149978292195859465895970625331624538560891613991773926847906072476860687496105697373193573684503824956655553618863842099280114099822173482300305206018292902571356401346814954989050611585943322292853691171112619759020892936836635397 + 4582137958671541020580511711378465121588140216987794873273395538910558729894518242377200364162929359973988363827607313621806520731887545651412602335478833117444521973192973370693797538113097800241934493925655949489169952963708180963734378920531408531604417111025681469228119272772341202870497423392351179358283812397853512192661554369357417590501791133796927343882035771888076505373298526771502954682238918644692405437637931316202128057274350403548772733225519822345751119632212199064719303521724427609883491839750945371292628899165497591381376852035989933495888529049242855972512142775583324950071511783339929373844 - 1047465780678517014541876534712179642245633709247173737787630692845349003755300838805621606983778520197224490276308868570409306816367918550738978709127178024814991291756046209373313293631600593623927959557298991625878461569130147490845043072911153176644006243251757965707225866732980219174876857677310864303273695961576229888076423243037028032365223505077997830186285687902759696651512182910901622022571642796800981482632056892407382081875520462170293092554563504124360370013990910871310023185687480406047905451866292171780132430930651581304343219334167619587920066001547081822891687919837448769979238031401353542828 + 2278078309144231851791095009104279225791128224318189015437716758629911570266796052708421233435886536082885330901312547454133141001779115556176390804728988772288777733338656536657115062824322412626363629563157658932418770272371342262048540613771493577187531695894877453221005778371298048494708308610021674182302212407171864516400948330365417512250897815977020539254644036596669929073123322934189308547609874223367927958708837348426902990697959742415235960975865430713131354642832983842476256504312079970213167858683997178984735306840259254908704097356538855597478131546958008315646203156937006405003018939557497588851 - 9162551477069537198706604964556733121215807842136415763039725367579850727188148241853529736507188829787054232594244374342053118285434744315028023089238855260572827116857350748921843616523769687746258757075502845889964198879375157052674646896241074652911681634185057292868364510390606122060728278372282893162529427260410203093966350293752538192159210016229612554831495052955875403898252003896471036583551515545088801014331608561541207415783351286905475884360701641629611027143393861281198907116403246238426039599707997484506466697165394814609435705916991902919204706800247925151629020680974691653343350910143497247056 + 11815763798744125918554185189614007742660499255576683095549289035799611909827049381894041326494325705062446467239296886529171574010260029811158962355601300690322406590192963929629155325977090216356926317902116586812846955203198279220171895031163675920450537502113397674327652671546352804248672901998075981219958176357802310070872937103805022535661060234599399618307864455379733285399346852156980631404765389714788538106602684693283481807983727143651903855312220356223764823097938486424474496904066123531475646066558141996068166006840418836302478303400633880544587916103071056241517550382923980519984278364823992034962 - 3788884128538059456327349871219659982121551469845129109045524281555429116762565253976630584283087938878160729637233392153748579848367576509473051702383832396691500035006843630801649771694066773345769932103421716754399369999826982012798635849347619653752779296530946284002175918801258141009378438968833189662104564006076754565784847510075102332387812772646019728927696248384851262357261103352671558608216076691721768536736685177459102980557382549682369021958128048372814716424881851299689382273947873057380997467562904481787211557843436038987326684584058855599764784580496763986084073632966247015462174291218989937387 + 1735215013010673238503956851878032256632559076532469388959359701813355709379272729529819225894291266956294248013924565230358449086650097898426059862559461408325060764735316432599805017219185230131983793434291331225108701894690417836608617979751679957756007217571137057414531064765319340580428562039665823485525708456544756428601722155280735671365961868312606310878983403508555020923141416004163628291664057745510669216731222485558223807567895413197614714200685673089178263156698681614279320571208611278610223422407142508402841871687628876845116553933581190161067403461471294923732314490722654951273639976306131409827 - 16458235247874295333293304329161738768789579240719999658048419203522700738615792619942656645455187215299170744586179923679675995382700692085200191755375543550030589435503815326196651166986401763668019010207070430262268327818333041443897358802120976767267942099147130889884992642247591706484614635663608866799474989036170587707487673987686543299298361525380488310682823234871449469263149238851440427534012142796219327682607731564026384134490535711705056557503229401868563404774036007261134473822526720367210053398784508842825377884070969765081270209147147076761440163289546413144284292878583980423106270267908434766535 + 7820633747989256977138742880945768134001354613272675869504755182172136946793989381491880821795832024758063936803638595228418173415199446066496512162463860254145001903981053623907529007293038162007597014001957818036978225932136205984727511179521752519164138983874718697272683086293731043242175243510865318712433000843577975142649393751681221897717381956829462490952177057251278966644530506833212304876020148312342104710219134755061682953598349498098223982026147802329474550455219547492076827344101191129058524479494338781004434677706909237774887053790647295691773958585653263056766970902540320591881756756761781390653 - 9355472047663138104884861684758967430564852920953419824192772962598593061610386327389490210074027824313728653340772206801281684338413356152885730793982630389945729765711104605545533380544852878610168722265900476703909254963877024819741361607426495400242492652336675770695084212387361417179830590881880524970444509236589438659402586137803921778684515341796384592864408041319253237464165565801263878074511738388611666360438917258780057788224372793692174053027846891708539913426290317959794219433361422673720679611247495632572130331838277880034234597688397018495946558794554987165665969164447210929399412601787789268176 + 8261083759916941431433637480698063138608874918730231821364115533950045032453057247100728892782882685799791637861480229922627623061172950715807084561691158273095554223081572752251555075235551839514475921739013895362743026410651440057869971315627493088309470936470796592524940148382390538463771171786152344523439954904323344075961607254521607461995580952155099961165900240948126931235153631633437696509723833987623307769410224433514822226732098898522429825454528888504163518456246752900948762535923707813723347057076399775589972900342679630693723450387519201078987086247282861483782390556717958508552549336261033244353 - 374715444252682595642343490490135179299899250420685425428066805070882142332238204770911363274962309327549194707357858837310055871933800998860526452433332414313916434221357321122516947031778227039994723783777655035506250495792436719821610942317495113612494182862211311037870070646894377386942044477216088616475907724618160053629685750068767276962887173582414806946182146458574889792029055817530617206886427498087021115312254873030362619413005817199922369094723671659141268524571137841786894278020776955039662719345767714963253123507264324260970898827976177326404649803263393992572519307717895258600799102856789257316 + 9269862884349647846130691066938174546232536118278875254621903176711681044789339411511972189140876235676958144698236481066778987551853594936942217455687029660928822644800402784417228221640372213664090034781150198020666237918808812625720282842462365051299782901526897133116834179117851065812301244147093472773663709158199627607042432645540600826770650889626351411393198506292625039426853800784590405210234124617366825615292815700098956488855461755919739399885717632736712830044279083697429089140537791536545788755345614515058676996631557013834231068391442005781498251511561361727935641534188053772639515977220316693220 - 13154281940544488395908132407062600052148275226572891511429330399871023573557795074156623488437556035716042749724480587464861932564919557527059281168153226991590181144515314878826935062444834179229405263337687254456729415134783361381001615262795723042763172834438684904080600858712097196070275336223801388605185556615314401911692451190297087136210293315629999574783422040820379793745339396547046708327530497427653073591554135507956759342478371828361944726793273773134608323454314631538364068127240015390024527579342851876414503257281173939470425828492967400741858099716234281968242217491688126568474887653168203485343 + 13610545113785475861311551343666426147713733869322978701963610406499120487309965148355597794535214368072972667597120608071690074417384395876488147515824434002986784578516219071438568152192878521544405555807856583909861913584974806696232694668356585310328041897887530671798713926966976861830122461761808282112692357781958876261802411488950585600228449146189172831051713695351611374356320084340211869502911406960792348941009927404492190913457083123582183855925525752070865780365688222417458652305910116982068342518555714593882013272979557352053722478169997693487885339342818597931116996399793186962263509658991045459777 - 8072024261695359438790442215446855900887693566778981566669049659505976557973355011372185525188043339569959763080266293728167158510781251828726687349167298440224837673832063093406487572514308808097529602233039324442880072941148173416207470937881127564337661394811835231881785936333810111211450503038357222761528630951102970649715914322682831864254347279191801640108237004907566487368812645090750499328477681308195587182707602230204187648103541651609847788865062432209934677140875089303931046569341638605001976239776965571788832289314932460486258483305223585428720809817893906693212540951899384934302014728604831538390 + 11796762105636688128263709295536975940803669371196627599783868845149218922555384163495815754854958231965245233763197449912746926247203272367816515747227586767666242638726042343758494927102091056053820147480424482783148727135099032768701744374414939403740221309342095936718345437129247841630726637818376241391343313861939168559696714829216791610152631722084347442825787092767699934619077015622510123349277027559140253022141011196091543839994445763794672950214702392159708351564442649225851114191947728134768596492254288093285389435401556484762028256872244178095364612555375662124833199869747710496618403379362231416117 - 7189811677963377551049686211998993177461153664251974813779345541802453041278580604483826626249954469338792139878456617577763433809193456513956166005188606038131171011505812149917098214098375367384045527575376565469696484140416138591721582740790410380382392407984137466169484972518938327419934993188421888887375729966038019667932427661005442081728035743270495923443939399447999246520431114841687957247259302970471686345953252540683257661818395358086505131327596790869554088837400598462606324520849943145213211259612929074960292076693490492377125449474252752187223186744534929745979780759616075448743167694868910014975 + 14940239907376865240449538649422258262530714531204845752648947326614829313603556042244998065377458390871531644480312137554946755493672501672645130847934843132262466296254780770553304634054214817151960962230156398629378615704582626373887629993988816386046474915859926721419766294259493021345296555966496320855258068420820306187630911005939363113963715044655206401958204349671392260863815873679167342844485684286488274556196769154526471893497167791875947469688843104100686540439016420506150317453278193836852811514552984703797367494266074998560999013138961964931221753775574931205138327680115743495609718367188724480015 - 10534120281147757079593744242856872882844524275467790513083332660151561595305517928209718326757401659820353134095141326627090069884936090954973218189041145801152595459432178616883959139949504367743170068980112799892452732050019026772026391050992322992674208906745800884130786031351702375904224007752909246496394937102620616213540409931881377769760674516351029783272436414152046055350123122672064421794250891077944196653324197649600830412273084888583367073680590613184022719711004082025555450999057187770931635618110138616970270391081396805258975356354524124878427034817356155009673506299753264146076191595590826962230 + 21213120955855572790419143294451435033304967086645717391394008815644391045955042011066516262094862358667538487457542698985365962890486769294896482586313125083166473059602773782754364332927328806038045836887382411264034171460117719992014513086922912756669612649802037241640946186070023000906846105082642225150966992368105779156130310201025723801641260317083807884874545013625789708177583960955565788229406073204362327940434392798095285797960915230872833027518235023462429019724689207653045842259779625693493868175956782511508187668682136188081950224845614012577733012488288238092555090088538379318743677285512385789418 - 6917774456566163380789857320064984638799556703157512571165221183755796501574995494499757724041290518621898102908482618602853598351127599662707723861309775408813606024693147562260222030311970018433789101030658127717921336044194756273852760561180369056650829072817413238531587603198843897839763075463955238747127890625240864236034321413974940481641972344534565994918363229356812456321589054839308647545119350708232134049678448425959191092907764552924003534472669535265032292099692397793098359404967383613851070504286904583658939321706711900206900876519464064602424914743197316970767528848530578289778901986315018986686 + 863272918865016514359102278451442414948330810888654528410159253351746446244282157052055774239161213887313994906448854805526184655485308038241921740176215347925166710855053382432021040150953691569984221146978298199243400617782295781550407133049641208737874222373306012339866394387671135060159725881236321598523322668872812878316224075572474247805760422982629826490428234641981908548490941945525872295328531115078499991378339511751531191259535748885611027087497917992358758772686686721538575268020355291147657433890915848692428937264610541730263277074171435717469064514724407237571549339487363718806975172530576223831 - 12859049989868994800054305615483089412921342743123811170224364261201338313442338702729499923048212368721576375744034585918716588844322302535389462802369117109557964104082619009126357855221534812221944505837543689585525540395894734337413862693879479300787893132109872637424983961398405959187657318089919728938954690196274879065753662158493512209984561230002013890874068350428754762296010565641248698972283324291106798733844423943832679780545149023795407855424560195017922043044024043664080936826387704088060858848617063048632699529815779121620796601443020837463018195962854592222641737675282523134327455097154499192928 + 8069849907915860955771357841302482458930912419949623371993193861315747459666987043445060588566959801006061302858246934576587157003170437625438542760769290515337359479144947863135943057412767639984590922689343992873456455873420510186710009127237121563717681887740132890403359462984938067656165873326936665099300243169629525472507342522444774526364879134548511275195809661429862592685463046547035825296444078448208800149990872389335271544432495359489868545884408209140789505749430463231726784940304295024247467911456832703587002792738169793071580513643363882569441860455046250010540047713352354726686403777193072662661 - 4733523580065481766056433006345635752885770279116767431336746509307986873925395036360388359109322759083006286437408137787352461954557974059324255173158963102179982530426998871086783724818249348671301955623400979894644966024015818444347411271924211289105048437500330694021403698352815762425042043451042949774236582873441488731728287501423824228469139172056792594417897281945749871153287865047818092545359921312003820390194044459223397170302042544857966395064008480939675106869391175611268334126304589536646350802233168787319980731018371266965335074891451636555489681013113208215697380342565690941332650463188680185859 + 14975376996872118723339954596388393621676039249671065548787506580869131951040060059855834623594359055093699615489758340545853324669486877194112635042729568016398853327198650433781931567975480750811165989130763167982828432002573155225172545901945031029480883173459800305312471441546611473651544324695349921266438412843201261436599538193259919541786968883114501938221759837713172611479996248861097354695894020822845081363227380807246203049725828552699330298700356861352613534625752747793046414614374397672878087094670872552345602561440532840561840001402602444559872410989933582639086404199380400596612202429294630803286 - 11614450201453576419763283659942428026836799772399817354741865558966661092129550318936620921451120335427637169222998247356812125230786073962808488916756504179659087981041246102824995945316626448652659906797481844063884619126525235493196713820190674319655406628081641107000787670081843386838646857130855561695327270436578302261540890275267878743486463269995936520151415199196452174365835323745077057667270509432125834636288273768683926136188466435835425651751932997631806713767172584244118449886124891880620400334416978008342203742745884960665530334359104624744755996977756513279568781938782323263448376988753432743017 + 1842725578832451824200487834361577942904313848068624561828562209963610351299800788822877211210300510064549216198677478620321258108549929032670535377672974975840963494243448518599087544499596694395397182248583840491379544279535366059913025744748098757163420085126550375761534799141010391169897641218765327975391168697305351203150500140916221933081379878188079394399339920681883621860294847616241947864921441032585262333205670401929451483095779330339786006470529234762788755765054108161494732833645240756836205905957090725288030565215964311632547194557562903898087365015148216698048556855171386156669412094046128806610 - 1443706601584144429864750679250448268273109644141928682406822688515568219952005229657886434520355081228491361207034623592838781453488356362160672520470626120177516865555720088871332098791894227530562127931721409573098273370284161612340825154157487098618933962952531844684609167572409228835570437384892431077791041546703028227198958328231466974842535736161237006462003917285127012538738035281695344470832829088208387188547413938847331094268694935037037935377197378550038215139197388328738862081489817573923407882337456825700067560450556610798109341318088328725038542713478526598983651878206535082049350449274651622335 + 2530043780092628283444035703362137750110341355572661907003427013604549374081435633558849169421592982256311021863053325389186517014198504154153506333870423595062924044664098658445809911102324978754908576372995386885859106652482263143741474814667864789542400211270773186228781723649417556449011359237274183859862935062095263629218492224362304149928339838564117753178922520000480113432999887005641574724802684238851774795481430991503604691974449128809940749606145225046173563200160784789886023400953548823660743076297297478862112502251369177434438173930616525248275167658226015459040258290594822512524174297115882932403 - 4802659247656622465285771723840902338947352237089529247065927300164608392094007741982058957055298176470759450388158118711336784920821718020535604226847827407974611559681761762332106175745624668424293279995008238524419160719507642841757767604089885183984574582885773732876747548518316821809579727315802370015192271050913467776912748042901872283477813669515405744742716635144269917919756588455028591058059957074882052880613557925056743901841224327891523340773351845062173609547532477810088628236936625631210438526399405902228264102616310915252430116618022996452994171478760962390690983846586599294363531078213809368987 + 15900197898479427646761015813508664373431321596580482114911207383879008662470377088147798185156593079293337447437082936921353836257205547022693729834362323646508649041710331252144348192131617830856145380329269507713837202557850148410947123941023617943041975516465283167902417125957564183816310209980334559038569222544149777618506675902478551496894869323489871631880556008270362813669904669160537199672804066140870221576032108980820081119776576972827888207668932557870716635639507082602090397887636097055794937022366464036625733092275072127420816712136723607414327823030297604791122419613141627872165572975929408408877 - 10182334671856469277912909274024168936305018501044432623391193523407391195953699800046048601025127272581365618339325066748965035207619267959193756038113385015034000298885826317003139810941604934155835867583920348972666303621448476907713916580103102807810527539489813720955292054746645224444998444098025216336412981649578235784706138268831188540260972878567009582115405407307224186111683363081161714233939927236580127043103823086999872246627928619980147045939714178623524100447733457351267259988410922129723945521505345424516244777427187943913781915051553011976828358583737668391054110208034960361910608850078649708684 + 2613467183040337779153526381443650856743422919844180655521378481060353203513519028310422091353936762409725743504843931960540885672564068545620646935586257514335034182020340222977417842917170300369790037382717086799653679004379581700308025656541630238308941277782250665755776367246391805063928777959175493431671297965150550853854862615167985549558786962451740023227291053517980065524882490285928590480275988081723119440860472389270815449685637138815265967866328184093198113288760542092075759620188321679501577372444936428237362365709642206520214782708264750336465354163268335041179234679828547756220083445551375733016 - 10076217756307912783731223237784420548699800363276490634852120755462052719588980792059933900582056568883554519556639820901459842592108437914122409605264297655821330420489796257877976747156930776800635561242997693727047148585481647129256638449139012893220137170379388804855145824029360543041408092472523200495503222988024590508255255896759108456408533436866972763411618041603204254063135212117737011675041386392334214137525464153653455529938022233408838660478328665094138090100584642895953981081946693568797114300902919660450912153816461306037718286756048095209574480763251420908676852564198746448232553175803519332975 + 13999131417122432796120816275084489123800283793208471585016667051232164793997259937387593338491644127742768340162061532300400828097724003813531946990176680937172485128586233628594472320189890595407222173615395460250269594974843350343086168728484132822718981099611522452322310062712607521316783806286352907237305804950444628639000427715275428795412993814682887908578424217571413486550762416457268835683557537771525869748231107890023177293381097022604634284841321780971289018590706572084158447202210512259319488214113686620850923827382970777739414792306856159555912175020722058352573373095253179917917242354874810062221 - 3596906900392476210624428292443101193717351421780201542015878912195511144638144921525246839839028222293746788692019462694586553277518504880738991353826896659081826800037479169098433268216260276757188897744816660349766234775745584990857550937799040714048214170072193939584544438060779056367864425085638122865996319085153304615964013834149429735565014539696155132532866758362766605678585905602455464071741053836095868682580686348327046825261380963362923593543616541459636225758087933113817338526230733994042061247594314037989808895566391406815056740717135235381929596681952026381352709228541657644205900898084296011084 + 20904560520486735358086252369937762856815190773953510209992329657602640080162303991025560423324994240786394988186597717297250828214509439031019663044919812869661261157537273437700636401894378348719884527721356621216736975154848809339412462655865951399348007704415147394695036798100867225097266944297588758060413522125920576725183444053985877140011331152917498581580988974937184492814896404165791530499241826805487782127552055499175903747339147697925541768966560482339739967194159585920293793942499765908713498545294288002342487027338321549591548164280474127859345786225158153183433428952451249222526980738281748535169 - 486924822858918938578996637775136128867240604844971769155902177175871526568896207301589837482585053882474219207570005566641494355603809380015176055320926078997852185869750245347390588532006077152951004187722077777324955727967045711341308908910217224490640033867626335819252706141447945364116367591343581015195138179121526590401916136980552103596885019430176975586120220901621982354415491683427521942927671958415349111096659037436911135837370840904522520003986027805359834840301312718433620151345384909377127594580919069949242746549503927106900174114908194265095714247022197952004661667003051600674019386008152841203 + 26387893739589785491947567261364590829592903833953709638924586630199338316983784305067724446559052076225422250202091329315898657864499754355525254365562752855365754226002050801366800904583063017161317654217767191587277556694310540625775180853006541960509549331782605988797726828651148036969830149405806117904108079600540091318098675628475194376954406500465709014452704042692155917259929269709484335218981985296114856262450577592811349180531764802504812225195489688525426931116478572522391839337966097634738300530463266500754292026260218291902750443266418151335026218088993608110966882690046057612694516201646043976353 - 11562041432173877615278798146042146423003291058092922856019522943259229188716933765411429016558409526754742222632193041390075153393122617268966088443817979702512621019165494993168742036993252210646125369530122530460686286466797413030315447891559001606902355362006348887635009693297781315360695737949458137806315869206689036398009494743077532836669984167696953716465429777836930204666904733164277750976686875235717125368945495744844710171299232542723351836555433012180026172659603985225949647170142918653837399742390119302542634205239197759861467984946440222450822264962296057638905201630410821255697222264588985248421 + 26468815101349678302296863405771593189986425713008782183391866367148795986941859319634929153437533046002586054233283714093904665738157734474652936312593780285294755489011231599979410179925011409551063695472602970554811335649154432529113829014230534786907828508634828924112570719300390272602341428571087362296127358821376977712976315942783243160283196941122880278628031007569587177060224805319000438583934382572708793960238110023290589683087548337253435519237440226967602279428707887787731796934648194175932436214129739546372607982861199285084926384951509722866607185335698052740594895169284012447724225902033259116152 - 4575230650709119970746926349113122776875164415228695497630839239561749532326204137624635938745887805816468914088518769135818725767176636095369698825225935147145174504241469624960230250423193598751676863138062179512595926532366702953784841682755246601203699782646183229147634085120828620368200660459665058716686829353691721266706947043953568619683979729497081109445471557705100506316332945808484381709405536490632971212992430662492138486302954993370406051738154625326308472753916896513061704687215326868295286537129659404957955673031842637272040939898114999789835632591721370152020149082918676069007407239885868553112 + 28033018003973351614803163104137842414885587576386321624883736541240721142000310850097730342091918309785431110798291344794052178370113143138265869150083360970764450573707153579093697336228793700182164515757744589052266813070390170450764519235464976464102870832258689630498441307370760997059786217180496383550090629940655236501946150041322830224007470899589101519207547098364508118038931459013784936741257950327178869657012493463704793959094022724838583707641567905622455982108261146577075198847629924387632733150691902826897145116410269755297448950012412144905690596471030957753351874265882226450576808879165874322271 - 13957462977210774143098438007421421053263403167941195744298272515403918098266151576973609918923129034403494663342444715817558930258826861574340457509322909893217161926370980587438345533065414095482178793563188004676574257891551982105749755108343366085024184759774688539940841585425818182500660894619013268877404030207175869169879155419698799634409442116831224172945425313334142441240805960911450961901591237726323832227476729827596831525061718752045904484612244732701262385887417751680748460211559754255267736683034037015697321125919564737008353834464362518972943553981903925943070555078025676488323043669889970540379 + 18152539362352836196538864789096233377538199800116209322947177431059288232220839067329191325567088460970160541116006740911096214580147881352697539481817831516768612440813722972025043742294603946928896099546666064390548940165730539782103750308536601215845332213763963501673776257878034801756344304833827513756068436816555892186593460413499498873655289558336108814237960904570101569494014926826229349935838251826319362397664589489463670828233292114324798344378866542162003467906012328907328297879658620426014881485317537458159489959885026023983568756205108155726425141802572787748382288984312461695160301095145556270183 - 14244958096981890031136182456370378919170639817345350353110939819902169638276794840276190429256620985203468705734753173170654847011720939460013424604647853867728815159036622412676007943349845323825802889057745942368137360566583805679697968643130472561948910369101220432477699931414434466382607294460005735064472454462434107656892785544301903878746142301520003093196581241442119356606317512220728709285127147983447754576166688692254775000384172069173107273151306609862437244496390023059036986156132297782824268581776879817126408738171477269584657420645239657120397503658954464139072815681418804052014411241986193310981 + 1429076824190596596204990164146314971277054913453975291009366465305205510286850612887514224644576049942032293324727711752254857692578321861562512864925386231905420521927410563497845386321875133699202516712465767658877825339232358681742385081040664220687920602966143810361061643429449976638803096419240203352758215183876478769027993041962164549852015511426871829399183068037143329566128145054686660516717549459291150787441192993224627563405016652963465217133335110352486273440423516242814304872012718399399233820748492417403920679029004274493871891021661832435050237508517163947205546078549787839777084603045135903808 - 9521991421456532680343801715704553414483865679489164733503619565910126686999239695840523857133313851444127299426139688293617737871523199529606412530225106819268666263782193750195527010077176631705572672869608564447175551744104775646082053504880332186377728287491470744855265653980092586036180075554236163420589012193052549889065828482301889748726011804602295544332344070808643408800679355551555039790910922667465874386125994146002285777924412757210825023476803468456748848923160165585097248301039248380387896230102105206702349887279047901684679539891240453049184242355089389405708029269568853451886654072103175216106 + 28655563998636809835013207108739418026855791659468812017363251451976443013992360733102009129764228055207144177723729194008071762486028964660329090016695451803247295525675388177397537138700622609764900376510032566375776478424977800386390071552364764619065778525288520780644801332945076620053591057828832666402544053813877940545353477451908389766882913977763246638834815880267244058413830892785099408179910065746948847599799366380058753937039464299714497298441574738596327184437100700137042374870112647605432577909100665412327926826749192712388342544827542323315926297279037373000481503211796085002040842413960750813403 - 15567559491761227131105735328048750181085504832358378849067430401836512717103795027918623447778356029312290061846169700864448961964963910622699082655105426524406544420846322704117417160628826285660814082208897601678579103356846408261025754554060298852543254772762784063485201876038166485648914895808924069804735008555343955182063775835963008800795000769132815487965246104055194827973909070531281190780716997551228108034953043593803231096807809774330640910791441932389410856922069594629643109358385937150521123808274689377474515049239222119139817413373224766824833602112449229468754958563922849532933766419901224660093 + 25006824351920201815403558550164835390422284990750681776894507470946779572391490732506800589515479736881063247042308240386952069173621174600140499224337563467087228887489736217210197465850055512380913630847319346728790750819379830986364012339110744717136073729972598583396227992068230289641599493519590482446810944454676328203521360140278346278157173937539886690370932233539861878586564248049287237732760471321368040129089431681932364678583525944633556905283166120980175980489272457368252976316245326762921896785023340124329649557339400140850834041485726990633889972864553085295514351573054477812819880547319695586568 - 17684311384925216999491037637441831794589698631504800419727046191102879963021935507762403379808019157579463983454157148304857687015451652598874723525639232102622920829283668135824278257523812999034454810206689554719027420536857763001093601100584452272682000196631163870069382031936333501526189832516666650823390665751561310807006789620810358686584620300450976886760532572698604430044996318868796344938777982898066702255793352909497747979929207636406210358514194578596480238942127303796725100724171997437129839454547861192845974543674871867122862695418649865048844240973478609047364079252465591392807380407205814410465 + 16950954469839497364947751760063039148126526935546999690054391249894379856645151056013365635792918879721895507019770774801467501538850987519421171249534882424456579886909383543121836740116665518995796048645916083900323649613789058086649590187529579341752268176063037187940375749163182849285465798787228569309859804971604022584838417105187565267934353868450917542136659989959054850240014203975889959604631552693310891159341295629693264159788766282945423446293795482456172822874286973822864047353035848977916119601818742551251003000341743817303428164165857671836407429159600354139625740731485059601786719156463067388772 - 6196133828969392053212679414986028379283264080362806540365681646894390546792090616589134123731910965046809363802196759087667242863450020817780248584876489308332405984881620357831402565723315105544914766310865131857801339520749510836711205094257307368170965765056169481088057399057505077865559361212618032982626594809378028185076999902117798912121345984971428610052524563334616625278515680700134799869721451561105362113840705437971049093377436429841045995494401582155152587553255943980851152460070617228347598342939930113783937836485808945743993962572736442783026342105949149233467583386790982494719677569655144847198 + 1550847677266895341220314242806619398657502197129689065004092441041739734407471404096579802514454371533932487376564309226160783611334059803259774791459215007518861539510807476543340299286762466433504250092817067706674873072240043125782165728114687323232956883721606486155401927237214661518001091005012096936203269259860708188026496314680837499286747891312964971833390604148891739813117627401085780735342898828177036853441843027213619440366505740425409494782432565896370182576893347529650093107595867081261418734997708010638882169063806175060872180623736919869469702847697039569939212943209157993008605209602284519872 - 12153298490836226169136093190623780241650525993642128033612792166033116569881203602394163884831589479952338526083700176394935489714165124689166940497406878299903151768012892461526257068973361707235405480084230280971657737707449908119670739264335911468273189222322261258275317948466849688932427361606240601564947387555183908241964193821784085194774459218929610848440805585416623175783770562764259421804316801099856979556433493572586527626948280818580071873160181375816481525008904184223401916155635305186290298819306713967014971933909684324611729163200903389522137878171918997629260536170785961845009439918713171191699 + 28023988652036071912417099269742028236349443645822745270898845600701148527703587057919794953913996759492128175600309732580254649175004142439484610511288864138663349540653709854008128607783908975299220498038347551318556343533303535568456657909807696593105902626667639394979392332544528958359037468132006863708873029089200448744861140365319080615404147279861446514837146283572156617552775989808261368515985504194708500230281941570241424038420812218975117589788312780545837195534968305267709135366128873940729993330804208336495535616798429385180874691273800285208180354997640434771579581158509345571027924908439853056178 - 1576314896691422724985728886274531560048206821713834354653037508075369746384770963198682678660171686480154727454496610834242384941436412968120141055580070381235082108488511128416081875834371210630584467485916276221139304216985925853070959617734710689799779701909865710337664323064161118040341724246153295763189500917329895288831220582362007520066060852046383246510843600691832156530729920743340678049550641327200077531369756752978139721362524381248785511711645185055239308002140549753175259136191019758298888176808727815515656447744656703913637407707773573859633718641590428340198527527055630072832447238712653106550 + 24341591910356129911355467463377615846483043799203598921286443354226154550063656652463282300152523312854383694713635796818265037117668934356176539958658159027705630119751776499728969944647834432222715657963658304629353178435274091663438978651034147396823638706564126332503826658778297967628246701752611659516971493148035184102915816403573236439161874398678414270534298741325890408826244327248260484460963783407797575630772611487967302817195708610126870027389271302597748281953015934886968881406594494710045310815420958572619672760215180026161217149101414392391457468561167001219315403147766790377570192851655348182994 - 14936971820929712909101627687682501894855450876626496571802444562272736620531413665068122439980885040989749502754041104533296881967914859127267514446629823204776234004514059193442502619659033288900837098411156493369352955953406598900764968173800089613198457053259338953357475562203724476115802373307210163260687034760068430894801680887249832800758743499928550345134247375549546167553618610236363854015774376912587711188949038486927402960796546497485739038391547627121655924361674456387947930704733668768190661458986055652975778371938989219525384404031736188457312743395586727711571048295596875702581703835278534227209 + 19128460499228156979677575841085284464039570975436858640371652327667380472531491512220222636559966806994794642155900397039495113622046232538082853049309133714858127241032191554777770759932722070322992577773962967498300052048324354130787967241460274400711001104844476331157187073361749459173521398846899686359364466374559758201267063163634148119579711989432595276553904258874868576801675735732356884471330408694940802800645278577145439586749856866071203628123253345402127203796045389561216627258660022287520766202538907742363263382279831000777927039075862103109156839050556263458729213910756744224827766183069536802969 - 8763811055275460773700435195038200635858850274293043000240708564379355884149861081052080596613340729500471502159238085614120251391129365153151369705087621972893365245853001402275966328682568961836312406728145216668659933109330950672916165980492946719283926686495279724435827730081054304571237560240219057455166042732668391935575643567520872634869262509115385523017148563141615629113419690363133241213664513443032710606289614750133596735764689262108563189785572633229477807581950915085160705711892590025043079368027690032151596830917793583476548778949349487018872564365535814059372417107363143067147894567309481875385 + 9396241927040999677117389905394957340532570351926497321764732203339505049534317579388178022946942096227610666440947907416584776946521901658164075037601006304908310941039571608024782130688929121103116336865151940084486392403918874953020597922823116644878531012421416053154117637868735582251120822816504700088129611859227751518149077104746299111596878443161939524048317686224141871874843562832630446227174880492947446968887368399185355941611706168038244914004215489786528838784376513391749503419080394970655640505563739001812940392713828676103959524643917666751926908840245619546967345933189430481329376732331980179233 - 2322499417716152764510687413849077069440614699705732104694503124152597093821723865404420390126060248321465458677970384079823307970883220587104348772057743159706946048498082774013564565515931695643274068447866637556401538374767388887615812662788305767105516898064497487789660242716185628433989242907224979371808893997512166252320696634180534645082979605919787276194013424566256459757166264701707005324251238714699253912568191328739830655354001166027431436406454817995536446438063014939072584053657079508618690922315032883696404837388016790396807094140886485023944230138071950653767734374724329288231222973322384743137 + 25802743835552531161240039605370072071346753790776474033985064050624636692257735854490007446597765535522591808845972308930961969666855905504183653007842288384460780127004393610899956605561541478715472959987916330183662017354051760975730222793514160386478265785540463129624701020217072325717808602332484567325437087787657336015260358055962698442713517126747275537730342694439944806863801171758612144202741778461635882174484775870829364395466249697904571844856823895675276873282051041008502400697271216887357066632644672943298353665788030979142573292175665766310621781965245518913458547154589195338061778962864379719485 - 16279358632995388690828934931863353623165334614851014743129982174149603897136879378943917608809777216826010489107035451147631238833273547044422398762370993964307948487841987660893166922710722475597190862793243043320130248978877091866535289053534761540601622757640373215624196071426449865708077540516985858260083851553466474919672784796282391761553844213686948549324975367317953729462242595294122935755219860101602013843516148782878515692621855610391275966525613925800156414103056030751545721841570228488871200674623927909706358292712712367545894694159354192273192027033266091393367838147616411846128719930648904022622 + 23521521763526400736756040555522721743152802815431453557690847706554989118176686079597670681407159485535054912325926463106911038110787267001894174369723877819430631412000666689657503003462131184839805945255086504797825889291652937001636221305624215039543447850013448236142177081539920515605716489398239353630242846175910971976519729516673482315722521706450187593761948241696721677945069919857027197891381457641415257108098733238028132332590238741265781725190158105062613905715344640647083752698053178974315545667828758403529864753821544309172847844488125001427307573391516900422659340362611587086787403546007386839429 - 89108493399675359730749046240940168404835205993138979193057082011037218689919630380641928835077858780175983133287464064771542100864859923015790550654774839514987847778455600420517910111142925229734814823536672060020966762262581409210634016556435947835142196249855215499059156232570108260435662606094441036450535230222997312767650393760982495600838661351481232744021243071563332462897379031076437401827092712017812061740066256358065536485480910737562676293175182874019774768235421737089553839431299514620651069923337505304756461446343035336174393201889852183731571782287796580671101166022376845247173809505505911961 + 13639279465349951030116162964721599769098302799563901141777015759526916102256745527505334161232765812746456899558203483610659896451116448213208291129699657055757784986264038735340260516770127556326040772223934597423759282907466638436183603717091382137965693502273661426500087057044003488320675928832264138111435418294171701123844538826274140926704329714002513638960544600157263597684730697330150204778424574902796956689576604020230791189899350577167784776967649096073785820222110781795599135553176300081995511352312935223524339481803152574529402872093911058308060847759735131729020661739138637684242429078182547782945 - 17417911668863356243602480005715877441947394373967259798056208074661214519365395307709257033674201464325073315282701312665489721471283860164308780129986226984083358019178321165479005085660824608011974962423942306535788364322812718390251454407805050243106776986374838961469956139836507218162690422312734196337230302771857907464382529119885838430737435706257142541945660534816668214922591085732706064202690736385019720000186202888537054321525542357631545643801117298709699015312502273782186703179979047574545352055127715187030925079957724149484934968226346585100640464700683074623975886473062012026689626216942482134624 + 26261873269145183267803134752154386516914287295605747075075833829294638893080394431543016996111915551397490678747605042593332642432315591370969037102853492840725137913807810522966603148906745168860091434222668991749137476635950840182768358506814792703243857032385396947112557884356907907559800834786021077770195353232233707566301496498514236140438072768482964680770931219017497808641456474332744920201983793779852102668320443728816647061556124676368470249441440790692366521629741105495022597401861130469209065177563125118772798751624248944612843444584497597771291478542508343186150019031920808734149629856751077348831 - 17728638885450113690037911857650040769537743525766177888842961237203831737985218701429254700723469928700315700087648951039001698006453660419064650591354669645475422382236026212694537791591150111106667226478645516184116903783549501583680305381768917651250765289174712037268853698408412907048089140575501458372321180792923704840451842472946614144887659914438112387811519364192733566045439377613844084346943249559692067551609053600602816542861327666456165156796327724379596599566287266157890581761055303505018349560574235089143208876554478419914035402313703423427500396827448812990259685935409155110474285957676686291073 + 19133769487237200183363316785522686067217605992734242410534853749594168892511834685529052202522222310354174723457979315316864954413940812043282560934335441582404020818312542651774801008407053142401180408697428161594167890361875536685198540999770976072364387403090382439322272004076902668454157307318581756234581323320268901328238021729243948672197902173084284348050060761207340264958208022061514085295989259886321685955233950572625378856561178937997015098649910512273507014660338018863886156633178786716939288875040061097013642446122079265000674402846478463686640058114650620824411767527135886465199464270771719792814 - 10727819174225393216762713326503418714057026534634970850266687732887858477685778051359139025597167938078401038595245753950697492510157233717752790271067110043261194204837245730313676474395906652124367408253908487808259042984151929747250351273812037016328787829310558857230022915630348468309671471366787081193135218954120464908758113437627764624834646456080564289661198633373972246995643167450024559040998394281550672673333458741872262471008426257422173886659847439327897133575221927176617836103788914062667373439280639248389340196072852460035418454345549227410527574558894411140077201174573508639699569315599874590935 + 25159061975577135675020136932477768230163879698573603007403047310815661539269443376060343718413464224466502058223765732019068174835076040197603364964205579555480524276726837654703499672907940501991859240394770414170453289655157324613627445951081884422312328732731228068145825392958178090720285431165417114807806176473691030398459748745702505850906125389873566093338415335527118531884559015958644254453696016586953947740672819208461158698232882748047817888127018176532510477667535450047469352850279075477155605104079246581804559462825910076737130538570029195771251848838201565213991191110449116773469329192096075379347 - 1066422929786652734640745110973009469101391810100585507971961345830569049908568859225093873549729971432242228282835551305326913672221206953006115333454657275572285722739989030069959269394672551593952073819162801613883411337514901458582586113732734607177224255031021214154657122744549295569136122260431495272573565054051206398287022255389877651356010221989577145133385005694096906751219086986107609028514190868776807950225804311576354236009097787596686129312899065641744627711071429279100473657676588150972383890162180504913436481998125065633406259297715965863239779058812961918440450596961668840465060713097557797876 + 1600148684245849584813189716347071684170378161747252362162043686403479388781275717259664956673706738630061651554810700412671311450631925746065135535706513618343428404081079335320168650225781429314520548761395906337908151905981279513780023877765877475255282559780896069384778260082312899263175148064479441147576190433764474042808932297734921482645820328174250800635256292934299666091658156499260999221760767921051221982279164771788157131468185226760538754120092486990675378803223092375582296872761293669174205058620792129362570181684980999488232603832414252517775132126998670765120103114848413437995900047091767217487 - 5993848789747936215991036811871054662126154584898614845537337653242841959191043479067302237921465679847966011939834926447101938304597196297836120757995207382884352453441346672159026914213986037566482321830695464012045222064435753780145984643795965882652992071360631150740141991295430905593664908925698817974250482872246977607380058316054903672583698422429452828150546686787102739429580269370045160894172908315512329303111949036392792818815339630260022810367657247588219258854586781622766066280389562177191634643621927364729609283353248689422059210159731160843160782031890125030096189668002453711909226391953674336134 + 5378318288415735657288063662242717613857913544155323396021318564115092612005233102988648776061572700397129940073257938670035060286551382286769676760952803821069211598178083096545874389319678345563590509218970834941123247080719351968975937028325181759242372667191208601791389327698578875496759819581516810356600567161822663503300168334679520687917069190555102638231124683306240807436023545122637963484836236914872288396882087638959791080959914647137245999783090582284159227287754759913709856275913435919172593213209965002918651901656356466761431691143820959683080871544413313258085938091188684752181691481326038287902 - 6072440596907853474191564892422144918068367541729793954977187868160980273387614364502880666924465606399831540352881861049369663254086886804920695287832870742845140645365018013558846802107937060712054500244801783232243452327041529776103466081249601927413741434679087134846635540051234735421494675432510296706288775054412514960724590530490223918949906126040698318694780617855625465789956056414487823272970785985811404300062492955918556208899155459308030128552800276638919738245021125309813157298488282403323796500734463089177408332307019439693953885809389944451532169279441717170411945856316657378835409492585380688196 + 8858341706164068006402897873640150724946633644285126836507491366049221159531406519398229063186018120464716469787807266277017920549013221406491230239661025161773006415891154231101076005154635519039869144778013981456218387201079155256079952693095477902333641095663392481754010764890352441687438349586886148245511411834903005196418793938716771413575680989541970411674923063633608649497563515996590984426878318421493967587007304654128852976431616314119366356404176978745574912095554757052335918150607413261669723301736409326273157207652904546508024821839089783262064951627123093170323742335645471634508772965905834947598 - 6050630071686500879475695478987409488935976719786845238885305800033780610728177291394662896894545817446208909082734144703456900616667716777838074680168703285868560830507632065556541856031033423929073031094808286238610325799110399569659342293450762779552453740695767146863210644662696353675785142576371804216841287291616718894317906903326392145744619111739489572923903868570942945618335595982727022093541703985271370312431680374236049196488174114320811712082598474001492997515084396434194987208723027895421928796202368594305866814402695787303237192382179273371126582911746279168739207990523055804200350009585942782906 + 21396295806203243624386586425720217795116047203133993284059088243250278648271723509032285865978022363535913798933072697898862172530444973686865940937646774014730659951769062273852253959236061727655796272287329394129994448203867929262832310966921493949023719989488000168663897565846665196261052886173530490106139939060400569252505420085053016997922177933684999572303226418088339761187768461463728252199442912103055885417969916421747650562948713260564772715027828269131790869898816784360207171570026957415976668206291961205078898362858012211836840461191326037552386530746900743497900692387494578338782734906267260096431 - 1937151637323651072725261132638305510247128684414034904780357168604670534071476935044376074260572638511526528753132731500503201088876280357885416919613490132415659163501794857382363895848597357928006138840104917409689659893523716928438716581384447277155968801532678746422915291103189830343474202197175062746280188982145814153228369519744067442041921428698361277806883723516589567077748936116513935840409395265317560882314196852515203575274460779570776560508578523174839665659834925561485831039205410761145083220249038943408171823348424892778958737894273955880897438719266449627985653954311792778672254016680249467013 + 15082334183611728941409249210066476649615506272535499636336993247732667254333450824746426391344747907218820408102638215541267606059792980203631126498220765822442962268783619408554180248777450361909334717093001382863526026712700884733084067912487398408560787245095383172306415559820245152420011713490080612284499779637589376812836262659524415411029418880635458184751426825556477993989061306721351557303338108034588378704951860967980272165304556522854658129251821727069530398260370302751008100646142280029690473717690497579440906984296677887689317560803756933938110828714437440179504949003315138433081290375273778109209 - 16092192878318839618987179315737513634674817068718723042812025423213177113390450180451878432680496386579934884984675417888124834990174374834180582108471113797205791349815606615789821717557916729178473625983574041212512980792730408119815310459118494313842950575902642961201194744515715984227235926447949448234236883311216550294159313236475076795294936194704349806912608932051710392539951156251698301885005061155652129294083016209203919510592876781290462412172218131187212350662842281683532898677700180995378824714237910976356165106245051308842865653473758604027011590012128706388128852775378457006330714709782462033704 + 16457860584989885772464912908764508625462051454008057387081223719345686618387790280939874990374495188461872376098509202570130750900593900004286506210378725680287956918289723152364082102977309019245804564897359861669378346094838443687581335725320406023511681358860035666361317892305154494658884384646769575690837486828702281964580144673032124144318316196097715953133439282646848967488892625754199756132154696129986176314058753114111277741892720004002608817997394720990960858268717346832718524727058362362734719286671874792444179561283727446738029758153757649440927838546911713280216332973694546346148865375296215698247 - 12324766294603190525581749137541894108909139995944878246114576768409464010883718056054599571805074521568959108742981093760916776512141875066752340987602561745146642918194081494644724881363245560402056814592510949639314209012522105433196057648314819852493446817627443834589662188349392920272948752172517577367528063450095098175772915162042945824221347875081553089306555307789388977157307863583293105795898278126845131176012332739600618597736625968169676712563199510025599218741154428525865716238233315991588115866614437462365855630987730325035982806921259445541771771408548569262743953988323985331766986101103342662120 + 14489855190519407856417233632817270105957866020179405805383263246158275098332277711878630607148733936311721318014889600112814334783716989109940404890348717300393871189069750180949724718692330194857754092361965395112895290861663346714488801055231365129315170485329801492911986694219216826097577537363965985942496635287972087090830487962762820775046676645759089665496777725525862554741973809650335658926879679616267513515907238381327433474451117960164770949850966566336259648915115688644107816326350344862914250553968361280594030851782542549366070068903233040730156925302910844602813832722991245590126725121530414374030 - 7272885647664919811182614638495296329069274758478993507851963369902597637293016216228398991358420983707442029068374401873504474760108320932573990729316725821373832106416744592254394043875180315337576269874412655977839925371875169932095805467341275208888544217846122619504946781613412254563336911643108389025555381494139825897287808493033228076315739418931066504401913808151266469350876393169213708102015123350643871559264236003381081105351818441505343655405124853647194845802363119721437826290805748183536350986522853893397622236638222855710636863987120411452606608530601104657865273105036307585781447733929058697241 + 26333230970942660251415091601063911788801125974160725595720408127516834135221217369752799775098346249908625426524565577095277264845971957391263616197214640405457428515682752544917126754614477480130894412051337477645059091200170218113078876170069765996404549513248546520498383201489247545838499656118596709643728765650210586344543555603917175342774512030750397813099640784293011285908039303241762343535204057862899156466915779168254140059049626429239069240370824152693340799943584401486016497921101340894009718006043302934903454249342055933003378144123616588577415981595415545009479716398372058463329179772181740981382 - 1714982628079830157698416804620564093161923498954869932330635786968027378195913064801944109533319504244713024093635122922846689417840554644227782473952897826910164899871881274162993414987819717073052290063699257656999239465075951281514790114901492036323095069889861945266738718965231938463246920013308558831441121760190811849575318588082665518918562332608831767065375351323702593124195630121802058064252727807110818580867989638195410177667841857911353275795512706214913150395778742157172684331587101718309450215259098352107159378212177739484084276882249545555777154335421536598169199634396883888072113261047797542506 + 16343869996552610968199631825584068115547596076824848732702931898770022213366704967184605870831525061346289494886466656192820841276346078254068817675371124831357061509652842974098713992119152007396519284284388640822212355583908063283897646195056490666936208783484083454416962572109223244255248424122383192038664148349728407319892123408464525663069300529980825369934275749116345548627511694532305625830338233655557005304238598010022499124963975011702152849302600376858729074509476509986616609865894728112588328294085024633812104287574492015204373529573489854487953751366076099575748335841846115023352711124314534738487 - 13698724136447349279217120751751338964746371929778734179203738398026087487947148149608718476929479455347747180756765237018438295330625721041749164468915348684679929602573980437653738866816965941833320539342562565003098140857676032072833046118946664914404141244590653081848306834857329317594007921207446498067400992647960231222118260252748408176985464727745711917071893137895263811526273770871508454009744912407523167906757584379080483461421749348589353408994944652347863874107518103303593998464851408794485478513196262436909826429280919483518585540847415836564582952094839078410733672254189722786775174674324883433286 + 1077894915516641407047632273200478790374445742864987509316411318824350949950101087608316635409913509232718510589031444994072971764397449731555967283982587553885914304208861571902278735058794692276198695726681986751736768538056738889595728228906163922843239038852434630948634959861974162629183646719927420254081114868695484915307009841149948617459764150197693947174708303191781963719655416936508451411614741603131903224805394229306112004232933672203386116119362897869511530125352126660454717608247652878489430395306313973023615413489166396713728511042762588400245864377241850324536209357172575950961794616038965125026 - 4111118868475412020545054195207381164508734789461786134576869364808008888487500729660800087275709084351584835422009501891867693581813430014245599530679297841978297207882043552621188879377604240260213927031952965447003483658133669764720964273125664092467705153852424903860375827758805192785818285965514328588630265514642549497690136471562336404581203280845280267713178707657567200128209454265538078317465905326317603681908549200152254713908932981815380676218847756718838250818639634236148671150944590572268382714318403853907714275924823518158214303541691391937949218495816975459392144141785150134265986532067529314323 + 26577273291075811316448140137291224718451551382232713357046009494406915408324723018017642479773682568600051349129105573752899557605238092444964355254506537106446245840353319728094817457101771238502110230836413092344794401915995580054265351194789140473839039964024568379464403612810522631229884572141525135846155971573866049367003035115848500970477116282726342370021384038216638918038111300270363781476171608665442856249974506387674628035864289880153217435071937466068111833500204938637216566346687799843931013424736892326721157084468713953894263728296182866731001937295908416304274245936724954697780128072870518728641 - 8543307942902153920819104108300633658257307646161248769242385995574277299885485405988688460330231979580119360491494350384913454845458459611009319730496437103425264480939294514057045997227460037833602377670011877708171464317922296566330502825890833498759434927532094366033678429296824671824149901019363336385163994485823547754454422567485747132580102870913930920417377112280589469698252596405831049112968480794874121332829706178226914169389983628053189318201112087660695809293049891748982236001420982610651051268566917006538352099604650632452078228051522090898040578832379387406816171179166346548686169361221722865432 + 25471043019563882303201672371723925382785389496794850968494121868223998680570674126738288576371745928685450030157857874125996449664251089328384670908978485036795037622501137038453614423516208423594912222128401704004312482286028862015949742630978510645605587242036550805003559938034869507115245985106193806473294279382986516786912694922992052999121278325582534335946137117073112528119688707253831625826444515355689267862273770109937137104561478628960454066698764154988082781884642195069681659247229418168092555480169645894448816977440673983355646186569590798911332167705804862759219410046555094053307684825019952484557 - 3185116174244600276154686982319438948098039423501401744649918384266883060203987618382899288350557734039093869890443768206888613260473623948476570159237131744667251237430573239318068662267244597953183180577282871545148538714825238258758243166342744339300345619233010368030943009399753874929600142064711875685824753944068726079096178391971000597334212373710265910744133578209573966260153853385251392551584069912694283945451629821533342485408183867297371683342133751676451608810439985551720729984294027413018876624657535310893913215688977108964692983607686561213023690299571544548998567954517386490156074132351210406572 + 14706188975667696219812492105519968578276866920802645181026885526228317494256093019093802715388245677552721645050730014249283609887382097551742468821503430216229049457414632069047966516321614916097361222075644428886246291975862049571667209039372597826212389017426315976328803754921164805566842117697544789603850903675468494638754312811015675842639670816614861891481930509451170583730983449690411233313460573901240650813444817579695294156239316376554705744408779333338756558081476518840806335932869430290955586396401178329717396611984629918578967786259385460624973238614350266879167258269684052193511738422522308285462 - 4122104588100414517733260700905087902010611347325429157237004459606874420822190005557856277218312098166677204006076212641271057228309771834851203037223134828277996982297330232969730722183117739690520292196547751229064050465522420187478182974991822756210320663460842975273703672933276813661126163402628367825344026066992586764767652252160599971851926052611338862032467339124428008298416671404437982071627893945889458990490496857781302273008770472176187083529321644955975505728078430119229460185963054395542942827878586410389763492627078061959989320301439974666284410308819928146054674613074416767869376320862413412843 + 9990126185170799203107917926923657958038945230833841468503020399789705355393691381243430877987065029032782207494387717999824570529952921957207197882866815623207060320559648674145735171538387560190479261821919745163549809651762698407708323970602411063351315147884085869132370954719545345299986637297659756950975145415034683456541771843431640911266399369818037444664630573603935545403076669150159840059948046214695509602855303433691676006379289648203545961506589325308020428238068623731960000475506665915331927020731334924375482062876317539407410329500718510351362056325543900923702025865016011062393613065548977189074 - 1361881504497332761709577384057575253576351613720657405183004691627209974767165252408297642551463403903301314115537765621480899042321520740623283435483784594878916344779487342858563342489959771708594859208544795193968443673372147562738820293005401978230380721846748568871527257000671483779980864878402038348342775702480534743795318877309706918377446915004507554021481868355351055611760377703752584466099817604800078164561091437314190739615692291531896644770694180316219522045319237443036607433746698095124533250757747921348886652655168277642153951854663630454494990842028407366921171093453715021599218298012433748993 + 2048805488071273146112719034936349682337892167155343680215567927506406040000664161305039173421810256787499246089674525793421892262846096544365951798098248082987717076280864772881878799462510574162151694402845507067044035262780765820840170653638667128102178587789754991662733531648044333202657655536248315728341330608868841483858410590037045146696011545331763841664314697324739194518500975612554008993989476628326477307757211200595202065898271614356139415322163185589108415128960823406128115457089013979436829047694612181412439156657609380530776054895621075416661190804974543946377579076876411624680338472035980688037 - 7134583749067852097651041337969597697692946523853450114861285146299866894530961837958017056181241477621241951380728400524031085060717938645931502484136298864471998616541565761962612137414913580834688988011308682156721565341457689979378581178127238549061932049817460463719537781373244032807371829379978257821284550546831234644939379204704844903787753265966765980218153319013793050814176958411062201240052921263978502834196514242503991252050480666464022221278240381934579972829607890169179461804264861755314789987871424434424595759699031477962189831529555424519015443618773697742307277564562057624975186062646331852746 + 24088862760123226722541726374056004506004274000559071203404364143863212808500838655320619615984704130011400929961933202789242358453922709660834967823977923017278228724594438106741632592019019679993784137870430347386522967035395533105114565387400208269410704372785648247291490588255181255138603315643102564921436703958221461302590897593796413578646959794850483514623574670736198480441254085803290450137698997287410880053205604901148974812647890574506509546218558358639086372309881524272322938009378491571309579868614042695542095190463761215118169802318430651702248487552768193390965718773519424743401591433471220406964 - 17627508362230223044461823138637085842453071982258216865719419437520422595836545559939888283754618484135965160134594544653060785178784236335316975995349449723589089017066712412648791912445521638209510848825170506655484795266488896425536470226928233736922824692507330124925268527179132983043634407292117351656050035164814332514260988301525758698547567541725988452482093130495563859695877741723639531717385592153261719672771311986147105667665343322400077601693749281147152393212261386874749556543971978946324247457237017914395308757123195554543238269674437873551512747272166520253247792513305068781395532203104904873766 + 8890484889925019302398953654167945169083129539357714324292642296843104507977773403046281884587098158714494377051280749353172656463231717681910934151879777239431205587873285539834906210085953272636887450456579409310413747146634452742496763358267722780581951264641417137606519491894112240860017188707902901527954044073628119953866146744583048293125188844132971120436595522890580475032243005883645080129428414106574172314989239464951388048618849038345691265733438103939191500730247863544968769567263725795448362291471683424276203642026121027187274762963739478851007156534134891440309258697487913994370550810965499471081 - 5307610586760045577527062696589452474292316660024709715988604533252506617787721345271947220610237889974587961696609989008607659464468137109930364360430571415679205209022158879392655073552023627123282443762141946783266653646813558496541758086626374870117037448223941340514774186715326533441053124895832882983144634083832844617644195406729302921871787728921573677261055015241233341468765054995514822591242396868900845963530440110729817047813944845650837488690732176908377676079881824073298197346137336644435546923617322347456234805165519525548247032167871075137580543287499283549922080378207730183875164984733200479795 + 384610225194093736033284625175531150072871335734764687680365917616552419276046323590106610434369295572755281510410892933623496698314701440687382352882949452143676511156866619160773803588699964811108331522565040653731437483613916993363818945638111983564991501075607200147915105810066725830201574904131484172499451376545399993317835389475519806642674708834346190963047676776390779294672809467661434142504807381852985311292585932053286612500876962815605872197544890516398194302747750108578361026913474845769364352580499837503303388734676906156620693990305123134005118501790668329154525834885946526826065177356824498571 - 2794788621844469574598486682563676493072480156269123434515804385719407440969922223526113583053387246147180767477904479714843078433870134690893261322741312977476543655720117206329871105919665623912115147369863368565354843057623374973490704866634925850571682301556437107980984910798743647025070136591878270339351406638916456275462338758933292303095132659012209543953122608700481249607713297569800817203984379792159530738600170931506855131057107782950922219152505663595638261782676375160917007336219642525052065599990949857409321073788607692875303632947278210249407161900560469248908231849783968546046861450617021299772 + 18465709558550782078897118453353514860948127094792289467737780410451852918709769069282089660565667303662452894684272416354450346962291414502743397193134833064835925307330376378925880546176050918516588041191449913044478491626079951200727944842066354061585912510935254847509567864601958867599185041538005982210756388426133765918776402916238952947636472882449118650039719778665217385323382138990443672838617676429224782801798109838253459691828064232281304626581202173927570494053080905841470586703217181381612245350493806203469924725683691946807739913716955116662148586200350842533443289423560472061841073403179883200104 - 16917142721044721436466638257162873675287989618652642312212582217076688333167668454976303237968767163898128082287427755822726597704426619061971494655476406225982844196477550564702476406171084997651685073101800477145751217218979251561195589181493369125854209387230367585840354149645543607518354716941083302789548003140823597775688377856034299217114709451235869229008167676324160571901709113056824702174813573110158889835641956045850069607871120363701541771793383356165842934704189435614715540823937109657258705932494102560800599243214101373673020772688720327875503110136050727647334001019197819254199492967755777852553 + 13265725438646878215904340852879870831653588758703962969658090020824244795903401823329175006381276822313284748082458165279091997377144362309644100620470595871145671289303910147918088961136146229963286913716978352978169978711683119829530152761398232247289602561939627083973596034638312897435260005622453163387387574290554531807246220909896115252513152276885754270237597320490946117763297941208750370936160102500227340001282779675344992220086425114903695363472066063659962051243244569717848682637106631067893522793920593667891517159382478989626603547206182926494717606319347167175454482607934272725405972683851743842986 - 4030310660526286220630406192737105573865943433902110037462559045082717766049894583064494032939185030622845007748699607514836822422822089688960197476139650472208427736078543259004280917589191616887930219854359011699837222003525178532182300803206757179824259171170977442962306478077477230524444417484356540600129930024728106955258687976549707807739941298945106696515656153511833841801071610844817678239655533935355252604782649987089178184246153902700555153754933065731256666391805210682682699638117443400930788284802991250023569226591791789653266969538994385615923830885053010359268490415454270560619506871985236959420 + 2299335107450704932542230585654557337456748910103796005188066204890401825614389116903479797105904644499499758239959047531419791184049092662090209033119687556556464313008221099723772587106637978072168357949942643993963527170140473758638081627296218426070583629690753309859993950759944212071648165401498148919195160578136177997859370904044936768401986725619359160907706847749564634644884660194478513546252031144737847387948877838049187881986273549602440608177951757654991706697938775051769434832995896950419900128313662192215976247321039713859008059379270764052403093007915167199870477215954380092643214861528658185437 - 13042939594139819125701681597665793177236284372394984734332473872727499388542337094657823763487080620904823930279655334865770624024113223792479142956883472236328736270402759690090656199866946595720837287984753016461797070143117888800058602920546629437321050743068664213285472674369814803498255466329338490149543787370574533757506139324869876665208274769501589140784877284441344852643264235468761262567453738913797762923511895829675185447143890328813089211959008099094497587854636383977198122722700441196607882108238444076965413181702326889577940198428725104660631581235174265658160945055570836988678990336508439256079 + 26285932422110385234466288750818505584539843039105683128534504372076680531108963634682483135888223205354907623692507112517496117056921227950377453573594375374893601619415515297499078627345227731745870949893059362660560042822019720219869738621182658272768869765588567248955917816800551984021126265377605958306443249072703740043158649912909920315719583953746388944030970135548839845035193293119775637552376199759939489108004027363913589443203611395959680471107253410893402139007966607347676722183514729084373235413258814372540911173377700406103843737461135270194735045909310000568999352693354119020973051223523091400576 - 8450155773871460343971287985309809517033295300288901988517673020388685750694529702530491975999976547105087683555785415307174746111245278512074659540703044415850539698864584180471683274454689519055178519722202196011402235393095160738040190678364929045154521590039002890689908952827429944091637459925642778232736163049786086076089334713135701734185963004747606397231142413984086860474219152036855917042118291812982473954496557086634606793540715369700437450496101382711461484853612635787878767427856141477767174445606646512549664559613866553688648678593973198859625920481239430943967083539959237993144017083849808432066 + 3567987844123108604038097852633406117954970632303852105190476976680534923307218027688432217655579892879864655708418945441233421492018909587244049332231162069093757747775267682227745323527242153394071320618666130691330684849191728061334291184583877996020408496325801756760130619377653944569492787883414260673787668277529448382471242634572909576995282889847156073077912099482997841329022069880278861850577487198356799828556883877554692582282495969577485878306580321111950125858210303727317759794588992083881921405405952209890176106850136160788408668248507265509891730274206073685088108688472537233292364805900955890698 - 17297630940099891370080374120518515528336731468864958764704530773608357608799263619071094307004552409097393526164947186056846818639367063191571625861296937939864904057468122237560281202211887078993597382251904790707289700393884108395888050807079488489914397325444134703568127860281791352596540518926772278541073087504641505142656725750175378743519487255752899143229326438071015662378333018214459643610266748616264674709463123808236606915047654335657362949921715992586100660836013851313512748976981502409300859017802979920285293335266083316364054419162121309225228562471108371520237467382044316470239884482473753386216 + 7645315611434297367483890679008049615034686776503682341917182549099168426933809687141118082261457571784739136524612425497297744501918314090590529449616000378282819523737321166025259415885717549199358739824103006833901191284196160442068035610567544197039646374058412978333296625152614470782225464469181487327706800501127554916091743945058678534724003827604661467711031968647366858422477013480771812811023350842530654873737088661116456557722162523585263699030396878730765816346415654732613900488746492261483568639456758101898511979105416075791094336550104115016199501471659120135433970464079059226441661125424371765597 - 10257130606061063830594436784166871190779572456420465477736682205221703964219595414674707704562656913789148881641357697403286928339585643500559784599072801094582509832071053586590555121091844690642074644438800579275862697813847401264237245035503049967051643758444450039361111075892622979542131924447173147555820587859771358140857232685443369225972301756176633855521982395051791647983918360732094520393434353158996299123345650215007408029400609264573557458897387179577318347876286308634355051071487329360928978350442482626970407632907360808694448824585462004599069270500241005717850042624976064950440784324861106883389 + 20020225297200809844200980465649271830485590216630002976664047277309971017942673180435090139880724103467851277703004283561860324279555797612305964252312976321039510183266696502668178324061719554855245129171686215564142790355000258320005438565549126142653342763270482566381826834965027705250959852394672004389849262299029390548416374563056328448177255935708456141594816186140514084965023488060955364714716538527318239190287215090308075074943113930897183691482325638334815571816568946288550883360104501487619861993673872711716589302742707940820012922003048547610275597280179608539372587548330906873279609078719329372278 - 11948210279715305852854472508813638213112184074726707597937500651493238957260897631486275518331043866764197291258945812386631594322837884678622302059692110636144212169191634714098013439646087963721454277157930028842188461829231810607238479460087264622757686530816744625087654550781443806676755055776182737191818223873919247116051333756476340970255743350225273195333385499656338933832881877400964784056409466986334836227236697523535742628029487091160277173301155246336230970952417503735407834531740133915069228878756074685749491384520725917638909786728734263007867478040887559661637568786640680403665794930689160241646 + 21754619926151545442282712902370641527431241450649992624564899714832058462794992421613861457512844459162925678228041361301021360527748788392204815067873545283103077292047526275173317473381865229864234304894814484840038737576990281024626013333861218592108232216514317640420671393375441167778936981751753965957690767839521746923590693010561236895551362647825523912499218603829705196989796958399627844803177570033423295618441576726785621358089645195451397081295530509877460016903636492766236241378182923174729191406545951665364612087064171316409156473573986440054889374220605367609221880574406130763006008893712244524611 - 15210486142851581195286724863079013888778662451384197470244439002457035143872432984452984784359066430819977244725976809208091560387068825121154911303675022052171444889311805649990682023515627334338685383277578268118475073407624465601601727875198863017480016513848715456246179124875463357420621735737214662812895648939818953720109435401175781616911085380770677414891638324233777775666876191146552607601111029760527476639632871770433966564053400043832464692410060774815433025879473742792666767910843522587980635856248572549640686660855978309225120262918288755394648162432848287074190381453007157262977881138838707768481 + 11994003465662135473957263533136436602378728955158813980812334509460571186688032079428218868550967148673151524789911196332357732239870313983679554276397309248584675885617467142391314390419903575157955468571036816291544536244205796313761471449113201404942055968094694058047180438353493743240529316975444165757054264076585359508941709901979033857547387818447895106334939500183382466961207655843356625043796465203209224669928772497158425798919758465365426798566672409134388110556745236524503890189049520053873562735080643719204234079147358356631670224176238885230619100405536925229020724742268730690875561579643500236402 - 7036655482999331695218329157232333224931699554392829907458386494489614002647112660667094013717848753639827432550214071370543955182144689010255598921732406198548770485239410991976765345001765421495565169467014853333306072976827763676241724827771638510093298640900859926852005583316801093361127277391967383074668907897333342956424472467121160330039576107023437827354613014885914001027100694769937898686518071153245427225595447859492328359313310600040826964611400630409577861408517780930890122013702660237311250453045158721822601651395974992045291458091550944340379883322765888647504102286407123349284437088349316794018 + 3983864456351126498253152744899719790296487085923149182013191902862836572264151704756102482460780547780261060318551165549549513395938118484802961772419276648733395601095491236828732816682601369937129883044080532505416236501935363846437251463546694350266160479726536796895597657714024321048348184053714717616511732923552798340390326853939419649412258513226326845449799656060416675453285662438679170999729912168952473002131145280447981157836959844156153739990490116492361400288478786290011255104879120521958464433996648667305675331209829988587430756147607104016437100566090243284808903080179767821901831961216725877880 - 4993110767776630615274649350025170607351045257280300466192288524277788770083113246411842451961028383727659533875589258555596239864735080694917313149226901952926200244169664532778983082070524442234465279311479565335600524230575300081197578132352006437404680082032493714319609915577725670797647608780755045253819110897491496214629168843437868028739195107958605898622609789247563646793159502415867911439596299376674727445679402099498640039340507446331935676796884001073880718564828988207875165406296305536574325900497714668208976657473155338934387992657791383497657780652786637677763329900961047311531734996755912820369 + 18189310963927624180242536438889186280881174751067531650832465984429064236812952378647065974036187382321761119766352853672518547682522032750066037942440433762531875028577146654616250652272021090796337669568634779458555326491544872195904798845075014435477891813880850443619638715472019007077809202132488730794937505173522987910718925840013347499918717729222899299773856447341615233534788263191716777274958724862894932345593501080448793274584210977134917727135348489452688538230530954996167871162620749551220139084936878143156854761225636924764493360711574342159395687572675692801369527771420315851586618648266868691242 - 2792695300184349422349234295869287622870112718630291946314624146940829984410396124452167280563186279306720060054916502396739885464374210807977704693221636800632447079888305920653591805923935390727998555030041821648089034710218063460109146884963934552530779268434879796548904294748943869440014238514409088063837565557557390287528242574548384121281275966663979732539501627790661867545939156806614116832330329133905091160742741272443740347319056563186170939500598504706656967305304230970910057913221776989148254503227503676620888637922994581322825719880302414285254291738060975152901671146139063626694543647520441254915 + 6701464634720116259694681960377531800311652637727148553187957340014022935212065757059194384495166460335926729347599709078726212018904505699127438818498187364510278209982480902277927606156635097707803728893210569012993541752211882052674370270732838024859669372402842963980347792540872028349477415542875044098135347671987614105125491242724969160017061705711988493434981957119336542735602622868851369601910608449164070250580436141829279536909232420336363715522214178227926986341052314299153070452932872629584311892508528024398283020573073888293707920643716188676537346833232288563983025686460899606042272044672436479924 - 7274994791752185903108496994722746936108008499094671292492084609439106867452923935469009042551640054597150225462706742209662643200779457815760636356393203136877000943857646688027895544369686383650078171819780607362853243150702643527808218127897992344091748728839344770453221022557606056568394640603448291902371476692220498641099810622748853778835703035118884777594994147073164723401232167767971189566128317692740807819777973916307913225661343175984409030980880254496835735700027481591111745941247626600017505753354118498974052870610241372211715887194029203649464620494969766327245325722486063742069733315891316887596 + 28180789709638618270373852449382456908182110144546640617969180330657610465544061877546137728516819644628290745800196649921362871163340648925036706045009596774198402803595934922686648158432121231001749177448968176336940783693744135110552783239029026936818090469366762303055859347843254391006195097929974403463982441779038414129551967398902957559255242073010577443214550932408020031274429047013994713937151415508341662557055329179461409593138519966390472191494632632616628049040749726466309181300546877670076328819105947453598556252672858058474767668893367626579802808350691884721007521335077772162461734835393876986823 - 14565394960593528980448820596093744673905967362189143696538775480770316565820818217348176186318368757996915147475137749192602423744358510627484424213512743341694370757914682548212739997257300038369315716653242265143518457483832844567686722548527435802445973802287031282302435262965378214516072956095989978161953011776369230915836066276761314496784434741773552597144901087973056634648008243874646138376400105289243528587591955780484731347294732591527052314270764201473859582928784950739418590558728435524149358723356933560891840934055180191586883782643847170602804224369997701184387586151194855842549440048845166307535 + 4440140719043847293577823192691574619021441394803365465289826646139051668688540323142524474310714347899926584116219816909634820852203086559246077985587334604973881372338090060358893343110006956229287180758590758745740926711340612391605055781067866067977371386670675211075186877394689385577086615776535598047008559376837323886045733683296019060747443184370114094078627280784180804583577475223323418997753193244737256814351574026103634511652179126007232358242837116254343676788651888339334410432784039524983332340291626438181102608338708718373427547468013049941268941111116194722024999699916035871995473696105705827066 - 14353617907541809480964591625758769679942505123098262119042938523751095590212346554936494379444912649395704651562281226055788092187296242741965962742572255571278763174260893226943985162237176408549140390465091700745657639917978465461142572986031560204328492546504082577571448679554073974139587940465271232913318248514599337252303849824233332146715923446539119350370491256595601931026746130716085831962470687851479356157668803224183427142488083341154749657749710995752515381939788225124505936796434465041298666326539231220892824101827466309533205774908004208263840238176258574451854229456991600029869499556662861978055 + 18151626594270792600346853806551447618579402493798354697579044683317512448804862325726984631501830940832821643327473274929594564166094613795076064988921595574453707648781022844116740195740411714515390131435495952624668042861294922800765348837129583636097990054102371853458083274316694882640260900790074603384151543927714179131888638341394552928443082528279805009939684605195599903583668622304979694808586925278850915522481643842826975998026247569212945391536177440678472826427424728051923176639681141578851958778037065152055841711454342490499745825048613751658967035657795591201897080850343917157305514365935797212463 - 17414695679371101558663026496608077614602066884858207332694873628644191026160692769888716268117312669610880189412172966487921026670658281548446065887281227727665484368166567733039816565031848222585711350753042918859352789170410395362460355994958381878927188901372714792620608470488808213953090805255331352683205941728387123561367562502113646110329058539104627597159065053248922777928459632958728157945636238827963089538676774682998631882030988092991010358033045923486964620238339701101783212660664746335146305011570793143343430435524515540319273306113748843146940665114536659057367733681382618057826051002742502519917 + 13025682054175029389003425071853265331424639862116412909994657217227717333478906596725436311692279072198042441530130868797386011318115031348545762264308895602502368245053613475887095180492567314545240094125679220407052053546231388408926152418601670295056961954759110899241791853515650337150961944334447363598138658387832533756341228680959727347989732589432592099944284644226259670998634868369842742496934179999367486366262529178349203694935608866417443524119734459091526835056209970923993926071684407842364228602131084704223040975576327840872980335017694920266018010133072690227801814147714604830484563567593365332135 - 10099058235726375546927957461145263625376310899223977352215419634601816499399580435959173076328277547357159845839007833860025734105938454822679409661683519590922512028681139674745626534784806595539838959793065880572964719953905332714206395069760110283475878416792967197780721093942653331593155663742032774283027970754981962611886348201030528915831648762121993037735391202937110561246961847890417507756005567240402253496199302756919731387681401172579149862257860924446361627352123189100145241003096189493654629533655886063498146738961312550266314262902681008085072489142616153232245899648241850449237948082397289851727 + 23224130792610858105654250346147055026674213021646731673151322274958182490677008937865135051024734807600609725409623429669659498932894500904580920808225037614008120965417479239952608646952879607455935041777161064324454565544821565849878132224896374862413369785042787558172577781963268173817154616986319604978715372108698907684345097279244759582041425072259913308511206218054044998391166067041787368396084417405530625034169396147505659088208099131713103221088618817940958909044959630408234658003263978350750696733665949380120678120935471987836889021667261806954167320418018934543280337976481121397488883056300237479698 - 15449664293858584672026443953151297513402281340670899981235230063115818574276573352522712697339444792278367467772519255658736433339651110280093493188507663685909198013246433254688778031533972373412710413364621098184084527455257047381010182184835094363267318899791839568936480540280024057730455983769699622154334446907580249235433387080227640425863560419737041041512209700582296576399358667746015471774565075912006405540098079469696038897086683825653326381547984294031424649240605994975319011544613483597762551776951161922310415461008386271304051150413891025316000933983989696759578173652343655647198679495203096321999 + 4893387837056643495644920434368532788157037901152130787306307676181171919855661765624855477617369263761552902018592387372551017381947713221259873426252383679914454968479215917865151191045943546878806441066738557397146544807517431288035259025831871095966651607060132673725291398825428203125095780636324812919938996459093099735956642933842718725018593343253947569147001401948436404507676761072602980091508295453861747920394545326667719962824732155393058395812337282961421386530107602664518398009761060579011422910971886204943715565620301323789060736094386859455964775122327584127910183554204315833234333417082543293824 - 6689157560906395921932825041046765778239991181118004513021285555974214449400870705863209617141534535989014753010736120730617590067810723879978390246995348847679503377699160854851436736149724553762324532015387472775501744209141251845754478244817857480322833533172264780331707717980009854960305142082059992341014092710044336175739389519770694905436828614559890475294977007720611228251184121945369427378203062009313483980164727512644982709186387325184369422721329203177544175444894459678952300533702184498514427417038944845153769363510245291527316154798151375102157292184377465338717037903527820628457925293885172294606 + 19155670980453820377624785685638200814899590809356052342480416857414068477611612038011613725844914902355345087132668767473974003192623683603945744353374286074114037952599665748014049233299046720760550543422821289171490967883122269459705644800887292508952917678616078616247064647292794310812404652665520900151003512258789511385327774896930671945462757229337308502980537297735839773681965042456354247407195375985603767839163595959881094219043541124959835381149879087795069128382057930445325686739570723680323709320768612434516608791394312183734355573107538650456959056767365949768692127848705370821774863266468475581907 - 14204206399833293647610700948664383067892449960583419680779838801254292268104631710759622784320677050947258492663955375985308371598013917904893426255605884080437986418586097755173826712547851930026530315129107586729413003723238127516479621917734862448299391454627710915020409503842536814438865043942519441021240706763991273455617727153532713910111267224129807841923398152933510845923437294934834294394077122200854233657511412774738029626892412691765024455838190935370439026839706422591358984475437739502662783853754992300416762071719005848617839218652591061036278236978549370696981221613336697441095505064311372721024 + 19603340587051095247070058791501282737540668585137882233927370324586148665896763259233693701929787080842242540674992277713437635211987763411621093307801753287406628366362811556705901838345363273092328338122087731547497186088097819190891977982790783642298469732046733789172034091385438809418531301333749591261268589979733415085905237129838181790961011006148361444849190948252130103356965263473389959268176288478898608611359092315413137304196965313622088585167924505586036476578974173300261576006768575019073473337092426917144537850196559548818529837543662563679329756610017272143021866809760481799707289791578879012751 - 6518072833428973213715495574921155717357159211087006378135062780327246440101973838514582650663084249641742285911393371008898422857291389647295067828765427204959557433452399765402929265438130160928089915124493668529338646081251499758592144131058462159967842960278762252820820357186786239404634116685793850546688658207620430422495617894154835181574379871570910972655788082468554972965903042850555051270019760795238498257716856383269570856978443575888047585493344068485749231715996303650613124194969348235296833667733041761983161253839251007473632412725482279090925834469204657503104196055360816678002634555695139334177 + 24180776992947005226930644327013442090442601218931940517818400069973848627289349608413665420220187875370999886259090158109874960355667098650692275722390972724716167621184770506579431743971363985982029900625305155127830967427811852524201327959777724925629266907996070828449307795414756190706727892999298388907159350311945718408802672634889579320143164056158736642357581247092518784571815141912934328616419144728332572401450613853569991379763002026029202638830435182241551265580239099646528203148656435888706626112838349891192575044181818877034806638833432279639573062433036628111618011770632192541745755512792065942531 - 11677836055802280808526145943787593442287662793605298359372441344512235407121208279036872441486897787942731734321188427986740003996809723711251643022307619750057506746234426801520494914577735945769710918730713912046800613589149627775559854546697286332253968313370761826856824697074245503799019664332599688444935597285123657126630544431897667427189748844036585800055835795161729396802223902313180571153226890661644469751719070395246447738970856852898063756014029635787021355975350543415589289541468101462899426456343814378698067732451819666349999016517934040779434875297875202864432794918639923801553213213643001931826 + 20845967460249941411729722331132356742851039351586410516010362216993509342240365451884788519829064759781575157098043232473870395957896714353127750869601171816464425339537805870136160117883092705551187637665560057979647706484447857965293883667155967395515823604077611747599999018486017693552383690244355952705683841475253403186306437357392347349038315332183122951922532408671247460986883164431027434940310251542842388590014093774244470511372324845116437914171645785932488168193242561411362219409874765551554246478896747677330152011057940883439387758929037684000189523670732738755647355072670119809960691746871067409548 - 6237059979478700640486500585532591028543052083465059937994352034240957919669041118651422546696070978979520393185566680615955687532837625287907807172364016576489047557613007395178251284285059591803962962781229433203023464415252570048195112417168781118811400059774176200216805410067972976154831441240536571761009952621376507163033916077127405640417014807290888234528494012378835336955357988869971927462089960690943916076480832335806189451985954101016134174655666280201068778468671204241148767959991145625643898021157892899571029067290779948635770186452920454491879932333808305077764942728622402890344902016579827206490 + 3543111839549071521695773615991577503342301351223599256021304535346995410657846678687158621977082107543501133471759683513097174935923760669417981255940266747714593591637633515907995256053008978344608728839838094398245724169873178635422947719503481126572781996089104442756965806731215758692448051768461964072167484108964954031659930831257596361887819887032636116641311811081007223600129460436981215654778224758102053806991860985261233823951030978415147226530058868933048952905155743980330983286737354591347154753832453252754138955450308694946208498879742977593534542871858536524062760160906428427288423051534859275516 - 14042655321516894933616929679390724440338012150522531166454021007988210354291120581195531740307608760609575731899854664453743292836131895657911751029151405882385099316658225594769852942186064919948529333641204372144538120042159144790387012222944536029622667143014730959756005468014944968520149435221908022257500118665813745097689185653531026874863820695715253617604989743487366607634514544678235804777913167195255816655175946264525012199750309488386859777504529169383550990912542587442617435716622153149490062745870201507132636124571000231253704380865505463744416182739562090332308212458473092538231436353184565916504 + 21647031111967992010853422849730557011664164295019526049441503144999916865812789273058319502896997653441440602958773777341483617250288582377786868050762302835969121252277768901534078893695291337181743996569978694415074924755288128562857107075747503122104855063355480922197365728069156727563273968142730867622449721639688622849782130289973014671286929521660005605817978256545218813250023418239185552935675242466569181704937808852378074495073962579891164136974188687002797153501209232829071595216739606782044519942944122684672114909413506349446817208126621789551655810290709501823050575254201988007917607223991625525167 - 17006721936761635237752963942837620751032011801214011439355384236502768390886259850649728685290647574862160836419108190984489816873176523602939498980480918845002948173044810491124222495650591338100926758040381803313304323316637602630457241437760679593427593134407916123401260683085158565558648276112101202153511470507241386216200259133364606929820549495336495522457148908571196536387674096102041518552855699046966177896541407112101210185845349774601316973378289592502528135463624972863980456421292006069927741144321142164780223915349241453962990220293928643555238473432492741575054423048729816404967487066976694019863 + 18435741548141749891187870674912064177037273538811271353481087283937576648033355928951434908030543851158586177363796852683539363584616551610845911267289116959113254795794161099946288833941455741158740975500082449659728458794241646930741728816304871211715676895774995902565079963755347772666508700408151050013820338136423625928858809661054312367939458406364067481607505306188304500983683274368502987951931523969764912125075581035563624840230184105053163685286295090029692533926845838991366664994837206482413849790981322134141656267533212381855947280804185863887783565274431227622987201790332663289828561265378891055168 - 8889150291606051560673266346716269558486640772619178943748192984468278175857660684015286153803874075351221247595238259911611510436833539662689952151571353239967597441345845175989237562565739730409955020039790474539411520918879980350632503072510258579907343341522270665220105556485854804580518223325905950958237218576732240186421487874908086255875137591081130025798436673096518268481866800502190890056013981573731857736817918390713746861441333115640012413659143299062915463897545230658850958918665903016321148109226906221762472645665477427490967078489175291138960015538633018415403324310431033780735852812982605198769 + 3779331758821174279650144772826131355698219052448168643023277331472975565840829489042886987975021904903708763595240635196366436900749059876580508041332859899988686589622510656668303416303494142904101332247421077983571095630864922085038756751417470899991362455137522322246928098179640941020722427199529004950409717217728461180872217512910720908726497243936266793737367849587853873138670337309354166642624555332482664893207743479790744557859674777284958122648988605713291208628215136165822200952583318009493518507815922796441957726481610444659877587719697043017147311082704959964742423592301012136847793359376515035106 - 1869837794411886340593948750805010008410840257904038123811533214117872602126268580901378977742111551093415090367673002761882642618898742459593386539715040444129619871685129440271549678617314875232713039967304031358036270904763126105454582722081773766233816280647641392733147051272814612148168989446119826930886532154397746550666092094241630071450165360842280886427479763632512136859533744812008855166552339985002596168113421901861586349037560779687744530222810435716728386590110332485131470333468260458870443804755075896109660096079860201092397671530121258298841756133308156516390399007063112807241283691121719521576 + 25614909546844091114841667855708024276049948165768122038664968410568455026159851387567713557883309976707579766484311740285510611139359820657992094992515019072403649652113812394606502017583657932665214998003480118570931208198597186847763311541377505497536132649988309621180470902494377305210635156325979285938369645188588292244285206158950810032844228435571146203912257647170455999675980615077433309398751511651325668439946608191923925274954698545472274423052773030835383624408406115530067482114688679493683573169720261624492817833526544597772918842039519386971960926492663963782611588579072828996942585543117952594453 - 17473774659089008659940645112486695841986131926418176489596508436712616119692858360871874823328546339728187725330056592099861566650178034881973539837486100232472686889469109452925666740079367744737574735325584520644010105702619461138662918630430378288476235658605715926198724021684514427768814664413603228715612179331621351947474280669643790764918693905318079103138139937151795050220365640559957027215519021776048974393976980781053725037477896592458975406077678050496449610267036321506973170686719767635871054872120167893227001444683559734798638449586334012489897700826862890243689905934429939819147845769653248441028 + 27869777089368900088242372733715939694255451900575977327859021692570045562382437822306013101542204695916670866164008694467992276606718262326679964521205640093960771517529175139317872699354728416971440741978867385044593969229946702423444543369880745787239028219360007943521903268056060447468729799305484275575058540181898347626835064393412303933125376452262107946848191556907427000795021214303373224980879611686126471878666305588940655836436218066939156778148017583467120560522418245531595269594557160549755720183109891237380934040373395987888566622872596396081746361715496609765033757122704858783944967243570334216899 - 16006094038975845555621822707806487524999093523862823722366423783986794081890777969231705656822693657013742491112281609412351685677092544095539366518145744545820379762210009741767949725235498883213357488385148023121689416923548621372350145361348783062902782768063588595283620376718348352784090312936028945995384339692124111211344827275498732858384324323561364193483014856264063195633984281796557862956186809185378468596853890013049747213454127778373427620673762372842837554545938060811925074462604478857833752534675986041098365731251486714890065496307662660391670220665327968638906325776746883120300504449372870773263 + 29564297225955044802234176690324067545517791710191570854752935499946325260360120247729187021365132913988734460403891768953916164079559651669320221798412603284237652811510864048314849021550136439876009473010971540454082774127117331032556435124679088476325216395782886714356611326223320135124731868662546025805580728442755387307489444801017384633405377873611551906161448899259761186413660065751707996112842010886455914278041929634777762491534712044393263773204777292274226690451934144151482825211538768102786688806759100643279419467126010232190394134614163676113253934874735383536173550937869974902462241540984233048464 - 14317044466455523632653317230694551992831608274588900544737620196029643965884685711713264319275573170783434919581448762450202889509734915138984059618950729808511186136777538095131321374503902006693030270601506289884966727215813681621734995804171978113705811023324205499195943773464236916088922374626795664120631559323828257469190260525443267734497836103851743379698897643843994821529338197993301267974467989650382235359266685793683875554014634928327346794155783491811741421426359495161806403770143950816082230043543240163252633700700997938892200916594748299720850121868632833663079941449834070950023143365116590969989 + 3984436350640416404974512017370621903843021042531855514801777324922510100131902687967941632471413731569193461793167228857058149504000599586686492956899879195037830359853121101827130789797706788452017241012403962854148242874513617113118234622956878730359391978845800311781599081660875254851881197591898854578032366459925464218571154013428152174221566288138382624472478650877565552477296504398431953801909715639291996082210985399892093935888806970756004266662641606932085676766305775016474421665833778457347231413597588267918091836371086075505055144868714088233538182500518394516551162463926340960744593138565538494268 - 5717950915642297068311594606986821872495509392915061594353951142036900984228136979297597290245820074938893740378328967781666220331509069441063505614665361566775454569811840836809932192208378162896566151711015438065524198295274712840577320138588045756371032711378074835722553354044580969295173317558550581667465339307615780585596544198676785166820330264222483233074725738350402723711842579652220198409595606130267072496868286171706896865378277811579055303473165953739969664790889692232023300844871116484866591832234231245689652379967165873475791547305088262545221422439426657001557481353310711305632153799964212956089 + 7015901104407757284348354861264238259510213309082046792969829343074478951068328010627843589884221549448649031217037406609871357041603506983918087598391863621003052955626712033607443865692938632349385639701802529575324337640943352073529554177021588651839988258717695758508722218862102524762913291367615711011546586318693878268840400743027887100619731078951657247965277483675593042428849841416853940721397843169110414440780718481975056482435234573706480238169994790948852849189123549318699450080457602796879503539437193982716840230448339759401561152734459702587759412150640712916033811393752386016763481766613528241870 - 8480019153109036591886027543410711323147772652842318384180867480923468465310760496985355301831104159844170225620646045741709173001612270011410418357358568423332095364970034879103528594565425071713963898622703589799736235131810557099307052656830420394429285942091321924356882320346510229800728486778165035274200154811775289586307868475832379585053658306728824023421692388683284706339978701804247550654252689712538662174539509957468046307915171403635277346937944722726687970365934677916161155398613370893826542957794772625269468926206570386132405194532709766795320029702605124176656092964550889723375904384147437595241 + 13770638299087366689721420248928565241225151690536066744893325397333561545200112645458571279925815327219495831481306043863906444422672874135926395168394818205948963533043473858430363647754140063801840216819560097559522808973279809100030413657757089204999651017723774717367844985771122017357713598903988000296707736094014620448388862234250179956848125995733899106433933235275352560426821700789770150514004081041023695401587547870189636095011457058941060013325707084439334517833846466489033424335686578837223997956359154006444501193312145640410930237257446663598313186211054932051839637072781247062825304122754905350124 - 4626561817349931628963282113532953512224861047883329502534255428084143925394814076730936797314672833230957908662205480226422726099191873613136639905334282894105850015371714609071247501329671489012621732538566940368223899694580321756342372622667593871606225388134398918151817062495931211794855916586730189639974035204309333079889036815514434005397414689515700159150850737605883954019216030477555600775975585262006945999838681776961558862312316749418817779948849712669007207373096341359135956769764965959286781491964273514952561954150842135256996196486993423548946331993831148680561216062839824184031650439098875263762 + 14754418847136381148152968284276679522519015059049498819767979339493195961379844347209438045738187941536736548987853850742702314414725699808775793677931176924753954560246823365027452293255165214784218363514315977893124163689483788343965670490651736383482323792479470546919605863146020300237779483532991297134780146763809009510203874175853307901183337443803697873846596260445448562147104886576902213039541926928629875138032228299923599017153187968349365788045760074550554792005421852328354582271200459166178752470668069998831934271846706676895916107360928537277595609322730557078644558617639044595129372558716220785038 - 8611762400722486054023055552988439380746009288765979818485501177983672929086850187498330892520337417041903368293341905482170535520831560705792472822360272623600513666728497247861490339792127723928205635022427493276752797021968453827833357823537359644503854587285860297288833131955428260609075872563082831983070294514090272856914305853153111006847939780955382700911541914099763795163033584284613569790768040770530424488472154579337937956597235472559962047327399269847537399718829821164307362637969068684172399342854689102183161294857492878575865611591598351188883565313577350815478249121516439747694170829821326054089 + 13606814567854196419483309029772545844490524834642594011376351542241041812865907959648127506722925288698399101166349273283735263359645163396740771764534278817777869976376549559753316270618217689588751650266838624585219789718537405712435954549985898309641907391455066453164025744125428328291832142974754402345934418303526886964297729657208900243195988849519255276620532421033294098696018442711144481318470381793914785619430174865820738492257735159189293438831707126420346410349187492617187341956129745637563386707753543826708883118862302845423034766000421641760453576437655621162960474226213737282336926416215168991309 - 17318954357103373318754533857712169478424125831683810018363858207304381055055362202473638593513316709559459940149931249104476297300598920575251903733408776294628830750980252586476181871923541569547589462236339158877537398730599123067661423261270003014004997493192744715105942940522399688216589567829013578127260493838143950792194361423559852480030275763299038561984200402079797550570368863324119544637722011929451970358571188097716004290033457145371046389622360125348188915475752384845009223307411686278826692188278050663232907533323833348610033848745182986472072142221741951274983453222904462190257157566233925268990 + 22995895208076534245089430809617597186179789769364039259529527964839853018601026846362297432235034170107291519174448322249231531152378134054061045685942649124430339961719191085264846611943555230427405606674141398350053545634016608577535206266479182170812735400016826245353713707129718858051675987939473076626062235907282485028276649985158261065068012449197381500038776847368541446076724153068868768231284271033542326885750969797179332730143085341206178347235719075330840248438559217076819346360481669187290012479149262233546551450558227558267783783139171792716814397685913369308256331147888267923268271966605719449583 - 14429555121617634374704604085959260319531220698919468189862600509549366516897292316483479940662413067437362906893286570779524149144240014543683285538312845156646495039245337862945440830922476967708796086483979188754223133297535114090371662497774363726122522169146479016568675146009337765824721443875788363832785711027145524878540219015107817198942528949324739882077969919652066009555170335635131157314268649686069918707056470754479098171803935747089122741774960469399112256281930761296264571668458061388823934174859012898509048534754065271745488486713940615093944951976290085875862214791767770576480285644214303634452 + 11125385044678153373228437165270444562954555779461212041610125617226001453761181590911663695641494352512548944293840157044947380198449906793221884786700330914384211210532100851345466520949852471096263841591095834121365595932772815677984769523363498460484909539856895398534291459364856750489028476716818348473942118859443413458028964834672697109199332855013531707254668683360520152639183914206803887259127220284648517427628149162026421533955010676021960068476535708352826883688732631999542516223264385750085685912284816121266073852380974767609879962272717789790885617285463048172795519900053476620268784424572418868892 - 16220768965389388381734863289247655323095858587814254085587677535534023163071173693224406956601042687124514736432469931976345654183926129560922951893692412565721372903698456978166723144308027924109427313900984070078010386883946734134065014403909394659256011010052466127513031828213005132905760003396773834027613055602655243266664863376438511721705389358832944118773146589181585461606644815738481427550661446027483515132616495906518776412673525845726183946047162695476969337490537385330382265584028672557417453557055715699924084825774502363728873055867313007642296245526803735018477053328354437872370534681319051591375 + 12366462276430842253089655258455656717757848645305438993609079264313019198183719552416740389205022370592648675497867903086083215400912533907237704333697058076255379973435226529044717684308137244282184822176299232259931604460632082376010562631077038833127505274965961587882148356946837854716812059530178071879780905694057333391436664333043818609333328176488380783889797173173499471878686889488269205638611089559360837693003774100750306190390782761885326567195600641435429799152639455327802201005007833149287950582095428286892609219912638702549303647694926690282658370570313812899183515148435205558411670759240873960151 - 15172683729088091342578228842988266132005877648725298231627052244376471056411225092195979732002728464715241742129691402296811454970807459693831721461652570036436945320961757039046900266271523568777957257458819302853108533668235356906133427292538538486385567631682582605342511966951139266003296488012681492298723766332713323450669396941961384127547824743232668936789053954546977424956971064558667684255746655349117163452505537588196448383217700558583777786332209230622885369842891833515401125954475786834679444600054283937216100016947615698556970572331446399283601997175314334393287769754911634500303096791071093958512 + 14219399759031344497783651877394321655841698602121117916826493741086078857803492600658983807348923416999494398301833801357899260203977066267973369857814246665440138334987601416075386013662259571744699765590202200455141521600393744685422654567633920189980065014479476678859945718177586331774638067018531495022683796895051901834479123540331419815221496711819855195397674861560340574056153014393248551897186858235342382551531999298935469223967232731755978267760537294957158308999728702263158539279288443624889721764103743019358332944838225589408706323008731156508839076108434072643888618337627554100670064441034183263009 - 1548814090248601332169254078078778652593570381999683651791087261017248827512811259649552483917733811766124088933250394531030936236144164474224121491326302562703662552942919530574282494155430762720583955926793375112998253570366293715294891242730544716478656663143267781310642469887542780290761232374013473058702525175723848893160437146330902013619206198201948433546277149492552288691499392788430532207525004196944084360327067852325528637700058652442266459237651550124809518439203894239789525338379428582561903753617361321497264377991539507954157452394509068129152134921358542872896757220946545606000097723918139900711 + 22143493596900391926777157823170569989962020798281526050833180103975469705621227930842084382651036947563067531673732589816715043946686161087485603744780806132264481686431095163677222664842578015923865382373803852511032765262600088145395578083459735268771180396970448544481380297552987384771612558865493932819092448274534367172504922495884680453377583716246097205037406984785467511871172524648606569123539148639675847477387203054700348601570485628694286297080954724663279320831067040627747597610941328886190941189484970823146773745809964755759338671950324117060108662239523526431504402729848979939454130970881304736850 - 3310810105316065855683059381430563163820410720689060294979132705014740582660191955662288302711865482277509351277554239519871805317321983084862564527223762689352196627808645874514248425450843299239334259923409612987761252249931759081049267381613503752631592230858414832338369429433370617066690353489566593280115218697718522348407684768246429262983217836843563632297589402965694011039315044039717169283609403790506827274488142944288862959093638891176217585785484183898311277017588952412261829781515465445967999535473322403550167836235761446844403006716609960687580449836097073374753907499177505213800191354882341932561 + 7449221346072272081628197273755371383693773230292017475910143879254997199656088182272775566531208409143114508052400583204265038905739796703497931230080908279615534822626675676708841045094416955125384782801157459266357666337419172581529126560033191680343802581127405252617587017968030525311782180651544341147475491388279719561205124493120587520834201517793354522577799883953968179383239575062587039136183263816890710314189635070271886509979180323837226182976237535185759157974776415215545387655387984445088877221467131010408540751422387978962376640007373481874949156858278630125521764772160431544737293714776764484361 - 17173857358079904696576712020447875000476588823362275145112456246318069998598909223611162301303083641352208936811957828534884482820978288699814524900829087504487908569837617346801070435717488075309502332184518619972807731860940391633032123027587560495268830674963129455313663333932035028953773526733921475459603371118552708112586838524308305848062736743480604930141336610413333232621413928880688001123405199856582312050684044894666086997745700853336696663821797683000593363987595203617607461505889530026441595533727850862313342213663143061660203444401277729158428361919334214584183973367068841074311373326059333285130 + 13943112967950563654388439734201897577128797867040246854635841530282919057545124504064225824254493638377140715752580119449533442623180406592782946144935555102574006398526410468775482047295821635942800426189090088798771583914679654129201509772796874831134457046159684812111484720268643109858360208334962959485816113160773341324195777739026753853996552288785608339082724557808770675289257614936148484049616590451608839906512441129225716454609791809961411956241586060514335502529947440067300618988609536193202591908620965141918916786111756260426165716230691187732724456354704629395611494577198725705970095293207297904434 - 16072841955883061623123569297716085089742241283436136328683188182693070094858568887244543973603839280632126230758726739802896076336415194528304202224890703236722418453094257963178500042398736224180634237735903612523927216904792384264826560293951582988177916675809500841285229463663498715515034267682081843098721892911702842715183726076759304925676879085727828025117103867410772171380484620001145136633424639401190140271439342982183461974267410332670028037441088691549864905071130821857146434398768659889549911823559850322014684560541496631493068935718837819150738553236991481308576934380902103049349980673753880604253 + 19285179097962501761265458005611881646693584326324175377301883483314270191261342768744810516869198285011666642392986768768271722042785521272087507901327098253839051788747067256463408546133581831506463955197480909983131192501081788666137890196077415338921501963593059272478255513766841801630396751470119931969331871098159726568338332071662176648503469979532353935400242003884819091603045758322293264431210156395724622269237911629057888574491523331971916433314273118870406220029163766565081517667683180859580832878256803816306887642812640838129058500686762948894920871632405492128071634371148667700027807020244672046662 - 17516837574522753327024838443919301510751840439261532485136038975733978711116997597839268773694165343743587862727911681909287523928058706133320819151095177836255059258219934448822199667972776679584342781980274114005216803243103479614952351843020321247315553219788380097486822819340602640275078282232036398077659584324487603262806981355527381494057055018547617465312216627271237058318864695421183183473702833667677366921904149304563867751263896648354738041311464663698695251498624620119333601876298129446008166053561215552244445484725780039916910930750047393446980789484408804686104941733898672793792493369466197515211 + 16072815925256350510659454304881273253508501399461816477636300539291857539043238355960376269202662921327286924219570694372345762738145912578287302518858163330133497550291963581769776325409419009672473417937844650520652447932664158229588476329371313986973356258103053117158715119623709929956468251646461785041122593290236614950048196068272482698779177644225177045849424499311513228507493514131865119507681372917085395278048793018122185801277607549535171389118863864682659025773069007027679813112780725539326038101021820388415882696547077470113370415195313916513381231306754278415958767554230545238717370039439309537721 - 5790764524410102229573473144884312029348885937737964780869428193339656499614405020104683058251984886042916841902351984786229519604972360386917647774004166893595096332776027822158423718746572901160314979637012958658768400528758720095032398104516148327296445900969497075329705934234937598340300694879103122676955356517556542753978945409611350869701669895113800603445664093320219026094187957981835782426786371909966302671551448402283163895380398002472660026549626184623496918311522612154172599311917892369296076928169755493331936510189458499979015200193741764583219714494895990454850194107504776686552866712114802211025 + 18712621314136176570124968313811103416478033853834258157526794353605744283145422481383907241890588988790958624757674292367264209133934206815325404311376841688960168491210084591129384539456021355195455956523348455902585081634075158219013161011797531509101519074210139369996296183352141727048411310533967293635435134469793357881618437868243347711755239683558705229463494683376960283257382364874225647683533418002335505772973310145507667252289998278577491692048191309699897413040211580992150560766904149594060370159134724849042134152724674191217436249852599343540912511731090268340163070654535456304895704672745826781751 - 9352618075619463247322693648291436437717840829179559780624982907314601758772691295139965645264166754574461159367270212658337373037073633500758907149998440676743386035046461628636866025472080379571415145982698560807483952762581001264279856685099135237105082980666534418332758000567965659301312372628287274916482363193303445097537212589934638713321002538652811846890621710971344541154225741273309386063133424898811708530128578567225973909359047599822815670082674400984951418876485407325950030822527743990054497178507072429453179669825110229029957954388452258825642686728283784042577745628324712094341858046480101158436 + 14279931214654843434293963091009202220444145440183399677344818916427743500223292941607851773436738062476024366507146289225399957252212472125503931638979129848924295091037014489766824095109670948336043011104248636852646932219853841691965859149131147788565368490548582372690029410164355989810783890209328337460860728479760315526723600297576321547356990076186256800427886951369380889627409645219519364688329321930285082454350940079164181890469972811645605134538983881190837378491163647828308934014818873092610940485985787399777016325871364269383364385797694998131246413471670015757503547727966626112172661461238029823556 - 7710202960712055021162351452179046833742207830207364901729518479566698957223655646240326195146697841617594982204824634748554919457712353807242582087260001419216051782611542258610780829598881791214388562937440359026208936224092429325919878418056766544829338027881643233901190001141822656276380919679452299304761672964227231070694008346969352185000460690603384860000477795677267744719679942995770530945612597400746626910750090253013352451987864279501645987051963390261707894276800746614071707708607190593955345464532475228610098601329871516358124588325250665771210268175873015095035032401699075063393862594615451540723 + 21496756986951677975466793736369423990650459579809495336889774188271582241199609929896533144418837786914018159684752261006662174139374795837696648248322983668665663250170937965690473510790696643626045388751388443599317568919430214093173336874699066863861365628734202409173963726338695460975727119682524720941476668809452495879165588380453420287058232583387917065167173333602537060286080100168502135330308736817075338755625188421386952904018130028943369881620736241167155194217231399915994801288224273639298590312701410950905864205703559212028149913438273224351682443595420936663731275307694383163974733630309034677125 - 13898578067144282381745055800645672916893279673302136968611379008502441834151355417076693355119381142895805191792417341239334072948739430863051575831170322979166235177455995591758296495549984120115805255527880953863638699015946382642299523515036774265733291383752170423806044888178344780165543012585571538766825473841218662104035165872817506484051975087658094276123374355940745425976060689581114121887452201754308142005124619505859667185817623047900351241988725710053477872883638906832738132901299147961327017044728196543111439542820927121046285552183151497142948615199594502664087935696136140386766604047907521564513 + 19049809342008255688035377431124101875595236303169440265904323196504199634902729607813320229647840493871879781736441046144482324929985401722755441213601334750854673505243548127716584026670293551003146048778635486029802151849596141177074324876352581651856844786942785400707801961230409562209057879746460670798851453259453872010178839929326451441817386128244804278595872100207466216667861581598827684278242391330609305482578280910596057416968985774535251427475513954284597412184807277905981720345897066786565833897920762622709337527314343082092912670808892270857952310722953835979738054038828240552165957990828069293320 - 17008871634909265380858787167032984254201071953806511259610818238252360743677022103609942973799078819937809839065066687523738547506987264391707065549791079660580742545796503014160357661372083775551816281954209643543543487585655791499685097337912439269239940009535918289211477110041112512375449894395250227663227021545715877905300837433222320598351270403582937023305132247149990047886811520521540920980230651176678390895296958342920099261010494570235870827020604644538465908455632134151658601012652790496579709605575413689336754495352550386883762746869917563648562340941790327238599860392532164834854204100568511005193 + 10044596154785010935886515808144015838739160487589804570344742449535884288019192195860384310760046759817109703908779992644346591481743131834768524708564095287624812427063296550137939714455597681004242545085154166218996425895095003238737448087199943695174541146938802814079314135228432251637021859546021828129173278117984903402636495185970297274766016694107709291215964538903173033505645346113695538849232969897549668989117427521956654210834790700638279473565238586926695280407921051141733453414666330532089111556133142685347782180323338616105935431078575203721059224576922841878857710159055618695005266988683999505736 - 6480286242135532133935805720143931902297814335409177875972863735144297629902396563276245645909594966364698255925637821844629248123723574101048678751447122055525206419131930803696782213684268659003362435353640524435780689388638293534318138695075290286513092834654867607149459138339850510395088345486842137515839683784691364981751305787153222351752411277763078986548007966769731763992462033860933039241374628610299399673335858202211741893586719699365354651947713043512160469167867324074184226811955789185810835569593825154788078777139361839817151357564319354795773312920264083679307133292295001232877868771917170450120 + 10486334077298257283640831747468522777837491993962727974091898315320745355234807203317916957750363083074518245615869744869799674362144870270574575936083344463736077457769771325902574392944371837071662816251268272967112358196332914221324347349040859763691859241918200928286738369670989899555065815890501352174097528690813177489280376550716489491188339655166490720539844839080073987625977866494070913512863591174533943016941420589729284191827280117276035768037396684971831933381732758703924081266116676063678031378815100478034297348520847256790734951921619045661408814455942677495001018373047822873662999741513785336828 - 17318736975710726521329153218654800034079383682228707475809485073413283854044404144602152028037806719555126102043442558714462540025113076736469673187131015409162224773577626758793746867570546162896797661877483088409973487499393479047273550638178015088286528640753684666787641478080209231616789961452149209768114880011758658426907588959134162111543997329445772620053797389788822344734665040926010948880113597278070493902408599984734382209295532718859049752307562445140854836781138159125032625745911237202983497878742995465400571978892570703635167996182882353346120969113793297965091005260892405130326804164408975956276 + 2057712926023363805934118598309015111726890688140359366688981072684442022935939482556667210821886133705499436773138905178785876547733362472755941368683983684040196014431360862525068749541919859265365431778059147983606399933057614352465714006288651263296809147099536984757521528968997264478218503998265166090637784044562207442386209750517158093240785412426652679432137501568524822684750281964332782456232069799755743446466440655787396714205840401969292782035692048563476325993192992056453496338971153786933268323809041077632384407638661547003029211186401485143030848319480915452583211493285544337631071815214913549631 - 10556215867204476094150793352775360976358552759056536512857724688494409671269257985683484282839526128707073040620109967420310497546470712106056300289969412028420515358740962628922407582790773630821046987216171865957762520807633186483648939923125353225357320785458676627628967794684851032107697558690341245199555849393053043758745122673617186510713370659008362541652783265293224526962019498066901918600719003780348607452406086887891499056456421042621289132488758201171233373820362065082161764974963376688442114085973370992777806076139118000821310135960973442105499430937237363178277966660608083957556658193041925646743 + 15611243721804712209134881631881793130061245525580450014894044677697759178827268561920847835708316077436198823447972742375430245629749396476414035148868946619582647918265303651170796664394171519207186127826950044660102054365638540892426085327872938183370698292482578695564286561558038452509341469868587246898602295002537971487045502760333991088316866946541521363137727612706591289335340596488945442438110400961401546880601235219857855475951553000985120959841455774616816918445459973677751843161798875884167457641920559679290106362721464249765653828105697844576245657063272894086852380195272889333426024401920171579596 - 9684621694900289242681583995374898863408932934604656625033374961114519337811183598601040860459976796851890040772453018598591689699944183157082189100256584530463339221818912026381386392943114185136640826848843247537497258010386922573478701406458893577717710470071445386309112187770918376099516512634396147308077406488518205169691795644355332393855569042103305511561216040724396407268699882310720712251461692855868301939573009965479664326012635659618289030336901129142184208854737574246100524347153790307319571508691133041090594095288389611470824050493180180146314821543920155276716357417318002362208233470300351227692 + 16556040475606596190741392246812172395406125059770980119298877621038591618176095674064077889207260339781629949721921678461987449803462497937664057409906709235532930259956441108664512083418798392468774590656171547342684385884103004337627008765215837043098656926726683126711933571794919260744283873521777822366796827868424712114902117942009439847490762986318805552216108754836018814829209084746872917224458802120808398837452714291595178490741561674929036084475085344592008639682217818461126229131406044645286921054892611650350475064429778073876937632413666902614742686514502008121440917109685952476490688346573254261656 - 15340171480796339524882673168089000474866951078584620677804732425599729259007163062335148211977607929781360137797619263163246725006287407278644042980241500087819906206325878379456300076655069086034816531986467566038648443462277713629389749777782751420707892673459089202706262290622819881127368783697191849820993153985200621543210485977684496302332741358188576939450507432170007343470040017609029030770044903319440489468068168502248768331644497642075972757063447525590615979497723105271469514413507826902660667744144245934302638018513281917592581855660379849690032318307791639230200591584552106879642118504452592377318 + 4550120283757140711409436929861151860679115495880217175440076040969111505813779778818471310920071650653110966384860112109464211315695417871483634137486826830687149751961051615987188945601582087919936229581124699121656820369150065278118120936004780540530516854232968729567945319245246810171440589093086765200398755326381740873188754963341997095191241365655743749571015792762048200783038611709729282918419158926537844429691525748884460792498336590662663945719280210701570037922290763617762812510102752307088389801931258551744189814114813315420259041462725121364694412607941209313878909009815069030067300660923443855611 - 8948927662790221933528769134190004022831719687782102118377915477730936175232778341435169175868070973978739348351884883567379466233841419144199342119601303849161121200649810398178164453560325533058369050139383472582412266556382336071929645436386501832610889737567940775501393240969083261228789367018394694861204621972798495097368813217197594125407206373874508157633458668846630995144139195588887788718702374847707793248406960036961452598046722515997376821632746286557627500219385969453048195235210135275116536274361527971027377838396493527243815961344626509760495443882915308748114741293899203400884459300973067556876 + 3080369393346232825307964274499835054986557715041558960935740928444528836270223489017324595565770984941297219117952682890736289547986086115063714200940709247744799495619938184674611146444074570753118944067003514450672686419307971679042555236036503172162670648486739002730244233004648259614585174904905602295346027968017196772612226124009225903633957310121711468384420300317386284375884161091023135119672276224257460796737352614932444437389733558862825662709933520974270078638717851168146516304834580954188827223984441090184619040823877208232491442652694967008960427659562419884896984283027947199383185348209417607636 - 14877841591715192218686376090854901421421331376268595302385372770135666461350515070322777256423457335867033346843115832795946985776192793604307368614303270879665877428760402658116869706557527859301248939162608499462680751633547095774993815354061607989341213285126511249306216989828111419450078748731979093064999135573972203040080078392032325325727693944631783986487322755981093515673451766181365439465440133195358974742640744413252315943335635877491234282191531668206454597476913220103056842355102357754447971616078726850318483602791098364360862686872778332290004532046808464755452679060865974793219082307540097653899 + 1454152487201745542444847206453603742798178001371635190209005858655450311744522803119627074234419337353704758380558157388871010547237808334400310843159006408648947464077115966432614144481883365717879681639535641569421507340743922659521340403374922798938811389771134886532903946510467094421546233497686541300683336125825508012574502691008855182003140204512839915341014282609825019029748771095377493967696433607307448535045262464152111058791493450490443293784778713688462738339003739848540140801608454175590899842454684795683874878488886383890956614251227107230977510678783721739157729734738239925837902545971818258551 - 765847270988642952101378920068205230157496263608604666166506358082714060072729284537990417057432951862658302499189347362093501562040238145087614901720449942190520924556509419338783844799636696544650245866454450287547657298766880480461788540167191263660749784940580878761466590160778859098477044734341344791477571811584755538985328312349692966714833379386128643546495962811004981948728424875049686861409186311459339245186643249356864320079302386217913297377570970572755535252969650005976247749902654080570794156236683230123975759921174896860857011173548170722005939456706001399699666422983533136441285069363279049106 + 15949466955135990710797427386278092761829084453134674646500136669902679573713260817624422289509240321641615133998871359759897086975808797063137330706856442291941493970055402009679527976439359412689831326570296181374690025527874775582452770338101893827421716697647422234979116863543672517104046429172944965710400935096584661215233227721885058044093840661205695499885070088087596783552973307754087291193864771450294893251880244411227664007430776134648854187910062856232735547657062660781689697903282956715377671774725979777823196262510975467515009493437065611900530902106209432523263145998436919057752582347168906092212 - 7227367460783032015984963883853348135590622092246247571818373899036498218751024619316125470570064409170612156706774698214106916808078275774147776603431717787999189131828501755531204926238583483004829484541508083982199027795712564782756680598272539785979519862318600392254120847182891999541122594428076807081280896998474504316335402527539777255754551152513366020642973142736127434243798054987831000157619742768070866759509606281180073151136216048182377020752462562497919723020732396402805628519415212272918734796728613894943754450732351020931810304701851489821248731570248551832064381721464123928402623415462302497160 + 17780646947288631233539743011066527243677558136488179168265846486936934000819941987874242195696524636967731993322113054002495975744513922632318944217371595815865080807810254200082006185810788678110321569260373975952566801115723036263163966369972146309211744504722445800720235891593132128195921505628589119846564490744345990053630743820590078322817497933709831989899428664786785921011788077716633496097954754563076489409696382017433729469018928508410526874814644980454278574850880947640103686755575508362315166355333169804412699936958464325240788693361976891106172258820803546249093553234642650783491925965809055113102 - 1634897739633470648210946659976899197796514438917616740863491803938230401715381075928774734522427242695526883471787651006768410355387498048109146643909967327177792784530029880565756134576309722813818832890920663129622747482482848446025699338643078120001803343114834598559696471602005844423013777682265431090243616821863668154759073265412503331458640537718011720271214263009436624415113397768399260323809663407199192741659825030284575976371559755566039568344930773999225958532814248998803094925981412019442877841482214802236487473920873960212818123393032201118374781015976108062643235440212925470659274741319580577980 + 20733914462021553726718846704084022175298002865668910717638519252314165454525140340336294697327056859636518237628586062929575336731427641143904859403672322489859535551778484884318670874087535878504906709664613088665599147748335404440645879977047045976857588986360839517430421218114558475931475438871317460019164091459808049218263933012755303750424830779011330355948282512967856633158857285760619340119050027527897200898994608075820347371030656701792134680712193016016256223256772790488455663704262206061084941766763965641727519978371395825659221911048326279707906504607299368639421236225681992807213954096206325520257 - 14391503698220509859226100040169051423823995622207301084807643936727832316468762309730712832375627363965330735376763840695113889530937814784457664825561273116264692976204622738613316037598265742957502994935838872318961286583922859887684268468335786774167659132386062601463683481263514063571292528891678714986569693569535180142151669243849093389162273102094125288057003842064042733390678762969520989944871427548648332059106378629478632023453149862856612029684156533987301352122356843126456461681025953917776498901697963539908589216343467464841033255061612683702635214340913772512085072189494851399871510613600645973338 + 28955837062569055023214487856979965134762279302618550005819493163311059028471380420115517559128565408307612029037314083682945235096720232184000895390728514716783901604658682675621445010847732234573079203823064405142745080765310597686313593234549862844931167837554488432609289383250410019937331213298701669352652018722893418425077225295937189807423620717078080057526240569732988470169672206308725546618249951532889503868622033012742917272191345474565337899661004342059769665859305122717161583318961826978055890473018383328320377774347575414278527676934447515612328104447200531132356567068832452493435750230795879227929 - 14916655651128499056614352911390333112051802476167150343987565721043977517291091529935595729060141285512141999709286733285641260420440339965636525787934649446088477978249371434572185574021256780748631235589054205414469547574103169576375677645885469599704026101747444041402177645013588866475568980880841327066568404247611405560241251686701424341398944456792612387475387043835586481199476225276359584258806737889279915567213602325478364261346311957342916347294578383434022754536388884124487909609821580805022195123476382848871242398501172475328090120771346809709034437703932221396317863632953513521938135257512213362569 + 14655607360688346182457189247375357729780542031114845500231462906125063600442115774364135218423653459135309546801452397394511977811883242802453635485878048598223500263502987691750621300792194564113847322739044477660178864733749897662182220393629418163169480455097075231377231575052520859937790913079299063753908804911381234974570372798080429864212072288673014674696806668457382170986670148246011655152935052939958320496477474023335560471375172689118447721038627720613959884413005628172145722212506659991825113917710724939462458191725604579220793312336232119614749255131702557325945546807836249413583960117494601517532 - 10954653541164200842053445767719861151498911490469746544421283757142049312421085846316927943806162834119849560960829117757815938670707553397888406455659195865759510454628010785714624179540137453344899346683232198194798497576055096457484487559510640131913714146299263840068959981631545981418495567250635938620925224082812761670151636199951415983533206126234644025789320421596726754813775637315162926929125040202364584946721231654338538184207495498419752013923297803350421447653633472631673339086420486479944305427801556295931431364754737245212929312573199379578813937648946647672304396055925500350630021992897019734281 + 12143242719796134075293288096970143004247020143944557923522430310466709397496766254933406705124988487470298978726848256280751625922548021325427145154534899853854527655618702017820693561037827913209817116501998370691098595135884577226866678185151148470119218194189906719320419288825821115049005581542227870201016490372690426356070057196327207655313818873031503474938534863219332793652404867320465045360921055309782838790213716633587104255558113883915180523067102359493788487910417069978912641661232295686312885320979587725879688321584890700367191268160763627116451418578277518810130127190407961334730607527673428328419 - 11034429861334776641054359817889860876856763901819505713708337547672952498481090765691225806318910715502686458000259266616128374065644982348867386008750994815750256664736794023616062438587927745274831099323152798435944495935743092315197461168730794038097442879100779412875857550163670518999141315470689856121316583981724420788392125816622529924119058361671769488064181436476702097487573948044691127720910493596819200922993508134210849925196145617486068327362103808098168199634138845675089077091975243200674323441108256200731936410527611444822167350660004825231307635731827576495599367171662536929069268516008383650063 + 24218638617724576122691422665315048097066847195514340716829979230335630868884536763071217020318976643137610369670831125991013946070586148787997069085197519360866091685752790031959976882432829485198825091542065089319188294765215809678135823824245429256851021473372274546462327601275720667227685695919144118731660090104589413841680019132227751078662265183289772995110297492058359618773750724839709367992029340938874978876293164170324061271647031973057747569114740282820358060307034008470818065237955004905698562099087946040100550248740382011740557598782554380185606193072728466484050154107789937236464024510779598851484 - 707468874034364615153990671005221775200982607433985151764712800358783397585980107977196181057996171833379158481945172602984208175879140707571677053574643455580482466027713011974351577564689877857867862447565422571741738557333198568566875621980362652424141869219443224204666597101262007629477032340385677035860143779372634230741688192477133999561938317665818814802379986616987986677753216701548219632585946619028034917435832833407175234299172922242012736557715663288582515269691489675969215979116651418834214838999216912147603498052570048271962759720520721880535054207502873581669456479121973250477376590857614347524 + 22729538263840629828299298106730299503974249816571166153857009197697616792765270356983733352138261197260686037870312269485902717691051356465038843728673863601790071055204239898611559641313434096702383570239864316918999450345871260585497977551784242463143279021196444635731874188684838910005405797738181865374535862607359388685305189394277943593656151499258903811410525586246477986529233995509465809189742904049415883985442710554896451339606045675291462718153341760444030773304989910191111729507936508693580361130015647201139026640136764357265996773030405380846989240637346843083736401570545764518288490494279945952726 - 10132863163968045531140943853205808407920425646262880418768359678818712213644885379098896576183607683494068153922606951563023112865350830254084639177596438780519835430936700128266369501681296697607514787631165421403559747949273306561372201015172215986180637723723738737428720717226520395523533416942119206372155008663437689880986371875354069914481151627640693338067095363755186433770919255316790471928825090021689118230586704783146122350955969700011559537858364390946758758573977302905900978923397908251951697783053889973734815784959070572632342174633360138339015225263356460082510504236414829333833533203740478572845 + 7441979450582014523774549897485547653874751242114293248870045730738153228972056480920097241984274655787118710474097234185761570030172837243235703705193632071817016269855275734919082507113139569448260433772040861887143284775717997195742852048481067280319644893055809931723014314625929848054290623750637822674146971206264298138923937597084145834035530327593290369781952108163005895714279247011756589663237530353196730506816475879278700981881705843865955498033149782632092869109416902294378668832002546705080286934497702405538522816833912286195522909059225952926109555996555270761946622201906379043406861083912920537815 - 13153941314282863869711349810954373186746104681016219661287808021578015850094010873865456878644450798791870503655621190780605508794640927503946313538429814981476738999962584950923876685387532793688626289257873306638338599738806634824162216720762299172475796846502458841570955197205209460736712007578205268846496527734837347315600679163038731156026623731191803470821394882340817241683257445642425780926312438252756369931018737737979356943871179688129791195558166550180045718474510792131648540065104817997118719841526339434325125699512118613337291179800567982791706428250632167108407791988937473334285813624283247388280 + 8137433939217118244861675894832055120811132160920082316409988768451873124051686785017809246533981215447914463352299306270312866526871916062550087363367964772725893364749269822345476693714345709633899393646470910607920933630251499950455911873134058691178853008502659887175994215643459102712481802496744867545485583465114187852268196637275778126082400910952311665852914794122985225603731460627553055733364079468347064770966796462304977747373232795064260100637915350627369673854927523457778437942053842246521940619065286777243320256928918069970680057991030268630455458306303500151358250315388464986619729137318567994558 - 6935083745182968204134128921574482662908653548808001487170287912244868735262031344684497215965500892336174791699821126648914251191744690170357591965576789003958535010943910914889778491614415061362271093380122671827708651641016273945852471562642321702993868038360203773925500483231389747213929686300880115387216604716641575858466092930093382334421124235247777865212787377483842414703249735456968559441583444620502688484383305518784168495260672943163556101957951966463017289344178087080976205797343564458780664153356887774162684496559581141266660622567466817605406632361790987203508407054737177070614427723311008213831 + 2429978995326537681645305447552840750521926662713198477341196532922837822515507190842117675847901812012215398428468725411909511619316272150362544143690430772654063755969799135272330450009538287324995318263189701116431786950029106058174613338588434564385516117897099320152843910217106094165725147618386437514696645515748023333170030676323473323896489417317791600248685450039134799256742506101946678769385768172493560550769138011058953032093501330600359981494783027802613285650289463829227378775098664628086219443188981007894727847246163824973624247810937083198940687100760223811015738289845169136509226429966351510098 - 13570743355039001654302115825309273027933318957836341423552239157557672036969447207473902114972291479201040784282313848791125579475492765852831457878568399182138645159914609168957039153772340469348234448117466780276786927101964003532930065555259783574490680790486271113119464704250615092035145749726414389658619451166229614915536847271314244610827154364067077673222945664888585666981566241371406452849520621933328232444089103118120796884718438903725908623601742728591437715332663739835141320123669885362439649196620158532470902838824434370935089810311625092096421896935880201747294876865764559680907566185760277268085 + 19198034874670560824373386990633546790264395675722988406512824657661272710307977471061767785892604142256871600738860913025157834897248329239993925373395004687535562999805463418730840099246172063069351253159876890567103719747962119275463575355220535582604664682742759872477109325494809043141008683281839021910017956394203684156005508121817712660794951223431368893923959587594527438537741110465460464235738281422201631845848823790456690468671575652691773592518023898530134930477037138280698780376970815292349253135285985818841295834277516931707148814431719394063059713816866739298985077955834599115514134642419930919640 - 16615308590004483081875234542988647041549518175444980419718235263409070057754088407752178881524358386835017977268259233065312177601525866837785753603497694160722518564514353874143207997754568191652896831756386208476227596501443427403167991613611066631248338961239314465404877519427294611541693337695116002907488880910619848332714740428844825760126848476904642718717570030830392748618323797649198835034597148974280974983849077428749821494170901969096592451813867795503697787217034786975284440171128830352305283026027090089950407649183465624761901472422707273599952542195595341882261417689310557932089927916986909458286 + 25359923336007634231436678327110273029830491414348421886195350483634499797207784972934086194017666178816758041605087473842050397741870041865156152670109271174774448044742058074666717354898295910849945918320536318252817054842770654500469966900563602814420825663037217016976143788415855008499547784949120076292939104080653904802496960107321559771986609526670872963105200093412903967317066078294737087050408288063306926100033129677277696807542301357702958322496028221749897133800207120910385225933888996657120106971537205782644187063028326687661382176035258590830689576827195303380720507294296334309913381406500719695554 - 6127477182641029217010255201838772293672261191261276428097556697791086663537341779696378377813587392943818413865247859127162336687420832840861736573081221707526116812091491389976353961442504730306978781837051818821110283892646128015054186058371124656828720718336782537591870960548090630140709306296813787109042390690270280116538852458192239261335884018515082471780641982883168088729603772259461556485939592753974760243240241283866345605625998001861823496609519828192023034011943152943117883515549166887731846492138409079217644454353504234082820073694576187613484467571139416878996088449961220801189083529411230494138 + 17015196825669394231846873049767209896841519246813222847351493093025741573322686514659269522047131810581810646510574087624648061796705974083633681014569434679479691313418508997417954185695303827911412857044016480597432079571401599511233761605285878044951627308360340642437822111609908836197446957864598660669553516540502772729440668010178610721179642626054424594520671364339430391626861830341799318999988590624271842378304087011923036242840592335078922797418935027186668871133600255989114596397915681963890035126034146365475725442543009719976028763550290844089142139767393852418960191319542130933576950070886573629947 - 13975295974408792870365045197501037694265866608890598365079216935627826349668151674950406045966754978682898611178788427084930098423525064802652279752148095746789844247516484038937365770909387962695017210252933565422174143388937238316239317410970385710448604474560748024639987494833122346450271472651810843978463678685492772314627301622122441661234245733785482021176149934464224345580575949488593556113372747060978905141717788337572582945849469672889063981666806593406497202527159968643296676616043795665817124352028133747652201216805485403165190879324445579144527579824070410301683195197593207458183094611294919898911 + 2253722388789946374028485327311188114685517078581929040889128776916679429105808658445383030584124380061353630734857930692446191749288058860469378647191781163327403876671522921537094072086834517229687967596009084864184969037228550634777516774981553000861754381256513418796951594934287577308484715864910288878798938528123706171772066926076547097326129235572854870859593130010654221147874252446291450388577088409830037137476088671045744582759819975744254835025237375395254201559423806917851225914252182599072385633615159470854761676780148237758248205312628720976425939739798087185964604003156066143078364979199110430033 - 14938825357380467249505521550794434693640500116093977153841695923654441042627933484741144183062809113429744693842935794617628389262285036376047863581304137693636873761952629139893536554809005564575414598992232786113661753602451955414427917965076925712249218964019537461910603490932186813223627952825459152845963563892864360627392302389337794951972857515680920141605121227541544541457384842726574620528166852437488406120849365943355452703454763146240520816789823909769957024631485214789705825292686639321597149311446342507964189054251670415738503101097910746513444068136539563442296257664274497844610419124293682931179 + 1899582158471286591889425556110711655803764038109762188172656447572754278508261673613159215438332456880856965531711412419218326711635050266542277380390158597575547049827249651644751402204084257487168665909158600240979771265324030334175562524050849708507899417030904438597163772598067359645989826356765501111606580085367100404847579610551099516271949103508666218157566571783774580375595775794427021457835086684027606628558471903101317435789512775238682176539537737229967036150109478765135693252709788618580976928310634035989561929282202624055460306972693035089084725422232493684967065855180768348306554268445369610014 - 7019166011281469965321000485407148625121049187524164885672756521606093515875048125636674966669889111519534287403953241812812075598892802774636837111353470648843004444037016317369681420639323908773651547154781424522093364865030184843616502170342861823397093646932230776462913621655626831067072117786188511870720482780544081381261501360661685840488995025069073652058726888612810530267998883683418390233212988372342060398657740579905092617296318604113024695015860223489983534319992810650951946495601881887629502669729260933849257279166565685996895969512964596176103870942850586111507771853324795944302655936594392523565 + 23983128640105816105931428283100932221624420319236938805639338179866820936145410492811939696800573312179110386148067850879999346235852399010782157196700908291680266113136265957324429602375432198518701829107123713589371615562805939693360135325081796995690643706689377988234870090777782352490154096263359554897700054768957184599367312998217542096900974817565774943718460760840615224498061461442437112238630758497233741704797051784354481445413433461210028958391446285229351133620771234517837429944168006889710943306310274187456491180126753436662776193141025215393373192347213610376007852013063341152519987159363951786128 - 6269380940231167765458627276169738795297366479916467146284309151646187702460983829909371422950158624982763261089816438062644910652160691143645516589973183354024447666184826998994843346753232259770501963386561847180973187314880958500415801330846286506281417837758379715539104474819578076484431512046503639884166055432794736301657909742190486398807245704158821888805359389210678983901232037929724176148476852793004078107713260768979251590861481379438467204112643772344415642857749517880962691835858173504908299684755900052212797353591836258157426257398764443665017279802645893209964639866592942394375789837227914598105 + 10557306210035982154817747674528632983034755594733374609143722931889399407860872208488307183654436775750154874309724744418503047918952178060801294840838838122755510518816713472856184557916907945235204707446737972271257905023433521889466184559233973661410822896399124348690099625740157157911625413740180709650122734078552506971760653608346484576790079740069251498031479184628165370014274734952163467260536222516318542565922090347071268149263291351986018806732619075856588341254424808817561195787744261731547547165605548017177507711993255742542042647380130982063159577554901142957679155456784394443073926790992931280415 - 5273516948069124037975271822602635609492695724685073810341972606686519925944994468958039428920140812359804826464077428515338556316244159891799979575901974663730964647074553336351335783717656285496763906079158372865905261593989493480944269778393128520101916763673074677407547131362797063998664744989009954224506434071315863585780196488555487301224746607259257354505031924933899734854666838528219160473577411549259854042814423567313595860429329034989592965857501946427758814870754191283254429603982428262948796546635132104932635754301110204727649841202827096699324024502969797486217312704934114909960539775875288382032 + 23939625803517157116325739339648010746490530079010432032775676722583640462298510985984454437427104391906436577623814884245568332037890699081238848395576998688689980472552693348904233733893498672468204853701177112986189515682691717739665564416704928349716066884791960630902597983531950602142906302015117077944175097476142053120821497243750441936682119343097709874742968713623219611354381207254754134817686337992132664345570023182289538274024855449066818745095553432252896155168168310879368468793133911202425010375909739991479267342155766147148453377043465361012356497143496818004855610525265115875350088216895486780232 - 7144209997920178348583990472114915735606578726529271059372012761896282483633129472805163984015891881941801320491666646028257652246304963512982027028453360096427010143842407719026187976387846604501072598010722772646831014849145888042880615758273410770619621202041539184255240171659198991482931184045742418519557104649286333344333201424776265009999408165629880561243785315510786132770880896572851058891373132173927520493171514655221965721349536579582882540583400701412498185894290373129035086677822860316078082743953348540137315710898415774069287807921890296205111651307213416831372487453532395633756931164996379531412 + 21390771299625409235656532528297147734798888828459283451787600005468467778699637600461378044325508944961948924686783336623044497656209467089301306264816131285201111411170584631544595388775705703603520938343479336286838430119091006541844482863404362280316886273585581044292840879357062952021896338485852677790418592957776844471216274845059341916767171284365344752952759293024552633409509744921127055821343799737523092325932169937048189258690481273950770269657774408193087415263764666617784229900369108645647394216370986318157743224889536549714953657391374234408442460876686604771019464771800372239777569700525229662383 - 12383647277951233670688777700014395657963802306114427386396322266359435579807197069596857335837598037611800049367942756385487704795992283942568976340713791336405081447659319696015508701594890503301004163679155206891349924735653520270999982063873053098943347131101536623565116353518179815043624061875635815053432325110733123004481390983459394303432231943839527287020832656247670926267138138278778575294753645873471472624975752208560047225466587380228064678386411793166081515524864586249758211530881735785133156914867012014511513620009869502687494232227748024811551407328276865374667658081489191912858657861203976367720 + 10417992854202905677971715680321083838615576071840928163835591485816529348299898637140863900376276396453326476180378419202888458330761014706380219453734128264687629786998930242486297812641012450950261144693308560113722600299021636146896715192951094084330013379210231341429563932371071707418853431420052970979418734484934911665292168549250679225902024904362103225460713750572022855127257648114726814056832436461519702255995842359952115995017699584541973784792275325356379791149853628204221441561131490007585409403788492872317771846160195918547263592925116884230387439962803947954768570928173688384029906790818198611815 - 7386375465351523625405440566657456491700101318711440038081362806572716460440333862826161673612755505267695539427260256929898762702551434142199495575049039420507478055864860629864044180736158074710041288213362981933604291516893351949318483403631371097218833714448362112152126242596606037887628956091629795331922559916485303250137501188593652407216540818480582124174851354348043938884360761576810324409499826232743475674375730145369368627809734354752211715692200142639495938546151258798640469092502186978093992687725974449510260847387039029998816003773073144483141428470961665208202719046180502593115011891461430642929 + 24432987180986043619412589751082938939722089819475398585575509410712504405855717279099353267627564279581119405633937989859450152932342095566793498394662888570521029935398711185187961409288897138678174784700122402921447116822300859694283749256776671454525459099026394221735563504759882303228364920848062272681766209820902496243892858305836571143328736905116792507528171248325389656676577024689248224543229304766372100569492511970403690141982500205078742451293226835108572861046754366217873886859243579946092822359455889859885958176219073573008621245537270904817310065450534801102283889134427108732033945160870384546610 - 14470971623353352639695534428824684915826477748037230216111689427757742851127792503696646570432157189186829510604004823175034951551805412397310628318960989763182470087648711094599714954005570897440954392169647315323058921347930703606943688637236866723608742598251190536105000346755496071443541982522334342895298171254127217011865177697174990856721922664992093883982584278136230673407419774940718302687532089852782805800757661859349233811402532555608410668877495378363396070857594830637154324583012336870247522182211880984476661214759988257421640301645667996710321567824532617367434182500387400807454422503569219030655 + 8611479000577265589840205656108031906235052931950776505993371432281323995480559340063744393021424643357752001444934690338211146310497731578451547346254860874709369596002233554732006925879484132383950734360992728607176023090573151008738403469164861308283093236144363352631998592040849400656932992113781776066496980966047333385568610473027413822312148601635748748276366803161259868484596861672926332528938467941656484923474819147400084702698111062275828810357661095642369614508033396173174874826333430485171683112590261828125377619328555559490750260451741101177382224826309956993613564854292690972196783647061060074306 - 14586702312050760513757605852077118357261050849004866024272973297722577533401166495964920732320570264006867808472835469297815475724269031052864161218153103415946991561882370681697973094291586165666359687021933123465990793620723403901374773888269103735306482974289956996644522084579159915871173984367230634644576435409169241084858213987524623373508706557141438414426970537443511358654860316694389404484845932786518790629663514154542839030117318723227424406926407054270309870457796421693248600890655641222106714052633449065952988195974764871186029928253664234860355105802092120600979067305363169927753217836291402500919 + 26871307828920747950836604445970670628440625337691768843617804047418126510422967565286943769186000836643066997090705227596523129524100210494648342637021982924553261284936156881120715486075708805620674572838340674023774691759068778420687471935579174214667582385822210589202521594275737840238869155130365269642141548793119809504818998711610746011878365900808588692780972999767695046842527843087457872427453218382619615180941133990846802319980246499285500473327560168730432276762534183653678713014713967095453461423190454567090422385989304669764588930381826724883123132045007476206350902090107348807128117274409435387947 - 4483015465770091611591220407239192771103556008209188458394083352129449124171618891625624933400474449379087923340963962569764946165202305163693774765474995255330297588687697058783810199758289772058561398189612649871343495168547316598467192888598582958246416814631738405348601156538481398296215051761648594141287104456306736298650447312923527467905054029184735084041404850510472132307356934969473564601725036819061841208471049248536551295232571838989689901641727233282645340378803903865265010737150405847488702080452802868629743143841077621839071000105702136375222201499259557438049533101793953480080839098105774987927 + 8450826289642454580611400984253871122165061939630706464414322625441564819160309633749963630104742780775265944041160314944557690557680155358038825269879949355648626848153316006197569564767237391393105867128785886445963017035260551433298406427982127860225705719555682004110177942273853763930735700723878354196101477349709666237844584073759370664277359117125258626598947421790664259745509629429625434316347868709591836235095729237125609112365889469332558193505686973460831596843624953891066847724691862757490958371758322562636469489111491262569702528177618412989522821932187181319781089971819132287137086190882961695108 - 17441790304629050914533974780054519150070481382459043595636914566464188811452481017717653582329771254231840573852643683958551171028098742026742509612846514020214765921511110233002346060968556515695178387708866663446846839528402861962841482922001334354014303433213421988894108058165396756721235507483260096695919317727535544254031924738873900666374178865729554821953997688028200537952699926524836485863006362696502479060681095965642895276810941337468439599109631477494537694700033382389714426160993456240095026866324012359949841856961872740231557631955718352430983450274194461930669639152899548477871232355684708090062 + 2508154171641058894774394511715033776319605473418249975137748613556294926643534154942776329913045368969251397609772617357891105999269518552631602719816945801271855364724113107628917292442998436085550640010357650326707088468839568417497852736825367644806865980084059796193615654648942601393704536159275396458049113002853306209519405195991811686266535883548934503898283608511687548569882430788189681808638756497811875801812023082674319138435728485515710789630522314421069341223019257026561076369606654280997519394583761407249474825778487618092320193284636909224518854500891833846450300761725211676650749691937439853248 - 11257818707562426755682740892404844149943196190741592457788029293838058854637461202585574543308489840692475300027128166103292402271618253057108841240830570906696990142561772501172212601772114068801971682619342566463642262947836371408598730296624935856350436140401887347226398410882723396138386829982624455582307793187414749869407160072368445759601746032568688877382911463560322620656826824264233070734529314206607098296271214133731092157328057175219499483723091097142305714697524298816829505809787844752873856068177654364391259025954292913479794023827462538027811155935130887316173971085171496589785172263232254621173 + 6546605667678443873586727559844809928101944709761295890415735404141856899559968604752869513423505109197159849708453523936619189674604983278867371057718154576906391018901030199744118454513442662886439931782461482538181524174910108693790698679473243477669608840506518602279728252469258292462800764221924118037615216159479991438676715330618249876745956997045615616546650166449232306776231416234520534939735465335187022670149305026214038726180704129414399919622414589774773896428022156507311950172216372092470324283191867319485630763230661875880965949044691915940948555610538441495366589406014752011215392112566380540896 - 5202661217520290817827719459961947017604527271539642494565207374874489009444597232784484459239959504275000265547528128662647929333146220158446637020122936644435765333438318230419943793447866524944044015140194130850575079472430006497091236101863370980842121176490479061291057617857941008627690018534769982884663077667492734457084981650055235038910038464503614370957206368298440569888141723729658812092951044961987466165316266233301715270241378181874749311405791567270711454423499913103823529655621087497736302834191839595783357212477271612333985137618066692925600742280563393443324420081405852759937195860914630619403 + 13928103619763603152106831444252759677116305650725469427599893682785184207271611965777107579497267352372781885956057641113787622890928510988881510893213428421495413354621844084601234740105735648471491538598440392862512402179224433178599630226665240331433950507487461606930960405145533696419194019631116845685799438129980403677753392256810792013424122874043980972795481517261637921625015893198415066570593804544429845278099593928059441770888776790026650840337836926304465187496315508540339286810576339388381931536660469281303795720441619234307311073187184982082473424652731051954945664812164468921241233894035771718074 - 15306063570390353737837335209817420071036057678572156419103603260180517633416594725250143930256570555311973151863559278426910091840654318743251247647585440312790471676397469900069506099819358919145936690614584106520849434610978574190575135536071992554582401295205772243723081441814319344052735706757887372270529502313750876959600478787374157271652337934006163028240663131933666286507693728357777024259215246350820289379757273939088681007442940645987069515225517812731360665645335198490775502517390090853246631214233066980160611127887763373832825399449430667682895322299227179645582547580365411687629440932091423182714 + 3982838806632364869861895169783800627230652455976166690615279025427996920207442422088470310010220898724052706888707895816079145526469742172430379801588035058024098938168644329801977530190869585968020238444146575646640359036338354664853147838708999063999763883431636963413363026751624660764957687590260108303409463230028366372263733279291414967299857237147914408774203624792934651458404444554235574579213838419066265170843973584801032928583408003277707588102366164573365402519601280825614970220504940708602635971878807322024166219234740603214555805170351831633741737997339707240212910755840517795162455038443798082596 - 15525020359941097189908244413954294911124961834750560790887194781922184403132429469829467996518788643536921384070132409326738978019989710223183837294410075206821695426768000405969242577066465426975444219574601086279066853022031903462108487940137845749614007951895239273983221659988005137398836413069379737637021110325759922964022923478897414813598353877942940476297708500879865026700982914682887645268582905550805626393513499694354683323483071333631741788808616367045386064562931233233938567191205171408693561323779152635805888359117655219012421121143580102584677503841297111461109886667095037125675725999070996279324 + 875417687480505054286977456242668588711763669864992352681824725066369551681112978130241950286319930270058577719629231625492031252273708843113314118992065801246421713205593592049034555316921140859912474484013044218229200179103009857530206292964102757517827016471668261293894506570468365813110124562328777004635704913377374913006809616828132569317793333744052221731905669838390441152883078612820277451181092727245173178351087257035110884215563729482192602671811580366670824235650357173748866502918419750554116582809157381722429941772264724577589943651065115892104799560129786316955236408020919643359440256189531184418 - 16940005036207130582918899951749241345985200168859578243006401434958641208702835098072829172026446881562097049656491885861230470586802645096734627439816661713510410272452573754955387765476000896836272093301654295954347855319680978206167339686205863205608205036980018151179746335457471104379105000387605101927840339682730732345778706429797716528943384128582569624965944581545002874864565075885345658431300611598417697988064361854149216884682278174204767940918692061268580517848950938731981170677799248093412617318604554629632790858789616559077660022132774591968989371685878222588147088736690463348272153735016907555762 + 24771718474751685644110856002218920174837398303778672528615783322138945245743182110148628829815037380872977242969444465400015606032775589238496700439405272987532462939769369089239958018749499931600299007394100801469536676856532546782963297250390024795660598470771659483854867919229259269754392617302489105624122964445024572598005658867761018545434214510949095217741041319806607500501884052867809202047261778064044820655068113763405777769695380671276899253435510956961547669067546595629444003004035883877929610518245931679649952547138359089266284912226028574490670338440592357175129831174506035461626328412159143540758 - 4364718883764300403036270768310627541374328254554806209697360583092815936964663783869470123034211734133675762105189501483064887575031469200027084773260580224412339837286447180471116299064308510697888918030557432742261903613637510338348317962362302516112962342083334188731964864690092803957863134734505124785004656289115766737442474465025107739487348775014898070733491572099361164540403875801679110158599236089554174369234146324268619517790944287653369621120112475742808067836249537262883162535276404791766863227472337607011663653526798012581647136231034076164713442134818946265448318918580833833498338924454679925102 + 24055708931403598044536560533162104188583986760239188184597430736666669670866432354494623442161294420091785416431232137969070850698917164389685106604595058564993684071209951950392806173278121836532111706218597855943910297298132397164392677180663305174367540602940270434294714823625955669902391716722899839481963904421454377619538238396621335407220264467453018970224352998485469001446757344486894583083075188972608459767827646477219351280406188211477873440497494126952435100872749157849294789777749849244372201765009985085341438697273422564668142537536902207537981122175476608700924235570494221757742687187590206560906 - 3897422427055123316717985152107218209993018306804299138766569753130819329103872382839159822541569542658893090805140091130662485434216118297798566532687001348837653140928217306136451891950883580613950544472444153566006312742022146405219359154240035186429028846343753620759019713294139667647126880693574839449135540914567816620028750209881450451793455036794120865762001176224676058810101162374873412206585376442414443771655892307041058854645310312400261165954978942324643530952524038169595601091745230344078722079624911191687938456997124591576270793539730081676632373208102840805144294563237616634046720167615124964179 + 1364660613697806519280673394010543219170431220953787999202865999757047587979077185371477981311995768215023379508507923259256286623724933724090570777531852614430670116442256811525528893673268299404574823589085786976489699710722602159699229677056526092961570791514694435350143788479782773237816049387723796235222139001164299429437744599714345116673028870930471506793560573845845792821713565302614353699806109513091652402183482285829248441331925213698591690206390923382287516433768952830294804431350492680514277467317919294962905226256683912703280821506697489246228707009388605936482765795961770110405424620374856550055 - 9404547789785431836726611106075371982205594803988904518399242650204082972271523647904709774236783335984363940922563703274467842763488682314635919026953083470924250208280974889815864529167220796076121985898127170154495319480448369653997053928753051165345719574917848488336295305191900079887973908799327590918534484396657659159143813809650119752369590622347176618897347942675269309610082876508872515199198068414763078884021846451693533906117752176205504880161296341219170377373008375055122968959279418127217272515573716746943949928360075769481819677051421195833639392836429108972725373589059557619255819247317398597223 + 11755728727774902557103971652867140997474891496368127354687419878878022020753677759904894052782580951143038987850552911834451902789352317183697736809299617086606033095268660655511049935477829161092757716059425507056900295212979348824355910239277705054735221278045984853758521209592529834442380900298367504463193486267020611236391692643270251108101578985231814888675556303242038437353783565041278281577451742247984086625866044841943635683233344905748990036548808716274264819620206738891112449275673372318133645936160503397849858119108943174963775976718412726806652170862060799539331732266264584922592236618077484103958 - 2976549113847094968577468835128288131701651949320453291655592230941888441476952243171166076283592678719282917449879927487588945475217712055872754756998143833856640110657074524025426631121791702371033080556331728488996693876084094577625785360735737015434455425605870176195014564204039354824085804657498135114023572707474035525250176869734914689593560567322941261002145005448756163386474573366538592790574373717865255291313830629244764769970166526240951701998261905144430726425865088962726104241415044547913515433131701241784501483719007741018755519757192639620837306602970895256752438642424273936926814442506181347617 + 22838272476347407433766438955601805649097887678722321309729290772250967830266680166801690258589583489542554340509694190574503957386181686826423374087336724383163074856576040934536061371793291655590138063847190716649811977074298625361814439433158741538944261882837389853062285005797595319218679657695788433353271761464130854655156786063608496969774340582783825861811877191893647232734385202358095798188872405828002373247676668922927109228414437121592575613844107706794034238572515048201216148603717830230959213745183611090238542304167564547348641712390330365691764730509421797430353096046543570295256326502239792454985 - 9274222076154167860251218452155001073158153102656229126080662280319598267248604292839682949946578533915274418367029819103569080619883670009238965205891092875906056625256356259456200805422993627273337290546931687692905077532764234010028986359934495536883922622194049957190545245455256650769110803378800470890832630355452536052610991109983373241342058314211606138386621551310708019778019842984288322091148251447121775335982599536459634408991839694739684049662708310643950617553749472794339295870649308397869323750036435173505735740705804427113158913136227566020001537235582141511055330102734779328098319343475169049767 + 18170578466781334683436691303707177924865636391850186655070002997923631386625548029210849267363465397274341524340082554326593357357816603425861516205927262247270650960836306804711494703764387843487352310745078047266298223049612599720073404497770737311274478697373749874641517933160130590662108525427313198400082623471465404000510968397619781962872526490083779602201742099191924787640807594427998923566597324215224153251146409261328297316682175469901799856500666408870865811328625928307101883276209813204862430848511561623811594767229105618943956026014884117274336244420341922685924560116959054210665345910764972582304 - 16203934592706729111127984998452202981258153263949872385803115116561580382975770720150493967113879584205921031188083082172960393281217607394446417734746122213535074715435579654634688607363757377871243125280269982677925969263301270538264710202801012143133360599231404035283274634041835211929957193146659493290021572805457577378145170942904400579194160032252450008508243383598536476278953215166384388356423771043520109478377320377179244930548799745662913642104749051146161862156425130642044530113045730221317097850369115285138613767726276679537245685475614502868364187013879937017856657301199375260886430718044485113949 + 4925340329364614464708125820889659253841679992520872941299006271796123371405792090246734062844780972174176669048320455891778445741999239208114154162152311537092448473433498336211931035034667320870256371354404439602194836626817921520856437547254029298143028948547732484832224127900180433358736850326386638008218937674749650803587071397955068048371317924821186300476811845249136974704559053145697408183981880734161695670647428367400166297844792129230822175367371821120960976982213124967330620989662431815736197034281697315614170359825698587061811608546467345274025429943254014754193185070916954449245770918221759738148 - 16166031960518285375782828720178953752425200450549953949440580388314126925382692386635893671611885462623072809239450103019514876493475257464588373073568798727999010025172884339020742559972597439785512688832357084567515824627811526756258851967438240668682554158098135256480652505067183611999749380011096529717886058420818747129577628498787664780551585353956708166185755984820618776635102586417693955658657134363612214290898618040283416886512454456070033780547727716793300659418343735795791442149788784167623615448623427132966757608934472452583062369829916502024639227297520976218076858502071544924851761382612237434125 + 26888198047376013499060175757790860243651647664970960609779215935152900743368462006309273747936404814823536557061303446219237702519776297525871811191744099068632873768208165377653454083707529980501350166195939412013906627876581911183012499411804839132747445394779188121617555496862903952843967243443514902173279558391497436443728903796088978093110768369250923866850584290899843107440391758508820224065401096940739399175654962052465663125897535372195523251553965602081750019074533098560623208783156558741099988644613973094776178604718261051656089335310287479196372807581587483881077218326919144378576159458152454055784 - 12818249253720344377828736922613243013683748944252942155089322309888312271618558106378159002225132695374920233628589817852213915740272262230576024151349843876906253728745725506314337469265990912225798119539128890006837358964803896761757402369513892430849553906326211726656055890809562092799429004047215625052653325099204352299286761102002889907447595384997035837904042357215484991723583001640544126342164096865910180616285221847662605540175407719615040580561538204298831112911558365796127334493686579935696291318274935691541648938827816339692273111963613402107300411255361363174066897421773093867523788900267784610930 + 13610289432487967416006480164760410096236573595317093810156026075367887340455417408627604119855019030690131268564456148457931706578669536329207730245599784585734229814290230311358440792940243719059885868320552853225448888622309204898748647418956008678680461508259266470936075654182402736605301088674276877944970253504253263692634219432431788879869930031880692057634381671935551136831601555018302576051307386862246395242443340698476209089672351023679569504505593491565269357817592096199534690704025438899401740409486206852863521438949287663562744272480434284512435739308264920676181820672177410730937897658625386365970 - 1915424583694581996294718931757087460922936117671308084641628944060839911140600729170985932429952767639072180062044329077878464480052159865763078075314050184342724811608134174001720898649664228389282081575340208886431088539083102353471118257751920724867332974142837429778698993801388938794810525151174707106416118014621627664375733976743410497253666847779994701420621566932444141243049077670615911397951922802421118357161015702929977394694728570851849650103877502619135630897773905720957886010535735664455346568644971213789303459080111822995664327708195675677655900572258194774847529872250081957017773141930247831559 + 12761684814424477999650231379320696849848899424875785645611149407600958959326763452882688450844977709506724200401626038355292987820962246553070890672161388642945587085064421027502611577540233660503667769821487093454369616780417561772234168070998656455778367903831683755651942628850336413556279354260793243041307406803661624421739397810508498228160951642979101363315633123322003792511544569644330143185679732726769377103537729188258288635062830088342420413012461458271780179517329862143267579582798116511510461432701438673161224646144569522288456983451602576318546421883653740494563125586422135987051671647634336080554 - 13224898494794954276958283716974052621137192986753050892524006980443488233548819250128876292779889940428090117221702568598196215576694249212036718598173960596248872371096795522515669628821067478166512252931841347783130967500728132020025573569622709335951507994048075799677495312600853727481863578594123979694549442237417867818781685191876917265030004428790008266412073821931813369997134670961125194347388765754323204836486538034855065020790261459849344241503942691612947819833634845936566925815253305775137729617962319188335555463941766071674775517187290389463450803835764373570162191034721065782916125145843868488064 + 20034318141554713465977700820374942409482991293165987753318248920381512570072995229144225944381158919452593841417523284260252769395810417845448355114854250134262949348479921776355807508154835532246869746329896268798176551929467642172731398280664765848663412386127715669341409422683231445071978730710112337525876887354473309154141292261616052415561697532354686090644595610733694940591229279650040304294911566258832313797850815605486668495407513980481556178135702136870814921383188555591869435449726443880721497280744760989964953147777066155700939253323959292234142478041358207061585716724657922603936295430316156386766 - 15361380181817939317657726026330013313421132612463290785794175338362770127134245950724711850849432046482609385189067523013086012912547075852167617095940675764203159502210944914153328274682736829176277992596840722105986196769141671068330164380936707338735481160798628607323313855353727724347861791904602850181031395835768123570195477905493381804679775725820312913464455359381457775659395188688931439891393012710324210899838395604453212403395524255401525728868305935969335275649966471381661549158622270167625065947510443734433748094036432215248155546293440938942463207675218563273205336636238082857717768313177905614824 + 26319589230816702615364533416659040134358486919164422721179932589319264098387004459761308476945688616101213470198592238038588355353270940469302899885918427681833722216713745426380785036398849448360888230598953064329677739766899834757507376320331980116897620177715605035651070114997308351380619735545273118433922731003979841886843847863741221720596716352629481968226267421784624349928978913460806302481301017595584672016022020737363975645490100507375612538480756035891784984813987316522844850438961141558905701194701646375708121590515955510654734864118051253317083187958840460728302216861515768089281241422783132463564 - 1047690518606352119190305865569964074465392268332365513794259714735231478278382598989757073480611839934020891435810366472484713010159422941753427137643199241699363387371686007385240656664798159681199571635313051312334499187207307950181277675171851052925645633252520527954940797994158770080308577064463257243962027805873532204989759732230703968473619350258059254979932211181086295908221478766031882445984831437726285087488859738398114204057438580076215358232626992583894576102631255923948181636246023180834021090849511254889030214258557130813289741899677039737346923504611175647877159991229840466645058280267169880821 + 24159539163779136603908404920688559453207934301936722219737757091737844588652734170652903895503017824266273501347713277137959898817831951220507845181742128468826779933722614466450650574817305433145434134746820167265106463884939066871242932986146846829256345919445285744845595616878734794378901448758049563735137442336140201497862597409561702388243723551522295320342514211101863065860673885056402882085523115978080175133499232241453683144445956199539480249020745651636345197198192164576007244457763105083767666157749259660428232415302416239887843273216715193840139833830550180921313721071817414994787576500551590974820 - 2157460930892840670849477343205600043001075920261526410402627498756442782382628399781226495438695284289537445580870373451908760214014642280249414494698160625190983008087400894368434463436968091850446587208178247038864569215187688952630782716609533371180868601076398067372292883310363832124257380080110417184158710775458547016577410666035646653639225596252977760780446264205664052753819553598980382928602326429901871110743199794737756340940895033463322871986169240960028587948129853366876023764534469464739903436374380926748987702504606726589398650890683283457525800814870252295529161285895902791178456030813272764719 + 8513539901382385711312347084229302444718573989628485970693624054960946441799915593382788242395438240903464461950737535801924608552428002624103206841303708913341762803961366469524006588999912407668625019765194695908270839353512319061989754934194485086525274784844735718958913522857546330392151484832317172635641244935097384809739715465906928253629798972488168692456401697887655510517128263208173015300224641847177928899622168123664357003490469540719776875188002518216765691443165234039038719639957709361281505833799294921297499384509702069406012306074353066693905324601382617804771659988547332306142519243155042830321 - 17385067695621393712773073478307788544387621555985028122060963969257380563943326548150388132528356110211921243276069409631867305206704573053320628714568062778224835293649052722151278211128424343087060899886733625940351328809799633245631540027934009313772642405347117485304547567987512779963468340924897873199457949870926436384447643981949030589964162513048786191553636225778110716859720982233546708021492788363769670422089801755246580876497287704353871323093006346037071635064064656471026167620828379310882966948099750306280332048831804216269208942352222704036869490088254471688865072186197926933532164801930907957136 + 18788782280901268714600079780722541627600742178198682874121073744824621959549085221187509396038952314499567208068301138986009655247277789866625668805424444392795049707510969647775981961456082246282773406701510142744363002986034805846277315960810638396316563867780006426475920247063868966989043283035395868936664906745096825522241081962617625732341758557985975452823875470596214365189190213603986370452001111829257134821187732596695086214346771601756656261657110963522212036572340952688569944468566144091592432621246483046641784552264921835895212650821092093542959696260655116107748946741322684514031961462490099049624 - 7240771227178195017404268320554038771776389530081332528406023459515160896260337450829245213222140091919132786202506007850129844234948975293355069259949472452562872262074222436271584657834053076634117966901152088413069513449237902528699929722085430905368254626478595616710292078083165783895724854723174085436324575917981019600769021299492452841513162626663815122773596683937615339339934964400738351621425180242557020377936539021481179690915084630918515282493902066134563929238598211913446410410737960746962100746867024926229665811964065188468980936975063040591211219168454891859704426855255101200942725803428017724959 + 27587522502816800477372551448242760332720893057968286297593247932580026185853356656674066029919725029726626038790460422309355565484267928576971480717950393607712084036426578442176429932705621100000688582872236853990373260967886749458576099214870046095382502478448733421894022886068863667043287890368344804099143018184718596887689264084303706656822436822962664870956767778419604064125867737129627455226610111168128390786035019192964472607343150989927473990453009208712866649353579371362586232166771826446047431157756452130614676337157810745288984426087817899950743039208929977096948083792903637586142453279018287340803 - 13596442979497196983647918119792417883305421088322198377982710647350817366927462771739175349896738902856667138874757899086077926001847087315666431481280873098780773090468734851106858648359981798105259068685344434833478997946917637156368043278138094565519901944273658551114812118848624571277878598439302853205503321286682016292903937954775374632829553060634678404846128291754459492352725922806166002624437726805347409019948963055379233677876075609916979719590834166742730427987270018666054278515069662954261183778145890685945350130802943898888478580643387073384626231434571654622600342079517314983684663382063768410826 + 16623956213314609359015398781032533005161170282206735222654736980467429317301209001531082132130726765534604266667390020635699059899448141859245878522029954089605142198951596046342489483976599691288155244868609485747802771842508533846520034299916977615038465626635076933586680769523225430916010643870970338983357130109715651947897380961295027094498906764045650263354233887972061028224246844513897873270298939093071476677403049996150376855072490557618153404575326609110881092037310909033317103188651045807661144717695192708233784154871040040871934985962158069696873716702446251923060813145490215872619586993826336730237 - 1464879845561061349430755680536479288411305549003218326858496618460112932431859093347144440966514455698534094301045228297995960691675873291639554372567802307030425069721361659937082451921553519272625785031201251724740131205307414969280929832229278048504269164760229428586433470608066160373282824574928100689982843028788201492147733883771213023120445883223760883510963859625851264468846056752658310661937801258088859408814125479553410536790898801465105044204052109206675301793951776800731021156050674779938176701999858955020076869953486677670052819927822319667386140725512780516797948407406768734875195152805753023464 + 27949070838778900275415734443594673650394725531209499351436183846010308577645547212374293732853498938944401568401025689797805980378815742143975317796591475058446220883603380684820381799927138219044217743443829816620993820499038478800476418773896623591051703249039957888644468663357238852798857280503317329808303207367906315696463083530014156695748794766993633974299939247398480092949737592006778192862680848806542690286083696110111126002454402032698943020167884747762923903425876072628144452411072933946432431580665229988974473267683199022529876225951880870975474294011026284809888195743714146155578396278439987926435 - 3101091402539962001825578269853278128753060342991851785738865892552313636227632577795999691728019233510893296857361299381817921512243179005295864430396969640658977029693115933004827617047438336743461177299608701156001568108504035084382172348103404369171154665984696048174189116693179083564363385022917731527910995612361297676162924808978599838387550086773391646970609183779193785110436759310203521119508727893049524581273436895116011851969838094354547863770177638470432238013532956428578838921754521891110655783846258287326357759127917758899750834001056010538726852586246035095450977727302537968312763252528574294840 + 26713944844895766402335205020459661574403421067218957611744858532995676385011650287809562381562841699359467881612461136863927432312670467552283532179746217327843284759299572106217732437566182005570153873943432754373871098149715298179727301708244561822534221169321743195415689185399207421738975009072317983832641965190697570747955454660385490904572245143266211971266123310675218020240582473198380905110211383313384436117181003570921761745622787739574938796389464416269923265325432369678159661166374190787886140332255455652839440333461639975046243762871339515087931281927603643827951774028033475150610634082335740814979 - 4560206597311207351764415917044189261646696853874489161901231794628250099181473033093816890093641219749707846366679347449534750129658500411885843448689931991148988541031753202085385742811720641624730589731850351446227673005727240887665052148489798226992781710307094897919674986809209423614189353180976939049701469406762186035234482220575744863526563625464500068404839025483747427941105947242851394582491168492003843090953328003678691607113149033875737174430596615000048114334525557269232093445557965941085900393398924001949659425888747962204649251570760723576516390128141000328168604810751414898622493056096930735007 + 11416219376123735029053249676591790657517913224628474765159759965606389534228193787165181611038300892453513424205502004960862288143065421323031190189973273773583380990644855749047123840454043263789768805085624456749762439220233878198338716902103330870424816956274924182994830008730585987764127360429728672559266817938609709040195843895924437798618487970004040324139444984829807033800016341267847500847460765048668781437153749165441513620699341802812738643302975376361495567736038831387127667161460371213581942406927459644843710208357878878719136458249715971546298303769491369204245260453092348819447614070475281245399 - 15043680155783857694801832440911745359451869019940994124406112727233942884116440019320619410591943567595358527685674901675637055432362882252917850785891315888845411466741144559163129221485768377526669873614569929381685264425826576982352424240700823075699790405744824251803251667337902860196105441994802373726384853112194022105073994791615181797299578677642352559919681128290597216150538409146900851285259530480126775279206334034964466396941165141004809136428962360537734334496224602311428715629278658646110109500483124683156301298079650537277254009156261304239023326286133214444026240203696638928052377412478477771269 + 27189166418228647147192088498101189201440103875405556581431956384317907348539140974546828953553810134884116783409404878074071544404257308119006466318562569610298074306352759083085795269621481891873279111168448066778900525414896326872450103822473345806491584006586756895128825749650569607100115191331660681738760188752527716693490925456953842230026221404392837830980206849464251173899398736889201354710507551362623613391121054558194038819172095823506532658381370951357510686529110218339558854541106858691261277651035604846739623135312225922466733976457737221390010029662190025287930844857410227260577887937759494456641 - 3314979764652329908591048752212087998951031756648865582828714728622023616641276419079906833381292784344054002547027457482362828064708338667874497282478204624716489669997850467235731921105177040126791966252717154460854598810484703455310317124761824732985933847297666331392400404853973191926649286387064020449431022863630746096766659020701240279036090127708269403661001060267779548853220113921770889544226439923162887056224088636144843825683196801542205646129311262512902166534631679870758918822052778687289324381421594795126230221793496769267812888487149781167416729377430746569458683453334307409399509345663273790266 + 5903982095813393381519814257600609861920193357002726061860423616728111276675651936978802214947157289762412040800387662708167981122826648168289361338522358266406594155392912883776123933888593157774250643781805137338060511304722192475635980904973545135165846411120046729137631798942127518651719640101074740461630591755048006470657201616768957438640634587803495261429256092610869236960526747332245211673106590449586131581130735510078547925598310861966871801604698828900163889879347651168387322008040180743851648071929058519658667992654013304519454796558069120174081169235577771146755636536286358944528991081160734114761 - 10544133257273588032340826281486092461161807950384168458987804386634662274808425203707628582608805918363938796200556529214884075860082337430107342452531105258007983404700192384192120908503301886549884881119034743974722016581735820862116238749170105724569433474117320566009164976976592481463746249436161788814517389228490200264123991513883162708977819653845797710531126818797786505199010269225308545008923479361709381543478127529449001083138947260644782189486913477058250963505544030513612446547387206852702419198476449758631501662352062691480449941615239535362263683101105563149613643792309763365981131954328777011407 + 6635443645997896273997249515391400357736723388847778391404210428622101780101873198470251794227159291413342796121030411441086748116709468020269434690846483301801228912717326232637852103272644207975226496788433518509736830352317708191060343424835821065294472106420764402899523331378560335023873105016234593478504087904878767223363890788838263054486033210645333537338576693498584123416317044949767810399279131750196932164194607106499661697729191835498085165606379830928689255556076069008434692321957088227229140692095921710821175518723031327010398758690895098981212809347320428639003391299090018768272479954847902537666 - 7512154648227261297584066362038512650327915436520328083586319491052614443566855702416604777894348003517596974632440963884570140932662837268919510098352337477996057405840692276281813679847192622329789825077190716591056875883956463561190862622828874474273411115457936002188614738472971991666473004511216217631965838739420133001440560043135668992748488077947904241683711387600269304810229380345856448140818197872809383016094094360807946070092556192409760700097705868161278628578276247474460651339398690467740059962525292217674739808329606577830651576701416411434618912598350770963063830826726526006087677025489547477414 + 6662298360644252479432602873217196574966204907892400814795714385268235683926389735151387005071501309894208123668638668136627636493907651546061419992461769684379097049565313097171370665988207539292877476033027983599361594496907309062299708985160459865012567362128006490681277558284506197922851851208729590812859306553839407736528696403631355639036745802162708671720104865788691565525525243709043248109671314192947626799882233087030843158021029893169005816627734855638714094154848226469868037132400333305993857364340119505945263874451443654590810348730350115704497357398267889907380038812415735434379667334920798816250 - 565343070190289230383986576382175763722787203750483981394667971216464378024426812281903567622942073095448876698563035028229799237074717724753350202425500032119077221569926770939774456557558695425167187174829982534465164610536231447258235007826198404493243319114129252205234246918851715036819499344339990139476656454896034598283294357776670253643049087114066052115368021430900330845228515164088357211113282416053184981538536440256750323156616600251012618083738097324191505397458811091025178347040028566710340124261667894492169909219339227648448024546675824390374081991504339027620568415022591076810997802573357875187 + 18064215707490428950861622943800043668287905644342254416023340634136413409533284359653096705726502945305597389160486878435732243515273173434531162748700661915691679916776640179951923980716687006450583670080948886542899300855024095950204616831524017331480257563437907632013505409860148873506894500111734992507578836575938730683076004347258457016930662768118870076411643866795189356270235140727600222101685593057172852718039213018073186615149580199173746018279027994028213126177417932411808409113352380732235343813830230280693644576460918790593029336213681533664228749203254430613183447968161718394259556072572726799416 - 15538625877061566229419094294566557722126546150930082169361592312215013254456762236225140854374238184605159440043453599805674651546509084057408197397206037784385826522975220533933552940287741565313460551639331627799420915440634263995977391962529281092218776819382653097012908927387968190443550807658739915536601799561180412154852527963109502672168348127072019544259509725748960529658383845982823533976326432750588250574655350091505861500540680318090547764219059611226241123454023425317635516544034192958491246785776297758066302537500259614524943898332248364863626081313723324604506706793238299821499118152280874013172 + 26304139048633555041408256866509111648434164488502683511227186009225023403466895407159677229848749078419027882427339517299223729043916508272385013949373871099905979660756757282795823760540214408403038625752994450499009098554847698001512560640683942869637157321990533547454761966146449877242106125202882800056704593580832293908539617754424939828445720347721078399739309533974661122855508154907831906254736739086248161980229037542465928110566928246983152505754850985410087189039848061002793295691561955561111136361871506776985611500217902945006834176775149100563949454680438017756230088378993882373448110489402070691429 - 11926778071825226800143108603129440277480025855089414814219803976074376389160461843084772931583745841685141683077922602917730532856268241260923727690055215677232845400469453078896686649410278883711988668662440887811436719202079787775424796044004141710925306261914566958833045214639228895486316734706879235652284924609855216764558021356437742230615111144018851796699137977552144108304780597728637899779427842799831726914302475947828668715725771471261120245903995931967860948264286296151989039376331717667404417955082035683743846194335839980645334327623110774293901537995514364773835163461636813423601426415518392675011 + 22628434991611712546892713560826854175888060078450039830434384257329634290601299618711101088980105337148874110837403771011306113195259494348929594723822371839438052173652920423803287565115062703574696208795106948970293291412903378740203677382200525297615650196381780661408625441020831971664933395414710302634260838212875006209715911776457210237438473311767570156577869752806532929146484851401755831911590576128583095318151157189461835416442106710275425197017973962709258283148576119249050930211027927268412139951918496094394498723064494616984740403722015397097452837684237037214214789501981599597403195362776456010685 - 267209226285316244655198491908286978319095290912697514832169175524146318367510367757072385372289295388990858861362051072620798256343781325286874383288675923071568591198131859307031122981009740573452788576211514300651175649060111435328837513404010946753265769969084748719669229310588269284376620497891401356463392947106574875633095411855584494578452264582253754775623512684841204629475960912640759590838881471248400366245091151555051300987564115713750717619606693317459191043100741381413365466601383913262819253001096487223836569534542812148723229362087735809492360082781286163744588503759684371822172370854314353409 + 8562866774503008406079399736156876976977580211818802302810700824057112784606899191585316769244296132718074125615303996421326469228687735523206421265205983874745296249146368579393030713352254261616310577234058565085504550563346240170780569877545463151713440723176904050898959737413043545463440349220291282803385949144578610608742503425442069318940819510857037539618845635873081430191331878455756458653058937480583428272504617812162000280437296074696820423037798589524615652862505004140727527313746650362853788223052852702797336685795700882268495911782621879562927600693927368440176793314152219172769707112952730359484 - 6425187604582928677517419320860520655913242256356306079828301601417832436762571429318861001730357394092985447121241149056627544136068825552555231198754781356806461968306366700839240652980678548937594315662053475719179201409894529363292166377432741374664059694448684583222084028323383399583164040578576166075565045236709690623296994939093308597946028793959332365990636445133682634682077038300006097452753866590822875638728991570919428098960414943463278231683350820773860108474085944173936401315156105448035438495670254417867953284182726063658464649435006988280317070836564688738045028216511072094684740564533782164216 + 7936434439442192514671486227109569794190367148462855791640378448430295411836735364533689212724740137905251817986084777616876078569165213405171721578346695608614142127794093117596653989521204403195526378735287400562039424531461942660825984258268692850689341201043567672360449154399656914435643691797033004472148251128034843064323344906512109653809107039457905135625244487975163677285874429992519457650296197985137597477945750133246440804969238432505082943420928550708826596798957689465162988951857404670541563600179457098040725677922342808854078122466792506877465399409346718349411115792267855323973176847326339503500 - 12537102309625795927511579130263013429629323280105297823491298688030810003878360652183143129790006068128799552674459070528315890645907442431465190298463274614381269085402213597585644453440805247467318086980431259352876428518491196540244245259323863019719291485759005149873566370341064011576266188417977137787364048972798332400138477778199727950363039258005244560980531210775314690804809548606456588052459115885749484553062039786318943198530482976741999475555068364958339978050259704453982659254119431644054610067019097655765529676460789113356214038332046164700717997781177020242048592300951623987356699598699324165298 + 20339065721149970789966576240489804656966397871897294388124904038936395315130421956675679809530993908996309368476634461021651680031977692980147296736218158136558248733523676999959212774689435008940978143194260439746276435827597802384679423207311512260205106495629833702765287821714175088402264489832157598163744494334160721367650851585695335505521682591086054179755653716893202851099238268785482749546163882638094004851183077235851275489027939888738904193727302897005397843071176955749152194811216748445185538867888931773432601567703271829562196269697640095387754244814512929991222094084696077816810311665018933221225 - 14964545736251405640413868942208208624405889553457574979298750274203718076161303874982032066314307634982176405765129416097410783282328138613531537233620497853759451615388801545166380953919533451355469468745554672467438272349358787050152228919542303785262292261394833747073450787952750164530511661991569118855000286880175204212367192150212344144210446245098573903173750198946806576917768848292517860857435961473729520148800434787386641277259632864138112554503326918827548137798738841410188436612800274224168916367750474080167779334591013186621115777900399572738676810173539573974047968391949680008622619189382775814768 + 26336169965421568972802865989994415125641216673601012916531115264133502641907499828432156051249749166670092640178142034749331943205523209585656535871992305300554747296860036551874695395209324860666409080689524617307433995537508467581511886121616700756720308058999383432031507821472206371945546184623742009356046802112774902240426141848981402327004900327158646361087211933441161176771628821211746939885434606448164069740669554484309798439866010408266312841038596633478020106786346362691172003818839736806886371599953868886408028610183007087711601424466769997499942116896975570461786027967966081779157644294670397656346 - 5952897093804396485982462059911674285753546456178917144326527810134247467937055468573681016385419899093300829833169942996043736838930609529147866159848834000950045770228855340294429164674450806658393250848576778709795571252088289506156912251234594046099732638666905978955604970208544595837887312414529083648301350856781075755153075617465554604954235389286187125473663177275328040597746135203656571654472847311732647885648727646805846663898275754425300903857883628513355519540223798282668420058956874776287896546982187886747928427105540978682275080873681884910060854577004434419121989897223374975221371275619229299313 + 22377310821590640666587525344649683831504538582603116320198903695151458448033827161938767983855756460946988120680247896904839287678080891100031986863220912095484030072263042923791924591185764032240986488770152346239204008060215733752810548766484767983506454645283020806321380912805473494268297839220923628844030123893869671486242974138466119985650700891033985805837093433906460002938679771873401921562612360899714384052638399821665463055421816306985223942868338841758230090165049122955871062508125788330734369436924331350769312168733790942841454128096551760805548599992038873372494133589708140058150808019336252304682 - 4164397420921124121829516305826190955357936287136601762567025155036773306117051072418746887619176958619402417579910614569679550092127813273468339127557725124163066865203183077677608155671533210180653427797387823496395692015009610090060179229865452770501868842909931555738438890870699625892391825266608322055498050755242542814157941460838572959423881355368043913234205510230013015973613417644987787143160905658310944941489822852200289132801034434335297378756038095362171847882790587354410426876248783007767703874203324923260544467935599185070916008047526661487836583113412375107866248136420973328489175234264121133109 + 10438360624686383938437723076377661125780533659022306479922421721189359022850212902564495412915289502641978605014186596451823930145797319341763047308819825797899055164578750030018522822080495534886893111656829755444767962353278458193325853888357133025288625931029940736903506219899504741792175861793860618707062052831017788003387378118704608438370994058915981050249354253371545531205232416579488294108323178279327631841352159116400750976626841049067938748264283272361484337971752929553751420052066665727643187556813352077184098235919055639834911148506802654775430105146135048347669757006980878553840544032302667904840 - 7225527491550036328801047254927943944667619649679051331130633199239210307812791515530583775296046297365827139933318066296919977065529502933105039170315670962939691677893629475808151207338482084040638438471429656184829355668836953257918955080499372933010480727930258192473508875510153522713976349438656482285693435492716334225853241119129476988129272792264755174168428492423610965623027280308403778173487459210188839099395762992841918449984359166784737068599032634439191553411380989361620014883070524733702447074422832815492729205068750339867746130794119311394679394214390874029333696082835720107617338603550319158072 + 22790121101516056478364943061931518425166801233333635139978438857673385303305591688292286331648942175847472995437107919384992463200589131830829010443971203836132520703037507810940357258272908274169458397216520095559498717600474772983442858889615736675723004543067545329343276374085123977889098848333846640791102097430282521720461436058371116860024613597842012391916409620398650084559592342075713395614706154019920852063874271961182730121330125023217137530041856855126901491155379553567971375446600788979940356596205002110022820814803894533848389232499088866835937518227067035691953288017140401513810796656281988979639 - 11295104588581449985247715784592639649325946494318700727599518422470151302100757359585851202685588034796955101584416913316546940775488569818091414312811644318873879003515439553441125109686780047414125863006674195563614730499667856210265021276762156250831000715725852527535331373167994398991524563134637513829976794413448061623099151959057518341552762406693274045175577911781042416331663021372846945292780010620652922736052601976384440473709480695705750235818367253938917737882598764131186798333373754487891290799758453259907528868355319675637525651808419219834564007181111600554730828640336672757247516222741955099576 + 20263856242679567465222346185826434720609712111499694822236831341564419010358530954984733786390486658471991197976981251277738346589823712671142893561985994799077089113637394453399806832168076508206554650982975991037565222491717022989086706207179722874220416721758740200978792837648677800094149215847384521780273821202006173753632540631127538994513655989089869923962297020070788976495717531440905873346213899818824762102017127048863674305837852508754697607490270968550015143516305513675853930277985809463554928617663185960803290983874726715532302794682583847121697938370922591657526463213779189544236282195603698255725 - 1877858243030307210190547002581910662920178700264088541632881229972538147500228483004440273958267759564721605433834882052480268911801899637351853419918156187604952980873557620977270370615762829939813563749596381839675036367005391128406435029362648491674934510865574101324614631947683750447569703112073324821820770751426770280737644649815982984761423917583236703008102150368735906948376895695858259156096876927875544697543904618450848030686736859386856759377191908165159515800889842630253564278163942260412083692740782694458668578800868035692982649949149364760288955769933505632481293556689105618610292669886220770263 + 23968647723080888259436431915524580218504296230974124707731385243190844523690494109246685667493748927892148267859805998176497236454112763558043067424465929623091354234624880288608270188913218671749225996794294747467995448831341318147601068378057966599471650184505275754407488622423876803693391531675029913080239823767966087501495608365760194861064648374003008693937970783513429280859131547122841476271273082027448376738740571830738131663141314626633529503079524679630889941063192570448456811468607503774977686431255849469555403620448633651707244767840180254883591269032506533561472528080744356694956781042865209290958 - 15135952991651865620397834102146461409428443760230259131065270841137008776400068011691773701677030953695380156160822405502097140836192680275287057644180309564976009921929563398072805215458559869634783509440436818772173309678055899263911935058290653476354226274379600542436754572915857576336094844854207484607986899392826491786889907602972961173128216391445426321295050687535183480689553932250202406104923861853605971017542029764987422798722520079632452622924665749963327206067794038122553737484699100003311841299436771529572224328601527790920878365199778284016662525796999235067055223306067433855169563374241602771350 + 29092606565725964439787307155663936720292801330894084592363835363689984299461865184402220827040386350452346575426276946403243463931678666439147234104768414976717494263763797922874294476602239916890486418399892266873444488662998402388903840953433849455128186431022359560780002218957560363263543618327780285994789984152409969210964372500345148623516353561419665327497639162581595352121877012093033818668500433621095226539417342314691565803877760666286323526770527905943282625883997673892656520432133697581563091474497144558163880788722552680000583208816864009551254109755692655783243144684786189923185397455810592405651 - 13422436343437228746314024758321316408998512940108982879700315321960533560193755308071032462795704774526314596630902018340050004082796188116176329240952878070264868391061530663503377115196598847003962855038833258884611281411174608304974966787635876229742842857110512962876941939732627156600779727196844895951039558885295238964863065678226436898575216989258884576072910603691385591077020813234001220172508570815103834331717556564985128282677163757567063007164352207123117272441337507674323862051278222170929571919239602608308696822028088939278527058244267784362225700350319143652060682361057274090939925862418708918131 + 26913736712407389286331557821693052336130829528011988950040542466735466296602807459439692918218174361369314793265029636866050188551021503109174190319607715066616870950848353930090587665494198799400730008094727665430865717519382608732155378202121973503120890011670342345725548306189922094333181758221255344246309610132845067037016337592888783873045411473005397254273519991878402495147661077369659042598045121615119864092465098772519844687624181854036856343833879030310835094847999974469540951272377431535638617491387102375492187927222043483459101452262969449486066156117478606080617756070253308100670943177462276341395 - 17697870789502686753413041459926394181425184030608205391812616650403157371908376833125063814831615193612466521685544189945120544490232760135518737028460429110447817920488590466953553463583099716933641376849401890200540593036308356727090811266285252553106491549023241576614378285837676702662045884575674939122805283300606195397216729726390940566623230417447322708734269159701168963331191030315339579647917025801268493862159862957696551737006880847421972142303504223664456942388128256089385433436024773398880494576856260153344389905357130391924768052897129970039052154907046118033122076856737847007584566167839047018081 + 15335110231035767316331465261583532994121219223346177034390944317567282975739878104376892164053123169339213301617676142798713996240073198498859660870119517207560589790759105462751686526498816639298909199892210408487291212560142219501228133414708766803793639066012637814026279538331392387096310565164489680408680253264561258457852117948954289397324931631961438952161488333964253794333291784230332427662733868808400681302505755584002279647443292832777287208410885373320068039622710374869226907875166788236676463402429018686857435095408379168359405698929383762628138509370928750401587887249654190251293595582253868371013 - 4048433387086929179584863254363920880963430126478089202712866207582967448968907479631197760628952644968499303035539431833201984973457788702552810790090770960921044892225207836410048477550429823082422857065208760457560520817217989040673363071881112001386164507129790641997577476683777883078751838933776307218863257805268180139465192774371057756049324839147042243289330801010532144143517412347793863618727541299456319366094486449189061398047757123213639359812012889575394321617713933508778923559290364944726944528777764528146837365163445636864234618668995899092654751744227856185647827283783743965704481778279988296706 + 25039321285779429353495150258810188557222188273834783925792118151824506107852985450006138607221868225422985295373415637883615878638913362644496145277874354797727889247877013914618424690371743165991174406542765707502142924486462758776790938091517605349167716515290806612149045321790844132216435178553933094772537727579739202718996919307239337324832815085999862001630381408084060862448201492578612492160485084796326339904404060698576167035528180342554503913976742608475330273749209562895697975026298366902606203930310451941026840378800176609991679866356699342486629141164198417140418402509727928789508631751929886331409 - 9737231816890096772993904358465254568578276159420710392165799687669368788185545455907840558904783722242700901559851559063812321980377552337683861948509796924635848895540615070668802763829776065264420733351787535034617421879473617235678731286935506234951760100801864321090667591164072073812325534970344972205501101855863143024874323322812777241086706920669368808624118124053229585017132155657593706205832960384166403248627632784413330857876957226655634447715047101620381900413141251983018786287257418248021598465048111222428335691562619438596154725565614737214344780874850943149896792326364638248689594711523668368484 + 3727276716614548462940637745812733649376332580860583661490520722527571461663202055875225285777294311860747916964154949582027486782864201746530404342779685894412302959808183606737971022073802838981063135230860706791207373824234596930915930849129719314920025513463255050154551767392633639509405409629328480910839306914991831585409245150380006359353979360897103162328179819314672834138347785649909098891016115161065221018414865256801009518961683067070525192456586135008247297918650078064592846688750654951765230028873095438062907453094290770755583226211991435722536574838590962407378922147920986926418543654868385398040 - 8487753133624838945067747078237348059277396495694970733418862245567700020991097879273886631009771387822782191361264728490092625014066535005682151775388223675453784802108903010736260098029100115412385463072188676156700834741185394894743826716811657653445992454636715350151107004046596746869476226735820897923156029892261376062549260823679773616145516722887570479128131222346302749388796681642155938304416396688213079413942479513723477218069660708781252348828932845838373622298905282303277199713961111323186706923025135684607463280198234299417220126209124297497920181834594493015886006834505167964655808996289023574793 + 18329110456966419942307437432454140032913409276866631816421412280053122234627656564555022578590208633343672238697369866869372994376506381644437391021803696220372597204280004882375463081469747382678238751677600341330983215247706935092042459679097463614439374892239683480698492084590029580636397964929159784404413979266013156298039583548228389444344424408360871566075458060539796405050517894878127837061319105208737816154136341970780409955708274697149549710347500304823763450778007010638211978496871569454989029323482549350505663147628396050728562675793802473431071550919802631648688251738474146707082951082345643383526 - 2373958459363306290249146581646916097382621372710435369867191823365041636320093282439291127133471657587082153588824165427347727643089011559224132649390263110899137999452555705727451437055884806699262132589050805594188588357778146524726102832785744023519958859518796459406851423602668785255856921424455521619405166633791642934695213673296910658753115689821334108047676928020090123105436469452425656390426386638949763414767490710679470569162328554187568227021904015320008828579580739740624499191599033916106716981850768690536571090506967659272047287909580297416209632157520796063701185712265089471660572680510570391105 + 20182685219021006557188217074142067250544446614469110617301272785562171463970772030587414404173137569827435656447307663583282016903915015399999141173049508210701050318530730815522034639080986702247510940593392488299692176416049835611623271184933558534265613592501456931187805471786275733080089405054068262254333636319305359687338306213055329600355179264271284713896612775495253559247635417163039010085174065041714956041396060986141399800849741192321863755488541780650541044079701781339120573856199142108291109431563806766336317743991966339120017284606601667187080129496236117193309367363650929281044878419681266687698 - 4794839008287178438151538860620299970157265548134698709679834142523248454875273850874090212138673069288297248841319791932422686880992640990999448783433025997094720585416929544584440855078502737072565943496058439852645550485572084333813677237682454609744866694641538048736286930997380784089704021950946675433026065515112350027160128390411959355178643264978815891491229907873987299475619629945432131508113003938885853578829599180766067079527424310774053600548183756338418482641273138656743425262728106016328129774207476509128893375000429025821900891768527422400990780847451934698805175339886017962943099073782857485134 + 9513974096371054741898580865643306826882668828173549097627371944633625461788963219456006170445214173853500593308632461311830327618639508413188655021002570038152749545563995802674947278525636548260678038730510633454764461898140673541927627107919907959029974695330628555018819787850071328227555647924096957709700606984276331936834654470197350229161577506830894211307226853092153089186964712359907329856827346091443711163170971079933151058614002538680917769437892571772457323642099547085512982809963443255951031171311252359098352473079550996880506591974491225314927967652109629632931530046755391530393445536994632472234 - 737296339050921813258528422254384723374196161118736385186425386857134228050322094161384231116928147592407144529947575648617431829540394487692219337511936572724705669092202465175957186074397084363522538420032153918067985872113803595262647960126502983284688876705490463720355869037652088425094051870219348800667706663609300439649026618222142521540593768058242740799221812531089576539977090308235383409006990763642438174190125947335660135650756046683840761304786859183337519584567638845685164273086560726698046668743655334307953455466943883161268518920697830368437394714466839658390866870464829175997460777071560696775 + 20911806544972679008771169257318047780399722458761448114600368376693610656765864966911858411488089139954387211909753555723110976260403499563912788828608583197612753567531047223138408739789126363875162769892125913250263468328710352561921276165804563231044897354154970968311698953011245344440730245870283051942030070955836391839505899209267328400408998742623485655071236329902449100444130105394590300934689608593822258931000109005934921197782376067052315994716400245187360137895771478663630607321763799074145881828883650833033138227569662891564250201354088955740247388483746602767216189741148393472188941996937440203892 - 15431256471955110200576144506186773135888085799999435474094644774813788933074152241582863515986953971269080557777575783480202105800727140821613604325293159713263181603950575690034341538771913777768932031159170297272835705056814390193589653511957337318810210541388718437015137887964393837098120154120569177410346865448736518524158309104398758747854204475333077718320076057498275125722664624350583905817601463072453598798418643304929132623915814314025673716413280591691743341056939152406195141689224569116267952171217004914240444544007180935059606937372171284797708240202605343740787959278109167988897880869509484145127 + 23003724110280882744235681976819195057801824259820246822062492329263073614678415600198603124158331276879431974255075160906038495124320793719240436768617168425898614825900626856219510662311424169072708925766403721152167741818760012464900599765304763810520533656873865852642593916353829378635581465432846714466592947355877757778838419469827443128109731416817653075867045238858380138544119787624444793739008920280811687197395703684716720060912535212012702528904564640029649398546237267452517551060807074588692306852941131581902184584678181409611657140487892300846578991927318573736676830628285497953905814567884355724946 - 7319067623078981361451003226938702852218939123210566078073510743067401290681224830775186219313511748518697846141776059770097332226635135527354592967680495163500546530455563382650306785876253261340273242084647851108640021724636885235685167077784141490025614257340771845720059048398873298238918809046176126064882720167786721690301372954580991979311727333670023861419866548292984826550921853299552529360078634977250178569284846236558963534345609769554535738292092509330091073510152898582873678948389738795117510064788185835271899632093454940399688196596074571661083052982673334822742309991183244597535066785912937173010 + 20175704701443891999128514699392707887664981199463712498913705072329686763157387656927996521487780235465746153237387815904395454100834955982589961114611676754132809953776571765672213400008417079284529988704361162757550649820688460742273108093611965698502543433502288855059423008717457653133176804260843763192575496344624462439288913279464653543889206527855900128927871601111413362570455832966007300667618276188521784921701172342257009234463806279810264223200747408725250000242938198728656608304606433608805575837440251256162801944719159628518652225348203675756047710978031551778901424920039804960024699203125922804320 - 17821338365438200967562534818681520542215417125036003721036165296237196436626395976361588265515035339526783038753301231369603582336138914993571674790120158416932869616084266903658523612488328585542241177391131425151562667924560499897272135288649007093615690595018456791156465677604822994261020491598718851098600231638102241083256406877979211166419263369214540958910319098258265573878373102690642750978880504417127531821064019740430027512747804101039882077714022344663443451586412018767777143184337906804542185802563520669302883518926762933206604088850760609859797605301070720211451982068539119663948761193994122958537 + 669469114464131073317599035852239998774356469543779201080878585425386513178847071105728916058419254071770957918323336532314128619884535613161388388621280853732581423021019571614055351812182146689959196476261469345485644371754292581052667868699719229353357899818182273451439049317316373748805255279094912246658773807293639610571386636417785114307411172523235304018096099544948213380260055217464130906301713530561745747145670260183816219108767514253961160136900269081716842747866209819011150236135845581939959691260167559761045558081296911707429182827065725614289847502789537226637598307594044795775898574666366979423 - 15278697746765983964190071970540630696391108806244218904321846496872684326619640393254228715453646933004269971888437908232003664387545372493068480256790402853272673368975143450640301763882458313000597985321873794136618629679970385617565361220921191025946586422829638612417418334532019348397556416596446928401666463221022134251909185618375597346868387758670988348394010159596597033587046336560141186179452226473315437206851132991976712653023581343775347097856772474097323557920009818246327096572104862021185353946694549260573444920926270943396509721536278478157776533098384534615597992069518393045102218408681676273840 + 15334544046933925890299672933002640550590529785312317841137568130519001575664132107038423404338562939535798574756653136483007676366637344371458729686851209874395539166886101642075420281826763499959185914381952627713624978113455930902603719256108339326149945215646700113039294539515488952382217001943810415836418207102902975921895766357958701034183154030332231847723047857729749655232521537546757512211139638174049976830535860585450261509978077708628816391232579600533161647838075247384604915441100674992753976358291713915155548234082892407600811766345917868108294439249716232750071801590313510200647235675469603519272 - 10131876283081223552572972660610823136255685046806902481599316907023205894799789860202982297709984305703655364346530758256486012681301651282294170902367283655739714396564907428319285134588805981625615199863607724913055316271875817016092459937025450333774094752543893029095802839801271027020657852688669017244421511612823999585891303076227234339873259005844904832400199515997617217736685689368465924244037691765584066169986005943932194876841838911790341807206587015223113676317772242159839009081596156108528626876990329429492815894509059029755210539006126261818948814543238460732665833598205068771541064864023154972422 + 14699468889624148871346508373560464092141359374152704042865714626214258996384539524694203631427837715807621420589148365584042770213821036488144667898249651317783050236614603651818339399607480234326883946036426910319290975570617290290599126562766235895854071429866178743784861420780300235670808231500218261161277335074681410193586376317275780494924459471892169155581768343011193723817854348109197405633444826145812733623233094216582679270510135436914300540531434708761604935170705919098166834468189891807239919106402910250826146540062519321097122137106491107744141493914908381799025403832508703540516089948084585329604 - 16902137344182270248564252500500825443932351471553234152248407409163974337208042739016575503765663468254491438648911653625583596728382525378564066487552909109554147797400292773277036970299019462859246065025853161392768009804665662041562038207530636261204615197159796896490608524351734100771091708257825041957131531302014367402406966485770818979376970964999907534144634308352347541445331206296064404634227346062102886198408827647680972775098694513528684188880291366827445898847598760176703695050927600286079721396844557964794918218727413103467567822310412831757720148708074384447678548177076529867819865305369071797859 + 15353240137735792962919246119086316855629488595906687495198515369115425672936958226470679221796319826198195514556093964309858990260154398506391346909693692215384385808344990987813904116868792229899667172092408532220674460270052711427944830054258305298766620275775199431824239855840105271746797782500460751538167286195110038885408484153132505522616584123557652714943157056813669475098491113639729610333060598660480324625691940386287790341593209582689212917490009963513269741928755258820290040381912882597209277991688067319418849564375341247198324428329465902351987338561613770612644549593156321412455005031598733855834 - 1509137235072113019634217549152588513030425146165526919912179068312603796160863497472176848074637375629133658114022446988851525889602880559139249289755564724659095498604825070120499517641937267430951053921819158063017758264904192568547730070902831334613796758489007657691209145121670924501183430344530940845742133702415921203049592884406622651615315406502835561559207026104779363548535143364065465162995025993407381309049866320620407605368712422116208903198149119428129518087658475091290030659888996992010541929063808208315614483997555662334224350112821525212671384502165877812310163385154819737237222365399399432235 + 11690264060665457415563715153762292521667606279332229287687020644447623390264840168277189104133485176682536151091512114291847750244117907394411120646783761370465971853151714310944111352729320974874749845290907612898144731998780383870950655381224899691522634277943192844591999978512226269991800972535500776215313450099445831632918454107153382621604320459035804243907423488875682197049230482529822261228956318586612175445819501279846984344123470564281753075685964748553044522575193507033677795453663472646490084435458808805639386047576148370810697677044078631037773987421771831764033842309894447568649279088163666513219 - 13662373327093340335771229650190213858137497960800450903222457181346734680380487015372250420986251917397753147394109012694681912716432903117498910256216715571188303112022182948795184834144795325311782456630688294533633402881836484679369920505504467311746533736922197758733955917637092269347665885580857289480698061736675871541953229755985919675025437091335628091935970822762104448653704073808812272526855828065451264240976400619954446190330891640288005781017162352014343765117174414253709345414830335329175174965116628688472233185306861860480132938503321976683312141146029078094453849302836557757494828726657132435060 + 9781786854631525491670025224637394031258199878045352394838894248015642575850710269743491900830858075289328334375816230574936669734978072557662680996888429446719310458354873931850067165164840823514070067324986951747324540665089690038396237959157920156890276172914014135760296205932866696207406903746028494107213549033504246184999529878483403763865888459903464698244475751255136989099014180749859518955176815012795521693500475662332738550543548235255332172346905272012936569934491753090799996070827908946650101848638350156558429246804816157093351172083209112908512340980584110652620339719076256354615770167247165558309 - 6881582430085964423875035326444918531854952849525248582094465334352819514145532313363065949252870522785603414134770284299728424972873131771661713999892165428280075890613722783641641484955170735458920886790852606694365356374080507035652037600924779148022313332842233217057715584291756882438672806090887156808788175132481584008231501554366672050974987079439637599645945172680423036291395824599371996479540663320569104468159100472861484132246803409930543029011108708633013828226574114763979507910074634651985050026975767094843744845377434090505374296379220600364869310293144232211327474773028440338696913173535503764674 + 29918297331657867119918340847623601076916404170930965534191339641311203568508124778996707451808452644182401386841367516747642269662404210981655812967368322709373295863151589326512989794395458870378429722579036969250202055072567918255862886924516733554647013996121178144513360132776441932282323496495301769622484075745359225531423147006107439433075021823143900256023901969563462326580552743276860563625824447034957260381494273272130843073265953195016803398938823874299852554333171977327100255920424034254297436292164220181165616338648033150128187837562827146651617753201623174803454700581151582844151699518683943354078 - 2524857533185466816723548022453168896788185476873757463126543883705281982673774379576525210665826729953839467529606283990247063574342276319219147058823506128913191284713626016423549989201343654426264305047874543113007017895241465412065616812641990293403362037380060892214102130511091837101928649844987353369111999387279785029678544505209605330296954434679431193718395336339445015163535658920026362674845870625829957146631313416961050845613707921123861307678474714091061861807242839713822593401168674756532629383291619106687008716878401420611234770768807110328107165239710216647816173798642545436302955633706837629401 + 7531131432606747392079709030638252922661046301957266758118664620444632673586698378549497955210116746445677594090150555958852380757094712352173852064190506396301385119820507859912354217758194672291788380761811041956206768514979738188298566345231061900500308620351717534210000678688596208696838762866773023029969097263242932068556596285263476451972044798105545940641224877966175917723581113577403377112049111530703697239543455610524238833736045823358301424360295974476009773831942352396903062398794536188539407930931955157309361173496560585942573899287293977106688018442359613869628819454064438707767081911219785214794 - 7190963243253097781148150347252944469484194741212562118510502844672691349844510619396261150878743881201009079277774436494136620529653925338496630006094172045833753515497269618625938352573664100492431894911576644811190595635032418647678772183775975814240173120378180694441627208885389751938055913939774535447588292071663727166657986385247324040864601742568477285467172232841026808420244161281923156440414044894016356225543215485470828334439372989321423673944313992637353301902738535493631523868586675486017406803449950291429374435910524231143473631508015296126320644695492062020003253946300536982853856759167949018359 + 1752940288068371041709149741602407997222416337422231445321970668655569956799850238920164795216560090462460725742813744132328239518510283084560582942356863504785165621024197203485447593026207680878984638168722227490715365207418207571639379046094431775185173848312728817826659989675438068964736987400098622819276304579458505991487307147291250836217467553216227817481460531058174768687159788858891761467276691878270489591325319407205302871086450979790628891456052414248878169656343888772266540423577674486453416893538623156291516024301293202907418292636098647302853117165386584137228171683446488248318011863939793548328 - 10484840341285310771476516076926614037555584802550744291773384249160908871718976179795067208941410490766994773470905415108307789071758183306640128985411697602652431973691306389371848607596539604784305004322958862479140168402069230591677594795704653130219735912975441368306794544769986731925447581633750115192614991165233476759309840707833238667326754684392762237217866410766486406098104064788493359448084505211500280864866814531436331043642941001090662805836706659395336345838682719941379477744720761544979949941374927368969807480154428372487463740638278875046966815333780563579514314215700054325209248942252213636526 + 8669443269813452570318804741888857652661862163212112719673101329411063109820323445067034502850301913280610358130845246288457485498017293734797608233292603134973754919225726541978292927166898415047211860831947854880923144082919032500191562138960677282651454418609382949104281175856272242636011229530309499034701605969768788545833489709394164492152313522357453201803187313707412944500796488252870184259330376069947201513393333244808444981217510877933589931941293192869275347090921195056380235687431425133159931083178251770840897017035247612871727578298492039453299781109107522832451856812432326947174982853813924571561 - 11398008234374123918840010257116382253077985862154971905297138988782828840379118084647916387047134485724738864600489818450483031011614409532765862939415419206755951899225989239482237245319573972616003708602190220969991610106667957070231684331224979367785625046656228693403166148379882589782931022752196845465496770437870480316354305645703433416218549955706452607930900730339866551415762548586107435594551444561350576977369486033324046627401609687850926258667858930380759334700388304645202213209384223391305732123256605765407540173751282712329241114959224111170516073422040437734829687921285456708798401024040528177900 + 27375253080154852808760204945483573843830754334191260011768299586316208059641542062281399621760515479678052973587750719847581199801313782305042424828350568182616332426305186224883995605700581259020602549537353726845160958903961145798089923914391073980614170021959507296167178089079918424873626909307593259664710445314361627528346124855848634449931026378061527061845994168682270060620241212147211070491627203988636200735124893134419770444811035398805235679295220375890317027272574497588393420924980248279071059301079350410104703124799825006101070029289317822379936372690826778009533147516756235701244338281402011272427 - 2288379114545433912468587322534862909224370225370105481103026091531423481725970401412575108905649709529052030599228020521554344342376838243784924914874745763470694552579335632778533612761689128809562876577348833751143244784796682951449763787335160379484691838535479879567972522212450481105003936092507606552185945059861828182798565549852745287235833690916530380096407989830817625719421233108337671255193486360341615209446301651849407714921427664382477287259436333686990585603982248018613206965933073466546934254307319558312193502799772243745742445348235025200744210729782494627577211469877058061736667044613305232803 + 25425392654035078862829212442329592538038827233622972705355333556674952488138473656402545569597371599218416602605537007536197703690076767219615408625759718212325944891120610805586212798115711091672732792384610429770888767273122333362300501827904334868549513830662068162249536616375005706819618016341639926098882108479722500201736109677372118572774022931127739976023280462753658836037014758091292407022556439081869984657372372316716558682195949443626266710497918257064021366397166108224934123426030479561865348411728459549147596572331218112405647261641787926646896064332486068738379806809846399565403345025836270726824 - 11181202143269771949804205061833553033150681530436830387537488160833853062637528898831501147976051688836436381123202392783758125517943065760959940774973544797947612753387855843173660382764265772874309266126868871739147175982964546810634729901852327961676184961173669763664324482738994332622251332987454759296048315541063286400843184592550325592534919179068728122726803814418866719101630019656593320836330633638854685947122135824816012626431178312533930972121345552953000308885052390389982330083016393084894529228190410891846989323374350716237071448372124024004306214785133815044497874925869512449786485084434920781311 + 5372650508222995204504118389857311832573206454611814258612366466551142051501108394111774606028901345199025282611021564427494784331826642831481861677533434338336357566641835892879401586068593383975072982554601012393579774354941972414471855295937101153236868682475831111514896596770851286605491086200424932990599691947889140162719529855433286745949595977467274717653764627863646619337064805901996436568651066596792309542683992755726948072519088863919607946547156606245897566379892920356617637752036015752805341410404811167540083390007173662709180994603370354031069811008321059833596445715999040584281263647856016546058 - 1771535982184767435688996652730023866163402572091388011150592106025430699456709775179756051254176078722608985748631053926478041992158363252686334735293321513776630087036695178621558968676649043174417368993315478859472432251348986119842655813955260499002027283949989795246246520303496999226074391389223311200110664413026791367531052135527160807611603613535660211863041932640341874507890358804854672234763953641307319729356888500588562638152072358914384123081256096383636211566808126435189141097221783965191954553489450867134205425390649144949743335700489670175045558610961715897712908085571178722116036341066094634715 + 4605924273228068778912423505419579329396858429477324779314919532853395346043233915658189031875480367998673948204270619723043496337868578505040575857855757757777681383528372681656681395169289011824478948913956242669367945247772884360163392278090747850504001141397414514410352429788881516740036311291962486078088133507976828521031345643330393038900437849076885542706661340531512159486059684676062646339679440698197476130302310928625876141010456098842167072500849510158910208027303898459648748505730603287842894895438936327807667490827481115088295623093787002316294202714004764950886982406002799233067426746357817205398 - 13155795298436133627890971011940907055178063927687407125164513473563319591775054183409578095867181903397174351860057810064973646969312516349266366009656564009380578880473436384857380153620370928976169586805198560800791630162395001429343637836242377625496804183004707859117140677435739653909230454646112852683198130872715205411079162081800759758499462729914103195881445035886864431739329949088726613008281772464125259523118490775083883167653116860333587333767398521271921992094905060499233167032254024695549486262303077574598407561976632254020785527635093715997600698796270051680721041594104817149443533408330823149938 + 24975144042806928021145028376358477317037849446835727694041575386677356400198998664490403158523912568127658337445212969181351711925275474325266082947260158172697791382181736826330460646587716127649030922514763016538366329105287246629465460865790668060500600462312524288050025839182126625464122729213455583321802789473009406311641930904553635499616653514381917133877703101782378459701659766959355335182404831229745491692355207180840987486876630459202599559776600973691147575615822321909829963492304694134844169772312249363974870158920579745612137994973453417847525768876295817477559334211125769346672032348530438421802 - 13847421882277351520952803821044219163479642779494873593307347934899536418391710720208279739056615174769362045897896306011628507656246820470615260499438217072306723732769027026392097087029204441949999499151430033678487722033231675552854901096805124312005435298294282661091912861351335027075756751968363733838305324128504799774907088118618284191885946637835422404211511361103999835579756317188468451757094544864499451973771189916079567536733382282992658849563280978776689375105580800248402430961210498390121923993810283494702893153474180913770318954181056459138726010293984958946704837426583716788846175958331937453335 + 21300891902293008770902475253223791945451577350920456037475671743416179375678211847941718598248519488252993940236379269020678464205654344725988438480391859133082985147906173226756408845839319312752855613036946960110511106820789789745465661431615264631885540074199015272584102358629431866559128523186162811223205632406059741391526193954083290439252045402969555234612499272894039943552213475309613368383300819404201144708225358891145826412153393122825388998706841260789722357250735093176478355699531967625664790773938108734976730147201856910526666352955256512039605332806030092416351417328714476579397384947448225726853 - 9980798819629427002175443500242497947728738342589611979431905122138167399177532862766213180661403734168795735107116715584326339491366015372998829538685195955670944564503879611167525685033269353626864329133968216831843590330688984537295661512950300809064507611536614383881421434834375905305674521771520617147902753589354333540156701265503675937987122102047135617891397177947050151764089497067092929647351803474373010908314876164735518298438101112717734079478686908097432739568995448511998001960221224621327522227804975713303763553845799094876262784475574328393359315743884716605645344245536800223980372246536674758862 + 9286332849178473205248469298598999180810322940133026274972776043266958323410122412903086924021750419541364834016268548878801396886275848994623502670416207755008802740165275543381734013949246778020310477690697330149382269345741197255108719805201292674868402403069205167356021668642001339705924682315340054022802633893747424896605657079102401334161460208275361337155307390985598199281287115636773280279674174264703032806079395134715090854682931061011851864111839152295736787338165258972210980468592679617226586770530352849275687934457090382213211820881660682167270620543005145116950302298219960999757061362684822407047 - 8773588166874077187945796800875912115997980925693158162456084375235041389239583635051039440156606771843179567425326270768646419278315737263361733564588413685993373348020658140155487706172769378069753021951739324872964069127878695738924837663086110788144210011449334496283936450496148511606645552510680177376782100897284863769189382389917279992580244885151266141990591410646807527592422232490374780260645852282764689907439285280824161391735537971253648823297362613085836286175874706890308978090807283417259675907458410211820570717855688008540205657249452243541155839200332312035070784188195817472601981137177126468324 + 9517766186601878593388211232278260487655744408174659083332711329103188000413230725799629345396723681760875697665217897551725122080007153564910919509580007502225260020704413859518886668686386709705877409779707494335834038088854869089549337284699055036510411181282795145618515430588247532834238013216817142750651282266305970264844343254173421726930007635939538569794497263561601801574505059000829472466811876473407325370168730377437564324249549333548627083609374257613904417111100939200943105862185306964013434940561181853144132722954288417045497996936624297386840727739022700159500204597677615649670794028075975972496 - 12532606074296459027335736247298613405712084671967023526088364261745643759749693229963053807699521105196214549627032854401165593297887699837434876410015833386419321369813490452120437931000908759337001723679266278036896504043553986648795332662110496402237962397987288045590710936703545405125537821725134327588201527527311231150290606319462732971291721985898953349312244694921529985787134590535712790273927516064728876064342585027709104872241139732667016261334127045732378818258970958554168433231722730001899135669659597186273065065058142587251249528220602789594566989738871733230137873091719091595756674188370552282538 + 21271631602242451843988908467708678433553357667700866427824528137100723076954658178364638035886670208874414512991542986666857852573291746490713168184411175081396450260357323838124547970642664143416603695503659369476613575423438502278888829031014291692874787365831244410400139886476014762243613364930216872837024259995136491911954750508964886209764619717245750944883302989458645300945077258317674726943083576759874398419339882685582389248694034646546248573355501104585148473985137731236735813854042907253851719319258311426842440395706520110185861847192314589584721731591202476486358978205044545578634060014597341739760 - 10769631189237787145831584389806927514312985369688902814916125493904186832782272519484850802701905690461810909635452938972826460499165080840487195344996188349366951506835092577270444183623338409988664845708093790052363205451479181493181445160689352527166818951616248818961506906557274068120695974306835095669592612315470119112452739893377089954480863207277648441492627609447019340931699464043347858654525057053315136485183182942562840262689032650516998775703787740460097838993829672206269731287064779920062496856365400399517420804287876732477927997414567404097245498418790593468991842237501906568159610702810105361448 + 22350555451516710437949558616094331822981577369940323044403028555872074861669252626980260637686613114127955195392923992510038518473103964999760886460533632961403496627829273013073364832781446443853873821855652500764879446655093220582707670941208948388616977651709510631824487464553276573047320562373842767657689683087592538415211078273340528634048343448899259996408685024220167666399298143965687999744166269303772371659362710785020934140043470464281180535777837133680163305338781148801277233212023489920611042979901612320717970212076163358087686603004896802938189224535306237048436852750587286939874856026699852806395 - 4273358952157697198088187061789004827155065674893244761626358653953584602870200385580100612611977915065367606127955315991579167306013684816383300809908397326397324279221266845738573529291357461113512403751315483127884974387820779540949302355872390095509577909629450092183078047792141383536193308377535209955172240663503208730801634710784662544599952278209794128964071632003526135133270155054010770912511212514794530025861503199914391760090287996210030372501627642192584349509623323819294397195879061876185707557630219823593749016394968225813100856884873139229580414697202562232011181939665471623726467658547148609155 + 21998676199781665384579878240792051847632967523955783982531838864288698042709261175657325684918873406275221710683943038882257200945068758836677084890066685064519488391585160693147281210580126728080287285368559539220851008516396136964909829400376702538605832949076563513733705464729847024810948516792913707206411967934628838840457822008071850899309279465095552218637742748596393767922864982991477859950108647607110007703254069364788057576205642896855046097171541473615588675337794156930726342052213039468736945525975976156172381422674633345434565572912972273941512845400778072217424741041975823241244061484830060711812 - 15683215318085464460417746301960114769934600383609563512096608749813647677577346946714120690323334217332942666757006686174636505523827333078326567220540826623501059789152260421689208833457824678119345564101772913793787389907617116083383122339519280398231747622398227851824088128847119123954731606495290916194433082765228473203229623679128258515292926827313166751806176526519363908778552240670151550331959843027600702215035360978189285333512135077796443734212940058190142530754161857340611582208632193840155784155777959026663936196039696232500465603374340665399594496403638739850385150919864142863686626779084139147987 + 10491453311028855584790728552700530620183787007976992161620510775997803338314953408305616982399871583820604877742504949111949388037920822779128243327290641363382972514439751818360620876942741605698012333149647023416883797495744137191348745176515886595695314834215468205099780122603155315270221006184455274485340154229318781239917443414710648251709291051098923701107579620491151614462597268997338772843485187878912402240523336823428271190860433786118591163027201192437212453021734887147536201834254336927809147041745167123915466851349795300594596609903519896534515916942451004834461179286379231437260595385757857842394 - 9117446240510389780430185802831179886639179648573858808376111018134650820677531809957156454091774837398035001016310920370010336332390831201537100324581941310532559600429546295656813055113513665886150921233304471805379523319111851100243798331475355804593033212465283801982433996749731770192785984497091378831456726987333681323700920010487335068238613244588722923792033154279568130430836965101952729894027024171903294848114520380664518045842964889760411969551858131793713328715862717510331157958029719096502310405174487818872892893022183131019485343237839029635486391582220786318196772082777983647047997295479169038462 + 10277764769915303125943028541989250591680496568134946551967840928939724077939578993079506639270183533892331635274786542499961966512778870242691928480780175331356995552235633668491552751377565702020811787153385955826202183511105901459304486659915966477693257103807547945096770217916195543531460850406172691533135660614654561262912601544244285243514225732520581415531176081267360613622491516476700551814689533301203333608876556245043100648907752045739203169224321878719051706227471265240800189647557048416723082794013604448524779182121023488202643106753905674355286393152253929097275637620030437185648360745774564808392 - 3146156252969310606954780365063005829458384319629858428937891966816334955706818561447676661807501365329667450160975992649241503610641679421135792266915862968299357895767137361494281936413875812488178993886911713506584851920808110228959571828980617874823537829183257609081568918705413300030584009991666291308438195129297056761584043289629628546016890152525851257541589443014812671531799670489193603534327996823221699695336039856871596157073237996292634642005932933476547669542247631030268626859074942462955037528143285348325336005904773837481320820244030550516892649075664889042241496073949442597531983553127138319689 + 25807259789297319037951434391486620449743656165533695261443052917803788135099064229689514162334768546767241349076891867577645930020740938997798972580869471371178658827019150524485082847393413517835653271950662668429094558133535437717478861451770169147940509569455101478872833104171551116429978503627168586743450963211096414560899253121212008308496311782890857772985983032101086231089722282446544637179953676917468172147430487882879863786693797148445339842062072082169135452929611058337831989326399478532634573351132195244862246817482093569423141970562787567435491077956374508226725456031115854520089520685809879658056 - 6031237507162977379942342375168164017224367057029020436468424257762322286670798917143633626121477947563900231542152373086860220376996263810632643980615069632908431376405622658802973877773671912570475266587638620257346533165679892253253706423025684034204415282469238792134103357199177253183926047840925137730480009912246507701712212020242101551196098286511120509590656932979427766223621111499422376165754245460213801234694393598288600452534910334677700631263905420308196838002084763486284035041015926962850834879251709215825097613891881659229695908211395011823888040531889747831704824579184767013462019329639791678479 + 10365339579610727486812246615711941302764246484211616050806351851555449402868292116635459239060970994405376466350397852945054357916133635904872656391673646393126932584679453558034689453173986706055065807250244181149419650716074138794478435669267354077849754970061180437141133166968930782244389946969828469436562440779079273986397793629599080855130215138484903557371350783548002474649388743418297654923494877188410999809353581742343041005573984307438427685229811027374530881418760186079688413213154628700626269037403882096380997809691128695191144741967629371141374035347216924056274142688296164810974102973500059355964 - 14688443660398320500241576687772483609449296092262190792302713185216863400368070590259522060563481990010631294129910654003406985609379068536185276423375078416778359493575306542119727742113580726599486212807781716051600016844280105680449333490467648958114372707488721192579869064763830191239531432722253037634702309122567925457206410795581136319277790932134563098136005043650178628716692904922697754432432040581516553291388480805457388208931498784759286722259867279573005669063092608416610161596101514734277569216165524025688661842042443151545444557420658396269911573277078226418020361016632581121260496827149500252757 + 26285669161301839499851611911997026824467748919463584645741423418951422562938381194142392716000132076767490961507963858483077075116129125116726225434333478304463291994646462562812408974225913197912294697004031776196640669531424558959247201376866118145639046524895052673707187538901691019747447327692632430053975908395462611628784678953409251842904246124007920095014149523370259127037123455466461719957157335374565939469053586912870006233042491051775987798884008861135754004458226479338057750838077770817221873533722383836704511374871663679323603700841524593345288866768987592477727785864905066954692817925964602850625 - 14243454325665797512250148199418309107370037788557386776670218153525389650170113188481477707496030111046621274274400293690450922509052272418604010903221204157946847918164082327498896935536528709449954016006680541335407533548813494105758673562080389365397900392836436137044032364617789024249422325650588330923090766668751310887030391191550447978342574344321089567900848778539388503183204171532068286429186465650843745781916307027016035272412269256010827853558841083187714139436779230999447678210753077538444792861703704973795999293792721275654091735162687419064703818831810423287670941868532044250924623965189037825052 + 28067538535511764443499402956384142172254774440911979493555141375057406885733942217608888647722400664173826695514059964661722047065272141066698547443298416887600831613336489930583193162352239961935294946728829796835456623932070927133584263131217509763570316965677557243593678010795375799385685673926008406723144424831423343786664479165988273771949388372721738188658437313938814497434626152277643089420249507218185115362722622392072713804520849767013819533044964052358797430443401528431600398450747383704223016918757194909814512982092754678910121129629964215788654875340892898836971560875033943703492315718124029385828 - 13740942836304041710193596652000332294459824512801881101227620125001566358181945749490969648009732265433889748267640536823114427800940017794053751816062795417154863306153179972133571743013507356484684021672303516381713509967079579044353796717613187545892956670195283783424570749041324036612299470924590307548983050257778295617649701975111847079710831070212234095287087299826317562237108700071879918472478908514619261672423403180227795838879900611247771627378633160403289124652422680031442842614297610673424912341108168497759355712696063610827519329779591009997330549544614654350783416948106736842248852958128148819300 + 27044852681073587586175402400422519630065529042498037611974895297699379319559717784310024024867839674710776518864416011115148453548409615544392069373516704912657786655825214811331739275216027473543610842271127526594578126261852466687245876465158451730608817307453300820101854843577086520450033140351639939400299509065947069853433427659310161405110680600042278646946413498392069506252763189149202190382433505915541234488440192674471418334268384594523160626826929954797719271596121947666443768709531492264618694829810601680313980054616027528999692403868497428280199136861077154486095773093603470546710312282704890036150 - 16566820443513228626530026980046730880650747085239585506487443373701642080545688424977005887560030661951925493443623508422824763025046635035589881187233802471436046259507858775237300486618687996284695284960708293386140993196815844292485444487890006727843382204738629220613125503024303838745447744700571910543014279617286106740789144862184021597677940905142132965446958540668492592747483898009093143546454296178889361395806318424402854611733576722649034613045135306220145119813085895791627167934489970373329567684427977503086117523909015530502659730621492237965127970936722526084961248796877369072595118099898431436838 + 26900115659597174742517315208026877598248759352410021700380969458745316197703598213612035329559882814882026051215802450263662834738740622739730484123987351174136969324133847892568016859673205042186540389027720407491105361866003237285381626523806562980646817315025801190050567309106419094258970606936002062157954683990972037510386570757441234137496299447265772471478953611879960616493897050884987732579829069427166024885789794047667366921647525750507322546251108956171087121620485736838578656585188481408534713708976052508361441356108990297065772848801935480166576740305644374715968153975103460047680504732682083853872 - 5010727265801554937785812810795474596470934924722299502412862179789777805487366694829945721125969503941884986840911802701701435071937901005524586971362570623682395573943777282511350042951986292422478960651760789182713950859748600090766528333387521420765297224247652684999345934062353403175042641589915381840370790596618356026728040167364667299233099059740793010766395371123036799742373922354288295592854950056937294297193525609138978430051030975615628129356977094432045946069717571147390998744408604178063828498866573616090097309476466199065949680922573203115190395118126363126604264038720485031018513832986717660034 + 23734140559090012527985111526171888607240613815893241484808115819644388009911000688235610548295871298078188138298764815088688484715514034702359261415661512808535475754097679750468900395198298712279169117961065102277055892542782366833567631009105409929959540835083710699178322758624643317386206843542787194927518254898341575547397682796283550036524833623757818131190238638284392708549751728293598866843566299679222389990828969484310730139268873159902335471263573862642536103446585890665913140796006286103185057393787866654349497053621500572103914914655208267149158066160768527161846788035876101286202890774775896012346 - 13767084382068828193580171325163245579967562703759535110634482111495157542398652129117603841636097691341441155310820701280181523135186237334338321285777897544407408974966028527471070279331965203175592480933134016823299367309492850849863301498677057873497344894735826678468816026896666994841033748320006320834944837106904120350141490640438854345965013517278136668447526888444299277551374212296855186473600569970946705656892212566189919706325023098360386521537216849413339130009080006758115059845603230903109116786023136542853082409484341104046859962544572805018006917097407415185660919265626243053072294568444675974124 + 4314203293209827704645205637243639862964167203580461414732986996410810555038946390234284940420972780979394775646033903433212328011675114934526732672492663175250946285998502717107792186314442629554581174601656299632275996054267888617050165551536802748184404439592039452689650027785766777812304779381649537292887304154563439647036733466073711009507577209602372706542986855947994791226751013448582387332704174228422769155946638806861617787714514354634492394290970982933287888598973845825383919831821628344082193267836955420835719232118967542815356351619417313672010299986007176944894656309255917998567208282819278144979 - 2075608793767937266591266105825968252834581029085155584699869974890198457891002669656708418578728123294077640096525082961565858605294791719253251216852300242933863578153958565525861295673091114761730288141556284492674193585751473244038594719996767416133629380532108345434208528802179298650458240019913875001189821173931653911309864116957705111873562373416051233128618757129790787020360847477282339483631148047219900693131438282472805852084194248260849655695743454040263761935162871545543628109758250266908712167106427046510320752288402921817489238582662008543882997678276957103628825103449168633879886649113915269022 + 29300910876977005169435356202566150688306306761289885892775507395127475173364830663458903466689851529571904144533805760197452401627387781031121720260601473951307737237524870500690976025002292217567180796906262693771777307243610143305929360406159350148956469082034698277705571278508880940633296025446085223336758843276076315567608104868960476695702658651017284908178015439600893599816045022882220057738083131908414731363757590971876190026254639045506068146374212308768502864535060215465544196499166121885697648548899503812945780150204639690265345372723020319285764396825403109550270103407985991015310892203440356261977 - 3112798733078500141692938309626219788564270645610359819784274952235144870160166413090220589582537431226332291899444910785201204042789259031954242341363376074327495467789163172217108963640216597224545446612656167977563298267334050968889994191192101739332097560562452952064829621440893912441073751276054517456960965305919441684497002512348247952560358626642085781117367021968402859761648137528251022488351144651215285176555709133556608678823166268929433048604596004575716770682017724638962951322703609231050160917269602253353978142907761565886239503789862378133931365982587609798575254546771443811546891467743682384681 + 22359342329099704076781166193599562770455230743081782642899803025084392288191418143958763335953747637017731952101790761441619427304771449725818032829091422921312927004296582144231816296234568760493607931691756991929285472093673789023659628766527216390355243907384736551069809696962380847566559915924099370577870871345516347115831456801745670899245790406567342884992217307388571235340659087930796172207691028227587368978548060914957435284011183663014617066457356945762738909697268265061334486936035177656073823737218751319026646393792991200177988135394351252825970868486083099903303212717729647063727171620811165894526 - 5918569939519216781353920837155092926871232941212472423887745782720990981124021999507109682826148075772231362206566642567980411014223471021632397235362944526655661642314677146265728726057460633425107228680399694995518475087793686815597906140992040456493114834577988272877956675673436556286199078601499998680388453836787209459255290992052845687683748274645153745397026038866928209092316311985235008603013165592010143640133589588791931010759232129490398346608777247287771721687553068300613792924610434566454901738645084165318741443050951507866574993605575843697653170627846922680178866126185108253613208327196607354668 + 23904244860669394048218024385310139320343143210650375154288895719092889663733444816545020839779921893132499045972805021271026000891970056632421819020482701085728698908958904954189201458706941970174452823047669483194835648699247180627806755139088846043032054817543633374769828529642229919212591325848807503279887809799818406805671590105260597938415259540051550937507630917416897584118265238646643089571295209733619491463630610357251763753247557559387545212201812554270754274773803234427685306017801396393326145489351563675360627470214114429382587673938549097482622393889824738906212485905716099321442083893301492643035 - 4486182018305512376564158972268858940459549588233289283263893855131914827742456382267082312381256216384640012051634569164252034625831345780045915938067103324510765823900885210920203617492374298173727311959272526471994847001279337673433526145626432032395607257792717386917142299820762977875403999827761820804385768582190666158903901702842556405139502381933541832397020447917424615590333444918323449177204643691709213376808926731774393267959277882433346880880318735635981922627256860912618978584118283934258124839941817640572066191745446927827579909678115537139862897150623357698370488934668051428176326474035807458198 + 20915782125254131467742694302895219529907066097816324401706601675580969340434365603304149905023489973590581006846846131929676261005744830053819368711271412262285807952909311648956445706033342035676449785713273248640357425172958906274113997935717677611516802297831471745533584663464846046703206931833273056317054635728284237560580806364408221033945058812861464750653371139420293745781392057528769670280910801285581975280249909760095472558110031977350703986850682341230829529120667270064585159415522704927571203201203887226655504835183618477622800887546531681455658723181368714666033705964324910775837633573921516624051 - 16852991191023663551162011162529647974705748923578186033544971297442536286467638163731461850221645010619845179478115053163164359648203738774003571830112210097926227670115441128780616608030949007342824699314012010543244692582542360163694215150771095888721594445911483862218702236525443592796143914484406389686010469998676520735721597207062902829725896145913486433342775925224558170636272210185364973776626752197748827266345595391205287728618182020519013823296371029883158959480929783693583673282279923039986944803356605797271587783240899002546736736924768092929866439297648435802230448793172790473529239746531259242000 + 27343869532321602156080302562657401916165253417731766938865186719011857819832066981384944933943107047749414882836121753209960993842683431271669899056573339620449576675924662594852992947950308928658137997785219978721396543374412555339068808540741432399204144906377816701671544023526758485328197912700731787338475467964272765795191417458987413463302091261468869590337835998900349615574140940453836436172887662838961784339454024300343153606819448334085206133698856825074442896267826047802676198847211769043580712608723347446741016462296945702939382110921612960867060763824058046668242675616233061985282595013855436003071 - 14285109249600040951556677717452684149288152005411324392123445536326330227442929876634039843906861310060196842550496924090696224261000637906534223610113092223455045842182481184976865066870535066556574632084217466375845915866562536963416291077448036203662506116994304483802741611272055566142981927071542339992527954887225457469268841981557108073642485066038662112200749234037179622175560444294414479976249232488409805164703462649162886397340496100959384202179781666001901410007758029104160379585403715074960268639193176799682400901121736581148989835180249834254190789309997887724119298673206451207722264847910019610048 + 21612917697509328253020716657308819981002997633241251240092959294727897162785703235143799018500194697977965175737708435692232494058417618739517295251385688787446574724869704599544034499223315611020005859924613515116209546598728707534658038479275020433493376776680954781816607741830497069082782036865738699727938940383035289595381492189084561056778316555916911637995949995874282573336102895478928030499880864917322491539411046600238550337520237376221484558218720881075377012201219918560043193706552093279208871353850446053240540611018765809819954436620761386613587730098411773805593517541817807845100293795808247408606 - 8678804320824579475561998018701470246022956146774677276031377282760168411680843011458550220284364400153385396494324323320816563912913992938450167459227243777024545301489915510794470682144423995118962089085992197805808390801238397496945076942089703021900392209928887773223032902218913038906144407400036118298096835251682840430269678064685162168350567443657521827938354056529524439768290215248323983971905706007946288155901182749892253719698168436801324522856816389954125131801515464129390548485759223494271864786702732117094248581850111679084609173809673397073352503418682333990699060210359435150789813612374394672797 + 10196821877406691603990941684105887874339932294593208542848495355700473157195142095279808204359023730092771733491544530601513073330561467506044315478480892280394174241256457599994687054632983018793207259885851514991110098364449052352753786818675618195073044814345378498687278741201610883888601296915945834284611231995762401374684716056050427613291627138633141909526692699820157005402413519790865318175432042340988737313491541835923395463177208121614563027887477695356393975909657129590878913253693817442869415157947937117060354143500937738326000940359580556546121038560103444803370661604396080940388058841335266899135 - 4200636926354256389468264856101361790012280473755968036009135354673649829268593872775733648093125305922051062494417968787387821798842886015724245804819464643972296561288658277886446015842747444067125832006781521948950838284839498417755319984472856187806706195116252757339917003985911598321009030102785355014231368687441211535763346725833627556561511582709304922041259746531133458062925934942464381728767930649766481976039718630648476893782633735927602537287594753297875773469452193921227509279637700970192190644258805579203704518226021461310885647509265189632736700011366309820157024475738148794233140914857211334699 + 20152172042602390333194309364339599920384921651693010717659755359581055115547829581143577745663340584874558157208296214012020141228812012859537792568613817150140722981526621226865024813767010701950732231977021570079879704368506699527125693742399808915473959143518593369243668678263129342109120699916279297376608104067152140262210973753684716564970608037878906658981664133032405603378740472655822305901579955833816499826652223596727138722851579883222235178946612243612757043717017690618318713385135565116624652970793046062263557319848479466560966020395371283861579874966255545210488207310298747432715245643111146682828 - 5999932923757510751592415784054313206698839707680209771589922921690493149186607329382640989686397532390722885578068523563187340004472405894325825691898364346991598404395228227063475484161057164554229991409592098443070899885422779865359937890200897852478002461405463126765436222644851384828165522203798921642854185726783866176033182752183327372494938885221353598455927162204568973190609038989136624202981108917164575712994677997757612209089211257392954358723272697026231157573850937103942127877470726857777662624737560153688044344218023109913545738894388561246318988625214611535438978351170068126564892703825625297355 + 5442394801962677776321132880565033387447102874308033505131116938543703774014965471050698459665398794992640340112184076364623277332867159150195482030920410232513388262384754153653777376637401359746923415918279434989815794689177272839483734735072983025166230065100072558687982680768078707426071931139522227820105016065979795623140318898841305426611375367831649142154544417770974231590339320754685403815709936054989389192697813342850425586170027930724035315478932909939085071168354935561875763147587312287066126865884162827887377056928810426723555511032988179984770686528821410542423566788179380130010150821157646027051 - 8794593758835070766589029327070465233441451882302383462757026835964155619234018918496921417732511716102071161780880765277417273187731367889660941389025417410691081551723895818292558144711285170193642813734109280025040625006037666532290815199145647320306284984669377035406897931077660618480031624567301003420335948875854355754871560916752611838582943730202566295665475114681033654194035405431731782244522735305177304006058284754100030585988507786322823199576353654822275664833262574279065367309018939092807453207611973307689650686451089961835714894339527380624531449629767441256920576771770317490227383891514332442679 + 1176908264497432912693770621101016709880129739943515934799197137700909726831707310196512990802573730940241994712384164656639950947694318755661287942536141377772587396052287713083981346295411214487216217728261879097807184776525533690581445442273523566361826072237550436534469808150518150246613944291619490840342466539666242296344351848575716008050764486544855622595421306454626005537445269225674161856314303288349910252383934115106501219355747700675811689617933934979703053954694286996040806560087563285193276801199691318271250043457542320744765442853635280434998831092189796424135714748501161945517863559907387905066 - 2255950720062211550271963191742645278615376808015504380733424642491375362268070180139380624825911872459539467580466131187031497072734470848417017716410390972166356341617774336984606553942765833902170235706299994354862025411155990011858027629676440380037850897322403414658869105870704798623988825720241438685142521295388468707495281926914586914699478960794478224101582132760331547686082384495050651988565013930668900804784484347174044836450745685235759330367446262917858065123459011980510065093212865652179052495820299034504733934955219800264077040141547164935056018750176364890062578949003553397332629714811933249617 + 29339019561347282603601414888499744618520975709041068835412374445921466362151465834244589547899703560208313064386777467150852711748703163445541116671855852480979908943008802643378213708034462097115330275637985899332059556658671568902708073320097099035939927825954167924765446037329555976655571905176716000153986853455890614879779664126585474395939152224858489825537657643580667018263950827510030404994162354022817135978557918899638871445912338226162189156729315694863498059742000001218236140233039745176416459867416203244842740547869005040723739954225962354328977074187306436098334513874078926744392294241053686847973 - 9895692455397055213690099860331289263656598586805906451042874092588730404216907432491221684907128263824423168236661237856121520502382268140452807262780815318285326094708978456380177716114732727405542708611996915842933269309558906204530297826236088568386572187265702018375148181925721564283107962791602287612222619383444551712108178749688039270065328046626845036959264267228929943748401859027266384037497122098069102804408842090315994332326084579696164426399834367730105976279442495807038216614169703758857670006338270702934516603747930830132761081309075700056051386722472968067976309822956918678850883793117813899489 + 13998357518298416295762717233124880358323247127181715594033032994881408853872999967701699751920170066837836384874170084501307905061618823231379088064253211611578560191985382950106905257921971556068646968780662185152644776592334151773829826092332757278447074063468233507688727230279596629671396020648635744510114977178514724014365831630554508461796891878157101498574340241237846543137735548121341832699572736086268386677986486835447299769053905829619646760425147025932154936519885878481660953230591407423281210527448251182339240066491870939858882585635339648280972864960284780364799976523673210764095549820319971284006 - 12727655192802854664080005656256227536103382713199950367608624093435443410712404557796825964481563829678806239434630719400442226479418191252445744310878764645886210414501630467788698697756161564941273391133565797992213202599863314691921125601538748384191240085200290577310510312571917886013063383030539616078068118333725154497105413210986118970544406279859988625867740501376818974531968564442226319429871763362437831361583838614989091452973049843948305935914620867959524950104067594921160104133145794971336401625767487648436245769458427642571036309558603788869036831658464640022180612315532314989482587585109863171461 + 20242618134788186263955441127012966661653904621714900520781751293062827182945517324846942969759939058686303221395621625365380738219006456601076029888534075520080877965136834509508126239291155687896962131477224267726126187621755104638507088214712142970040545549238943899079898678084085547723573902738744622867625741115562093349838654586650864725507243589656400320901669558378352601916264628946198815437405035117929088373009758256916686393241357878460388122795049190941295362002823703189917527892106477656600138239169941956862589209914941151841145512399008854325611343778454535830122113637699725126890282642496201197264 - 1082445298889988040376110529957669120717782261852537424274821111755274813509665045056314114943105230351909194730156351341407527797862245108525708189817910068563747153324762408354288493593808646807842807796256336067758534764257723459613194358242774078244745484227193022414880660229540842985916730202420780360697767638560713625544825186292932304301922890874375131099710423749544347605959913724147903530490044618499300563439048512097884007002115205098829429047180354434958849977682641006180478422560123592831478041239973568482065489820201213882281112162765210766502597442946369747259601009040335222231255746288452944945 + 16902089510137020961024486460913869994532175747143185918646822299967995756710030404057299575615817881185560053716182442662895979685076729175559186926781894544581940721076435155480171704686621882470593929266232863078247946167219564728623790625261406823239908472685046731849781439037988163641252105857414888866303454114198737568195665377505323559358695161302684384862575256489124959327700526978128587511676636680408862890957417594479440737171214226413929930235665411333142060010425934061211466181602006948531797481905089234791721488906349419330288151767650886373882981982215584261608214330750110286674076521778823330728 - 3696140519449384820251531725272387150141356467329521361100124245128415754983370198252333568525741513935438287951026240367279765372191966975055510358885233436741977916878870913247086030309523735986734602686605207040037467909055576859882092526835291986878380839689472771051528166376499541429370204693975513275460473374908104247778178809812253414960431032303806228031075991232407001880971778904951799573950643359832632277196335170342510011202244100512163616180422766680440470906874489165098085099103985213426896779548005867850964501606105746574087758457788145631003668661885689814715708396178912541932764629692480572172 + 4164856428768412986439853663852962843733960091633896148679492259860576897264059757581279488096742396048136691637460724194315633876820625759529505521667485166617042283135315188826816769233240984331738975522850493678299103494191013542271837875828759812338848901197285217903376439870747578739612016436697343826409690651411699138804070965784412518365814671749437348508863211184297773785737975162693458486494136079309332868981217574413353538425792672449843631417054397690007552239833940382723695482563367344435827281349338273658452964354036242199487004114663981815593973542722031780039043088457146833588831506407030058568 - 746658120516644973324268687732479080337270152631833571350405504462252054991928817009917000529098416273491928653207489459663327690114447791679645167077545405763671658102930205850874347485097143580049477873069991695667694677387901364594100208216580492552310538859075362359179985334420280399177591765299404081313757341599042512844659923286037191542268475217149723814153578856169588187919717290816607665879883327094896454747193924604946716770477739118312330251653327774449381229296541792323965031706191282511779834978369911217892479543273047535165703491580447928038057188518562732300803924817305305175760416732630231039 + 351091306432428483428641511365351461589983550352819791626401521794360763150276801277055505303327351287957143880042753207268693571930210964323499263915544369812427171282734370938900204364186103693762696061457290652433143088621643122789335763515417943416135734434318167691248054681149904432862435592365213193522478089556358159367981298643941436389956356796487066498691098806595871630447440697599697084182305810775258695357320793864548014033247071353185374788508104752697457841028482361912812540993241118173075852092097875916325596495355917524739359029388225243342421976037117020130954494882068795955274914240459113085 - 10428344546704923954751649775076628226892598978425485203566069084671272844102679358474751299267835247798365826226205087849790604350699945035325816933178122121979328616455233443885020745701278075032157281991609169595682562019925973160366337789563059266882110407630509403441310249553096269125057013810440840185914829599548743506867961044881372076392936021746734768445875999797490585075198815870205040607909253634340983440806487365280686880256932755998313336663862060520840580933280286514853965195948438149666764506341722184191921080204116573880827178255683534382863503327833016617084058186254404889381419165183944419389 + 14108919486085675747947033510537804997566455241844509784959804935088658829642301142238948035668823129888318722727700731068231703707685865266253029318406629234754973600294578274467612035172267811620010220351326465493658292387187769579365792287711727107081175185623464086607479860428981375928714358673773375954334787792774131075634165212886050877688449013033172692055715693486535496424706633418206161248325494719710693714055552695576132340106479159365600721980534140300210304861278409879884024637561283809829959632894237793061776155804722696303641409352816397969759714822659056540436261062105254641431476246093287535492 - 11503995933612566815606924258445588311448747633931149776938812168099471155216056667555702121011276660101722162877660433792406511154509965677626217029824803768084144275621681810729891190020224972350883939680441357301939999199220565455539562747458160317006000478574883443456383908648696329735450828276309104261542396109557448148261077391552207180569269652327397038854738038757534507127022370649750360523189418921636213454506906720105718222693818568931585022801384505929232527667008216773443244694602836554014970411707909437787674137035955449687101062792020214494478262746458010230309154965427173786440948118714362819202 + 22295101535984072152195836269500104273952798958031418991447640188231901321456506596816185701000630797819714880114678253427276855527352741093017775894089613303262143018099118728577119488252637807785152728515916267083246714004793301227611826090951538909730573786064575132145710582597641485919862782321798551977624005871962234123640921346079257245363590729372552238888562577424789927533068486677341110166636683919538009103428200289534716307293208719924510960910618025245359753482735556894858898394290053347406694657190850764343871132052896095336393873743177543530650365192883795349521113288762694341441541696458525323388 - 773047109863250687604828597740623431666712706517440665452096348230850808294161935763710144695375662469305192150029092029219195504623615957282182060928112439580882374818525904761737575904255000923307460996459196425098491726534119589072534513814496323231195589163214218893075930133732524237809177596230097410658619007335326444342492260076719774706684508341586380948703077423409829540802646098616821948007391154624481312023698022084769700243193232339548262133118180169246826328864381901440869875774910666885369322400050555008270229937722730331864475415415137673263289971876337842555491940117415932897760485848360815819 + 29699883000950138360903342633191243777829803042507635810477041419853442466994354466715472590388275908068738638250725212948972256586686837376308409855026581693389811091144418987153363848333082095094648196163264796277421116402985345073123023142236527196577929045957748572380606291707139466177756703602705427953119750786017952937497364850155983725614249678938646881407658391437081346491183888393687270948767403902108737261446723296991387413855465624992715296331976879336205603337311884396135652180515773090930011370912371819128994030279289337873262103631119405287821232702407953414066129178849425650144447000418323694056 - 5493067571659509497783402584006772758648192432270696058902976928744207676452344719001748156589460209504377092030485891786602703354339865634698881171047817379995170525931141047430408119279857802057446823524183927129087255539167042404579237487002257398640361513728217599336873579216665694510717692849985469319434656991625318696095917089654805984389887768702870274319347923221619931437431574956433964045795540984605065395615569243865613851030652982141949977751167290521545496656463334751989467326139089900385296117593812339978833272054103062624715042404645862919776017808792674416028619387077093300478397994716869896059 + 16825383061503912222796391828466021637714934657775897474055893855693026940251443315489102137722815631689266457412407625294665031077410534831456497426766416286526082722671029840695166020131531891007069738751433095123548492258103806947498840452766077324955381912851546676140162244677940360073602639703164284525960735100438235703797186595197160333858344364282691780641445908193865729099555861795107053641904754024801836283971527299928620950104964757586672940062631129686368713529008416070159028276580258068368387932216468549467894511066998482714190974668495988240152479229362584156116825713936601133944938255842831663215 - 12366212562115638834860627085206971216615682402673856112835364278913983816927239753235458580091919959010238964060054945863940698434907614483360528570475373459583246148520560995458791472450324548066294097006433091384178421005761086122884340587918819740301508558702077935232631901462317418306564859528068283851855985314778527009161747902304885444920638385827547342529836957023900788877982499605803277262913405312899805840830572387185078592231400607631746101319914778879785812962397679568879182493086819122910728198407786811413213424423389983328399530586614462216998077353112707522786802601157138231459401484471253562068 + 23495756703169765411878491452570198049633289551583628189064765497471476645440157111470291655839850131296464729782107838435027218781288519946099380583228129687838519509353200281293621007608983319503739258381014453744495717770962594084471465225851145905238639826359838257157233134847884120481915814860979965792371201891736583805262760939510389687366720981857150765393122268960132993050315897182612152426826084369577300691858617403190461071656792203851898391777089931171573529742187544037188955183147606245240940287068339932021006172287984611987337254215263640671924842402281251878465847479165179800210243412244242148610 - 6780183094071051653684829593690884789591377763036534707003795316206557880140053660621599755437724989080993463919717687270446125771422104518510408450708385768597269879449295755875367520065747222640973060844987892449170915089639445061487518335719380876608255197734042076720672146868186455445315119056159920125903409996462392516623843710775626575932932185679008414524372141095328414921185348996450048350515134740917500428145196012088450720733308032150728965902195240228728988736982205760870068824061823924777655998850782033219183903043053803687520287919680508825871767765330998393443972152478888614742238143727906616188 + 19362391326563996538941923672456376783250303880735008994786744117241322933684065085332605097547572785296063476199284481653391172175808364202460280394560503002727680768329862479769045815105781338040448212528359498700243465303189771058897488851484494570273244370815044841969257444395415595247237515349233987484570159068676904493482152257307753174697463209870989009357467732902626474234100401588590997592701442603745952619205995774710921913398280756087550274642190776626109746735006372293271874997127643478809459018675219639412876565356049142860974681085522392475241956749991927624091208510205636610697537875501086862902 - 5224867034253862869560148393160023854203155163582753639436135468357191583652079303727595535195394194859065405587183626014864116908197375697743976085543127092828886451663833545724508142760944731758420585210341999174438220130535557204399599628617678365622115162629842627704296169177641354380535938600109819158928351038083670566418793447828065291380892975438743438405879154743731483777330322547603163776932664525778790632374583740589174283158559411268605230728658043728305921452384060316627690150845170004492980644727437808940015480045767912218611152314588350326696410801386302687156871636789862163958575932515861877825 + 2564689155955955989108850584626487188791648521059457513791235001726824034702607280450222035320749861502640312512065718865554688155040425344943450877140747398503294170834384296798452274808464915593013695263319682529423896177234779203200656959054822132734480588523615276791860947746945332964465606780678176634130374902391507314719107282972037243115949630337289737140800207244676209955296478700830083063383110353707644097507047041426886632284048110468326020387277112989271145508564064832777753084079701537134342365256176813289928656837650425349133893182709512299964547798881194591630977136973677300074089803624523422112 - 6173720190490653417902676270930384142022791558873568712158770811449413446633339531203579452149189240517635152104631755811059345265483127835181082808178758176060731145615333943989085915972715031847555867777122783699645508209229589702801151685146572949327750285382121174392322113821451733963831330283341563515976780376938576751462112326332908325427282205901413524119049250713719372438306688212124900304951123089570867281626668499316467473039360533078375739652298239616707914512423386877253284424044713478289439951623597325423277683720961153708357353258686290522947116778548663500684434901222903405772858794955055726916 + 19413581375987738162010478361228598753534749679264890603293428504448685639938673718098743108056985704073337356029264165004282377401652933066003965155062104067730334798316372708074873094377952295307908850788366800075288620343509309132073056511234250815498432285685646735003797213687513125351681480751191036083976805873630242251500256377021969746633674437505043550445011170211521581714785189232303949490448788741732736886556654440460784626496133310708060231843367816640823655133841849912751126756782385351322857123374887660180085643826290887363786092078960300907634093523522710528516719871944296557679238226403964927067 - 10729139837741354818334272378593779984796483682680296316437798004129866349880451644164016443744311808179384614014223432416200346409642149665961527679389518049110479885589533541056993179059585718438163033202731446047573534188234091044309192988637948284262106051867688133711124310212657751645374411049137694542341128157458766959023274258763375212293626212320901514166660520898791914894244523250854488433583511287442050902570300222163350791644512043507441266031794376581334011520516072819894710653584666894567702767045882043299217199886319072565445751231739247856189232691347237649039886181671227369838645980795464977217 + 9172967570872510369533982447823090796741860536705055037853967099486313618978039621183074580217333431869546429006737215678278078063032277876868668629680340257152569768038448797324880337430453841198482525529922380638723606302515695800333772500646612554068482123253740040767069098622703430832555281784306094719871865767130375485997398527804030035258071463559549123339380809475170690343160742964404452344089261954593622745052292956920039532329128282741058945099147818410922385770916979972836809184303206185547677470791557784326493946526094736604259805128460862244716838548701212156074687865281227018709043372563261561501 - 140833216814923611427861934221230146397461270531271960081139183094807134312067331008099789290960198037294636423474719084029201821067167830990672524054698335984159218092188101196301483958968103101614454799815691122263045630375588158904147320150960075584762436684896436592170703630268451600647948607114848562606813477783951807743341368818025947422643687587538820065892607254616771178491919508628164299472520304032983601292091152175536491943844087883762021164409236593429282706789303262838268917114486459602117898940748091674971035449296192957406536399475192412421065675143956730188607519188283638832318441366841984350 + 11790622315483819416413969598957665506396656107251649867304628469410682768609815320190773146947851778675123743415666825348719242763255181646570940873640105378894297822244507009305911358946091056186695612102977690760584314552141877803729384280327691470302950756615756041052040459680303279706737178655202970583159994656435526956772784719259138033297820809303515651603749580569409338969204740656637428200748456136069912978892538257237608735738524117940969384664591839583726039179684111340424473070622549733651493093872435487825388009907227156722701326557514343725818781258147585771298072635836418987091073119144793715799 - 9918236761382803181005497915722764397645322881269158093713888947334200414948135999743598233640592151769103224355226875600007016772751864648661067379420952859215039359332954596538925681501900877371117127553903199154580344442334795302472615347818341204614602149687521990985696752797288326080634274578780892999928480197865046939677599789815869412272592940253254780133888409485963416966615746200560672867321062638028441191425913824121094525086042283339821898259454115789949237541221565315568263906741212965227410766550673746028460729449973944342237058426728217175578983066646313584253457649680743549095989018358828881710 + 25714695439259468531525651493002369717126328601958986004876819445504803495661118577798285167133733953495924311203161705204100559020696145313806907732923030539979848850316139729391177075000097936892693499213046870385152022122424529112971953119515460102007283169183093965322776234218312152085163884122817855233291604173463530543559473096098669009157853050008639160464864782633617882919109644875549155308742543945435801961266597863211366950162720226657693620552599623786535555481892845236396543619295883629732816853734053092078918973981071019840122888283715399923174701948605299149718123509107202346521993981829443139208 - 8776307657242297232521773176062195420273848460988091758662035538484309710144493226827879254684709684029901126413636301656689419129842740618620689328367149580063466082142179302377020177038468548515696038063139647043296616400142852353832279695605307235049592788204310279824943259616800087735262296115849287753499107191025095093257968407621094006026918282787035559670921159507452814156539397444672548989669170966914265081832812812547036435055992915763228889938352576573395286165361066126541534929295701696360590908898417837895636196164893634068342413994711227668708346186414042203349577391945912132063619582174026245038 + 19746589344567210692076962869610427042140495409463177501686139093738769047893908129196088454374979623166974087595900009797177067339064594981947225317597744483289877592677844228135212875841581667995555810131268205624773266311536219688637526567486710532928432581872528276989799554959274935980332815679130227871150478303582637383009992613086749637424091192337564159253236395803784438229596491862757568485234789594835569123330822495241423252917433099810354229306508626499512060313622251208628715936635076350775254497033055978047268857127386541278808444776805583767922635493858405731584807269465369710808875771748756870629 - 14261393570411094838903980291423552600365521215129072686192310099701632844711199316458850004444786060424969425925994291638996443922099499546898358906559806279013444438781896687326370227980515361312581005169247828649596699307317862047806912531021520838672342613127091385665298173086577619620158978671284478733105595796074084652268344456169923492103161356977334810166078905891413643043332573752133578581903924833308961889194568037649453209972275973371037714657883259820255782924964043508347713981131131784285752370326957048570715836200697461204732834582180953582462542868941358894493985496857835152462244816040787992164 + 23167184464844530427270304372182849980070319867439508364709017418765529771754689179894212397621486148079104028385693478058329395412196232190632605521657945017970216567464905360749938913269204032089306677843667579909331962066855781399841297666132167676618664168775923900588232412361969150983829719605613264560736453516624420523099526304949391517810305608530454592012735267316469736837244061306472303285768294332622175613389856460290408893717394394386490051555150781398639496642443452629048526491368124607446392554147287848036575629421314799880371361723877741224615233347704606584845924911935607437930266928247920369608 - 14174174588868193847588906626993755961165365461791142757011746789475327033432962420963875605751069153296144881225427273561305241798855441913089876467697977450391550964316171736976083103741589407915614903616454220993545429674792647522774663876130781388572213628749004982786569375426020085543613173514605377641274796408251525787263172196000899118467637228848759404438447842765267357001682097854904352139890956183343326919875277554508033304524942811904519285898348590074736062683563166741943426990207302206235105761675445684618258669829188212838408287282566289520723856113022432503455968883805815775813978456853184663064 + 888610929956906510736100257443103099175001120130349223968173253243712724699956619238208809606720016408601628022660470149243268219999492013244589779676957799719179731369644733171066041174271750334356149897855753495610428149426120208888019408588837209002338578511813112634293456206981892738145795857308889895552607684158715021710506671192377156100503943058765078751827095243125509955626043305034471789106922196449613378483024768542807212964964442374156087919552728071294982494943835012421358854054718200483408284907541098937932644456636505119069669037298497137753323618799480209103426223045975057727269838863185903524 - 934918011215616386971151720088917851971922902391092865419958921699377615367680934080061431394276400489978187763746950746690177580607757072058900904180994586419401197233174585164566337307002954612912147720077089657712317709511103777291044819604540121413113300030514720444815354856740292783742859477449804392719894485682788755284079166810904320848654350390887334315489479113996058620120638481728635677394616400231822432935048309497951550278815840355902116389429325869922852276482153090885889288926751490014973507585794298745648359647307288619375993163618195832644601237582261940767560110534231074767152245682412898017 + 8496416901553869965015265408932536797883788265585760363977445059393072057699184849122356627117172480819582637074548117698487219877162454086889465856863079573738210407161731396593557650414436643258508022109501938017631455323281969571415595378727145840885801735064085680860648837197725680810638666315051425646820693679368386613747403185572966466936742346439214450527584825954316655581187569151747834178774606563174248522245517709475013210552812484361250613281350419095502762168117345446622005450143871930394916193984019263257217644249427207004894002328674150770712687000820848670871759897929705309394270067221747152043 - 9879653967098216754568878905160972853646946656252286609247178013852522105374344829192909072974731582507578261141273646623652621211354092961380128750666045728482039444816011382304467483725488581751975564382782291630223418960754479809887288869748467697266611119180305667584589274413029715111866070193795329465284689256846484170219624925476806735830125224103307289708567494872012591704875431742532054494529266555903352017726591691824655185761393746167334833208312910090565520095880529806079986817565755698109545379741960152804506515816035404018322036850205698057949621665798907416735800257745830504086318686633352912100 + 2647599168036415317726099772312419905884496127367823053027441387656400475736825546051610795334835977089972816752808532544398637272251997007279567257146769000473757216057174167192059115513021245530489219466482228330356267179786010942129624194061418798142429562540657488639594970782067390661133463441997022599882523651824568405812106831508504982300459136066936784327540401064102914194100172365812071969402835832749228320940677582484599350631893925450025118871995903793892963597942846902542539202372216091862365563327970909775699419624737302269214535375020774545062568997849949230547680696688651571586127358522195116965 - 14107270542450057216277459167460498789714534427873771967271589829840041263927332916145490639522672133110349565150212546779989683766036777814386262445132497670403409333054239854699462958755960134603612290400151142371679627482105824439674860085186677823263310150233854703533905191710927363833319746637937187364830454114221539301807430104874978449116991220341219711784608155948302644124655854278113562179222247897171613060460631825708692117763431025446537468326394159650684759485747246749307206985120966284023413850821178057510196820057488632737161649644616340793206090352958700672816813086448596128025732217568974762897 + 27190935651141639048793819631207052005774831183508594512012150046906877527192822360345336724777480794030779783409855760827526518278874311877657017043594592855403764349604287885558617430397583504147948327456582947467087421532484392958270655224016778035715726521434254473853957581877334186352487326191193719730883420187699669118975527273640494383215926457398562819515981454490212396247580414566071790047681717416448262721745865895684750667894056790322422179331335413361725759704280283311257358794993619346132517259729723382316175664910135071501120820202833006810294079210067035555632628663135627946530366134215105518301 - 17295495597337864747392663988837569708764258624165616869316811221699916581148115230589343930755191131642246086875907407336602952667208870618570180282632320911820413591587621268825922896294806288643890845235697506510063062426113775466855130859311173427326232477864896388971665796953811480864692755718822667925753494645040834781715825542553943037941320312125064134279849858348770559253279521438162052759851513815279861941491563558126201201843652019980502342314411276723306485836008661982951615303881706839019038825440196029280798615895672579954808037381338422280407669656760700124432079887552894948496565084985697384085 + 431565817798506580068089278941087814198621013584090977375120780853736207780723287222034009242047554743311198403468665903085294406351895264029216991526559355984105147951596099532736349562361493735977761921040845017246721152203374781873183710704232068117912910232286976976025590570201196580449573198108720588770099415026251606848181739669862430685288469141503149807809332411826162841841237359806509164323490637143321305567746077237002330360253557362072491512895836348072204655613267050663411534036989136585287990775436343799766362826036413815482187513774636864448891722699878795527191009283458358217021148853897774654 - 1558882064509737199742649360756252443643419100152913987838876736726025069531980560779941514208874020128052244283499201498449249147150567300802573062976651926663311081611806553605647698216948842841672349601257478102943072420114696010330953680316051578368288825126076360738421287083235432228351772203498003276238113692561589902133301446610488812889855165627873451664463940564987857329819244505337688951459953981573352761679091857278159053902849137819634451945105329848426940065481261351406654496644041452275522207165076339300474731906293313196621210761923821749456569129767012424221171146368656883872760232757928490538 + 22058848653621286297996712466935875075107985184922775746415501526985481522589717502643679192815034363678938188152254246548380754217724900699973164801470460999691756655104316521512401173638205093351261982841705272470774470397279964566015800870679640838588517452323153985526489240540045852500514585200147490476993222106876455847453674789135363783232885950100524206410738393990752507496087628354452418071202036887482252607328077668704783972808890672670244150291265241559006959768475210891862898316355517449747781336343924478153785914932642448874285527181086329678260190310730496465143837375467348344116085503042417521664 - 16234023985147272078287677658992147940476867572783953977395221602383064839701294913028371427586667523823246045132068659515041845979406564897642387764939169258438375437498429990479267521071524586957764941643966666663783859828249422578027859133042712958989900248436982923641310581571957380875880207507150305445423004291659250192967785314210435283320682853921628528831657052028916343656855496895106495549221260410112292308602170590054581852570450344699517352094891910383275861981641824554293377601010044452461332250728327807491423859740702416305147864038693685601461100541483564984004780927120808313126713525260146960399 + 26565534185825558240511117749385204519662002134159431516842372610726165680308762800980078593159311390732179442136542485550639417124906949920306252380031803463404928018487385402152348970006205861837521871574174958618697094366421259588645898460046835036241027346711731238597673648984201644264656230089915276719882191605801299570020363447679693677931417513529046945353401889597767331895827141589328960869104395682054267316314350135295008915690695643745969027744578137356891626522277219181358740383166404397833110447513352041644332560772898806303306647823319363292262458062810271406245679232409786295017107317870851559793 - 10504982124687918271719992131656716840668553642951831628742504483453730309423516778606460580850870158578377093563498919093670344910372349883912831063779143301440444216474510348836517124004158233027474028125228702961085024453018344026909061010509423089165067154399346927116466894224648157089308543790831664262049661699834394501736164454286834775826187963649616133568207680935124654562693695809706481747472191385998078787138615606125605734177206711063268266112342040888932253209363203150551093097654625318562331064982804594032611282166075029578417001027006231677398368410855054770895910158170929609606998975314858974125 + 4292733225535268456274804146254664244995416782090955630727419668893848606899595054295395849907468645800965450512449393614083940350538609059665537474956430263217043666949649260445255671725324354217872399314042609803284841012011671181291284692761792866955780530636099308969306125615074688349123233926467845343937917743373486212821459963982908654905574579194456714797534845543101909411380070752995949059477720819519940351713642955817944085938570916502438204020477508346443496027246975000856072723489589189921675012123388986703746350416337177406753298870668786829152147274671452031766529412248363377991037725753598561716 - 7933902745047416459478929952050325045071885304122881779950918084347990724998274307960818732013853901449605605857787877827667655361303888770993920821854010356636653533779116585976513212857272752819641298322562000295087803349526330203900654936918737331436535354228961554429308820112742603661566593537658145668367421529137846722474411343030073554455535469810983511768356925126228060343421930494705349354973844085103848154895545022574872348896519326345982310681976153138514627086543350694591919315667030868730467261070863923419272451169404758248325484486650119354893186145413987008150416153208504479458851368303225894745 + 5132277807395945227072923051892936844348476115583987569463594787619095704557780990686155548362709291041708242783590579079168378428821286618173366025065584206181179902875544655164568553990435932734110200800487110038340505616072020382087100722351179536616308117434461991577911414642229507097062537295491502630368494699414342552519926484869715125735416005732891243359366380295544895827121418550264386318198250769725978222704135758104335473807847396987775893899386666142324540468174212413696932223309087894653313991715709966409613105242950103985809878121810336161894286203235195799526318342184352452491795811278574019217 - 14893743028041647779124758721398216718782666346087265807124630507944017103332488509172198118341376675768561560888150448701652693925434389940421613848958832328906212200095027230150469909184357227567617699141255484742835558198779181456481788300258837111077616082093168735002743851336297075772375823411677673893034319194711171771434149366417854815280168821318921864661504782173869903941217548481825783898104496936047939520850869395443318534808352349007321364893240638350704226036180522076932858981316046691262147253467993873576074455361378245048845239529793582029986691718420854054897056536533649089670946547826589855213 + 11342582401839373009730852682923294232518087281608402908216217733852128648874109393488780705940620131361936325942438611383542198874525224315392551233185777988139802066689235243506060012469165526507693994242974526858437403672544805888551437148217618348775052539954642674722021262245393269712965489907978844787567040833076277296290399515960132507748460124605221702049347163094756396119916665337838164527114968680965523066072175055922642343711405456608972529427446891363517732964739973112054060817953016848407828132913986328488169397462595411763779123246268867657590727325777109135207234393508353904177563837802648805705 - 14026288159909333738657123416450280577743879421098540180055413349697308508204043162924409152402217148836736516460820862438235593341544209131644631915232483588076251612063514307640900314817140207627877716084248709846992356350509075965299378682609722420532465213794685358394499012519057329354307584079048292307340479406522134229627294083869286274207455727357613710915488555323795144326727772833947357465131567535793568348594417181351179757619045132749720982843553556957157210167719399915603300753836472984252983581360652714986038151256342691901992141886197588132105186881664850513035193919300246320048327930113243892233 + 14091040589091222017342006144846811661507202139006538793133997891119437389911918419330894188893754818788176311992668288437253571890690472656011930879264919260105116857926314547081989481400408733465503281233348194591188033735586966529934154779659082498453381259955246588271668573325772916200179346547889510325355717865321121508817670753461929276272505185223425880786688062137058272310131026306373225972588235577581209504343557964202886868411682093341776540276299525144341659090320061185588967303099109124935421702513223085046517215016181309982792937497336679959793703883304531896476297614863651182428601537754974273462 - 1483701284252183647569827000724726783682531161864700963797718590754443003392128230906891536169676099958814381075831640705215851189148561417541113958143711702102250401955078915290770097267792476543679562993662996399603715924708487086789411386342858934437737397684880474962282853238934376839248547000175399550675185673320434896171665725921901853530480844389138518204397132350288518929218365682592195696807964799395100175497101977239417272165947869331704940937205951967871558604396281103755915452015400513286651863446563849572951365607116696829654399723932629836088047445923455741325190942410482575862613019158478009603 + 22838488276200367709685776530446812162133599608313561269997909804913162214135825816428131882558415068141521808003314579907689685740519564177168795091849066336641763597547062780891878657301963294247344571022507810936671944694043086563567753212686233625954944987270556484273225593418775560163975876407484925776356938346047856899819245818292851108359031271024184431603560473125343303316882476088867777377795629682848900929103606805456692456287409803015021447153080384856485691532761978899670904698131572636362020910337655998509407220561222968311023694624150313527495828218778920472775179345714787729662842961919640241819 - 14588221801916335824624106688966715806160871826648158169091003818335353200613204775265218845708205687367089334465157358231999378477718476411089020319119765051549085999341421126590945060116766219775148283748953802361440015831168049176577659086129467786449679562299053097911833254357808452415161791736568671044440756166659913556544535513187193311956482924525475724820740808736696304926083598003836346344894608083161623907375852854514242657416703399346929680116437609318890108950175687759012762477027432574618990544301941985014172576944151667157368290682545952445934673552791351608281561240693054750749676512209904077738 + 4965166639568909956157214843405524902943297426623043722176392479339787640962252454529714772053364577146659326360257058532941607959137981638998237462772251833681809776990044450495023291855463139654755762486430071703517852368878375421121565726950783250860365794746653992283133379941345807227190818534914857056136377923040964274016999902621948647265450356777408178644254807109718937226830113333892122212172202717679285938790090237086674039612751694880084108968676484658300421709123931023785681824839230241870305608660395078395395809727138937631344534254276731567003750736043430690882134528076803185788036338849902550668 - 5047838117233045078751207812390451923429078258840355009624994129744868490182187008554142430815663261166546624943566368331537478265787210143824426018149232068567317534977787599669463103895571283169055760276979366668561065402994764333584067925932161656482903617535785783891974219069914109606392946970123219354694329325813021701978541661573943889429658372150321407336924010961985538984189457599142511181116660355425530331943171190113594111521011812147442629643718315918274333717868433404360419108549016184088663034790856111365919074667624488120399939993008848288919134916170024635654110430397112950622061483046502794809 + 3713650818846718976565097138840496196942283781954958715081522265702447869549624395221274255180949895240280492783596252571294194238821558501116619311772870589623537083817045367632703346581886809669041119612469904242300651068639994502966847036411772095698829186343141158535599899684200303550307792363590957516617536035546032923782915626400036138393585698194349681978325557969402279483364535814610884011467946873624383868816515686216598388744499099847395290476006400572472708013638161849453015800631171130745312510735979314758620132558013751166710705118059954883992127511954369040553475386473722539467233900295092403980 - 15159891545571006135480145443939055208960324198217689632529661464967360892700365927171914433834156233945390816326787307831283842138250245516262255653307151927180732687641598954843485531546573163676379017523242380083156957643769932241234230295845016565331023800936490019529303310188556858134990091804134629645157738982090852463476915342526619895915250995558879600218612136157628674299525206856972724200672193054524498477499822455345371569927622071252122453693371342773994474347725503467452585456060581722958412265455993045164911856693505384296239847564840155212154000060408288713465442525630207638270412835712422068563 + 27597142685887903942869609793412530561422471553565647483302376359318552807588632677501340346269813510561931607632578211674446241093159250775154995383237024983892209007563498160224989627685849736926801457462948964465947993867074398267684466594195236257988316252041419360339873084178240369607235485594775496084964254539450635967267389840677530854175067921630522922956142450391503480201140520977562299225130184611894191474787587341944636441708445362888746931709517541664740782635211406073238094221258893819894117608849327472151411199358483065128844455169809733326550376981217182182551311292198400715528389704278552659499 - 5921874963118578907101277407504933573844014932209462155905746146729300287972203763236267025528847972541700556239475139293855066308425368885360791853235067045761669766907577584821368900715410443729675054025969591425339450207956909589536825516802428513658161617363544907370608998287241254396769064683788581055485448526459589857305590211399252248257326839163251702919723699322268248488639381419031912750887648970390243455789449910697899707433588863570958518440722090347627330578074318192502849001388518079672953966007025264707699961679984435175904203597398174361939953246071998145882415745677872341894047899483579793650 + 7883126216487191427531801607557151579207750773516099054468325483151471747571672411495665649244018684858188870603027987527624866308337898149112520913468090939082641125279532130801037060983817157826613828810490421246166084595481105713537701609245822776298423566921309533852983680716889034164104821458232257916348161110772750077219544737097161555372896541978470116917947569493972716198193781364514017613374232627828579253846932418519006425070131362175352398877851084363081987096178625822159566294781470069214201616830613032026612178897141539553687670315407755859473568059901056636655491015729255851010162130131595655605 - 15125756707720010615724675197657680322550582665906023310250538636000939446615369848879007975343134359752557484159398259857561415220497858790866700363782388853608023034560944882793677736094389914600183404408528871803449511815032148325402271774007955745345482528674060076486565423105217460602651562384079731435366327252935740490808961790436851578873843795998491057373718367237111907892446774965543845408927240720125319509629815123783797206789309557853000526715000132797552152215062143898133091502844848572616774801751765383446080363756824091805637759378287436433437095089007754133170696273292687238468050411649677259835 + 1897236133370989307082548917125046627551254290011891864911082572310324048704216985745024154490235969113986597717617467424060354292384691068125932267731647565157364838268955114816586698217844677565115295824488420241587687024335193796127644043547274841083237778314024794841571323941001279982011296907862529908563337934164613914248491276840597334793862283407360111978493219582662625992054921091080944532765109346014541762136286440721807303802484180621191361945712501097961573454262984116090352187376645753276659211950227204211863599564361209250697506269495404478267467643800630593407968411985907546413818684414963612259 - 10486133683140428528426793206934978368403422214245169116381491754780129607298996935628189492672834815264990987586703980586069700864477141149076094499310564594881487928799757912482156872978803601536208360929053060278871355252499212243294984419214483053050560936468800542022582343181865827074948047751477079502988356412815589608166331876163488590163848610767911761974864584927148707053575821837963278914138445804105808268461049981555575826756578141877733439481646406291863558572584091915205242549494889251910469073193177974403082396005223219326124944902124368402436142418489751152326211974642526267627123808451108384238 + 19101698323819920935767931238943713431776756485882881262615309595649508856901951552921194493053226144235724714437598361797720168934490315239785311055154620736505935108390825946922715295075957560808098041865440757300882515641924113543397530714670612997067153756326014284395988357691410364372950187837956123528053107015669205553793291042759899613869446060911862752633448092457116394624290716816279326060622876848782614732573303082924604877928905125212171818722218200879446472022603381035731496628477109081505280621299735355893529126232760389608437793018941765614989976475390842455544166238386483986656712165802018974271 - 15709990188602250397504692523688576475171270803415190927982189423814162716188214669137665036488644622735189576029644555248738825508594554571006020198308797110099350398196773255897360475159426940354471301140676131531014240317588334658122272366234034989768173767559541248424788883382857962842483407535851681734600508877205203255284669023007531267137673657396999916103552542281625672013730887133807538112008619900632248122599929486284830520222653778737987303769121207937158298846696782569514957358461234140280179410733441605380546924146584518319347275499384719172923016967503348965707377358444987471659140104579551605505 + 17509603658718937282489385028059344347050720903070674225401215519373238825907948302869356195188777799484382725727972517407115909876801440689708448741601950373795274292301464118278956291082032570330204080834890182552506461197673491048360958064640473283858387960783408210676387835209176235394631685743554344770296837182883278966535349132298723631770217305951331544165605444655784086476263606117166894684420670053146463292251253357043203365494379732246422102349735649246538211207672849526409388525195817742279560076164008895853824271368435224823118497021533484659317430219066310927466643568573187647391861148238823038136 - 11469227870454793215640405806469164291731277076173402028351838935111238440736031932674519898843195787757585704355103200763489352120032188641273336282967274836881754971799596459137449046099369803506753271320425772539182497171359506987927673929479019930364459354372084795868731774696558772828713216072836135665559039646989366136631639698322483292964800563828692031624822192045363967204518046676393715410177392463161177787487556126856747742898106077234318666882999264275289956747521422056963187882534234943220591071314868467161643529275681802107614569447025628392460820114154952177036775675773719038791440581517027679832 + 1739210395534689655268765418307073303543302654600373610949876433798140568475240833436277491299915791340445389943357575093504092306817906748614389182728789653717802107788193875702819588352167484980943369562598173674804757860452359004462845113065805451523838616506857043771544764007372104832690097537503829094688536469444020221196060905222077528636189766737260375454971529444628157485481975959833613584188891123112160503770186087189689764064852744432422775022654339066763404135436114103238658277335552537977967929831545568647295104422068317794977946387362907729961137849525901433527864942134035728496302904221501321980 - 4129411372472565656666523895259062411421064533134948747385345207338601104471181288516350643389137466601226836763670776242005568566332751234359216210528810521956079658422433708172877045779084514438216485912770521799042860738416459947423379286047966364600249995239576047012768444709271234855476616701118228569763371437187603429190539261682777886076761042631003937525781872173192118286275086815340967368707391982748872141306671290031119439609658692425909436771517331186773839362534624959271650429092878467485637545800282496757363774432019387460663353810447960039451425367455517011900804750930068693602941963468745172883 + 24829300517993071016189471386021559653509073609993523312799067258741242839834805220769361745320614467852344955887379156153246115027481324260005751271580925366758278620568453803711224961155759534135837163660108429444964701584395651461558728259830301768434896952379470036211384158253742620342054824202759038820262732856878905703029028244929665077019925546156853150750214749269726649707223356992276292649501280578736487586889900129536373621998128719034669865674542518926716351627807300471521716679504481933924781806749730763345391362043357428813424069335826265453120350426578736987720744375507918424971355419729638208568 - 7433372224118523491971306491311256692630119713154105898066417669820480828731794695090640436867624358185075343796803660466345246814554911050865661016903934034395812626113196106585526751143624306409190573322316229597653678764832059171407604763207876130197232326928579876448515123717372899606033714129904235283735151657923133095397831791817273858819990445851959103853716496841836523058844776478833217952505039317085463934799717161680378247728744817594507975289401760488900040214573615532495574778248699066734456073643777741614916451370728249550978658960982761550182055650148898641493130366210928310328785681460719132222 + 22180410448931494981871628544995388071024175883636458774499911484298298219240556363444820566034686656266510642271784865767316157553661223057563004876080001176142834625506096432915763878932456499752648112806591914580181633843636296821652188299854720889181886648903533314221587370472630105698840639238230948996478088997179962800880525994873908485869426990533344246343503839307906837332560879280589896134659542881232206095942018782926008098769537311296203097655534188072583979185041835431454527404570631480301515551071572105937720394983161293143192208382227591105843843577922322398388474242705889400761417603395326741007 - 9802773161904879835407284896307789902032198287984629544249122510736465080574054513382977104801376302724341556577311170828925729530629757550147129901886117231725377445908249020083420853422584693979857098627706969932365669394568841085745710467710354749849223710778733279998416378791562896080519421883139990896275857757495447824938464612021519838167947960048028417201402032603644687972450110836565772081568636957365722920894820751166905468216188959360630999437370243688352866312246988746149344729618353241688858158593829231135202279082581249068177875572035847160733089358935565533654349571920683819129899726300230390891 + 11869705215631610733995248361538799213600128747391220687886452294285922295142748958631026063396938529952933059687305411385279996695041949236445159698459484645348227018317661710126053818273267267725747453092757301220133292316186036287968780470052621460677614850707317452762599940834370474884057052087760312945115060955911607125710485309462068942674737502410629886096589083521753385675748738901379691077608841462701668613936951583990097148678933121198657882396706420567936589655868324516904997158526200378698323998926928976938820542620113664324119977662054870666693542535189425733634607597128294097703239302980124414867 - 12781781486442522509711446553994644731209680440199602070061783251984767629048515788807888368451764721044514657468933576159020404258280731491848217793030074797481239122392094601416803760198913808504604987874905024014917742606285072496561544469712904360854667857809995625251786158380236324304365610735894979355537077120416952785139893108863295065711565955692702250369214179762341405803564851164377382216483128585065807601784820594921451832452838465923926200366222686314293832096304811884647331890886851067132548520532196490342359452083228203104615099383459223171704090228100875185565959260346827458641436125144528560879 + 18057878037063487166195291727484572314460222205257573217397447680892060127357594718330169328915924346269128544646638787903003396564620420192057643668308585655981913973237688053685827854542716391822142686646977052863348537073226756934043007987621702054826501984276178191426146133576172796744141038682302650555506522974256614088344230296064217875858871450994677331354683230990698268099549341520646513544903494185601931204179469502323479579765929502605335374277900062682833557130120363082838242868947968357604739544663631102873081839312165348847789648998670095014544917827317855370597109545979045251860838878553155384638 - 13095103695428570856246189279372203102417936983984088749908598060490254463812235993449718749099516398762537796460840381330747865370136473860903575780389802915475002609681096190452112353636190067631987440854235815668602356836870602312346088254705256442804903670337880171304020969929297878153870916130371097549945909585822611964049038321579819187927135535897811969540523624012327791001462240611491835815620678375562859636127905517592239636129505320751094982694891682204273041252140881730200529793896167768742712925991138839433464621991735650632964522454532816873037569339783863062751819647264561630856722995307064571085 + 20663255151263917431354525763404687848188601819271918046776623433191872019779268502809890707702661872593080747167820083878129164123000770538970144708631113013120384072154844714985172307055409690384860352467695640513302641962903143925382034162404022027958717211571221246832332983209027957966187265239298246952980243478420517667060681930688921019385131136206435890971322740668339496104631686680489223292199535268734868532730386753078350340040319217705239812516348631999355661592696108312018936250181245204278443450114277605451815882905925137171710450305949898143816828430206672632640285919103201083548682432533701230939 - 878770219208720445366218557011720191092176353798001914613920451741321113185053272052674664997238760597933176572560036021343644470877294912791751721657092315378855874536872396331113528497570556301664504962834812768935197912340982254863531455262427522457666930214155370690572624211652982454637597077653708719353971116781742528668693994665019349144725442708537078743977555049341417956071022844690580380630357385307149816899702606856756255320512963624434153927516508887776493952149113538798094804106748676364415188071961783386410965803536447853328705834334717724280812835008945346581164124635797888942323699202204233851 + 19412976009323365018408312747585930446858147814752379401246964135778141537499414110481303455023855661791866355312757681437931902099950173554888384714709160869591111878110585733316210383059304610570354208659798199108750669715008158635939900252697093017055796526065895743263909186818780526766492697518102094136092901051654242344922639525717992485331441573316236084475975652844612155974500906981872637256542531596548185326505142745004503886698172643061739840277679278046152490212635964459534641260434131096859061686764535707774323774642990431053337513087304751981450929915247298709936478194183379484451420865245725878846 - 9776310315572002823111839750822183360479345594538233932117369990513005295638646931652813786057145132004277036878287128113715460577186524382608694552302621558962208424206180815636833065983035617926143755436659295104882124889120720252513927723539866783796593596018163447720581420093796579122333111870513162424735305160868134792748126532786354270881834695828558175845048065200860027480450564532131957160066766142377778310480805865520145187740251718798198958794765999730174186662281978746600383818437884646221219226658993271358940005489829191710867514623968770496574789125113185505736450511571470859361300056111515079756 + 18288438296792437827787955660564270514938313186327305053385748440183011056101164110953585141657013248456388385435657773794851699085642479048823188904013467785062336959434472858915467637544525293722699070409901020509333917531282938868684383110413224664393447307219014076322991321520647162326915773215175813728268524060042690762104146894043495938199541568539560753612210870553429869463599390680421368888199899885980828097524700282000396419012290261567214345530079642626047279142519620946521328850520836807421810452292737329425667645592258338641343643301589010072602438283485039537019143553219800175812462944376000317167 - 757915264733893504917095382554606399070313827774841094928354602285315572999506136217642355194295823814941423966447281802941593478170388668474549219547486051386396570979110608333068079601352940352178664552245600714583656425057440595997841600895329954685246137673849917577981691892887126501145451591087932700820265049733335582985500188780125275911937952200541906924703662852619955351269273781878065688487645825353628228129449803879967449813602298869271796686344982570723095509693927819248256232022631288758960858084334308030832662285768269485574076758396438104786416492612708521920486656946028794871948147716887634127 + 29269999688634510051962453424415889392325237901607781993688336665860051878564373558670440255007007849821392245653813877688511638492130696241637007062321281314662014168858836545927895265339380739967315238846496581447195165556018761026827407984025140668470267697288962535302104602449186309475195526602047151187556575715286573145943632380223441501655824915685868328572822573300480219217971468859448926540470009386604454682212655912356230889051516497810761823636204126219423904768652085154015318138051525287497268651080313175749555514622549441685742419411057057507957624148017085923030761342035205285830105957853826882852 - 17058936865446415538569793295236522421433601776813834075576637762871753741879548674621786651024409754342011620098021474526098802179727657821124089791827971738630782441686470294911278586291857711387158078084216880462184809925873282224663632322169248941815931823197191736240032339673572974620695307501856559927219434453127780180486617244006066000709521279262938963644101734326237998774721611537232710502794607312381147350702579636026906138721716234868608171862693068206305496594238470690858863531213615817759755039894782762278496062918919670214045737725073581402988978480474474496274607729984634743278160614348684319151 + 18273075744149030461154282593404109968794280360306546525434865747937776407428474127899018246671198713042334643559965712890545558284454209961526818426500671734404974909171977043945121661954313381366568402971942056751991594804619088481052459059540437558815904691180727115121584889744810154439601357275937902001940032676778543129953803899900937943148778611157694348341656508429565172929952234049551871542058900579168125168958913744507292146583378162873023795804098507933104817135645323795381505658025631668928261061465400763538360915489592513240472275666507287273031105439838233630008739932283492082075493981928336906832 - 6341493222124661369571689509989877061820007954616248595679646315051899743531740093894807051071977664791676448606915628131352409951124260391495106342304345055149254084980172120334296976957894988377772506922895320527062979539572623193695068838874805603171453577924491108274659318748278279478729430622528224249885579410820983467925455479196899646027398430116360052584107251416595558759231479486105772171326186569136493430182923668150910550774714849133973299742256538048524537358626538952968032755431362926981890196995089256034413978566275396906538418228519938573560941421859021691570625030261145275972886638487711508516 + 26529133367067376753331441497630191453728130649859784045902577884765908577055663683615693475810389207619447375354357282661414713733549423823729839427409583842720889916272722768912273507210276757479121137474512603039382196432475709701662002006235814977255161950248575961197186126323433178122816364561057233411259192357130203612226559640328592496564200853263902136259626935808196717738099089016764975307238089563412356505288442447154026457943823072784621709649152623395279791203395520697922673967993337536006568391382745465693106429618030272548164161480187494133857205815651731891613909795637120093964568682014479932998 - 16261283149067686457840622325693381712425548061364764718711460741752836958327102007639890110097056940935086016387423311523259945583071329092928532980924824771060612742086790986804130531708822956818901678104449918270692347414834180670146068765790759799194138266367734925538025155012311152365092440128634119263930181268965409216595715363035251801070142044944410572319885319564649924577837678743559628457018726024354781186153473220813264978507219318027168912346550685430387026041124271428099946362056067756433454414486369453167732431156427923658514800668573522367183887552727825470743431316497682925864111642345561506639 + 11475865911958080696993718012807207781100665404605207254172546271372178717738855583752453298279851295223284158121059753924864159530369764046674918642461407771102316052792514895353719581507747443847540067002687263590662670948770037342521468199029877000994427839717925481114673020179816187467295538070403589671070168340136324439239756951498754053658183009828849521331945725791733832660005315702229336784490153890359057269201192659507338438571689407050093349808757750859794796153005032747213772418823520645179567066593479429268557752038767962592852923566413294522148713705791011899468091177372037011690091600020875780088 - 17200608539836756887949827186277542122590865454834816854922310284659448700811324981316259701960227362444102675374074154478502565470996402004660925844591676704710434767258969757595843556341696453898774284506198352549382292443350134004578083915800209347010795213311850213137355047968624684783907697527017378679988592566149378400897942803481526296019383340464294019539992121250805226940301526211137104057164361530896058002997539200185845896936028084379282361185107585172417211056069995267469514923955514322203659298112463903508441067536165569178023962281199521519958756485219936101731240483557640292706152076184785587999 + 14795439708579654059801290198651869614027080307110429484749239223930191565413333072828131223662425203755853116913856454111132156121524268528450303444168005412153835607795057782369996139332743662806221947913978306089069830983401975877440942348545779254952998075857537851678812343345770038304274270908693202660924113491055045003751419083239131404076023294019194620146812734441700656641128372463664929013492426910050010017735049163459390689437843810125288516436365993116215993958750747748811776463964910428119461432710365551613151630057089660657701568835788638063393561202297120708350742214912981674591089962020564269422 - 12800388281901806415017549189151656496723378253376519373709923911062663683648493570059218972515921341323399680748165822357354685039572922067536050956484320340104015559203373884903699046287001407654367313982004234967773114387329958541771086148078800157760485812952429885011082177316715770474693475469939819878992517592929351861343296831642787952540333733390574618778798901779763018184208752740753727400982321564054573254293182202051608460073676141501236519836610064075446356521109521623310056740892654949159725300356787329256452753844018047739157722707462091369523921691479482841390495729220163851499424458247421200705 + 16037545538273418302493902589318961938758387660890300039836744333447796272349051128306568500348437201279861210333911474717156111526372580050690812337867272380047757177911004244743825713553575499842465978057669490787138968254987393498800422260483556939888004263550218956198912648335689101184544274520590603219779516211935038813395096426040980665009003583694573642724085158861330812774948343408351264982755020572521317857167285954115041048077772418478842513254806198079342330740061894918525458974656941931386409746961619357812939139185129327643430225196082838896573795953132371238268330536930094664465441224285243173822 - 2538144837785727222034530348956721251461995942252047427970697121275586043538837754429958636183214582742383782835530135469553501452569052808121491621505271811161676381554858613246591100181213306815817775749428574100559827114734062600954520760838145046272737908837819366392021405219889630765077651399702376840179820112318318604988955994019563527061988188860081522894750744481723321665098346047590106823242382013156779828065776327896372381733718866234769944898470252031370217086085689381380985524985440490636827707952862358389851868564701746397581993814928619354057741664345182226151152583262503750794668362306841161150 + 11276903868372813239960568786043264005533576589325469015728744497414616046735886187091143487321447055510920086129744915802765441116973375513292173196107268660718480681667593780335520159482168651177295141516834497832062821428641333735370101161804987517832998523041675403785594712866164802752530086128151670514360806957521326731845134873610565625859016448886108952200466543949094744913201588232745746850602468512913859176729830738024829968284830507322360681438900569626714539979391702419153465406428220813743567929949595185292445022440086471460817126624210996896527324605257800229912460293503544576904078473116935376643 - 12668958912691007380598363606562246253344439621946367754277459473302073748301018675832112903011765626999839916027755525567710188330575489306753321175342331592674436436955370861129019837699694198637815910512266832824811156767660574722211007356442050510230203293339484153577556462065297970323029668599648138581629393473832659554105157980350167424141383832652157089817616181282723484912026091594736882350675490877352305392529287009766210863712319044453994061324821088384118900829873615704643706739149244392796362815083673900620567514284222446641127218076829180794094839611056838190446728856840266558861253315522342894710 + 3342048326899196356328231187098836211588182332654625750974402935264634121471372766101988808587349120368742470837957018227703225575992903084627327619231581861525448670934763190137311983539055940394157083062815677874725573971671794560000643962113294422574518326899101554850938725170565892769378303853557543565218592602476709483648964736534392507813113248302510645912473602300736360803059143287992253810027590872184913414610971440988967431228557412543948761901942751776027064557269969492961037281005927226532047863098972486344246783513960351410664385028036246216196934770634713663150662253045293697067095015629175186591 - 6283949413943554072331386392471364570580026941681149419299960151871434435713905205494032315192321279624084551024263137430520619897852153550245466831159903516213402774822342126888973982267179249921318703440791290859239544768032642958563901730850459443155570958957803853713067241393989001852267653289398379651779758163416976887384848284272732745673704625686754575007107389075103755881160378286386645316024400350799454433475700933964447606852625922473662170328314618353186087574883294547845035849097955971234585359768064032662040802858955680949430301955695864609169794298671272875696908951744906897894466433940557604996 + 28267803606573157504707838206199304553804234921703839837188439301167022393933602585040695521514448372667737128791076547300959411684949841492718400548024312937899786991249995865676630708159526613805061098249498253640340343562454369902766098063818854394853843110561794189425259182200391824384643747963338511528255230761979564601383363433622626598313201305329005483827586022549822259502822856806956029075185243762238708220701920859193511394053310113491813781285731025092145519439672338945969871825349986525326179042579202153927239376185238696827381433034526014277525492590373809250010208228496079692289508547574382562322 - 5925830912267598518487460240939525785350669897016224577099946707530982789508624786888285402747083482801609045937411326821992047152350708294921534553317327747396645510400240873185063451890972058546183042479100947732463626423816240242037386896540332435920824029858822776727765777527235356033489056485603133405393958646607174854298663746325527983731785782736745975133126942070185312685148431845708984822537608404958043111545129759940388508283208032568807988166697455573658739693628239821733600181823132004629432199061321104038806002489148952922968779332109765570278268906053275108972001840074077683927859223733465542798 + 23746969759907864225686660692752036603488367498039649910578758326180817075540565898251861329763385703802914870681426719623071233555219060051230171343765970550558112470967762908541023524680576636623464426937716107478081775295592835418824385395042700144892957969425723602231305938100973875869080511008192310861505642478707421671931847025720441778569801848575945624658537823342213147287124137071908501677172717110433178501598712494458164392894226059485134589861646953549892150256691277792427095300346371479981950563845995140873464932480886552321315909968801863082170537366773724009800232050024991933155729910029112035498 - 11235599839914253974914437325901217914271685570515791378776386284470186150967223254332911613511239086659777034196470373604875255240388860872271500456335755757853367225694035605426329705938823735558005480424263157441885660692574602660888563388351719301135244710128559875573498102421015256899082554302094559277156644581203545534914259528148527224433730168491884356661224122526007535304300000711135647780632389670154632538947673823140493214531640842928079401439003538848659257871197272741642017735714477940151138505950407623408166418431852789528297685422849626619429816756160006222201832111358120537502279628326848012482 + 9589146982827196132945654267861653486846438560263426767250452356594442981120679583506885439444425567639730799914451175986903381488133460642728773953470612702797435460859441653920333976997575051646637595009809828038739263527061981060950834911937071756257042935946787484606504934977214421030300836449999063825477322843997929508954184738978375185961717334268672952664588248262715052498311516079131750998632083456961262296192389994399398561721242018832387318581964785334368037157723268238643076409925170549208949637920832639798691773585117056301839907416942123250286125976443182905904929672448795877346631652977632094043 - 16648894731368254190037530482445184606708715877981462924951252203811216701989741832912493353313423918392937537848325180247468537678963062465378845645990379208790509907598784624578698734593807841348114897632348907059670978915768207616766218507586600736663743527492240939696814557705937483967994610945279782856110903282129721072497024301113736013255848953638485875491619599843358462464240260687459551693895550548462751549115503272294122932588472076110130826007326975866314010274364795673828784256869724312046847114890197562290966240886237711027674635991041191703471054331355769956574438313618367617215748997228502070753 + 8138790944587460294074599742294612753560411735493331909385268667065628543158423332368330932787709062408999509839278700482356737046773015362518135062379846158260125151226631781566581397445936981069202763515993243066603755973525416545292708592566365758886722437578213322737866008014654022207552014425894636306780513687206279688531825212751807828428871340296167192167044668202655776609173619713341987933630647573829160409189098173571319603257933090384107653772676664110700116195898054014015332900729664612381334331413325996753353568101795039760309956567672054204737458278307411097387682857955688304239987828565734115687 - 2392298845353825082674578534989614011592289240229143189045902489040759174890157356955716107624625560398368657684284979424631313191138879367920388456172230380456821811761171637971442184694446188792438869566466921375657493241450683648299399463329421681795720427926887694437211115809115439426252838711052732835046775875298701059919763754210600091304472398806720075602159333621374590015142930670825132834667140912416463739253445682288075143498822847009555956985044038405743794406585288478259153231979013345002304043533310455533454598026416816919804449133447488613747225512100826498836134649526809126702380424053296437671 + 5246682497869561589012440289759354585113118790985671149299739194361881581654136357956815186878721213718744459785610240365765064578397827711355474810797386979045682325008863329052942637824023957132984632210212709133400552480696646519029819920389857134817472496616886566983384724788460750657421393137777944525738321094683777666690412410383128867351400470749446869590944951550452956253686525696542479553065584580902146880886365725549617662764218958466079924548217983685504940688707790582437745682103673497833892903524836426219720392916124338502677132128835767757761611168472149760856393481187531559176378769765338952898 - 4806593336869507993711920443799201719221538306516486373218604920439357818939681175898453027405498960443316146774202179423132671913248478948958246264846293427398445417981180015316453247346058136738310372405365429830898629158270349219561110914054949372048771504051309430604303463470534036720047388523404919382320630990231433502137724665009411947654395225657014471007487533855609575835107975255519802794667033792492928599920394673552563278366883039132667506895256650277065129216965350303357448621153554686486431857493689097897602458392742506270580572600962166329622087145247161511337058318416355390649244361550259917762 + 22734224857972458009635314244389434190051330421596538138536293199609619122334987517700033181624148929248206832173557540865874452275342394473431597928704569822420773511505587555943660440535889846033023417836354734642470440665317108890889946549371955146028519201728707399495935733969800737425531741868374708122438086603148653671160225584444425076503368881640276793866258863925378535337473584044355112384600201624198463792183622445005816470416818183920449163033824465447061651992526818268620329305263247732213502786004989652867979299552616925696365922330492747435664267742655588194652563859517574928864086620387511815566 - 13530440397614297535761045862633668957926291701664578055430067294950357845883217099643070965213249347001174324121868601682579885312075064535039550737879466058959337314352027015993996675532151629593634365885688368019135186281929447266996077399202333606096761386280258424868115774836040352977016375742533253138190440940408653227287499975525987715205401146289711520204817594981392088945775616109745730667086794034506747093968287003476336474444714794824953547151868723123788480445858046925599569289498587512632791010549926450546978440323690521424578652752319570301788845943079293308331636547742889127579222412943212134600 + 19912814062989007948355524676176837592454399736262210902684145696591872302837464223034540562377227126340332517915047992188994205381098169865691127514263814871295312447913273714162682109141238955162158617072207672842202813695152647971851252795941352543324285736172535667465829115610501374731555572366225815319455465107239194990553431812009332504329192810596800575288354243156068270225865037557817368846165595709638730575539007707518268071401503181776497638248063904102021550249225566392161005310144797912846511686518819319408339760367268077817350024089892891386431404976861933338580168226729169397956665581029007505499 - 3169215168317957598689086026326312545138832546640873401657999100681906356847166425109411058953135992147197470279041008949167820065971392893594450148366323015894608036675924684274790250638301136199743086950495675473996278732721976941069262453177667372308478043325411132907549839526304477646837708182813534486707990712496788966608237013124229120577010076121148831680493124554041755635798377301107906610392548317842390393698974757634249774185587576058205509947224150427546791160657886613043737097504949298357488754133088203285003772812778537582273846588926982477188019500942764366026415078531488899666072869065979475807 + 25040281969262533465714200127549514463172080786908554569254697326954773099586242418512454289383388885966732453302341026911672139623406035274854890692723725119196385286851275463530401492681619981744737793484141953641422523479725790992648739731340974650909520098190324998011988224990301037183542127884406729636357712892887394182220120575537007479571161998020349407332242986796423027434929978504659399822213295554930586418391800960680486410372123061923756653413843335060682180091847098870886016103981821421009691698248949362656407775184454848521364534524625690650849272015972790017862720807733618651589034870046001121815 - 1843419909237321747648724106617774914736645053520412348050267862499309271960300725277711875694166575855968363945047668931175345577563509161388529400596713237768117976790277192406474381400902433022093689387164615582442283121999510670459867951440930641177141589295188044045103223832540404198576430239076446101341526348427198489583856761395982804113742890337322509460093732533888542362014028029551812327851067732885690301455694375850287609239174202130632987890300945295050867066256406055637491523354282129931241896272818917947744365739170881903683992735991726809928624358847147540799345150856139642805986785406215225317 + 12512821857852327513686097767723349519893274898021337708136546467108134253615636194897689805182871823208319358339122124318404669575483676988731265823477014390924333843008151480335923569083868350108272789079984098631999507391236428659632309388785983703271311046522250886836415469394680327658845548664541186187703724486974373427688893788776979082809158498331980709711227345930409564136844239558831303220152312211229647015505185079088867788442223327995012414646386301335512485811441348242461719448957738851860984351438729499767859029587690214761771123257908152163779185027528585825922988723033441232426033768986273706102 - 6425376352284700939979085005553038666861894958106076349836181877361130140953047051148356312110791438286540103507215183048961345360097291978167010247651794411950303812105576090908119983222119382751633543757108957433972588074476466008339028944312661313216040449452659125812082416350476396185914677516217302833096168396653296988571346387846501966409643004084636464352798051953028288417810256251301290812946842315827194704252054443200546507515703611762902000657558165054311470255409363932006818334662619851810535497716465768754550994244797100794407092019030603680118979521409388955193761101495689324734147312080335126839 + 743790623828407593331269829139432559349468214092001890240515523707176242594952468109512584946641295617386944134021310423651614247768694226038938678421034865083214522003593245770849024565841574316836038493415204981597990139112469759423278429118631825517327518709699805055300552900261899696181219668723004136658227915316356783614631823096737253032801360103001268743674539330767968810244916599872889202927512348768699456463533317838884430283321131198982495411246334838904382456144195683958592179432696836346076551296411069577802307653552366423443560024936577892418662540761668591687153813376288799867091518484606459906 - 15243098359506156797514967646280239939663702095933831453622897023393696041646234048507235651880299229247159572280896760316131018148920982507440569055818403892973121130961183402718570651942088354346161337128613396692529028045292697843539770032662666882210491748778597653594806886179428686860523115569372760002164804547141324200334159475031699347651821717684372128331047150421518951630359098571726268692583814238693123178120217375190729698595953734674391103742784641749306571862679930151253020839746131885559439529220100673573408010030503358241473164237196525540025077365912181013625005990423475868852677739900177535230 + 5255690475638362257399238457307360285163202541843049353862505007601462600395226380493555762086625184751115928428677488198368244411412713474054849630982110791244369955059587640741014100264514268376615811171556018265064007947170013930636934147384884313813383854075773902428202485825201511109606054270857865762277783276041484093280325759164854350323254507093311242212719505228766990534053554211103356476108619251652862330204245713955754731763971219292947101514308758114325507946352881628032366094169414050064262185431900424897959185059432755855149489535850595286077746961716426706346412499279108785459921171375898781003 - 11735167256221412695931556108458718193206534259079793294272300213803733289320290919990722603598325049381287775882282108966793839664362780054849067346199558111740176437316473437619224994407363796909940075536096995026339342232179937271249243066603617955080827377621915733106309866143824944638616343607864272024662425678662729230127177131190489034736039146041986243241959067319716945248936065045832719716855347265610312683282217359266200836942245405156677848525186518094633340397072156406752381991148537020911845751835950788644389430461457174193419765356466464777017525661291364083387062621336089303857665461011970798103 + 8302348394128803793003344746874267514162837497961938316081209482018673575282236323961447564772473240567701643498178631971533114544699223836588865708105238118848891858228518465076696828738915440309523470323656605171109251226624240213166629114053742070570951926778670998117046837243284026120949815506490880221208187655531413709626188513967739157090604601914249676221575710933716835747627879398561436472079483753345359294967148179667656574786314499506094978642887238519843907989245616019591948798595668086789912328774566413342702241024253738294717136860904180127025968130168052958485714967206423439198962803061004429240 - 5940173934302127244640846126683914533823105542464333416235598774654061639095851105315119079526911607328308364526916079887821390115105957394499315119975490181037698660859638926669458966223729321648275603856060277269857084739900336824611462791589068832145068058377001105863891598114141997479906940499015306776682788177368848017345642011968021999138685188156614810060824063376630933378334985191722642688004118686048601064882166161254776679940597432471644005426779060263199065749849031544998876632851337320668154175556883963527112371520611256657550329549743952077359218429406378365576569694364578292164272710076085866084 + 28044596563940237719934602633596795866272771436469156931169097851451547611043476048189187261944276327759216014773698900604673583283051663253145919434396325471812733608061251202207690831464199325788293195811151670612885359053217177948375447258220141466918335006462875474342644669089355410329239942993255168202567502791702895129152652978255833447528973544575119200278327665698975556953278512477145810293359096126093103864847629145810034721413240939872060444912643479979588654878917043696612567273611303108262910600527243925904379647820488548587985020026372697182715473417117171449087791741870968234661156117138363086560 - 17003820783518009510330918758592925468903224090903668930038179209051018760952084161552197839306000056514230518700129693060669208967565220087213207321009593182647065510239377745301301246406312067860046490755374760485251337502605317949642088361254930421637470557821698869140909475727900877711364397559857553640136847410628070455027559096171652589847621694026237466170809164740469593379872393808310280227578704070102451645409390819643611784272177351024594924196820225330311899819060842488244260759537546381479205995627127022374947290965870533002638087772959441579545897831005923351712589490258142854910508060377773112103 + 16556985511856554887807489054771707525730266284673651791999913941257882090126876412758532446765253779589754922322933892674586964707466178515799230947949856718647643258228247905115015185415548174030182446978946905943265869128882598481633617350584664513158236508570645206220984432308900996100077503869845418576746963878553936307419666421035902685773094940406360455972327020042671220027740415556004143172404399010428430003673792368229496119875156560453118648058724220278173169747344887839737633609221286152179106829490194421446167464506258937736450296352825023527135659560256591923195134948969346728530142958125427745852 - 2984005755890026232179786208729920640060049218474798789844066402369655526627002085632747095871498229463521211283215648259873453662646288668464199193185424431144832992556284311254901533596074062073896566475943332114528949764720577533848501819076386675344910348702118175211487280945098566275622842684555570417147128391946715190978052839129692038733106267116352650646110810537431802804250045251613411119324829988343551946544957646755738306864770194816694017513948279891750702572886922655295786900762286185113104463875385823050144824501745648109725499913801512078601645385832793394298419280639094819263983109104779973538 + 13383492228298223578198320322186421943876042844042349553267301702260689382795965097959723058743277325532730105604378707075437675362028708248698875398170206168866812712641909883370297090352488607429033970923139956263340257339666329088181323272350553834528889832731892101899025659251514045258531441628745964041513732880483479028259220765040865639654483771930236437689265800726662585751562656030584942751829974470099253788555443872190916256331609085302415357712268327686166018160644739402322178387608708251681160812240381215548663228389656570558322890481773412199300233348877567226505234450158460720597449456829320276743 - 743045019938050272958631687008850197913058207494248583724436009877961892824462693227495682982889295425024484352259172377057227611077395153229937547334138219688449457853341329817952704842003976629288633455836891543414660499690917548830112833383295685630891472899298976524538436305560880534268157756719235439939406956670087987918461172095332028237512228451088248314178459649869254761961875195485301413231491216459625891327281234170294082275512416138777334037488783006474549144809234650635989461255132374134981853296334926967479470724647219448269907131194012779211970412078587736823338705150935834775124246344980780503 + 7835479308639806850197607017408626874248998745760541291829995037986895502727395719652958340935486861841544002503546557964038633007480988814585806482282093996746805929309807303089106397798493431722065766596822728068615658949830337695654535751586111623855865203157671569265343773284371723709674921327890922498306718974333506826627632690419837872364982394037524421290415627147815229577001076712929729274883645816773155127633804837531975772807406309788576748527075006131600552949117582273168649269183685320070374492347159511485784708092359935853849258252688618841028373967902757632549215528704318872129154076067199743664 - 11181349531605801355114151625509724568936674319063049085426280938523171413959266121589852269367830545707737773247603597492043786913060733139837864189215801119941612093854472763489367883152136212034144866898814552985771437883430166023776498184265573000638280538160081443273909712017961472403442889916464579469305524461545121300343486553373875981914687256052934588179620860065111205474232496042447037259416471724474701129045459156233204300078651934474001176091962589681374060124325454649866444158056909846288829315843893549809998491058862388195312378437778218016961958106304281286382314366964061098927752697990858736786 + 24651707983582072717585126126405400164501904890137036924171556424420624582545161417891041515791560422380052540608472755515632268816335913163691347514122357587246150746882823140369145028828415821958109413386774265714729881362638466311949909881077701212855911392554057752562370940659048419536913566156655429761449276232389802704509313256018576149506626658545120889448831891794025377851051921288517693477647283784302663398521612218461460295406257433973449598636595063169447791587321396926517230766058472233006308298899481538214060855172769262763156875230340713819427223819047560907018766372839001998625392923057875000793 - 7347479322620121602155720691344750042661640138806530822098910299401455640737351188645503415641771347473853186363837830359649213828039137073675544655031266908363595288750987440817839538360627958419974033217241657672078154690462771764263521757003658414250002432283548106094257208840226758298724900710669515603212870197461896513357528674472629403316920522440833715418950011404995897159736073284716484247402172068120074278108040894796006162683967540855869174190006447365923012344044619604610591266012085471731665089756930647500560317774007339652808317300262671756565531418753870983280104322127813136791612359580744589246 + 7176814661229490080397504122138770309412594926635582568136112389950590656602391701435655470563817976615804589407837917548184827139570742297724581675163084897271718344729134180972320098116859232672610722372599559634171839319726232993319555070425554869703541101499303825845288056163131815671521624122851683802744095092416044851332239250535114394011983965314726932795394505745414166318499406605745005031939636798584578466123325950575014324103634083171761385374116568152885178487738888138181632082500453986938695778417828410920643857481195637865853847531457405439147690963017424491067359712684638111594335957163194412179 - 346589674968342044177709064125645553444870129389013454176679972255730935562384795941599789570460805814257609741148050305305526869837013079884469539843862716180207578497844403484709050010053239145737227153304491328706343404230276728784549975306400279471596996849000040459558597910005851913486985283168952613596091852667767849490829616831918407080173832017585697716781196882354144878800926885428897516166880136574776490519149051050723647444634286344410824029806225528042812361304646376515370754186532939500874835914554688344713539847398364373727270599022269324085007470027617356144043272303836719397101028849942270151 + 10659715866703085953169775424117879323674390228465872263438686507383213945213610898439146544454576433416417357097896822360085148268598437195920803270950742670035369255888040145805855117045961101941129756487861222958191869945843925378040349138080555584021432470970969996917359994791770021581883416093633279916500745571961022069256429585205536009401228668906700476616970640607759195388189095588880525500171799706327918730277942177175428300151951372483771072315170966920774715151447567492785456732832934383824592440002413451369136849877570102467819839631903827572889653456624654700015813447302736358676837179516578712475 - 9215276585935519597985991357368240936368202736497127173598820643394413314359192900283225738974931610301805455298709144036224088056452896858397469085559231486363285595318599174323459819075887015406632821487428654185623081531036978540998708044781888774563183306325395366691202319726734521274659631411810806308311808023188475429072826014849729735146439009865298181083487339715879116215867479492500729632889278175542394277406752277604572003667232773677717468290088883294603536190315832047243575471269049428777662585520170767046424633325496229333675450823740491416028767758796598804860612000540717054314149034468968699696 + 25220535218616267366335946887395241072403208404627124344253110423216451058584011224767253591982910424601246687593893019019556227272780358878912966801024618971489364666996486780092372963944675617779970011141507090243180025322052780464711441773683626747828385738229005673996123494850596430525448264514365937915987888818272689070158752352605429229613765383114810268644533919840344487404976034134924012454460585303640155367625304994192444269451661152153398741944703450946311855435996110899536675618707230011318979133384699477670318647731330492135135219796365427712763770496483432910381707034172990370866123699919628828870 - 15481979215178357682136708913236981687086751399766339695669023032099847520135064356422011251686121651382989997983053865485503110072381231407668801066558983831509480286327589347571861096644867976433567332120631251413991136148299344036988979655950282200806811904671830137816363427104983933620659471019574777639892866241947983985794106458984582460337942764280986106411407574787143179099059689902948637087839069338769789614350923362118794195896681079879546278316679184371628848004351633609555330751942897330039200927701491207391692773783452288487222090126284909281452992355152706768609415697565396249044132808900559590080 + 7908794043481032592079325271264542950175928630196158910463896586560587715431255294099287678720270814424689610828251595223948120375529255818060761716415768815166554980928420312187092267144353693431307114172919697933983916254051674701149410886592920653126823580853317261953499869743384139957299507469205659302712605290901674150257181579514376140810421924772090197434994069065813998537570020986742475567559967451413009852723732680529919341872045127389471423071699525114323569420415229742387945333571141482034894979014935880305950670659988290936332933582636986224307043735037391691238220970637163326812996715592144091578 - 16147160503643592587046283189261570336127661091704921313704923722546995702460463118592747546580415573454890833793713813944091691214617100697498782517414817958331712796621565295375766951775959263848410455282552911055297593715573380861077349895367735757451455615459191962576886469284912208192305308113374175610660296277224132621520927102865892073766214329232464839369411373938469938662720827489558946362343563878671835357922856820467205620306398495322014241187766797578624054962261413279864768122218518315431846915387682894798101558569960522146678107882881307770415789060496261320132775769984369100604040290845663415627 + 26296178433486345314232197658147597098290683315052762960141241963591671618101508856768577915437523630103842952022260789602355303570652284748945594359638757086262300182249433575233463025505081745976629265294983197382766780125229917723780634113688533812881616975651877914674531868483712816005510092607137582682421105281932588654693164028186915247696359194824186896336431224303870347589385203719788134401116655110117907375123512745476782436687942725332572102365063933162589256545760370578938448156538076801601225118913222997218855205472569968959891405709479460903501321478972388343033636084448240051486666742266808650045 - 15997114897431894641755636496883201631664155782215808906700886616392591381524666117374691638722256860239148766518270949241575703662783538505348062668818486608036558147672021594676399663989133631540801970647158149237274515249810925253474268135337677616090171491375788802590271255814451008579956292931284633124731531983252074901248941875290142000050172298514793923377868677593707740070809919001248541670924955632629942061713150094083950835074631118018429523791133004639877514391351413146098043152966028354455254096191142556866870768345097749648069588215516038700163200429994035656432723694675359679874365955900247987468 + 25250037540088269664727770120672242038147561910378929140202107754272480529030827030784366583709525800759185883748256481864635258846140714766298939025140565315116672959482561035055101637024182245755331445427339781475415471883293158793426681146876491537237572817831466359370318083356017482411068660474966177932249573054795183065381740665882041012238596330186481776472674502547166511542001207646035644192782698188379308547613543057393034070548376660075094694538618318350445259529196062380865881694867365507335115246357927097095156874785029845962742332843199994192333096929446322803925657330089272782503995077549498898049 - 4735055882607007560975932831513779245752662968203327642847728275211382553816744187965005044039387284764837873856396928885341619438731598674672369489193482605110124166004381013058175721080067064207898379428976509495063965926272003063397985908749492605180339798351781885714679123652174408651940976052614528410649020478500234085296607068224710152670469480369790326128095251401892383220413550221186167581915358341741941719925947522325128648267910303714439100456831348878573279191371640449531133888656038857629594536460056467379293391993274187243823209140672753277326508869090203185293348878669460730194338606171811314542 + 22969641149767801003562599960159302365730342012810939846602572457650482447318366584268264374060261698945945134847218890712503502503979991488055113623457883080440462329045764270182184658553204870161873485053375962474199144782928374363848378112382608890379792239982707378976164617503887509927440011597366454084760189845349079698367521737943256981622817778181483377905320762005971794563454510640426095033340046703702471498477370970175562668896281927095207373216019365101366718340949739762525581536945809099239305285894126885169295736770933200481531252247637808953857891227280018423632694181080646287227515226349409530222 - 6744842765309320017854566389821775980051481507083209776014035869892657018095517344605555795016665551626989575065999278669527877777591230524139100062177450247192726888383236672701205988628328827411456852324691218510722244829390009569638779651257780205902840901041931978652595278224443686596618735935511254327564787278851761845020163268428722070117935910273850639736653302169753299461501242134689773101381690337916768252004816759300571627729846523430936332090796032523258972934274698436938180950556170383280797808315668493783888536122900121397452795654524274141054663914944107461028806653351905756210335900223167783234 + 12183956430100428013079193474903529683640866488432193049157567643055096364340079623162110062098215146778177683343214789414152655304655868708939165685839769763220787950059420011348735405322544406245712569687031678245926866275318565274977816617858535474839188636021796163455465880997980823833150457930065116957203042804274317660287357623120335808013752611575151532677739914964887536864866069564647280862911590677802559163625764787228973077664245953906496476193310775925564311074924579007763420649105552195956911762408329339549199147405752955824247613934240436428259927660593176509170702242239259917997697806193957894861 - 6969548079174407048592063041523948050438974318067978276357718690135241979593488623054067978816558480083977333414849919743260991841635120578038784619410089012561487132519510023982971081827459897552012382816715381023947180217651278242656357821997428231791739284614018466225881964182022029381679126642761605893857758925774774476546391921314395967053504722128568315615009354295884564817759764377233378446706918119350383455208417891205736525050161245713345680145197192413876840310354315407157317782333750275891439951701011993237516160224550859278271782747192666643752962525977001186770651051102776514697928056255612134258 + 21027105998206215483161462128860577348154116947439731711983329321008152460443307192791937248971270266468568775211857896361152773683221824691199377737935117583493944138454108618135747614086832886810398239719617768184549141914526199807785740187562995255298732347531260273343204704463904659722689023690431205853058246673937383766779912000106658089416585062564177088599254500103191448141132198988784429960032357484365703308570332158436736408672028761418523702834346130049692365663526920606354154244402678503217476340691430955556643471882367367365832809172172859091099767892011081038393582027407412152114204531967976786332 - 15969527105643478301106125052694590312693713022260224004327184384239034755682145913543651596866598416757192523667597838001923762159072803207113382724694827069367770002202054845338814829000024199607694736560234783945735649204858335747413611518464520043732978868255088188845682239097461825256744327773707951794226497032149512576018543249737935532383561587395091542046599594211631585806184477529733231299367707172344863480607398703491977608726431832688283429970937028531382393405040319012970633582631330649113828183932130854691692992052450985920367582650166349615761750711238736370797587424813437380558435734516525256831 + 16707226694741692325401134561072064984411291418644153282842174635232055910809870430202901517701099685154965543111229896417535795411112513976488793716982096502104220467646826434208625871397725054939068155801518042127086201161189800656182206178892529600310479992535899147618019867220875522422319647747502761660146099012116044202279882989117212180133875034663434966359288445182262708598769634468584783452458518017985978048630923947540561899715655334694092006030507542832203973705679834074552729060497251691286499425615766587376472055130540657481072097331828012229797658298726397138657398254294076182826535027942514905404 - 8850519758198922399809290451515690484299244968905858150211602908862541796585101179297212801620750403406378573836529528606277587249434043662369463267850834526982777487003891748455056047841036326452979182404225687451677524209803487445121687543341836241368207433075523096970061400593024380254327599414860601055567563971148162862599514823612404005448693976036177582595000003702576931781443261548595869700266885234437518835992051625494685044120393078703414820724667119249067711979302528412380249427559578804889076285454265789313225239414855310394222799628377787596842358090216075793531243390649954394716107970600784316920 + 9472545221858660267381462663916063608958075041568500394882759927085716072196711945045643230349417380083765344754670504945132974976829554625565152275651183646834820394506899313327005339831320230242422106133594534352044872435126051687898941822022792105468688234715112422657685481792364315850730751268192068276265421239445208331081842277227405207099904398800840010570673464333906163913219109372741412158005879932656118102174667393553872988438618306283138859352823000132953990013040550569051551196305963923069123597783161762873323658794021953007630294499765305639083067026369295206224195055043439805488252817254761609164 - 3864282322755544217974596764984213044163917088121528612892389319337761082501961010661636209475878119257703577613050674860638016322110209401585054087795565109349794373709388250150919275517505973641688070928454692497633721149659309575586677945612599909401643770647735782432496390924051407413340703701026862190074460313699026522382112644290919769078460892769347734626411724755759084530882217720259338315123114501416295657954226817673039534902266371922731978942992695164117857424775397426873786093604371669493532008553563254897941916009508142248932666198511496542253125900817564780696569126963331281902439297170742784096 + 12604086326956866171644436396019542981152674137330307456505363545946166158436482560388610815909513185953392156395361008772752790784490760234399750516668655143449049897280188697719189481898868287511960051432651563687344070079139201641581039946353075221201816979339189922459418901874260540699250861440166752850540019027967221847680122008329417120476555434315600078900874694587864436938252967875191321460404609626539543476809942579053015491762536722295089362415942463441749614035213873961221324290056501155184476843954835719707542136503202109993683034966454601610831985902577333272374792768182342856102212019347135070228 - 11098890388441662909286325052905259218878183891319419612441012007905553424139926005548781244668648906726341652442395123622471127983535892819248568329308228833437146997228886451102069489757841424709109818871436711352633847086017809795697739525419446792435313399103831369357577243773413008071666957022048795746396653382660070543664468232051167457251289131344226618830770231888315252082138327081970556061244313113550208999007223398091238517475732614269250786539919836427805529994410516782808246537526135873546180436874547440355058322079883842498237870794382326616577808413786908214561712828801430114265991593865077331743 + 11694670376707875470146376921481886425001730631534014895220796397274029380156917234630051066569576196557525602067028857235026659538990914811343258857819862737131471355875006338972899266769066691824440698589805307356278402187660074290867228514794271429704940816336988080923902278211967276333252813364541950596006294183991903095460766106305064996860846705666794058463753171040208962416113921835664604534545934699279756036398190272834196783067426513459685133103380580001241658910752809172166511670513165408409674811323478240555894443112980818216563802993213577375241204604541265315843118622868839557009942652037103278374 - 3440421659740111433761639454267884630933758356848745177658431177526539332970560536231664839644276029046689254045081148844638691271849607739315410078849954090294353587980515263461319766848184431517858042515862571400635040262543343170274886599497144215353962668765806576562184115271573086954707091614453310580259811827264913320352105362771359028681361356210153494026750738449409829767090381981568913156303443843361834635929197128565429738484667232648095016212643681061497608659906995170261230034483500628963041863839540285445649254452877747920705381541978326028250056066688368735060627761889327624332622128542411198774 + 11765976625888188436406633620467878751937170269711124007949353119160163553214865767721565392076683149462333807701944622437501859491787533352015357990877914688545361512381669698600552419627321596374651494623697984993706527074131667763144381195311107457400637967185797617547480219809567488720452665456111613196468934670162607593949748945995261081016020176127779700137135153547749423427797247846290860276684888174307144892094918278072425860023766510294752599356379915494735749402191067702183695737290632771347402385053881542251069015638691661264572554269641517514241334030848160380382578523226322099747975673786328593327 - 9510123007107012877134776780110941884486547380822604482545074635882702963053130914244232990182746566106252381984777202131137433254102461028881887094114070314693561003814321989641553905946763604470087192251366389874323587784422537698487973564569114009510055825137589234477354029693959249189799390461962303771708193827963450520938465425974739989297840419545219451794775654874117577077604289811334976179022842440296361665609317028448842402344585226371701028357081733857982734582954812426616410670716419693806954729717834946478878821224079841198913976848562077385863997662613273661390935019412172488031233459479244092286 + 10906152871342293282973374333637705074266191451118786107010653096643658064073636783316770373847171469725557763425355322009945485648051899985954839219279231817429410316577715227017207479638974923904909801511293920287014863876313759875156593002001689202894518161646396116705001860828244570953128568342164373798854027814252425775263655420009509506508295744578918764566478019124233448966123434614951363460125967102927110485938550551547931843908850262424670766358630683596560164524860546721742998700961662351064783972369316151203032900226889305555269701110869567060566496829503254358816345058116918977901640110396598533710 - 17667532717789651569703850646441684839335829805922852077883168911497154271478309936866271632279661340686069581669088751936955074141794464454145355117832065727522669256913208338150240796046732295796567839386416741296449098805595130853983878816866356732046445132289400321299487570290510799551737955913032769584748740090436264545138049425459415634256804720054710172264157726971997098480356002271618745207811317263032047231191272350703898436004224855405997872874266113104466177823010725128701728897936475496178855954116283530307569665634824972364047330111618668273315848697880312886499755052413360120769034780365835331291 + 7441661230241437850952196666316391536149543578988887221072429631962006715221224761643746242002081494249366166282270022520660734984810371541863318552609071760617762988063350911105245926866199095802963735854317411317369686935948247289600615173534015397312678380339211468823884190997725993490156921050826876820648977048238228838435795106490614301198012856266520037822665500525662559062832379169313726669215832638611406035262753694334143918711351838452366285044353217386112431002612326133025093463961629294555270513939457995859057441213949678305628162194551913131155824153705285873689453940805284408094477773292368881046 - 15402528462894234648638545821836710942433062611262197222134033145743295991200182955044340381868970589650766199608995651296959893947799609308612377581717558391901221300531304451358601784226394906587600696617423886693324475059377438548693889033690224202622567294618149496712628745574814035162236829600124479342358149720913965808454908519977555616546798964457317139134449088120067772113606223810976189996907499469465958044259165643542535543472503525423260829681176387303180977682121198558333702411651777339741722547408261653740254026109413119301520003726430842956091511320642998479742048215918093873322845646403946819698 + 21238301357264389089176362379860049628352710476752178265398499099400385094320152182894803059575405374505558958440372188684203278005660203481970360585930519752095221695892601449406256180417409019548693127813889075949796073525998765667638571958553027600561734456236492409228459115705730724832807497747925966280129986283863705727265662857581665960415013873804826503852995804385958842173829261765406546690843136097352977494673413827952544657069920669862147088747020636263648554469236834018665112192369831804469959554911489835489756530024503074049158561668798344918381791659619350437824857104346348455100654604748980581297 - 7700372774021096265279425413360907239475950694306128654686388237466210908301118361761141565956291250089845078116524913299917599236429933907702664772382110700190435172935443725841852227773416907561797621736388009977244012727594801779162144133343078701502159560496589217351606410441584289012565786993356499922874800255483622869576679367498971074310902392814797774080891735715452566540053958273817008767331882721775675352368061619839460168090682041279201149498131816010414766070213273438159843340047336071535572759206238297547622139907090951287182343350027059045259184435984687881320529340890134041658697059104447019278 + 16285111015526600814858002992846890673673134630441972537724344195239741128196795083327815206449110174180149248382339362208884187240735282093832758644697827144116870050335022770811089214845671934425135525983949521349105924239323285348200485466489513427490977124754872292092713560795126887666920105883260594874740677226283013218513310218583742872022420411960503005299643134517033149719437218593912209399694614480436032529445016501516897668104773257364670616360521938181843171666686114190682628622961523908670288196582756584429366440342368704497944705829941883178287751159556251797315123455654247021608834394047804584388 - 3857661607722178783713710828919370724556746965935983885505019872487086126429870911709888237253886153768716243951472313356447031056272486393468042743005370518016653623820112443805053477702630462110577947022545852704381814142038836454656729096152132210393439444703940779467740632147359649020761369195984995625215716634110807826424616123252909360095721156932803537731864095960838557570816844707372282509604643713950995229545200611989975888903843020026095888334368520734446622432630111130199080839828205964657543426864972678001727883165991929702514201330763316870348360818298238089336680688418077732752456713708420888565 + 27588968176410385254198339027004643621409801137789881540923640398808504824605259568423277407175031235996180180041002964904505599405970820064959503015791429847298719751971746238344081448915687941493993781825504565896497855078216151532831435552521761623235094887557464993935166000556564125564508033525572365975615276733113781440913240081078764071300659940510327313937106886056103521968437343562365253908848604946891715618111531524564874558517216922553061512198257098233346928065728781371611659747150665611117802399711572721825273621348726104746920254200886939221912023285978333078335476416463803662216649341473956021648 - 15604737276059130626722124409230403186689811710294906966001130062405704564081423912138878938324226208791270018018191177173936280922057554435619264830332162213936690425164460152209209142905707152717989038189031634520193890807770907760718257890727541023129594533332158661595777124301556778790838952010897805804241491382952522838943487438092774552128980233345303383459204062752510625971658837732396276011219813813284792859082893046392314747957813270667180837790203727605511901294597316787485740005294916715050445444249891115772159308832759249694773515830981403574757778571537626114284105011148633227505451274691877514100 + 26808036556260671942323559913079256869680547010090174978782897032784816295446627671398573969110069121766451175760840133406500859820524382141776017713717384267299637249602636572805363269749668540856622235738172751651176804988807563253649899099320324051538202547462321020502043567382855546804362132861878118530837876350413579988010487333748238109615486433807113914625592220624651842040260540824145881819364594722231114696444266039598196805934898135746429883809515228783827629772898612213270835378192119999904940895506585434371514916464151959208816873757825027297804135861788521669892817213380969080868599634263794127564 - 9180053818503758644889261399719625932483918914482733618718857855665945349200988117341324176405881397826004354938910138312813102710665986140201528038974139040305175271652001320233827960453805367621605761239079637950184502251106028765198929453390564705910355819944038874939882962955379096485799905944240527940518044023525225983744199575334626531855071415041392089774055562744203560608597196137139330750119755654866890584958520458297610560697521889709265323500006585906294259217285074508811380405516092850682235216874268813201320411507109447291690711882917013369067710896169727295367859955208146453956896078269375359081 + 16152599530136190506876067573038539114624056692776207540378025823140162004047133624155391226312650098271836969174748913777361127079152758124230206787605357503960353276349292419920361696299858649773159163383705541128142656285831869508337673176163649844032362838101852365216245641336347660391163752446922689076623153261928395205345392233497105034052208954780436878361193301565448698527578597932817951865071009984086534132963628457430149035578277982822345196382344343006871089847397665346158999332725848364155458801557061005376145711565611220219564467017638373898129819727304469396462641021950206615173488801058491782459 - 9770553333935731865070211698858147674816750109684494486090371017380363041375364663510324925833379000106179332510204733638880477404703890835042714241128392973237643944334839520814247606702425596862195063595881739062089240650320118993980881147258773822530893150314047009901771932745118968295469866652295838449893330607081761548259113302586985695201535325000806114595545323144449394888184649628448963334040415341280591709985149661904838423605332335950553455461061148677218157651980655553010451343891555110936123436139890053851300164552319685034365084456123003145272221485189900001629362478719500016556928127219070819824 + 16416577631332024083982340572937128468319340363863381837790192818590585325291691824500770838801965707153411771243751098778648144880642649580929703642599941960155459130947483922400436211361515798974314809456571040278183534415283605376785128095884198713746554316357659107613606901075549078151969517311050727717232901819329678390811059386688680983327494421997295896098459655140468934556902450607915084693816431859194422557082767802849546333361483510618971369339972147646135395160043920138455603912204497897292326870399236725096313454808470794484017050275892469490704505587218684840953567431669388413993205125308132772817 - 8305165850861489897324972905114675689430289013194523258207282960594952676362371691228673946403370758103864076953507855423448035571033474527232359272346867580216475561851961465917351423377309079619242826740136868566247309593296897244241501227089199729043030259385270058401517007156601952936968610082694452650126788646555416193437907329730241632762009204926580128625267433934572551106238799302301327908568302677199897867318038035948844044197524164036677758574007495013488659688193290339840839773451067003576671687647201928654698595126013157216473807354602139733141690179198112957938075511974987970213570826756571637065 + 26024854861922852856454565886240360824079949219316268648795598640744145118142942670825551547796819315522260540726107510446987783586772755174810319642619049423877559733281331570750042845747552521253871041979110374999697790696109130898403334457553135826291895748807360612455357950466764665977579477736279568140665779149617545979043141493495022487961455544894798381665527055137635120433119813757170501378425233486025392883249690254949242418444373010569024536086799986201954077403665525118000114480633634839362069514054301734907401313435464426685960347662725418611751770991487584586268413195963192588323048115682701780508 - 8781211389613307464257678421536086655413397648200806564016361600524099458224699418647303507157429907529186151947378996127490977653932590515783374752081273314815424708316012054433317808881748153336281815340438658768071292214767938055528847305815067039516074912452477780643985955150870926400872795606070038213514977848441122875141809653115277457962471034304972092487087619798625611443653564896687907638461898503210199872589147329979130350922527351107225909455085620236961419128490212373129737084796056675603735220168141976734064392066561515896339980705525264965075616733219557213657128610171150879251503435068712569892 + 19399400506597432640264081618817040222851156441074319604670185197814932814368903638159477551241221914451304072806281987846179982277313703689347139057439788447723945055507865708676955125339028065983122014005702347405504855063362605121070494904882856255433534913178904568945028164956678094168589462601906441448835048057941263806313440880928468856011368897507429212825815044928766632806387195858248120291167126193104625050154505689183030286671619850345206346827803680920890833149334795452669302391785910734877367604289734238300465218241729183626755941208921236994199127372857212648671591828910334903391518808218677426082 - 6323380225418740537239237681597919562555521580441806718251527292499340881839042283203046723831181298291882032055365119300483335031806232571241388259136020434498411898358797706049375792517105992177625289651190477812665513628471491959293158059783927807042893634193425629403737211296950838281524082605780807724268219153978254518970392966245605084957927976650036185157482836453762273236034814615409403906628613618423701590750704395464816197000913811353293081341064675997906326275403408312779201293597448636659854375844471078808511995783441209348355602873782962490350931445568992335526912231176759456264696619991705294871 + 6435671942722223700491191028200510461887037722280835944009197344285957967887685302123158518832614994855584415305588819990310030935513073462322573232562157847012574237223205081268689418007842195246579624379501542359634388124497427085091659336707355365026616297388794623963497143465963504208656267464667984407120480171159381530427159228771667111207578758928673362085074002123628239021892444534072720705706269097099222103852777110503582225767085176293459189336877042736547217059042934783923274490107461217674928307485518097594571066489574215424329995611657819866535402954185314394249427157063726234345217198855135290075 - 637881809254037188927318943751520592217597021093957638990287872429496061509403350097783673769730650830406547724499351586697337211944821007268897513694117335178176089194017864133438440522168395578092856618466794731536012861271753966605301654587477837723632253408209604121259200348002952677026309536215286085881606452730337577958695696418406654734952000252795899282936387223844656172784349158031659222010182984712642952241672261161166981302351989220059954246403059774427477095265362246523330022674771019106485999495671764696311710231859405942240724144094188141438418869258027938275924189350124853363332914983298757307 + 18477080341104103180386848669769658286191798867099183407908369858466790931926779815095088796745235739109179189911135295854195876092179135391449206112732713611067520173662194341970572640906570572266534984543165293356875618674324168273835371281944545512313916345855048459099246214875813290053597545773339589073559353542996217710483097610751705260020663057719783591004831675989257711084935232649703518851527790266531029950896161708427860941080452780071754145727178268396408164024834052671684438168168862102177883118251280419441015225607792620045656906983826727371285969280459049165258112202390841766977245463275030261527 - 1941325482206551964779954172250270893208863884349690700907011884181920496908653236100980690542460484129211801773111981105018553238167774319318693693514967604951290817996817751453473721755551777202783374468449149526495161301903239903610800978817943258351373685423160093510385677588945028631018049526984900424283936908579881128042440682113300489678795220070245117764365402495002006852959170952267186141728569933951125634256239559741104449443782789444119843669150998076830418475948566366523163398345369052791873054940169834412666512588324544509830821029957647461943498390937789904135967226776158472124912928255713288211 + 14679748353901722646386754470238208965656554078811401068621532595343713823661213925190859018871371976806627833441082984570520785799671328266322091584289852472037606109116628465633970868989465902389202503431714760942708818973271819995129467361321139235982441522298493869147059722375909689160005283883144735798794371396707462632469336341050341622890847100427211002758964174093813045535542930655693104533179173920054051963485454268231236860598325654815090501645750626493398909958801589506946652007529206149955983417651175637773533587869411486866536506498004622730234824512845885725459244176501631108481578221822029561840 - 16571205421645105753004050862517173434142560667465438086455027875367183809638956984451114754745141782285909915752798850690482971970104485297960209103643742365659300004913148364217406189538334471537402126341663579894106958612518601835273629764180846914079301866776191256798762832101041439953093625106003130352579306016267898501197353444692845169409430945198505402731719544561191523607388604294439852625705555766252579058545438206532694956319093135438281782188353783130625500142034076455501498076512513745510806178095998720565419703048217139164804982499390288327876992921284735736300198822523614245458547013832614843981 + 3482474507785400480990915271101163528602614907495191435048553862623575365374123679338164535828266963874125610485288060741027858775515316145338227816586720222181133252606835060609319634620876994542342193900231650661486777411390807442336604185668590663281879297216686412496589477194703682450988590539296972185147659143422368891447110675671243804519442886356986070636161578911182124778979472857846258973040903393419140579526156244782188200754439308197168827111251537107292726086027243125271430870716216591127316865476964774862199111890499588547790776543376478998826143177245959303209712710429692150430718586104529354096 - 7970772999012165005242530148175328744336325444147690262861510703295950073934951980975833686548133079322256406494629408769105847175034974499289880559312891037154480574621182982055794141722753121651282494050322312353281884511968565520539254356681641299724283461785876193882448702693476919980205087951556260281278508139471093527137307684978961994333462984204806086458251345214352408427207312755775060455589333470151705055837983870185965021056804807718712259679634238268759463663864002997707197821981677881592874317731262307728407299292649974265795818690301945003973702524871528793366912721582878024757712495385544336708 + 812500010178665827562845484345450047100203659369475666381450007229417159189740304592904240456962936469613096888726866049062710991671871557213276558598882638107071291534445184105383504349352415765637964435475035267021460263588294107332926985270381503539776541866787186603579564764207468801032082925691351920825844028290526084054415950675348294051606672210146582024203475150630687020722912706730347765581632734077228628434114327779451706701927789084888412352338184174532953207391728643449543608898794704671022144895975187251070947450453071904903754022104103049959378903591801363379860394134468885625191550354046418128 - 7717997582080589255675356546118868725200746603699796823624361221981653706478561946468008208050957186497448169714209160636363318974848191488590775607809397288107263750194159116855074016812306510975908543838205732495393053286014490277999707396724718928370020085973271232851953441455882011772182110986856807011303921642715238282591942926764789553944290196068100054056844168405302336458789514384481143049961887711922386031625273186313650388761153206101105928915415225516849542255111063890626662197067415864663009140333863699092755112409542170116280343701539158255640709099794420347902528709704406481353312051178380855741 + 15713724051541766242543758101377784950349291209220162071602486889614818685140219753354819958332656739853802124705790934248942229803907417923824693532861282073177469146813005356461643335934292241410195188842579105587200985870097283145171968346469497473163791791631508616570134243576796841742079245008617363982878444338733576590328151269450994763915247575875792653796698046206821113277607777603851347621080721290634061329841693166007593184519464496976897516828395483697818282294008457605994197469742623246130234164179944836657167257858187842863973688055485396615378169458111646956678289483165340799302762009027528615530 - 12892169863692782192791213354920856015182020002339280260261001334118350632712321419741846876103050977179764648979810716741176463922498171400735768568679869445682681542951764027182343737625219773290491525047408127951215523774545844885861857159124602686539033889357741582845112553086039308789758348083114344928543384509176777602280618555024714313321204181726021130100340500298353521133990803818778513667281604152820859814642388577692735087590226881705513318593717882368971893596207459704457276961481197970026129939923618116884051571314416690601206422324644436237279716208894572052768919495729132699697963103883899483362 + 13030874909979282635709608369407616797033739571790136905389795876567944133106213531874122613407382235099785809902781328311836383645483679342649649952386972817159849063742594614886851277017622102885237737891561658489247670451683758632537854398698692452927112901810278419172198150522295458618410289831299417516855733250698044660027749805112092271025757456304346954713505551870500520708095280513437618513792049658390604274898493419761907632563301839694723051386475273880860168437120350127707588688277712593507387954804595863167450753805654280016366921672698502389044332287518931003374680677470503069587542486916384057243 - 9715768865112126894361236727208489779874835540509987722969559466406649110622840719287173953518008523827365517923190711178223969555315758688817608149164101210987205268487386933696217992553564829820895992934828804394463038787611348122737813264072114689216627311746923513069852471614256695395983760051010116828997383111862215989591803003556678881143178775812835642863424078114716523929993184680546388230589493326774471113235685278218288996201252200393555342664287894220855589210163605605732640074265430617508608507715862694922267411545389858847930576515573198606259918435848599704480788928303445804276681715545556595355 + 156187331687992593635904184581479801613023169785728260686450718785816745670259120820607254103217196405269665868674668321356613352922689003161960672570036857668079052265830410707949682398937260464578693700716353368731370496006040900570002953834408032800944295630771715019415188802486996252595514516417814858391529770915001156618382158960634388924634190774152497273640813580305814821578693535047987357557644632848104895590262397765164589141972707868250794810219535470424156748287721191876520675516763025645838454232588805854554253520676590922645764166832218964481570481019078482690030246460748533864881056071700668391 - 7247744784752724836088914385798291380199690692031153248164574040881905781657112475982437629276492139184632134553342035512739562704574611508803154084272887215502941229243852820588287624078796479334548430298612904628045223018174897038463731770768489279448369762145152833429121875376620207571458370311811373992032383976769847227167351712392961585083848189141395389689557951449529694211900638371984044202442903255359642494026406379344026924317261979200528908004839120068557625603486067403487671250926262085668355724216132840438496424883362824441023227640134372061454673266638637909263453782371537195138295709878623740698 + 6022920235520664371435680982374477386945084755035376090020299207980275445842777560830054664369474996692748329328995660872799042353389910649336889332990993197954321558019145000674466314949568862847394276908638079965039468765205723675702249879662213313785348421741884196469438276193648181840968689860342156726856200235482479411493303349808439871411648374548915236529808874709793993668519794996964729584663690586023411243000899104233852262688684950080461293343257806235372103682343577852581063383337597314531730665619008102104669066979605363214051897477951949723523910217509245380499913920130962248207524189734799043468 - 10144318736260057312605445982374609649314751113547587927796282329037906788343267153162864296452624890366909677778257531448102578082591167682004658884262555341682422965960811865552678881520682590206352636493149050500355738380719723123059864106128287226581707575898292543447299964826016022533238527327072519670631674242786513492159224788824873022564222914341698685485675172896570362126360261118969631956878013373357051430041533125344589102256336329105272100309180534143020440715877765527084113545503757888251039807080517184546311159709368957205903632800981650543908339986959508897536871824379279917262456756459025069560 + 3366333778415939460355187939648460232770389017396050974675790158467043802916371597463507765243535327741017998108186732648494904384571109837192727521111380828465796047135132984312597323543395422753013666605333521515829378718313041934904284968422876992402059396950087485516859612401982197277524282861244292923893591334979900526606518791125556643821344013941451340472657955831602870281818154826483025461944070870059187645787347473569745189115720504449227298355117535573054472632271341123737701688030292881058053714949652562178619289373943933186559141431353984103607087602531476772347181224324643373591455635390855147650 - 9480150622241173547255698618735037857757917783194238230914247459610082275604191575077110451125231283612297030339231051906895366281246481734995066799454395775591648701859579565284731771950829933231062962061396651612632990462824156461800834101349700254239310241990482741250939340807791501148817881081802877496251920904262710645149975381458317042739408184092762195553264659858907974028260597203492730287410838733971262035754888887346338980157453098810437343859533209025155752530065416356993839781240814123192598649436780112656719678623882052397071544605947379414024434272353690440704455271191549490383869375125081370567 + 19210456430456545559234788326361549060201319483864554313503105293600763944894786021667450796179173625648620429351845669189606467266322356870793137910165741685609035828017566572174820874092774502765807593621021548960547811256798345720870233515343053901636344573035192332978487117227555747771778216063101738429306015582051204449100952174156319758518843903196189141408106607047272293404116471747146042782026857432114203172793952162116281801085838253230561009098569233977978974948399757375833103176713162087453385822689228298726657725875314937542268416512069539888284144096398015937224555507489898778112454520119673645970 - 7834175598625300697026559314016465274829074650188368252146208037670103516879865869995361813666011309046913044565277928409772152505319054671768369351609358687952270244494984224028460928174639106272541618934189256691760586440776098337957008221514267725349404869914474275192948601058668222610181976758588460810262720177847199018317394581350436143335264260611631697081222765928014927196680769376403081150483682998204063906327207768961086885468273617975437730054957772530625913952827064044690301100789244620777734898526904367422158806280137948642972218727472880191750913174052115269928343256753013863883758349479834454095 + 1683019873449270443864625461035780893599290422805545417467125110422446451862019797563018429188335241629943604597524734232082973157542904884037429860805916715724438943938808044701357837806221290837453790185536164313468476664510834514619149613718041730931790105477524001123445751884653088003851614040437235861528497969205587905897552298328382897760414540981703228572534064041537106665723706155780072169184554985454670608341935210373703690489272213192907458344176801513933471412374843968358065923106006850754500521931491379789781135884711054936804086978247761773258313625648692471707993030859832340253036128978176632253 - 6871423823835553495341913450881746376238616941761846962595916267416929980866928423249750792397443876133812082558570000835259768695078578907989379386204979318926210586448314357495834313844376679150676210763442425162225311510616393719278799986763998857912330514715541152749358587413100266913967676018646176350055844149920897966725218226841290591390225331975094778795023519776964242531105351610794086629679757859651177019911424309175858988448881311508645264136982263292176937457477605654991525591414549096118616026336565028348198904356727777598856681360682435803509673598047417760722083019323933163941545983288060758416 + 2512097188310773339344334225113046628006864652417548628213615011255157902755370685154771369730686988877080940877140176832849535485927590970847688625380599373100710433580578475554501751322961708249197858280030226419332498360770123217095269399490885570748381455710453195444065610721943104468279016928356041196584403468012106855869072348608017334285509457571408917353651036292529123905965325361310290398486949743773353129279867298775067743750964487995787748918178734010846764171280922570399808946037961772745328499705266293415921464059380359109984404064701799047868781612485393907208413721114818271188965761640863027066 - 12882180238708917924905368983499096403676812955170188605277894482713246963608575148816743444186095387896703498827831243965505886175031114845416921531682215041227747023789919396715300942807279805710969529393842492174046296341409084708590737147321716510092025666321959248576000414869156142716537670564229064675698043532574905221691442648584800011556701574996353027611183686250982904259497204460060464341107356873465296894395904998601829813334101274226700369006472834769029776636617107706442053525586075107170552016880545064635287090015061437754221603936339427892095622195951452964807039610941665756758792511751143239258 + 3655426323159675899497379235998853025548354625005154388119458548415320038936933153925712446338259750368308001305042975682707188589112108992152925128445411403983933040901153782098665943385969546840634438321012354353202776204298360800101684774470767390984172599346968368578345063964052198626765844126731039701972268897137907033529105424245772160443254603360865820041426277899332967252507139336183594367278516166711126187531013437919733638195281559315548284628937507896699402368303500597433542211389048139124156048190379107503394260517310161739497860362814807938256473885243847149133938792073375035042891364190547573333 - 2035342735733441486663453657315956154007698028153748392730261087968805053909244368122265881902804330033108170842308705213345018217980334525290818493758084044538065963075958035066907775435504128903575206660908053684741792570253513599941765227633349353696427138091488057686819781154446080740121652838598341222630578585978145476396586119533824009814309436469003176902355289039098084738641034119665067739570808090348642993906878959339418874599051353938139480095539760296403306559642208473993028523786524807764268616153988657534631653245213901795685241940408530578801723084695466487743256910993311960532049236222092958508 + 10758465976168965643514443057297630821122566720535376722053069230324773368687520565517471923372508580751886329279250929888978236178178574323465287039237880896199729347868623544243038607795003389214055961728436331688848608439512227656039729519391124388009512708420507427990069449404903962729297950712972910444343200429123252303020144345553786668188604916719405463551965543402924946660418664939649123855676989811739162529144906378070148231693545394301041545816331599791911669518552833138689001336930939110732619955390369893720676899207610425384462780683155263892444444613890621646205238760154501763779583975519166253596 - 10681014332779315880049643710079846023290503759780590588718330004788055750629592957223151664476758698429936497221867891004603500613303495621757513372536613242953707832767165719540119408272336933917163114317428676391678756281367996818000075543301519747305502861255191684088459908755077469944224457113385147652969942435598083922232619527459541480672759959284745735173026615855881661345417029714670145815973487438691896352902128802636395234154181665085742983883515737327938193053523436187965252782037036145589758171632020290504743988657246462498261854710240985612981572900206231572410804973817206566299068651822431810174 + 22157435280329777110082606427712316533745005814177892394366029627477199542859799122804076760570540406170159443665131457757557066839269324660702944610367824192505780513895862137066361820937675281534032288530539377660119139174171980767477893745188895770746667005612302446969384656050371384537105435284849781941053071952659865980628477987195570830220335889082029660822204438482125045360414992719909004435498521172682324057146688418582441414726234059224651499077605189360033555460821128157207159434023848920367550115709102994020010458038434572750084054942132560712879588910697308010023774216435452572954945439832111102246 - 7149708325105060762676446462163734564335133665081695284359858293254462322112600801872345948538578910880609107395402253886941726879512826499939525659389860832448167223350402970068326606487584036522759846239260119952030632274117672928232734682900065090682128741546374276043922775919134946591150706899746879392272208561018460092688044118681003795613476831597266881164821441363231451756695601201356091843951256526461128780415314090858543293044457299352331640969326628933510454737429194927922871692756652273806846309419051341473694937360264541463796666955642068428976006168931272091100089397445291829838683182008383306858 + 27408842938932138645353709460933199512199925361910036072888379305260945123264596560660670173320462088045231256467970211905046894989906455074149864538459250001759133495333321819023030623130047498307543724536751432044867275973602807844180602811607450182803535309679919871345174335437918877264930916328651412104391389271395201609891860674500995683702041263432108018457468346383256573116806405361355875185504846394804347242685443432544013252164454813168099665047840742776207796473126024501755556516945083024074312194042031794879712115137416412157330652098972272474739473187867806235518797139682249515299295443272376164474 - 7206234549120528343693309610675759700313149023531477396508798130671227534394465010700259870594586709307322440258347176439245498390504352160129747262704390882905905819051860613586467785640441922547682979472391175875644123011492273973290654781862001365617909477131914014001201356212412074967030426081649028525140341757807158066010834778903770376822068294259568437288119127921025562127448361072395976479611460803664106458610529697784855582680966099371710792988248952907809449910495621241483829280626334316312283172422965332501207973358249045735610263863285466742670275790308835680588600942499531270319555485623357933731 + 12577847132411011972811263276241226374327026405367494581112231809221412202955378190190481881447547191008172529539472048926899944991859454299465265371159210344383323622185700756424662023684958547343115271980018678209645503894284566884899960855804561151211913861475730155597523127148841093848263865531513879205710083792490060117531909198169337911305566297058528408065333384947760451130467399189124106844089662024913234414573147352785540435331236521688345464533596584271151458789889571780645248269606128882323698232707668997889327716617920933012494873055030782216764799616159506104656519587809605785687751420506725820866 - 10183234871734126834836228419465117029232695501262790617525166515115041514046365857472409881610155308991827663508843212402669768946057960284260768698209294147199889196598942257449428111952051838150299307626178013347650425533490682270603948990394733539596537767271351854748137530940015249455706360381536707294017879087049782286553502586144651980572119337426115293774752178072209716789977825739364719447781346605438057518053695115554729662235112742086305809794435276085661075086253335464527490517074749821599972641910349031039309308604562166235488109509618125878823115380033345834455001843087767784775351836465027867787 + 1742444826422760906679233798426729893200391558314005984435242129504183442740325086703927235606032041750505115836139990785369038874619777336408168516040994815510538960467367480014234007744108972802406691605972376524302234457867936207626222583304281349301574953290230805513087229901702180471570296142422081419638247849615514933976820707794323762542921829749015069421085662247856095849199509214927069077379758438216641247414730805545297875304271619897639744856140437333152984917462087441994850522845906274999208080769687466888433195612188502843063575430404675500794625793686133867847290060754090285234514720146241791070 - 16545836193194426658931716934603796553159474326252422212371569223786094164379638701399086262070681322527158542132436981415843200346220633963927920859225673238536019930695308024310725368241910257303027229265633183653854664304487954839632074001332019583839863609331769110082931337100516341068864166088110232237629407698456701097718646074299158580553760933585640558693921265433213948415200444110353079971634600339540706237767472295566476267008098875606695277900653659314028661704018990802777230597772757021795019637473674611249542561451716670072581510023874921388028441857242598840385688339068911009767679925457411542661 + 22107713532104341296257980070047517161165152142939558285069405258134760101451457289557020753492407364152321326452623709601200491324409033259364196147706211112238258573131072021382932311519292667259124531125802323700302835732187235132876664527640203164769211435791922993766144880171622100342115289268999687171398798541217622989546260175854134113763391800222302150737944566565965759440643886112772857223847425891808091395684389308269941952171998391195874705382330778172415299914767581412450137104259552337427117479683407040411623873819176380529973205591112427876440359247279962753293727901236558727712205610436347228619 - 17464807099253535058120684293577759763342842266364393828679183207585227051269857876474440876988750693465152400814065561986950630840748714250323143549081279657101352274677085273313153998944037261772701771064133603366320978652780316435207554290620572283916016887451193740561976848944853586603443319919093258172788228221282852332296088063843877597129027695087862007214883168497418482602702201312525957169185067786308600383856951857116547885684919049157638822565217052722150354501714395784220987114283391871950344254728139469300527647134228683329985482316020561576648656541351314151351887788544576266292977722718094006694 + 1855999325428195598865030728618076916675802317925856978943792961089944717188706691071081596830652909591220880199210886052072665417590194004469934138893238436701947893791436109717238698195779934165704619291844573696592911945868700941461009823725661960668458036329158833543165243202254883637973080922518722548951601756135132664648157038577053872719156402437111979753123315271073660036228464710237330753831438813960863974704588918767839336215725219643704313780515703196343148962766698460549728553012968456416859856657059564517535377377303258254150908194049428000260397719893360732906333623024885080305009414714225476463 - 17452551996377684441097715714298667105780041689793157412060073309129738403898727842095792430125700131251041480778348532692155755450452527613070275968605469345951100605335501129697624412927433462191382829392127070896329686674351504665707287438903600617270113614328256028896249605401772425335626252737538596499800738831577264395450486930398496345126389875266997190571518732612426506612830859897031852387455333027185777219771971303959081480160136575068725319041210176916505206664527694410509477647313436779276601478441603151466071605417122107751391643539496748192305351842727822971419270558287610488288836465226902719562 + 21409555997224776990878592161849733572304432898048620186685288711675180534836952502302017736321761843812352586432881442413613566969372322828635795161840921384587959077039238392837798341787992315518134174030282622947026951384771344297036120840092222110994352926532689873907442602430041445409178935997615893091438727393472902629271251648778999798093948574149867238306867637677150137458535729261341511189937919552973994449648464526802344339871898950417978278212446498873382463270239618562556679787453323629349270307755422493398832978367285934278346308656767361077495935234895549045650097072031197092189920741353703592738 - 1664602354687459364296980985099586480858209995833240583241369649476973002604208099079162553820122026411725155164471964310256991654453125885280038377664229459336800856132400655055587669999735622295649115613127113004120947829852698958103073355679629881662455569026770495158230447578477828878144068463364465418799585655000999538296052907495915263406443441504661978583157301261672078018775938869937011681363714623632230577772232645754982753053643057543903375122910586574950144023992058190060744776367204371181993760707962849588429755091078054844499690262807321224088676999594675005838006474829462946700264724952695776168 + 5750961209546837324240747401060638776410693746709333788158131450388609333291835024763476854175777016709026859908909161108445848932046737606565311728069437032303919619008097690840577428747571820031121240072939228829284430995512265789243473208696459979645749017998160405451548922102025413120575782276821746762846663220752802126086014535121491933576816356341558083396053451053298979848185738635760543972578624553349846493831472380991575538862391606769904192293847571016384010251629729063939915425453841354970954927989321806624425129318242505089891414335370723700382352642787647551678422099536671073309244059399128638622 - 1342953056831159078788050719098148128506534868983482517366455184509908528671097538902520340148073833705998319414302862843796549596009358470216267316671735559038688267113766744372298133739005310663262244649440782410492318370261540721279807605086411527995326155918391229636960588991142907264163109670501799707963403317538352211217931559275723076043407558877646230843551414159538887834843767653100515685779022773312675097016105979928420174203138363594203556158112651169848224300121347614452963368617073984383212442868915296311609062199513291576762890024597726156271605636861493013111811961462284819078012227885116048679 + 1863688557734960388197391260836000451080103537727946938635151409851633476148722733911799763016601066230089290171782170212508572841067805958086889283602283086803332402772542101973794647468356705140363440301776229939645888311077795987485063653508178858842922884109039550410605410193073958599879179077537000782981971008610305345949500981313582325936121003978694403026435122346860721159194637952013806369803786433010262924397364586456545490548190885119412780008371064578670016732998219111886251454152389480118425231199658841390845777653309032307825107277363159939956402943075715986390821132706155517124969667311323451187 - 6719697271048380233066522318214620947472437259571229445778142025068408856664242644978506410974643002532105983836286887159453258749733592883376413980900378210469827045618958431484491067097178154935005648486019112568740731998379147755166867873579450812109832592968495316107756886907854664996692360877435832853026088731479105839371316403081488294363470940513670245454585972329561477782585868062688826957794515558625420489181599204018515968817454427962264289783233135761475495255431394941925642104153418590662288208279765298943127075285264502320359359555952793440146866664380703389126612737875762304856603753007801459876 + 6457335826658188427962382692005546348795175219781569353187929803689970861956201983022763353469266413339491079641301858419057755695363502362603747426328692717443240703287151102975378157505630066776222136126172768814262748636419958045805586811309513899184424143343898808468222565621640896865497441089682543755775301759395715607892498911399023637013916241470241497119499706036515869566300486763067064356170105511823537526579760256249139569795111304435222167642580051470415785611152452585000379753282085888178983703792851606058278088462091255114667515557576625940887419800486798769072261046455207569688880588376357471469 - 986454627682012984788789954311479744298009259228408260212178098110391415136023496559221872182352477556331269756296221802890147187771580529612731591117580891999315755822831270481236276770805236743462397540991922701294258111292008831767596618608689253591233388616643266882727879757569197051991724837681771075724088103598304544111115046384333881612156830047637773150585750875137523536329591141088488760352396780047756770221728913042812513195250196751991539619115958220511284672438655614878981008537477577044992363583872897926209241011506571612904096419804056629021187025401269845695548361578541604429383913446134391346 + 27657366903020257889474806759360817146631531137021766422056162697918370243954126603789207205203987542712571039355742973001756223176718768288721407871130946459785175459676141921069481673915127659962833106792461382246880885920625582851615373647876816120077187800757062439978581744864743626827146597029546493675521723959834828292967394756023227021261237412437444841513109499219696662107850842038568842716563449261977198906086567092868213173488802720218902179511852885333792865688864223150513344673011082161288993910017571663510845073110976160323183731507157540079501669829373882826114320096757708910813651401144886002672 - 235336979393867021986620856191215391800113812419460638954218570187290248340687201214257761689954951163802434852549863789666994575602133514369783278783261574052721987171977851639920487811868866049420133937205254520199150055413176988091078925475998713934172510097006210312601784852770127401879420451109257108970650918558392914142299375718329113761197641658696619042306797528000567176229575111594949349812035043479101471649546669388593298147442601252563671363875157499293885488914115573391071248762339753515267938151774332680003888190956520133948618661768414616013983675784674679911732559817266839377256942452464118856 + 28771083677926773844919182580804972781245046715502703715737503678915087579251373873444275209255064662004097114715802161289039401479401896856499056813019313222826683653654707033174134462586609108826880654416604038774725267402935184639737614512644774272314492485300052486901206698724900011831935474299687822926079695633965605987736213864944392268389439050482303515579593820186907325529251013009356662298845228350057257592413495477271008663135193904641183404471237103369645889213980350634744714755042865421959394027668493287585391525094913124876414836746479914094792760824239744569143720853921017406245367390972218808862 - 12863330548896342503112398660875468291353057752498390023889283487950907473823047573908321676812783800327986796027993123055210674375400814146105751772033097631984613389283269302901809316641268772767402943607119553067843033396621024598785196607667291110170453947178258001847817736829328676084884060647743060368820136190128699878644240711707738762981866983069082014831505855272540737595099900079750061991728819579454698349578112241693633983988816108000783950902650358185931244952531700831773285312926208359025728753345373148774264464297984516715540533156444922635351448341490079980372669293129537015872485828176848398429 + 21181718237349190752791044237268584814335059052938822134133828540683534892563759455050009104036395805697910445231817524225365163551750393435317676322470819736611276498222208014670425197360040323985113968154375642376160613995381083300225552054792829084134206171628449876644458892577833708129175166314610524869597351373963631183857010684469147407299390383199804401087202645637102633697081577659405596287402397927497971166049461662159968989672637665683092392926673611923740225740568353936944909930046427196246761786856317158288712956736442721396335778531538787271653813235443639217370012234967534215536854294642973956080 - 17939565203434068503718231634796173179336853528089689264586810006608708036709756030958772702303417034279381842810029720600783477350113503533584795099497013538799635120853627977567545131168784109525786280116345072494512453243417299195440084462580679249462324763904368467473894939972284146129970033407200190758295005129006431568330842439780666824314022289030408314123693572905412806829596092071478665101407056956686190455985793950304534160285182204497968466964889588429189536487878734191718449549124968818341144000127115909987990803099474902029347054226790720491486212200016141099232481159538719073302086294818632010983 + 22448919246217115585416088051081005749268769076541601387636213055807721004833357815255275851539343929053912350560340045006835360828747348970209069777924348471434794478738172090108164727170803228540015206904602923552825037638922721206462444398621063823408314735986763848871746161807651732764486415468595450207659398030079919017395835242800115345884860757954281091554262562659360947998584143101842018406086231079185285389090269202152612676351935299612485126665179735457123043335722594322833099148758246512981319825916923582287629390353300178232307383764740570078280139243298082701865140163288079641132419443560276371983 - 11505767458081984080162057187890085993561565918437097410215489013532983645671227795249153110417333119673641951160350625252233544504637935290576739277775645308621796088135530817153414671122518459245152624610555450135694673241044416207771180767369909345254561119779904117120062212755429679141825006126195176435393924380673642341985095909571165454456119247350125229100226919981517426049876752894493111059686497132676031922785331335529998644064820460111940479561645279481294773906149388176042557286871866379568161533322381565951679826411559738322839450329331864903892126954211634113743127431766803285569974767872534401920 + 1666280446694564856324266622518443847529618467505701411865544731541288448691242885242833225818631550348253729241345761077852614212554544201961520230543613145240679379700628285915006176954162250807451889516584015010574162771785114805554390865879846170361721705558285646753405610588138176645730231347738572676300234513262099445808767407571201802267749191795571646560514522911836949936104167503573210834084828699491975532019676527057916173577493415409368261560917923202211268760315618215863896655654488496574214369947857558325644274414175934117287174958328932398434118707117715651821153156376094526064860496996205400883 - 681726307077451758768911639602536150913056564261492277491150809871219302117069057057806164365046026453187581447098350693942955940971004018271826831900281762025926367854253363214856083225718346556204375124431842178037742089633949271616948412427883153623371682968296619519345752929957622161882329386186723380222244836368536880442254686513348507042661156780726080967833746411661303908248705687989983306515807157972747400917029970776659850588428968834954210284711444839449965597074734302162746845585445554393442526158679968897045342336704074946371926401673813678911793516045517761278901879632958506787227136261994923567 + 6637964075915052624466151507982475927016216404474179400177296147671860546077718169672076955318810772424507581187820164426554320384526417202826050575466544029709531406634894473709416928455968845708319463939386587425126925373200701448751789936336242416453175332984029476321614806429447169057929612143205967288739881519337655643494178313913436965253943881714841150182032548729887776118958816871470138537409424198717341323413191668531345601545221642008901839878396576117279186558043571826599003661308812659289100524820234453013801566670125639231475837907519035445383955265811238695574363636410076536485365906348421192540 - 12001246162693891290148672733319734495930927343779142200729646789900989533702586415071195507113898517149793170930909720693754241464541961341909291763738843599819484207909764634380674300451460319687401831091991255546667998818757749728961166772565645157798503283309454892784806427876881309535194584311420058387878530345845281175722525912675689686490968374333596121428894991036109871952192759305469781192979551961934249443932871638191778518206110532638712661855340205431730215532035072955467495736557466894044631449143229525405226874954988386051167718359688677911424920789865009360334797683638242632644594201677626709789 + 14204954141198236668349169307551369368070778338154314615466539482241530433484205191484485748950775906129386867039837615591497053835236555536814114459316958151231860037458864612571498540277152778701260703654190586797167033371335176348892063637410741226315877213222486601524227097449142786136422996722432613397191914329287416865964882811043335333277973800669168610195700432531844458302418178315781491354795545580792230821946256236610982713956565214395413147811733806488629974454790029728162689780848231407884968783678616699104131010273658414943401768667504067633595555991439846990682826545161623137856402418705772786277 - 11174184398152245168540239991788005534382270137363628868641118794855179120280147720362154052208930082826516138229431058801223655785653115649533458809035440961256725397660987737242240237987863028426358091344640764557927789397436794463988375261353556106302803975281009409304933743957250561030811733445746101070166660231389159215833022039855870273371037429314019165746387073749221702691079558650457728788056700678892215520145707693540619931548417190919385251940983261804182737040644720329157842594020816904705006089235522349720109153916697028513930376481183806189777765326277895119294312338541343101729533714595832155599 + 11204860576618422644842204748520401244519508931254713646173460370243383096900736179552320172031992995589612570987573082264550030115419576881747413943517954713939830098154999596336916288442878781721212158450063882013073923511266846769819743428794523606335654109209990344007643334617005163620514663910824630598022160437001310249820653481665443270399731907939754236411376793468813746186297553269254903470126765423424822767572282299511102335051961089370178934428073617175655039979098678773333396298370568377567992577615906249018460713256228321773942434484556873145512004005345377690957509134021772444358164652962022893282 - 5722344079056641703912436074175427526404907639333380942252182889998134187184193302754314466691380903533141359927845063980282753979905921754917557235195600685237516769872243505165534867207182325280323279297226992966247150371126617629001397137271113309053307919570911015042521428732294938006763898565280662332079449118811725283668898640227012319594914799804486446335372543197456992956015870533453331784796456236181969444150175757439823956239427312545119609043470548876472800544485104275600337093167166351535533929070742995163507000851000936028697239064113075210522710690729617525123818502862038790345194588881597205740 + 1438069491419598035736434052816997816011155647230638100008039803970490084982307534041618642771865061032581914237050150527359510320676261520988812368573419388923573030392262933851702945263547464985862845970105801020805719618511380262147547456052246719569737558808924344139600684746668890105883796431639120438624464602704180874830960188071673133335252238441468105176434638331923177088095196100498750604818615333299384116886216867109511383161169670966034371885674266411599539993964056064287760322283103817057891138956768629900166545142872281306269043089300162252875535420187800422850938056063487175077491300897277651441 - 11138163576780953730828061268860873125437333695196251046696185206708867269399965813690999494557911838217526387594086459898838599053870646341177421035854001688200083439592481270310264891739857731189972712598605975460278634562374521554735774480587335479626349456211294043461915062267950080751519406058421426967829936455265307994156278752909189176663601475416110087698856144545523044460854305561715963739640403724118768319748139817275977786112258898861954509381714997967950345137262637798152766801966769518711665609940372869232075548439818903033068703552676168600378511384867397970127873323865597324692526847378635630636 + 23387429318150085272058342284993622595331247900026648202027527760624627583561901992432675748581899154698603675876526876348087665574421749383015430433065144752746777954897074302596265800411690733969190095945690834142663101764589509152517017953332901737139629710356305298591195286381570718156371533851885184723539596818322844596881469119509616797931341891056841289096328538935209594035262865910997761739236409091640601982976766042412957201910350893924619201052262067351758271399816814903082136883107860684375945848582618932406464578055011636059636524939033494188013783445874895426356976384592234257336065716439325941411 - 11284037056933756732048342376342034571148681786837623731787303543378377385271710615372032728545444736544428357292395278458464368777879697058795821625065268502078150419111120422121795280286929268783430215324744340966395689149084964078598643106445984651536506671735645268028219099866279050093730919356674314895331613571485864357325739420490153869534806786852632536912210700848891920130048109831379126294086136209052999644413988444697421248105829052323441689798154739972468727690543231214295855407875313459030573660730373495784362433220497831839297924595581224475938093588383009164741595241771076152127469678965077707864 + 27873405388164091318970554424478512638656171936984254507261827541098327104032599673643992881727225258537083116964071650487652425501355261509270626604144544940019498583864167207600617774477838467879575564060840158392816470709596145703869509854379290078820709594538147786808733403766457846812137193107214749874923198216767847019955800796093879435216675589938926886915464744595070814369245103199686846443021119575446080074727136295964716445163120973726164825598727064333610378871444446838556111913946358043606614483369449612951604454905750561409266821501103806268537401984894965905620477606546113598603724006774549564674 - 15974332904279875583249563350339491510139548028647387219368300257723605131726501971192142657122254328180294537671779521355674575402381855670442150458037996352226163768645231479077726130509529121747259814102535690069671109159300256297956141485081504518494438343467668747892112196403681674814429049449143265183573981230631323064813249197111129622627838339667143416052075579839208946509103672147153333861646149674971547959593169866816195982808151617598164165386150095580355791446653423392212758114997568100746680339813430342802265704829934726117757049013058300701776669776319967465359458475846475144856532088395076147120 + 24748601072350371055271706206445134599781331499344273961403195701614242213777068621910687125529820037863158116776347994075386812041450409773461034154171253965320316189888850435110826159212078813638941565112384443885715043828211057252502428273262793348687460919115389558547655548347895683965182806469383855097196277962807461682589650174125445317402879667882350918415848999335876598232279925200015454773983460243939718221878910374911550602323845006330120677922268135598187285375290838361459332195789403489071419251317054419585769634857929422678643755480074832527054119460478768984566261973607599302193927449146622759630 - 481069099750633283209391305321487646564707709391659641719219445308283247030450523445037191300797541155670530677618230564569498557717644001975747767773606810822933296756026664029616588328895147647712351028580206612300241810968659202977040018243237058162456302169629834749571820506030638825920474448146775686384462593523477324090781453438529415839061668889492674374562032702417868599630607854245974031319901150510273480307559367617556727628835061417706106665828646848741313765816538610886853357677034472264508832692645968966869402365753363198925976569811248343217451090804014417934814973113442885346925671350535948994 + 14261567225525428042691791449506578623821959955113398730801009071679637558546252783518005690876635645214765273757526511854933630887427007740020212540743926906445056717951867879741779793931870949887424798528555509299543140278915754477021711942452191287339451411378064585661182786422738503694127409815841499247675097158359910876231130526157756721726451919000628589608825315190502488673468070558002630875675762530407240922729812693831970447558277543704094358278872981573544603035699667309497349196931998768181995112926194003971286683472267055041114538029723975359465933028760627102152290334768589824746815144120546527897 - 4600176867494654945360557669929267736342801202974157391650702878305144702775296809858589268138276048247245595950371839546920160428867897923429417248768146214844370896332683737863034846137261188211104136416337268106133810818701075811681179261611312709802616420687623636364734233544592006625654784560944312064537030576974453687058329775993036697704834380776296397750746542878879204753645409882278325816077430674929045202034056732780166462503563464808899666340685421122338561056530918508353433056988537848707480248904988147603872652224818206201957417911725898203641948853399047920830737014407975565008790072911214254218 + 8558682772661765637543170046166390892331929461078735007048618286828863884686528919187596311506029883734724034370674519633849374710122174355283028737994832253776420791338099312346712666823035433057266422596183493706995979660288761546354113384265572837600901278546382974131251888222892048547391765244003548786872463535938355645742537186270156588830857002114879410371051822150984781405574593771880750922664649268701790105442306607206163263175406750927216140800738183827912543329073801402782837491816336923095993062746694949208891118862976419372750547793115320313586165393878918826318608839758349151505229922069105022364 - 11023754489119226210721298518191130813784554077522085452624728396360522013796470756880805206381542306952443549196958738827649954694216259848022799868176515490868095077684066424732125164249764376354974904061351435053071914145107876221293347323537060404376631780043940092899495341567642255767591238032712422469106374807800373551519947011729953687129403360378655593804513076879016469097822122149185842664019476540583245022740686536542150540616365932007953330633607371779543549034403310603359993629646318817378472417810368679016668095606297086298453623786694256329121769868829576429253136508846908728425363210601859069131 + 553376652171149247141119039361722031816387998223925302185955579759378532708044807446832391719288831085408810818845205226893083345855351026246428138892139525758840037553496773443288529501587344532368759629079778259236530148638536198917160322160470047507548026618258755520377793783046289662532338220172148772266768338061045292159582557688067874339282754487167232264192064550728795632157652043572508070668601733476956660414497442976957289818717861818474918636700433873267155190408330341602100508898908898814466859243871301964106669429547688969717393210439825610060934372683241638877924340222825922890661454750100604752 - 563807567850933359954911907255868444083566621419215750824799792281072974242301741498737100486845271855775563388161478732587810895518554636626001884224168137726406448998740584713554849634695813427177052934296156988729190962324965505179536991447800632009098059585630814215571231597766739159891703352009709281175704732532420050864138312317890730052302086190293669877860846194244760466930499549030798528932139280788575944346285759498208155105804731823596791333331627776853185738123757158340699695915544252664816823118453644100215669601824028581513191846337156886805594187075576512382863668119414352982264641838469831833 + 28053260798134689575840543458221414733984905721340750208805307792728645820098990415818552759141165992083622544013443252790619025077574836470374053490419737408491692087608102082380305652999192207633170647566919427496703646761316718256237524304945804139532433522118270772826627620553601484220584358266735159101149909527838771602660806052665635014504789402358793660683511428060816254319908112429289393601928943813679596865141271047398021761435602568247753166211475268804023985203363434089130309562818050966734708144447754377122076143565707785189418076331128090043579689237397933958795471035632865435910431428636232887760 - 12068029647561915014195609193151650032397978006511502647609362679577328763851040612339751819691446823310385356089618182068977142268139052164927189365356693835204144475982575144032719472815280512714613265056747928934937159450160398061668507280879031631344394080279155893392435003199557181275466746583242184945847128726133468448579582579457289567107070145177377690867906551343181304388992714811250477121727662662991358637726103930698812847644136150257168309186972156218420031898201797580029663308556762549172195136706540883317971155379090831684201271525585105290899448183193421966585555526238907871229104830624523619805 + 25560870067732758024706870711180189980129517835642664365852594725239234453178321513549142748181476007467455861262488900140177315252276387811650329067395749169366233129416882942918329839168634048714899763008191891723073886343392042290195439119996445493144312279150365173966788623038304529843738260814435103679673574030109406877831281461087902572801482681742279561751588530149076078024033201566024465996154945279238083709366297547935007234094348751671706485773533293542607597695274505555413746218897048560177369841287723538205164009924836551400666257617257780961834024934391091344371051406814032790273376974077700568874 - 12469935923643755437804275205948250350077022695859239691092929437726696345172428044134609597488318326706856426981504739779910449247173802565018048105616348115354356875624077053051378022374478302013519650738546514953902625067385799654150209563934614556061569040408099133274157714060724037983234883053515739139218562698826719712658529486851846277951946247160028030773974114035893631910093018543549692247795515227218047200114593134462747014569752959323038432928446842430858020704228075051243274919999346268045997482779623006922053781254508353135038737711729587778368457275846835158960420668794978840480583459243974161087 + 10016555545863502266772836098990974659434491294535276656798412301417801441556492337003264952381153212601829521067100681858779667412590630644090987699677975500424867008801397467569924239692145116545592317481281106363811549041962423861571166055414967244685660686806367209376830976064281058116205145132355870984274582025048018756382716395111979799254953786052747400954585704679822328875451457460808099682741779395153066030401694951008960816770929017725973801673572340745826225504410079587346802875330648652688467676198076853290837708681376356544419461930676264459552505140656058937044720815683421716014825468380702296407 - 1064290552280937329829217614198154109761003368427320590632397130974824825552304633673051511497639338516935642139160819449914767370390180560989429655216536406315902567061828349856915240732144151554620422719952002321106301492184395291075854695357402049592054699858330373258940439975646848992158799964067403080538336672514431514419693088766288309825993002466923105525727821946556380541388852823721310508841959247204634725921991917081946886406444010662007139636100872704524346213223862728318201200253092048293739301889590327060023417761233211284137150473856934647757838868629528263387049114502271069324725829344274975053 + 24439863903168996845399077207024005919549270523414593071584674233930881112516625417547062258781247230009878806435066279370868139635929396078159271384801534194474798074931953164755793930129274674476178629679048103163798788979836769443352349644538337785696124587167515790237495735837213616529393298898631356687181446857062738995292887465219026666397256189878708751258796465162592524565368605808445676289537548357040317079338993093816910226760786138558957333909756763902212471897152268567103529671694012647719892637462601716182445384929094969080521142638453126988150453235977453728791922019288668348197649919330030273577 - 9768980964318005236959566650860796800885434344195712899016239114872018401793948742461344497631503661185060245457386132005507956458859010508430045169960587077106355718054730569147696623678691332120135937221843799188860517593585678770274703747649274275824275230450862270618557924833951114611162458849336111435037838724303159547922966237159065942101080673069098513983685784550174515778557702433625116999378696690656301761869933695720456504818480703630836003247012401289122896695462434534092529774757775265980182145803259027671780528542535351078520515351248201543219231241434209377874972641828998579156676477397506748269 + 16130833390599689643701237046394335684898651577836194860271380360199915959200533306981131052837639518326066102373665255614013444759529503618127521739538011500935653392322690668664129594498553323201861779901585313413599865824756943367811968572911927746613542098231093174578122155809110463892804467775307827062214348680372044229366934609811538303528896270357852254529530767540694962042895645717018180116192037774653847949690746581669723671270659983072589179284332095312814683020771991110942371967519466129461063375552786891325117584109095220549100472956852615769728956421220505583954776177576475623381501440603342361564 - 14418535889355190097864825359719759882842941967947398545282203007480810565914755302286278135057579449111265532125208840890092870314378656405241621763286985026470067823521906426583842128024911518934983476223178850632186494107306060933387845435173372333374817200629888409191105187170992675934295867758290370535949032494106914309568960675721624453632672546988507110737299969754720040296259099437203097567427505213389738272206468947320799130133036996587966224041033206320399310178871535118698218606017651649676374708051758080450072216177922481229457609646230523216296126887859650364752443171318627410913940388115432765297 + 26490565436889297840398604429192937542382959780281748035280290770467781205579256934867998391626671936673270953538481023810659176251615200273222221049880127142918634671009396113071031670554879239381089144192959127983404484129553972439099628343065838371725216630730133650057467981595617385554053952479886642238443722168648940682493824549651386785429582388555965341783824641579801418661205365211799224210269185559537457715465458882714757887087764066359704724939019297971841861351543323344424756486333787356180505663226937254075813708732666050891197680935000046548446386950202028487757526945373473585327247860128391725009 - 16293054858592425630429596688229695949140927478070818935680809814928593043661985298746470935296807373729566852683484849254277492558840620430726334060559932239872630167294453081057426086410713030112895064672968715873312488076814390047638474350120042020222271030891747306049487313297857102429527723254931677859101443832902323519835669298269745548722546089255708396401076870344630623531005778311140331893030939018522610161797059862209961778462949006769616643029724764312576721904082350344468196870609000381306514631227566365546855201595570012065261728272614904317572790469545787928190522275659716647660905992576992701444 + 7451734446731844804400897982294837388079031919698816607233948626171901242618274811884258557987551267678911038846839266760540881316711441884944925557750899554905492154255465426843487403068331385063803378594984446483675176304331077950620858508203273202936905580292914144124523049002949461670315188137695384624218524193951136847603436656869078634856991954169606625673696278335703164463152604367781412501926476852165944441114650316570393719997034770902801938367901027551107294260730387313450864371470422679733432797499071266485468223142790426717253423247907763860701415871784589194350737905338209129168908916075754453801 - 17444841278174324280496743689513618270400732004763482042099078671625171158762388772930576410770107620345018163780911142074863065422261461883152814409823513251641774750274273493352541892828847892759994628282523729745701995357192323913116345709966427604002245107521819368085252416429533532755235126457463180065455987833900552366677703450077814234071980253103220165340800205867534781248259501041616628655178508630979642957566275401509293309439835380029804156239509792551465428322207554566186527307504986917775488963952953702992783805502311985266299566585844775171364004083422503265288387582677547635156494580781619599677 + 9166685427932731249970682885091886689197881861630168151115963852408946893209569115091635442068033243758057462635905000848113600644129733966569216846048688656742623514406982807189937770922180930211211664083517854456182323268526345101930354225871881931200791685244943730156747627224098110208428028421502086613557335058434452445881879892997141043148055111116464154613225839470099524635647560846399568399978902603331294917420091351453972821381557168522673961947172704680921882862874476689091428027477541237034668878450892330979056980701868702746776347533463019662381946284288268119038494257161217420982125408244406704237 - 3208554896662333152060012951862103605010333721155655648517946677904036107816114756721817302538104363975214859679345353886065307786651167364086417986889518978309600716230350501923919944724524574143450665990468634053762232289490655381496325364259065188730419626816151371337080911528813830402794077134779698134748463611957766716472498337791786856284637891767941632650540192221428067945771189608105634743218742553758771710137313800761641373288569729869124198938096903580989865849170404100496430523621758127220049560769040903221623777942684841216047944693990214177360364118656237959927491792144014357753502129661832246185 + 15991841032088284426308574335120088999815863050690672041487128086627709704355662512369404184370603043289657284979170785098883869446790223224257609958404064271242549579067943597344726258422260881468345602778694350774580874835280053980243233874737480239540601497093739905326954143480405452957125139278328170318481069273050508721885951985511556975237648942007479732317375446754982570811312956123889944945727919119973021108924083911211519685950417118950339069226199139441100333090467119239433600189328407079761138963918854719652270888527113710579027110999440403849729320417623275815894108205968147837544377035334694477430 - 17706599342602841896413030154655966896083533253184684326439667172151238503605998880702586077910161161004876712269647194311705998426542975024301240034229494069121948292914888028424392851515559254484173600759048850783721620459131964224717573781469607136070846422188022656332503152032836428165943889410386855570146597868949928003581447591394358186927486503477277156331810942556091646248267972293405503800254412835631064372264330056778640888442658684802940105175728976073016875829878069512128798023695354582798939981383783410609094181977145873130982238120680900682204185842814093899622484273813610033749181909497086608660 + 16058589724923121483081805591380289658053178982062074873153620862098292200255655933830561517551082921695966003079784499211833158555679096490238415960859217245766423779873365512300037240193918006161244264551597341305115247120772588029442041416840302069688381855307847489265581894008164554317402908095718797156433075699692279406786885787466427074758421693417742293953704851283449797314045571603143910884910653166962433152775113143140032902566817185979557103844472848980847448487088397603013955094526405042580440022351847615373913835918627656753648710502465743125798721551001634319604503717863775173951022734250574868457 - 3482554430319243981214484098114772156539455541561829367904528079428391862493374184486401739945946280422084210525284531738420475267553337830237096306697544827441447695875268041481890469503207102663183674593920659320426926326654699823556040088595123088672801196167419696743000264935323179195298416514127913593376836460748405374877263771285703445552536537920302928257922292659699613737191861356789060595105729983452402292585709455847734011469002020406934434366269129853004262352317343147431670402330512470050640892917196983645784064633545088968788960769091907803949109099933625751418936894528331398274106335345487306543 + 29819237491737986620629440214646398149148015416747332650330165341737710218481346556306592695369407030422381398567929476494116324549247312211459881815668657958349349426373291278429562031896041845967182610761676355529974248066979719457217737246828740068585058289570238575276609496676156764245014517164746806265586359662411539817709519725633065677284442655277460183342721479080563538361977139877290153956889769271219027317274153686847715066016522165668162603256676772109064746471885630557472558227457337787808290355389642010880716049971673205352099400496688385477251876896989324325456277080806617369410798714030430596110 - 10933898650356274425048390226956123923784538709127561629978026055187448272773567222025992697974153043644764017501101969400670520655622787502295306722860529689574809847976108546025156151023985426759232209801486697146820265275125048362776357772903801340168937258537192528269078833626365987576167423498667344176350009811287999119703991797668139627107496752314661632466294687389271687546750249747879722058702030620539548754113131493855210354758101718632364972649226271141575718421233796101479021279907000068944493051150884983732952699769919377824326718232853632859954107676227343140990626209049824165109313593110850413472 + 21329665887275051685970088445177668721879270758673839822095153186839502906975042298973249221673305132238662686820070933877137317492836953343545963814467587994442167392716435488833435362795207426213084227956324339189312767357399982567971237272494246502484140879727511457182612792430312412439731791782957464972151719880552147026544840458878361463867616859356927556658118481433676360671282967558285977636510078028810207457204570109084651549795197189601469069169444696864029179155804441517262103826583417032520349376873331370820898641365513027457708928259370467457144821513349825479525354268437933923756904593501675262066 - 11579546984604029889605568929623513753023585963360205149125026099490507880539083936014054928353503607436102041575083712514457778925311746131937265382278731230087868582116175174341738760160911800371039877039376822449587307864396404216406244930872555694383237664759155713264362017049372567297061360090943381310186526932461420661042458093538029344587156792035547187714986958432103683613105064101873475021441072643366569331273381686342579860949772166963135376807012251113067347536193541948729287698886392116766482855554054927962143217078125621712851159603917511353418347292298040565348152118804082219450359527714804713644 + 17963394601435312844170341286041396224082890480000480684020439295409211589873743679946478491848007202096671668501655561009542191181667192771557967400998603210807930187791373782038124460714199275887472070144231062885442629409335836053976606281979098088824391651396891052634771605653605192915894470388425888125909497941466727110296376556147743504495669555205985262022851233719289818547196383994339650433594536511386774877276543169078304484536454974910128283266615347030725453721129113140594784928889290558962599917830041964976766883155491948217307560589223385141965451429753169412759167695238887161119917173214723154925 - 3549306414514195355819588304988267458638275730592457687953316590366613278988778318668501179168084753469144529246318724537159581784378739333215528840257075609278561371899933366953178094460040004829633190468976159396156254951142150225013322393411431976912533418341494037369189208928772441553811983986581281637531746735297178279648381564823826399940456799171596666393781796726598462139729287063524148649290987395876003068610070397619042963002808261746098159361632015765641437477270103871450739611477776272332941398281702554614539180974706653124059594859915356415924042471051095374458977578148513393732677371653827139184 + 18190419396181481576496344201587115708151353580751551694636727565015076875583572570208335779291913071735258012957129744919884342725457502177234285828338207065232149618002154116927948310361231443214940867938835788290427603939070808403502169919959878984078976304499251159155262855356274920981268011687913568635484763974562215503816435958969645526523368285294094428275147079988034999464738173243397149789059662306949071070597477473439492116369652628926326609954696824150983238501654126063536691939767528310415060776521468566045712206784081528623514782390581226536304880204054236432799306066717148206260038072953718767406 - 16029126673054643598715363405418694027762953112785452379515544331173593968420526630698302869014411499546508632812608709797673393032310316566360841449534434496758610634471000592980613382389394117112208655017737568262713047451267012869723002878363721772930644279819203107765710725385038064860143873488719166907406633671234923780791647242066301013389494319333681726813261069919530330992606574418848122851244610544041370983283632452706709532886048984605652317160975198477660905436057613247402462683337342064886458251158176589614359165321948175615140257655840245485774749399268284248694954665359229347452251549519010859614 + 13107699320541118406589675062514144105046400221017347581635541217023413463137336232471743749216780115889224017523962707666496315774865361927126932436155037640170000838560366154414762363369483835309758110771506340401899595829467452188372145521931870805986387203848180451242987341395097240161040287926875457114158631003714584691904987542990953581548945368784227029980480457405987918948091235949678792995941390665891905354085385493803036719902884829304222553500353556847543143819517986799924884211819576977496886492473755945262795231208116301572288077683259598449825123123786241014954079456103769425680009664176872109399 - 12929005714210405984262596215308356196429166594505458817579279018723935389329039135743626442919585382939069076112861988905813591592521598652191305189943916913944195152354987029335063026973421031744847963966592086152765045878608628591595434085370232198100729312803712052703032129532207080208343682873222522066280965848046648313135264960814698876830209814019862190506495624008146389292307800646770260923480859523409592636185053487461295062171505805878806373806486626643026382818729744448623167974536762904084446688349853725166724679155430641518981490955443876618485340543087214873767366873849360032306530005194996223253 + 23470744605620698919200864464024931859624923155800626460568083198421514145249729288418640881850008045209506856361180596693908669802113873768993660121580902609970011959819160855681500609299042916611855363777616628931981518850393962088932209638003831293905468032764892862941319400976482980271292070545472415805790688793216663622601796393531948552999487242026700963688163890684134109608600280840115697848940760984622819159921339731648598151158152313791961467462029840296788679420185911483830489240404561151860238614743821315395629867733530578303851271972429254297505111717535189180033225407405913502799025256291628480676 - 9370603944190962513052390872784340209814652564910590585016621024930633994560253752749838150943176740321681018774492972997236967463888688866808489972327183009307633439936344268609635984206617371543791771675701670465870753319588037560084062874447810545487024884229544393817275435483832665643919757004383426842858231604797920366156355079558633744635646774122540724992625029671383388568195979465623553107540112795103217163952571250057378448037978717179842205238952267732935851102657324674726262591873568497866056821001905297203471891765499437457018225333403123475743813940003955040361709488408121757976618829138861986352 + 25340521187398687490812826717574868699432834258825021827184572895507692111064370920202601388961575581959229749823603736566794523525786999789488100236749950252461943396286856307340749883351937881051751550151892213810446505277406446690469215886101219507895268926354562574664271969097620232707954270093858628619053525744468802844559957872544931324969002011793343130147880664936353520071331432516986910882479002186101743842027851332796351619688559851362660947233861135487611298353608082084969274330796323583719666345714058938467638630113996925235138930780239241126990782094773009561364166801190192041832844157610559796975 - 6491076999000433958803675719567523275628905114353095238568971171711424477486788784751442020400413543820399025700242047957701518650805306215638280816005708525634325204576466609031481468485108574392512662031824797491801603386559112111793422076209097541554285705601189036493539275241331546877442255428024518832125893022297476542791741278175619428257616109646550633335754762709229619815377015316850245965935568438102225354133224082884994822261575093323528070044236185388989567422071986805379602453725337043151922117409451387509800427404841653747479257284494554703849132326598525011581954631375711800553252510219946542175 + 4883879613773248907047110052657982029873224936207223280887635000218259175407894836286948109284734343099155988520645119703053655024377963582200781641555281758702019282049974027635241873825878421579458927123386550403826695154932185579224531533425197058125479856112448211829378915906974978068973402369391434311370229046760479400320589566531661988527693300707367999222910648410971572004957823891691568777690112440416950750508087231673968283082840746461122117981621779302262082434797312744731947242791656921126110550477450688347638615263315058421408189061729817772017408218076542834166028835979623246639204929568312318789 - 11631021025453465668525423608261775649793965543870852247320891818117637193403210400667375943657134434763830371597722093096328054872130932660553364638316282572685297728121498758592604986004686523542003131773481702086575633346520654271355823559067150393451653849897781761734856900333068284551577874800104373725877369858882472632457327711276465760223459926053927976052220589597457158285127919554301415934785036024115403335038369905583815761552190460584631076505670713392963444298403984925237803718707686332463753711910752311531300634881062626286338395321082670364912859509585073168251141196898433478387102896065715355734 + 18679367936674303188345766097806375809700262246970312278349509363624864875849100978200444448361344354742037390913930366484129062893321057025020155668453721981054954120363622770624938353677057011026597613936963127539913071246835550616950703060108386073512200822861817610990172938564290087319191656498676165040235418145968180273429351965556204396816362698997470501128484521869941903203291906026429914843172742051228368611289602982263091311627177201358565441419293458870912336721261120576915069611036268132862915810531052451684245147077395438688175882677069058396919344050964538076035891343104689986851264518243496744040 - 12727692622824474166926141011449756368591056287803482482454262179281258816625067266348903108300970499824180174695932973242777723622435835148714155429318805342678945420862814885126092326100010640709030286139291920340234004333057803010605718494795795436072485596928358456318972121659225482981649698920852197733917720634905241894729298881322994266081229652474177436563506510802885288147887899642969035107755221571001614347377723692667617549371217493355071166899208977177523416329017174111649387972572549320590721675524998495570809037938541791078254009688257142902654795849706962150786394551909033192812503537180038223103 + 18335389558761301126865197305827302135158754136634134670397908970699069496753971001568256275672420314457839671991615034859651299844836458299074281583923488537713838264617232078405332278853231647364766478359267316334790493114051380734527837960281868025131946097267109495880340452749027686260467032208885621216171262628594388551206291131498677426757770901201536409907955159514040950197703603806177304533761808483896730565558406144895699108374780942664083968590751248302295687057753144677940891315550219638986605701656587031118922798449881505599292438865913215728997221449559441945662495898409307511100382034026248418232 - 3338278986448568137830614168626062157179777144987579471000935011926850345029484173786167368466971398433166477251118272408026256738570184326257220716957387223657287147517924730900811395775933139243868648807684107478924374007051396155444734841431642403643353988647613350164386851487084510345751731347649664727478590593186878931615248899473970818870945127203793934338421120231075247964565255025196233792861590104765888297385951445337427716076043401623143164815408065795824123902765414823683908655849513580513757671120515113799560837801628802944245342095520418525430404300605192187424073705554627849700894053444814342397 + 22595094107312122333557306010881974643850975667589648646964970559577191945705025673291576155653406747597717205002243324067297113459763548482361744433533136690471870950768334300103442013070222181403442353175043970900701626112941663590441382515459701774659485831945117033206528389890104853666752044009886021648098581527457400452520837592480646298649661268998927293752329489846523689428006222894257153079461990697897376080347311180766288201005223557658340520098954804770535910561078901295523787055069709516387453618668893679088084710751324829693018695800655871855520427372518065149976301358773140347151992409896010200167 - 11965744569911305520195665169911391433972201115961644243696114621313738842254245324772547272257148643358768348973577625900628375126751410525023371945849015693827999316713461201747525400007629826261208576096906850483298025332786651339594419468075325640977889558609818109924493280627119508435899847635826761313646839510109747571932451925594138450893186737631159796519135334024632299705740393634873013209360201057798008501469808166768845154007593429129597976701173414455964869672040470773275661552706784651042379657729029261217169965994219949783450188475712106582006774756755440645369373842731599752447248784436448099103 + 29699753520766333952911854585098844708288861755128369307932304431651525637865308141102183446999912449229095380052675515497146607858809302353312569813258176737948113567599179213461387274496505824624300566643470094747347403502268369631467479999410558031238107636759477857567081117864519243601313525066129751034758352635135264339047122509616785763481361051301115946367701812433283354127483439230107387369024189036492833927261028378496566614277022766187170298253302175719058232163115182415343913288110503208205483013861808646709777053653780269672885025804886902914455865739177393381919123988670815531696857713857237644241 - 2715626522026390729652729384646078923523012494772497861795432640919278723534539675971102865805889698920686914952254036290487177652180516666693145404668786343682734939257344463508697387900184621793418160023995892090690846149626378359396523563962660557471085144283832058792799114148354349367444675457681895976219368288992835832164247249169176456260515663682527629762534355133714529752950324272744709631728543291523836840676726142392052130664727244230997711830632117905794756410733410237672296135106805336244092969419878343405231490634758018737391901017226776919457934269748319629913789056269946684409190105759441197156 + 21781304915018641305511597953606358772404655973271106378389669481164723444835324556484107381579824093550978025842440515049664126908317716715238799019437400477479882352726433741928447375472780855786398816372220922038777527260669506465224887589668446668013922375281192819547779763927250847743886900332649782116900399388449644233622333566501629992891267777503851043586545689026150619240740731281553604906160789032331174405804118616192285403018633277272072690979298172058650856052574160917238747455738094288665652584326156031693722718924134194546661348943436064084110476453196532778284244377124993004653276742243215832076 - 13663864137432088262299491610701188773548831234244457399298271569019101334039459914757284500805692625790653625761279154901303800458314951440208852743817486611908642399407493654411898234397679508590438212171877906882348450139841965686071347145572999740708705415777871261514246991547183956381859729836703360712137114440365595084928227736574787430989419458180350635496423680012403295259710356537618314489986544330194890299333613419698158901922723562628144474922837377901128540233956607477792594334230183634996141445108428137806205593015620391129905238460623606595098852082479451171849372437255609065786994813207748962024 + 24259275292359784023265168310632734267032027595934156459680490207479853082933787368577403959302485004306533981918058669576683766408623245475580682823243225336021041665262982650975428831445755548799787024751902283740780946372654065560481907508900083052578510216529976361566355953704813732729730175922644921943357781851554215499296636518301428129706048226593889944252792104052183975123721463926060220477842540100856662098943224145640822506551154527872175833859035778074873427172599563737073260526949200141549153285322736330778112709562806543788325320235955980706744674858596399133073322481951049364287246972260621112576 - 10999478317492576444915825065778262711352726319975296465187435582554962229747018709621265124911045438372201084181300961862982113668158350179988574507735374741496568727885634419316140030783997620378054372408785208156695758926868025311842194916639683888969399380610808701655547946956473582421007597085846804716164082723145536069257490947750751027814761603228914430833808151681357961633905510642611174031876176235360498419364329228785814995308145754737179527508722409737706341337475680013303943173439623541454031226754094486716616243021511177634318056462237039986887604035873878441780543464704503403578587849535793191786 + 22860422564983070835402261717145355845200518088259436563160237325616655717795216144154533446709773316092388897727648599890062264165864506116231453648683889010384689350353034852824227596922819057339553333895904846296616070594593485305925236103025173155556093890468342050271676023539207494813132802251027131122364541767571999637176792311404771740820465482447583660716858803735919232521913740606029340956005959606675894078959905786090582829115124020735054855074343001042716966334178198200711393405679080056177752080579409183922331117937377931889492548282887244607783806455829192631852846994041566391743649609763887734680 - 17379153416712835028005960965629701583992171618182695710224226072571805413044059719475748361050764675113703507751643914313220553588881033754613710341508371827140343954561160551083946004609795186988560748067429837169725195680583395969055745328642598666865380268816656795844678497072056769517316858373867943936428707397511215853983448378289235583376418246590985032979127284300102051475986378294552968262294775450592808561386218295756906091313601236794879460964538653663115859684503328415515906260298162246309600946266273466670356388016097279594633596233537936306773521125603102756757875588571856785608814582150279686132 + 19937183980974943229459929188001340916965663760485104834237907559491111765948090634217070871124860058932453458035427154464090746175432805629350854876747311323831824988986493502274264941996578110783193626752103898411012507031321891003262583665649398411330280838597825432996550498347453282905500747903532476983021873608385819116261856100775046745067528506907924900472994763206859683956827869136055860897250948090522167123475531922826583256158543502605807149411653101670469169290116874697752435918657167610273125187578248169157576276601808272115109653813646229495529907448388192560369887302746460907399505104908863913676 - 17120791425368517941451404718448503099991399942104824044928911803374723627990368786088492061752270469885245257510626465559482414669776340432327155889246515150117208900571670887240294050761026958027798961286633894263525881555227937535689197402577595144815404139048287187682816757210067097220468860577807760171509696732367895472576896627791871463849880740202939607958871703894120960349442424246779282399355141019894467152734755225857085223150207474175796535078927237077442229845570796767010221071890276093426949588371499592629251801586068813923494261861710059946120557255470753806663782785522544265654785106817870406908 + 13814985320077964082883500113054547278456647483084382607158414927685303715308329866784511471654886796997271345656913287618042464955666797964910640068364835531783247262562248281808157466257638906543178424842602246348795607295750515044896107690436158036667334372092626931529205885762121457599871870351547466913921397446281917520233117448226583274983243890397890764657746856975853772809305094452778576867173756569811789142818532640900716338072352432163062329121723011957338096047660980827255998745949934435206853046421891663807712319991273046349072955942384440446797917241773734410478375310135990702599915065831745893675 - 16030115752151108360827443611112128306341076179714990475377683213037891904549852636539527814357484535975482611961176355732601002592950059244420266306415270330012000673012306277418897666766543943809733692288368936849429773077728987121432123624350007172180849612641921057897809171983665904920583695576954593118621278715968063925071381707368522061702815151328208017532666530741768718144952411832190153756975402246483079732686260135832933320013282151376230286009656139277109988297063404457722928135926384488910941630554411104547103967816621909248941768972610168476149716418034386204380367545291999006548394454522252760378 + 21488692232712670215954412438180502273207904218275782988214620791951697743441343449962998527005457544436983426381207934222662717155020841162186229592489241845934261377441313468174518755201402864810663165491376460167169689076277870175896035142702675736299180348328500004362619070387610995159130764717682243540783492914972960984453083329500363398822490036327447047313401862994469185981984896163707655479247465341596212294656805894851454650849322063647816366486217071845525689053742526971080289459726212681541022131661927712527110796914458097515668289727225391894337130663065630571572331220555396199595553443505222490842 - 6095071812720473169846109830580198712874778517000154750346524855890141184059584296925177263098041811994321348353909164481584302487036433486800663552432822269721808213771906543630211531068887999112242285089883314731379053579203724174350060243202251775869710915401536446857225281465259606888163608298186228722262511611450075559110373468295374628575353858172252349745433797122989404480156915588390136411968998093249705347030623874532803795848268312221052460773706462971364903725963914379129787368092794435188713403626891630737661057356147622252823040224778651731634995579514371412032906892071512972711288509595861276377 + 13139324699537473067040099548517323608337725546922724587810632223330367744998834100159510428122616722094223594199579630993122396129484783864929334873033265293991815224659198376376745463475100384508503678844595107319841444294618980247672661570550116253315186619978793857947017646154165614820523026983831150366256226167465017251572154459335401232172718856943726556829403651599536944361023174207169655574773021976293472636318854327264306260080932525393100358338709081278627368527218309785838271532083224227530352700058858562554675877252349739862165884265422937852064539744774997994853510534562899658879786584586161875301 - 11925742452671361821929410045858589098987131384596390020040660472931185477514052491350695428071617775293841838705890106422282400322184979622401917845460083865664412553738677535819758059801064930122454863723769284493763283302551134703665303835741264989870258833388545047836809488963477155696613472537793150206858548104201750908964472853454196568769579313578060817971925101374392876615116298086103969373435495396563615302405357425795564116852760058834174060904055390381867596066485072894615676559377827876249446548462305113758698196647436776172903911925250956818737458328698372075199498052111831373443386102900467142943 + 22117878292867835962366670873418519738154840248966781441350871773274477260815243083522664774520688411581715034737901498302442048488867257193217095809757763269397634805998025891094059297250141770358046322094523945993150827662415544306905232062793828209317293344978509521204214511121821286567675029810459462134015484837094386558267782952765287793844932577183021325300650513018359967907560887832282357858213716858745413727110151587346885070632977249629737888921566840722606900300999752429879772255679031262917289771831190829104394173036058183583909118843490617028159158354115481988610314415410545651115720953920247595942 - 16511091675681099466459804676614521160000638294827220421629903625735234013752976529078254928159991892236916534434505675726716001234882712335365807432303001321406266057756615210972487509021127282283233414016242097640963873718750320071703787277896733410762531215354584038746366094722359738537296795899084373795482448985869815402916469575593693555254698735448542371402625347682451586148364829576481426716389506810873564850011612354457619437634575252252298743904477777211682079635874780170841951253563076342609969601533349525906002454591045745454031285457721251487220442997798276454039643612559918433710908571628618723413 + 24476807767077743150638498296422772837783316823970078238992530080822332699096351230352836693840843932206837836689476040300422621535431253548437684758700021641939922189065793384099163434778346153161610689081445269396471390470757422715348602550226808423643925792178050807021581826143632853194106038513511967212853739272108429512040480337596627845061954001250136758764618952662137308846418659519030348760489413721007486773212452716500793311069858773873085935218151509663726480717713081983394494727472528544542978292501398153925616524283459340075001045992633319463102989913274353577044838042350732257895723186561351584252 - 1913806159173173469495401915021461153003251947609974636529376865417870145711234195343007146070357016757729314158436653107915119403783262933219032860014679929636496613482955280235440404790382885081036705893605605313570045431648153098150502206261771374618502080936428261873424988212759027068843386179937806344800522541229760281588975824070568537128014569678458888786136716344718288701862897723388201532437540951883107443319171925427830516516163833207110904160337893442549259763432031499174262247323428957505524484462002675391213490274653381371205307253703868271849491075190808350158216516404655195789099146522540271122 + 16232916428195700192074444394714045120740978401374786980850924609412333539599357795697736627260462092739510566334606870855715657981350880517883320492040674486431978738072802250167060864431597318667183651295655599134463035364198495391614799704570499507510039493813027010539884730658174027312039620382805204843433454523508000807568526148155464380107140536816486040558175289808979332601519562119249766897381283490915575934483509755873854618515036200783526950838284267878738740153055523195005721486949893675206600311854635191093109524675586065089773985532981439575589128263860311657075741207125875904063672564298473177327 - 12245227248319840470563030262279462401706474515102802947783827781022276058941423824477979878513294317047003853527849223279932774784719227695712489751800375544934750560194526894567273723300875433775419809528340607940658290812653203496062881037831271921760790988240906909744297801051635735808256524597102095127524139677969806948809397788849702102582132925520304620895195251901276964335200206298383158066023999985975897089673170250721811761837224367450742930876367903878644286841214294740115455211583429918737662481321201010813106943813872449371066606074038243947157350991967559235028652968414712137924821236096917135604 + 6237762696437976671896204730061644297072143662436120820439563116138472013047594035772702672507433424164721903485753105220262474505553226978746207822191346445620835070722817049132462775143781324332609675831349090372770563827300335413868113542052490827418709967847168952559808919244895386349118971927721945855260370204482036287615476893236843163195872283537981776827458933943033258279145936852061655117004867181172262101527515431645337330490845647140382517573780222397820660988196325870060429370945745749224219359749257784475328760797354622331745018543047097750617268564419063812675820598751860917017793376792359598036 - 479458025359084071152132841134761630138606162652701482743110314609341490971592938978159626166769955798038410971292352128625018813998749652201382640548691233385111186178668426486942884155365248890247638493444475704365485229013893501201661997509813428393396213853686730159968063896623684315881379129042752849923661725692247045644939003632636441529996391550011696204307786480193730500280997691321551297144038017120315274645123235439806745839740219342959742763806421335001825626283369650710205452686342955279146297966095298848384422640378437616486880891852132582511210191794716859308423385058622634126100811401093675177 + 2874109177149958470336830636117717434132170774936023797116861347865921647606079759928270233385485453355526135537218468788551343872717336616144669377026596471882032444673321315517272789808250020295147939985422379317325925770311207733577712327217478936649834732191305652955592415609525897319929432509762036115023342172453466304156526530356386683061828172636799238064788715225607072913703683323309527754871861629565919750422824419054131182410259161937964703635091022380206496692678769933019258353236708298785171300941063155319429466703220652433048284772313383952959890416765635689318274940320471356984447046926996662218 - 12786914431443669269897309148887511789506219038855016501854409543667080111227294496848184526379431805742103056489569589890801430197443206406559852725433817199496046655178224915101054204108267623559348931998090571427037188056148689559926128167036386636225496889785521414081148982101861915941574180179434758636764159423251776075545460911345690577241073132610091552477407163766943711987560037382275160515514375848104843164811413981055044301028686890385482074250807182998693134037764459108438106491197173787903960383089723118733299730688775434395496772520003867205116500361801840358093678100897210415076724681996165399390 + 19736650339177065347116616927977700537478060775965604549600589521319269096622198913503129468617359475308536547693981219267454698316686527204348588640084427162382295108655937037319329100512189206778635804441745753555495679659091931153609998384090145337937163646932111623902811172808400973101279352412219235870809410521207771557565120834356766648761344090161766543237615984967792653391230496194738039457464259153113180881544692269882267316524959711096791345546244394722933260079983899080881643946156018670255399075209372845976261432592893233750907682322926731299543201066899297370312547004948282332191508818075088658705 - 8558257155469203292219877434987212978274255463875743226981449065571912861621389553538733159468966488640066088981455616165774597794139252256044906463960714403757880567824706504771613508224636508531614365499696769725604084872337091945549140370495643455588679410542368013064234715005471498386348169127451829171452282140806813432825394054766489540846831739445345277955371685583286964141185129213418073151153306905368724518824649209852111326441449844784542781486739669127142556358448648373970256308602288521009182067422303241056053751616101453384222348868861325021846294575389045216850685430357787130238083247191088699671 + 24359011033687435633224699848632039969601093441595001070786345577058616471862617635014337736354179333575677188493693281789966052443872838877898528831399885209081583064575193310297564563021535759308121958847870537065708078878853245983038009542911718681947862296734861092219635272494658480899112693154293979007820374691212879051672895783735369944077320617797805802556953260337909118931254058165999641149948330947772834513826491568237769197025922902403166052978479693600691748739846622337531144677897944006151899834007268984499207221416072855385349469521050709673368340703773254031485201301768693546736542479818162535153 - 2271418392116068682320005268035595031632708899136167942659124237032857327496932428690456972115086261632093631972458899469086687481197493721612662472988882088606081815454936247236496095400406315252776880288319066086509130222141558113238781626299749902862375723114705366248061856239720222579278207525598503375123905159227474413903648746231565898234695664446555788352785412586680119571497116095789822225857135373732988887334269966809554665852222871425876558173107126584925802873082771692776628628239079629087909514213258706721688240218958265737098471228778356929869565904526813172328683752921751085043736477553405360163 + 5500243424350913836780320087593003575725084229194140678807914708070325784038113733588613259501450662097579025234407107014750060741587211431019000293106372113000369688318720988914604973579752802882423416586198273081083657659217878165036676071815998339960964700666089205821752229511444734712531830391284624825398510872220516954056095801141930507921626031084457006187486123873805528754036369301250348950723110561267769306659234695159587246715802601175773445937217579210950686828951911984902739243410411936079177898952482298115410128246760639281483812987297290857623720416013408044269376981520269211184237233981275452485 - 3892593932448033355524947582826546083933695207485041429569889244095789698224732219728333171926474433969169465864679459217695463073863125528581248495846354917665295084782454570112162516345404029295796566019420990204963522596866840926489397903011591773548113935413320042823258686151235654650979977875109385350336289317594412084516504752796955585988152817131873448713186940581956254003971468136025807569038641159843869659255933735655256004781774637787303059370658965943394811795827892712885048941181950161082059696791605948344652800581399286670610272802825994802829928282408345706339291709274291375687680455403031886052 + 20721466014448390967402575343549374519199559648313318880234255531178810514319050546650012984891958817562135187072279202445354646427103625948074834782192114288064699845997414572456297517025782204792115769933732868976684232123853014938429438646168252316221296805069648103214432735227480756171252230956978708019940816946113901953137923611211968362735734574811779326863032683889489241794519539775272684444540802468530547313384794494289255951178455292984933500389161646415708346710922226870468338070186724608515853566235981817139276787667664115482865515431625296445189477102357403335167814145637517954378736570359153827144 - 1625584413383636193457479872452499403011570682324046967071854656998958822803435161821802943811756188276934639227600419587544148811847605144152884619248500435439261005006334422674423171006727124020557682439634404913873680651818337181642726740716060855558161333722954291866776275084822437391325682197526074184280703732767675425836623081972511742468161963332169104122853793572337185798247283813103593447299666486907032831662003423212259206847260409070923612901230970306396364611306875032633480449886748651890394021247843974328940688262827517680640451416028243289633020248937264231216188874668746312670509869200821282196 + 9910299955818480610967714069044803701597243153760776437866928376904638214920392075887720152231163604448615513056486844977572908829522964056560506318456259391335783369164708986602558200207171924382295220471885959532314613382838400852512498337637855373210026096329198312856627493601206695329597322982848535914984076008967777279474050105063513613400591842285063920991092867247781655059888407613459325674334779899690019749512116596896303263204442840594722299557438122613935708967705328549365400081426614261649814726493338289947069810165374017304570332965415375002353634553525839650148093559667981184842899360498423242820 - 1326561828813418793764062078373681108349595866821874656292365246728019727068757119030092381352533260170420450208938625176810445788626255878962130363123105993589358218916426812309593099574566104746562545882899916147613503393356273243970898502772296846263174975220238677786762261831365445370816385989168897338176430654273032468993574882032936722808150812201280018068461576903188691102577432296993767313601612385592211289046275812547997358107146130986475527092581841856788301437445550061995230356917034960809059885915371578257973693230006787626092002458836622761366180115168685121091724986417630397119814883830082414784 + 28061317571898380501465642729086003913253913635510391971657861834078259523796205439396382664737264809870247024485548215053630277717879428568294225480813805194450598382799787155207882897668757980814741913581448990990467749310923120668615798885898471063813455729697510874260664527919489245964407690177951130397905954836602175227012990112424850758735408311822983851485223972845038417070189025034351102142258472276007628998339139272955085296373759996296545306975441889848066911362765425246728375156960062731226377351140231308878558096269196033054921813276809562922759033945504012922508446895447353466024095185308994884449 - 5702837466673496117999896457404461078552737150200376827415937531177325978040860023315367911743320899090831599566398396697401277892578665503711904226082671921697721964970545264953360032573560668377319464763001497027838627616374394661892220533278737521876999696627879699714527520815561772509503374324943819874629788743658431054374503490527098809848619978428678459902520963279974017153404771458311610598930294578704906995805754615723524354319687355107731120112058846293547248332857790269285042154410566411661090459546035207261327246644739058896540719262979365715569276955685686468565183839592419355784955330230365592091 + 24043080844783657825751103616315451154191473339327123293230074466787157145388966568998698424039836421371256806533604261182019207021562413249367543912662628809918712722157767283559654881802324094883840880549475253277412154997559895287713499335953466616854123644583501682069923184460470141835570923996615637339484434781251610318583029378926986759745358941995042243379990364923857127485099739132968790054878705230228238157236631725889134999581946331674314426178710073596302999713875107958366994866278233003296968222754958749531842128169952534972308567411438271925872947250120006439093366096823741067900317441020043016149 - 2500949220359908932116693260523406574038852225751730738335027110814217986462511840883289122083248931184786259799645501804894085964579284994369391092512394287777594923281399018410653612943074988103037182176861898328630821403289887553913977408122712534771768350880912659675089114454564875045000228564124578317157703452268892755675654792692872449511383704865115715340060242786366222825467434772861239161535733913585948918595128688033900056075493779695292673262980127173974437748463948807550397847642724185299323817577259360499426539830003052699688570467169341036750309057296873684037464810321849114124590483289572435728 + 8243964762626213675761553833073495411791604331033338208405774737817471378411730030057828834630649354391066628194790840131406054093854647351414633687357755427879679886542612482617159229834829759375054866536304980537518735739270619951611644649574564122789663025487643448924521886943832398192701910111884889227874570426015570593038324939260408897796841937155140792330846529054213988384491997945448846179436969235895244236321909613235118274897185827318002119454457875343527027791390667430240421347112691583865553030977452602503819491801735184069465440238855320081818999962599165894085448797928964698646934907264715386391 - 8147345044408111850220356386274038936033363577912908767837852441617956047040368971833429795908371288587629276521584392794473359885952178509670817784604704978994334456980518397810774618780243373320736568608801421834748551074478564870505190617337145626400226791441131116766679747265460532372676749504016902525277279712586987018700463007505156670876384406621234724103405422434977812675519439312944341656865317132835206692237500449677694974747935125792997453757190694490994364865059476141600382214620189068630201361119423014882092030560327272617839878274821721798610440261750482587521728854313811801348010157065270005456 + 15403032753365918313561651167921149993630920602846892415244149690604596488720677933466206007970085256512670265518314428754691295366602301871336749873599622706829017316790475722964318632473587554892327265159265458559837547688336959669595343636749271880190319233057661945382379129698616712978060465428659948942375079912931938204238084896533154752940484302431043819974947306286670042924732532902697288381669922666449348316399659747530892231569174661255369280185664520315094715329625587381536015197559796962777656333208565749362750457314887401766116372095843700603203892296585425125285550205267554444159244402659779136596 - 2146180709451416247516413928581344310729864962940450110044674222848106242341033478856165705091610821846622873381595966354356205729350343295739191423281978332852391295712748070092272160409226408452202798019805186912016867820500002691738777383098491610326232534923025885615210126886331525719298573927715819336934946317372979453098284843017295756309534028906988833635329918965059004594782739803044635468316580733269548924006424183842452350234550753375321343801482340772409512682550932071735901061406876553852452509023561221943528135447100974818096426020692165587392292395472600813458308429337704593469123315088354813230 + 19172884986378774197779735882040155055213634593587700892595970182933887310961943093179998327354390260261858369527344303638198724895988617414099874760302136475392529603617272042523303448439577777927911179638472825132793264241452072865331984813755156053733808117882591106706963292259263260397076491840822538907422052355158368459770191137059152588064422600986638765583351226519304904664380364018001107075614751652926030632499774898165239013280546300827469992723405323592470776317575167036298024006550057211124052627077460866687922726571814582334860860394191770448778366197938134838491414572850793140298516562308609680047 - 2376997376634648871199378730069434499691620060910241916390626113330931850599862878356114213619696663967041375668483151575576244795694795933171800509329211412524669585870684149280526649050506177254915203393858532310389023288895175064020246977726263044267976019667651236700267255270847837952973736523219486731588006534569529727047514091466965385711645766474535102269380193277631775609659618308193010700829074211492980380736434707441819673575413524483055581276835837734889963295549721600858892845604289787497693255293661091080696128791156758383874907889312997782912441914043844212555070170872930076946940762684814073437 + 16256496405983363090248242929034108037233691253829598849286375167927425071403853636258163374820785821049225862740122483340841119255363159140437336193666788377870397512363300302957227490746422340709166607567714940283764422529789340265859164984936395825660658402331369409870394049409328330353199795806741188096933507181085409360913652858630670856708976678448141177813868003648255129832447903983962751858699500729445160167166430650637159856273354904802880744979846922995950991101539419304120205930139799069585836038782949738707430718554512736168046423699481346539599045150812527549090062525110628699977780719765424196382 - 9800218277668630453505219095550877762879946615041685028287716958077448105858521713768788207342349026411950862290022853595650892130633857310624606029486102264277313392801050432917151118703145408885066954940727964583520705647302792984026505687405308631146531061537727789875145381512504931750352895486437558831656326557354473456578419118448615842859976055412952299853663204046856243058337490725079228018529425276575070837098439963691570666503415415052140133891445911783182306659937124928325451610350377619310157832833258933136676290341134545834389899967463249936335473154417475008807349244471158951619028409606570983719 + 24051313672842455820907884260961411497065411326242604653866970286505860203464894574951230018723865035668709741309821204698926481974940734821736091693450339295029395483546374855248981830081654154474109769526731392724173256009305012386777421037549528471054814825830760461082912610997706279226597104137651551264146162078059946805467229695945247170917095383230846748560630051670105030871919307646253804439709332847277638944922413931392115918149538457561725814872209347004509352051171668942302728340818439541693771715464634257656587541529939696865097685677770312197240296131402537454348276765733686144603494579083597424398 - 3381529936950186553939214348282217027544393145848718952727736754955291289744514151250346681972555394644270211046862393082618310509750906825336568444078852241848116470076725773986151210492427760781107079587525701896848533553665952812142663112415405628517210893137508935645302024566274179501490579765518690818495777273695503490429058334357383235408205895446894793227090325220976367042182896346685526054754038292516401255946655912136871487725981865366836353623051904513556672300632356265242451289295278516671273653964605564107410850965836018753868592549349585931467406871222450456419578935127499862269795255463058772169 + 15009303400491876118726215096594325227419069300761350762276908605800135965175890651445115765354935550811910301396625764672531483146398564079738838259619207708613996534808166077224171294359726184784768689331236595473875701806235615499653807294715623420646712728466571323124035230816123864894867947008582697918410015350312619675216554103396550500932857267843738602956919674872678524199507633247889712265812531892810873422460612511672629719405591914255989625370587540604544731205886152651417180067581899647717958623150062988730549534919924895835546784566518154566312179745398418877107538424445120699957632880843871712327 - 12659939430474812935581140197957905027767994478420946107482104605683863844224183197090502277923364379875304450859220889754908129348955178893710024200771727270703020350768380015646113047978234242600267714071904674108290292924756114121175121953706849106186043521699133298184077601113544802008103476296113863823134732032368264775646633118094062158513129775580273448502963093461190288527599592978563599565840575666036343864716932567041745626600479371614454202349223289061088660351421725976441018257029966699671545081267837307499470259954544481033371254816248113366488829638293716063572029616123288134984458448693302500705 + 502730988310845089454851722428690562481941824911155678452419591213465771754770271270795983319218138005353629882325256557164224734592198193904683168256025656373422419895779099524676260603285378798034174303709474735481259866641812385229708488811557649956899422158115612544380844429842675500674911868101617059131806101932018233403011771270710716372347904349497193218486128072542826631031902141779153939227117131695021578491216430146416990876528222369845216737005418498951221669665822742473121675189399205221019343179942512515648241791304385576346527306801181468089078846873980092832384959428232317408833028381760982254 - 10084189327789182267463539454274191432869310937368822771508463898498327886678250365323317563460519208054734091241770136544246945187030361447785780694465264134999903963040079379102595290075775493090429970362474349670849710080459537522078597069071508122029029898084154708362551460943608657110293861112112583273470303821362107429356508320214796010893338852118230733541369495191539673890416098235568921863109641853939865238394919331709037287171041640037740689120526538570449877432180416640720923517935899664218178212543949880778899535849442268618332495926508351939077088781366657468861007618341410822246650769543605627356 + 25169680096626549612823334992533868095841841349720215451127685972732782100172366084909668441473823381813698904709358343945630432739899624420892462536179511058305619325121574222669824750752554248120305796498443033007345371600460760139880091644222077142956115651750579418563365245006964859744532003295883050061751264307219512346904555570433951417336484341673628802055857865948564849859988896967961651173348456710673388599525442032515741721490734043476479448990933365800085680739567735721291533879856131973289987001747919294991028088750189478819605906848320211621981800399503041961275798002943168327562627048536746537276 - 6092453129344347730159339690973655966910444183794968359583694775090663488149616503757432362924354900906338382032123160349691097862813232353419930507170304733672138256164671166840780646821881464924773279154007017523489561622764204176810027904504109833469704234926388186070861849546753291599299016880924682846328823776191637352092201986969093292672846226527528820512935864943963887370172827651020772709312152697283788894124333333967797836986510092029640277374448606177176967673812912217644664172913885525342296678769265428177574549086211515587955627271813613743098112550668569539909917746152165852568353499079071238090 + 15147927409381109739022260774502410538984186662369683019762529463268900751830211089407048011674965394678265956352711247972748732337129874345234064641662324257996308155614634951186083432453995163810647171225269635466081085824444820677920631111063558737690513840102470754867929877444808326623392774967210522412329859768666236104742732011664632941306544180818110455938583015380262643921495020565143094701972257181822664804517722824751230752162593495769437531835319924465770264470055785131803949544535004931604507531712292888591053599400339377625641436459267917000001486744487272960514349471659111388838850689914700341902 - 2797666756597538797733311045970870028337978661354650892778041412651911004629411497179498787510950682122670645067242916027622487751201131495401054992775530103825230181796208128426742787400953354575735342711516275706590746545134310937542440717793129231672045809270870926538905262530845422264145567261697110347848467560735843247891363508883961387339885631516117806481934971971252174804898237660608619507366715222210055577056821123380672011227977568648125214701940556406471523130693837744231455299327380239274325791170854517195193147138066157779519160518168370807384260704782963228774172503293307569524665957681859219861 + 18252327381038907049274137411869869596949897758203520463637745507348781669793136741929945338842151996552678875631492495178928308867654591344176234382161586236830601760571388925139995594859062111320076490051114323065790914132643797634762650511034349620781773422512013048512119315703452497462176002002408338928274886655421884630019489172536494311238453911783899209473740267692106348124802089852206961749223413577049580695020474517759213059726618153410135800647521653991629875722486157380973797768569089854735965659541584853174406971168505041789556375158658044789344846254832714409814612362601407657868993086371305845947 - 14829874805273125235974015145145486008116107025856782751044824742836009462429232781728108106777464427858634119199270147987492916811768223746936764822145243867431776111277811904645246034106053297180837653146461938346931469805791286894222875953927364647484140695418246446030815098760988542955205273157477872315696561289457593007396673366786636541757486024661703227389424997690853271656657488661614216551369991681271237762573393986936124758546906403151378450484348791629181169010068742038869031854402248179189751429863818599915762696006073396504757965508635021290173563171384645464924270562528518379880502157327436942903 + 25134672263089389567737132025961139094507029825667482980437369263084370558422370408234759887727269805175553991863973784893815731621378953167123193969748966625714856101844485890432846697297742255710426689131730287879370549465988289733092778970680221611392439125088356002997527300123707174664707594918565219608805823622774422353471177092941125574945067238030059062345941933630311541480409002597027563929445843918111282532629695983034274759458948659427262843530855248438418419728661318306695747660733138436990783668253558725875410783405919419047698070945705192463770824039194742898497087037372301007766489128396259560111 - 9032086040731855845531009609015416769141767234122839041363205711059188584209035494130681869095849295131033363037896845728883058353404400073374934775262141497568792162577733721799027869003253904957494701258653681875592853807575394854573457719132870764537659061288485388876218342503352578883587143765867423723122853617967582484295594792576004201505427146769249788126450968129614709250807213021944554185246946380742386956588924316590177676055673833990251059446624802393312544879404385332908825164130371061077255355267443094375800918499133796763391810415067793092118418905518910557669377271414463771112488479208063764428 + 4775468291074412190219169353384764608762311630126175434194123074303493978289571828005191719338499417805646992243032336092203740762872844213317691498784152149517918895275705127485368323980738281870411927515419085525169752496193131346071176959722711889916574173986831471024424876292261090017646703517652666631721577058380019145887445563028361335236230461589445584624311915207596046469722181814439008588208184146411552331252693107448491047176111067517067749603620774434884184544021364215281850346947557987209519374124210138973068558966447268632015864219077658017601896304669992355349763904384299067466109819862749134119 - 69026352248069672178148082793190770559819915763841011380753285358391456747697860921111003255468993435906915656287659038044136576126235201324693794282096632978773423826810076500865229588919279007824786411168764088069836148081281828134557801010366113683661862385410198350513639211197527673635618984727561009658029788958833759872830358043624137723728282559261838178333597591803969140242842844673130161433788364570706273136985300390872598722313635413621259027537087357282034557256811907339748696491736037262629589638675366541035132654507807518493205168092046269595629335201784161843976795333112293519438475230618048915 + 19110216158592526637225412429674016598523369285907426629508124218383007800330740584981981135323493152737495821976362652667277488910523971585577136937050118516872752719923440852399634400158757615832989948281043716181143664382612887697844051441851579799829999429118716525401016150390214860348034923062054770175117089125411310925182059565403262716312449205914609177713487084385979833545465964142407411331259334252674524679992280225904883449132277537519328799898698667535615616018086337154097557865532968419533444547283514146569979484420022340860555457865156157610431434194897412653474900516695281796058788524906403501818 - 14747983822091168729872988263891398136402553364538651698447787394881426106375173222359625700393772535757898875388044419891086792884402151296259917591697982420381354308737188705110138547253083295374438400589598766168794095098687686468963035930334427322182727071463293378072295132527057104385199566325780783017208880624108042065165743705574270458160395258262874327890599643283479157969543297836020892328824818642363161974955221572162191835631952080389703500054160894210894330226445865699234197455416238177409211630092588661036126265847532942666720802981707408985426319266357831916642641121772715897275873361934960000672 + 15559589543263256919288079081632340581525766746283767342408937543428412500784671357142628876049964989160761596077588155690499315061016808880945590057064724268496872070377613179509283485491902992084582609689794105565383303188943058711178408752771050305027976402127058551598107555376118450691238019165428934335456283699242623195374074831492000992709061428030384925910853557753017552120659759388167398967430046439458860935564454728682350678067513630440244938433027059983239797243810831458720994703279267901818672563535561294658997279975006170619728422356433758585111728902422996377271094939263973666639359977153228320586 - 2518829770965645253979160579835310744518000604581403356310717194614786175183546061729827988611426123053192276165948401725451979607447544383568104065899291041697210622673859399561905506420069026439655588153090800930810439169533795393852163029128391139773880790015663704413140229688518380709561297115351232200514737577771111178801782940444810445705747109747136073556603428399141345853846649715986170502720049390878000663957925096895478684364142477981047125104345957863920661193344147796877119207981123691191239413234877125489461417715155380051706548770415914387453364919033632216025558270353101116632631041258658773875 + 29285196840489920173221906301204542730109873361654384665675615805594099815982128250677744867490407333821000639117433393330483819809909695519213151189850980661371629451730080420267599357331147436488573326775493223799410777411540898074375824753475234337730422017989328597398776891723970385200317813916944223439776672021449747223534555683946231095605509937548356725492048447059105373430530480203695984049765843316146018055576007021468293414653562031149293983902683274696369465826055314756240003732342270109921726286345479236122146734956376481573452956551189131876178592273755673673409865224383638317038126410660551796624 - 9783743114739385717076338820215788789844281239817137888520613141068262385800688111981019948995287471026099467791468520411755724399157086296843524040129793844019810058880468030354615993329499155169543075172065337342641231531123297111572191472225339204547375593882130593978304883761866282236373271395175192290520664464838344096627334969760242691347000765974866961462638352154016029239177754158553724019662770904607561356418098407476453958531341565351715245263020924939231190911044064786280314533145419195210108298179939005075383395327694855153622427404487812944065709006725968328126693662446007437419650431629230634244 + 25817135602254903455603851685040131250085073103334233447828407964468915368488515168443479324682562162173048140169785483033995564629465158630900438896671949599917345298483246933123981850786471959155945500963504152786779092257564074170814732821759765138065783560820940496250516118526868026053974333600722622806440820820561070729944979427681339986988455719280673558693246652872604533200827249927549254270382434230192843709015546740498763289968038778349761949612244148089479784119287056791167935005882617632302655089910640844521327684734658134585674823676277684014933243585322411567359589383747047675777281280611274814451 - 8599688785004319158421160914996861108213815278499752682052794972433275223954514901372526428473237393592878985913652230114554295680585552157814548415190133764480058660983735991110706885214998277740202301974076026329583113338691741917851686254499421048380616141064725304502436197173424158867658125708633388535636588082586776564320245940871653709073864454323831823350645148215141306918542837428440581324758939165468372480494280482357430135721208276621133946455209406572055009782940835912379428452427855370633533718660411914937288940875519681895633978365764010387250340239707979065224194999786875200158562874968644419649 + 11060822728466285625757240738528690259132738155459452125685110559089874569954540880287159935743339030454876669543554189805030298861480866181764522456521486029833242630070433130781735840257014651785347426082978334014768306992784746121352665265806302405295566999328561642230624605708129255235090536829688567314506339825369578777975400819139940531700675016514726127577096966181263016494380867784350515759403060610825756868144872421915468755272705759584950995231148563788038862457922931838626172765391611547227830895043072188167058695307608163554971081523582486481167523880863929042004310559370114523282797671183855142516 - 10907558381246250767836339482165054453722245163140576753257624211364560470900047400870337835660591227790176185887724217435752883245981479726068161953088893583917879680979608040150946256575990334251272087553996822527080363127338583500063415764791219569626042335197876375941284486667499030559038508420842841301395409063234694391888087891397907410572701246975021166695248612607561985517989412318371335821342227973740302886022210519951746050651446185636729513604257191534106213425575221504314140173643438384506281704903158745189327078047263441981881619179307404573128661515579178572338010305323152079229903089193090220430 + 22517519023214522149007438246620622728100036705794630346448958290242059147085307608763863742532299256632859793737825215949848461937315144263179914755979951025258239562118160556880705944966660956160950063498565357877976932095068704278546993000526302150146455878779925075268923806474036540962307679568577257018901520194583001275446630616338300238744417671060375907675152106676720828818714399539321626016455033702569783865147974401596320837057164082932567497109910080785871156150812867328959803705812627375884638617401090161522542056000480135050587387270498341451975247458676714028122871800769890283959479108660483412788 - 6869859813852575752388701561696004669383949484093386167721427238580690593188934652166139562479401218586692453986495519791644484247406517939703293124503016784474192696214799532297545748247776859089118046155381996095113158870748989067549512904605045933208487012099298797458729000364618046347020937780379032141036044596086027949969394258806213258573903932005021477654283965104877803711479785216010060250773966844907381928873709262460592936265641129526869143441373072542776747275756296317850646952901099792960767949019570531970153243860581728402549947556158119953818305345382472282893312753556161734493286618597532124086 + 29141519666362191332161762592311294246181616939366943173892244637596422456649163315423890941092221191138276193990019717267013123398771180112513935326382451851467017458551274698458335569598084777662248089235726083210524886800851522019507362159571385854332996941229849447575979531680060611983691072979792762559371014533096286473933883301296957032155833938007207888874263827544901769579560946589750897787830559107817908570689888510781419713690601326654657159636254643741750130958095939009942125119196141209947862458888283886863531500238125480972457521441268856386850002887945263181359709362515511827526430345097641591130 - 9712846005478840712734510756517034832682264082534284682892342802265992172930100707907080568163297617980654028344708838594733637760261359433414364432532278121197970082642000301846990269866118304955417597674359344414073574599937063504224668533341804703446218546947573053146332878790753270706265456874262374742337903883369678951014429295306023079875715610111947803420290463997004656534272882172146187783327477448218051815835769085510733712817070106946391523344753590049580506768578392686932214335493364056397471516506665169131128597363161675531931423250948958724541396747449870883667593944910285216508396620790507962983 + 476420979478133131538641011216802908952980916288442988358403186696852569140289668919880963267472796869633175240414490957131883976127499004233716153054961029884973065990103145685130162878538815474581466861943327192571548915374548675572551715270397911431866720300003686829811137134409120464699073465749134211508761530530707042210075203141492588972084309405741117994022911166578705643576730355106441448733454052047194787945061385620155999993419622210964207140699716583846831749162805013859411797574123116212463489718871178753592927876210114558394745151556906608692737585962064817401528279644717658254211918666202910145 - 1995545125143141397862385307633039403363710459737504854841181230247196973076710790903260330737723958492939448605747331394371533519110414800843358741000065256773546392266789666057939627822265955288377798302187774850374488752238833454746573618336139019434495717536526888910798016753288188567961260126189730315681440144899609925771803671885068605223318500225859106985128249883672947839582410604814416498412317728913379302302034174165892579078509270141892232020820264373338530527901984100348004350131290606291886863190794821335123129566859871761768797330161261740026902486484972315423044492054929337866343116449680448782 + 6850835141797799770581142830177035562734882880568034475679897734765851161034880127344006229769498577724403511852323661851007197449680660322700534829091163319421424725351982710887157018542691266273780351845582092885742975656931423225517231244805265587765981390952646942216614900432103504069522923582021731219416455494585245341104712005046550803208884312174394740455904819238401167539897598646677420342225112329361980676050051512439724219805462874120129162514514091237418178648071640730022465397748032256212028172751632807659698178291784683174306634452806984704631644918325205652135962211929537555734542809577566205634 - 13507309905339704626602808102316887988028678790586825591120600377243829131844853160290551260969331331199871689900940090210661429171151666489546271903878798168876191093610846047059896337546650691527647511432123738477677128406609360040146742654074750789280832907295564539866750113755933740973303594041858876455319006740093624688571362947226757835317347897712854016505275960142001093657792100938114572695690511872046975520845573193055898182686701003936732881138378184096276579838866339919779412464822029343888132060978060262335606407912858141124163299898812993583819829795812662082437627149324705183418020547592033636940 + 242688032927821815747980054390258951713003792628967095014335936595204736712017173074086031388192056759371849212075526111294661696757165132070132613716592216402864905584584107385267924574876362846299593260735986494739530804180505729279453685966066727915784547454977325890768649442706150026016832705238891181727104175894604102488957867030764352456996342097129726753928665108615755079758628115382903677577406065528141812050560929948291337496348993258962829967327374511506142506541320322995225399886535040610779786103265990904360488845607582097130153609287454999642730446038381381709616534335713473648001103009787796673 - 1676386448983595895961879779481550709500942311235985723487102093398057132872522533389226079515546617046211490678687392359414391237154748367446321211094761096464688647824716657616892126963207531670586229559936333396192383481780102542602733377848726753105605848910540218716377404960639593497933985157726874548419248525004347427873828470740576825347312832604419915420438966411966028106771719208872179334858115265686061376995217834597135047883189232428216984916006541732338016621612532047737267619912010208933032163613100208991229651832418426071780789531746078680089565912957008359732652506182461937671035442934463518778 + 6581495313526260422258526812730090284330422453329897608262541500457047505348684361508256509625472692416576473764248297219227741464047038725907357303655736334214173949819165776671038168863269432382546619943525857720298040370389865679728858876421712886736606717191128967677927625806348453431483504042998153408859157187072531408897669650001153728906898095216060827373851489017762831052297939021431477242808580797962997180378461030654793485763606327469431206340091915103358489750389206371374853796648759992110802900237932372214514866413356974061978082457981519486835292422580286155997293293081966441746445466113901964353 - 4875927031912309405335928914556528634253915052085448138735907325698115879128145045872991425824209843020069497896605135208160775089027190163437296349058973367505968144943734184875009561176122316305313749481319167287927636661735935028731127760117632741364448436576525780393220582454909927905462853246485772561436925576701476976513222136881183062799638474235487017832434475930743075137925787481950310094774520028436366567591581503258293458663621656939009346901402862228765946423885743565830358686853077579533153799524037279772183027646904883844769928203873176493045621444757019676096836334389525146782371278122721445641 + 16784879726103165791306018521124222167415185971108993375048424934778529908992125225802766718466637668120467638398083391118989542556452191848582608150633418971294126485282497390187618168478805748304489601626721369437692475903931152336977403178656414611238106039563237333332927839461148551317310565869112000666120762136279322952340159902618315759100294652158452367682972584135212576038994425367023479511601839993144439149428672999568064412409982266012486021437910946323080716459590105657337489593453837226322930693355624439620055513062166929380137398505754034046338126941450859045800986542026687108451986521212522700249 - 4532706364556470158090597606820058862936302429094374764828662232142439252459071627800874567604733170022973706155358606299779176864688123757152488265566812846947315532482734866485929027029058065906897348508593704591732729441025705005776195060099759120243978365320199210395481418386003800159264779880592902678273559545608750765740588412221793947601134640209942976218229329179108812386087525973009923612670713689050386897839000268361366702994800291129319678090177227396021686940427138074787386902253454191806722607139770860190514504931790629828164612546538756313476225145814290256072711746478432848632724692874919330327 + 26689192564061713863496062675166152492625504470911631965143474900992132962013890176038086076141786936122710420304493244717890213176082642382557081258102076983820114945479048109653767083917224994017398788013114526831736358566898869647062105024690210778633567087863685913320907473063824855698051686539828328659827097310821189022984285353897382969209880601214654617226698224788368274304530714178832472816638642494370826147446903335956705601930764234878675453170958869967392641161829105807345139557667978829235961538177452245998878623094854578259701747238678111069071078797643977805032029519474151189952590219600374933143 - 7727440918376295669588832308190357064619679763886438348367941057932204367702382495595817907732436948300384748592048746588901357922300461902923045768922316663609810196794849697041701575697305803333603494849775877183941896001270242353802834529468327922486888624205836246273089612048540607490691387192060405694396863200404604494220989145115355301343779116234516874884786695960328424190887162342896260501656217317913423452355583824593468224820134116921792341289149540456990187100625755537138033722609795403551190123930498139463649895419864829717334502537181925225138922977585599147653975697247035518511894835786684235134 + 4437846301490235484636006118727605694470862566504018388898835941560042984157514569329584444842719434258056418585312425751972510497604053424312596275804820065064356422877521824109107593317684081401458524018773803531221654731049966196329995659411347110804182970182099910961257146989985050261280779004721569148729535143630017459921752501504387359397938331151233370751057609287726457734911593598604708870231549407502152449955384330540789475556746114817805522800198664059899817786583485988629336838640316044499591409982281663727103264965475772756953537680813851754788244112069219721608518630926678275000372489030264834519 - 429513469409300004558107395186078012557049475595324951899750191673694941589505138730252965397565156799402299351518125983491246174308694959811127696725223641258953962594104949296830128715223284908071285646486294138644655842848040903467802148134764327105379099903278467798760571061464292461452986354634727086668508512079757657336549209716795895688845794406251968002014475851626492340064679654371082200055076352162535977355618683514297703169533848525093483698809215094899118650321453786323091343289475595168467201998202994391610460047974204083538415667974630440429006735876178738745104374251619394755208321382066355637 + 16065270199416812859069314737952154121088850515906485363224707249345301745168989852859888128719362282970138447139445004800241392706576095335801382337015865434292560885378635949811199158102367076395909929576466474120977282160857178282687357513291520164326090658378447020173065845212682130061099627436781536223344275874626744015944193974549487917096576881391594252511750434294713461401246204295918521351726438375306563570785804554946754736482627063102857046231618822418230127146829783125613362539293975177441307222118079457569705479587746335926028280312231742503423090536049811262718377687009563118653396256034359280400 - 960962183792528506935126939802930149055080563237734677751722406635861260318960623509569903701242478133350477175167527744087957057129895962981682962444342751875051529653893207452919445842333918427306677767382937759728412145404144947039308171478520200060110360744308964025001034241308127352425932818262502430136954508941818739593733814791176459239337170053968879697803945204088772696911739704021372559701626939138790586991849998419287624658203041679880037470723673612907620085661871077685196571058463693167973830046932114233138446971069479467779579474256529041408483309654172705234849535740616046386296810111412213669 + 14859440860725247826398524187592605319338114282812839223125080920374371265306010550841942848225267826559713255572453465366491751944464444053482008999706253274723424000619770866568457427352250923761714384204449259865706593686575636106785249985735270794931662945000214334568986567543255413094407260024818182265965184099919105467794231543480923957913466746032180154695628940221729331971552978458282720794843521401393327529320731065354586216473036529116392266842945584573012000020337354589564461915595950415746475882171058955568151443993346801424387188559275187076380005930402602142882567628698221165266113189749877004600 - 17402414957867172090267793592245921938215231187700198422038874995323990144696393238743429521820293125680885762225696843436864819343391917558672056551354638730139284741420065019553976208827448729572686370447775398259876594168017630784418241187232131369844234363715087880492928297301063069649558273953038704871555061225051199506482125109684453754375274500472604209846015909352578422923428118720780554920495450178321736750364285387474464127768027092632727142446735704563683109177916477365395956498801115612515839997521513851894098780952780111894852310712246638977213046888922833055082526932663697094296711135599823081464 + 10009669072698448419359100916713718968166619731685588355110385827195135119931472437257676618337503277583421625952758163220343201405960640460939418348407813967951661486884927926984960358072628161501192284599933344230752258791722394590593478499044995308443946268972153588584222506895528411867699650911645570375898367540214305932090737501572882886077931865059006671359125298746054512264884730076712190078924561074103317053943777448574315404913528791461646008026625985451828598621596451051909280036307147167291654937951225528766926945881821816237898132554989331388408189748281608384206788241611879324619938769221025827383 - 14543878751722336979027669849914126494797728412632104320212740039323434176499538037881368002178955228104851985524811107833173209663298098072302355867025364611193527722820830519438250698025480172133190711916687324877271502699837043175787597194978187266534628447219143479622742285482104616268584000442012481136799846853138105453841583290271130987501120578556500579248696509748744158439318475286898252285095329693441634265019166080149695231898387590743640275503805065321161593049759492994584923019279481643946398018730171709551163894119495313890659144069033569517391791818766926400655258062356758121153033493061904370741 + 5535352150480650697493071184492159227325091239275783872156851285436676395000652399553261289510845394187498413270525588543592771374291074680260280098298000314937426555183973053018764665897556960275263940963360210554211512620847446931660644487395430779549175873016207466538324290966940499298322280679333743476167381316130299345798552227635493687815385558874155006409977343850879581380346071922075110301388669411449833526161112222180435617864393520989832876787733234530637518192077449005704424696725634118652511797782442563161160029212821699843024314207646629710157359906146129810822096650122328651359705176144353772082 - 12545764862284683606972476626477292394904815980118400054891994754954376540006114191942458704495567501567664877750722057390484299001994188843453601176850844305614456103151497657709030973482245019440015485090432712392521442225503960012541577779556106499799892436808128903106658354994616554488654322263154260939123922869442161661675941405370195217855622028789026861186646526225156584558589672702750220118855943412650748608627259666888123683227491346596031930806913107733886116646736732047491223298049651366316754458012629220443440528019665963728014010710033533965119554225810166419881751299546402758189715946409912596163 + 5117295408779374007268789393927141042758696412616351627460039551749650252976500233588417380506053132487112142539470273822090773998921608247643355476575041236068226580878361530426220144115708213187322909598252233449072796281158390999455909562465032706455644441093635441167672268975769298129296596026271791513415688572957176850939722469441922836852228263789368722926072788339533697208490116438318460645657302490839180934555720073086881746212903406899428171651377842088843196264946020110099312188812380170048544397217366316227473963450130617843740375834775051329159718737551639297863096093762620596646882205762807879803 - 14971616389271969300778511162566208182219519891261134343311728248557309562599542431284671627087990264536653856955060275707382217315685752681577605803127840680625975693168636735534490680948177592616945765910912818075670205118887672899641633861510131273321061276861653369302345760262360749949181293123090679442831107566105481489233345048500870973000815417289548197025230702878625745009238672256226591523201536976719660196915924331527730892216273806127579978037460983646447767027104527114821225643685333667194746767107024512898373863141924591275527999133916396654586329088170575479956741964646291092035368288120303181739 + 15274675843442818713997542671858522759032567998043158563292638068118349266415871124912072991448615168698937613509087756303850887540231235373078357044975230028091779056572790707129780213581476374111593839165592059052448901183293357828338283161228101525562562502243978318496088179013520902411563885964877136518908808278059769127388507895757192154118630808200904799440385229699961036786044720477819485155111239146971863517382180619455835427455556262716095879174971667972519473438962295193963606635480386641914740713307212155139392687982863309437143366105168588590307115854779373988571001205695722728358250514498339995088 - 14592196232351081906056905430734211373370270369236638217735709716847956955988216863576565084190358588895704672174335742429455851591963945394139814875302770387558227274752351640615860085917147286533212648079038150487292765315165499694772159434866675731417156490878215456224361355771953430934765029069004080877443018718604453516985454744599885858775926629071678124823163777226356836939470021509555430328507465545105186535048241082681074852980214295045425988337474569473053282573501685573415666307677791792934102240559415666028273186530752245019063278247181739281721714021429339194671168194945476594303095490746666013520 + 5704317741230580109926640563184489332466046122173329329726317581351568931885696317929901000020576201199105129463431141057964337799722262439936214886011506221113941093543720978457981053842303686871378735135604159066568928562001893310564343432544848524667175786921462012694043134389541264744313548745617555354467980176732548438218015004299025773844382191867189288735908286219985922665935936759339403526316685857589372223765988289788444324361259316097772338658407325913885782338336037181134335532537243733054804369466265938118901699284605196730934168764669075580397725694236683873136946321587621092159520441015303966812 - 5150308951536606336728236488467229166493138136459906761795150807535687710551019796028130214809695613359091530841514552545319695296267397670982142822293814236210857446031008353394318724328375864385551139930863043248872605800162243927395042374810237990331936687985610840056862918037539789067483970821565042608366205044586423299399789271425770529125118049561617036724520191207458546091676403917606119874305915461868879982486161370813475208292502576515756922332328520870515290661306032860680665795992704248095474168740501279732772300370723085401073423912077762005754970394492112924980966805264392676534736909562259407835 + 27591016154711097317157551171311043772790862438664036978801445355502558497843133766427745278753976008184899402042947013509020796711277341209263432313630254979857479221220731147692317646768614321828608453575297041687922881626623376277210437996778099835421237872166247991943137664518675794225538367206767643845379490977422949022816967392449696284121996447470290446529909197342770530480674865680229505698544954693206816368724514276950783915870016522284139672413986845353474420411921059754812681794989854885187479182060697001847464886400798522251487907678835944217620726386159204251264526821630953873910478768054150066095 - 15947140853429383315776769354889833079014203493818257070803867743940035558090719654192278457942824606417143939502479600128097444070456172636472361993427790780271632562127914495582070191594117642412757096208148566511024365591061481812192959180942724210188031956163237951101340901915014853932998205587343691161955350053665477051670855413623435865336712719202751847834380509124919784848984997621085681843227092165124638482615219982584784744314188387294150649782412952885567172471811004840792659381893113124994908146090422308951681029743803813929723708519499261715161417200665799354367604431242583640812266908133635724642 + 10190788167041685269425504941180809589432933872888513098319187819693510351926244506719868133223220596908791880476561795586711899998575442976186126727750343613658263412334761415168908762589313821745048220150324986712189678714771541787884863624497294440903723912405148690913918471574626861324563517473758170962822774012962726418563032821081970385846420750200344108296876708435749569914265541441637666835450178210609215954610480307979733098036447978634275529607928860068383411831354143871512500382592794075399714533236331312243976697179612614004718729090831058252668387089343169613534346377924669078755498198765753873988 - 9411402614309959633641609048617770085435480844440530474023625009678744478957513726758601728493846782691010246732474940218446207392397320245738790280221181052030468628383409210782078391272933579645118025408052523076022226037779189118366774766327681412135978129581217505517888142763456844861535928472358644235326451214604573737896738962473524687119483123160390507374104318197628220382149449940689855052524990188286846748065993619624606047703747266370002474579917265492750880752911686504648283841199633689212562019876865335361791601200552218692048546370910034970908710614479691260407352031054670787238159488822683272584 + 25670282278415667550933220877561667601595867669030067275543847904066191925054822360471795555649951122934133670647448622655485744171305529707034874265977727103547489900678679444465747041401601034996514429605470602608206102259371806645932189569826122492293993392892447827651002142785875663044555823859520284540713522631001267541825703814827707715429354877782168678651798969441939583964022858600876046274097774069919269315606149319483254571030882669675537921794884323713959000515078110438521490605035747709271314268872211155215128016721014088979788872639045909822587819918155888721830265800965554667742437046690035633645 - 9709547508386814281940089355445359445430160312531915098078799277031503697094030530076672664990261179732415232303145676965139496505281196096679158298283603115172002042710423228473969330208182648226590892675746908033555452870012538459274408592749546764990143092711287285575063524769113687680577445753205383315741200275578590568160389827680665758519707302791314431407529125937357519366442523117999187195840334665212762855309405745814345603180510474735342783261795368643831343400882030538253130662394001961906709271387220500044361049321675222167458501044709552901405505184695367027457149045977348368676941086466760397620 + 11554119736337524098165097151669304160120408132093011632625935758218630478106428350909200871985690271853381515672920129376113303376000014194207432395957992155519976674466193879047388735190870032618546830504208326851726906971119631190252083175601058063577154889482772764180312476766779454245245713162139555249510177062284818888616382743891116388176510273725813592912240905685072283382783754720196769567469386755311117597110716698725777492415557035180700744669213668569061888972368941048224018085100845127031939418800152047797377043813509283561226509073086811438444055708809731802317558945817212304396290369596898324597 - 12255578450139872321008322858961070611457178644744988123472059857087266078362878362530269057537752731334728194076717652495385540504661148467720895320068902465328850244436479386189046403406984755267348458006088095958620495259011389026769621899511155662478836830800036085694221141856546439209486947059999948004011093749411340380067360499614837139354068816729904373909626310136318079042389637170985313172967015827620111763969427480368916958897208137217530707315051529777105604181800789172435308599456508719410781611611163788022081718970581124378065204260484074157007295088961362461120544623899104509081922614192587274944 + 22780322103910832545679607170799649000244056459162924880687597423406183877686381486820322334993414073338047213828337826025766059353647457706292049913759531950155618363239390318913633459961872495021848171261267641196132052998581595369992445994979317543665821953981926759655253716230390851059458336633100094592711350656831019026340840182808812686725670229180942022654230594986232382793625853532896250854768836622551864248972808045984587365573247382974711742367599304245025711317101792567593733591822134313379963862165454276509732599170895629622016411803393461956291507272215088367435315576247620884670437307653630023315 - 4525912676712842093028398490753627550910282536264054305986338941013936150875751973985595959376066320824072933063227418164731621901995335894665197005553443430003149835633916279717303876064109819489222244414572424690895928021821828667569383760467886206424332571486426463917266341830181906688819275652250693230209869798994694242617833806905834890197877648188311030952479356087672349070187081263668462271773911545986646757715684421299620174515690417498164223886176420417809854990955721884088162530706281164433910780647467537803339296009502704955803691169400881473133685980674335578013786257936876779654568353596948914490 + 15753543864870080156234940834114015365402430408899362520521371347342846922875315952686253124831622584509211662094709709585644371283455721189688539112548838346895585902922130392962096504467976663182708559704818646010869921279695204537856357953792211767838705378443576045460928143665616663821054952801193313989477668350653526415113956728226029257722877712075936977550164730691881775268270633052820585151014423355974727898541749975253154399830791892421771281693882722696778991937813141894315845475645862485904377756185910640001646613671459235022109580448508286903184794396000837997922222102380499056909306136644290243656 - 15424037550668120905093136503348694678849457149829023613175551032487217489969112244284801699037296256611984482428601457180332858325816318836351558633676078879901971845301484509197942871278299391927339923811354336032007781871649676818451627786422645828097795431248434999986077225184368931054837984452033819110695806269332843083060736051449552616277805404599992536584387078573143385453417580832887728593512324814181513702480986934480590078230611032948673855698009539793485671092654920856903524742814801643907276303203907468337377966146510979793006332056530501906628721219596499554224530918875994402112682403830958758615 + 3301155112238766686918541637062214307615444427708449938830928072922306749217922343982177398177383302104588427058761755526449446796403466050244738605686895148565257765810019621341826307882397050215579634440259363897475818321062138058202014857693942133508402466630567874432633923119596140908675991817850308726840719154765937479422503755814454482844545615061623879111204132127045294921143176308417917312875583352744818387391624343132383640356923521959807419470814585290422302627208408528184504412396217126726570656554686986426734942428301325341967345499537680860826692557408677008194700578050993080319656244381096274796 - 10543278909017026995915359746763575228865304275562033193972069570428598172554316418706716213317921555299101050349487170715772558390684635237103495979996210171101912512476484930851829065312767235405560432689677643680663687896325372039637469566205675309931277469024994048069595374204150135000222782721048241873501792875892526878894545210351601820584150417377810851337606224149385993603917108598638945382865354917271868296265549526419246250537274325060614880162282925702237845039748188981870652452796244961347128101099329893296195107642924919202825442019102352529438437603319736443678462599683195890332402096913821755725 + 26734451696121944375364337463500057263713932501446292577561839667485616377077357291360475581674101460159018639384042484603191837652168246775905457251893735352155869928975813348832236196623751540153241093105356165112188133748418475718890034517863304807537250301165731810375621553827776518545881563475685340731094618461383833913102891108334369144219657311344716018070573904271663087598294010332297780220982110281351293028904914119313321036591977113834555977874393845432754158009948130160189241767183020933650518120870617610032805231572450261069383904168655511673063973529136437272404917957417522709398140788218241052200 - 14231477095324752504999800051618310640471080135377064371740788943872207102595415316396980684996102265793193358116626568890574957660925314100784861983650548194617401089714637578799197038476615839721367927887479870345546468614139985894753039583807062110771598050894238398855245211480015754307999202743794860009109404354043967606740141986752996341899490284199157044139687184363293190795676215311839678009713842012961874638138702800375987431231596921619390443415892181669567704651211518523431003013554011532665721691797461567243443503029355557853973475101953519839771564959006070075728062077377035579043240300824298572131 + 28638469156415456447455118012306425925636603984291723876913026696792823617255176481905664341053880034540085229153711920347617129066848388554463239657838432186238559760568400247816898419792439215164637684721668809780764507670093637112203142017448582380575479357044944378921051461529034874213953420625760835025057564757114501285152720048109111567435000639375758924564847963592777686532334911320187900488290154122273733642818861244339974023202078541554858568739011728182057805107676953705099517848441881312920424049901021020331933199445739833397638681773193096251768842271701187062359951683218834286490617800952800928059 - 15737084852617046791880872108785198150599033310709098165990669796526316262599695119362680991588787428018157227177963475271842029626003965558878854050781469971758777750263621024693647087288016872287069825485576497461183767419511615525128851149086670089429344873859670917550464967064045446964520827687440855955718496017724410888823470892170129015226224318923688603293375065766245857350233402951913071681777326573571002553057256200505105247899815972064900527432957503031667133488366291513692211488924842034717532437660142402778491422285557342411698437028960865833377518681722966629334936364014140859131718930082202544727 + 18732811848215738608305368717533545714906645639523375152358347995844424821174547954203192857977991186952642688213936515462164836177761634795441969670031519176258622691972837041005134291821440015653528918901227626585438658654751862683922465712321862531981506728059257526397777290114602009737471292852192374720425745689700021680537391364585274333605005407859224359104292201146781311377963860023481258217488167408092221887997097821229305349880634369929682177680097182190310947717246509400544381336289892364731057244512970179595216493781296858173832290007136467230165473160718713087326868974447951640426619846589115818601 - 10764998355976125564003586549394142943174175045783394971841501127429826115564764744616093852807890899865371359675974352549384593188058136531801996918719520184610424713054674871554896478637846428980399708669232465950113806517403196055865748105204503184320011826551632133043773461994339862739888261317316945016458664691672924873466267508515892020625172209380704434925881935825159742352942030776122064110956598623809519822392945024226307134231694737006476653503611880108263439341409238234444979611702727134131132695448888962429103579429995262752849540197521846467630269057845317215953022221367662406140099217251679391388 + 12108465982419864860151683673444810331229195708009213931747133049171481987730653162682164148374193809048668053852601131927304481708838371837260932173512272499678072038871781169837245038682191831299120690255030874869473504391753273822164012271614127020036970367612984442110320123781732450840643835788094977670598137041534682568832854978005340995575926546250534146181313537164267348434833239824099319478126091008406557198120651990409404940466508468983493802784324363302804916995712006794840727641840573807431473368906073436198336211949969611166924351287779045683986719932219054933707850847703400061984684860067078303311 - 13471215792807004918220766426690888272559264127085491742472827996747129056873083053091922732058329622500396121723584614259842498507109109994080224445531412878389297748207680355571390854345720393833885674986775339541619342807463831956601254324202071477923399046775117083825328187370140226238357281098486518078982324651903833339021091365322586970694663893028105278866765795608173985193608045530119742129266097785809825901682544218103254132447550206502300370219741538795610410937280738822256157690131742098029433769158907475002246780858565961468973561109471458853358724495830819661003620994078140038651574593605122313096 + 16873274586042310763195401063521467421662915898011825802909846213670154059343865664070446842648341935746383327058022898316529968213377498564436798282942473194964186533243069639704454930690610709734666739349613456528054908522842220372172766253231388624517545593141547038798010024754715213740755358126292277027461493387401314581248755903727277199795051732891484615801472054816618906076090443587369402405887997923919976205090536658497727044808128602321729335643696254692227583690344058606565643434689068325517415328961278330939631094340694846030839815446648398035471414523866302268693330399639150052791254785756757980344 - 7639410924322450696290045320939909841401511077285627209850879832397928132690145619717677275623417311497529845123034714248437673042595816505079890324303961943314596077637001119425368161729851910692044021051625481712318207922469478427695943995442241633988914158519861083904084300460854375256117908661149328013825534869379348252414584561976783083826494326221129810968964479427989698146922303603410943843292265096155585875779483629080736009341915416552731304119073653394285780215339815916557192509351361674435479210284190194417663867550981198179750470674831444102919215662521717489176991583152420008647594647528975026312 + 16296584896062493329974594868177224079409710515044163644747529998184127703221843470154494534713256051915454411593442482383779718660645557791062468066551248645609398642489770839290236230735433852539441890952017298283718198998339135182476682195960355097242327300697406316814928938792628951497225013110297124691681066162938530584940294009802759036152347664375575596914097622986933598402381753967550922044949094304739912508190173691778544246397015312690649129546881481141119600140102985895688169252423066800716459417059625246467367429786947459237607826090575192430622746641351273305314752194420643401920151700098537568546 - 3596689435782345851914556576678027434713801566669050348257908202462259824766126970030847648184397026122725343184594035221847572751103215735341399723249602632980016240834717489317420982747816810152903807601329060265485859440156808946668140078012423436463852043097142601762629903130251734712001439635128017764640144533537860525729664061519663679201482922622836178446653423533552357932106230091001743627100506101466151536075040104053268233751657141716729087180918806370118956222658584508283193125799504869803043208209134893052304454254056628374150804704594295222143472610147117572427093902038494251657931162203391488066 + 21116669344547171221266520651420490158485950272865303252029692248544338513672125520592304940179381958853619848220367414732852210419489139345635792887082116500234740350941748128475618460901256365709704593162914908635950912705297177156100145167357346712792109230304706788454283511390959665810346310886933374047797455411127342016975139031111126592075049099817707283705549581069164677502662654730622236110549793267776210481058497157064712863118631911281793927087889770844958408615217858062147318001841939112066299398231218131021544084070685728173096387762784957278436620321780231494433886662358027790207346203904228763873 - 2670092490526466790961290669906797074581168644744275939833293473048527502516826607134511831262269386529960537607420630343670867320864582311660128850767889620853513052767381641107554846277799521929062713287995248664985363052206125099921741549397620480344438122331748256344046560877385559964305238934815996361072355584973526508709340429417407243390074647797285543515725893478387900778941338700497373223942593140327122695038118485280595038649332619308164585623217425483202997634993962932156721137173376397577890794469561569444897052470393772755539167750182976050782078440693841099036243838144018733938648828695093067810 + 18621938686493678864353408901443314323940482294913620023362659686262738496104384727709279609272671312336060066099374567617431003973538253721307889396283329737930132034911271248513496543042235717487789429644549085483917184370287689140357752691549589037864707311735966802734729212471295044339056028027416964542904642399500462722498232514394889206003018606010303961970123575418250839952607001416242127671387999050266467517573129327667889159229288070150833836305918711619693316598284472738690903107624605106799969206979458318886537541794341638759258984168585265175122331904199586089942841679922777786321866484201887811711 - 11447476084853846919261312251451112046698038007759972007756574998856288089196543592352123824051038063695014421723500017718966140815183440307458465255727985607746332712050643885313804296873601103294260155952229844232933702266890165254954648173030370151810689490268939902807248844726634266617882324517586446659929964809697145875352667721120070744896732038923067234594821126027643930142333896610476649380411074975466679638169369871776889681234679014635283763786614115019808214194769519779676609484099433482071924249956067407647332469279679762535140435829143405009734034262056618867500075713462397242129342382876664377863 + 26275715994276776606564034387369403787342403883936635437115272050297554856077178593382822083206798074386930210071140197923199426525299514592827411164349899221431549517325564151219697456311358444465941934647950235933360395004578528789318669119010917520197508714210509988862945869584864073007074992324224239897538431051258292462497871603853957548010070300132073230374913825294235164330412743903880384320960947380031106124593555684996324226612705384465602254205508511836162548740885097767291786527569881890870292594168098012939849278020657805589079019751318637812294493728427212423098327268595060722067343284190801051513 - 12347838077171174004096968977561815601413456105775580940922910446046115438056526791162512731854189869725121678848870385867491605730992001030151905272002301803802546101182507153649411647362729144919618128434159967354642317651123239377730250486016391050654531125070639433778991950220897278877458167510269234310365324965482499846298875599238363729587156585693266162335922247356604669072901528966738896434452819490011133546574081519038330685632142676980548564527677250512128361295150666010518655926926157559184365381794578561980848932740799497332466801522823871496523910354608470884728401494070571433875634512228217556981 + 5471910915483057605341131743502352565931359735765255768965173379645254595445663043066888654034003383634660949957153691804827983594655697037329471361430717333559210975774290613667978823793735103687010056368174504288649418482953756009648670663965372818919774819888540717047170872222851786861417250588222211606818566199833116781010681011672639957457438484088720953585129891761887008688231339234462968775673186288127176215266039954659399947059781537981496491146828350269645543533991707799341293493017647911326301746361781782004596635644883348076063057168004771791377188705476296536592081123074867378278522441052814788136 - 8874484102597774872143030054836298232867657927127628955297270663253864424179496301636236852386120196445641476013959134442490695697215304384751375578532791517088276384590115089869047688041442322125520094110563010477718145841455848905701277793743417496181325815727472214314306777952446466167264519944792556416387345947354060111792127071929944448599767946357060471667505860577393724098117114728101539623826400729440960455811713908992707319548009598175087843504000545445393505472470498711322016924046660886433516786342756294681105957459465669384229964456100852404673289240677304888985186745971572694679798856683426183382 + 7626196921100615606996769236623205923600091283764524044850977590387594721736606626873991400476911999947293396423045795455718430140972622979809506995814214152533001964303860093769545391941271045085857969037173420169358580582086683214780323949391997078059347937056760380588068351874189002822993911725908040752631047456042063815641538724348371847695342976673891833134301224759337451040333689074603386436174205183181724236391260049188346759577871030411220443652322769113314273482264721532569063535447289887704513200482699465991433261837976760810415144665321816400551646538838773501145276477063741981996243502934871574221 - 10350499396958554688191039479158866643745569547525116897384741340968175924714087022857831914484294264764143331629678710056104174361933940604893134730459921511884707845390496376115136356692181904906175789465619142587106882560973125583684768875438289092892006305762673983334075877998654057616466114499138605699119570170784935339405082772798428558403300190742992648498514271099363372154677992985712729922244078583003317922605703857562454338582151307619407207958663105989214702128132442566322465778170988093702269810671211475831303365230919542775403686382950719825573997213403890472227919250104092516464759344997099650650 + 10981640375833878686541431997278028763616783700261552051771782031678012171521045012640476881582923912746153096407034785169651935265677288037743240031093902514579794910168459613325804850437892741058007607802065204656103990783510056304294688484809775454795567054376678727827369888771143033084393089419116574171982841298736644324780586860327639050086329606416363335401431302136598933972381478057334957189389973688673992548140198515103039554054893973180934404792710440026071023863773597128123350999580226386279810767976539846523617475382308722259670394388055601786317043717958287305691337621755663175535793499782121766499 - 13223357271772746733826348046590154167199626714516087095392638476391322687363689588682628873981996371545777708354527277986810626553107297456864613012826064903304598754753493826373480479710537744379348763277620237479134846694240203820167955562127549431305722902276282035066101234446667515427387370884154135524538689000244356778156525031203492581880970626915921879098166392205097965770676456014110336984326163001413010873889224113255383143173679668546436859689103895161477485052715232052775665988745827749304918020967099540771837793502427413459977445822621207501712451875708807086944056454181030138233073997401117560781 + 13556311590399608492621439009885383663941067110846488321849827413468513727749143991916507856262683473037288199047533130897191902175349101094803605095324416217291933031297282264907529229734712060422304745097916061348249983845632494894906779195069643335251317053743628133002653676296406889601778705154452995195620283765468939774506098012987864605629966770548311496811059608729393206371564357887222191094622375201385257559861920256921714840239555507082557903829973875236695529162189544076820348006033279987371449686777394158865462078581998077595404881641962657684188095880855438710118200861670634736669987060264689955111 - 4316405333397976096982684632298958645233944024732956170178508121697673622496315247230263728729989920755863238778206551650329397367765250248126689654656478050426704520682885205117445002393655154752436354563907326916783905113449734441600824303877269809634933407862935222272583580779351202115051233815539990952399910639981359684269965926383944224463088190948313338176264188164742846907359350597740109514071558315813360606965719900413445307061552544867062414555514884125997276452542205113910494547302477263833180052917336109142134391038830619893491195196898432772344462502605557247211514786661841535560346122437725482015 + 11204087306615605295937277178169338309999346816909849687243839221429330189000223617765807237945937074396965077502414906817598420006428590274589463461490787991123599232018834375805843399060750222897824290096812116226512370375679348202672428768467786507884323778678631912581056383599896036768588920777076621534396776508315092719958123659153055071850897913254262627180816238451515788816005215587922655769815388860545230329540461129999183079477835166344136438617482010450940595308539924540109547717925489788301816069965776891334058738091126947575992265561291573838913044173138534935538056167531204721341423023958680874336 - 2646667248915481420096058988820314761444066681636939677926575985782161108970890889521001791211540372712972793259514365640782539615280752855250308874101875879829509984466810989454470960857964688778504688177005007475244777533020620378415653199604670251192449063047252693208926616967585763559277974052295988377819212340073819110355851123210186794427575705190614720147253033993802691431888479350819005128717699285146226882824294733967136623235084944122582733148799170375764386171381376814459285755128344908278264641402156801295353646864868207091877914014027984661972440567142955130478745579964388975225000322509844048426 + 11473184241110748346141672695699110900735628671887670998459430472480436442232358945971240287833743502019572763747563040614354791561843546237509398016012886510405279817912541023212440364108744027748960804963483259710761537821341281591977574050206837600202861567296868238538837293610451003801883065888208010642107317953106390013301980679266343080016210455189960387907919657705721111526766802807778877272743045699903634605467387426103099960056778593926889726657649754104065943487507708366880284993148544705839385331121287806903684614263609375375710584803682872653623985296667241358371952507739978085020703036463923622204 - 1372556651023825556302035571062389601785609837935339690855352798691970070867627563491079607950569337247655874838959309525096673661333864813603080602721238806998068028123354783008150161414739339885696921742649371373995300330669860663255721386969631866704829280160096389340517986049686610745839093930915371247313615008662517276940400770139686907769269276633925746308786253318874417764367286239702852477273781916317100735354057024088022267225832329396625876340883695667031695521234193080180431804322841078514542096016928208389522354265197800974246240392047874253593908439766560790233973177345253011409520247726805176233 + 23433256056666593754146504540694668556655270651205512563720480603150467522054395792677417115842260736362159089501677768625303065366331001165696369588985101550009661208294899159401561581724173951903868341753284118118041412257867450087052635602808555299022468293999135759699160476080417630004233413181417555546769262209493492540853785157859520526577957629328379860905291594822595846875225267439470361107114865367697325497686657325771640674936397972420697242621837857970005604846643729306374598258465570970694550988070949162968812756604568683467441003125917280719467108248855100631768066499258283001302809502493315289938 - 7063069909329691731546643035149967115388639171320839198124569390246448407552397773541560095518422830389823302943327694501580258708708677672440551928701932269366767900580733032014588855885495100942045938199551580776225114546379329180105976778266081850849972897177046419419786209614034977686463690287330291564280635463301111860161971059320484936282026890544665315931998852475525875574914876719324192342421330240592937622651120988231316047083374325096866733013715969698751423409054231940922801192611795746489349727836310869480158494675530988699430592643411691812949845318789004728336117898971732803202950079537248637818 + 20979735512290488117228727967908884896820368141716205829665426551333089537598259531562047724833486043904070531399917578843085458415425500934309935740879367441602156435541512977718163440924648444882173388126365811721169241387103610823187333220186811883290456982190336425416275833967162428684250073010576677580103082730887045296319877947320464773971886061630023415508323705751264589447207838555009813951488403949021630724013346143348823356760424804935656575864886509898439901673505882419988801904342498081560958622549663174608117219394481294027052802679209008865975284502621358318718741431121073646005234001226633870906 - 17174212827341185853484939952989691621596275373744441404542144338789429972359115388572076265778195908558693058916216870923108833436903028020358292706986278799740744619697689318768520170228132853180264278716822365871078531765899270942351880707857898837706889802687915282578973995886002263319195693807771905568604040647316856954756495997058993667775587802803739159427597569986309689015569123142709159552717956457072977137785722062168607872532575861601359975886634973932182947544942198910533910535262541095375835707835433722015227096258987385776628790469270976454207467490185537268329141191295890861015129882704595910091 + 19120668048846782421055461562782622871274515563970707577711081338272278939586060816094194891678685063948969735130986566029216606650251723827317591659703477651360402657635898396605421696485484418443742986969063529964737735242118072903880447930581779009796601458750654134872325680557116891284627119313163496290746005871299054127988722455368453849904939265460091009070526421784401418837466670980058861655921385380359065337822952263162110607919450081783741478758455890567481516494885739384004101756931757924464798150456240989992992815917630154759525358217017846675947433743168350171403215650074085261734179078728650993720 - 10020980947655800652695499667965014058164135913079201771265364263902957977667295490086006964267234468867216176930498951506179400648794905364223584658240907684197456056042001318992434618436738613584534933832717868686794670743555974568026725111063777085344639657431541700263211619054599142400908032377134969323719402984901593395707013560222365052416979740741677118458299526049224429865996574390366812166044395544029774460099910817590465948721851471836597954358406924030795669892545820379974877729414486562900198876205955511841469792429682105535350260384763788420105719660455171154519507616948717238527691395674491519051 + 7040174336094116747106660891115153285889778788148959533376473821801128630898794783252921464262117821299292576915938609079179134771653279673312690202555907951944184653747752767803326667767346928179353430556382661990010109857942978496640690531559678117275397385144622382660534961544447402034955205581767116599806411455296213863251597854580060636239898087600319518344704864982699386638052713137178627262966596059920870800827658876870488499224563357861781139157619180905591080780879747936741761618283114454770614305132352903557245249486157852532362351027913220293380777198650137021385068346758398495320087726853054959169 - 9215913490854276277646792426800927036293379279080132657611164952466735843638206684157239572797153652531557232065171764426352279613394719786974082556537642885736794302273315806809117986273441511512204203743846981128432700813728642509446853986859013878528918930853199302823657097572545471920824176701613375154439919856501447154111679444406037587154036708731454733452846952626543980378628447351826874092987617414021021322739685751026238472522682409560689497447791615003282064063981865087011200712348444373909861249570116754392207126647811055569342496516028183443114286990078669321328681917954510195613966439557144128490 + 11580206926920077819532870207940727970900056963832336638775942293788706840926683601328559324766191273139221017218416245561585733422307995423617641654794973071459507323432935033516995142578926569044933384205733690959681585979582483271411848624146782513885001247049871453297818041779415553816437234604848849048957388810946165564419604976482708583464866083726295110953539891893158621873667498817582869156617380243286699290746318885705839642039829076660320407539289544605649494684677716806292785554583530417632485246770424498960631940677293156620691528311606550754491409106814703768109391828599839378165698394361087234578 - 2633226848531153379888705229455910585290321052920862549316966573035132831165515582839713728125062697407769631222248992014573510634508287735758042760242092446071358647746445316127392265381603098154277303473168826024322542053206124529480244168301251004764127892188242229994763512751294546482137573862760085798958834753620051478026344268545873884173666656746446202200098221703057068702412617691252271788440661973691678913646874015901765310138667886637809463368575457588114990693121019213592949395664848865951788884981107857299340654558960860773615147507696673749648435171797907573106858865090401227060389580037979051197 + 12427381860630060518569571383532420971212789740805967132268097489473038301403342521731079604929278547803948786870023996871617657637728524141856773145549252179101457624164667176238989506525931153528239953813405850266874314742307781320239701652476392750612379330769263556379142385156586834966872890348722139093142888150824767084178057389495058836866525329212789061224382575569293102186619333717251296514974642219251671031323264049857666504021517373441592501657330215620270902004914249156410369349303143060383699659996629892099914737357887412639468331005874271100169792749337771669996540269555870889030910767099508060646 - 17206580459389943401552120026943876493301647272594650613377404114995629423251159796208182512658001641400549784219088829802072905105244559617641905683426069431740002931799974254835483570200812462712637979996115547523386204583618135248516411120424480190261153579571665959985755154876066959129448739658430261205057169843469459075760155565526648164579889507752021232329006247102204808282269427157849331675806215507442255132779358709078160282415644797008964145463750988638113747831487863559556929217718654988603394946653982537866107750875604696451614667240146925522026681952680332892001756150015345862040683684946247861716 + 6621727019719907660374672962046688947832030452388287640454999744933859966702061486888157269364587048776309219107303342621394530163429235944501839244243966031951301162476487420229154406241221999501993196586092299591140683095448988494859080583519778732176607782023548301120163111538457071931466892476681226050900453000442732799604398559247861566154811442571152144891784591800285135603459396657234649366975006139234867646125442383107435711315894343665811941100955224989584019964869511918919444268924414962143179112785059403565773299438042284022085384563250638320270415818232310881626638259702933087418169811253964279480 - 252418139918135302568795910765950380190617061216141385886693747862552878089710288583238682595272579012848439609630494542348334018967362562787387547519765706750483236731209849491801614171535710295100473219351615564416803981858716440827467559280702188331111835879882063650052715872710863025546766062825253503631499736206705540617202317769020331501066274206816140960777850077714624796029584195714769087546835719341054320383237962078043583825049368047358573241368020911601624554184729454555338687175534935536850676244528510416214926399397849599683178378657361560137251948211192850133632880161234995562646107864928237798 + 25913654221017937138154018023114961378572708796433603607110720487671580288883964760452726211569240444097777511249049456309086640371566029197901160472840304726475692802791898600250941978434445941820187999891495405303506543292793590124231686700773022448892962255358159690740747735091564740314881923106412811946184580753304197906230691048390237973018369006931823708005313190027525302076570820552508096439398444451636590375472519090779962836658638901744472138309614557754517500493224363186264651245074272908046861415559588157488682516503417753323582079245558452796702336031781070755621312649540363222334045756829134972666 - 12429511041595912232890487828767562238290444244798529107193745346828553540854349937733931691827083336663656852499821787514317648274980733887149247529689050149060386187017413272190029132771408375161665146577596733039874671082994086801777850377320831096378447580557536011758210976972755819289835063037360420409743408180505441143832976399662350252188275131330409000592285705124191810857190834922701625593610499276858858686172281109748841358394189911082176026122029262539140655855642319381199210000953935756788410153629321980998187529975334388249282056090787032017979084385498002060037757315291974046536558871213621637477 + 17229457506726925219299011620465214794122950965262228023184209717289097706986257605355987409410472635997668352804330116753988506183719986884943354190835060632835449344105532907556552380632330155871238209601865265908640793118066093875676995043722484244162234204716081227711478429724142041543408547732582264443563580682896764648751570601084886281849768161312492524669923215984315280162103398350585765767643293350316275098549663189859359383590217119403327244863699637896967368342568674234981505187689383029092523739316787317751174110826986716072119129768844781409762556846859195549855754137207307947141214294987620901397 - 2479801639813209248272402938206138541494085592860413262509389131960740077949252455307246617615571285370971760628786599265661839737084777213117455372459511763861852550586449219895780397687889233123704216787015228456383095806509519097446723816280954016502212272339585807757801706521799566915092705526834843552671148031034851031773308869425207189840986406701033365984095103260714896556975293215087456389527632858845278435418565641031346061762928966745977525186097652290045430244208116196960640313379187075671628906287102637432647484225477733907943834871838695156201002044940185431941673662480083282518470919817466021767 + 4460598469251974720960684168590452888001002264764859073141297725838329747215964150596274169184386945653822064913558160545916108647484540814345243935107981289498055837337204849747775020184312293106485733984106168922064977184321922508993310084308475036961472593710934731227522766000245362112108829890217736462663406700742006337847735453739051708629727668606127094593580998980558721499030859718598730401894723755522122202304240753438719341923582488200573523316678504800977524477515883049747276894730858608395885583148011496606732353276235480749088989648420714493763203670979794423196157655037448557110452895118882587694 - 4906859429800638392370776732731197555398162981265509941255048266982565385252253494800212913513597151306136336827049624834477007439885808420037460091309746569714993987454918857335342031503823837994725501426371136922642093322323660705399700564351350030800003479763314342024517707561437026077131869235406954598868013986207348901653274136721120164134054180627046767648385466940669549704604300529832890862430462446031035463773652441984161108984003779622306562664262229866333122619635744792294090056882871621922676035558144574863390058074624779124785715097560136947795024903482853137881057675484826123007596045239161295404 + 27894707154607425434445355151134474643498641273208610303724755844319593053748850953812813456934758301545767197099256544152586363556208222048470056711966725431363025405386365675622200450182857413086852739828148249223845918571659053062272768508834818515016291628875674006111554140163559892695890373480227309580837636591355965085948887059090479689703958303910864527913950251576114967314739058615068080944899742755587632197090495352297101355711162803706695519108029094386023918631172331749910604987368812377118555206141660681225752967236326613018719277383431878335825807656573387569408535061124651654432288051132751105246 - 10565922350274630668953888243262597202639309310191041680240513957679349586124106326377403276031712339998689569410794531850344594302964422343675116632046594211214290046291139432709031012176870406763273057999885222537086976304556619603817183685609107150048180064260848615550972499642190997522073008862589862443503534086223681809165642485463340609349947431204267598722960222286519924837108726783717680721279963637396748507132246041809333006919145817945314031370972930978122379921096370636605553764368763492176405703887061632402532547071097089961584237900837222620656309347187025147412160764567283562762711971555888422151 + 8832109202133163513585441033853208344971789915675792299783310657469784344841241707430317544285581826051025579967748056579611430712216240394595864970186465000189587262882486813097264727437469813207341330132843984646999878794383294818077476328780388563923566218877257291571837808990000177726122816221977846506007786070322413137865187533698041962694455769420765026328903702074565275286847294499283573290136135441677312373948179943738302059598527017580429543249664244772682546857653162490192065280001895878055965018460593198817480981567645913203002291247826897529011946474374564020589239920322996914732560987665626269530 - 13005877390342916444420794208385421063371906536977630298905055963556943106299156567575193472800787541801158094047425898800540539787858072049666163745495604401023182280543645372940224871538616351987481314326376613953489350747900618769218216839545103379465943517101738852171613843206623544932730012478409633918155968325752554922063444687607565548369909148187710209101280016282922850026109169839374765261259977952542993237903464626042493495954081000868792131094327272807535420702459188518864734131506055912875731054475272944454475092851785920719460118806512974430662442166977159513476675409902082367291737986738192961260 + 8941638057555452212901300678084524780974946565884904836391453537939629278983468830401859440450861398119642373963870373682578348760079332789299336837037722386101392575135701851553401690138783396116892826319081214232822748130128642247189876330679800319252711087153451336684975436761154540881721570442499139546544071792951362788048679847067995727620146850120056212174771144842779551454449687520843684422020196360989127735617625685517604621421018745703024403024073130514727292311827015661013862796353706351759553440665135917171550880048687512932218726448590672803133168221811920414466642654249662538595122871510365532235 - 4169089686598098134834841423632879462848232590659381447524471583580656934049080446939225390903040271588534281870842554547254234579760825425003563135014421704396328444514427666271224965006846522397419625073056155156664244712552216222102504804597007092334664490271601224845369097004421590872689500135188626242279486932837749977475795473653838622546705614599919748029897481019459602687243897819282110602221286810788366534268398118054389007557603413428168243092111431056092586882879931204088813486875245496038013807725423132182701493289502931337067698781857473069636538631466585049222338863519331003937361730950816216898 + 23125237971963956968047716352924217417277765146870844224222846833529973821602136770868295163184940522850245951393413472685355878307880889460393231121846005380666741979196146794602834681988264987604041368098283980070099315446525554913164464012048718190942066901103850303245068407956778566966557833265815422517975234836584442746750099520580099792831215073803554170490497638809442285575874291565425096240963400534908403684471752320748756337638129178226562342518241131528173219870335477928549903684877816183569611241503794377340327441604652299166246974253453723149843082205987133520789283339015322843092605110893967809147 - 11185296305223406873210337595008716907574789610652358667037267185321380186993682202163810134419112248872138662949834182024389322398365755951576185732963282912062402082248164170986467161742261062234889006040202999615882953940700279910340024129955658323345451401243262438982207644538846362580218755821900608756382499008146710684256361936467998499764491549044624700891713410421947939777532269644845884598103289813325201535491472281914381745214795913229340144618916684182247603831294995390711942570645904250225859890985453204760323451582296051274084403921945329234144698249186376259573372389316929720524754507934444158666 + 27791885216961989891606796988471115623746022802711700818457553998409947219137250965020756530432170807904450625107615647340822848124886546358149777572139419944175192131597947376180888605104085790822812766370125431708823050061836427037413308744462061051265061168996535908756262931512168125011442939471602075918045799190510829543269840107978558609884604603327823305471161008733227442858798286708284040125829311637694823037443033948923447106418284076854890422166196760036155616457577918822170084468114567109934444115302277389450408895135384401004404656966595374207004320425569871964824789687117166936395237450696557565465 - 14489300274541719023580583071163016889475262764583971290870449752830973856082231530670011403684493593521189141700973839530072310724852255369584841814747036291029839941574628515763065736798193403671277517884077906854146244092404972558879550379609316828174142670972268614653923141554144677442144538017948794939231642178834534968598482466861166305608846853756783316755442006320683842340929710292463921121198011526828362915047182220682502691261032510439758132946980609336730076815970202467219873296097909005098122138152426717213247438294808746136464843321073803908213235981084043694722574611680009025829899502122631885391 + 12404246448563138207977862383225148745753146243827476576281274319563432583624334206108879396175840312780113991777047797615012830646538798966947686082198304091324586577562376900373694380670131821519987519738018914222313991259979301862178146702559543724240509563318663139920945164433715279955632641301421136425515224854086758121100061122363932072610605905086763187249663562082075289005744610961467598661212569473250556977757275992340803510091657022949303676422460598517900155772851065907897719622401962075257114286891449209799796745234335022935831999567216636811078083543917305405792518114338252596742799488991499090113 - 1190843682904270441479431777713383611049887345845196546187423267137653990523781643961574202238259540177130703820673674432214738592882934005101656887863222524389605234724693095287040850577291904576372220840681354702706769151449610413687499696759351626834524619465184193632654569902701442421942983174921422160543381680962491369891324617332950110495582836820367465564465068209875119677221345374243403195055669298040273670910856195887280755768874282560531820474199129227421374073699813935647876320465316433065630778285266811676800507762564277628850119320578721966119296208495311621206859894688756775666797202991162746599 + 29481171205864405870391702067088997299152775130399908255788990825057202428769487891001339688993810785608473087497576263993653583357580845627767693156662934654778415098577087288709811915871407776948711285992325502421419024604917231644166655954072552757209890885537553707402780596826275615161270368881324625706972171305561834543830069092422577845545112349320650780677490019470772974776297571880047531431651203489430407859205659658541437056574459775412979925383983291744450633325554083291473398384591229549371872976108139953404849657217709180339123493697436803372833619986200030824809616169158817775981828554402707678242 - 4543572442538415694572127091447475045316139313822085948063702012950803543416769345211565603390819173623651391404863177481118935808644170504115749253751600158090526070175548416247450938547695408864078442174219099309463037465715351548042297412158838799860605195486864591802628993238089466007057358004427970297559991553135730550981565473543068383137331568113178628092515910799507258820419786854221763964862109504905542512351031435449318653602449872074983485094381649157610286911178083425380790470063262367645835660909455262656091905319556101082481599473521093498001156211699417554013744240160814147768398102969837346105 + 2086058849409307450230288861326481346246672839903049792428442762592472837594833153020999327975320314723143784055947386774192406091841670951659438512580083763858073258894918775520812674377671525258272126206060822272469695771903069090143876024685946660700578310396042003463544061515695083994952730062964825095492381184941949619145829008817364501286781873913270706699219637638436094481562350474163365938253341933605186090270293078451948566500685873096028408760490170385748055026329091650595115019625879318381418897611454606140196457360199705153929293542255611236147642906805575513781051699054559087443331178812878833486 - 4668123530606864045944462973097427225782886803561336132739152989301662812989294718904118080127566110536237767086201382781551773913872435277897361961951423011227058494412347197351411796856334864903374752027665812793157387964598118742455613505242176664505670235830554013822388053370469346954411345481681603962915655379561213965246386746009487293505115701506664162723588673241091478411020616429907427205843363120449768818624029348469370115481409502999701157194827094723165683917930920332176378243806431348830658062301404656376239020812058669568422352759503086570088579567409015112049763477537247481292937383234271679063 + 4926821958889705833410300894957596951467939973668589779394554661818767267460905350928382495550769420437778911174666731296369560974594803874715047999152922865875221756492274963582948742102619711738100907030522800003627262859241904182720482892864872910472964463384205162410498169748904281910234666555599004955997003901291253143008605512759746445212103974972907563140754797521179743521140157403077120902850822618464340428906474165771205678918543107670330974111504622837873576670728944832599427325138737381261793278478067586999272765902747308492251988246245808656354860811981627428222211878842790423696599636310166164817 - 8282748415114572592784060276845110153762562864757193371403796400839421355715280662552193361511871352871724465138879377763386000001676985627761912983555740258112960284509433170816859925956785375596768687560147560802473974987012216028418728912411509448075299298174135710088900564281132445351829196055212817366575213250762874742376690321133587128859333368111340478091658183974802823429957706705741048222739263636306210794532990680835868531022949810501999971675016670634954350012631993867208231452992367729808239207338141362607969918834194136008438374670480393656807729179981601728254175222639041802393253147814618501285 + 738160914435946177801873235106110198708690600792169375571011081232919810891067646923696368369028034253365404181935858242829040585815949144459337189383677151219943764851805976110679901948925635435080956374069918197544073528013983113022884111143842545633044061650323237513121672242043769389508384744116729314978382650550837130415553283923522722438399663618501400736816507207297303089473745462016905326390322297596696314443398398488070893026292328535992137109605458696904273436286179813248778427955281816962549895709778189583983285440586193126527543492391114416051739793519961916167526074478523199310260855063711176625 - 13079809715822945876641383210621873355572685332589946977387145410420625906474711850681147460535958232372014360852674748603713541349654148737414323714702633828163706196897142141097847991033152376905461978465175163767945244084838059492835750272411576071772156328178316615150638714186706477897582038729528891467113437830919870371109043247683397988205279501096720396492728595474685153447107928366893713313126903141762990393039668890497169044861445368200945816201988816239024427528263682587092879951398466193227068515889396324984170321166995869088007623000258922377115805201995036133400460475709796363610491869420686882460 + 21211008721081282242757702477163818580339708380050447784176740218164938412347025675003010684082471925019756801919896596314199761658869682171784125887501532023455646049560129493792190864216012618251728213354185270347428744250591757103266942599859386758962876082960920785122701337980052384487142938095629168464839852523729451365424021485585949066201189059898218682821022500297656518709816873288454144019144814753771823015478580292226368982029259079888149130902513110383862407202575710492084654635197507049002169013371176385513689204894917236294970797191092615717467307283425957406499832657184545590480706206481075993039 - 10137746890572485955696618520934540044961577158469924675529310294277798329090716379448439213351839786860111658561282350396200312212513061623823619851904563152910002805602358425769727606646588162873872069506857621915041980526781515396311277193044852164362602345526401374355538829289474768371272495323053795646601433836428962487781746646289812698041304796171900117535429488552341599763807474003636023757026832682733810203638448883622583393315526298930922227611848571272723514096583160588684592457151516809416676826188868683570857620079745830999359182846392724128211761300602546118409508571696094791711319381804792730427 + 24193084674056283670048036022656381698281059962159757174576191969905880597864773982031511199370083740227950046543087254681150296625221967776499723839887531811270138169120247294028417111394032323327528748013963378141905449157139878498265983763991229911692867673436101639148161288217968462709260719331714695092256223080791754067194900360287666236749266657797139663312801504465812941849945093786211462949534807979423850983518806503653748071897532694129219903358100530359825318535890035197851817151844141652850362675771996172259465928015946528888065157272284908850657294449306669051747609029717684742034917161252214014758 - 7768535688969422615102281360046540601728450446664823355017046833243285461514287539902244351202975563930705311345445634216175636890518975734954657502682713641697845372136758248887380306665207552131949909687208333523400858584616039738565701134332758960531405408009536333970983269597954078654416625119737957510534329242076038797996733248089159144689725400167449347418123973983436333153140880831752250163500382445702509845668198729984632206680157121417503541961694895576403505414052932859230301766928990939001366313256991599965610705801756571671722084054781220996903621958926641803403570164142577523585382469510754972895 + 8647258656076150243935062193085224056360818591272443221272435213687673379755122085766346365277988716289979150229947961724392086012575679016225095468427638631337946362299312825265922828310205623012428128931359849382490827282073494913405122919073274382709307346084259544484665271472235367486758420285230706445429883154496943286016190081668739059689235779103309142623818285021370562530348243281114153681225330153819453394748258201391448766574864266482219641665772145229785419517741265125068581954127591288978613735184583999929139121154501491798219689838029665893534067242901341764498277538702815612266335390622077738653 - 15907609477487257456004385191739875963462754651082478564053418150322704141985692770339588676282506642432153849971273878237202453602201136655876564955615317900760738859951244536737153517600789265019101587674758485340901905853242587667496038574425175304316879903211067423650165969621918400704265989153576985632434448393970272219604646142784766166606515893599859229236047241349963996092731735322615191595036072743836321804511436103955251919063870713027745276680908319287760641463841909906595298160522589177109112888532552781916529655136121860653743164201200051695744011501957008343149232491134846163683458633384622127225 + 28816100207456261802200981864051799699566215913611436360049182412833050761478398062905369506699337851446306121992263760555892104643888708797519261623708881189364141575082087015597698098985622709102724432338676515376401623124840168232412453166960454096952343272196854107482280625663284129039188117977619778967153696010984193998318867754158525594164486147402911154560233370176191670059579007176457917376994793412968353296424700285406170513360980258479185746890531033864531471346352253476834946013829398578606150578124846695382237749427040327123310223392310294812073227459226052310648647257452775054114322225263467908545 - 1576604484055477041953686382700832635297099632126147835357009964821750369423066706000674276359295945573209210946438186692014138476474710093771194435234020525457197192293933948177570240517023396070925571724731036010464061225600553638484694616341254605908159431841758115090351753264705571727453673018751237930111603331727406427196830916006382200710872909127706945767345060022334800405016882690748769998307381778783674365709786100927509376450586601135005109705925818495736406533607177767683107745239191596986523397961917347983416672009786180368250352785322251908450809018373780704604061603124617776473434464989630172448 + 12435532759331030760035079023689692519462735476615459567411069592223522328787437168562989273648097306176488788931863313708528523409752996739394417754903045713198409088913676525090115445954737843508521412768475861798846297418879536513406448291573199030359130107317012071498694234425593266776954294456724314883282667539923737311768122633980456167525645169153640229503917105700020143226523910145945535479504309187576624043299131159896423879607373299809641459231910054429318353215202975377748074598558724224393417078704632801843958146378557814906287729127352957007850154646076981996381968414436067602281026705872462812540 - 9054385741548332221721287658068962787835700796375795892539552578525498905680736754594872031399274156228084752427502652204524896574806109470509959906377975270964934134257444076452263185226625316998445856282350457599143467254962561021576805261114505645391569558776300803267975673965884839512223467573393785113891462215983183586143989809676911191934265817558466963310676885060747412877916489690818124818012977965050077332961463328735879423399158178695249784732842913217832610199128850535503390012729958387766243921071892799428506107504211536248616090262833385877129103767417676158880288464906117164013158962611650500730 + 24847562473825077735435644433063577715579039967078339494230344256158314090578674256215572999100247586807481595076846213466767383036500120637763715877915293514784551269118052756147513997786209934883735484473169802339315012559443532205218760516052690625284628111612073253780739520907680887356479356692973179084154395155938697829817944353356571667422517598474495100873759827444365303301961156227069156169391021299762498903771407360029048773472983614375593518101997065684822655679615663492367030769197893755670626334163217592389257765266638648323119443219366770012194169580724204041923547773468066729466931415746191941078 - 6665135194530113631127208742974239070973512988483489505184587371046720530418601690969947150887784808068619926876421241541421298967017742220085366451315088831478236261036405591138510968405814325865659425714769718933432467749622633341619160885466882191818228637980031905457338603522778349485004420870218322017629265944382161162031137410646413601074318256827810956002655494469546225529741508989932738462469257455592905770366676292162815876220627250141933810786051771411797929009181483627588576893428565238878929758669749890176861623625013565950550806563252571259882543266960659223427323756292181520583485689762413788832 + 8639730790406867991977107683107111503321365667530739720735767081626862213779750385787772845196688107804614865947202268418877580917951055686159575327133657647003705903517639180934038317325928637738790879046415829206251064099795774778269805082646407531021820386996109081664894276801058973687968420927000012409363428523628953190113168433608733926738814339938300861389213024730241110232162137577916612160814172648740903672703620331839717527342964523287341622410013264527201399481045467958799994272343677294664648151006075618088937992830707912179104714114413785702291354750433230195558198280931160178803204184205159569638 - 3293707166204138875308974462592642864792321828493504836580196180056993713076331817350339080069188830709533201358956540252154197771937141331507048946944653860229749295797390947011458824935234113081991667649201511118820964785316909005531775671893945222528613593743940666360842198056806415574443183802567375655095058840008889132581646711203720085769541969249419537477308634905059608369828148102425796810954528527457244491297482703342554113576262618876899113094413464170081950735320229465204619758824797510306467284622258631224240761402598793543162939417701686186530733827610636228963017521530354734546577523875429043373 + 19566481972310725090104877872398316847138518980250695513583999149429609909037809154338884995861378008792373223495724096146901200247957534716352826389584418630292528271053542295690499482316428947582165089390082171860036787561055159184034016315306672289519240184722592361891556419576113608472559964797478498383081295491404451656251343662084832129587125331611755504398360278840746413329761676678671286267226339798498945664678681396313813772753849068044666136401006127519503792424589313429071091262084502302576345103509928370650896748570189929462684084370575395785635549729935495245338084433582428453368088960300973100636 - 17624814385148124554703825441225014346945053802831211444529970537591355854910129209510019495389453402462894200592914374148515400406872472331803233227337741308599133648741157140989119101081127886847401178527280402744683813950878083653658403364495973595451292193815296935174268366737316774974258254982485036752699726131088493450499711496742061505656169521352770097143235640438536439054041257152500743053870380939440095776521234661596957068158220267885746377853988007984446381268831650902063197712133651423128305825214472915794994654811391355845798462524735438805552250324892289862190203849505079836971841480260961722556 + 2165974665067113413531836393059835218990149627513094336672871782129949893549105765277286840309482749865580699230766237874293826286745407382229639614762905872585664913493519849502706715423789805570313713481176340668277247751159807609119892153126969674029129403327775526355934870003209963780432813455802500514115384365135522557698410049610427336016712896518805720165536164254487311369461153536051598207578740664730869934905372487159542966983260261514664582499197219118462153811560646261927767972423519336100300831183701023237735246997318422204554473656909170811034430291777711827899834404455701996796718987029674657191 - 10853888994687431933547549682405593586397569776306604763537217383052999969798242197255158329791716355110197056358835406340202198137486273900796336623806077458027079592964025895983466987623758261016705131780630949619609825357803654654098306327192628957685487027784892710009620124621118528353145642258318332617423378722170368702439315310972664072200281071972297301042491221287131139705808466510248330146371237959089389156914407789925702286885909457369259332110130708291693268957230097264387800920708922268809492007243228366489137848351930541547836490298322566751495318449911692068770143195024764020578494328568502756125 + 27940434184017295702199206161591128346060225982979541586880819904745086613713248150248509772097030423609156348365395618980577360199449113643629189669093327569503685415069165442435926612753210224091778747006126517459187052327092361075575557825215951632395650771744368841133020460308154047169372811460915475244090258524321836467095165689859593743072064655205676932696678293799763311944092221386261328521647824783362738738828707745647844424964558066319906941679893185980487296297183259653938854079940337879300910744586400835195418669219916161537943730211210602526284581056918244475443871628099276626873618539336243096915 - 3239961639547063394116888946926182589762368626001913826697230698704160496407197622822338164319267864877556326318766457873432451514563974054773953170294086097255746418683804276654845956506786748260681541999095166382919818677674002137817591700436645997119086543241876986046107660586216964475860126366338528023442564005555458198113001276815368229246265611050636739291683600924504174137557471017964089586314628982601452903392235147838877328316529836853177803183189657722222517763066672769321409592404654804295335588519750156530153651091541434798375732040794432318314133414948372032127577817678402896451203650167212960922 + 11866918675650754648844751896078395837001317376289016555411488427100049177562629007331176660295156531754379140773225600169342452663850172515969173411780020478169920439015733462270387750620601189297093055515848184726100940775429504402917434996014871685804825411469119817471934917635392032196503375052516863960030186446612914630526817974203589827723691796743980075436954837215923756252016150413690812836224114961446797675356657063851679869690218117913897876390923598245311521932170860304576777863896267825843251916269575895881523013486348669482125761213621114727473468521526865819434894987528636532072314903245276935708 - 12993161660679255519368325711424188836336969654377718407368691545740107631328380409497340564041588320690752304165565019605482038605806728617678958125282885520744105755550806381990046054277167472982440845158659799384896839958667369157037161318084480702313154774738925537541349714475551370568512376834713326935267584683334760694976372593726021848910508098413745393496578545030589941515509203068084317182658648157707094828134060183385508249724464797329551200755661155707047604348538384728759303504414580079674591990893168286813230332986194528433887783612434211556069741621060246479146040950864716231157709396269053358300 + 10348087779234699373701139646118012988946877593748361193856636271077000537115431866091483936156628682517125872703604937546351024062928357032962199593118327926153314257313734870041838786325063546154271829418697980081185459806445870802303328562652581002801014793708198246667615967893864919210457702040107872422735356014914591148154029328777704454119316297401882122036968905248177704075315868636631697870480995548950082628692414573033461188245279856016214169815862654710054916994523328341202144816377927168781470334300462802835942168378548347515934872595092940594812207812299633392411997153120164659840785040094990648874 - 15416938142769939379072920729170504275610923805219631103150867136977206719308855462686098297063432052339539807847421067714980298514284256347473739640198603122132581021968870043282133656272811801350068809616808547940761098501028632182199225564468211959843272371512231348819365714530300931793065972210525948989856603010403374109261247490624002671038363632280852101756408807106480877697188544223476377922649807759279491895285662172774646535526653533836352834534029828359797050781275123601536813839830536461403011916588882771822225308927973565266088514841551734094426838028941511591570936577316693415175021310988972979175 + 10244148460698852573748853116849816035039937328075868707183930131361432077291181114552613003733114008733420191833094122778785588589635365754234129476596030195602205350665695392937377400037530906995035894068243174434842429056363898044980501697747280590430757764479492011108341712968543637192281380517368559670941349542499009880658464409206476921823813957297823025948558241455317013511545478555089978769713526125805044320972102238965182043159281955579271930140032457566361605564819378764353605504715254436507044763352231699860987090037928647842114032527943769116730880602357310670223683201418974211119459326941843560394 - 8150767954077324108153706735268733834870715039405632728287337649907499860382101534760079236302612572460563893543898785024644451786824468503451619819543411985469793789772592433061668256117907476398206792780329337533167199533131177175869045174910178873864654712638968056820359618281997473966288530136441768964098654274694443393164852746652191181230770536013226896802881209871387121216635601928693993943147002541836452448008211632042285675195617405925968996010628390892575776959803419899792945875664070660898528698075027926171111698372462868833200331940881844289542511468936956219319100317457105088999875536670158436815 + 15806199564187260135210686779780485766752057693196809179306364800840100385855998918898709536409254918021533885119895403578563302336057801801383599771705667931327244607470331453969084286622013661807019654226640517131578013529380612124840229272859858984191742903536560810271189452614830081687938279174879587602589397845278946273254524888049343140292499591787060784056138535180698655823574258082681744147489909260103480074322216307698912906134706805909737384396348763796317983999584546533016842839329786495177183119593917491600173624256232482106212234261532303548380626527834336579565223443225056789966905763497322237919 - 6580795427757760912877951235475256270708478029596500967148676708172599843011397701724459497870092490699043167292715608430549204879648750760586060000480925492697120563082111867726187525948429724874729793303079358043087750112016759441944090089066938211668666341193634447510657964187875944614906579840053723049459892682255156419975778707497179521841994236989474528388565774379762571728533430499861495698091443763984523141896889528854322153738212066426043255641451637568661443934723255427651086588504125216785349969805159770243788267498117204066091915078143721725774674832178306118523835783399699421635895907169159396199 + 1500351741605361511073422810753757507181639704806660965881119717201865881084179644923841233772215804621247017456913728931382725878705759781048070820333372977574386313770055726640206103609343027526242601702205357840812793247703414392033703444845887958534476814070925403577323257965794212301075153345098649301420408907231015653163466581100982780599347649126867258114188291744320414383861957512415703826166998244351383692873890789964279557116094563242198430975525053259166298377129138714489379777763127647507749488000542923246471866813673734573293869461034929774084872144233222003379700778022612743996320215905364041266 - 10048805777157745773868484157624107346105149601517708241286328272462880400872721656914877363879598765429663072126093297072605271184504065699937046420344865049732602832567705818939611595993721228324760942754639620978569059427735524877542743258354459229183158590124441600074763378484620707010641827205021548308029547014565722713168246310203677861197389635851794274806780100856956829060720073427615432503725536814423812312377653051976188858601617699524533864738596703808076264582136413770056945438137040764837496025529160153617721384608344396190205661744227087686444846745148056945568206329006190742615472908969394007629 + 19214673344410286348728178498415870236144407057699262193869898925144637588218012794186633437472724056816518529164451376895739676926415758856117380733073841079602619396541943377863277164550967941322787398487591032035001001495973059591116548702794109575166262341365659306968573994141040852935697024656413445531179109052124602877322833248604960427066712570687602726103362738249422882599876970843987126791573067999212463794777944353380628617683044314098941982097837141627391591653782959141935724929476986933752257289798734430523975074682410306424035712587011623662508154709269687961316989447055987766945994322585140728331 - 16690482170475453288086751310406025465401519141139729653778521885767587207485005665607065957127524264744274548388273594238134502474004152903002915282019198532974893033550630964999899172160148101763819532770089227242401580286793460259910812019405047257261635580970634326043241381830193735480133715190487574015473987810322559043891221636929351711605106951965844486635672393752904418340559161301198843747211688264353895214858623302947498634389416625396992621767822838268852247692938044279948901947284845489645730726512011444770607000584991078664695267125708867163268392049569724058796056003110961596249999184301970436854 + 24362977124999983631684673033872344357057410473618414504556456946869791984584857378968377412189130506560996972239698087431388706683531200078662715968740456703152441238612880857524313761496278624364554499791821958554362510879664172716144198752012485185220050023555724651878661817622772590286080150911805382359038966013025921942746249931914503904008773685857605258674328459112070072761708601054234650515191077254438655191364227499962891686966947546201229435311980583605161011228443301784991530812850893442247524334751064301271072782269836927340094450407413431518413244464000775008435721691686450017274414205084307179894 - 13541809999142435035964246485604929324927035270837209430809990721265090362888196532295530699699012180461984914121057379133174316424547689119273034950770982430199865738580405747451305573230786088149427499643176121815056859910080294782734088511842836933210455569197019203449569296637560174862374850373982419559480130396607902379323017210034041254847507635613560572896909113929265790462883492527012001257939507463369498297213333928291833959821482334165875953878764952761804960189640291151759652609060772091953156924686546108690977361578652618004782633693406342820916222076808492435712830537583380756759456121611132467028 + 15358891120597678720610973878109203279967820362328876764792921106460519644827253687239804225331662086677276081362797917823888663796774975112712639850165809939906490211258113927456380694855922371433736061036945034169598027673200129015992045957508460254581364755920582297933281083736372514673928299008775109144178331182035141578082443957055579053506598263677520955404945967365106417877027688764706634902902351505141803817402197165328453408152566216492252294201593655498537752625769794389174006111726686141251504315343445574011652303710766870743753262116303186629686852477280801543004044956120510431918408402305473041607 - 11631429510046224379827377183098985454747121041246785815493988928661187048779855872616173226210150460640442638925022809327652905566657704700747429939768085107167036660786478117772866733776628955602086010164986842922182572140796050070327566448800889795081979523123847618597748738321475880036167224013751887422372476978856321370063982620031612858076668585852965541635970229431388138680474273589712783300170528028703718646262633874778600449971405828309634033754483236079897602527580768175049919022535739297993497504217821022868209323056961404507184879436695748436590368033121877831107350737950710024122627601767896398072 + 28539597642248759914574430453702433896299113153433026458320199017671550740051570733386399268511483528445033749881530245679785018032674911169700990713379892149044444216805819267498869308951791179766728899599038386958204721949751410517088858004474274890529585323199078047996760548867584202217934485734092713532854660336508988099820451830111742017300444584989462622885745836248282170648253171595439667997546216156856967719510896033891923437080082829659834125080023665156896303711476260695559454760916224048766236316055071995523062753930774104401365926521898043573869948673553555766936268042724174764991516761244315644360 - 12052721241255349186091098260989557250817105349952007858913779006474338242061449327125513741351544403285334411054360497106508338011059280708835404645565412565029300163823931094715081297086111125296652953395083623803103906412007638164536969823042887320413803734599345684334978795664731343955403106035193747107766099418036768118626274962521265783975873109361603077683549889039662554042270856152846031472222571429905267456874328056026564501263402627995192135212252492920640274121221821039938963418602014733705266402038123378027590407536536429542362662906842672374035404176374898094166760072178565998960059051689321246888 + 17855004807176849427475519082344136721714597499944753567816549891596547439304922220012730780997370177687909789209029204685368692561734046048077349806719762744168612384758319692349395775529208773724805315596746164064319399975740439030462375280746608938732375746648451134110915348479202439047204647623733271336468617726847095454927756945461678981196930229328812216261309461046693284818906402310877035123548561484681192743741161090641157955944054914166445007986803458844550907002998406479609174287127585556955171805337686883007941045362640050956345552239454330273799668093980475294205577963944431735048114684773996556128 - 11376667713107517602945587800498767382240149060571146193950614386423617318865131051128859046333630864641132589718204527516409005776278507433754290226116532954538727462643784810339843283041871710156506064060146620575756297664357635177512985381998768118826325673152728421759955939667500600956268954103563334891835000968732225420528283969987826248120434174747320817760616935590468410103669036331366605449542379451260480608756932630922991857797724597408225150038386039621461831046627214194458487815080095142553504482731536603659921306767636552167368250119182464865816350597796518826009730286327790923020333854996278358950 + 21168785247816777234860315371728248808296118811460688018857214400433967177652295310088706795056724246742745418846805807728633520076138739726948922095037466877352530869974734710291085152859025617340907628373947620302308139866769031711151944224969231186303670382485921847294561058441458168795210771737838839458847720179611200308759360805240017400447730542210996368918699114818390481228716268238120749214282883956064663593828930759740361557408565352499715313440806537949998082203905784092917599899206256743778761630961939470600226794597304929476630473098056812055592795081145406068985898811238250927983087541480670125487 - 1880615524766608031169894075468749813620709363968216023851450745575573191853597681695280976306813205193605172618287816415263092000691249216264821047191736129947057197454588830035029056018489070362697186066166803228243920320284145280771858998019667820154761935767128470071148626576282011329368223222333467296704411018281320450269153158710216086583292783209338457539099001389503120311536655274761513157594994974624557135017476257030005672576900045954129346781887646465982572749383861045674257422924925826354774441506513395086455177388176066387471802268983202510708405921761094070767518813810471332365476440081371247345 + 2161397094723404416674204021217188974262933470172468898317834741866720061906875665495554856814221715032723618352292529430911438912892393126503949142666819438501379822788707453970440447962905852545802395673199168853116912131453824134051467257072807032381469073412108677384277057608584317431812929861878741320831874498604656315620494470023402912355047110027415983578919393702510629507154216828804916412911026049140332065674247837906651298510010728710250979395493200183231487648889391964817177521493185279361451753913988525808164962933855889038888835908991880436476013085356066228161779760976640669329081769244615702930 - 5342752947786051285676223048271462340393174200879646588842096485799632088489432717852528688044269694787176920424287581028756110787812470898534167438869252915788053909822899485078577053548076400451984652632879355197327180549445330681723820529885359423221653881939682474800821802928782028512652730260381544378120149656925224355807732675422687650612159498865391876161345785782611859687966272657509220377012789901214748230934678198655126389331242927231599207883050488343848033870270884223016567650488152896006729822767029472904893127147539886520195882448262473352225941753605904050015976256653514106201245433232712753965 + 18411013905624567967263391896494869453839958065254443281476901320986153352885154081385161710350038967011272991042593961174881002285265120133789873815413318658615434868567713256316758091751355053270204628901196735750945917645059720182387695389959532683783716170264051305071761506465056401687265843937678514552916741613635057445336133858454231613075257131685032889612413768323379558675345343181297758712529932274081456388716228757962452887796046703606516281953008703180818887639118959714930969955171442061247422378924308877745482841624070238734926514688781977198943567474662552207904704263581394687483341283981378248045 - 1729233583271547926030307805285056045877806263135574138197585548152275346120249980077878389130012917042154089604928785318349919062678431811352684713491393144139874220563642941853166725331591414181351396315568933671067061398175540423806839603719129329610379082046238460258205863748057716021991243086599952973271116692258895034658541399410521114437408280842948720344983723239259492357566686295740537443151741278164844410319802769715355311687360433282101641864500214192026865885152075585489323398133437961303522125640632220549142159125893783403216609017806547782021438879365704273569961095550149961744942569435139266200 + 13028770359315009521698794626752910432239963698099542264236725896485084374286277406834524279658860689609112093419180528905512433249574818060221071407592985435725893570462373443898981913698330691684810989907051058312348804857995667651204190793749151201305294646879803308444505296429077646197281486803197069999131483174787425062036019931684615493221200703608877060884362288757994973600055323415766339075198800447782461926193440152391497714170176609779305840066459892466333642560034283765494669220380565200833837762727544788696723761685699765216202311843705162342186101250413820055288970312539774931461459741476360738039 - 13983040044882852086525823415608301372989817118057836037198558156405251131172431291452704657535064403570398907887749482183420440636334778668096362280286775203109226431057361691552869312027136924493770537376368166997089316731596729130638334230383760217493984968571664004742539989756798451683754988942479444211881289336142919327298550430748780203845097845896847853932200935249125157590677628684594299543008513771588277555802837733835431031341641936904665426610413041871544301397166657996953607278187149377040127740632404312986705377307497970112078685408603725843358436553115942466801733547993595367735076854351708713526 + 16364002137979736248714637938517074840608262727914676535904703937195678622763661658785654204563246314917342575388948655821149350908045652992094893748964233044058928251977335394714037477213655726500895138345663046239598952888745326753717091544077445867849079426399682797749877243858472041841318569544393333950727705460517689778673889730503400933133633056333294903960641545745361320073215309017568140996491566380769376817403812257229817098604039172294090881814453157871723830141095605691634831100254713170448969516155578377633488343052432488150960729036104697577596663275430671142528647828076132244373003688014977579308 - 16186583481634735775405332430726109267417991377506559444404989631952670177984134810141327035304038866133818183557666481897677575640338836814453102416971735386065963308047328483778220250176759183200933826141654159002221986623748420981742566822291697500189804954316918549303598729710609534832465874463789559283759189799328556437969369662731324707624136263291939975170255141183308825418019472733651382400333248851777171398767869624478965205994122787087679233022267100138782135161385170572791712221627612790252281399170626574863444856369473626431668721849369033995475410503496450887671027045614389106998748908612072692667 + 1814783249869957423897681081479465110713317389462198295903310736322355036471657590422895340793644375010385178987019577771633296598014603695691877449939635131629950478377734287168740844023276423948143992190237298968503994476686177733640773084071918193500215856005437302628976032120692600595920798907001108766474101689546323114295929493324495052837410284143211743454404496809423239749461766139798320777578393427141387848253810657079957635461527314249905263789652797773584575438477390640656205449870817412928665236132260101931615286053194652909237830281217582496215386423302736471256210410318499385064064990524436949129 - 8805437002991805013294513919981381223495204012024095608995659124086118511057739016055584581020201579942989128929483074835649385155310030931354568676786453041940584992104266316764716526045769758333849352350492423866260466683362268304019123226501014157473641136080702226534212420798558702453951321639951517719056248282934809580510484375018074162710562768211767526450969754867596035195231772114261348285345572364521237646458829807361703680677660107428116396849437832445623839090309355456089190083708502390127837333156659677029445696751463344384562947348686993348212667185726282042838644104156912563432946738617873167164 + 22798514677160214792504842382074829679350424102988505061799750966864640962585054134002000872984436344139587835241568535164536385540849958313157049453547402535697942685469582226440876689746433712154241912911529661312493272154137276578384528725436347366459361579687738636296904943294341572586592720130603741845066112056384195942625340073531541712564408590176506194578880235070634419793636617672970550752410112036814586224244372094755835519271469431240173079721562978567671576683779383144074198039883737008587345960747878742586273476935431716443321938373232839846751423045646395311191101254472453114343859259386035999907 - 12397348234453586643503963123040363612740477745621358055665826508486404694085775335030021431775359346184504652512884366926634065093694290730729761896147146928416943982342098306353428138109353108749284132002894928355573898372397206163088573997129010298164093891724639660556802954847683424608074033149229145041168541801552854400280615052301591389708496164546367446303539034394963320622550738859839127647244043760267680665829162215954475520015030636008309863139502090052252021664175871959958503089856296351879184080323303205149510870163812526806435530923553913242917590672317273462552554628501461111985304295492891019491 + 14214507139635701928619879103010213584482298552187497432706758808478528626869361545214043433327416900856856989029865115491518383433854421937507601615271036015948565025619801786565538385011685336133116997750583722917553525737535622138906341914720947413800437405354236149373683812006003151380905848988186109015954264816055121498356096976336634442224511010831475461441908527228801001096578541687935873428459697442763010014411774935147540350800002050486092410610722343802423120894183549404250173064949704354776627498697772537041987897113784177455559222709500110813752753187483448461084224876680270829894824312974792275407 - 17823520217562238189628802519640036809781158795081972962055349353351469315415711908012611162202164088509750342897506271240443211729697716883868148025816227158993671112552378152310032431987662606491540176746964527909223627959974505841165017596380188887843392140191531511666932298168642145565994508931148802249730097517393612331524030359898403456161412194572563972900351240676984879754495552867029073079680158877918842892481533024761320258518004054454207290530920996710198535350377905060086712012253903303327148778660584463107514467931383255740274872156152772528787750662547962384759315087870439450844096435227787340014 + 22041337313661361724861924071066906908057617103869549637636432067171690822565133485137349771453270452527827288414584146164497926820998625516549666025584289011936119327422625960182199335525786987525065949304617550218997985480870628703675428808375826166877830863093841258371960090023105198759034852975220154922696376079968649181569264759323515631737706456488809574370780357981570238242572377564022504420681127596322209888136049709367912726667668068787101926118361544679909313074236338009013008373734011771849488481512706763278198937471748516695833682960924354181358482900877100129087893820793150169128040105333457503904 - 15182420792765853396849320169382096584272932446937233469994655523818347558439312641839213990475317237436463401634889945557704776903996549999376353132483080501243946159413296226924284831252394385967823835550322628729065309478509783922608859557672170457318599119845566797859774306888960937311806136575530650798468295023685195868921194934859107872259783631980766879974682729904415089178427061882198379492547456826508728014036851814299167940993704755386114300017834022490385690702750908565842352138695170332253969069001607272913931278680710145214811534944172916066034745980432186332087174642261018580551331228714370117109 + 8778492265162009609731140749064688091210156768663489498905013752070110699881866064551251456080226383583967900091140015674727154622303115208862333291538907126754159146934536373361114513032851340282283900778969200629678354530724163625767881013919343460521379322186933385638457565026794952563640880362139500088601816648488631161300376598009291611202566484036611100633981998141280708152012724590316275366823543822018690666586967596262354715857448601179017495140003698077294846185983168574016092633475283840144721332530354079038226737796969650028283500663801590707180119066391963317264889095546001760169287942082350047690 - 1382816126153985000027034135993892944920673993384455440479931169131724670981073357703257746889913079599224078364322894149126632995273856257129891198826489792719380653760782391473078030857977678659615356359867551210830592783741705650250150357374879590811835620376665132227778190880899154254029231878533599638776172796054998830660158523864076192706061211818700586262946139674071055414287757907818508634828954542612812751567725866431581086858210345593443600789415903975598509113354152791895080439962277421659795037948776407280858256830577752738631242885770196880737260632746705995437656564957201007091855556195745917478 + 11329372915499933017811926382911055821140280789528951422381363251624824508557367584344188565580295553743622908785730933473550684881440467347520578438003218531775848094073120185963113708267732782258967445208204311705366272899578641143306769529282500610584942159086109540336792922707953090593996875496475456298728383286781377299105240229996403061147548137386788942222623959090930110337457587986769342952957334627974585267051357767069566700640496256859882649785751664740068250691532953139439632171789344503816581674421229015501699342972754359194585239609930239849957240964514902382345418919453950354675060258073545287891 - 122853721104342714160548516754362540856235562020601919030381180798845448387260039722791754198670345660895961731531757313229455908967552640595600015220162040428923071603421662610172076199902618639011475590933109278395875903138878580781275112513023951561176393124790766564349227427903508413337961046686475831371178783253504628878463822420894057485478196034688607439629402882166197830036079089761488946984858608015320650599348938290260773316302401665652518560240533054128621354565306864658292494650090031508995168428950308534868804687950900716408043578191633659737889013398795713115773651677305752948791381997064420040 + 19779620613098973751178137493388908283713871309097531021063731358272001448627301804860208974089903487600047774457932927791239661932853904239672239341961661942485179346408922719102066053993090075442428075253656472362401746734351690025663262069303547437137499531751500044734976921257724550085210500139967644715972669745551865730604410409661102866470497315025105344941945608248989749067160894812041125581440158464373950768289391379891558108050361318638168298421109656979180868151211538518143648315885822130011751416630427311897256089468445048886130735001588226952661331466158691143255302812769285982248056751323494669882 - 17275212670231649036742735885221721020567757597186168669780210244338475543317210148148493561112506965032912976472328486294472704195363340213446576817301275419665109980959506415933870497691505925323825396609449584184443430009085977215004716419190385151013229496887539563498411000906495925277220400950921353574502697321108831820602454584251127062385150497082282673962211484224953123118797469147648737645854223248541174459730875693629176508870522178205674284946372474551858412036391902919003694476535068346218488323856519778139310119670206654841176814279267042831419058576105853577644161291712351885401509730428079407987 + 25857553586112602537416532092767761102472501462318277189908841799148247301322135795948485470978136742724102293557570548945013851445603892859368028792545407479363738528952343164279031697292671392408271532180737610035481738260554365120173493075916447473465157518921504542606257128477242289823857280712187197720366501869130175273117274545479823814121902399049578911648477592975091656906538659679261656626865198153177882044472649854852996792904039494633757728929129694494931676173698658109509849064424686055321904078663499336572741918065924284516124803203389812265072593969325322463564060538814603810833750304427130123392 - 3867484804342677965602549882117011229754524319229846714870181833687530892954967795111324323867860712426556032323208701468388226152323202235551570283028636864578191959363799933830320989012529875334452111126846487850640937174246947194001101599862005086585487294267373580757782273795553052764742058404162042502434519721724307893614296967168883724923136022259393254119215556939727000826276525462736885185823587278497144487211291485801555408576051242245836320270653840066970581908749784636990491254395502897373844393129266293249049383816820648032145176392429692703006931301224957148282094893332492404544453039317053682961 + 22758917918924444919048222445423075944074402849266069717041734721162678545666296507134365989023654532844876226028577149116567315270898448762787972027870919998119465338801273960087704248540451392061566076660237812084408087915739733678251237972588294228091385940111274502018678988627517279605539642703556049486916874027948514765983033561456098801107923027334711450532486060312399541655257374460219835064365669010912790939797235000874691246515656521256581829248872108409584423676745881001687092294715845607354676845640355126999517238976260021880805788713061309675105292038859436842119419376705783940709912283436303810334 - 13675518338196476987545856854290802541461247007458129413321149316631680508754501134940081263854452351756773680603790210534040901406119766114914645919229535521933033668316628435981704208392715278326371314780913452540096760515594966349462863855136207197625303188919982741575010362027314466372055795937026458835950158868228920280124454597736707797258814105871174799388665988030619940720594688633608217620014983654453468782457787941305275638675362014058339065954876650499379433971541374722466314448565955966808831798794568973619396687831933521827771756225019067198826784272555351829693548793732082249236429637156856262304 + 16429641302691695812436308679929296429128960794920903080068539324735825276425886422956055719546697089197842393747812242349420507222782790760387230120490681810204655722942233094129750973540640737395449238842509446112900167583410091043832102068337081498244496840226402858751275451031713065609022764908818192081047898136938364531824943626465879930248984150387333141496534663705835780097740419368115691418673460336500279629379833296122212653955075364809080048929097412542144312889771978138075010950916557485470308158787919200950971510251499135500533239019207898600321314340912453877929889802387785783087544436499050177308 - 11143471105362783547333730509934704158164177135401922934847400422515928327936247092420903468521104480945148139440322886039992575091238729899143101053037547800521312029405112188633965489548035041166584475403565931330198590531662506629343454537101223334462317107239930827278218083346943767022895696956385857927749786193434900028199003214944616801336573608637438727039995961477239559788357048076971829136881953392279826368547523663124798411443986782166814885479085640753065511576871224950901370809167248815586131851145732965555872459681257838840652253526167778533831890567713839364952050176902767330962604208697019784867 + 22114134201474306256770467611005994437657289510411206421866877010666377229648130923951007592346306646169006655850460078032335722703195793469608177964546457683924389871806273128502917210792178443711253964184251034119739558248387094330355286653911318038985938587582301763511316083543324185087473342015043142309015467081430950017090483925006854423070269100813525096826727533961785423698711789398094266472726410475089360716748127993206323158059125854723676089821555237849095103283106130675346417814357586502374091966770761088312443603662770823457091778534182584671888592724461095381406478488584325043317834999208034258524 - 5720819249004038738977112693108828817776893304842738877461886337617646817945203633328989261330841646219770449567148234201176565773916267157494442543212969321875013732697418586100694610250678013392262448547172544796273152430153260293812803538818491367740422972948503247635916270666899561310138774701165116584776764509347706890421578770810096390431146066554604521624257128941247309702983810664507786476721878228791087658694618456979861839928991601558889542904137189384631535294567176983216214491701733514278069418613298228311882795346302038477020877499478255295142600183199966896057901503635320634109352135381880938643 + 5714662545090272650845638274428708628030231709972356205388944191611598556214902342476315063783500895774252385549810149089569073565620629091869010128112816359585896459776146443877660385764135303624296164730716477056104888440816357842095164054553503669111817953598365827380549912735264793943073284003282448795045595711696535607993494307786981083466125456913896126731544853226867172559890785548352801225189765582079155744518789227581580419062071540284897756864493413066624026375874764181015652335773389528688399326811093532594462320973306618694532955702834558520293285035906541818395621529183626456898189825103411662396 - 12462339233773347132277675641234394133871911899573164853985662385950748578247366262155373968192358956812251283778637894169954305789205928828708278414328492999722138062600786383900749851013075816490232189726293748003911516421742866558415207155523650437166582189768988881279791069033365016940398202597882184938831094210299432736449180866123897468146891951676122771356090244487739725243590976779343774012272627165645792041966790788043510445830790204510519976673133056477581218544232021885693449895857492041261209356984008044711993334127404366441133145113873285101354687613743944187408837704250587954503612803259340243923 + 14990365736296773758323319832889273687622580854302161927113379459954868645457353025805369498380725758789999217841921557997944963032212227613772544755169315127637146528437069470781235812515504444082767526359507772835675102264961779897893627640435623820433784233636217345487017099667582483706395440377683443385427840377136986047590394741654956535607545392075647290194555300256926377939027915636048577021507557943045510769553849303168893127468804757906874951567911308791467823302197958724716495975345209215719083678680177700625142224335541366278052621204344613115219247065795905977935621931974107938780149521906755497537 - 17925612074013868156627256951237376926558958593921305514082202843740148538212933693514951822204550496137896924350128833075941552164875170432591972496083406958363761169438595447883935705540008664457490413598746627723119857459804441200599811415156742727039733234515625948898970452088276100639921997407990070293181099952556632992230226614129062144633211665221490677107544073305143824134208122593909383894007288206408457047814558269021768644235717789285959742436542006296336428853146009520113804983344735213773370699973038117059482827008912160284484687105669375379359838126434573598837373883969382424431421109378055912179 + 8051231214547897307854604765632497859346170300837918086945794764979063743382357322894807804989536156699565377251330761277969637755182505562382646402213361188480578913341622334337216122751709247389333415638543698605881860290349970610770659162451698978344937443748265116068866059205626618008362734831356000267745911349655025215365318179014693883169991401692417150539491909107272465933891196584137334748128519722219040511236602819252653445322111309984866909903757600548788995709803943708426436277037372379929408910196411287488004030029078136783926611821822608514562672238066001268744061160978370087251225617619827237402 - 6742136825703214659729842861379563410961762899196832033802221627180624583173973146273517414157833606637250209293281907699472870342412234376220290670391221417560331881524768506204901613704906216195219438675533607824788779314990535801851933158007619760488616122087679306537900984611299225726915250114050841717523171623202889679493707846882470012686091566563613137205561077280710192285339575289656163799146697252495305315630881689053468176815306877773008631318043576496511714575939115866292803903956592986074718758534187059727327076811103183953439592790681468720910892522245919609912560829612341803956074832580786206163 + 27153522199027682779935850868345627969415258688552890008507008622539235149462304321502222741328004321767605750644100172449396602907989651524528892900587006905104586442247781286262240324972253801519610035194321709502526438931455883366758950521464028186483938170840619282596413051889230267920527396018619595274883590156947517716722682769105679230051872797876794344511601524671238080125040162827389163328052208286417501128624557717059958002195728410280000280191374511497683828766341087345380481477518661335174148771236769317620049831771737925891720256544895743586734218668121582919844712201822166434317522323214315460723 - 7953434077234255277739793980049103948954484191206303219007790329569293491475533440675409568876466523204630210502702555482623596615537082361404756955448770512188920755395386067834572119373757307809248973601230751472827845602948321087239455549318895065818949138103161569072889634322445636526294705680772100380083296866752287498093074021738756591230204542668082707807530244450028659376860181443294359471569556031218044893576235916669499543729955736306374985330332428395460030336835168540321998820099244415628438040489202586392653306036634337877735953178373547027630505912306284645070250985188486272193176493986729544547 + 11922147409349782655330881381529030365282278653899842727530562681510917737840961083049225553296946593408006628899966547092622067546571323058720047598129502756005894133361910990432111026764521038978925643656100741962574389414382402570433081184625909995042951340286987731371942829841238535452928293902549732858269390113997119318034243948702463609694456850959042536532592213662830355111749288548729207833326914081754112794805006016963380228990503318550452801943301760142474453355420714731643835725368955831027337406089574291347080597137147482071976226931895040454947312571498245049031024882878148367780780103751589503344 - 15299786321891518317062383713948707997962550962214013428632416264055799219211993005950083876244458033665169246169660631484909773134587743992354468173285537991998687350972195865962015894842873743685165775164499023489553251620709393671185244469235337910767441004332573773312377769726741827955838205437694841267836937657487345809535161152041006552409838602544074290764300740861923501999837949804144215491198262969994015216758358517055981652372899355826181928784572838046251379526627201078065431797719649872347965137521107783076352956901950833086481147358628023680241123796837141400189084547380476328994697986512555246415 + 28853909281940623407937099106451160060899577654676265028550402494380903215741534145749928205058668742940619892228452823126869224615060780706182488448252578987178983574339788414251907472426396988538837296080867389756329829204522806421300481697130367814489790696539645033974823149752302686828670748445889701763518280790171859907939033381064852501418611002271421527220864966407939561268568192449721304463606867825561474866695871626686840249576186369522921113451633626110527439877200392497308834733474843142036324733845079678984730565889405025636732989337039719848808899357541994615436893287933235266326552103330834004006 - 13974345935889950148987586122573275871521134301087080429466953996767969087418139508020135168901851675685917898508922524728454157287366410514624628143161363398126495324849524912759150660188898646972561381968192962055482702141048638485938825502177622994096871399294221658846959501075009930626220719096007033070789123712057512267735681768029335239577925784956113799088669254262903426354924523657254121648493313679376474351791164749174083531475376345984303843651996291394396110568694830263313926090494451695234377426468956338009076544734471048183600575293189072604270613487680613540098555692180632104539768062609976974484 + 26363047684539889922967309423692914150718303672705032946172176212142499272398048493025873883655122653267013873165857657250978908874455992090619922495716121909651071823052534916752928295822570386014184165289999556469300797557209998353550275654696354521927571987437095659659322279362766953979663645198320918330836089287146076152183503280743025671679747766332836543646504281261254730269520517566132208905766750803347797658153139796315627306293018135406488387015887440486693920619585539695237829040349648638554459542733330446361027999778882917486742313237139974771147734244173645600652175722713439356025476725193844443576 - 9075899244520896146295903558631308409872162576650502167597608871807369814575528959336902904318815067951425747789269512296140178011930841856556793530389934961697821460618610453258442139029373834754306512922735444362982718684111345208528821176024003386850942994602646879766043674805158412736098783716901248845165248930317780483868705293422512508003307844162537082840228920795454554559220338804236498273580281093647861071091215673077927345137170640548445932641239098744341548219972757488110013145452024834349161944838533976193710374968600773136680827040432862472051282713070349586457409391719949806207091845018193323149 + 9465692970165771031541045611054036987657177455105813553389598359631819989059014589410334147314140662028860047025506164024729126649997444961799527147455927509528435155973395340312885987805219420050289181615416569962330188794956886289797611946322247190371893326275382993827210809208654266524940060369644325214444448522458059346507599041129466462074274557306563072499504979355681493280721494441367015908742287247715587112222585525908631329616398893989918008718565834919049795278643719275553444988992921990783075532819294713101683073014828055400321109784079534810925132715266175244230315911544895099143287496265194373983 - 6471053011758201367173510559469961067067097818162204112219524041058929298854029361134537788171608668251292532606437336220120308838686301702075376058573452627310717355168437557297886773157149607404401869990732183937881509803738539186866450129447065419633976890156997882581310368721704409616246890216217962623035304502204950621341416209764650494328261455530601292556994636112171759153647941416876903052791613539295151737024014654853205329802560509592713317784744366532622002105170133006106551886996291553996277262436448035267201779799490075168305207191762031643827982984014507649341477620976920488485734478915414716307 + 23582613501126831381075034797904881396558382445441461882440962030656296708411128727086431782066734268842434727484341594870937601837765707838121037411962608730057289763086485439984166877750424534427542613882437522661996442711265612373753643089464956884663287752239021612932462599089371834424589389938697382562687298640405435982210238673413566423169389728670763207597266935491105408248429697700981289591829789249836100502763448969593061662454686411988000053496221843483026405058772166708664554778642494000458806055432594085506583286210703658161970651761318225213375653732089462767015984496666190141152308427028506436416 - 10697415425193703290239675852801259560891873055203438730568519175715933883251018922351489833536925945193232865871177910624012690801812887937495637916401559572114340861209822099451245934788738463599873084554665143701855049011957576928673776062004789131291379887337185716265341635634462867599730980468747353628767642495419885198921560169924686511848464556565496482295157594191859577636094439292245139347855095223797749053291502631101931336948344631172578134993829089564397609681394091837504347984137642713096344051836397447419082439550019240332139405588596082613256765310468081424271757780393597450043308499121541331699 + 12360939709003473496195175684966968986242519482841542915998234844486946818215012248509574736894275983352845214939951015237637998553795244535863310065966017632341200765845478808983291479074415629935626514695913832616129200761213377314530096157109434715134572192748746403277107774671990637408397601148442516021091359956206995435075205699099415957696608841825052244146954864332845457895468104485172292817868975768272085639476533925817886305727690850261855792959800325714425250597866833315305032628137844560611165936352849204713971161028482821924564918649171092645289710066813686594596606172903856498762792685874408385049 - 1705239279308704663710550631049890894972979969583874276572444068994382626777851644694251062339721190490009781295830773035527376515277656454629824606450553078448299136281960067524298536147188928744459861560460980019071137071496217505137439195191343820558326245696169314287408985160370864914794594885195709806992569345109293774731884331878433099489696843086522564540166546155587341875818585401797872719834831819552284239109831964929941407616575862724493292316439313376485519941955997748840390443424058202731582269874129127100152123958057622046994578807693489773826099575096091146221789318994935372071073187328405362647 + 22387504948688673491801129108847275785250807267705397261167860964331165985204295471726302332927523452733735601888950125774664737402123635188023798121051770778213636906390171993773462581371174495386954613790841059835484370504393195672340482660632947881051076476456470518903674751943249548513821692666443132927552246870001806504697083233141267392264693472304896947596234038307230625045015165337720652425361257804392457755094538595681767930777156005163004045066562153403689291602538740376207785748895292772806920909801136408109521021086665604592061930275618042570526134963981102007255832905798594549308558623296052504176 - 10369494038111523476167460471664407678151911529005545193367757220998939103474292552971966126596728347160593002249491931099204405322241228876770793394020505330208833803744236208715488931073143671125415466175124123546327818748330855911853479988156175224048682596974599960884832237823821982529463204421201090761261618620527715311143793232245729880180800321265235445928299351445462915155772508197196400617516794555048868887107994372245178039837194661617637379665989142823458457878409906582390757645180491084634128036015736260076409922255028729756054964543728101856240071866760625461620335418997705164500155325130457672183 + 18990755247491806223062268107413748050211112798345496254421934863488241181818656856864188195877621667327163315967343604761593977476467491683989537607229043342771297621713321599802741400383001830977666472348701010033913328341680620729886459802486226369346626157793319592680682955184184404165525513200255586996060151639662063526227268663191713276737548923962230780826182106894499855593723458573070909511487422354127908075324913331707819297021721535815500612897530047316690499181750180746974536094957384901177155857148001143006493972849986263680871021401525473180270556867311010129883911931453047854645995889348093248544 - 7271957337250046492767203173915658532437991340265062714772474023106803089348471233531313717711661097723118848961970131074221837045373078659145656225547580613023616767562978318794502941667209682808343776985315512108068110149631678104619579140204233823791452763204167742990630302924219148352496412722484443101563793109459258018076134691370087956618812450409249952024325948235350276730881754431037216865700681590285383831606577926853595915181633252323796773748524569881789670205125692824891268048130267898448167580113382127868120437317761583985022718624547964030779284283392451316615280563407717041735712471301447378204 + 23274543195664800205399599733467276248877995594441995478116279538136435724401034390323125474507428395663728349107591986939631796978870489065508756263452345691368224344932880175667354965761718756435574827380901441692438346485565006038285708206821273978542240290649758437521003164564685652413931772856089827717077714380808567184611414221691680526149321505636597685389256459317837997252585397917793927406041179015688759372975527999555350528926082416609837067395241052864783080712787483831394769425166239731144064430479373469862513011130925526041632590451637040142428755792564340767077979688630573660453971169611441283035 - 13275166608264156858103600862027956572063709776166661395713194506302008303647513716925305436376310764101071197426843379914063214310277432026422522265601882810899543412018617669478078852693837906919310953847952791257727121244166713419197906231049567706461313292594906433011086969684341645590241332423850836722994932864008245212328338696054738664572532332922685705053117370675650491870971611910097038743649391141572035198679026168233645632454027372558203895264115204322743574435147664978245852937087066808518123143140796768330141168352842533467963448597797406292684848219572788845610899101115103602276924040695606762851 + 6627560340415634461983035384216427466820815995238020042809102838843461788349198650106233601292693512852093343368844105044608277143263272379109529879186514326002986986864556785630493661343400126352576521984028015101439880418753977251252995755097203786030936845930477700938365601549233109450279834052782749032596502818152402871945337143351898398134973817098735737445645186845381535748137408648089458183462356924508187077895514437097425298874292572566643341124910868559417713291907535657948527812766453621349693969304946019566964244105382767164346578217481315974617906249025428122374997458703848530072369370494164906712 - 4680913102112056777801541404313429971712770487157691318390998565636358255058022061197551929096253795453838749519858719889927103294229099011183359410960480101236664565980461570945659360644747583826936248608191660914827030950387740985380309505529791227411060649165370278366871628748732117568237846153781145908570772206860236923280671963358028712548886795793358219009090338426416645481941035869297012033128578280878219595971694629944893145791799936805208840380131484099702574623529429821007170732121059262228027860892815387373639547600465023792993743982142710283651768803332800386561435081691733547980446560303340411643 + 8510920807360194571839273250601761037193940822044159347345699086455164245781311742052513354316649271865897919018570635046811850981458695688236507621964453242286274639803125553750017240844015629735672388868982053852720419938706948936062441094810659609108217773381109440418258461500911283127921169151607200898600049563931501641695844308069427054312620925390794010778796952050362929649134144952436458920803443947998547788862871451464017653625820459624785900845034080515196816148363936784200308243594829521336915443155970573478961694485613771187383399272510358586949611495566072005237404372859661846828034490662028233644 - 7678241528809021263786876512069916193540374328552066080719769579166475103152581405890698007789685627785448926613831313231591782705160176635626429176210700038775675037172839986854979522507481898208713840647787262050707461969903088795275531395796636537028976408158571832750797894102357862928088623979849272404027880485029198936691910645537479202732444535748291298648225094367841953004140359100172087080673400098988626275772687543399763536710249639315250521690490981144248062819279955447623897471372906138793589020735684588349012912156560310067929884335830281104607794793680634120251012737462431465285157150126741528583 + 23984690069669911993145810893465807462954541808367019721878873693732297281079650031406890603432479649392108369234239391109261840246918110577214802729792207298208424728415662877911897541991328647823577523649582877411385284420834247389590398111453499669165422573079682042772113884068310844212217209579926617567610632453457734744522251220828132428279639797645909011674255415401919001732104957736092155745747619754136931541402324422599258894569084130410852007377091469220722207835384903726466760251983210788549605577399166592462222373603470590385527786504664009578208157881832660769924494787318093125615510338876182518388 - 335970792832478043447952078695170961109373770975932256134876683616631675102508398111379524850635385181619918766370006592504408093655337874524804704571247456304099790470184367293379544111841483038683926159285075285767527941308108509303131572233637722017078724365158835737501027820870084113123613627380688537610724516334703702802391635416760352506565108649828126672043921336061855651225493935223190289007746592126462074972141621291675612977278977080335243882256147291448033960258146930137255314568475169408279548005232674419096018920213270728787866476907700750339705223488672264197831263786187057989572427604662919552 + 26450699706094750183740499353643919506125698137509642094373923382292816371175468790459186961359779320333306488426129945677217741358012214817106243478376952748815937183899437887795456253835843919762450909357305050295248394675247828461080017426383839686377269355042993014606411528695736039906349438162428130798983345949708094073764388411827405403202938954944290790204406037248356034275887412765966174112011482767844005235026670316527817813221600791501084370241893091559386728227205570263500604326405001563290858978744807503890989661587528415360989682325644081211592568769634390277790612346057658257299091514395695202024 - 5827249659155197849364754466837481738130189434912427291239507072190432297254280222525651258587889602512118301171939377477816345827040255879570852084966458535917045696656656270516937311317889907096902429689535423890120874251508471589856543474470523435715908596638532493509786650846603761599936625912685567422845784485840483055938796314261437891961570372136828141111263878121892531640333763179153072415502272784382297774562396092870960018521929579344689600002020395272610724914224553400962718181397161621129731899305165714371543933642735897839924889651309927581026007671015610405591265990023741285862440631683471195363 + 27553568435953901826922582835876695403954945217953876185765462490572121586837374967794420049344595933937851173560186153854377223657469934643074816114283317733414640788164975148840186201131365346659216353513175470536175417478062909432469185589605595598244752460372812347353770256847839858137212708285865461325121869525008380055528783140891313715967410883867998672825566762155660919606710706779250274005445287884485780313771655042324767839878274819664502155307323019523474490537866153664904370816269164739056890464318955646787282363441328708348236679173681033833384721001664492892555823272369920327510812331075637151843 - 11584473774383508987674805700024290734605940295085712468226087677269494824452774631535558243102321146546226191428496891705117301517813564272213049047682494844455599659917522149669954833618516661823855997291299734916628406830927904577953447110484915921792050369829779251927632422454718215547439379853319671779321018580590102167679821824882294837497896562885429263416485564282944656363442147274008860523654089775741806421052021786790777428991189272950194956650971604638148097665731488899768355617538144058367039702384411139395878225554380242232089445432053759710694981320493585385571728325012819709270951009048692202320 + 13610348418016309486432989166056881540437034511985684325728162109853847605530406162277339037038210866682202263677283695352667899954641392794713593087297100744780536281171928230246983118220263430952094811231103458643234580981615484567518250184193500583969967376998377979508687223560378659847831190653320245294241871044646390504577073511838314604487461024193968270187386912517708455919246026993790092520334037514450663377999619571011848540187849805414101705398997175554616912843953536726708821389408187734884740427418782731823867085788195308097539906832014812908714576377159012841243396159872135437397183486100314285511 - 8228565389033507607024461482214698092261887068303131649618188343910111219741774974163107990451309359044747572456363562802982854914755718766528813575679206130540461604191995885355120841128893545979675924409135023653540141334936415140777443041101262117453821000879839519160877930445309412508927708152449183061499210395274570867019339031730934610733800933971953499485438796020867309705561015428195034453210759256019768160506895686035152300195894610560359450400694132316914118934993774048036924861215870697772421349587323921048632144835764991853105831881089832851944253415058066450562553527208644787655699593993294968828 + 17340638743680533066055697854567209856806202554675600257284348281072015408912865603461501954728984307759139990224308765258110973889591384240811610548763589385514431757631960425426174940681489018671675752625472062547282481041603200360601878563867847140850606398304666139192390330475702528939116489237700658737613761837079546131287673379968693077490153626459284519657763199258440596344945994755355452689425859500190181404901575162975641358355940228518845526167260320147966812058116792814651419355269100123669365459859246032016708706947680740898575836155963356857192410634718829733407037355089352211753147039914917817574 - 4810516615894559050764555875556526122427690812774650927346445304086103552261483723333080926517029787706785645667340051353512021450296722336823608506280339836884449183328396368145263925568348313319581041838782185712998420063217033086595631372554904150589299755011694706388418683404984554208439867953440061846135396707035877685062245814111872451038469713740001626301271441934852213508913532771189756309725751805680015633973074254857215018184126412849168642060607838278994214152717383683192466092608113776719849262750071207155597156387560922953150112779777639372318574316543841620587200878903240041364142882253341389022 + 15041973496643004477805867513771161169461606075242122908030261740687707410641064140005251193643983043837604454284960116536561902502910262057819240737360466434552560741393442557346227124279548828374191213944803551731774789562892731064346022738568516984769122077447690384409570960706183137995296823697198069534972919387905276223222570189157153374232311707997486932094430285047636825721729582963704971294572507057791504285379760036958000251489324259805171810311983579227857732133796468591419374823179890751810838604988250380691174076653704753468749873169167596989103023813915651195571710204163386022894074419041780179614 - 13837983684997380319290918646078924139438854927471082970633818034860509507406397266529063195472065118366298032469082192716284955543695465770488992605248909314764124973091280743088070274907546457243043589900388933915536149747690242641759865473045104296568695921433274545895138309608126233916370545440319869165797903041320721423955913632981278705560522676969882976263288665950925839911528561384146885086064029589400884585228252946231443246842256710893194659596770639718315333609765769502294864201680553413964750249621091557572409251715934817666020345265435767553276870159186368985972026171907198330086614191380117451461 + 14029319524575851786580448798068850555695337373598802294454563047841485995449266042578240954513847446753236307522484137516938596860212485577926554881300007777499376316917322507946826010132616857284735068375931349626316222637370142909806253663241944582384770414668081379179475495262209087577729647697782267483821160859805184860867986778439655136700278917009289757529463026661133363369779017153311948062498463533668866102476074253632618701771800919106854706246179716926766276995982153651693437424674047181985320470373239055724087287327441558947023841726003688021323143070625797324939384703100962347636103170552655170798 - 4843556679617693194014184878187240076995883261982743075583224732855806146554468013894816666538432193175939647573213632506522436966047047085512485394650219879673181486779095607953377077596438933233790353300839812381466747713848675090902340568479105578206627027243082864490899726335613507236055968776553411359984774619087234562869806740438739380840635143083293368167425058325055754449428105935285598493740388103695573178769686106219116741988784048115003970034786094381388867877038205267795336232742585567632482854917062965974554279448420353035888723159072070868821397417376983380725243521035677490471649930624356408033 + 18798007161112547709278302998376112247847424407625776664293960281435350952187952982918183233202057471564462243035924569388157267062126599960180535052542928741808468374891611215771634321263020224247854641500610847984066594978305634288413115918679187590915414260956093141248672293361924506266085290073847854050819553413348672463448220073109247443379437084305628036855621081253441990984247896454867893857017359110224654027287291228832773613985587715490307111085852575487471702277539387390025169677194406253070217905803320284510035513267094007680671846143184250821353232067490826852094926467819243714170937107189100673786 - 7494763636195619075773385799166539897005152102167076155475269580144193937066318813022473579460095522002802610643625068422902209046354098455524583719299815002047044080753038592731731050240198310745849986989355462496400400391701936910425148805422487739421203882206371401887612648372576137966701279398452212643349040948060354653668971193981044279618919099955626684227498975623816221637800119277022815747251170691081978966821336515090893642671120968843661256080191609628940215151532001855154882197137461006882594966331437461990673528019456449985145002447717924842625858096804425736086412048197676232273127723610688145041 + 27214222018849763453839004291072481784504900970895714623797030258608408718447203816948348301006417249211205678568826571422951437069235770464412098644858683886520490787847857665251258366300299254051897866843813368237977784233147429074038816620393203111234332838607134829435911431519725420145654493692978664843135563534645767023800060052756492731298201118170380482728446501164036752041114899562318739910613468065127816325837569794870296352074976354414170068647066212645951833943902337764019571911532482703508622437563143405782961447246422634068593148920308939796052134848511959434237244870290873070543160234000370185921 - 2471372973841633437303247072515715595576296616564821281481030981649259164284517597567474866934181391843472936677979960953593379040946919214391103760388014069062907449747172555788741100410991012732615101179882449827088921213345603102987489828936260170906119143586613033500701224026855947869689343915495935570722174371376894857777481170925881611829895091536115089575596021782102819379710950857160576839853514085965478660728874027169659784180297211260932492770764877188834165424557563692163360554896623319432958450740841010347399006493042032568375261719626305660357537710810093915151002734474919245462839921210229540649 + 7533382796623094945600733967944021214437235555913197636215627059198503331017415560183873508730947250101107095763199143391295856386098639673569344733099543629609543026605940605614710620485943950833414580165163439172117790890723639674728405801807179410753412280893764728489116640677816791212126915148115272434463479017215667886402414136393072463619104512010528105563649450558653847340370635117361681659646549474916026272442160061783386621245666378493377155038620543184257491813307337636570690055077209319106456155212959530392421071627006986665451773658112500690029786468348029184289682226262400994278084797026212617560 - 3702408628920276968091837591479270812601901845860642489247336261498986252191028699610262045957644091143728024783407967156295929582843762379395247074229146780586673274501199821285025030138067738777205940302001232850081587277531979533245021194809719424852830537664572036462519720515706767783963554402352758514405361788493814652288511382964460989342600734122074353613937448758376544539726065880338861064021109462558208385409753980311448095414742122601927167203632414749347877870710661671082705910422442927054655579647051815272938021458195762311938371287938043540567045893221296882576296409595121632601788666809662411458 + 15093414328921777052182857788741172588136901429463111450221111654473104009591633539896647483906876074784391818967918023768782038966955475698234170317401458511301558532804316200299219773664554266183482617662177767485484143237283177940032237989501919378364976375007246119153849092905033778120383310457631559041188665856747176748226506502569123475866771482435693447807891744453485143734348002665108322232069711283820458090543256025150947728744165596581158737125085917289977534222070085319304287269824977222958304577796399101377938096736988981895969570462380214708508319362326277048142770202320198828608121212803135772256 - 11038291407325222658992808290147236238193525177931932986495168185746856337317893094197741267461265472121497801679654457732277256833173403670791507306811598127134954662734403566331369196311889975032606186322651807015770965329655645366077125466127026240667867241703437835121814020543896856671175821452928681820580730951714166895986487067531735639880362281117483980954393062450270184281227917312082878111397379591795173308638064153074751000799217970424978698328000267057941009508508148415676523543771384705526930838644404077880183693722926775422257411818572175667379123386873538008394142379325942718405981060172386017422 + 2933176747610520810839527771301591762541565782409480688537262486311972212100123347232804444753705830069740546633087643048916570890211327525215782981929215782047941056911008470220881671027446085746033836089347653547142692656432440813750654924179370549765366344697125498557048746833052303138141555013548833081168244618954920132739824726953967028004976862975038849381549664179215833197998803351205832283162941299454568820937227025857069976413500608385961109804078821922010087377224803926669886799125261514014259218638918772434611376770035962972372833876727985800279588003666565060864114282154656184194067195160435483201 - 17755208596481534092709945957186835674129107121639371867234554552334706376514406718402151177936054261259554867246542517820222452807327884038185777148251576299616124631859693102726137502448778077379394158687199516303066750569077746872593537187667580140248173443818815945903828226741316902284885216790035653029648027560425398699968114441224159499297702486253091951529887010914162839005105503062149817770768874685352137052126695470740180141183537804907318259011558908560927659042679876986582205995362132992374853545798900759316419727479292102000004464652856618875630072133537867886132626575203502321263516526824537993532 + 3917314023425559042545364232257817007552603363139334713001217614780198237457320965755013284893203899980547605841089781023414402766829425011228845083690792720661591612160977494580995106928471881029263497956921686631113606211155604795927012131786699691264343343140738112537499700794527936340773980764064776025392134434691024592777577952617553527577834763907478081592826893953087058332413644131624103810759793108188718886433754890945232786121369835551042755492941017883420531020934145410379743249094321808983473032023781560243814185868186233537425585381664955331032387046385771236026790399785397928425752629134252513026 - 9646478395989002500234466518269677193653199761183268303423602496265202192507227296895291310961714136915287000249403382879484808620670689720677075072424122792496488993593182123535353860882395639642340814694109877602228984619576116498555567207265004916150768170540612238210482684244163134793292480643331769333062189822474324579989167030116967778992534631660678463517855327792258403802305977196720457613098666665492006576308171638243721609731796934337220406780460568837573065920184394923882802951606243175078511302530081191774847896096956851039402313984832843375991729530635868008490156710091822840377815883213535893879 + 15870905725747409824733824549264885371439915503093831733096561248880861842788899073517336956438879897072308668797727879590406321005233048608608632999129602177698563770317181815124400831024953344218067718480447655722023989063757178803799207547281162230347071690045860162224584953624957837991895169031105985124778281253003374256619195205213029013461717806594970065830499247347915454572671523135810092784557663553830216887407288719007077059258418622054997800670082232338525334170224347172036507377279187497296774176426914440786799823771071817019520694641489940436128125150972772511259568842251700822175112710929919429002 - 12187270263237755154938147767835027920332524664062872317295862353381678886701365919308782959166946851179038499310467820900656507380802561611204113082098795586631950411112803025995403231582110150765174526863635733257466135653739164359932496343781164643730536256632982070656083110452244987530213848055899502648761763089204209250986170467760069778761334460629996787043239404207492984015445789552019123867222135619166461406462414054301316025962747113522946649853932252986470723501474843169627422607033381599441309432929906033388973559737301699076317943440562222602250565355453395857249199263323593853723489385693473316253 + 18660232624476886503673097719483364089870159583675425437275844445274702979271011154316485980852325699613082960270961932368444027828555877488693223798766153292157043728572083784660086956960618764390227352969447725155590834795529329160112178652509613359793052403676285486860772488846414944051323725757007656972436750738015612284072186374654308696894374501823278829118816530689320888721030501454675223308109006103881690504748161613842718080174356653046529196732721312786393396813336011691926900880971867941750511293137830080713548494560206247283817996705704361938986316127852065512168529496903211167920884551049788111851 - 9485950260028207753131361320447074934112662701428145994165050008539439778662621733698651776303930333502223946218219954335623515969532391094308111511091675326429620684026606168867716894507606119542193341993158671756963821882666920520847605997039848325757148215729862504977166164954576025476357381367668603994306955426236260641698354110901494270593807817483952250128840965238505945236802298184436573817178751519230509676853216797142079151758370359886016990589811454366011819429738951261055202230802110749275121018697302905201760118431206513771635144627044184953829562452909097797381553615293673353117367152681538285792 + 9649651827441067505191442928226905245330378212104104801628379808995354495584965923610511460867162165038151910811885704462395661420480208901950123393175242986920820989997178835681378165339865124695945616857723981214556728600618058637894508053363806470435827310567809765367898970214390851358897171027860453091645983395639048686115182480665062737752298719239020522795865364549276730535242846670815508495968796624136249232891445743248994496642517737246916155388194596170711503540116818796179844811247359952767315860157119322008651259133751627559696046268156602634672456417735262000922056954478919297063695399600175906551 - 5486113774203160360622583039507719916453258980288430827047806136854327997444390242848380821216197469549588146068485876183634409673037951053382977547859681777926770838379410242029789040565056819998488083697048446850805724433807993839651126802649914362063900812271295054471080196256287218932188016073477847777344587454455588232451480697608585258624118169179286321193311314936817156316304810899965377995470908309364478577459073334511029483924588990781577075066303292436137961529415061291075907404836031316672429420556620844924742171537604333040817441244747654712242744517355337421411040476005325507209089495362940951246 + 6829745824107098571830330720056683938769215266802489149268784321176266080023394498986474694630224655145283815309211169666564128890152108341726695094351243862722537184056151822709874427680998763455027221428041238756299106576753378109965511076181283549653190935968178756128810070739233855363607040564283382868574156428824612613221776122428619470688822351218096432806535920637914784416814734792915166575051762416362913949773077299947213989143553555013038492658110623668897478118913791060469484784587640908322392063053016557741233313590634591601281267769357720408662954719979875513120881790513605538773488103322511865442 - 6571920327476452833347249385717573134333600476387982605516871575848750051303735451060509269719719589079136596511427972681366800020693269052550537506902938206413858589095331052927567484699388384131122073720914744715075925523792664333296537163305840724922830087422387551122035465720799104493352984519901384699321051575312494618208289185824917538658231578327336930030078354125907563116119902667346039463006654022682046538353307513990863803410408299928032813112706266142996746035685575704468494161952724413789238358390193572363615601032032897359607274809273332080078818802335196389208669099488760471116139933787858451273 + 23054315171181716155387103550380755699768096554358599407489409389116416019165385474032690237669687555894404969274958317896449997589651686339465969783099776317795848515582704710236217537831027472352333735317548369592705525564798998732990261900985025695493781463837586369847717934486376485648108348116845580109403461581243106357311318297640546138406792955477375147786030635493371786610026632918381729482990012389000091580856941139269960164823211369801568652737026624395870545999631040859811757591245162255405830135509670421228141641003837597276119570231336568261342219999001752276624092132559398432269232986839070235244 - 4358343100375177685918548717996472830487767574038773537832233662381338667863915261206394731744382633451379560923483321781777528077287635127233981525096037445899346387938950369036989173356555710919955347330516991319567320920376028807271134040055349952072737964905860769540456025562465330819501133575872732191197395432399966794472317664076032740940460671256997472380740846103314839613432993834744261277270116358871188334903363300478051334709271151796478370373999685515051062738848107889736663996948788502398953997191163191415211944366794078079329131620848767377800571014741290492024557570345958732312900150753900562446 + 1896628274223896099507580015489072638628182049627727990205726107927772618420416106930855775042849732840030803618709749309220691320732910627678164940764798728256169008029490017244270195196003994215216016996537588216546750308396885843756206397536227593828917314643686549331002544024875228527545944722968581163276559621615992196287869673950786132967428505290753155950355742141718353305490275125559391647660731765377045830470410156377870031359556258155378357219788966369009099103458958954630217560846975529220137642802181855205079343325440816604621132634512762608365779000460825186253517502364817010420187185103827835057 - 17548321969377810558786712157534754659228508018115896650315799480522262417339426168719872736840476219074538823521833771963434294639435618121345462408144059988990456844607468159668481301236024533502949266948900478109236829362263467643453824528337927754934707772022554014063256216116153387378278703721277138893140676659538690666029131894608212520597777332640626869967382697520378552320767505062177098415589211019876624267432203216723751348936930425190822320964137618110307419964651001966480316023965655420945768195362710600247438979259963647670495794456858371796489941290285352934187959248453833284207510583397386057981 + 13718231315217329272177063816460330102738856719211133130966362771991741303167188854663765836554061141040858579048582383445768223792058171927332961148568240750068831851711556487366870348544812740080292745695147020888636879877904188097264272145311595107261547856770273723098916864328372635470558627767209149227793613280505820445742050713722557561023168571311499039740466528316507054183035439960990345678605059321998316446714810491772101379496755345163983833886720179972396870366243556640888828130095894251320075096594097332278286687529079395684797364523223267999943468334497369638484143421873709926453094273149731587698 - 2575160727978105832767542946085880149435242819742073520450614293776620312540575616956895571927530610598942589341517420335496407706919211466133948387671976657587503780435474070136847386853540236870552635087610381208326280371740853830044915561645867856029366956188831644414457769766299314072739058883936051032767314432706525244534975204716964528872763717187289773267912466911951279649695292151147938438025849719579563480354821424614090029742664730435318143417315794715414536395383723451196383329309248327727785434481603841395403107423280697183471029310030431391765454097635637992614490007634585921391898899455221219579 + 1358021137643133656248300432798565906296126378527384074987909797250839440485288435300719513931418684555425282879065043156852055223357118092521041509877840331122910783203576101231348054316298853523621323139731852692734363997685234282411628724678677840491336485273326422275387636927014374246828584680627106980379678228484118130306434024926439627611331761556508149492641793211458790163377863293034125600313842705156657365090252590714213541451676535796696622299876438619414100443471650536932049791610204021975246367334019197062731630321275246819797667113502635295107332018597278890239155020127660066478936890385832485731 - 13354433412133387140252299509653359256242837284687193642727527775714020575978057473324654752674581924563667934955894590969160438602117612721612055420641527461310041736457252569615579269201537375698305947749087442547996718356364065762044587621588178952275538656853774430448057119216803632982703947120708628775393095911693752145380583430653291987006094042083856398383596601239576520289394090158529726757972479872031521350401880751772176396478662477071122113690527386878634389954878548202489864560144182689255583427577141369733414302112079561865211986590642681148959333579586000441763752174838739844663981943495024260725 + 22144302135217791834300741173483070460143017277550970404402676251529396178816997730983950270718309973793639582869218842916049072216203139247264032155291807190693573667596346655330543114387149562073063372390656772141015733027005226510940207554903103409913863032750553756327945678520950211139082479456307232447265920964109467475003251458159089411867614311460046492531396947476517008389579743273633408724101042508414654348235020301249115372682209257642433065699085088581999276224956084772232908628446508338650321428607537623843045783666605588835507002403608275301012020721278039259784984371152096755197527165423938061365 - 8058356214760334131615065769935271213933032175444027093955413556771343910576250714661579554865186598132848468067446523804469685268420983758049054225871238603145962755141340164388984224957814798293467276499325164191439265076406477663856832576051619202299897432150486650982334967997444737964677685326578454152647944883383303386862661549237164370674979930868983297121516981761472750621700459411418636627638800875763351262411074177912632885324614849649094246908962690994529393684055353894181001480748820615674911354087743086708092781465560527751292071465155401226175159426276844795191958686922695261047804614328377838574 + 25368492860588075944403004376634749356881576159672587339436057023640818966534059465246297633366595978974798290979846257636261041153703758961574578789951775854770500810761220136841453501617319064378929923311109380092004756007051584973674702184772258600634225986184293624090334443033859481637936884314445582538260466671944794403934527418568647612784389912581731488069828949427119691097979309712974407044049543316268085173973126634797396189654253049994877133500526496855666191977891373628114445915224761297129979241695454355034892824468291005884852243841530797160784382262568854482548674131953689614732455070790607776686 - 3961002155444101161957940824907555208140152263619321305710496889773644417701732648599027699101278255072149963122916897397705656057803876377632634325107612913313286863074662445690012521943925832314411734957144849548982593741869497517428548485269168079869241674492178192722099116706211303626501566476105955823864074857453400991061843225767793417890094362821807624674092025368788751140187980746726717080391194843120094767239549848387467591793633926492940810925010746109132690082347403531348986940346819553198731520622437063539496331912569632700895408365297007376197139306949553974954827146804966656126544758250090473370 + 26155348743110630961965241836921300463325677302812033706099604141252089781085073654610390486535238684579818212194759860149578813708723171809604398187610479818694537379425073025998198541671189571460825300723090407887663931355650805351462151300238402121728963559754568620721380455085450268228291758062824023983261372477780129563867539396353652624211043619817325007005011569826529482776910982282675519715866652591857579534693961517651053292769501450560130645867603849489559076133485641434504463886199369954453129184493062307170717486484812461071586226131707244014298144327974376520562331859815163819307495751304016377695 - 5810966927298164272684360682355024995380010270025208011948645954164191950078737552975025801493399347402804161681187494141301996888521871782892562220694371206012077872693230169392570603755886588059694268451415627356176692646170494031443900173990763882069272100584838881652640656166160257959012015935725775802990031524965120769737039391992735537784378063950981664607903947960083745342479373042642537845922684469396127223953275138693177744154742414351496766086445519403679329414446733777498261815521118904780904386251671144880093497088709647059669274652634006740536711852597931426746640340303135976954880278948116959148 + 2436295941553455639172252681908981839680551757550495449655156042509654360512448694671173659377300555319567278979701830605803045894089911479277676721741989233589764156290524595720467280928816882398692553735090757143806143104463839376940201124949404595418685405966451476355710253796633281851374373912451576768676457158244854203470586767149127986888066906587064610650970806627913540987364067370385311433153763484675293198352093986299142611724521560694154888850801340770103383068713088101731523638303116572565122908295918272939801933234395744877368525626232227835983676264835576693614040549859279640977159924847531058546 - 3108408401219858853042547164286238217327248602032688680036703335749074171034031805633473834953296801017054027553041649127043902274929611947095088033260738208198632892558582960374022495084360338211403566818356477357085693306030879459624898345514233533218147774439511906198364973257197103958562868819323125955736317368182120457927922442988263588657990659174592694762817844028837429536907395142505636502668211152787827269829300508677512677086970636749034489737863433866835010979922830299289348584460024675338563078512200448734338611186085251997993596216000438013692165644307602167064279722412408429239677702478878781232 + 3754782791042276080992325604409327201876515010885894495836319260950136723466372768375655959314669589936222935245984225065615147011196853256195299667994655893660512671516152412839976492718257103324247034620922157541953203276075548126061440150541912710957520353884554723069430057714470824378203516034906205911316199826144989884427034317815137646921385068895056780999839950648176478626338935862481592350126343845560261800055291512433849358952714810971622016757560498757440390118128595027259198599527901155557746351966650823289878651552062152302236251782936378610001178337940711910064657068150158417653653615091241816254 - 15571781740982061783655410398819924316759277434903704730259530927253281581837218625744318389810356669191784675183076935282804816078125657094362921862111108407457303701734528176288797936703680093583852350504895358874036016907149249234801452252386434498895342070044697143339070437908261464732008104842004772581793233746481419211442700969599213065535987234784325654492454327601089878711372638957233689329110450890572214589671026817851176152679948498691327246602537586291488207612670962705374629221262801106173774733675803257334842251333781580485710288503275742976512752747522439688882259092527184932635692840522454489047 + 17226821325081343281712734303766358865769250840007200916714797877588602251028909284638508641529995949640935237995922999394173583225732735785387258075228398295601825191472652871484250751932749962540741719647540638992611117892211559426683632979552998817376498678302977450347738643767617536365030507891963405269830934104991336131927218453581380405698694393187627325568702096680382320476001365659488562415641838362010687960845927594135919188478446479470495576442793892819428006865301313198792819457513422965284944412382206069043639157372689899171246306206802829861415789258863420545451677127841261114529707147397988020608 - 16291087790689482984011456146336544830042094130923567489815979937898716566016699426006236467036479233230462771239384569030342815537279504770983412750108524510344487935466704036354204920413808851788799670437919140964635690069948858657870382675736642780190786309643903409162354805023470012904357324791472851059954149325443867731425990382623242596238022170052948323943812607327304277631487858790774795314714322836303048766745706551548560630898767170925791051244159165851151619393000341391780024846308084014226189741484945546205905419887657938882032546048995274853891662528038286706207172895623827718227265946283803534985 + 4409052611986755385401323085088944884336556892835217458283729803860345372516305023947448735546168500266502402154355082472474693044597039397125479104430868700471170903925106181574674296475736029294860492718428707095457340089986205160216889582596833919789330743078006695779820263716628357131767095613706441295553937739700572842094566662600780019019359714578368532388167920020012873947337039723753383720622075234615151980023681040693788794935091950266312035613126310585151447008058836266874886107873203848145300126517466390760233762007505240098594763359526746732573919408534004803048455590157938408209423628189358457413 - 11233914027973737385557897767680257440386504605997611667497712253692076080040696085454354516575104351803697705106896236508433389718802708351456039559256151621607099292614440108073148286103327192184471336660914437698142294124512204017820111781114743341471059043983176871077671382774021304068148004156804997099439719536274441328810986844982373491713221194585334334915716470248789393725011465587444239746064938613760124299934642766876098388144861442337611645410509992844211990574318238311008369359736991257600903696798334609358327929157125046862367844329994804083286515034550158859538051094983994724529639329018968666063 + 11965461142468830295202554483398179758418486687252561752147840841527955910882626829099349215872216344939916086597707141903862317845577638147419500205937858743355064620142597703860489267798398634357893460228065290877712973046125793069157148718085138376174587291139183534240390068852962908436396219796717603505741554087626882895060950345823337967334959780998068668403599081166286635969164193341372877621332568435226146508441981470849163561191443705863184459677095512213241345619103945214072636063963128203265668559571670427272195516774099827779993308264690675264354134257696936355681219665396629675859010485458448457019 - 5187180362672788062717872075943206476201987929603830153593014271666634039077233521684533685444706307784621054006536742861136727078098096970498540263943077245341801043263024288673375115380206853329544692023144276660809039484699321478180130939259549996145969844178898558796314045262247903248218711698535778114810170409094815551302452385251159993664548846629515020655527402469624631454191168915642267505678017083471221792175232181493299376681555677447416479512575880708694819480648514237176203141629853316072542792240761042044287137618762247104817167246511864466539882404039801375442225665892347485309856369356792340094 + 2863166257014103564263062748944674829997281906564459256966133618042441425118289330370445169818704778551659126742671333744076646859215459042090940769477904978599658169659080912899098457467092452637362103818440963023097445811583584629742193844154438978298569308048941574027047599958063029259017416353192697105570129670591961110546094978054686795817416004550062225354395168275133934745394235655247054612210583294709502228875249504808318462736545843727401029485601072637379814539663253376168087353630200516744486513072349854862474701461554719999619959843889327854655569973579541638486131222943913275127224128990944048148 - 15418192420072001156149212576126077100348392508788653764414074917202192021750943982334658985692470104908450285427286527882702453932967096330741614597020968509267497899306440218507775669925271549854554336682369448052742420797341298606263292456404094431517133102004004796028296882594793148401114985818557480520717477089184374655624467573510624482463561426805102304438773563437399501733314412300640968104589468417188224592049603106699887188119672169459436882464436387030145750650427269056832879970729265649795320948600554728326847860831401321040172984871685714250062359422002765961005118262724373567181577525173407182495 + 13569052517058015127371830700231205322672090537856662064931236788685174330906231821524200779392475998306946422327388828261089327843859458456089166377130918472009315200512227969949559526458923131232489010860129192606718413925279809765714445014118432572279935926845626546962213283592877250927357038613746776526616651693641884269117976816310960445774107876602816123905926141743793012646145571062145131017961511578488007062621594713964578605283086797918196740621643526689970591926150735720705495488610464644165811223435160697847829512538347182348116126447055875565483471688085405784271148594729724618766690469845655138724 - 10667745265127424877985231042113008377822739054460113919543837287907641620414210142748220021799481906857590863206021735318954313290258609597867067918118389706774688200006565541848200384065585429833027881335794607765316079751036670022606505430132488751374061783421293016019354279832392587329628969801433842869750567726892783914183238751266871062252227951295978372172963301325670458282173434255955229755561750547264267374351704840977017726472750677423656699092570255796312654359281070482828311849853531031827109580577004419669595712608295816397282710678221956746620301774923797231572844629787242281925090522110225183763 + 5431875873984378819044772374622636106649171235152724797930276701316544018304227186535048007395579242468598751627223790252322428723872194257174190284177153713037612329068564437784205048301649319810096855503691531494518708852222838575894886382527878392195945364005984738360681011046512148756116579416961028596068296618932360014851397090775156391233584811388219475431619087670365984113484532194149798086601402951742933142417830311757082799294822523786834446031676070099802881017837023894350860553676027727451674749015362508055655164921580725747104340861456987662894388081347977775347317417081063202611197260879614953371 - 6627901245314812053760770962382308316344971549503556871197435729852246815889840501542345242916616770356034335031550924708864793878922310456296963731650591434533898775999838046787062009488551597506279454208745276072528282578111939445981603718486954823220003630736414769496909668074069013456575741917066293391083341962075700513865702980461887582189547579795029141119312792764091782297304576942308262943328210983522953907466638950053127419029685736576085693852332107742733980338697337383476748564122834597091216675247389198065182472351086044893738022228438815346014966683213855112997385024749537675123415715392848695765 + 18581253258803643224496513232668766418471788499904204304448293304740781492825460504877560595125837394676756436093915546904962589310795973703682195360760232376066214262512086484513579262489232407757041963748556037155417106815575934292765510364860248192613407734376018466106755785795983762210491858685483243459571604272387568340527017326970322738601021735773243783556215006769397792962539989508759112694006001026833860083386387919052798775926310383935189495073643883697460595863358421677498001203968367354449101752899129280174438363944420269951319319218876400273678305005875331226091271905204029338186274008772992795568 - 2670388721935929299843365584760741413929330376408831525627804576208923333709689612158202500727672661657435121271037352175356749198251754754989256401259543801875226409867783847545409333924915361600079403230025656749171364460165714802696581194515137203597666434728622160897703789679786917985750220547305152284551378134836694939715194869765132621020136401393540332699135918184189876408318245638665080216235837489440583250809462757194158495413467120163396733462935093904080780337060371302948933054197662926260136982575840394702841828458665474363098495605880957005567693372443521212424617711956470350057887778015826171403 + 15259566634072725998848305028286836977709389078948277632177651062394926129213302155128558101494186476745479073531365832380821613202856132972062250432719603982902344687360329079605653651135428200763481578110506451342200994483712091213447501911089543052777052785114158190186902407557064929149775866176362569599709790264282771191887381146092848361640124566000401184513220271966283402627007183606506595183487626957971528844052735854200038807902671769881801996528077797522417488232719938046210032477933882205368403108824671499949827488427272483054925509091240522308847286693477696657242587696498759633743877957176778079229 - 1175941189549601206995170962632266908775352172710069419881044379237851317614106376265442325997214019703495788512998697301993070050795456525301723809326036477743750393913551348966152931503552363200472437227027859932926666336236086336801951469909245717914267219023685487919292720453621093920240656887005640273996291834014924294670343271406811669410565605778131923147348537236228402643471238882432480575330477318954320887886564302880016967438337859473422573316066494744352980088436904181133086503216359350228493573606323464137556028239610854030610321759948965999347950309564510200493888069167155543183596012799000283138 + 5237075824043498823094881038129559462037580325176060704641648483411661492758389795579247542127418355806825653389603060577331049005594668222904450489409127690200584693168208066540789569007290644635515175207723768364111536641899969534107308918210837149554102803457261677667403002344948350764464886564554922915251873838726516234651591625124175628831571363431093514549508250144493764176184711531216458536094090246168288296930806475753801774140756476508670926642932128281607436118680290210752945112316860577050168264947762033945086781383242837184899290567272706224174124305139290788425210980027350731059610354472621793433 - 10029569049066302966787226459548720398485436054775831427920319692114586096895539032422843535981269477054035436648394939373904464718325327915623708626907784358370592154426862577718697553142587952226575490587709688607634713810826768540398347623095794854437690403524677909437083449950706974439507186700536398546590971363510399139831801061675422307996013522984119823704600093229878542166405850434760834346659371430991126862326833577965640040096527419656751680226937444352912262311798420614552420226926998939554537293308574408089439980954344041799037000749658966989234531325253586291684134124464656282852186999166259365426 + 2460527154515618524990185955174563764842599752183567391862897458951090081488944466038162195822841453377121972650921180959326870696095925818061090546815320333544453904033160337759462561396992124881834330408622948935420441316688764386975162335666992119686072696163333615095552098395320883317324723839688557318430168376183585138685811146635108376436310249394587569812152496609972405332315018578444664844594836328950919480489807396016657422888258486588490756543830323791172130974834946866145713186860707811302920764519341726012140552603889643370658739346502562860008637507131217370822947755728805528120890945552504168959 - 11529732209526387172391919367709542292632314095547216921779174852867884826210470279872697445397276724310839409385649445720381625363255234070646543079635593396062357422215965474434976067354510101585836036016606274114855069546590587932862381374930109713092081028559425331878463113651085603788420413810033116103423405765053431751721055378607098260032496376564220919507686893333039748826966294378215825078633543580188046369649403854485417236710821222882835963735222257250845979675998098149327018943662190817311676935015514062637230415445185510898703522029263345727863454327460233961741571023485485349790498602768293591163 + 11381473206978169564175050766051077443421146088524116247810052806138140134621849340940468336119320769342084684309186774812163048557893190843473940834757146540474120382823999376038339229821127434621675297201635734593418428278534016678568892055318214629606864059673012106977660273508469523267181079988184664913477044156542633861267611608741206909677129495654540209219411940253031243570216626774352080974201185045813321532109862283141476148179972550461254910950004474248586944693415194701909380127298606701560767457184821268247534841708686668035849724045173676338362665184218504911173236710756072766683795620409175143178 - 7387991031961744247639694337735060861392881026394516888962983820763621015878477927998648675570687833191232182508005131434661766527327340621716315305617874527281888447009903990925765199960000524744267563199308589070232956491664368810599082880194723647012513592047192558143979092148986775679020775612703361361167861488513555452566061414314099727473267766891282097209751376039119935121249518037660508846928802250735345939773100014501511293687041545333208523654069517129316289126096623195911628238822819802971942726612036788697190724267983938552088619842336193412549520522488098993657615476542666464180049750333611607408 + 82456677069690107237295242921599832072718359887459924196683201976575755995579574008191373402009822072221503548488988356821432719283961706447990411924183793742525883201397735528982584511228488379107991607073459682818725860781466741833426478014317040054370658583255344809793815305335364699523999817239176364705112191031556753977929170871089408028575945826882816689888081093316190807596377122093753571966571643251858346585674181522834517577274114647747076870403299992808272927510082118389053835598365951193296592488749735036733187519932669988410471739575209180920506448126695050666102646358806821532485787517955597919 - 8966433763007215371092955437321006804135680380710096778674752610147182440700276742083427614348758903278506995840231061855817196913915140781168333364816816530495451957751355557020673085282514968396420496963299532370942835526612103362131053260377658212533130506868244846686698255209234135261996150799958822375152697762849603689713214915478762687237493639713313856961728759879846741020495671128427840830265747655044362098513346857772328220453475878040624998168225584410323602494280471907072410718426463636468649186744500779062649578327334298636809641514817109574522526768778068963113961019914201273590630945670238182259 + 28252694208402748993994611577668183711665261821851300270616262875242638963501196486361487760844524735007920434356776834153307520243954528684145870793073696118187599896505920279874351809488356643852600808253905227889014467216953209426143359466100659122306430147574412709014489624488569127061451331932571912449467302799305903881409168195050633237112477822807282689933318986211179839137154505469286273415250524716267338199235260248685840676242335033415702117301282590898963584783454475456784620528380689239959796282972063142798132172886507126385917659625121449699328096779902233374825659355053057569599967036752906612168 - 7807837442163053876196698472550077093080957871570444674880991379745907827379379484803340167474883555797306871289861395237145558799874350777184952847540305623713191011879416119223821285175667384484618393123573062901968023857336858820523953956014711508289574597800616319724356942120928343714484618476908894300736930035811893964557013674653811639516637770873688385925918964378039277713992010908825361519050537904245352987228150284151573466483461558400463475917934497602912486936853632174428312324645881847228713559422617027463550909884706263942178767936699796549737854582943903141129065910242102476965705587319030159696 + 15931497930862712018103132599831519870301991514785780178281877635806564941220105987042932735833208640512577168743901891310720785296978942200001654892640374254680452684770386905016400526653790474038799128080611931758026060572907222492848582944714794555923674145792551896791445639553318409230750035283519862628207861057213520507504660966264750868763325415752772881441731809408760934165209921704912126929678767414985995113607423574033090067404737557114503950073428743988793498962873301280387456475192947041303280754018103867914690148389965928349681852539218462250968933804129165197449226687020219904450389919173535443396 - 13861609185016266320143960177938688471562301496462126623184344431843945586616450118364440211852194831582000279091161049514997697974343517014318478303398037931554381038647884501824584393758334067898617950354345495196310688626184148382895589269682519305397332039454339453686223800173647467812249310678691175506635852227024036533357704600727300691622074236159244833579165238422743765622964400201995295201870559807659211251460223802781123264123543274311817569918905080818268214008718194107317994802385621343896726166934495698487561954463101775918123588528467062451169028604334412886570212765773396007904377033628080627090 + 16344386268559996602361269521407044514942083608236551047132187355282414191764362036913445741786526971377084286286444640260573799322326916856351065709663418379437858250888619555192315258970628310744390356446340879880120452581060762989730152614758640494936837423541216857508280203152238017701285496043174756209063037832564019326509928724433468956457914744665562849683084801976032753531631435623285474869572878777548608036267916196099128532215574038571376189150440223363530891939809985166900371821570268827568960024262691599199661879297239854383932908472092805013136786549943653108244499493138336351115251361691402793654 - 7012082672349822835338696723852766047607691460056957540698207062424434728421737808573834704382000501381274267142771127970612844094424072264318597106440887187757401417998469695274603901285025984127752318518970733706979443750922286130506475038436792108946694486445392716562587433930808814037722095378932839825647644132662403237755581582040923860555861987609483794317043103434955758337319561568686241242113129674151068092110373850572675478268435964930786863004701851794073229076472809298679158876749716824754579199532180460740224449494833962248445700901112925202817898334790976207136086795987862312285245980562268491798 + 10532783865658167966315222756432984006561374208293961363152748975483692352296831669734771677746319938484857600004058079562370478709882417593700142265154458482634915358442406613966866802003983075852779494707590043967569557831867451421195538631346349539159445293067958411504212973952790807691124211196781722253377406168930712660999565621683155103824513947538107264448406789890214499323725336401986848099456784083631655428412756551372022692292826370835487128475623481422025202110868397886635088320329766197146791716081144592704861821756750555853671948312649211445713522199112891140740759307606250953774401624601488054869 - 14348695402447357275106081149075697769575432868385251782438025375559296816314069394946555985340918475747939623047168135273670527521552575800193168162461101134643834694743480412466205386601559875318111135524976199948892474596528993246840368900892117998662767943164903636938551284803515293335326792905216796618057256430594075750311036153051149265773284573638443061981304073737925730237115379544973565920981448320785561125753900434369504607068652164466586813368623957584436950298132965484182775564175946731233449327267369509226699202473123383397489540754155822465052537529050226020420382068272324606664409290681406000608 + 13660402267200837612494456343602141823915669688337355843989530923478614549467816971005789149739840313988915730298176523431427465733081758155526444002718890954709868145333866037381125342010353005109961119504417028351366861404023945954340978295922426452425398956233167398317202206805928605718414467542749317700462256028085176166524029973894454530938632683280792095594651547942271474732422218911478107539103710595018031351380682582876822785930903457435558769318278461730704131529826013706258177384191758399167335099598975872351122683629864277543253863088506145078178274019283717312100457891333266403106024562524333230094 - 14410371589140018432369366441933985718362015952145265601046936953840714876588809317554094360795000768916887049805587854410540880591973719012570567384647380421522939057351067676439880127625278747121015037602222115755338071374214507485508223431707204577197363229915549686194676391473812221433528595149261948555052791863201220511101200541859967829830426024281052859776677760795184317913319757840686131226515808478478548498201067238728115271171878497385737063010727443762687207984347274642590096389011951360735955316193277047499637818022545409116890681935135329750185911973485264028656726131098799262416285789268310734956 + 20856055627797262044721903460970262826338493259775360241957794939930607772352178360638163560789144984583046269294464000372497274444351635489183367897584208491993866325121034746526623520718107676793761033595205904918465100847756825793300523735696973684874852436609060516922920134017160607169881336353083938480206752171782626893454933572059907291182897442506154542063704045643388143442501269903480303615190748982646203083574928227076456852864716168173925129473306398071507682638265772215219449024394310874689414716317656327666552907357551115633848008723653193237435309330602154677981315949457561299994459395598313712852 - 16283037653917216693788923840886383194657414540966455180187818974606709193963151053504717486911599651023273489688230383538979796258921461335554129519330253064890790056261379334983187032952930674322862299185939191006331678539477639437046711071873313125193064907621344655698889522631863778581306192440391495907212747299033817543054452231186604367677797183538429587291568681135853691857910659800916991453158272481427043774517927144203161311115241447106421277448774247539234742251795584759436610006618669193197890080709827925970221629869670635038315574437315927063226381593468097808241292647041123419257929980282909324545 + 62376285786224409832793178522027150657373381162020857908033633799335743697909780006250656065061640357158621443053642472239874212061588954374267371808063269115177754168914489117893630561775158506975088104075034549393183071014489764865476403571466375471445080427053738394517123434394696198038309348072470813799456635518287979695373543614291011189190022862017951250960125557245512884016507167207084880442868517985708839403975840840199137172495938760387005860081668161998691899366288589494604111784848848670344416352091012564576581201676827422266156917135923873855544061528266886862755051153865949553420392342729254487 - 1091440034078284946245749877670332456379733001945699861194023503607231928679773919239057432019861716795895094489775604750768740956540913887592777990845700424945177689595543965804128872314583513518278728241489134517476173224895408413088900249715681246335781832151621088472977774385982248269610002636472369727453281341915039294535582256461498544983519005311892123596153731248048092504972481405454793207676839487485587527391798194814435898570425670027165327384033453582035571054344527923829387693509334720958186688155229510368871434608787945659386050078780468591488862623405128665957047370852003132676564931110230595014 + 10064531627732777738217088674293784517262285376834935352827609613974314784953884533711791294878386199833660673004673423052701374790538602485334121566744028268165602531892363454288937852800801924345480751480895936413392667648327269997266604726535961521929600289127786003205816012445008168116152653692178421026717784421182277143714252217709383655289547099696006961823617822936002434605329955073824099751603323284654238480324505053835464672979432726777426935043295795460990754612193298841893877051347145846709943398432413620979628138943919768550347414806222819077772653848982237821969844245994213220363306310187244899777 - 3208767552426708574362220016759043880113112993664763752235350545629914284542817679161773124919891381540542169460293939307603600131193563152522592781340161277575882348626160660515839158313649601614714635080223514485755451019415290179609330436392478255222991226831188370775864215650517287599340217686950891275330747327954553431014093564436939070474584242166118645557971682977516232107796658098769477610560094460434945535484668114786284360190023361162248688917461182424569902007766724125011040048034604542964644343698349024648582366994842253460940969924245778679904629735160029133666146382806797076958055649141798720749 + 24515364590181554999053901834687764621969239126743405956399576458608580451507473048078037729486126513958148453274951728673253984044494940652454799552194741923074049434100788909353246185720547229991360588273101909625181942740605480038912402403965834970202489440279945930135297036386008421103500961769373412786103407333879445419453600467812485651891870299735411816980595630979065948047350093708495874459419068154813397120991444930463151143591123977184529860217454513334336909634228564646523633815296599260991687820875495963768058630940143521686328597622099551203544649357136622622858493363410175149794096876618209193098 - 16242468645408996112117767028536586857310029180872440287819281802009880081534185850410187472143177032452160178135500921585911162006289761170879785618917867184553268767241556359987218874332959060676050419868499463940256622290450641428728064517721251973783915916348480892143033831176654008961195657325963665140079474651589543242682981924828904775269911625495832713070150513816547357140746885793983358896122577956982998263877997131160837788085544193183686399094667410736025388580890880551539551395764282234678782047517318196677527766671276703635913127015308205969520036224203446067410883480577008171950725134670174548322 + 25381037760146745261847794492716512662932921377501398111812498881350348383328817145531046508814616335935563659850488743395231245221453291925676338934315445029662472875047372242253646916804248812748168561634549676706772221900290025145494617112742257276282888888183652135309332839381184874585526810335637949297656896282746704704986084267587349570869675491199945542269630514306179226345471699323097970772574988273117500215728516128746619767478413983681011121635719680901047302183337654273938684815586566413938219722339474129649771356332433418856489250793440069775103573854547978305370221681151404496615058127833939613654 - 17544476504992784620653123780130134942467169521280171013729531718089034501114199852869226105349417920271021804522891733348595700556852601153078957677973997634723180229780092244377208597457249651699702736434019764856410724418701032565786686365454079903488961285725497074205890394327022555584390660919242361134217063740590419444675759874719789650650667353472902998607534275293705987581348913045580057625352150357075538943739204950114643122464800170101204850819133654002498814930745315003779613659798475899172455988879202428127552918792489587396816596011062206973783279646085174668225483443725095563953729944219385200986 + 26161084604536949552986139395155753533844482032843444877862281650776957471141968088604657447861421668868258248766433013839238650195929264959922363938348756496595643170906229788829798074815992938778741722144124886490769437486550273336122921857084752062064858400694084247442019867872379324457751493640691332500472540456583686074546757181442121747134717753564052521270480979514147599504279624616987119149300967882221935520095728037084760791022110789878357684702440680466084926203598091454062908122432193599018545822021248438400980686907359763680086841219987841801665695726241560752043681366453232499727725749777583096505 - 16696851125326996546326451531404207461013965477655358597735746358691709806491838999562019614165670206488979238243921676534625820091618679284642057349046223479926714958541786192948981939223121147891703844939199850739634543781003775088609451147126474947643094865757856006427154963061744597267796952810176525148902219943622099881001713869177814744230404425890366016899307539391504431945972563435113190116917056645985876536104419619559699710398054437649759380802895807431927201292660517869556739507977674363159360325534886810524908962885098100708534178883595655050369227990338073590180922276096124707024113450269963841881 + 15736733458342153565212391276512670843481198936690182292188386307832579641867739446185764454690295588687975238379799378427526071710001495646550218299534731533694222695445496952074053486525343062811117663069810315406472527124515000581610687921892952721293240441972027584637035925292380471400625526040186317749013320277714796944680164544306250646982025538973548275482849749186331019244414872902044119513151889255221694535050386846437196495557614190217843156391264380632137355176229369859175981692608925319510717842667425646779344834472449757844679992281059559969449267938045999861671541835093468648131349833018044726549 - 11653094530042263292754048885967773526658238493865409734519085574250312616720054321889302187708674799442763813032012605311984782714249123535851367427160943728542952519357343259794087211286617229846815337385614194664052311023595815434007249792365145350065093232189199191423766664671827906115246420995084550232912540565204178448155019528943034099701462981313220882158634889724062707090756123004071097268456919793576326613463778097783791256506649146516342092684989087052410027388729479929345419160993904364647360444777645052685315719017088766179106581394163963042828016291260632888305421555230884797345931828046657076081 + 5502222135747087049071635422400129677485797105113657000677453956870923734735350488431959888082592234840059335597630857456589469508512482282289957542935247829896111476800423015618573732766572600718348281770445176384608831765947915652970959352154475624009403397276933984640430549261727078055861512308467407640080034350781519949877063725192073968464427482318469981170879530265729503068417291206454334430932007226706524376620580496687111454126783085337564878575870338570483632783491518855164936724138620453781537793169276199671479646143236747824495894915691446242937583111890669054907217121497167630669157710065667224521 - 7494790383705089469085310708101001087480719493423148447236932048084945290939280774189126626451435985191610036193670373914019477304030198629255635237836494148232593304095987091583111381253683533178065220189727953605536455713811341101699148348664321025021047382097852021777012531529226839748193896045133819776034827887671540242483589487444701734088414673312298268799499855386557873647542309465140832800659774229951868264947830530813279146186570836715840882852399393494417270291225694794053696860018299608687376750214656150998099925558455454805647317416968177139114794775780005195758014016216608173103607592581826318535 + 2222981800918621041825379444671126107681267051904045276814884012217666005305770395152828077093748047226866408724549244930298693844722380520127038215169763440094593584778035806989559155274707601492296212762453643495308190704248597143632016790158844415148135169940445534900126795686480417767758305258755532842108659672159254108787016446841671318428462903056149796448416333861823786831369596305059991057702818909317189026565464867848204561403406704546209804934929338775897101350526081713916841902250486923714742065555688381893177494045624668424969238406073749241277031974305848483366617527746851948509349570625945566268 - 4767976909611594837729463608944581050949614633392596073209529041245018198961358445076096434833875740077722605443977820679425734226072307660604546178874886305673740808131708175215136540244277467156599156285339596990814687107215544705098216372320655296912108004236104030569739452252912866500091191131252616445001551649799419454353643526142403775817029018694993412914118094527580605336580107951713179618248828258202940128668412443396065231076451239837993657194240966416674949731261709184882801473926033752395604556456718034899674741343040592133872042800844895643767341656655732659806842796202155126793763701318086034201 + 7551585157307507018804175437704297905945137728585752804305231457940420721856805939726916093652709416486324825400836313229218516114573560205760869821145781010498611404425259887198988312778327551612247739543325486581511766491986167866478599847023041775693062486760622226211839748765598301662819755404589866337660956493197064533312870978987562631808659225718839137592507559811822086543232915721877920115518892662181148758484570056201117894609340212582523740188721217383665844936066743194097838482234796311217060992459806452837493261378815749920399726935863764944326206532606605314184583674997316222040104922672560674722 - 12591915069352110900613060974506443741634236964089832466951970061861912142656640828977440079800643420246701879992629037061989564748989078828681648479847250342449368838059005995740454872507301782777713322641567212598159674653516896773817751944374861208833523222187576676360894098621177121809381231761768954184536662679774602559519342730269658721586603310295553931168733055686153214928729773521804327905248071769104263645447430580287879359947083962504007491776492383186482360689523396475663203732459726618935516343461251317045115956909142210946936390793602673945176206514619023499957595118766874368448037718798195341799 + 3109387991397566843896992429770591947448364017431157124945039422746440334045956963190075459460396976556425904131227397520689207459567321265367517862661575605668457060336910343835626142671327976746869287598044038386616628522446797648432798909732885368917428631687003642958485430939041020781910932628900727777902523715755883069530763667246316820924818307288768750638905285924080251992579153882290676494554006171428022758772235074078409479790537418687935323642072496467330228392442749827521506445177366804001290517040399301625874207677335024583062776921658794326033227300346416662563549416724220173360500888643216242135 - 13034950749829484969426106191893874372102786137213921153545255320984639519780222622264954200826757469329920619134543983824872667119343729019358223929332394263055607458715532544957234186264199027323475202830570057335822977339093012591113026747888307775129281045514766518379052612830920240901643193305907668009658178044544538622563311519241827052644252674632511514865381185588257201047437090249680880609705389199452238193555370226905456820950328511557289424844986496173031351637232390866298139030823543684166955250503987487135785390105135752042600866082316590570577588380034327300366312535268536442180927268873809702932 + 22996692360387173856367585128925722795287994917209865893690627415686719146781417089097505311315576920848253251004384794402152507271412133464962480029213022502354591045032594306664496583149966646594510276074097016279346008301281688741639315756067303457437603641448082952581149464365583155067001924526450599730042719628845741563708291758781172074782979684827020988744380826541539006528484464718085778545838870216835905883870734923644572220438966363001008470530738485954865229887168795741339420226751041752883504607479871666556875480251781612320655784430344037554680874539364835249250184851678141203352915308193351277588 - 40143043217738169750750741056433923652100484850867717774330754458727089197496194091496676182171199846257388141351868417404033907874716161952975696436720679325975102029002739419025424887044683477685632692532338624426011278666873669281231739567107756607896978626958312012299195337896873877431273598307649925122628092129702854732206602134936036654567613966837065528949754224692221894057690813277495559397474177004246960261794880321188371332373677154461158715708147364264800507973377056017290934149744768354327251227956473149586970579752181049381479625979895412817536290758337123448510295038128023645824988114302116498 + 3918073401507473808891072372518707013500910746668337018851480185669537616455807087999033747227212328622526249851114696222872958357944330668972403860109145450371873949595458611692101556207407856006766068177888454002626784392395225368930862191624595360224044243194508942292664581615332014555566288950069102995260518260599746419188881460819719198604992585233508365958511564420045403715005848012057998637442081462461621394805664747931756162563749571525961302847512996434158212182424192154436411601248701254464686452772718299493347419292176643497749855612909106275998868539178708885590197011226004777470441337945876431324 - 1011837111447349980150298367070167286867823206466826405168482832496262740344676740049931009374953679729580892179365084933008704725295577086430667279052164836210188591177388530053538507759655488271902338387174704008615110203127688313778030665111279079913216369314306630274895471304510901616808234706473609958517603709985265393731991340537557758691650536870920765664864242300036542313292903108681444479704591649078986942241958580173681763334426322082243001799799401648882322784823733911388066659506835670290337734410681099095762877607314226663993944625654477741671351100286774243718474017506637476349410614088821356500 + 26876574789703236671660770819345482284013930351367387627290442683264722438717128797848956465165070471847295110379146465716472189061153875995221910831332210491257847361507442987627427351514683516330353021475076356629837814058447906925896718725779701320686806673225819152358785284983199227970114727404797306583529745709432112714249135220455648746169839455695555075878272182025079415652119348726842024379535862132965776445475903058076557943459263413221118112571259180866082631822226137119615011292328265437365523643121394825181825582875028222319874956400858014620819625078091888360181669323903648878338672964124789403089 - 15077038685874351752071380272805669844764536127819329914828356443041428857914077956984397424429773233717250932879363651097920485996022072346447725034860346544003034193333936120358846964535348602246305842103048713693935732147401992449679895816177509283382351497505175455327132357534869899750106625036617849458805387201302312941459429380722534385897850970604871418437932158058561002997871504750854517805537697338815377257796054288016844771281652761915041211208951935268841894353510905215464066036607681209841660093914614948159889192368937986103595971634679882384843320128569692296438725732218414912968855094726759584097 + 675616922952090248851089368573218674983318933849717902251738417696797850925644477584645714202504686576068333318037722858800984947397945568246011949516739347609317322277499806944178476547427180358306174866288119754007236012062131361205160803721922248580360206805460596620546423241955164428319447838837541687134494859312136275769112820032201320148323314521654152891241665200185006375822651708320405920823444966345497052938496763125297286334515959952052552563065639261053133479558863341400747259060867522829875930262845007474226555128629284735344865775724512801179026291075430458339923596165497538973854655353232078932 - 13488421540471516555790093626798789830443378816169747186229073583869236431008504915472868498564703623982182280593886052451727783357016695303568771706915405750321588446092687512682674593431508494268693992576266252211507664516667111088297886057088422508985365133772623682851582047595629328380112257356142867413125042650160556124160371329524188237749003291601349776814221155381252785705534764063498827635906497949887875373733097298246999368771595646462765576159342495406102791110760224732929051003519558856491348698317070507870899380638243895428992577426908374575316931183520906265593016181491432934613964051322717981841 + 19204271664524545601411634164822837761125502558196784386427662470072231271262891399544698717872461352871491027891763780394994967897633248221036396203298120384041018870003676061110355038702471791318263675231378557105793262431995432558678889050714191035325639093742358710718723171907329189636889658531467884684360709939899988665748866427864505120759946300636371571886664938551345487481043387463356342704875303890696466358463609765572104159137061731289945797139343949421887453311029009782785290497850770228933476764054387696486288398315573739529340845934243631472719977943532534112810372368980369850273468660812728325251 - 4349783604784894482226223916770036156334266151667012572009779474469809366073732096295141648745092007219466434991237132768766356912652300240218949707352735552860404603365451480331546459717787882904292034116071054516208000947278058050337418381540379175117919637174172948015623330432202905592034229666204192337086283782132717439695967229865136037660378830579260331196776411607606186377211357522399614550179529239406551011100555498116259807371894950902903221690978275351905746618581371318299491972271344682596024320826844574805273034560486776590005946667177774494774021300346109704518936871093103947788901713887353276414 + 4863878096079822091150056946671524096061907166182032082884275134337760374177912705044783985429223280655991731426381513710748651408768552140698909886053984495283273584806153914026303370421501164886738325489432862133223172427520915551938402872265660417309373810298658393824692200746466440863821552258554384976862855709515199616032857274452311016261410344976559179004830705621592698122402670477979845232034208890157180216691548793120479665914930215794229292428087859828809534555370481019064431188932152791732628602878976345917028046780255277899867527754896974727073298094604462025039542708658361847972925521915164883225 - 6436458061333569491190128354252782329329390724004248635564973744353122834377378587377225180538657666231507118474094652904413861208451347574797473669007412443015762697475988148282058686443302123859457610742692918969764824308834244646174032706863343331458165546843948324042490782196869109423030651456461385430346706705110068118755696619233971364510555820800499767916375943766102833302475743701943769335330314699172110654942300654089260554301801880215390092781830991724014771919446282752734306143257119103393006527236273816195524256560537036137587329169523820466430370184766597467136129206940152107149659042561045546016 + 24351920111330543106616449852678077289530965405559867620231662607759855074125205469559562310858104790695709252876082234487792651947350598180617691372802428441345497453987465246953681820034783777772038777265022873686213670915885689572372797653263875509026444048354787865918313815693523453087469082095776264460277853156824290430592156636285868740392767673342838482622148949552769032155134731264402274261194060120866795595766296762583703069950860385862720003976551008623755666061266161380594481379876321344842449376045144282015464292137107942391409893141393652233138850424095080843747542473572973076587743615148890742160 - 5154083859426666371612814058421380921021681911195654826436761507297842542593725867240183876381575964477262296561539128843454807296508463078782518678938054792281344315511218527798381663988679904221263460310739977478251215208751090324518103078025827918941845757235966613582920518576997069734377289522531938574296811846710452739830195015365749268704938799069715545667072180016865625766661029813858826402540746582125342880565037272683460086866870027692406875157504302791473294459957219621511141222683323909978312491886053977203725403412523300031007218097130028543390534472921560520960837026892014930709331839697510591820 + 21359679246304872477885996791896504970582391147073398916254808201726942377880650716233608599207519285513836549717874824612150064703759723192680569248345904421147518560791675543443268372119701565932047082883549728980693752761053010085846589476708190319264752853172844925328455205071474361537015307583490288728795788690065842449076798868172023825110561664877239531289084852394401463925740206522202478577174033992229202657106500184271088672899108505329849497130336296025263603465895777904757194972955785225878856265602454689766921800445620312927001988328791424814106932804785231952530408936881906059230940517728697749353 - 3790396922857470642779080243990558172622651916870521685439728117116662780138645532941085087540512827788176833442784258539015155611557476069023724084051962544050697709121344474537434078624993701051028350062336942468407874464961424844210786578384261736430512848323974536266435807424174515249196496023150394032616586443921987071181911959781765445145290163321122498659375713244260710812208548955829399432508376987976940371933997283053084557207151229441241850562626140863760767937561865430781487302850449700455037804506502977534823189231942730637765705912068837398215922633235250109503954603112701890799497290365760733383 + 21465474684818505693751933029915881090541722739564364059007434706135436774002638104262097702144115971951438015832140641699540444841246950092366121131750710563123640100992642214541581471741482641222912768496908895883587889600515703755920514125281848561097335012338626313123637544686260216513484000613994792290091848223753903611194440123386998005870125593250215215479860429909083858393816602639900747868646244122501212881407057981726028021788225032303782999566968793580786840546908220032551579836615841395136205397673819635473100810287669870699600369522910021709530114388001045996097598197594774455614573571840990582689 - 16349098906591623464129134253535513327519771476497624430504511505839767206446654896196609658559774303366400899212595445559244105496869670894994232605478133045679706735301772112473116902817798412483137767548700747336323433581737151654105713897665727876392658111093844971453005150912935345642405349307346901138901554214979513165574951061804616258191379493011881125636184483257787797016126446263498198315950294492355905475325495768151501374730781729982786687017973458265012624837802094315810147638672370209421752095542624420022138516647822127156938420460077185289779571870810383932225696587271115565556789245638053292776 + 2630090042468956543190982134654062746628298522183726606284551925847543490738764986398384682668060944100772333652556105292696241425210768440773118241234969552712619547189997500967177726390975407495956297125772842361300270650349885753886299913192356027002867663342944073666325489768505632883168276475808584421986875983442762538916865041825942291039084019304253170836331977968342590961660199601224161292777310641184332421812637010233519667648071194102779358789861265268512247517654166233333959181808150390270015413899214566003144366612408414526551312312221396310246610737634854605882273372671287465834400350783781751203 - 3300283325489091098525134505506831244380382040252513023144029140179976525673450389349760054103858239451985067078860770334201289938305442092923113397992283486334603897466350033591121094657925769135168880954578248281152672755693204907190006111346194349427230081219243591760834316990067930031911226295079175908190335057619175445854221057149219702190710861715164849869201282691018075524498965422144792902492020199694456303006512058938839486134973126977209692185568312721855611394353019370118527771547963440218294975878929153813230427948444856960450250201553510727020239844459603392403432551012785072174386742811427602657 + 26832059855469877372824296718449908530188217336583828171429567547369082685054889324531329100484450996796914066899895682960940567694645390185791562603453486747617862321167857785069631937562034381062308544047894618627463127192287595128198914434695958682124329495255954875434473211985452296255054374488577685957547698519055428848696536874308716254974534866373308510674608928165163708073800844518828907633209668976822909913946507505658853977191971120882340538375486797230800298765815253831591255521854214374106767496303886671186813991220761272635532801612981320348807234148781815876645347918396456646458988551574973609901 - 4334218274566220673100615595306551873599723748286054421487154595539786536574894487158724638863175079680987957209955699603691282556670026069279540413616613593903114950558826230653805939701877641000895854138281509969242480699308989841551935673193292980306570024104722526916984562405214834482412330362530956983605637332167924625220970842545431179793848861158535963490917490057117886399055497606859008134508223626713092932077907338725657549101480625630646952790942204467988245340898476973935709392000874508957513495255324945024510884235630840400733547308192440557287356176128010385120016864981476229226890068352490297356 + 7549706565339355377833712634180966861931961993159890811163140209302994775512359471113374201841875402803439091331393083123609470658102521854906143827756110520183972973892474955483578921584201930879988317405309984347311246734993881734668345446036415563269936578511657381141942966592012528878359820425467832161074539289951463382030292566143619082525947845103760447153934187139558757648176911612297142206550382231626519454901723211178393131961309896885286969860726168950000059749254306911433928701284323576463657017791625173615796089939142042067023686842889517105865102608167413602890311465913120856359388609341104443964 - 2853909908945710072395918472098185136882087210834084223167172617755652235116033124000152485308937537922309092791210518207955445099762172272779096635155464116074254653189732706132037321054395441921638145719308815456615897259975038499007360014593121998148738093223209170921568421737141547918825969125284085515894143127183921698681713139664284616571586206787851781062895775897310568388411096900595556480459196747646290709196135044226655260542683996956327007250566557182800729594428703165979362554561443266049379383667328506878669178057235049811174152380233302631214837659642977188108844035121087744789997929251440716278 + 22488258603231700662082196620323533129839685558509391209078508237756229317540603380144083520442961218818181097188486809042293415432788497032676698905125914374564785581693777929675850115204947813455488892701822088735608602535247990834075251821561064902488831122312109167558641076635658938060943461391467049648203368720877919523016222854808528810725993278534079933563521589222640013248954649491934479262233355829259224383176103140493692489647338333563607483477246478315638347770268753979364078597279457156850474414253075858240753128351250252613796785467871506199850255609495324433427857053241092527504759509036234082294 - 17107145234723702342584480093707257119342570578661272171264794596593258810539762772358684574447018421462343441252004673408416620147144624639083504338877432975250574419023085814350008658890112439165632366634972090349690570889763734495547420810807486773366158678653429183773049920978097638216799222557040440231670233446480352714894798795060092616292860584053532664483079963514072084688420177419486130664239666872128051948829290044725597362222799779844943688264754058344864963927701182685148689526876726565705469629113336035347844242447658631781402600069684929521917896970959503401153556274721279969270670828174167477762 + 11486984595874938152604927487689816657041588300760040614907969030367857145464068730256335289482470517623412827405093571407053873269424901069480265293843987844797889323744277376611096559484194109544213368778786620239565822547715634189828218382566974693883157307920812681644282613502070204255396580123244935213429928038855678897398948381384191295048951427612759908245030514103957518960411972216905071457352906383675679630851002381098580612731373247886047167555276712750967347874398108943081293988269517375806848848296739333074901846691892807399765641340018378044721130811299451438908838833008739237254834697971650536143 - 17878510316349142548487888183177332192680585238212038004267615373859373830807391284274651878687287771621063230130620880381767052572955422857675867579666497285454581179321434547190838574080915119432242055049919033551619570404414417377411589243623897542386366533132579165717323301588515163499893737469620207636654003993581130821382293876965624203224908029102973331270278735477076445865121101203982305957706082855296022406791237410922133490768399636918329707738350811782161921250736724374327685711205300280673618146640665879589970700798082479611665811298483787831598462972309009130469411492362883585033727452218057710569 + 6139596427826997316854671781126910785165331395267522143420881330087214709687529908868161859395322278501347483218832689003765734602313902281975471498689729956625197601754732526421341698074509781439467615376953891912011604810617858275681681510879925785894362460461325338389854419058731819066993695719874091550276997408127542375173884479074351250715522469031650204645724285847835611341947108300148488345935723739783749653232940688820452971769033098925135610151938391603072096911394181147131972875904031651613454526696443664845121075011711674698516688178025528955491417605642369476210699566983508342327021180241979725563 - 12226624171704242021851489995999056003340288304224221334193319077863359648270274755992419470937467276743870455293455664021269191710623224910465448258846969313419036423397138490249594646300814670652197026131175023967387648855904753428925961377511193096882655376916662933306909021873124740380674783861695568827362809070255939276561669795738490540724734373935270349099436035652148629840578962916682970434451375803974964973522074208108510195338169352943294592408104201501692874310966827671855708750549386495964930426222157165152858378972974449018287612940990001671311322181945435040140684739161494741878609080912162069828 + 26124915689326158958841250927790706204640373170322148058944912443437761660082451787789270082530387145277752503902824852290755280885393027360956117907563124423435709009757364666695457680789923182500348230228474226212410836370064414218427926754125146167542118065059065412750892635639840757671889444766025815553260899278711464496095729544832553031648926315356525372548153328317337228745055636495419819353258093337414454611429780480789522668185193132517875256539538994922213451321769113779581228832804389800569695760838192275341224549969250408300012587472973777786446063998370010739661469161282586094710524877576363519361 - 9220699926962987710013825068925701578239457525995428139238377600431647382779640822984373764693056837131175230978632520342251664877976479290894973020240030720406411123281568465887438958388862122324420011598602344113169260039993359135567659993326428532866656280338899284135763686481878567135531527183866068848351601790626848518906371895093501611670295472046988055789708922650367628141838282219166366156636937398254034459119002736195773321985930986129820895059904551969490622513561216802375966019626648989690874163646910315709583284576016563350636374232720392415535503904743153533264663613726975525319275637637622004087 + 5116236805331544274122058070129412886773115577800004567409855237633050710452324705045208298251309916754550710755779730804359713273312408753189992354806263097696310398530058478004993053148723725531948055471124370061127737143625918572791634193215778947511409300848476147642543639900594197536837468120208979667497333546862315843522138220464418991562352309611495142029176043675408731903986308289401618838998264213714200333948267970104408020271453842734528488424235435179934711622283227382028532389134344034602624924816764123233467512028863059489647389349299446395135487375533264445526941877810065927698531328726419539051 - 11207552907724006181983793168854113542662786757023552238489040497039602291190502658181746922594330827228879556695215963616972776623069346653997270017535874275755653915697556860805812086694153222860900329540079416328547664579379188950053972258647757734292836615293975492443830966109573072925248089630791207670802955290362403482573673775263805415968517076609497992522387426238235116827618708313468415108772378872828171349103196836018983329754706326211108728881287930928349411225612800312137514024550357833891254401744255883344411492492698904717382967984357773470731294025520325609427064270215182129698406413455832585382 + 22120684258026997992354016729013371042513477228686500782475255281210911945100686341695835294112373865253420805761779637809911564495602051659611191581563602357158136288613543118950922383493825817474642315691903007451356816282898136049017407376588397825163951486789786632770788407310046841953922837491311407364801441558629885038939810277395726000346308198405475199058929242953615179307331874811748378068821175534148188409963607145641947563337444421570646152606733900016159905995440862005131976115206822955765184185723058088038167380838798243632948140992372302697559763214396938727410102330851936697483573739575289250175 - 8829813750304874736018177979654079599379739908925392523327985134186725920279272884418168487351354441967929612258071349719029112673921278140926137515908239180541810162455277090494919138228778568167048164233408280440758740096088337422115083360727237894081463202369085880705564847254217627189073264920255960512622028543280023356321743810303616205673771261995285748733987604758104723257162193288690169805871807161375780591732782471565133590791002406276581380613845387194788628110266788496328381024105827987621676387956645014794702060499904542223447267469225666030236224693410549309559066576863051659995421613984058865128 + 11186417964862756252104112047036558030407887615510242432055184002177597984745123122009227853033144663998929258508756406088398389846118669640519419631458933593827471036032922557275912814981652122014840222783354760401230558077366506611978483029260957857133010596689404941020040508866235106514022106289841410900804601280026320032554699408597758427993736248113757140228919417304725009463880019317704211518172511940519105326889238351810291616204845569846552261084392520416072426221745745066065845314689208212885772843124783488945420401969908241139182749454878304000156660761587240791594848123660257204659930766685776180567 - 7385909859103454700793431522351330418690285622350436363580550073567383913418943984881986947422895978847295682955218543518225479776822049189438276902190667113607699804838209049241961845914692375591493537354224728934529994238384435577121547454231449873255339813130517192081792998511885516695523211347116100814871268048107102272434210233543464205322530328689680809857722801874211741999387442326789800315958090703848646136445643101132861552459856185345376182815894019579389285945010173921421911804709683207818316476142475680039004174133246730259153788441509848400302439373000857633684830121799239147650818655660486024247 + 7293262112812119908286751235588770582267491584419908512397699661619122305872031702946128868404536967643263930342007778926232204857442139247735987751512897563652522173010922610215622185322145871050095519909570451995481306533798890089393475813173435852626734181731073776943890649333220123929090651535343623244305120655953274456558963232305011112997619079144193313584716258280035531998078811272475976706139972105895009020040471345713976293828102832559847378605224210036469383710229402594327216937747355791974524624456917756996515802498653036459579855728205321170974507965995264520517075893907358944176096328468088650070 - 7043164602682896549093043289553483201517827260161531772174245088092952408049697265092265185786295046670218717172510312372911883886478246506928003964184197085864287275710011716829550522664439891399674527200990812145440549999862765714125834510387659899697852370598508705742749032189197929707781665238864199713474147369411976895078204779587204430236637943210661074199164963434196360223438603415310868687624638704385572669582998801196689538133060586583291022657200658468349429263884397826727359608447358175486571615435146500042211234519395465134656646834574292659976260183777011714093386690364797257030650114550962752726 + 26520609627726160917127000567300147828039884238833847835557587657406275461940222010114114621735326667440619841804508312406637680275018666201654983276738771526706487638253037879226249997428863162107770010322376388510175558791937398496618785929399976655846948087412129004954768784138228138654612583235433906271407940163431826471463460968437843710881885995753953835810310743374324819898808410355659358788995625413817770592016410267888316077690627021289628904911132868670422054828791146855873988552489621675875516997779137079528130674378731439322030711867827036842871479683722457564762483317443212149201768294089181576884 - 13347130116357733313257175222283042439706703348677236509713582643520655986233996978797524964761218065482764031843855998760236765425222846127697581170650092971871535689523928417567664928082454582935078090169874245862887686224378059326798296017911498856307146821547799731302455814321022174570998566532550819231828947217845954344154832938115179491298270004340479757089579849913170482382153892295441171052900663944821372388640099708125120653468932454378359839816225061221778521293291294061710496476323635748425756727118621968019801751390353876593459541248936540197860637644253281555457726232793335477607512287769858904776 + 26644681761632304751182135789378128673186935837316824346782582037880998955043835215968455950572295425406425390537044368656580467197969144339484227537727155763053443557102109422501176295109115120794323947420179608801769306745183348456960129660705510946904650802880532146908817102569627884947937842985694150354485215448941648600010627249698676067283730300600720653777189506061437507572145314796290833288724312634967565429221102869409033739896370536764280497413775862732465433938318162242206389722910513874932031592958296538269950212025261375110157891988008690668850872616942562683565077108191009686315950034037635888619 - 12410456560285425357774018131269359456312611354203795803188945554335287031765601435904309413733753673452516450321965370429683000401744627987869864382812177796225311224162099332420114618231208706756383980335150529675999514513487421175825312149240272740245390767572154734289986059757179455831522756238319699333807581636539039444675421445627895334333941160378243531744987735796908282017647250902881833167137176306329374142150504531407437792816401773858502971424719208620549296557651662344190514157496102105195976369405807149017884870985867851242323157830516372597542649718885646414473995253571658933108556476701498294651 + 9601472413113476950876481282355725154268883078172857174110025254287059204900273109254634816418861816365708399485663823668153032940272015928531007629985745176239240762282259762517783793204859137208061237510841742869586577764880572537892187749165915357934750889406476834983314252205923586609170778995430125362044822306614303613056196242883387977419972620573532842401491227944399318842774444831176168690189609292130689201246000344107124050034211490447650821322193621330283673498333137794450060346115355589371329011445416723390982157801141357017929116265799496569601226374386931430795142323020255345760314264582227588085 - 1635019823958422781540431442877921766692317581691733168945656780203207309022182691105731879754456326881903025195667466498698722681412453401028048826646026008048452317203969114038969183579414988111980214381448501079907441659804094499190495331003397891978762203389743082822130890144655718638661163669717422985395149601055904707475754775488150151008546009735383463028706184049329781788942180669760224916728578383480453394647215205482046729906647461555086106015833884000254811816555008818478991865533179427076215827440031247827222412125983953424388428463457810510156484343633787145887539349887565416780829765326538125890 + 16868607762974807880233226602314741538850047064516514760850736098515264549550341144540190506811867408706900548302934102934403548984355282372490511507901426147907913786043446744877850962617860442515252121321510123271808157621075359687997668149786624949326474615404358429307395117620745435311919137304004021371197242328704741320430913954526189867185715039257072925051066650113202238907642082781040077413610548379971431121040812319613265539339703025922178866827161328016417449247210331570397578648792400405673459720375230340388998494707597975851970449690978941518538792469481315037958855075504091856767257606284243731216 - 9748884378754318196806314295621709049934002890037323714045485985942317128356669085388644420095463600004098453581396204372999620982229400641767821916380806477653435950445607769779797828420098728896857130140099110821866501469285936757548316476333933698482422408241056063205549606231604913666708928880770208451506103985232738197798006488158078913263740515439992247747174246553291917048618052066331565828341487475847971199125267436042438499667614988215436310091580328849874972044312096485898019835686625241573814810108144448053849017307148323310195123056751916986101872885907097899269752010929951051311680079962205352956 + 25595017586404753952263878376405413006002552915495848523208195239170952259586173098512638441125124709619527757581878378707107130229394245345931738931351082377203919613163562138833852306208547886846893068530959110132238364875769854718908267892543150071391503739740129363819752194240228692187140895409989665745071070052159066032928150437879414149914884554358100676278482383025525282875138526821278688042387511726759853811058489448750919942484196954657745830349054816984164604064122942357381906847404728965106028228384763106763069806699940510630103519608829562930958381030068241329688704081971868446091134688935815590126 - 11852933560324771335370896478074200769784894243734157671682300786086150421770199788114650370021566867452714371672583909924136764778232932395402635424964079474425050293117061984125416477660330043677366336184402082684911737781195181712478764903135059039467866959659969613377653603637410995763396225504599325767688833328354263412981493010466244104587230168384244174659740968527347449727727609290330167760061955200483519999416814772615372299554284943765084420482216515307518648698170819102922113838109026705451519429675495260909058789959087452643751428522788832219862496975724169756060723616757433964741153274590042448555 + 8739396882226749127786766280259880245228598276618621996112503974320334479963932140273225878114667006028873933232126765895197344149581076034187848299313255461659175703598742648184339580475600663263808094042244034677633491733067826346196552670946518035781441620392557000622066927242291355522199836425766038862865015774055190281715922936968583685298239213726322813595826291541629999972151321203343548167871434824937220768992040707018976429988234359635732022224740826835235355757679841331976336063903790133007576485892961199121982253792336801494777648589320389434258650396666608376980854638319556944556404243440219668703 - 2113826732678886836278825130722519321484935263902338307399698153686391674183921071178480461708845786089649772306895974650998578192090488751255117413776207808247603318737386160957018014844062477641668639332867700352091245109052587986183481457723330838261402415186751619074948756276025224626837750841472199334743560922898274790129125142121721084166913772617874338990605232601852403292442423555701361219694936916908114809163144819680520090114952521362046225678950924594596582444458985360057523744626857451011087397429176971569396037574790954919123297910123103655955315576523381305633332387587106138842640406923900919775 + 18735216347270795619782642285162402097558443739119097812198975738869247888261912646169756415222980309865126940759029482653862768956570825469727564519030498079093161832142669630132143338778429224375108271437684146899441347815715555114017656804997299337680949760091763246929016097528626545688168544466435926879169551199933355096348991337952635617827755834069014998470856377308547589663708937899371644742932437404224410502218930582223609063953732370280824166706352746932391926251939199888843345390561989392327822202090279231314980052452673664480131634983714747357114472393551561849149609346298952911156851472004859274582 - 14237903549154285654602551718402546400706654328659083222141499627331200086519440944809949669817507434549774661642822481137062473145314360546931943683817281719212483328662519528661107226435205440233829917585478744283469694998748224224076144987221000683601794385587108285195700526218066574319728799805943935967454056848838596787011499967345890046241535785293939152019642156793073210313526624317483125959744768702183250195967816401910667190171788715574372787072832293359192761493932632203749694264776748401400555663555923854144951467305251435305743845975837031164946434094657469868996436386588043244407176404576940742224 + 4503964933216603743715662980868988014846794702394246191345856475236814627636862891991464548910252972754218409790173706149692791314613227997475815726663081711748539423312564436789203796045397999405714636078122453341967413936361654326578870055119005199370599468072375492268462259986979924809647879468065196171606834457089565313076878573218305425663955163053158596279647908562271615344590499087330144876979519454230015239874926383065883983578719661666909941138353336556899082333133289130696904775629720796630975078615608544934646533636605699660452115984227144231450176593437436966556339696095384199210014137108308479831 - 881095561575496128569200313342173957379102319028061395265946678196403610906860534993791164170058143823954302290479910925015583326429783294330944110543388737209049912135049657296746785312521910004178522098992740667862009329244343277733771936035017492199294728139755921163357892629804485137457670415648969286398071773704392501444384176776011580315284244645756385257998582716146117414221625416020705682824601492373928282060987237791687218051081983581225959321213344859851027376662833495190216029128395130630193035658832274818463507525769209265595581276493808725825815613118255545774889398584524135155927794248189479756 + 20278361818131488356241195089903081188819755656666584401846612225952874931968181971362733698589818026681188684901208690581667316251770339343747922169816140854652698095254601417299174660552968458353966243961811283388936727442602053396774211154531369038721415719326569343330126349506378922311442282901119977964064900600369176476774396290467098361821566469209695640463427279020560302997346529462331544658200309977186486377926061416819367678443918278708015372221692013988143415866475358878357500336384840282415015879232237759660256824334393662562267919092438189507560897899755085355875041931673928994423893739151723872393 - 12870112623141967921292329617345715042699943237732142614675449075668934185050305608208992514047713689036014259823787483873718169794597839553022090677734718304832983036020387085498748539843943905188159118532202637716687402790070469673185970244590240831825461178110075288261885463930996982213705142766708321729673013651243605550924645239612685175781140330207810651782269288775535950408086919842779657442601633156394245579143718676541064554418124885293582030971619244564455036672355276870080274445699416198803403612490730222435819428480938330416255595548895533956735799399783899762644250785327215101388217346461119270076 + 28905232617649666881671074092027782726318872730891073067763266328435204124947061928901098860531391846497342145807954567588531878509134173379638558951573304091634930194868971828977080333789245382663187423322688329207697606652176572828997105711937100528342409191098709126626740228710929956433434927372855503017208970201277521907304655275198446137942038818174957157612356711378920290575307823684907350699001308872778443999207639773926764048275970859622044249545240390202679277330943867345521264803230592905264934146687719578744004778009526496012073778140156950101474395502971205640762030969056480108261263243416364258052 - 493652931397278546618299214415924371013017629781042626671259271567957202154049942311881893631598000710623916824529111236033191883126394863036297044850710963856030322326398429922495187908204446194887025276203130894897501262243087995639816316338895947651844887696550385313998388651102733300519346121487513880399133569393567168511853048375824997215076442370194011180131042259559176095605153057565178505395461155977645404759645283234290967244780340600481423302325445909710179065227451563097499641569919395784243888644131176495659805163384647045917158161568181049639735954733428895363058504236808113546185486844515163980 + 26660260548723872817407767069211467285552506482905509294770189048866061093326366857166811407532527656467277555028443310755399082449046677861348733396645169283933480797810833430222994208015989259838740350236808837443300261122339542962256563876514497628819423979441390498524565255040733767053484178913983710060199535904567679217135003381705257481800063956170340427278198571027389778780129072167372267477114785710702612214840179927416300217522738816374895177021642359306656112710295255889585506043578288756474856571780727648105194494346924596253560551867601493808584610184075256502891230757453904839021145993459517423173 - 11961732855464375873381193738886853041936566502222370514811328228214204616582733468168209562746246797478954829033078141181283304981883530308184194614943554012289123558531293923015898147897876992905564583880918761856840541448540383962330055887071885341054610963873684331381646335606008554604766435217741424676031306040078392332255884100778619613708176077879996956215300973209308117690034230892657519712336057298479883832366434125575801102824587550113976701741008851201731066809406344518369738442399890036828152648989780090396638824259039113343783014195760197508078189747151891592982374204160983638256729372481641975070 + 13409191951618909712014044965611612134397011071596933451487785833980531270462613830875959324261307628559362694623708134759036611301431853353165803128319667898454114301842320285523843624020612642166013444602606590915248873521336593647831357006776880094921583182872535752612186324169390743297615191539242579444474350130766193908345066381523883217714956847696428695047207299655748253920157899540192853447814158334293355690570188996168753273187728566630426111740964317460501866576301107161037757086813847324553297032384696180585000417531510396089861355078370719508901290838334699692763557756215822810859457649674165051780 - 14973138155774006156951726429251157187906484053108744918921693253623331363516396446867870603501660732714942910804657790954777083857718581268053783991048363486889647561436866747890237510239734395402324344347319212743395653055080539099225945225487111886908297870829131974848158286682857356863780540126767308751445891367089041846449096932569781577093287660663189857903816824986417461572213276726109610394788777190562490078775167543849520659948659266838821809890240224637442472103552420222155940941922863675552126219192012490069804113867536731360782995043207195215090175339768053918557255223822466236339905840459377645586 + 18338040479140310868787195864359026782291754886129805705119703455311411359120870685738334495790548456757769088151700799298256853526238233223473295050418958134702357583989244167395202160830890740620005205469094765283360520876611841337417279332329183675833349465715688554552682800649853428783331110274637087189416802186541807382761654224201236679194112768161336416639450768755912466930123385157105313647496117745780909219157255439846039413297714339992162491552315701755449154038992347435638167962110048986084872417950202992118148475733255944723887515202432813939381525930813899560999367245425437468731176899854568416183 - 9204468955234231717191384170048053192807348444652067614411684459605973866719348439797376812089906374116100675896630756849674610349616856538195508856231242118183076558120186910877659559809411720083109473263034799712372480405229711712683454898037008825152654997072123961928249281346137149077422828395449194124340120428995725493793961272082841749898546120674701996725871408999872430784745919385078375913061721140918612222094204764004341047029903440334147300549373059773845383612691256015462731317142829939332463626997813177112570405827944391309043474904914317509635212207802966599724811219600329399285368752487929771699 + 16408242388017534621336686591375643687285228764729641480449143056568698613606472323400677606137622780635797595711658341577570142536260051843289435214490273897582565221479153949560112543155032052295513662200902936922416839628040621090869172865962454096601470297351554920860445568174197578535001708835967931653109177016754904505770087103816019017968655930774020145013179163350742903899974581058828941990279906811587288512015584924781729797590923376580583469718356110713007972685528741352277986531106565053999564937487255896572368308167292038638197707392574815947097974038504291162617990407830451688088024712795209199763 - 7787663127552365195156429454411143750734584873398552146942587412807128925806170595212171434362389156681561985269324150767734806808145773817943528259332214556821945701701594355733429254101032428519477737019760637740445044997964485182538742773254769710162319714035660708304728697104196688332544913902005066264278365003563757379096853163056137582338109637282256444640483644334557118905976226209544252635499675629236051931536341775054545089257645082969259724167260406594022580208933878143018083869868374542042022449338323374229708060449984492100438331012491356445323685353343024848008218024463501945930590288892589088971 + 26282485820758282298131687704615793951688834767036548619125450462495249403868497798170859721079090377118636469344086096529101010409423424856503863268645029057657498676934217232816092842286046359980213649433554447155815306007560672359839557276856316560573666190433871757732297426373581891273080327384539606182077187367633056044911109420814539749221326087595471556109608591315491171004306927325154628112754284818704136709761921980576528550007902983376136024440874300444587457799102562155952983864117031229329077445444110035831869051743920437471943482840729174909668506651087489083069939610752383908335749883198472136915 - 986672603198307049597740956139883271341940497768701930924282822673893377441784390391261463058970448293927751408330512812633223983881943602094875772434973149881808741964139600048597990480816362835084840442691322448054429418569294916622060030264566535240376909405731183946497294320355299205534348238995663558862240858334077474191022499491265574833631320097127889212088784620110269788220869851699986144992460879679417549190102881046594113564282025017012201503954646554207259876438975588111607756671131978768280421730523106189440091353264545843187568241350611162511783793188932745162338005207064447310150257012397363313 + 16604013701707520836449841407322562016762950925379962690509545954892941460603162102105980438342155659872290093678909393183398439472631649392616679762564227627350693353985668226120623360058415948200288153383948200525734666826089782461302582766436759936248182982047730829253015850978310439774291684629229847869765061396914819703403326257532400220687957329615029287602779890573019514118948846852632339759074253469636894776972486038427070676868606271313532644739701451953594349918163106727100444808011266354618709022298533741899219637278484463705813850758071185282386857839061682871434065104797726414209648521937266457936 - 1557400343581506052289099302775965950961587623825858457059005794532309855376766871527998597220664863158354117542681735746743269480867297610089957621516293998388068064897499397758986167208504521943480739526783321701169526893213179056680605489910463026767640616838837104540103317484409531065679194553031973303537733972284994703367111039483934831089446287066437662021282250662597813848063877229396122637306277889576779145420718244598273355007456691430449559982368335504028492853347596860237724309629394210912313002880231165562595535917340715495876711266561283948325870948582259805182177524293129625948453446359328979258 + 20785026270979574894281678261105727422192475209119687710147095214136108880738530955705306238695942584238427384596469897260270553037006790267066399633824840805883756247185617708689881832045540449987260721956247031106058551527134665513270934910479700099981274865372843610182411764022572214154658860008685064582565429447312049321033185952801372449034859051355593220683845122191208240540860428117771453574453286555175313914671922703918548673644527039544525326048691279105684547742533159842019423972154098222320906308659008820467436217299279034416573047705390101665631437741777045223779373009980140755092776634534581484869 - 13596811604615000328929182178598964833883654661633199498077049381731601277186320526969096943177262067373640002705503680699499729352448448165118255744871811025437561183316853109947753781089030684899322587957444054523042217232398688410407210489283973493381921560019731060933925506204223773210640610475683537315111699074226513410768759569956298083059551647425709915535753796647765174161695195114924718896482722546797245116792470139981624434693459564320200753661612259712249349444180544239321279304773910052952525358146812885465199042314463453037294575520300090737391756526969538634849228760867685330974750496915196471932 + 10570400329058166875247257016958475510087719014075342405904055764073733675896698988383172091831688569609756986318044418632304394458888243191243310583073404369501633589798154486391235500594350738950953628388505134852858333490774286255907938910470567894336241862073580726933184578073107052383352935914379826803740931263127567015039010596770157903489800842152293228143216723813597615359956371561896075816807280917941987912234256084931141430104770646031248482516376963725450988406024216588073548128630182895465713826282916718998089813873252029924354067206715498529410060654253910346033624860981062023135671099016757388514 - 17520522559229376269733737929333625985320645229343117506571256921604686064204653326537161578472865738026538212655526480949662678964366146307651423116202010703096241370289657934026536424767333334189184051392695532103779503321516427163053734805396083891015741708345280654416192690597753559301081094431845039965685744160024511922825447340301619795625931191386669954405652983841351858225157788593331426794424186330604289236707174507116985466481349660846812577961932097446102120595032869140195147893047104477919661665718955468576139681362782174497630178617329946907590368474510747019165469878291498900936814645647378291762 + 3041734409426664275973628457873916136916472632396256216811388840430373153422240499089779429715963098477698334372208318622913673449802160998835142997663879376378596457670590520343517736750247665472483167317460098932067312206497891946111608386742902941618875080001758349685782352319937032610405203800716139109215766603852579755228119751895493075052640571079306364562740176272916746121347635550488747240695138046332164920491788822892983045874214168611497643135429753375964521900308993056055691101913686609229558181350416203485826795255911248090589629874140561807169254947419024113089795771478477398303906552685325542890 - 12907328672074134599731715695845353570090074164194024110896828956389847666241168630600732830289550556777901803654473833857379035890994698743629075379334777395242382934699215482328329936281026287169277636932024575981284747512437434839902909175993504689458569257497107913264179893814404916166279083856520291099512017275220901360373116966760303620172128015984050589530289483053500559602998556062504669600232267536721622483451942475981635363005947562477858244471848849618743687694007246080893212696863998662875053943510210993405862508190651262057639058312035646333901848728763464666491020153292706100450750584947744844699 + 3232994540567590618325353107866262537836648787587635371884156414571065256627978592905203180773640691860050367608194665257115419214851516646123948734619126191415634620925339414700429797887610364712871438784370389897754003551844734843651265053565941065778891629338280375441037713710339457938884478087261680136458352679508381005495654740109915268699435146173404406517879190337184721980525211704850523330808039364504904523750910473879710536141131590913849202250984540053199793776862452562452271857206316477057234604101087298800526492746675998070003892735536574884283102465851035615012551256882954625367729763692434483249 - 6517952952786412398020337955755771556961657932805714925270935574960802126448735261262841435979831063820991264231362095452211185549675586622643234592803050661691823318053039721351701432612189795178509874194013813329624916827726152724020089893270260379345299519000623472727880258995595219348339261158577901826474368121563567287311750616464032052150174526579411813380048030692934598336415229551366168342341637864755036569297966212723176600294914443484173061619901910675943440415242853255391598503229269352158239343894983256077143862097783367927235989292597704170572788141720177491977271933164279317990389452730583251720 + 25006543214553016789848706395333771057204228008402982215279007976847536862778219690206686189005991934284641087189020998172623430389316107617311817786391863365273330771895362961275659277016664209346880650247788429736441477613011372448029281782194242171843331753275382336510551513283818817289109328068703172159858617009328216684421307768229702799339331784748799888447120933524853303138486364660118028013483690948355194027815132114055392032708780867355742237802820845238290145550668679400131898878740832554501496131677025273740461078464745214317767646726156194412543868604686342584397563673516642958953217920404112328397 - 7162037069585917471476291923116260299961434040135240112245502046381300868246050552690449024408660952647298988138470786422327097940810378549229336157368788063546851089354011461680342325840819476439980188669386468734688941162561549744547624662603499535002579528354537361656227525561054474867378149908649375017809086711165574136006749223276510498375657328536719681752373238331534479833178952430463126733149958249050451145520013958891930332908272189403231100429450236465332027493791498398249510376032909976521824733254499310718842936068234607889911047248240247749519322767832985471966377849418382692532136454459223964316 + 27161259687233486496144616848151458185532600728197748655681076462661473912370122377200799798062925492816674239953683571956681192460835834390071567927649634475745669946026087913778175704433106253203541292148034791893640647619796422126554454960658577516721973835162392904639222565047029198061904267491573569664489609988957793854832202557249413190427177348422125392241459432125165288955396854567598554105525861955081141308217988267454840479190461700215322127048797919383206897981605288834942899566418335649512577322779603781894587911952753971536994092853045858160818787423230222336212586502440126553989072128199760584779 - 2277167887088801017777783179245035328536253981518513212755725237624592072643329293783865042448688091049197276668482910268434185882865770015966549367759963940457866258425758042656804775340710395724904514316238629259507286031368383208910366389554832848528120135261312131490117544648977066078797610583096201292141278688377489723010278158557541957376219390109183695814635607792781287885279525956476060343255276668824811511459661467270966490552435389167314646136421653614378619728383190034584625659713847081189809438233415186011922182406770312780229127388645730448756802615418228559366165778802470701380609045227477937142 + 20430329686209010157553957479736317037630566954409654527895225664810196900190582573450603570308058932273091080111041709686540613384060996171770257194176827333240995433269648677923435418830777756916812543236379665214472067523390700503518195934701924760748651850153566348115209053519472987577768063836002732771468530357263768547533211562082214043341404009803101176369634758019893617493489322782199328401586824953561292859422808946105875413360715923279455536769757134333399597425414445265434908367912191436232778544101158096164165928830528872455277133897350554147530251004903856100725410544747895585808058594767985953985 - 5733126629854904220705000603763479403018558346683747464490873702709225925392666953532253023985541966905963829508708269014916928952407444067887739198319377536698926670019486288905633308192336200918652531869198727201195643005378590147901729550213417581445696546840633669299837902832085504608793319871742409889144026176340182256462765023559703718587128805565326962379815982097194360041331157875198562644549371696930846620819900981586430179341573680857623750519907866760212882888595427718423257559838041306230299151498432589781086494604953022228866789612281318686174405908123320078525803020921654717898399645740268996309 + 24109224085881903564988262846332623873584515471517129485536988479452995850099265284060934128430974369408687084243104286551496854367840547769103007095902008809509220877513805947057235727474647876683116261728225466126364280730219706477325161038316940684712875828500442967353097729094538910067440870564669233116949240013314785175109519376105471629552446094284255497418479214799836964398892396252045073012998913520634596132452621139168977476283124020119828506374693257459205502627386184113221889168621744995730976076183810954572967049044602879768194918036150154949959926266720936820910605250914892930114491704686612235789 - 7801982677413557255610663664199943803752909670203858708726230531150761461546205990914565878397518126280340641857744047902745879118922211453016924814702380495830740593324405007157397982038266227976086944891765804692392443520054383428294370311420770027974701372458300981563261066139795176470023737190197161723459072466865463287968405964536016266529451111507463604126229548238875516547925873804471270609471522951532334113386510062297963064517858749370628871557111461746522528316231751843877865554169335495549815255807007159039963549513168781673782636796267232195443706734360447199259928279437359897712812132704126663929 + 17891022696147559358530900897331551697704657789687200262453468621723651539002096796651373744276389187201278308795033199219260707330263775322966871910954748869579257623436375821428638942859193013240733185858965559067723523631967052728386665491487385440930472445263316556568378456695931151150414252129816256805664480716825632472694701530220302752349886700953084364008778224720025779152454658974884456491640705813404640353392016004988585867625117881553221057845725035249912643341822653656399360465098675091437462341935781623089068935258419434165186098064304907294523473936541591797328057727171291634251951043705836163534 - 2268353829418948223101908274501251728499841157451265032254856007000391083898749193251728080806788664274050785762160563643442935717043051555355898303999482978633474447238161126969182836614979293460940563845917133836997562333882516205008940714571031443853678301342119001415963483484318555738055374413128577012126956823956595897849675092498860984900510496900491188262645806899384104196059706339499346560797478573287570602402032514494419080738676719218110030583880244215762249072536019862057578906095139268884730494552296205928567168720689187184644612518190930505524911551231445043648334681788548313945967909378060093020 + 18215458002583246329260576636611667222966406115424823972272863389984126654287632120878902171410709124155180289874907070511600676537721435423008539322780144299890276348240912310968625137794857785877413031189096180692831518952870280625998208060130048683338773589487201858072768173304481112166862489173642555810554914219450992267725081259767871848021776262247889656966719288715340382477519184544171297089267816139125903636930120974479298364569927180588674495719425013908478496982714687977434313489369578542611047476830111827199191641308461945530696667810706897675297903124152166361459619277182171453184771241081838769711 - 3950159074985278659920160585693435991481716035246360816148461325923980875289712392562077995893467446049635660893971472844105845538834853694190983638714070522529658906133181779722210664062593050614353632047678821165533458505157894326768740763301937563616845413836155236642207078536294797579541567852110890219427881630285053894047147029514134301982504616293852190388148402165652402939315219736572171994136108502805539071526859556160183845378520323665679543578714522510381331428407299337598794009404347352843461879262550908838834855074856078822288504279861704109995137174839990625297084216140896807791594961107792637035 + 10229427953337021691271275341560670370617865350325056654409246898642644013954194809666827037279571705878670795797991223832906936498482590025608868160915257323568928018708405065733464330972806594640414353257297056496982168209802296562764182994043289520647223233415900956033170344937842290892813418974888614104463283190077386803260416536434002915580155695386072237149153303907597237997475646680937366460149692887528960114542755352997528839180767351080989569177520422349289405437390069475492412263698195316009648536531126024149432837602858249613522360165276514121208698834392631909047669588716583150859098315228235161298 - 7675744949235043617104594312376681770539832764415262723691529947550229458516751867767695871328442107314249379901159625996461312801471591704133546969960928290280579508674796532420536306226421654160762178185112664889869768017739879489365466511096577851675178106514140896538015912611217813635465374541959372754261526830770380251931436742240645056657738978812325446962482283964233878984941292756004851823106854113403257800494599183688934278543465842802613212001470855083638184579185836096671703417487951709301617455188761758388103463575965541735193680829493432423544805854228952559322071697124098117575654278426818957428 + 26918724656110459525524226213972683206367662669993557000346441437787122830084191745905322310738144260858561292736498102690224618423098794648582798280325676269336281801568998384859057624333814676342752773920467789590668565367362486721696808058974129933063525732277450119181930992413843324055378286127142301026903353424922297201848673313093272749792448030124611215311478551080942971866703578491191958037848041220729156042686329439529136582842494842047658246928667246349655563148845889260546016373824093491752748696059764221051944084532042690787600656220726491882910746633095559407732167514941011077569822458423343436995 - 6798414600053129973765954361898622874752836376343947695445956819279615412202688453142990285232706775489360809953580219567240356281198983180250901866404086449837210434847133100373865052386463150087430863091745267560215831423713557347309618391904106213955041792187589614806221812150373091372423510902410786336322969985873094105541313255963755876116279538047453017807595052579225588730766151933683212312577375627115869659344124409990787976725937220991007877075829992234721801896595349673127445418718051804414232122644545780671087811614271693169587080564241195879517305534514679934259964220731128561298275138375885838055 + 20324073450503908524242646461131161434512645136696408679451971370732118148818864628957961171766118127742783915956341852532513007964297061836366111999747783256432466942123638869128654627333693016921181980489622310839856532900733012569516005056194428576044829263476188551446897375615661609199960179163289541373491538807676472473721809044918467130148591310175230315562474598135551324372787792176155993311128879434243070644548543512703571506182605240550800064727468123190355653053038505550177800776519276431510264003227515851819120539515759977629032954252290879644256901620151767302146099407744642635457052568636423669403 - 17513882920601526724004771488523431206631010442955837428359631390521440528341421714581358402992868719839006951982762771347466623039713495280473746958886034235119014072093681947673446290027935108706936978887980958998037099745931906774499382242789428377244138469074741908145814964652056304877271642089201714314780114494812085859332882329841250229261300105932980556287024057651177845561344202029388300475678058556875902630849503634492029575674207188271489200244057337404548827287203674391315171715817769592101606906651776938420926822637170250015613727405022053237444855565044355357041538407694921135913396862584770500213 + 24356373498053880827749525210347341081906584223540053318343787859196520980815739799729583720019559506287976737931913210226330601063148008603386567378020770478503877032283380893451643218797415111627191031969108615827440857514964001550792646352665310390528023022634427783693401637439651770430808916682078440832819947412242732940271569506680440017034866852812924834091311151615168472925603265631724973592455890006277165113636064522736990104280137336645410219946030073825407004704020730317333366319355568771217206285568532183610713582185006832852533778534861896752535028738327958353480595541672216953610663547762640714507 - 17203477582897445958108664861034296969329523520971657787332487550284361613908005029269919962963887662858484098754346957161431006384486189437997697969653338487182794743954500281807067946462184775257509202202042082773200079499123738982758273805333277643928246465093642235803071673426376664454406241491655008231812727157272755981751014652561729453994627605142155982396493851949426028307991211456108621302930996694869150503416986168358794246370944762929994740565156019951734578724974264178041002330975984985484994609367002002353559015630679614420499025219732683215579064706208686310440392249842423807085784999762960219944 + 23537642290781305690874873597865240034742928545772007402195507402203631375721053659343168861898066002557231966806166163003483379518963197167512061046850568710293736270135105003273644016766570326961430199008050797891092710432544754148224699681649824910592435767420326686360173312736250238371301131075490697526817188014808259921518811421090578947477771922329952908486179519476255079163502212196336912377070151229411541765129293084003700850126804161458491987876017163549604104012357077584636456428118517285524884909532170851121382673505756541446885611537060560074552288794968327404180154963645721462530134461713123028442 - 9976486860497205931127206925454827141354636545952567778399926308872180003863768561812288338512549905983271484448847012028647532341832812510976237007441732798745642161835063501261136700931555733946783614381152136589738255516733372718493679880511543761220802002869854951301018365719682480774334789213970630098212035446819574498279719369630954323047085101698346610887332596244119663607229750035477733882303093873911624378426830519506045565528710980149351220595589313520980988657885243915688014362614062637578955689138595958022501523118670528887126221411760451383807691160719670718359073227941652666055170425152561990912 + 26113976478048821416252498673068422475639536273236713008802992676160220789296638845302782314502585220579313131935794487216694678068660599600298425978421085993315894670041633027719598411343682068693469487553286745965248386340729774898848289442930252394356333662146533771441589809808992871143528129375306407342089324842934367261037007330175563277707043674905009847360726124107374331916316823843884345756727289874484131026239471408355182550004831935329632640716860977100537694248050610427985181521598488581603674984523790746965700360584254854896665083146754682462579498933651958305409719285756050664083139085253946051237 - 3798474778070306850491271687422908467638822881149580220867946218392289206063086254476692564481727115371908450273724263351849127826520343261371257076337013831521878065598927872977678677548215339052611149991779101591279928290616045623045358277643506512195697216328257650166648938898865130430445800532486889459101417791092499360904113570715032783026065525498036433317657639104899164610491592141561424746468899863482643930411365674205839221241599305583273927360290787618714997288999500394401309333512280250489904445102409646336910636177847480759684774617516128365928176057449934162106878936551133187777659731231169802414 + 7155433861064600237221264961764122543097511723554191638335584223422494151570217940337973001242469374257113638833522942177648934633460485156407576745575211588801778897275884060616112042423632070234135085086062707341064084294100966956990060207787491437118610984060389498833513901841190872766570983153603078694328887608254502856068918488154354323557472292450153375657297330551952047103052628118845220690953485464692213573122016172384460721648040739594667201308241873758782375028206527485910057667562227553614731653261857593837494785189856902462154215559174643610127513264737449798981699122668804005315154610023111890458 - 4976406883434652928561842529461897883004932887213143372410530399701467644330090399487094150499308513870769736099351148403100052716298230088956327627459488257063602585039453892692729710551643280944105689274497117616333984715745402863517492179487403463566304586402165395932161023077866898112010133432571347030434595062411873601989124983433260227168123500800105284742242838775495984499348918577681653831890867305955997920456339556704193498085718939836463154364808264153779966883467194113918403000582804948768000754795158606881944772632938585994435918478278803371367254131369238702629866869052348730700596686741799111827 + 14679540042328766844356052358497811518481995460099077613272190743494584721634320950696693908511094993930593825345301785973475374324531363900483914532413820214316898450429760618366523247484871251002895332532736231574488131486903698104236458643880700392869293125702523981686410480121488469941279863787049213532065509931166033795590470836841359477851033309534134586234668020258395371638758440211589581442980557662737581753146093333619989345857566969302578115166639617663369531818151397837500229366971574286422003532825777249175668565913513432865192788477537836914887930444694576015495872740809073553039020877556758688415 - 13249566375225556480181908350761186315277975983365337915539326439224141127495329281995830088168729228942673364199313719787306810444829367720451809211513557676259338751747547637345943277019706444422500521250191139630821447348623734236135311589735973112387046114102783178569453031438821611103078676561199421156093312553242799683529346186982111446233975842668223572627403234205761650582164131657525644826255481525485478854267592144116518830579289447128968599069443238949150368391389561857082615094138851157053602305513726318248826419296993908583392525826396576116530326601526486334874620241934167290446183929437365550761 + 29437261986142485236661557668630154819107074143095861444034638854231423095468012320904941130292968772667658505566515517165616803417532698104552819219386537836374162495323517094805682050541781458523043248539448276721520444802702352712943064291491588041619019175245715335038344338866450519369350281036717598153853915917986777617553519535205439919755202613002526469176081790605903213002018523474012835568571888658310985335456527352958003700642155941532873623818927160076835507701732378090835417700702686370839223525895831322468612629542481915323132952087915321419943010794700973665667966893658926614751214151869392756872 - 3776666136746233994536262448808454333817760775914311830109520038680849814431882872446428387818019617617193359689937768697702708610078659529398603411552843405611396837902455027114210817970538638347301330712504845133132758173098010239842719220282557798472581474036994111854842198980499960104086221145036656153010987180706853002964688653683921638060934737961058953534161162568565788401212746219592028813687707709687298670633236367480333113672314265877951478615907506826630905754975675127940564830519106046285284940797511132731395351875674857598744754689479484836529361351687088767340092581592200940181293113205180833872 + 7012783845169353280278674431159375742178974317716672165776713231710918797220878835642686233749038022761414589754512592445528267527168519261712446880013488231910041229851961127340707829629434638591931381876285129194367983340844030854318178211716409660554720390213781456681631819582706871289026894107001330635983633558836646287841671404289732189115578688744256042002232437823462587196703276627326980223003884877452970669548783876725550678665458179802563171354925544213459015292108284143618570090191635783879120444340502531963415861642814780857991861445016846046787081408857527881648988605694616021845903265941409795215 - 14978305857198812444119809836664500670882187606570909319281438619176095951955374477069492102950430648697194735763854600286253840511462655569588529194223688730649134305500180682202114740407193349437777470983605405638227838381562283492466130338533599879407239235786283420666109232990707888850843739355415240455842694613810356489419783709952943992124054909171730136320471506754418286063092362084838441394687170749915834289092860803030345097947261559199255452695430618579546364000256019564058093435381947462603819506430859235047253575558270327621574660455487370749643875899822974746767955759177322344693702829475982971875 + 7839546632856629412320357222980255345702894360344572819860264414457063922664727578660044240888310291273255369110112206073712245771608416927607318046588045568233140046166499231846072505099186381531307436973150201936096917947024639736239301627206268923222607150235937626766244780574150728183225908732319439629057780837309009731064435289199286553043135330155161603102671944773762047939824485077244933515477755385642507565497566873777667928710240619312192053179622659042217865465753214842989250386531828654526789802848818429825558276749722698392032489281316827295685932207183906964353433433893982431741387027325173966911 - 9402989008891468510792523012062894241540654042815318065584485299734149442345169706808717745500632294420944636003559141981030919174809407684215510380246711010957670997454179329394309006645106289032889465376095325139682838323790059602221028219611276868369749738007204269061358500417550477706071507516316661925999417734013059080408728292377331459992807281961357564718257334587616080995337348649353604678872101013649838319188106059493890280077384997543473554852608525979120328476887019725063038831867929143517803137567420933573943557816522578643028480323375685497486253768735799590246770293540384633610916283976688152412 + 29854025232789188827171785918743133263733972259514556886900539023922026966867902182330796898177992637768329532177221122964243703103366842975230799760815433061623587535643796283035327049544862305875674927545642090813187582216322225790157622721002922513932510862671438533536151486681203402838558064684935665560302632872130266612050637118691982525034774672793998301155507336854056298555211285591077225721577671987325030840100870376477503177038383301751064729175445251322825475651726109597835750729555508181319253168457792004947336793950144139248239934357770997773001140757516249696286551323195185211651439373299164209701 - 3815310625099311862014688773831528918573641593183413537332665075850201102358235399955214215040601570771069093807256222490448100234300603401298805069492331004767529106175651955414055347435456117085621682909870737404447200955200238563426490365113677192472653739771478698458712973091236667277216342995855618830708414968535503316735955605850096615847086866293326711905631846616622597548402915125071040366538376451587917098035236789669274056890666245750605185445460162328233174004869673250961231575756814579238020182268905703173569811229538403692931576958525482948878145127724653522902050639733760757474426621076451740460 + 15676243332956596237664151421883548329134168661414842140037679657666131615705036532196033236864358945724176914711840088715429972157169854377595147046253663509799812885283952595384842560527923360583747912493548266690218191033269901735948131015226189400063427172176789741129958142147524023420420483303708315127679394226803790487456165031254350621903274092506397928742221924560043719176237740072670872929333988822164245244153599993898430754975792861029612258514440248766010109736570455114386911038781627885191126297640369377647523216646743027020317844297494720851591086787021309504243459841513410766023790937866037034076 - 6346179374257649896751824646813934981828773769368545432161139585708237966757974394784192466507296423807950356469805667600414982991310837077023658734585446849757585191947068684774490200135965723332170397153175704209498046941482091632369172874598185497686227622607349057867764122254453915455030334906849127491074112994276663384037823824868990046104584820765374242415848468633678235050252396248295709599664655420911443340799586560779865610335311972665015377943891298909946095045244948614477931166676883029459085625114181168213250786572477823290628236866257075409970194195895457816533535159974979881229316970842472575041 + 21313473845001062808974943055090230964858328490894642488185617155977452464279490787374877429916192456632501488454741723754151532891099594703078807855345477125500169215284603965624366184696755533829545567337055064355611744892666967003911833583621072009981130134042574751399472609094971766242034044581239483918361881459275183083115499186086772361794458518853545399292151934401315077768845820895519840679462219168706208075319010044914156007465126277705971701694490746517260823710958621267111633779186832869869638593230048558833224054182834686389597613712189552733271227617304132668808109034145327402986977610494961444803 - 13280184552966351982369430932600397756398895735371844484699133854973098952392221045640478827978434986506032887889390347214951610431679557276364044063769019354654417065746551957282483946602536134092254240163686944137386071538049204758951695728447211165264327202317239889107949194793874018251694567611608390410661445557842692910033679772965022856145156977197742681520023274445672566117436113348953459897733040200486342126563733640929041074461887128155226391080568034947543255163347415570636401862945903449687365397156976665475925592445202001051391914558527299934733764555228385889447394476611977406281629174747176123139 + 1100299264185237856601763176542701060908528829360061863477376191526012397801399835748439083199594482234395846569842834790022008263528973679564527971966741906023379494005083411261091017882224028298341363906568349257565410094620757791499029066611371736426174537989057807532967755337640808109109075345314968274276168306481585788767935912975579304457323939756983966641943071507838548794692626809114719889241998072801125957858785105138037201556681582723341249533443800985198744172979027996508698909542543876495980395517425649875336917452316232742378852284407635047900940841191290106871919414811063962571309739522404983328 - 12858289436116476312938689405743047053277823042846342285877507602117658159921439484095429411571900541628470820246030639436163340940861358701961615607358952155019891808038571553939483669760140477472281841554781740235774550995979291680388894859425005113568280799528488125011545804588753837849284462221900859832126759200968811419684717142365955769204661365944112230714660644317841437872846663690043877876021369154394360559904405990424987096790942763169762868329964064596974047859011326535139905424647824239944116404520719957711725619464990721560129071128429453842267930846390780681622011265391879847607194330079257531798 + 23922089075939648600263929461804502372722672804064328206974240205786561843348603659677709738212030629433840968386040824279456475132646739384081602224496054244695727690818956056847674646476060866877502055655474285497652145291063117333588222104201646415324494498544270914977582125200282226772524155756145353287907069696668337198950441386136966807213755630815922255521632682315192639137045162555865133832347777617258284812022502300255027496387137271944764266149172653678581058313367869992528805977524619467245281855125979721711364803379860987576451373239982226491985039177068836239332423071907659805852515388059037458818 - 16934631957756251178470342663203923888497095453526779804213489706507027240480803650579313857953313712539716784660664788550427643259557554462742519368374679276615970202976952754285557305574070284797927981781176313177771436402259824747316348036168255703031035168362266284337087149324104114483564749292273421562600988052060766635720688033559869074049559668593997670548811550088369673762337365452150907597212853618367454459108616416232118009728742159033523069472133342822935488481330016105841446244773379908336612841890514170359140343704486444625611743490493788963010661610314968738858895814970489023983975506013142161956 + 20234859622767565381040492022133825454995330410306839123085227750300294918947983047370148967382113133244723575098657626188865521009806704454196864866219458254026489595824653954955268640899486541004255635349739611152976062078141287489709962684970886935839810660994611231039361820329148165688042446560909895893083532896315317582684298034141699453216119871774072089425337068202256283397950839128539407556100440180529150041725811055659856265922464761626055517797685618881605415526607853694973618453424150786416773975419545991747484589895942480698590204365935821825721348744429061882192124864102295858330998907966203905728 - 12259842486622974965358839619589243597178234093476071579779973043807717500437776458840820835077126101085296252552624467868821914227249601902419233582782700801045351538092923715306943647065513449430360536390122750047333960113764662596696005249134484159792564860236065969994479758226798812290922657714988874970493139710769629336944314979780819989067948480421881873548683450379955179556362579325907101846605058127531247673445480605855687439322597904141687265325510386274964793386127755283618287572352839955700047977002280931232844485658818663885080322073327248148213929076768374415879685976066698860871524432929432579670 + 19061455997295641039242994886263943685475726134339521400653719125952668132758769521547446986542574576986336888202233463343525308837362752678697080905037273145058664980921242268998510210478100715787154696082606000397575260308124404269256799541878810544618989637358764151004531505630056330390313104892275218983885360781459474498335879130936952757437773109521209107707496197275388374674138688751361314200296167606526600925737421111711459420866922207688166300787522656153051042743782390456522501532534576443245234000390804712455429086768696140770415865700269821777222341384266182092180550489442394058207316588273996035856 - 6891272735810114993257553888161068789519930612407544725635036115839910440452184392759582660788161738438052296135363406808570944753588466416332111652865474107710855751267190219536034992101688531294781091428425260502936517606808976324150681655049584508263455945127537757075385823212144456314123680645472457981004800428328528995573163457714932694363755777111473113713907556983358854007886236573909951005082315639015815506070642200583393299405957061733777962438791577086361121723575493606564506285055118295554128579042962659686550649839173086720041809029080931234671996467206101748069260456704544104338054677291123487597 + 6050185037589504130488953872101321119709320840236148089707679648261646008874248792493286086672801745111580456559984237511735260295709085516511253631847976639639533095129627079341783147710930554299134259416745272208125405207658693550336033574941418635181568251146608020430210461628167714302683210693183297518126400895001253579691423735974242977458920392632596170967372826803080652927200833839821892155002899275617711924835084433303778544862855547552500868086810981237628987842054244350929291848417881162050629765941298286558878915755298968710531159489877544185915539413395720542490177597047202455773470627037543610080 - 8963666961115922483772620162617251922036756158418792935855224026079055955448174892987583063206957109932815501543932614963127317126627780632623790043277619830157919542545383561379639138035396999552624970172082046787686621718301284309959573886177430538105975715935866980344896873287798498162622531248934517327720119130614179553442168735283177233359333641100337008164677666787946511280102412333100232601890488267729283577906136402322736736954380829317832241001173186488659101192241321777485186404781672580072829308963372602499628449854926235618816008122198438133285274019646671609537697930719101725813519983702827591828 + 3203634324779982246338062278497544305178948870176397203955975560678563903602207614126073995395248405391809821918337560112271781302704724824582560795132191991258750448258203448079794442903710981489952390162167497282497712400347040342504681215856350826328883571668310725452881756533437828150544438398502447758054347517109550735790775351948741286757993417597571853636562567897026736160612048626309211579720820828804614345549766670377145850848693388455380191963950881398280738638127507158859709561684484783932410932869324270663993723772239353202904089363786839248512660414963211463332526291852553828021188590295194514228 - 10433913227215018489369567217505442627497723280874555994996804084153934267808657656392735257000981853210580161730270228381714205634246786508904246728723438828387374431525317517613578278704367819290217393649757833062345313839469534237760209192762810822053005054569945477019907911177671422107682556625799973761451743340677045772453191486888800999768845445225652411370299021876664525007856733079157717124676092442267005068850698396760093521764820136801217207292871730032776946118835557850340444676134459803912005570585811734306369148178675406059933573662989204165512119227293812816327026699515319965429581976035185123387 + 26323613701148947465732377819553757692736294169975276630952736236324895005276147080017913192441511443227303645271786303782321851587968609759125129351377567122205645960151735084929531782983918277792397261100422737191527466466819884322452153594126602014311507539809725007912299693925438189031749151805460236329566852126016520324683003150836844007887317089179581463466520507169715901664079386882136275120610470382900150826538137547370245011183503710660998489798806521647366008278818313795967127266023779360604486807309122576208423758948016345374137898338284585278195385939960234067140167025307613695109798405990930726136 - 14938079668546578285032176130630528131508122718808476763216032502317900110495147894280825923763932455944474959227028672064800585653070712661192910868317834371969126387782684021130520864358138647134200469799366634155288440723655567443548410485535589427474573869155128567882251860846544233882708808863674581658773459068899630395626361731256592369484459299504421780656208226835727161388179788050230742007889324573609574134847281127430848096810495282277289294093440829997004414423484475502374125167875667269687006611296173337579905525631377538071386026016000081377837076593341168591868748591608669865526544457702184439572 + 21425657280350696998375921992755725816024353977005910454601965824043496641219512437046938738517221427975221396674958843196847462006236936915414231699480910714174626475309965521050919780575593911044632325917863765963187994859625841470404465675525126540767011580330319373698001378425638100244107778485965875728629125618645512279923634220361017797847720942191534910898380900219145581826871256528709687204638482233859549356665653436664729065483833594254806799031990238845437431340078495912588817946243158604616030133324787758496365742134711895200053262543098429785558610137193197115981875713197799849416520850890245759897 - 17403806118406575784518363099906717127034637274629467271752424750467078625625378710726431797216202170688779378904071587811342013823321049373559724265389536273176754026155700772784502792821022503556331353699109521419517330290489468381545388684258502574508132986805841030971824225864366807496767350534410653888634339753578827723505003186086793569621263136418722165802033023275178739228229733707921715640357042092913722905768391126643747631637907757952801871246934393663096553538372524766804985938214077972861652638603985674526590518278149933664979596459180201443199678134552905243775430966433988576691024716138702137122 + 29702485765746458582219234134783973610437621088084051766152830729113150840217845854616183273624822179764337477188890271513309991162112310936292147573294490836229012987864315536694164378748858419970454237362592314400671480638649594472688913322118717102244589055797355642794582143446321623147312950925063227636416605841697808120633364090303021629690892409912746168779451336779919863843409443580356339560996390849896903708405186313610657936209637340641325688649733378186336611166334631707330029628862456585175548190611082012637540590621254034674378556112370242268424338447073426369776702730489041832632972364832724924893 - 9695880535858490905583805565326143036704413146167208373681098258512481923215061731141240874073664741577990371041276622522081587899714122743360609111363419420835665404831012465872842147506849443588131248668471597365241810147946708554193260361196598543898592605608460585506270338053969745618808622191027833385355149539863659321918199396080560120678372919320853752484877409735699519211413354309991526339078433300544556364077006646897229483526044125510371598345436409654842275054863952918321726445599951406970052235553544712743049555271717807755655829593749662966791056520878250490040179251038923638334125052972965478826 + 1423964793416708179049296790488106999908615738999482138912828257606782933068071310004629287858589386075435906268899355905000377069062850625885778542296741563283644478450559257480200516919122381320352363752031920411336832229908501313800509902490213913021752102717878713293655423259689076095909932701570947792057932272599707333477439856903772824748621128285025057102458765354798709165592080426019044566471952774808888248878800699119680993040888520873276724797497348842014688640150266553696604826142239100791053064914355360722610494861365934782103311796742217136886163621378286720064224576076259524538801526602837825937 - 13402564693903194642322659741525337643237038131499563445221811145240368845810276413195069509212562690287238660995604021374904255437886856156887855490862296712479274418213832018982417655093021639458580395379560481125556635578290871468408811106714010038824052328814069152704945719621103657482134822793106343269388358850771206445451431371902062183380480631015088375486946655950132100469547585408294360183578601282370687426211833454587151155178367093399694869284166192109498254348841055401670132571470677705910754870434328844963569433029830672232588126853526016609545465555850403048289961032384406980245630637925140246665 + 16460155527831798212019061448290340368064862963731530002730410380513999097516824460618964080322057457782118274641044929154644118444703832745100636370126811388172775521864504586047037694344284029706649531316654781677972698467410358428994739689796544947743868643337828222429578543383058804564430118903489328794422381279431406547411757611796829896672953692956027834689136695739848263327022448442527230673626943230139204631293968290293620982984225525487982881944992360244360282582376462688826379730801520908025572669647495462316162553142938018367320824465726985118051063897793935872302672469985699726984070892533744083641 - 237808308907168029382966436860290913607823013046672946269713012259402966525491219185478813001700635964980942556541841859666052735285875865737426204801617333056215434577081394374378215528421401271130971367165066780842624219911319848165719252979132129663181733524671040779659854206566679407294913167918414881147224575968661172870138072632064889059837652865498561187954860855808247431680209405618571750519753323171681721218597562562714435099045179117609322759892923409515826353750469027935710306251764227655989577016927836535056830163901441475755843226426470954031596590160978796342204156211550935599158043992566780847 + 766030647565954995527892196806762251951960610227727380070936835228324485842616265389194424742570514620792172779165924730284837340018584194976631475828237695347762993063736885275010205573963512290637173803636167279717340413645174155012847347204440728261868237020682687281593000717907018342768920714844084413845987183086154853501651955101168905515921672923565761270582575149382637299551357728194543352242769674604728530604313990676711360332021576929594273380189797584964701495345974281739976199360740713099343714061343725418015664047052220737469211059515255925205113715188916227870841839803547878806905741165807757418 - 16159025186884996519381107963259511662248834758408576849490242464381985773629646830600136760352378094474000558655155935055392057972005961832464599562958312398279636217963326461881741467336333979675876244159723036541256282115552420425206722505341173795129839662090587901035217767068775041125319342266925856980339184793995764428695499453024220735955105374564011409574060394916688861375802509056809495836464569473385102207292258279314852137179327642819932277482706326214761362457800742163009730458374452715814605731019674766689770594182106979965283585925944861900871474289711730324554293915437912127358254567616058284602 + 8356460658123379337266642100308017689947469272911883429079821331362113070543780373241656370043571642175508712438440646926475536729740713181658417948783142922815278789886410968718151686028026905846418955451995845714399282081951180438048903622860394583996384728385740643628425342995056840072120515830664633655709216591412822982921467845132372679277366299281052904717018703612940299256827571571675796018973719739337416640938833882994247254011003400633281364501221785921248085315071168284705790130223438992053497565525492555120862351695192421858093274262001195252340147627504610077211148506318555171527405763546119358945 - 10559142362169758313635738127318317409834778611814030520723507146773475525810179564925804550820796478898667162370408759851160526427122947704409713706080326770089623634209626510435604043683136105414875429660703627641404442430150924915201782631947701071466029310158855509619356277826508684815975229570755962856570450406008168317003206293077469180534750225856547366286871199961891033949854692718931851061825887955109289401942629854526467072856110719871358132749925399134775050052605846578531829967056580689083334511786367349528065725340285858631876552052635368604589652664028843422369733946107727413092340793813366345019 + 9975085980953799279844933291280902936678548630801181025000420542187569189174856113944754141989170134155846280815577649471584146785214018441393756081956191289066495239296580823032602185781615238574927080672989347706124035737656341497062232170974463503888564188573822114534142146546444983544540619678179223983817121970435829051349187889952503891759321464117138693660900325187198195075229691047199330818311269329568416015779684612793369162394078891657426819576651101858050478753410608299847411286317017090978586599241493282050267617423528204483996622286155572275858158436191299323382212046865584474297466475631386213489 - 14903732482153499273973864955794779851528348232906588133797791572684882386754394720444385989484608715995006728800523576154220787699727406563290268222800830470241835723120300016692413120518630117101669772780854031081009513225334230095011674489525337904675189572760296912424570025168540435593219545596380226932575774306304388444494768659376570767636548490220032622048100258017658602370519641997667751993917115363789035875780671253944625408434376271747280229334156507524015965432310891712418822493011890085187462273059644570330901648074783772649279218700194814263429186901398537884755764771537464925880199728250032777045 + 17385353424614427467537165981347090168026623092428431949635125597688689659842097504689954025606266750619769441321761160551225413123608575943464745632577363474833510429077427350684044252942441869565398941407226037805524822848023569401846319969740329469712052014824660315614741185870624130758816348685163240160191890898571565735906871886790094839695032543949629922703930618086324769010854160949421043014437236198989765626859638258518725123046094314710455014743030574995887901673310158211139447885352225829906468986741078596896606410234442640983613769163436404855862270349817004107186913932396138760299781102619765883275 - 16483267934232851704016181550686483507970907162286645847440136314617521995315015736647253743541741490266314119609827732136858793727005115205826563393828888270046449680914992565263875735390017312044946415048088812013772162580344968817100503725232081663096401460872817828561508340610241168448536676665570728775170973198494747516877415000796118619004902744633844951126441239911376720705553526233928982537639195637609080449665156086149400323676993977879120726819321882354814061070259352074771154899660608057326083293360236036996683500424950004370050449891193769486595558953171199040252430478623801795658431403221520875340 + 15939273471020355910041366072443118114737464845987431273499726078224251916278102246374386858641178961181497280877437258338864750449390473665666769435817414267671437281785416998257770445177425958611905385612811999826055169417380519006775256245464265602818597821231972606990507810517098813893444736254688157369814400891913142859405923747237748342841706128762660962952182757897578210522778687630756240537801808827742415653871393428147110532216919842383178376142211802461071911457326879581972059263379605925076366942593297443474955782638302717276967956540211299261573933072992254527817139028789824203641229190735037676983 - 11388112299455180885927422840427638357732866867454992543042163969508244815966648234537209454638937874227556229601452325105188301690799940531744646493298381816245782770608189691887718966405885650584216016042840750722027673522949409276290932047617873234103093606083959431286172314367809102187357427721609558082371487871866340850037383960716230142099273240260637031928341297444647916881654699517843138726053198575099333865412099953272930170345200227937456081545076123673147561398941130624722324438362089354495559504943052712280345170341399661059733640192432277494091031464627354555028101574409649091415203361510099566586 + 4961123881556966772284567880073219180851940125311365187820233684587403252161214261995917447491208780592816294257542443247667751901215606974911490245167633543627602110677279868658322018775930181076990608891773294701630837135808422155236811239913438518800584061038014733894335103172340207254729015498994988320902733497372602426703309283346102913526953810563119781245387466169224833996670448054645824401312219591839921895965867892801463183584142874263601590106959742884786282962471514432090594432979254605459959812313377056364349463678391080499908525742092286227441223740516152674068506757422667911248191831698731613673 - 5214468656808743414026654455580673176312266008607521509274935731820159642466956651069337905201146568693331623853566222207633531915732290315730359849854104272530001741663038800944348954735259723884374973248495388901495000155762573698297313031053411379144469807021689977672097267405464252970522728438444103176543602339552305496110727953705197101531735260036219137069981913737734266700826834534504007564012397093825170776920900656942049155955031712866494162792770841747686212145655974645749169400031899173022229597970835561634321458447227696411636707185223457619373477084963347136096416507268694748113583596251319083334 + 24027253687102737028970679924052432357969250349851695046061200183768129299900251156740897359591605937437808421819320135972532603535773085170457393060918445405745200709668724146076037567019669834811810213788783762823783712796996198751821963000125279415017434770215527197738225750325910347547616716195220546600843105871282696023320067955917287961986938914939804450241334274730445006170518236413864302244496778850082824619090082827185785046765246767898729705117895178740099401058330953027844694896229921049106126961149084755609451325213774032204059148135471789177992110844770389282052053618227006716660481016556895708934 - 2145727433466682100295270299571896865640636786369945665472217131991068727837574999345327907136331415407738390835110226732056118988938033501119700492798110853001363132142450678849240281893951445143656174134268429559055126172632432510326775097406792686645880212618907776548847993649568458816853319638576297553636549877694459564144095447183585269828304161245519091153271990619217439231788056000870338333872628899202243219891435438225965307019263204561676665678883917860450016898796963866205584288520353800767879696411154582952866718254025962834854255649162572127480328962613610515551289642914383071183104029500657890791 + 25395582327115048980127138685335604975920976180116786870023486184205125716651429110916499203269672327843052794762163594569512868280247977941951550197499085532971736316289222824680146925459625891132969663182136705359001857769053057396460706874680492817940975327505628417873316798039855834009188063757385832454964712742140520247607187317416918654245913021305358743166912386501950051126005459527281198828480269118085865473791942540075672852791458813776951366169374099596054323702905873549627108059154272304407568683592996223935347125000114468363735988241320363033804483173944750323000550894491897069043875001051887105505 - 990103965123454992212722133615647153661021082670731372572624160568683791118793379893750453512039916320090326442564118977150612162740243613907953837784435630620814782751840212222608755209592837866186557096966409053319514397367793953597454026585794327177381301885955478760928969251978470984019357388961011240723000203095759620569455405225726933210423642761361540800765390028030630321650158404666654835247769603066490336491433971407346402337352552713804372507969035229756837718008246704793828752527239576025348896559249516874304865922464070332236544093850930285798501824821791353914318412004469159080458022859603216933 + 11359090223534273067336343474959154167817989861412178333921290947742715616100075938935483287338829991575362075273123565391155177468055035498087159095387278367030016411818334913283632334363980251993459359783387393836493825680175185417706026548512543693729493193537634538372506153621994877836961404474721882871422248204551109844554299841582287158653194380936767394545515397585630660740310547984291074218620650595883539057361741425528844622361206672011044351737614374296818990949609715230580621397016315265130312896660709586211325860403080166316132985825905570635095922414826203283110888304416150021764548944638669439087 - 9330295053702839874199800353140575974947631118808890071039640040922434356844824553588634027234070890840425489065716810383643014763417092184515806582993386580749726360878112116822894719790119333497883972398653620481497512443886156496263226045353589346771654172216236220728816521219981710587472541555057434437372205389340342920900822797850940084727412534247997383970938374374832216066807860012704121563569562788023952841207828575606798588418775047002975465405871920504598862832210793580812718747498038567300575545739233024765627801200192129102575091632217088043778333445117573400020032377532464186967599422907991168305 + 5972337909523373634818980319172123194182221398367537091133196425217300685928904552109325919834016282057597491048295684818709463126314571033705652187413809008507639316438467572235347023219993107338542682453643989314119702375922457159350970754796554157529792052264935109328796836402359203530981942969948394009942339848109354035374981943987152170779782354642377030584150936932469990678619196444473581631147197235695367183979022763244745497878818158482780871461684919021927353175621329387407991514137930641512670990661177579566037492350948055080687887558328335821561136695243540628912035603674703491406014887529166602736 - 2768198352018820328598982356691143524633543742635052540391391947675729435053511329448691880526174331759156473230165938135486158835379924708711443390474690152530681273057249836909693653419608137453853450161736274721857287606686587284719548320356094577394752263326660241503049463297113525253097149008972511028414128153742473332089338915312880057533991585829856238782140400217140025406163001941417692686562404361528616162432348320828225372035087772194336881449572409658308592167159323027065172153789866038882143272731459395643564749047432385421839324125088659505574598020664546370121049927153128563882169436249715206091 + 17747368986468865369664939161435738104251711270588330198603636127930071059846288582986016632984481153350123977004190280027424177485482167735067303550796840683757378311992146685103149377893881328296783796825028120114916041799305911338691424749273191324158856228276005956552150027202446844948735716407999996693098953224534676458965074613067475507478326008752001885394378056034978024472762264398274205424593292901354476198194160854549057508131252089429467647530318321142257634110291263637226324952708534481013361702527986705482820250886041864893082800889223071504956965813239712023163527759611480856902878690553079169149 - 3800879572224055502877354351557783152222363722622513329134037816648885754066726457700646719873330610004059980628302716641313580455013560798599461454842239734196761374051334028159076417037743418904554778887738661962552324320745506134288831925125614139962433485416243738073779266805461995342881386107828989197770978944063563372197979260968629673256784772142585765565124703900912494944330745700976144173894414517106628465203017967421989973212450388971055466432159941207021647169466281499660958600572629580986994389558957775005504358466512010700509366992514269334827911813596199961762473558727737745177769028337275923765 + 6684299281143507751268461653500634073366744161470977966314831790871199157266033291786207253794872340767345709667476264741005871509384185480210300552961791228358123180939559187794943501857923276839174904931638139385303850561508129886944835733693413474667420982909417989040740775343452807261200856151923052244800405275708977533180859773322145083287048067049503078519987983128556230592227563844432678684497926277876330257884066962811626550200973889909305075991325032613875281444462132791812247176430990944399737708357711159263362261876605797781591974766228184247472153217258858846925726898137427678289208090095987596152 - 8174129577312250175543798941170789615971679462090701660556392795510305127187510061504560025153904337624788468244783447654885479227726430956471226985887872742632227056597536205034255528707273965556506494379664010195131700257729406861288569173446776366882523193978058019729559538242087930484962587868617440999322272001048636929576789253973615203529253546790840010068112761011136100917160562116165058480139107190906188580758577129928672866240888734373641397052919861433060370714955542145821238014837834230202615497361195639520914726568384655197098879851737062703266164653656390827796802786706634956853176149473118675985 + 20589757049393553407808613971129585833155437105707552796352871150351210349318014008035472635042434796428245661198528687941611052142530890493640993258770815159642807059930770567707080054671792677115313180147942406396315271943347846870519307947622947885234602502888604800064729371816123880674683838151049348709538032796970643221811745873749777528229714248864312252011904453365658035954811951644614066005649397495186569537107083468352803016020677992810931433111779957106760872487450790932293799141471839066670174754259608200959157535323400202112130890193121275826687397632471386642133152594617688605896210909427044615582 - 2088732687496614004725705878154445282028647451546749570663597980047051175175856363962813479534796291698494118827642907321396670993988334234290746108511508544810594844887986100409272286592792970050905754403023017132749535504711744603967905551425527660223754344419554589655357733268071582064750800482870330765614870425397831815260386357934979759976424923185509958300488966247969784223783665101296578680857988726270018843900267136995254289603267532465890169349682355388251949704414336720843640975839593063148322047975195427700970415160083566921905293432373921848383164593619161243311859571004944448721463090961082375844 + 24675202382269645849570191871311156952589342202030639595576132506447952394361547613851449723676968985415110057164406636194553289846399748648330462785405955705707252496063242223612342188421220241450392835458814973102268970888339389302746821851928767837023961695891801178829736872457640473994575174575093305913019388498697360778888089114728471183904758007715813571239615787263506939360067536989730825558226670362717412021393596848452621479452279576161883046739440930382325557903308331340903265776411742869542344853123438590920773155950185737472859555089751130881660057682040645920293689712707672594734509591848599473626 - 5664089936742012004822271339495256410371218176305227915579654791742776301279313159127038852145285966921408017692472130057355589549172304027038978231497321112112791954724733912016395373114947067668368051388560956448056608444273420939696771812015252119462075471031554200747579821949592734674466585799293748935416094079518493986945469249556672365190599317453214968602861642197698833230367577531076005772183573892085365165070165064958782776102850106307099247633721563078838706693988574856423742294585040859601637943303712195062266994444893508472794076629730759946459794844837384015946338549858381611805183387813668792266 + 13414221146290942653508578867967909024049648121443831399778058734339852294675854776442863728920870247954249496677517486536920737457968435138197579486962556243320814212126860542455448501739515754653543545692787169623816673290421058979478484106821930290418373900187868927227046985832347537176121610084666395683779903600253499581063178864742203625231146670697178497563751542589291029257216846036398893582338079690858294257240205367733651073794774769645138811665295708831761184090525783128188407089487005245740616600727379592957027170558554560517002482225654216527055657533314968184519117198256762066988718731902103923270 - 8925444485093833971614692063498907173541605815162867734484441785213387461055411128722454296027579279279167438275939837561288125436947559416287382701875606668597161683268382605277164819054873271114798173575188709334090834161045115364830761393239770295519733577435322371449711691400915612644910836233747362539386551062052586630886917770271734378044159464736587565091738947512189200973939598907978384119525492435872895771628914445190500736724814922689060396943840814053101946640989184339260283822691257896196313922318742219855311133756545318388080312817106300078751308661927732888652734230291157575771539374478381159257 + 22850949657475161727215097990371051226492926856286507430728973776411969329191242268326632470318749416085784775437620160253725717260855678710106931247900703660261507275079648415807970703644264207583335093427565042867865557456457114385144182168533231027615959029143258619733723012597658047959438805576520292271633261222659240751515364057372428962238605368407644939904802635277452543700565722856109376837067647716054139982026832634024953797162914608306550206587766300527637411062365959753157471956804816976712811522516111649059670861475780640013136876518854282620776892416432961438594422382773347654665049243024568629006 - 10539461980232769201688050607048661309712219617534007678911292651259515351121287046332584995893671100856597046013838069516841863482026328642971003231035449868444060451912355987525264342049900728269188829396038382588903750333391810828898277648394638526189913639902186560052340979662105741480973769360485040709554753749056190140536060718793004167032519867053453545011978934315214247531946596993018931064891444400315114612045491428232285683450789712010550406767352253474899161144061177171298276826028105407312291222275847551959400317107811351694052539906133125711646043394052565503177368381103123318042132305173011460165 + 26982477353710535537273188428467595905163050623041266863155616959739832667043275531418574015646182698886554236533053601420622754930941657783004422312719622714218069399691627340929289597748816476779323453740647644280646068134934570850795878420252066396330546056937115944258194839375317118910714707597444661891583182633890938261307876523410693564912491425714685616058463590792836479845877131030940746275661003908597144740334413536629237408588462884655220066806418905405371864089738557837021646740282237315487630579239581927106966016784564510963761538302330280211424111425065295512213646688722133866819216941380781634896 - 6178811078664378714845560142177458443301338688672968888634865685514005542161533042446735765571761716530284800707853472880416072948919460546459961466981248678207984831101841066696644991555361745629701676601587262887025889892146985939153433509569951470794402358337483576965056639169210170002365874180564562377251440986245180314489481948202168257647465492048384229324554414366930941179211983574816599372208910903149143913929286252192583724992735066479506209046553779068783102588662164687887408256289863235123549946629094104371569780695262059693861494597368110683998436014262908091635985235895187751043940456731640749844 + 5558263784168676038880401732629986366051045990456764080035083677820372993205301382490979926069812632796057575102148693705325913074880007085504268135893547395180199805292121716294666961972818678992373740153952630863579100576590211900183807378040387865282669835216271616708388634223335660334263213171766893837955744561527859983074260467636321399547159121811844193034134650245052295345941222353170091449052227900672991339926352951646867828638000125321307252958803949239604736476986830695402090841518588562734707226439429236952184253454676589520992240154056761235686889066724796196387553228534228510924023078147553645166 - 13170233220771959826576606245222211762599165824059144203955436453406683725198234578187965814469213962427750761071943615159278711819723559704762603596509091076978332873070570835462323077285442593067899806547109472896127945662129621902387401185943823563045320418397754719124428268255690804476420818233770317776159097360279098779023135012591807352452886161975885092479350435895438372901022758561134003584892371881629720779606973458057856500506060212316193528858510208959123437804909914191833393011161598985167116708516508287858862976935826980709848094856383899303265535885810941781383324595623615163970410537182516085715 + 16315182193992991578206750705206462889576433693971205226893896406392026812060466068379129867456639556976886183568872412143263672018294065535006809281414791848572597696764206314722537351107348405443235374701562324381230323320196514480366670809316306820653157827672587552963165488337266957095443315760686254604491972599311847601031724257125855229978626559115158308932801862886469055456223240892699740021120884076751033590131323072322260765667888112134628011251638632915080935068623928174554566889048508524413451006011062402153952489896416871738326596257436410090378567696208715382772626904213843173706943449943379804772 - 12430643255632989036879113596599056910104272192875464794649231896989983958301073961230451051864990330353413483604540637339495773592144359576020162706754087548419376608454515766481389865122803461042920865328784823450805571657038514115913329046605735912147265980643064087222333283038339338210996243257076931845486643787769797514111104889408967023688237150750882137479127833143079777457371553445792538645916246815297894094881993172233131326818531219368165438937181480178855649606594280665850054769626750259491573420077089284727550805416271340029168007720507326342432638255313915740900357997272013829649606778104256539334 + 15681612840962835324813451417315371355569359040266012780745568752569484714225820557861983779253542558141130227520708549415961511959059453496374698352395305691937162489852419390920394654352139281706915558414155784726416448960245328587609684530404043381706064906752761572101100423551564365800654300719168912842363038230351077886992565207201040618103822269337003981738226839843213531407684177123662113611180271271366634726663303393503047634529241630056913973465924614463510113682406220435698074064150992845266657500218331696018157882991645373252300712923860222921439310424617919279809843515953330837646081303906141974305 - 17931295996534556417075751739571462127441908628722472674790178352326149615899894816886565906465381025312839358615767363099371276471421728461302829170222519570615270549397373956266402130816377711737166521673698883129697590359176911454432507437614170731788192762348458606702244673818130250166881311061902264832157296241190585699745029346813431057341857454666535822082123405963308277560455722981449670513683649942745872529448096577979593923308064307374081788607841232971298805187315445211037763039811064791032845339332538645835870283738164001846912535024354172432146808676537793660373673470084217457503632297260054538620 + 14141148638777838864543002768328411229322981118204269200555794772671790221056415995222552160450334662854476584098099493819715254102861445736095398544746213344556954494329348999711664811520594240161415004178823118177108821966250583307498512519505518573414984340954368455671646863205975214678812765689468791389723362968618966098777645723479479081414451701886991733335762877663597980915756758067821119979126722639939563834656201236490594216499970905048024934339488895318545740478354113583752513285818907963736002044406120553625789103303788679033429828986547963147456822862062134076871576641128351862104922519858449501434 - 8056079303368019542489817383404862683839052169130038716836473208659200265511205570553160963373992871045815996340867959881699830132974539411894535555065311166034257952728979094547571885427949508477912395396096773085382817372572962945287628228337633821986776831289401965785145132746187413785100752086932560712551563629486446923562545349950995181532381429387193991436997808728060265903108529896191281017568071406266661372531728846360318280970830017834774426344393604500538046580537926773459779801736503540146515910325136754541762157210728119363833245258392185372469618825087488671540111355643560475668185988241612390884 + 2564351235128813984738327238202870540656047781434964315003969310621344615898431207922820355381783420312149535295700514442353382731788553601756105329432792655602266787256613765971272036929810707525366393361692594959939311608618550244367197173354139481247178346093384048185628592737613512650090660897119426695403149696019064372981207373761492132636759691608580331055845507615501729424380549053485405878663651633624636909727888604013321928611893931434391512417984754445304372809846474183423634333774653424061118199793599842805795633362571141747293385026241181028205161783333587944791924265349500205888376741074030211827 - 4681229109903475135613472514638749315051442015630005760113359085261673726902318938573047493136187330836372712983793241665511308581733167934054725664986246564697983028233906341701294648099327123787863676515957314880202189112001609647558663839743238581419010470328780856613910536750618587116848946448624266208817807281296819682091212945329592054670202503242909966639967565151138335803947671753200071859343872588523539053535190698414872640012911313571209081929264720624631125138509794433006210689470604017081845308711333656936797322885654493940892635478984831267584259698236021044418946204582456966352054813040452784959 + 19537493293878688207169160111386323370950306710032568211142986759784238910869038804403439615612013991206808977746946827858566023797992172184631624263317631801267306617861100647704184664705655078466662525577571049632523783153764702732814587117620206877321022366653914369422907168976072695798747361973582602458569020430276551345984244233232439136656162643948186369018620187816493703144576280659283516824648991071920457526545514217802098447640189543513134877097580302070344535687003174472085687729878457657459048640435195945937259033906749111644831716864079781699415010462164982407525029356590022277248484009440721088719 - 12771815210056883203708156044087148654972445190875943692929684989567232884035629447650186303541849981282184736849929982313323191323155515368884086700761318584649796215499081151862691761048953131211384492715169983580855871050008783415579362187558076567602796258680218728601586680017718940005294883565658470825031558967196083099204580078149477531223663595391021306943620942711507703902644588062360486994064472061304965131919871441897580778382227068991088781982815762372737790060437131261966732752620532641361446949858034265965497042946432946852351381360060923055726098116267763282695992634537645981436490132742197440898 + 8909610008036274722421055176777000080650540350173904165081063145830857048287926339859583096511465611629561078856290338199248902448393666191226981554292436607411792021321072285120397745773839701517685979524230751066940583879752833186322581276054285816710590176237230993904806632374436868493500453667013332756738427620455127358647570184708420339723800287994452643329010257006622479129509866453828846052417192813317875183709421319106550092226170298380268162676578308282595970686966214058501815269106993329683939211601623788670189279742004386017066510537377500502986039745492242698987753883879538677179463414957226881139 - 4966788640718061971852488991413635358159570328402611953517811214738380664874271862537757730763486665992752241513844273726960871247767878751732823951551712389110440809854273304364767075270252158093189016718316076716731949961746167968303729833335039950290890940916431159948026298608161452232041625143071730172882978053502514541505480033821566088095214423838479975990105494330640329865832018635074890068595527106661466120629980358171620284472438113428301831707259906378415466813211149005348195760570864119502867514888919317791189610838959351360289612989066387851793225502569874978385485674077307224297969768006296990570 + 16399046896166366733855677681180588328924184303081081909379882413746934035156234535974703283530180171162188904745952275832048011337230260074005401715885051559394361987712747386188490128175869554971192691202445870093016416248253114555647792718312147422332061006252139945790981840900299596581718503414457867332238988622822254420500679175765281911687914233534711169997343239484663802619743255528770919575168055266824344928995842370201005813829184274567414828022487669442693788271429752312654754770116698561104709892783907218117096990013464268783431182567536548011897084355610951108379438882689090155516211040799153073914 - 7755063772076446967658154977408865268062888735192524547171207618885213149143970030156657547909371702793014377351480240537066185755614253156519677317208438574448560306762549381029685352411224277707519693046629282529040971575638520566365682159212410977735635859210178630932982727600925541557366245885037129524113455441887543482676841225703940524383461318176141728354335582848696394856969472457336262002701547638341381308905005281177310631932369509961602492146120887256919401508303012912141886128217387783018467059829013206253361383329921501199137761256289447167989161247063653417490479444483622229827489697841419825826 + 27851951715848398855352475805414116002031484824413661797257957501422968161377953173164305839544872436036535398317945133944075789107299840827153908101957240030655409550461698343206380704760634085916522356661298952441966851492746093084232588815365180715630476760323449344197925568958621600358096725171291050302664372868276611876550321239116725084494599690197723442469394223972493678958125754986858722730791492243119886726196808407218656252398526707815387692102682313722402321882325337730516345370760588934792393416443088519930816663225974014199300997236152994345133178177372358538444642899637617224505857006079205600423 - 14088067356057578797529844653631046188928048791639213310585365763660228005915531107815146467437714224187421717948942145061737068154392423955728925526096833182379106546388159880846775393893526036328580527846472455288643490830862977730957835201534115018967641402109172646252376651532771724998807584602915458557913381455472237517469192146635325434735824437018294374892263934293192047408489953519215167939079716240989745169949746609581318802088696562690755152826504464230051822467906652794317587016836483104350503046394388492085308245609333862975874474899154269290966805638229739910670442428266336825218821550788642730082 + 25307331951506563370724562337846955022146393379638095900159656015918474498712095674421309680224174548505248194587752755587346706582709085578256761835521995332546990980473654027169708204597974164458950780474566024320328987961147050991241105998939611662151553496054264156836242042754789859139012828416398988895025968808367729242015794638372100980073852547072064948163065904579975914902165674178994029148066031552599110732788338384620721797762179621794243663921384557614923807636480905831342878593266662411555979999754776353984090962857195022233554916628347091361444984533479852765916379943003482813856004872941560319908 - 8171816324212595322791203238504359865019303853512837071002995394109692381041670635427036763277371808566797263890695431572840892521264973424305453780225492795010240548637369451087074507610371444416701406875546033055924372471576280943511874470984897444949411259719503133735764453747117160128841505740083364068847676432583372578101155352305992811203623930489558489280461460972688648719908881547676692075003063259134717865590186114139642419877648058528495245027017186908442916575738304932732656518673867351693775403394229430675755567920240238436289328653192797043031447656043908880396689673346368720444673623575113948314 + 18486510946420041038213065193348552833789932134400780192589980540515634258075327989362040339372220997298509186744340637305481060472627473258555977942624572021896685034882686675613542906405113816640148607423420511731099007901313034446122864687565429180367208921803473263801665389228589933536841618503474680705670196675412473099679894183855883753092161414630062244223582642573116139905225502404954658738816967795324234429828169766347646751134965395776171719020516882234586840775300098054866220591290069368486638409441269920820920791935354537927357392042728301936210117341205404795954713095816197693808204142597592577357 - 9554964053699684441084995051599779348337828709562857168895727146584422498835426347527014667262204348183997835313999840422399236524359944822159560772906028658151700186418850803754146289833435359934258049139098828962226600682353351590240208854679068047503225275728139962863596160893748397194113763347041241843457115532428455378922533883675113786800842358178133344125212496605258743807821961578013290260374569006373413316037336970424527192983612490820070883913775072290179196535827165675202407044298091212936171303108703508757890944760779118098369089305925447880496136966626754959635888867784130434080171433043991286371 + 20058299958974061689024548094271546751618771711951902096618079478286488977740657656250659350102191973518312339732518947396283743425769350047733005120085159964871156586911244954887420118683649428871489419852144854887617627592253993021161309193288963919848662531202822540012651232948840114704745638533386610638738652205237289739372720271344843476801091988450112664255441896079911646299809776503533196874853161552143905953240362075140794798300775962450665442678357438228122126684056284348993450181514009471876971863544337376484018318999483103770146119717503199532252271432880245114566068931383704273762925762746057037629 - 2605150071163576624247581713115269488273924646346372829520934226427944897911038927731043199619566246643224923040767277872954828963494476892180674499345417430152472289251101149105587290817918259113705149120933986746119317489347510923434460986987540625048107810812848756210995508970404087011851825940584202910627178099657597665098883631148350812937807486379860338886948059567284212739403410517380363468268576086874686061922679256459885049612384375434258202164201821079112619542954211519524889831214234902357503436474973691132732680650808431334824609958225629458414006191599232660677367686811732228468451656523788598778 + 4799036805705941575475514565010050563463873950105804472578936579697720890253547139950814311700283506793010251396535418969109942868299869761102708618999457714129028986997090431236733924038534579998269918427145966685982524055176808943982115027727075934028884927964888438863711412253286598736506835076252256538823968208818511050248207313475976846208762703614080327091069890210807999459543710650464277659905943322947558900553856647442194744856881713439389949211202299491682186140914424431938536818941991349623450402635482044735924677620651048473073877805979329708935930842176928561408289581682190925736343374045730141902 - 3998206809743418317871053275163811698493022135134722515801671861194061515270167327559272228283128678615349804110012815153960818039542853065508758844219040241211044567018875742374528496523459901953643708402865407927223636303290008109530464009741716400405410181462227964042917817541122046505420480927704336529160532481682313177958265217974691355198808968489436612326633837967136379037962328313759851341636359958150154142169052085440891269762959441995924833141224523573656203074421746221062839869344176150894333180053232744499003898122399346726205760693563075987396059020346703215620909741386115007690232608924303077834 + 28783182377097840814519034982753259389872936092591719748328344890290380611095278300528222664673738660228350673543975187744724466933852393875078812498519064868058844958729265377806222477999939043288574745998509361748010877580329871098523347647660177430581913071432152879336909117901260459726234074051625973845714326272254907016125224415152244757863280873734820393302288439809171071467951627458481066771080230356726856432019512815149874648752120524556428588380954338505190139207105670100823804467372842542908345506039640022426025843560634484132430051141510743067567794478762756173081105627040234072035946962900908901534 - 4338574543207528240692809194189780376705636166039101340000315845974691523683235318060969039266832530551757410663794129634937886133172864375357758888807716764753559859177783067666326270879667551798002935915968666015119399302283039525275519340445785413581192800112455086119392548371437037501707313707557292623585735025428555039929786313220627598311166301578544302033475646891998887056688742166881916624360017355561743288280737671571035471732448588352917898835574542843057849412149352718378566350485842909946521668123827497726483306984932960835923450437092986649554188271532679234711732603800991169384434367430389295280 + 8033193870345549255717318104261186176304005570506837272072134554360163864771041408653987586290314516921962226030002739315514173534388350877868201012288015604767422498851509409202020089064755407810195263448415058764652621916922198422005628866951229257956030967177368223185566669508490323499762725294708182735574548133633550997733790873451904535574033236777037387362152722449268500043461591629265003091631034575837973128576495821572816344375209976826834101431899184334902458599256043732908122524199100629579230236878264380232796600738425909089612233770471484846820146350627406643305218438392206768911865852076473008611 - 9228050701188742324828780513213165067353230987400413508222298210976526312442408337799083557865508221362369441088931378429429855917427934031598998645234542300751397812468298897513484579433074534349541905787229298570357830266798438383056481392278076976806495713924761574504728157980942027314000663433482158084421239786200447449471738901381538755202309377734425386343059053336659935096497325394489073019767922738502901536421989957817317144355526435626840309471363073497935517338299077095959577860116596400640979230619608616835334783047476930661687272579725789192977675056742054641686892893601236977829566819584832013048 + 20176668760692847295425756934056626582963980133255433345055190116324002241161110161559694539590929130543848328214484109456573235342170402776794728657501589246033278782052556462619609454480531740849749762638528038792982509058854890213672035673804573520242414667597505275135536791111535955541670751709556946072058057275448969291460282878235018679936410294969400413380136897233540894754190716967329225973774990403042101123703286079006326028711292153675668513775777414422981414839633504978393235564312271831726792298546807184079803588721711824624496399456595243769111817941162319714474807061999806718669787022271006903689 - 984082963613488247647377475239351651438516932360794701145267724288268954397857673263585216367847917662683568184426276664926967672627542499584048002515417044035876343783508924712360888618592484557353243917384436817301522208182331861962075535271418195817813296531212733162657692237584005777453821320391668659832884800395943306773217776168088712385388582052877545970544805856916094222931856720316609200879136707363680831817053962755847724067767011890986565966272199356477511145670509159297728272780174083503508039917443725167791793998329536896283643668562635623411743362116881532179495263751006729291920366203121544699 + 3353183376272911266601585934301084065084608772649947121726130219898840142408314871101357962802108613444821394229270435765965438873446887789504599231174133334792012964214420831293127305994273995679402609708678515282331555456000586848531673805652320088847114262727324320765380195690629585088667306174509211430572230343769456438075526583682031947544929807938350396694679291854931365506121144730969723522825624826427459206241709022407987696213211874165322174194436022850264317308686146020922174505518931316805385722072693546413525860516470248260208043033919227372643639258619314561064237877534210656074348391086977795639 - 12126678940784050034185737983679190540938822129719180966593144489950119492093326184543941469616489985047045691003485355175367360145539530687271559424511233424011509785368691152705393939368045947306281436007686822750533994864486137054888207010300896437275196475141949789595394116904410204347609329698271599365678225737192042006523859836947451232703988026466823063568606771458081265718659825795450140376758380638403997014574569653018843575913100130068328162050311537049875270099701096284427740976090728910789008289296901690735243124936543260718955917430102207482280055620712423935742513085872342267432049401899232917711 + 19985876742850017638618370188530387937321616020248825348530476519212634814242909019845087446129177007766698651264601716094141659575259203830561813919913801128059489200983901192578125436815810533399764589308069075640673288529195831240375706164368320138147688433946231030445303345975671669605335008143227123140379781802007289186786363692941282691983921844529809217619091513487026835356380450344957225114259336692099201975152402974728548143378350613577269388876975342458723348235526593839734747125778131434975303892692011619712110478902644242806133358780808039195904445641940055493737926548771756436884671846652945891879 - 11334676124521370420094505685245021290088054486249140563668163484634623290290671034754413325981830459355191113937593879222055761270064324610959243848755705421053660978030897539385959047010616021030287333919412282485141020266572299180218979542277304414275776134040936815846020959152893399601580684441584618389993725410672384136537503152619394977266510066671470946897687637682932855001326300421500553126868805344970809565907525165799359493513195810255920219652773563674591826854415775374719164620189103941242836414824563188260118340132048687037127345619531995611982802976574787843869099028239798930806020089068457164188 + 16506820254296057549208913230344804152940454540846278588167693184721933533351216064485813593142657386291328293395427178433569634109603162544368082600657602101777377600594203870751844256640727782094589303172820068200593742698602825434688857166174451546095770228949048865248211389806738735534226942889142876761315601620739109778938437358655548905918870203173033686602444524040243776277448833115581036373968709841302490541165030564272102757405123173150140509016737082356456971746522215190227314584861873726261533410063623393984625791919270920300933679719385200098912635625492290210102957283650207353974714943844363868818 - 7266344587718682302691118205953740859266766702456993402894042884238148771199849014407406894387693703892697615804537512306232527803151490388271054647628258766504652138228342988232339035987064662377072469703826888037468788544009679611343144697381227434898556440774734010308665550417067568462596251756952020105513857791837034905892322181692893596210602676064217371009628312300620200369435927775195006400276181940263658808574352071166199611715001755247652365452923089229500358992093761435649954763310524999240595555499327399223632975827890173544093822492931926257514611630748853265217762346848774677808756188614010949280 + 14629123476132101316372450761103473674365278397314695049179631530859632216553744342682186747916893033716338370670009072150720555867383471017412738159826034328549123527753925255803904014826632053838340910454225539798227805149678680014157966402974934635765354775631738972142755029115058151290643993312262686677869270464831150410987364407300111598529490828764713253437615065270996489082497464453818027135425865571684424346113879364963679061347844750506909617212230962258408129928157927454441405591379943000050863374841523793197753699317606633413662757738835732502414727836841151583076324599640512411371699035403425153248 - 9854557709098789719617360081240602593904633988670338695718055898946617614189407164688072285929496289901959995401889341134476489526599247902087049929391770252307262650482742413742915292748875995670820683087698611212034734592021366419698326685854563828448363851143989158475069130923376900400387890003574333459115588271251191285549238784743481710029944069000801667488982481213876727729243576109179905145656268785198483463347597164929098635066339037848933998573693198542548552993472048151985200228664189392408615179442325213186007824373620085253815512660832015874245363930317725246313017755912153489425338995041118428871 + 584618332522661103617009060793520648455846969892865196112884502066901354764279858737020822031163292158264078038232122024898744341071248887500541950838585852522024049803020944049120453455523293028910919245807161397219619174650348865506141662959249753285765074962966977653812401481572405480940093005444060032994930529530099388316295173298159308327970241155042085643526926028668607393518701689999931690127238718505054008532405647360053877730252476032109758149061550611229447087199901522570887906183257125038424766204924944591870729403236620414022012698159123561567500860752594842553320250458792856781962596466349082265 - 7748246157597365703420888961497619501504614382233807021102596103597925977508332320503653174620191257929971370082572797895454588031670512680858598786396166659452116726724260862593724608387815334859110390379376080629457316528935621472424360720791690954596906294514994185293037778673419810953723673884634335727357431389133840568934681603431647425635496442416136687871403147193739609564155083977091492524170669351945159531475991781124635614798629134535628941388052733426630443986710480969913545827423077654308121723642530270759547311023679952363960776754347293402978210493627779562275544245559441122832103974387130286980 + 22218042304939175223552152733596861772972394449174443804833900171738226249246593723146319902137212921852278395798301620445044405275360996790775731718185762863996446939872516078085577153088298883508866776293959034880658202439470447120791934186292604362227269881930118345932197307383890999091888245541783661935561743455341081851041183243195935303847474085129521997345864338015325955139264811405082885171066835706904939624871310275873062357706803926997597146068484126140615723272381147613172089343140187497267043710800547422430107011753979427366426677592235879687190883527549026624744723392885306372205073323903570462253 - 2444753839921814013055718681907290056312531253870567321759913103239929465451204934569046839024791068329989609488830550136802524941752739155300994266347510970002633969887369237592398209925411776668952350475008786345141382452135548495622224575751660734170804537099966999518962419383196238585325582515975596099838415653675686422989455780451519706679657263970493920302742394305104731981070512689214011617570985693224335957496097707155959770554635102692432573368791211999133705935107907421412398076560520747159507143199121926077490644594023119510654567964351957728682629937548414444030905738667851607685325766997520473931 + 9210178671967920726066932046988532261303395020813177106986841027487225366979654731135516265889197042648116306605508835590395741444952050345012698234218006290057643799932226400070707012684646530169368353850626360315442661951819756520888867127892374831248136345877367797556744667471909717343299207008925394310481733210437151238844404829172101683653779118871501931753256889115966279374057903396264735551537472200942496653035888508912399875532988505444315500565290923472977970395601750129045406928501420464937576131498079812816422903459854675927953380342596684124448830958247730865382701013814682108212313732688133048242 - 12596748239673728602652334515981427092685965040169244865152900461237944143194319511755653188257332713229180800656596896777743626058017653098875965146884351574026043588302398867364386198130560923915211506073839474938412052499099534628161834392533497737795957117983694481658133098123103244295456092545741473746096246990484439468414750990760967005261415845058437097519284488950773612675918960843073018882064380093677308405887148942386966777544837869338710098202810950779552586715765899880904780040232621413429603129348544122027658160626322125269327263987780719773989730979671747740138447916821304247285223230727074231012 + 29687199709875586231970467124477950196828120837429577982610347507645690212980118086554436014399003443912578442684015342511017131053087566175521076573506890779806899007921831001292050501595432457545885713342511719211420454814617916226876610023141129107165572338904850051736717659655973199438422536342574526826427338766950977232272745154068009278958422329546101132889399959176124258680607562631212839542745400539330431442103069645560275666498413895072047917023976875673669828818928792374109354780810586965056194494620480388714777950840489050489808238251177360571355193331251220827151920004663114062831723810298032438384 - 13561943700330481994687142381858410928626316642345982571211242666655569783621132767431705764940193021224080497937780531476496832411581479817006168423991456401761996974679766443150969650195360481279498197867690235082150873885402459188706796421674251910858412617573263158305020644727179739567922663584518839705158524420566901253311287009246752558526450626805199508804633084925850768484532124472509408800331999421873067543080952816168731385580286424737791544754711019152753412640582275098415278681472195969657411893724711394716129827880069864075651025452142129745437762701888751828139520685819601558730799702772916249096 + 1278389662234774260292413669987891835479491480238447927996058340678558527674313428560368058930174482364179062354286637788961984939807703492230922449305230070376768641823794873666852907811321355479945034300199509486910219440722595679138992784306676152653677238584782853303185172541877386552261407613024885959100531089746537277597223242430057473034316352745037864317592478667288962523623699760736049312800945238631697006533718726555302491754614786086827151150479885259832798996930468645674739996421206575471552961541262603760888735474232402359066094862514694228461500651794279328996168251357870480428538670172528162724 - 365897366119330404396689994037173998355523643987863544650407829168052845879673204372470161172959388729547327758146258245660581020918089734204626135964143811726791850755144408582109717286202726723510500132868930685696815659908401811199884595319478792259917337541935528899469707615519339293469063921926591748639497248308927046080295431413964477474039942175676790053744487252261310148886845609307301188106199980530570024016333659932771904294872640187193973309936296055827587615463335499737401705002972354450982372627307451716780266920232508209905043114840998362852504751102770300043744841856107447691258968899197202071 + 28645657832107325716562187774506289272007165556245189540090810029855788854054618180070473247183051452400821561563128015833063547856685930087940044270658089899329644420180301191892033688863548535914257257836160433145300644989389550469273153674737608301063024451748117392334230591424046113964956405446650521751051933770735648549906310515828736348258817050215902465815288257161872869984023964140742634822056673367040836942455851497196242258716895470536922675521484540420657623744809704219056872090030452964343376440872717838559143430929117774147065536364918636382908579134572360912927892352865334814650354683212865519036 - 10696536294742316497272763543660142882408458691170169070375977803799266872218641308133430680092397180024896117475793663409365698770639276936172708858122175362354574324527494847087493914559914293482227653170477314882834631585052369277790472422473064392651644561392850407873232277014555327828349382314688824237619336817735219654019436506374165227437621910873383362821644708123828142077106180652025993313235472448431406393372459345718396434841600043895414637662033546147859862861318193357565133821279509820083262913231761391325732471224858983922365347939931148241712788365121465515966160527840907822657009236410827128108 + 11431113774140187135718632854239811965174887444597516241971568729653111267066485526318592493729763987781207093656407135276477088056406107675433208800454956570884091324062963549583276868529450084408284395225748715393148676982101711376530091007106913212474045283533624865936861486061926361504157556900463192600764944977122110034564921504409310723119693916876914805885234185754320983603862001447311217715293760834407921785495844848759477406604834002140363512074409532149158019892579392554903320542548235611374574149468571140977596729882139136364528395109192041756046806569420244661486491615797232164804454726060234131545 - 13500664701646445079005241361728421958921147386920784164206159488086544998780344068226486939926681614546937519312591758670973046380847773026681031043282921309846296005839522987932374088190621035303518617577052379286091965147105142816606826807346531068412809638526522911968546439117190549942237429798387481270091435692655923718375788206789619323450303682125821100240200540800124084683113640102565550154817364381765357035617288134731080116556462307817516045779292568543541929857337294257015110764402454840048551811621726887673776942805929652992413231672749101110920154182072628612085162543552281707409531134913332071887 + 6170892672243888444960042302176642196478575431153448559861384252546161308376701048776488929250269986087191917701886305678133554536663316006011642387850202828575809762698825774512784943664182513656631329410830080225239964003189145637447437934539268625103474342387962717403750131274677972054563038363657261561123626015489419352274035182948066624308019372192122974252933788411480319204261284639256213024728640230000341086415569895680716290534944268499893841675980811603274573253131815678055884586754592077905309408204676753015750862067934105093101794845825050366231399474275702423472685405046958852614508981030580523399 - 6290865994071842024075676191926093999095693211172964669360867577330058162551697513323863544641531725177765888571502871200024563858451863583204887305248861651412721241658210269626470382610997267743064700769624443815485643390910896365942862671836553258279000097150111290255877709670108376297432700955723238388649879586058482949344708446281876362452138277741122355392356184438367750830469445888567106945496337619857509802634532129220502959708629309354753240930499186317456892596956585392774789001843227225764504018153522033893986341651422036668173083130853896805611557062964408091127602320762500412680086064519737331581 + 16775931272527833661697930583964377787565008069284022031374174433892923213537470592367031466952989653728581380806675371687002362635657966325998981503064519327930843566891056154349285328972838331061861172032563133304233065673313143210679983245395748510131774588571472126619624704116933592931141266448581005417586052237786785931462057081871073184351334920856111236248914792609992795040364368202821426190645076198003208746612097787104549331570936206047431883222054488014584389726539643335877194441070134254476199961315875392279839585727671850939589943603923341095238727261945005220230785524658968789363047463565580862768 - 3187276915155234540700985766798859538760989123600101595342584824446877116337299353557022990588356348901659506251259222740289688789278850240844330836130992262930162598989745233936768540786179006208002947098903090913251814701948294675950374327218063046528847885690799901423287995675535885651454230245168172952027939165046378111303934390369152966190956564687162061410812905316562806125342462964693649171901837947543350737102884128703336981100973390367614947604436716534868346475758802591520384629163511650671777562795584530478746187847951262183799957203126783209792029496109183898344796887089398706596674035623552577692 + 12545445564705018492917550822924486368763768662133113355527063186212632661821248750065380650091970344059425809065262277615717331064895842482753817613162807236643760170263301511204219732205911140865654026682824643124813456713129103999998827889041933034610519691511015754355750293209747302709559536801074085878222511911594412922625029680094526606208706812895049839444991776915895315989433286972982426860675271012356194032875910248082687674582630259761957889135087265169845704689628127957053544181072205443323003490645485714658824090367485259422240571397727467365613788667494487439544055674760166294052656266289718361127 - 13852240001123314175072880592745731855473490776520549160945566801115863543484704543945809144431668058498965176325794803243731670719840243972982180163900597619050176167841161123851564347057788633486188032754218674237085670372771755574920386582677698975142210822512155877747045356214791595042480723598482100718384882567629608032107911325026382603366673697155455445286221367440303915841674877101521314911014549081011182156474282968913037938386769044512173705098832346884928595796228185027094484743565085256356217047340947754007309883121892536390559173876951842779822605875961783359434667282135519480356728832089690021274 + 26325043935008941253304787091397193178429301129136916504359897972505394453948563699374100278679506277537813267573502108296623278657359873847929952053324612535454167949303162172791494360322054862371998791460816582322981018281803156669751213913849509271460698275096197881342001971715094717568098358715765445669673261352254931551965705769822450365046491724724627486389631877470859036628966131662814736111382123402873677692368649564000444939559585486270592602902083427175108476376028916488000174116234186512202397962372502231759209947627384016781770790195907107142463333252604339352932887040366153977193265732630273927387 - 13669229413674211703102513867394899115960167894842283860876681658524332810758536270880336007489784127992481017683153650169801371189206566729878864516044214981369378308761506350233326495361557568375798477124000638901098171285456484488091489277066581620103692500754585275990040088922417804643734907366596622857370075413674648171044591935823837682803313221875501625681417018228952657354737192709490364331298693103383650303213404044538322376720227587742726091413548875309942738804317920112034486240219587511987164401048478930953798010088319182428794195370826619272077481610340992131414658053581962356594821215912048994118 + 10165488714898100827295486791386647362599907124359496186303831418427429955304384699471974102150917499320334322534348541934636331124968417751264179490485649877491199734374007846156400297918694555930425584758121823217533275257498173633102745470683277655986520990153256889648781323431678131260096012446647119137937556917468168153072866076260620626166921967830322553130406873088091730341733241424484924705860573983803389502130623515751213728425921927212853048120831997896299351609076101890293374501684520603690604575211148911049318457897107422417047621792430545191940412145411653394015145858735695168601835486643723235599 - 16439755075318811851008228255700385149763945445297496410032798515745266652060247555102533651722982752365647635905674852172628779188615131750958736552362071830459894551502756904518376565471368291259942460395899847176005670878360663223286123966009459375001813309758718784304330740180174574211172269302286636416594268296499766779178093276248409197317536018634485410037319047126161688990985250801094883468668390226763345112601597371435405715733385840770005198447112619229619835917738649019201611009400596647530151564058296261010920808383979798723754592839337907910967120377848180923938069719499046263125530058751012504894 + 4072183037844579586017218463314322096459993302219726723234518298095985656037600020844451767828915484836965482363930992273922380239706153103061616807273703868670593412462032564561877741438645413714252325543424397478607403336472053853440352152000285364086778469199404191866201279762801424124841440736131960228345279152188619159500239691015183188846769908175434214450062864390511429684506204182789324138972201369451993138064354465356270378612243016554536637901290207036983267100323103288765338084855216464258637306419245980756820777121063175918162633598225354405993514589273798787226777220698978369110046691787581993512 - 10314470395148496435601992631070940114625727395707190039228670529519934656951550941355456488866350302876643464017701534647426228556055063778121514709997100486498627579783241487007644906069326238292906074504592768091121839646785970620985393419919423369432761836695802038174515411195498321794669464811407646823540647805063798729469170877953489088304063118082308257023991025056013088354277900964819956263111521360692182876088771733549084747740746487007655284881636125291457082531794715775559578518653911931608895565207239792664541209954111850370026375319924252249104714745799826808445608455372344833676296492881567341307 + 13007407300740692139205478453426650186942068402217956808400810291448749046028471659812573682360315040551203494878712120408980105604665978861444556309790489234672875718366117123075300996394561801164279064537856627653445949008717700696609164768040516773748027191002286484225884922925104686422333992571851396850359882282006686051394717550275292267388162485842709205739309801463285826106495947659648889434411049597699763139845131447028188513157479097073952551238669817081723405676897987990519408022073696964970920181236818354373309078624897172197170817645869111591955412075605907651778023098339580300462072388265554229662 - 14802702078798883681970538333292353413295986883686766848452119583317537513519143344416976738067504428357373514014417288150667502731494197482904489851749803624954551554604146656883073823259531122652172578456458634633184703766283245761686752950850292071563901654324612562062734857830826003149063210518654780380992441823859534869578086562207822146838707711908779374780828762348778692407166474544013209756089230819889079913449250638277476404555575606538604019677458531437487035067652404379847918096066451216730258361782337707738016021101286600457574682301637794802049220399482041073883174710776171856496734610822930245523 + 5580352742913390574718676800487742629931116439711628990696295094386058217565974064754753069725067773532337756578141034499273039767122165334863704382561752885090389880920662393522200929920236244207298270354835060884503341509124911748239973111742234969407130726488931347645853702119369440936796168307304087566780484487437664184860949017168471183479219386059308062415974348513433013902124728345021725863703548691842717386504601164076343430364795125367124542378536553453330619018551661851427720748417796410430867991049794209113975370032472865111666477818664132973744182941087950438367278622684476802301193121870902545293 - 10403290444802377701510632372042002492483188737642534285270090756481520226224033933446501377736856143062162507539578490455822398789868012221697750899333884626679973457042106906924520765765830767289137769711313224622778867069990844245926624990354121025896927356492293333090295163878716855486331308909597137697203295591181776728778040187179702039441694651230522486068358834944623361514618555974495768936880807605620460886491660098523042571139047673904432082485423321040311505630943130714594466001370037883807768230648808309173066946179021006844018895765101748779689890116828557179603127496713507857542475535443184814015 + 17449680159964029070662597730361063571962592083138495850144599689413751127723653909181815698996512614009803106181003128263648911866595842771759450851096722246380639686483053167656770631895090342056082394260625250594237925457992753005934161128990721170472856677137261072066893721885399719510595688424001256668204302221218077524373070540804729806132603553564483265821037459725917466288082663275741493465606302189827808720256622410898641312920424480388450021711701480194923072842299265152758903733175162916247284855050926426441525832468711119333596242707876541748010974103650619353994306284450451476581213260080697478047 - 10417761371739873992440787111425933304907691739114958119902469185842717246528776665802874628313751901739862274273674492035944413209499749304953134277086905663135005289226269611138848770237198868300250541667624106243296886848120090178341286961793639733418709605656724256556063005086897712426861421643870990981124530466728499522146701149821734332105809663908969883286151551224814932392306948335318583891089798858470621594251254794356855119767858845013617556410493476616048180728240238144341934564552328961611950592373053965195141099843802353688042560049233634807182370931776319937672644749976907814141992430777516295531 + 15814936235314432660615741881609757765959547459981699127602622516429950840482819800867027030432130178072072092634360858994496855513952300288785537426484276257176680719042884429447964904334635377355849244050562673606299145714127414848565507031066107388241131771229560823660571861911287569150007079753477838248405369846043084055067498695543826086413088499512524849813772239757576912347224402036034605212861813111019778010140243994333526478958041597023138857001330448894464751436302921420694534596071524875942903325962423554335763387972253415603482031687674822225590288282299827192129010275572440365805886671551848770208 - 11672567769400627322643158485192138179874853867865729150260039942782764711786481143307671872453540337499658102724708062260653300956123624941740559716236084731141324084206859464442940306522475393416117445238626684409499297034687672470008621830389852618708339035125282417435079466395677379737008375511799152695574782822883706276397852964981791965399799218424905394340117559879151802944212265592710029773449628011822425515959430363512408193474426805609961884220195070727493872571570991924237202479677478312053990523682654312537598545251351418018441493314017722044696417239712210318146932088681408378317857035395404514456 + 14708614309591033968576148447667097628764571793109969235317927060497694198947170897232178019209488898102389170871133524777175304911907245382553898610962829876916704840379579712071620450314523913731244834335984343167036473964955107637357823087021323263536910490083900512863665884213382535279581622798655190258442262462215274087542464032648583191213607258412327594826894392468183936983537449958356654826745503214042345222486992518763266317682585032602178414737519564097785204505254516767414002519154096714200029789158335209169796634614870203348117594169661746467151504390144802938015370601565589854392959014238244582566 - 17555969421397122392013356838295643449413011952841612415956855203958000568067546759233182905037563352996750930890120668916338073226457808373377883111040172288837163288198387191377653445044824289100975651519731565272501120109669328146600953707747892647074775819172151448938573103769279443532827277580651412637742931604146491149227182793941261456401238669517743597583217776945880149795803149273170206196219202005323972178642604124026244650719018913940725046103906134140782564174968878995213672177987252143437780992135692352082203728962654658348809159360229485095853987154614831236524507844069566291703437040185118773199 + 1597083919619626958925014176373661641491723800092859554071393639726364550480795976097599844681480697601429013184078792363726895233501945821119902522774942615955025836578781921399960805986274493955335499351666671831908007357142740493933488089955485929065032825004784137542232284766645572598818706710663752849504704479757043626241777390161406347218562308915155704847878211984639915387289827674065266398181568400589751562362277702857238571658202718624769143825012423733555552783946461888800503591760104526760155001007720226426089449706495834863745448591357951110269152040631598636435766519289611663241020181295072671743 - 12448345744223771107283503977393348096964481536353499874269258069198374847928128830237428176843482629399778036184289905414163352472017320327661611575968811031023703511882891595899446969884020526823697422405838737087546955764371917960658797616323475449043077286936534042974482337706991359887580941357310019059085823504870757945641339217953493028869256260029044063033242472027449450777186581159431494636574656921148742116910597732834066677675919210129620326132806376695625756247119902927899546956601941164391365228764433834625259897231260798753372938200364716917737892325070227588549296188897130829027391439822427785925 + 29797298708916414977232862019685173943514768039256511881440867275760253249854515491721359719544621191784414839535047554227155707984635733995589128371702095847640059909769192004551904470901533570093735581722143992567853279675865800512256623496583702258932912612909707614236050909408962496085709550032508414548371288761579808915233608602351235266543296269340064371367227697144975289305051688550096497306302240112096021076177829498659411654776779465284300548391861203734449839689592124580511618807274316930639289486734386261798900034759825064177227762466538603422480510977701574463434822356756655650548897835539548053618 - 9933874411362289474703733062231827227792838547589640645047388271734410539127153705340434392340708867677790507057099217891626403695988456669033556029034893188156683992745467494492832252699769071170349657861000895772008559961253246441499292901812257041519447696454614041497557321411158428758803959739379350642740717652756825650606762041950623302134258016764375740614762619504991998049253611325862902096470106867459193078215461320564189271883693381547574888464141063003240910528481452890267180660118165639467692368151700151398868644436884550162809518982185609159569322971949117802212586401837350386827861101095462237405 + 16950140678241511741257729105336854467649962668446095758803347004104803252226900497347315977718499970287640771649220885770140464767469565260413731713038218716121204384284033292449522934398480535081886882255841419089548333374802367092930924705971678412799063674040821644974862744456445218460055707429081182193300004133631892359449893741412003293377100815781219384765615399152381499034150639329412279996651743602552388586667305282630037972322886836665083678075962806203120071168858346913570202667226096410120426630523718756427410590030515428278577234010675707451330034456910753989284251124764861693472234119288460703089 - 11324004937125758468515062112370641782163024943066873377653849450922062015890764614398399595705312011317374607374632234012604659228150690238058282400590986787252991514726780275050717054799503014036735633697546967188709665748142166197099969920642511205036437658356074217439341145948607686516168457944597673040375160722325836312505576661593732954827190874239807308891918789763685688032586348206830097289077798201238145901519826632321191356760270886428701292109021581522427687149735813383206935123948405771639008894416742918357302087666703647872055914344764369807061843298927619613838402180156299476001552554566425072694 + 29288625746083008251476368477682373659587080606863871435368489644320226589323084296541496951656965392940443020679323971657006611559287890083211259143399889075572916061442654070368312134102027526539760522343357712923986068774048255108596981955216764692533587018378441424963119753059452932245473896547410831504134051991854598448055127179936575557595450975295516768782176327378637668467528772036041802056858902251200019569276615141976118233629990593711300833719681184009027099700267202620252957423889466741953291604163934879471126134795186846488491256065088412714986803741109110065044115090446286447471679497963172072668 - 7363916607678959159825057630204327468633490608384965055616726544082110140427729712423918722313607606563989772968248210235909072631211331468112247218181390562790168748955085812237380199708006208280634807563516401259807409146395469749367159654606463286063104389865470512420664186846092852200368507544545229913567542103798356505856450908122041469503290725791320655669375639863717006233195749403279519015274344112730634579048526512687064878273771732949532345334485616841017562942090584721510193217826186118683657791356795753896912267016698977481188071712648553744260112242623083738642326971529396031764368713760355175379 + 15239605635740411150638206422815445394582779940741416861122497204678255140406405421906236783349527926522562315677036978430581623083889685175853913706161506816114492191487587420493323746442247017803540568614698114835016295800767269088705454560077187439667152432648380577974192226994302145987282662586754556346024141188344526790384985762028969407809080898838399137982020891699745753527101452898841436994336727954685534926551856634810900868473272862286957539898940294677072803019555058436200678492093080299464387094027547806439833832841001511654873929647506840079250125283490175870364073524415147266303272576603373659606 - 4605898011445101131025658774339299428596964374751964194885619696270775214332498007262098433546995612048598944999381562341806418627527111365389350555276963667961151807315792660489048487437853452800955258462725017537834201753797996529877446226413340308647522585533557801081905529620204757241326358785036961535273476394463139251849777847262199205034695873615469423282125442036497934044380780139085718289568485221440445189520252407471525719395746188221745796745697113987510253052140282870879137776869537733496916284224850669902716882018910826065869862988350871431002633269826855934777749491584964040739029976864530885151 + 28115290785764439308380646148969306065405013749889994812812527071416781041824424025608360312925060887237255472971417689835311343387794464899339748783474913240304530677641011528565456546117708544811085982888161311811856345597922611341196968660200249018914516830949566268408535791770836652769021079457367512121049997624071846571169797616275139918814489290386824012803933107111348908274976279929713682262511112783063009148982938768052112335742211465320408180626920138026233159974324846686298399337500559084261130725066988263600838692333375474884379050915611306689527684032630839481253935875183686944524829927079068479867 - 4555305550888895508690326230240274804220163925068380854439122232976535373165197824899594092282083861216498115805354656811246356020095282610318328433003966464414621718731043373591607003962724603354601036306589979409896029869264588493024461518399131784332245617535287250535624026947789830212018195479940196713330299182863474884339870534589819257589712345061084580495566365685814896612289048121478038691579679838704992899905865041444202708924818314948959736217714792420365412388507294618997335829657138826924305928084939857485695084608510219233061026600755365574051182592964188064191558344677474841061110011076040276211 + 6656963808112079000254462569085534948364189704996062338672057338937042057301496221498915051427847875620407603536363176680024048463636520159702463326133270401762645066151734002097469500435752516299681743081905738761375324967752724903156943917053911887422393136301793253402473538311805988313720448716100801487625146963799259308954050749424088614439140554114957193472551567061249483120353564743459811861792572101628847780626616342435662440421730736702846916191888787837248805445991212993350790793204572501290061012817428915347267698214283756619043182312173538298337309091350295431579219779028412283734644395884202321214 - 182846871563939960619018348791851310244850522163742927564607988352674746010987306639960683286796929638068154536218772177368195372425222866312466280741569379728869395432441097742730919211408357910545884468732276220046660009023722364965109010492373158374504831812132419669767059048802719749288788279894835704671158846886176908555052019524102338483799293848079024783616361761932469238135599403080184176807389237844887948449254612655243547701670372023526326543733781522452788555358668872570069932066190683836521401447375974722791192321003608379312035710007795162491416801439011157355945689142486819145315671275968904926 + 10749648026281162704600448113835565272399633022938741858570959790798014672891986620127525544160342732078167826215359585191675917287190312736268168506431162817373162374334821158047626531366040362930264096716499960727789698141635261959469214786480241098950498655517481908852162331258104286172787271284583644261520523848096957165956617135133837558336512121680725122750847385216715377855049115410319225138264051568725455349504816783659249506890622471145033081664909363227817347029438118772263690110372212346188092049539725006584991790377857012973980905311797487208929894231676229225408324159916434238915436079433219103972 - 10909428437143809748948035812236865790517059348303853636577488019472098631268823345010280139223652141166033869650793854763657337003051671547113304997916629657754088712814821156532715599470937095517997620669565977364409702670690632762893845645012726584844467091639877502210790339089557821842300263533251720487932247947551713525233746101812942201583354449258615477068848579575259462511848995916010837242895382351409762117151026725177728368920549643661457377936344976958486571521415754080112570246871937621185146356560763013777155187701507142056394308588593766929982337555813708959104744671032469076384913112223029123007 + 21478666439664805440634056424017810393459774026378889733981295413610832761804142061282957605342280740381037787147973138909069150508932228159782221225648851410955736424368424956070905739583024883088838523074912407356575855740005917704299994761927719893886168141131082006389102379726291201811496032653920122069009428032814906730671127249696383105531453955153358118002021172091204301379886523015686131160298746241992906716027143179425079272085088042500089113581325998184703963515817080482414972407201849430334351341044366246847045741352193265957127835431659550778779143572653556931611219802273424865750440939128239991875 - 17916931055775002064242985590128932881540768544754423703175297674846547144444107693835224966884793556778291870341712035817060356449491916691268307996356964130444630217606955169993229982058098580897833113621280589390238472902104860246823988808545767723182384083764955056901605328450639279450356162353604057250426022246347051092631057156690132777495369090876080998384797253174816300783238916453719000885756081817225487103046229006508232489193287693218019765222460317771712945465005634569633888930096241648922544977021624470120140760583390512720566929398975256512953825998910409929861233926208365373303148416415904587594 + 12850714443481436513315009304039741613047897885121051818550492550282876599339227034637261201546701704129789031912908289370690662143370681405363941107051662434486772339481812511494059943322774774138262580234573422567580453018313443479024490198784522718371868136066395881115906426526899159853765808253672506433247880592142114571736288630342683603436689028165107758387723838087025057381433610344363192349609891972934019093933590110819391822221664116098012643923512413752569012466947860930710381556832494201041056288065354966311717812616723492474790261181633738784124845102727365512475901677429331009722442303247546226198 - 7441329387599452376950325306482255538514689324310982922693354107071023940214493623245472635166619433885521201390681822388296226342700668913686053981578128909382787629626691404918504647266945843797686855587654674571155411518718836124729766313904444571335011356391248677478131192210536671917459129563167854815378144795248046121523787546725316919280817901004880651735100310529487532798504055169214373823130926013250618775841985730575239437737555837331544840713013559440132853492984197167899917631778598458774094836265061394820414418737053730313650591032853472894754690039732867020830765682407067231566312926340807254733 + 1155205340916310868516905783749020378078892087582431320063443391729914391877472067211114627328257804283849920114710576647463439051521793668456424299825647795799462367562937160878329740802037379574222427112525580613018297728496074750019643723562038549650952699042816287743360834028535184502028236770420566677435423199584922090717815647715312216227726861578687519493843046925889820152312325710321344721142900048209703976092486708750480832274686100353247091476521201921444215020734635913437697726226469346621450525885588420433551756615741157142827449973378097197240316685986378597367076960985164204958616556166199730676 - 6525303125631610745534577632342509558030978126232673844030821919105937754331879954808119452871068626934360367047158114908970535819151196835139015508109469986407953012993182860344928810827462330928926168150788050443609876051918964287214638158915488266654580049568643346944900257740268110173397553434072194613316396964615112984127419942575130292835514886894162669970490103480953600614167977936565289793090934738394045612031351431393725995995067184705170028739493092020982003654384669485597612138746283948080490563876279811068449462339279787948330128824782994120646151913615360406424162736936054212602206928284379544434 + 20385048622204877850499100354730897097826345303199929931330644797723801796629155616389395733308905696150019414184238785331474984514834754555384328662206776475598697546865345790569512937688430777687681000469717462446177432076967759090904272890262256417286474698743939982358179002651232178874145081439374421875044778257605084809227004054501659088029991537924183292646106624403549681812548794620575386340626760810045067962105747718864027217177710603233582949090445458571685321353387876884993677192902099459561434745566693057671442924490437541541113546157976383919466945333078022265076577638146577885207748717430228144423 - 974133125266203862496600355113086976777524074724765120974760939401330109117136447756540202849201117195717825089007236453389322901790579083885174996104561635334462641669685099997494521234609520007962733240012992000065831317016951679855965660011834381875540288967736281227869794282128544213995801252066169650322108749521610363000899538491109921479187856562386900873236698260114038434243569418127446897608702843835073940412783864483182202810124594527219349606607640408531712505127485403538895828058514467970964056443186881798871976989716541336838296574955149132692403602198472935527971810553268694799404503601662777226 + 29872327784880328785982250812003301299988181971025371987392065446449206754207914023781588952968283312450507938127120728769867084932470223685588318952586483388781101173318630986652760760290153343364710359610125314837578013817846528965855058715662383847861125406882912681056668684211534270759587903694621024387233293838624599365956050042647155883064964545444514466368903866053443677392932120236102840571203868614692655325502407907190684807919618472821729247155712643681079118373310735801034163400723240735005503207093528507561609671091122511557198174154645141284137861143533976473797178658497709138772989053880492593497 - 10070164382099328731971327074173257229885331657294941691783758820727312177038579741586653172027327505942975614301144313417138698335069157585758853357054729318244601414095756540685428026223615998340332175912523364620406949584102117391327762804653722135873873328620020483320107964233532574642139619453908737194633486819491447910538066205432719149677492160171302949580192253994021180445768726753212250597464655890548857356790338296427273714233666517139455025953047498254987400148006705319376295260142843850663838125480346200103977600680927522262568073502827189148140461514226337985692984180674668637010754291270030355527 + 21100793109282348897573406126222799523687215360331191312457097769017897421793850634654406785159739841397689409908730933918961976973882283247649366759409121946217950132148602957471450897291655793956863759038274945056339159390695215956982740396459119245751347232416562134241989121791948359624362280824253871121033827261501344141958213755932676237150885107765538169175725721132745025449300004519708568091252086504051475505606473626478568642570944935564523373610667676806813059005802519369054362586733929031865613132706825250960620655190601771508998560584084493852446108101745048373307646492147723638382279038404287579467 - 6445990389292589098617756476337458238094139049302362171331043669417061340001742657500026563202620650913147291617898232519240377493467424947372417778110005867062850552765489079989836602600302451044712752170548370138358448643493169776172815840223307277603558580043674792977954943129858269966063283884226281956775870974954997326944017869942653275076078178472453922101323284406377104299485690728535650660238169521650916605141773321152907350336612613430059276201613342669615220288248157598202005849098738295812283378342498382460715088574571620730724843155445536703410787032768431193708123341982966572561894457409306546141 + 609410067495733348979107891408878468636586103523141066293350451669807084479431018345821887039778774476623191117601537953617612967585243867693110613002306510555224540506128191357378459566430594769015890005165941133174852544387371032814722001698754522649943042228600550795046576595452967283603344377313943161228615766223422387419384425341524473675225260054652627666986212296129960877369637247826748590870805429040917482437587252329030724178532558745468443437077187313050529282813836533898014010621294424046729324415398902557050442672883998370840020639002928618662580150593397589413415311905215647101563518540004172678 - 547872599821979632015265807381055547675057168614486641455068090560950987291909893878361678501238662924954136035126031160678907654504106565722127574630554446054565789592610153035400060566669664576129680666744283367629401219556696004166383443931267574374371693034612448539577856853559866107676034395312567047048385038478031026510808277674575578831396804807445827388719895686689536969617966156320761150062387538195054132417023983921654487226552732013956328978617073097484099542245397499455623868385509587643859117052217896162594360987584540354688120456024135950179084147074452175957460671672145275380847176478585353216 + 9002079258494262017968417215795921053827087946535949868314010499154977176438744694738626117446521355859777504712437845245309238118441191863253390568978859556933980392552230191451669288591978259152127195703640002884870420217694638172457669921673642953646343084802548273394712856629325029168515792570350503085837955473415384084523549580304964854823718580964203477901669503023445244184964465366634197375576534499687836636041774854469850266106613656093261988097684588113820452337028228442113504181266063855737248674314623452144998879626468598490727960115947544289593794545753074331730084589388759841018858838433240405777 - 3030528031848384900530853716606621628196145984128442237469707356455374779616258931392193921703206910810024259199834550519804480656127899402255327114733782691716419219607602036602609720412354923630924559552454755403228872712360335081412019510479106057442978546498571940749814907351539021830938886141800326188849687315336546706818523002569793939431534083365173402846846307677202981176851528454804147882457059797862155399015555111383571034416599745485592266552121516779119462322321993782910332119290360392581897402626563854842271709363943768122007339460717397668534892681036277530374921245951547511669021304142630019873 + 16007101143845130254594705907024471446010740330974951239832272472390474338497982089704343216512107067547565122711040438118204995804170445005942758439589200451854496978566641813108319801795181568532066333598620603447792486820900591390195650712988017880381431083495551347809663555838009158685313143625706758391231337553006189247674614026689572971125934136612870349952858934006813637660012308610229027689651381702401407222455016922581826762576991175296210543909222488672407557283971126586348994679995963727625279381648978900365051442343075381455589885280046969635474415892353551962686010850361965890645840681796855793089 - 4618576266657718119129615078433076223589282069145231478329326702325709460626844303372102957570382576778091888790013155875711562495910182418714439118742186183656478657540503660203236517302273368948400047504409554690653476296077717955164130532027323869498276618867356417973606702460750145503017535251179620846920972013359245082852527781882021271606568949402644848857547710623542597807248212137855164292799032858751139106231971077914175919506408114507479371995345183726185933143609232406943956297953273121947751314549699521316039403555132929417272309928982207615747703127859810334326451668501579238035687368951272708758 + 373519030286559589819121736206534427090979333196892068052486373549184646674328639367065437339754537490051826947951355621134274623316581577894963122670652208161383658253332696047945631701685075645262707548705157898985036461949750183371631785307899781481417376511707864259228812892239708862703119218171898453556071247623951457417933585974108617973433092696343101896625856324513480516505049473075552051121346567038950470778607502667325038406026802357471320890177361668462838575160267773178824121971622042497025663703792491079575399850091771206194921968190696814262544619526446689792603839310655662863752846392250524459 - 12793787319023982315187720731540068097929993204217349402091530330593466057540455975803310482049692938413869865205727103383234190593856106182391361697032029531528054172720330088528814640397603324312669364209963923404182378928358373040160964900935469633197872441153244730143079670087165673949251829863880551362081486006009551424590794027014630610349098641220765141596180333035356775525380962909233941047387945441364265779900576594172064712926611636051983904999282112147573301192403905850728765756366406264752511933104933772123879334334650354065208916047537111737305904805367351570555021398888260792381243391583443436488 + 23179368329287350562809600582266032587646672784307296817862079728798133485087327114482475893029817054978931798445093407999005213718902003451795966094802814611567012557479559518504155652837147059156878438162052433226148950711346099155848421978637236364670491806483061824481308978971109454897073560787639734691246456580468097691447311105427166890357342677657634676498221742186645076173423331063246206868831406449835445441465551619664346363575901110100196898408063186554706512160549462068385169450762449865123767917144222889682408601167739864836024953752270535789307266387828095311803109118067937525246205402222142258531 - 2169568413371272471579087284484460890276531112540552513268535822168228749117241179634831531725480286281368474437723841195965441687490685403439272813880778000572037271073777500103454897270321459780198206980460141942416380308853484546515782442670137773006395320808992454819636928526052574277461110630801270229370857841139666533256296337925732902057508101393227760893704170455464153948420367444690212700635896445998552335883276222117914124968003189147385320234222292951182304762205549373689914477195055402205473163448093772536825641169716829478036831052645934748578430524560260036374468727607502122956121156706458153637 + 9387333948920098528822037102551542056067166819987325322891854416782410522758880844495583039495855581049422755034941831291387102857847804624832703398496498292649876480645763853467431641858716018787938600374330305736644697942177108382217458388796844532141513227465051915731320920132976278998510336659028696272436937009828277048031687649102476670345685350997095000838836579121705668492416703454702325404087863156380346743972307267258117067303198106106078396691842265719558213387196843263485912523898289653816556031815750863159931626307717941447984887228518880916394991426411716737710096290133163127679952589792326093521 - 11492105279873832609637549933982756897758688697449533877604741734352265236012290635230230274800924737650889916149462361576013763840787871077057081723008628519190424295011746111358232942617580533541100764480079825213690225707329666295875384493834736248896619307255656925472081844289942523306339639581260005532685170347320592050376824108580257755808405398354059661955401032696135406275488081699426218241854375797361668657461991012915642783590097373240352550824866884236753551506405804086945188281123972671654503396779535501347159347129860912351925044551195151279386010850617951241181446308151391258353754718580798333175 + 18151149909881817174541904327039877161524962791024367163362256086002040239138288310478689832920219467688736900061605480369796057911811163478340862498887758182201244455315714317423073435603659196745988698142520065296643564930684411880511821136336652129697422059666276218816458371891377832526164969332357670566468027910103480774363707981477206391453544256771918444006964269941451905291003957515924425922627138941268581877442046499942092095618585504379764866149720151256009950252675373633582570830091516255062933600146996983929414122995941576498843020293919414495134289168243287899453975116019022780590572402660343661646 - 759597979593730596301423744153006099871792309498754772627560668220784596609986873640685808966655484594609947160893261969929202948226283270354210995182664637837125445693061256810566137338820185117820265424068320769484964411417856399771833457064688112800005394401569047857380379822081348804488936938496997296605708521551336802087283903343694684941059512920937469803092245197803664077211970409667542106999257387413731813580350458572747344781925316756623809172498208021849113868889486712702297962436332720177069308638439814314802801656935062106151709370351151439594702761539597549742491368664006251640637607332707554843 + 7617559783027453687906283432666671560731108373189957382125625190915107920200359566240953958072516442565412298026838653356013620395390047104614319592052859594540751609799625270548530200010803882594594645735353835156494391631044071599063790790014191799976022780650457768900762223404625286503525767449988411370455084347921535179108652922951924976580045517321795584910063923103159090188158854250035728393524964177134929318011769851036544054136216183225887522938114715382984297720517957363622773550471517784770938511373445687196518037821646023717964681636325448256056985573210084663559428176077352167840450387866154962156 - 3067732634939043719038455355477466164732991323184058087913713577486186848209519199861653966603808519813333354395740624115294509773183984092312530936010109670768582334255281129518689414067427933080840018076543437385418143684311645274974460954869060217321680011447809896650763003727786079698596622101339323390540277095209606015451229159383387699390537497186900570572992044812604273319994674625837079601717991874750305208710416403789165798422454776762494289411251465485643662974499515260180116534351645574543660025662259047060328411492346371293049458415590223886257065442225461654804572594650588689835432238302355039340 + 13489311975903803740026710827735797239370758094105695389473431786197760868640252679440007158614147736349212313517676366191907143545256129973940978661865218568342373501809286619120355913379844090253246624013108586898798598681392262363195432294656318078231944314786769102203713111865159664966000025726881659800986880170682023182814034010888237605374544472464969575310596466379115751704077891037767782147504308091968425167244780456553173000615654169824027174024740377337126876876640201649990321858161461380255368606660171584283384394789776762661114578807956112382894337881883509211442256565497300104713364105229652765470 - 2253542731249751334112837601154575740033112715127843428152670062062512976455701278064430943479128895552535413804394452468817946840505270125990876247602331427457127042806116248517178229131147794250370053781401762319806769795356807918375280683873355000718026098575747675888901987778440600377892143869422244081952393317286870558226350206428882308389194294990764582701630933740866876968059546374609026498797817723535864644477296073067682114935861811045815449655046532756232576925412219194769404540234582488091856226724463638256152437494181798588953810190912306231426956151115312141581758050050819635392411470905751220143 + 14882706784474118844055804198338967499265319766004223880700348457544196601541356830962978361687526845888515005385815265046485417949456156423901942119061967413648856366039970330007253835055699622937568430363121901785479867973347844008801342165051842807826789437494090480171331821172609936044607861529557891153517794230264647317566528692994153035656595018924334852597781264782746407944187992810216754022260962501680610074687411080087286245872064715499723368463467179157833005211569990932864038689743326041070502528539598099425358248287395096689113493782218350022050482101992610363311845754727952245543791384820856790839 - 3132730310431707387634245384096760721187724867473733150733706501441996236332122749314702826045842896996486811145732332921847197024245198385717218114865496149430357792407927185102368261680920063865096518504209833848203529435277533037236951278840856895665980930277571332558990216288462213398076396968977412153948902540382810158071662183608001785440300315571335671028444413738279462787450669251727060940280215786208093178978577164948845597143194484562667144880306394171420660734111028020157043895219851587815802059721078027668082198393262786651722874168834309520867379379707588542620309932193701243025768135273655044978 + 22582471270236407459831284277769872604431376914636755939225396970826587849528874716248135695510909689896142939670193264218545502000972213159486938547495715165252367096105578274180775909555437934274142773574369942397906770940464773600855385101244279521751269443923273860052216559146443832364689020635822180638727975159784901760083985742314084882931615149919322460601457960386603312940054910213056561952398135026070074864301341403706575426768398363894828210670916775359246934565377575621445991501963898249144554736812833879245924761549994667194373940274833682698850618802726335032052566602505960629242792703165302638729 - 3973506463874682938926225983804191692943426062652893170357346097913792801853661491692024419504353233497458432404890643699247162166563084809422548358412842666632248351711950557269462461639505664015201627774344945907894463347862269028058310675303863637870854689260028480937861803046557016000560213332947598356806307054869448175296886051901157215435253183487387035281407896068178593931446558648480763456543085484146210543390730422975704093067749047239842262087445204769380160914498066809796218302041551217141172458005771706027906520524647387073381267701900588236100429999070014320969501682256317526441195201820812445757 + 25092123581580771493789291640418053694246188740742787818436759709871602093379595380252188603686597848232360247201429251801686243768954603970069221013461774013002962295642186344181975616557154851979625858239276658536304282141107848264112080242658430697242983961505361843998550735366117177485553321569806954630835136715465287654819709243318474177650229862886082198297165173864673223475289940191925222682627850226224027258423418935446013191064235291668373849999138097435683440641962981457779543852411642860024854807080088333222186867545617530427483398261914168670436331309583631490389893289418649118959388659424087339943 - 15820266400923631111309136104937495767049577263143810457365957059042681420579620601383535209443126905867455347816820493122635574106420947722927350539106657630900822462847797630562081810326504802946731733356155709953303918010699319213563681688690279655001915028191046007604283349476502140108014730008358927819755708838026779103994611310118424316884885833269368563885104596760291862481610127435253797319513962504215288726741836835913227685810437248874375361548481959527640369430900319134650815638158521087274986656909241985872585658300313655244157092836951488593893100000150036061679802482354540842299545149985535156971 + 6397771280526907937049664908858109397619692689854963318150075917365504308776141113600304983706070290980469738857718833072458196838519765546579193436759802922527904824125673547965846626069848073889658957652350350232305992916650665201458366908782600714968616453518455454367680700587248903396712461797082067781895262005648592001620392601804397090319216297458462429257503888013369503446672251348695657383419934884655734725762912737315084133332100552726415565470754347220907507670619220003296816250216944619612019154557075242029425148544866880933417435525347934229667733779944605749425464353292338267718708002006513290958 - 17648814174126559766596825308698341075661377236407809318410181973482806576157796418580304404527505656160290459542399768794207149146485721860343617633625661017987208334178960438138526803057471189132729012820719805672654566722600580911381784684983295221702319857542188019986047417387807783253684217935284104059028413103593534163837413489887816353660573472443200289605658966762123795261383233009343015669346482897975677359171407673495349696863700489093107714353990047164144121851127523302744980961461646199074042322875183218076117267069361438967201279241896108024344211245958337558667524802217744618903787117371292246581 + 11144964229515767269795770313404196670123626998567851616916012954154232894952703931235409097163541685888671087241399467595905107724296154751925980110478568496537849991088163105675252794753119717032124872813089860144811021839282018938673830652353308393759617382768049570882219952478521795466152971304531810521774435976810336656390583834413111431912002729066284328629264479912473611748223071156437527703060522060714210541787951213304708449166641767071638755145798415994874312163927727500027994184348403023305068701713295430553570704670172892539103061749051554087643328761806731572248749556907388724285584690331370628147 - 6963807704634931500501434321685781611977650185546900177987744674153375403648765291602885324333297903149982739721056149076991267729816064124004338333763972024661232946447814057438243232283076289498259289059732487987139772771398095656250613017834376530279529523064487370169468405891394338902268363845322408249063619251908752863617407138286524634901578387397378333080633498508715050815013245100076807919131104486698279569492283925824028412000282625412943371476875667023192971145978389161478692631847950287076812342963351045355747290439214858330108930870946892709358948315526901752699062550249791538279896104641699094575 + 24791874359117198402939162569161029428761937677830514640897475654455112051795855750591322979074565161905637566797551777980907386550225729679554490243625892506396216734202819764151418541769122567209984547115617067893820670461680587450089488691629613671826698931241683819775033418387552345698080083473427453475390627317371937103050043889480177742307345096096009086462489928876574968240545991785292768804675265488950567500406254408684142745145624342126053371051833257715908158097604157233156345644800530772841963345136513877476545548234600496898270187900417235599031941817281765792709443227972730454860063098546121003700 - 4131421028025234810891631847558581464700401555452270440493398280604484761740902662661914169521052022120476219854669357087182326286969581370954025385148546397061573882927815382584323238547464943704253710050169715004170721376336938585039626985561175662653956978685768854734977073572724778633073350349430010807986906641871129664492085616572039677140060891543094018189113239632189329274466532844569942096734684784302136975383253103149845164682032878994624040165806393276211686115769844386348446800601709440474124444993732833795886502214188624492051870732412864378382129961318995569996574832312131694214265947706140138082 + 19295781052937561938168524915727615784955034423794445744621350593833295588968093906121158508404251684302791595488652432097937579313291284643306417639537851427748756195475377658856395526299066064607461124383424078511062270632328072920204640385942524357207999547741175928528155462947215590311205429374392309465155432436460112585766346570716541757877838665692419305021759774112843969537967169691607316315266526897970246436173558543992891611322430124303546401043814227320440631973768374901944458749150998425184725121556387667921366810026047994291935533807824476965151998134789947278774019643351958618747556412927879258715 - 17798989597376780635866295687621396289421479299258243865329244218867352188023293508789577327688380455937083396903614986081799921911929969127360523029969794856452614090022585307201100001110561306391796490455515162217850855239055439267492693599336782974489976967571277061465184931215084258181327892106873967835799325446853199436953333067930742484742722649356799966783990917878362393983724528455867010705419918451822540330557229849731656057339004524124380751735073512032667161024218328963519759825750092032255204095731335349628367058624305446247535198939844000186283287518663960176001752980665538162011539166185102313947 + 27190772931398094420623166468166050595997751396051962931324042946969450228790356984205689967690224120050541979231860969329294163134793259859302867749271877606782161782464945990656785055416186503027909310145683433362929479727281455076186094912845100900868422628018616417197782295389830495399215799204727288101174921025871194666240037219161493498836023070189523963326569074669156649542455591148091751340859141112175892410630884594136490954885014173095192929133736229475431813893796398174489683242402316255646055680021854340136828268605435072865248926608849765714007682519334185897860314471228996976884585092125012900987 - 10826964189748683599764049720459638508140038825131565826733445654075227311278150934178781483136929944164726808212870330118221123959608819244583733395290337295753137754932454987882159772436836566366195369670015358937744242807676446354854555065480249847433729534597225880824791735931039415309392764303715906566673382646571402741157085748896225423470689769266303467287251204280536075666477297730510156047138650038726059495872611288301846264413111225330727856650640773677747886090334889167691005251999141458054441934351274833268308492743368179161340506967441530839530197583283282156887053688091391360795838216987586523512 + 21490973986898491241747307018061031612051112034067529457776290034192811202686268561212355143030660804189082177264699718950386161690017116922830278049940180706389821957874875516708435688078877206545234452344699653252701416873694684286396642912802365149302051198556258865826262986494389675147096958232089427828190741314769623387195824144946572468029504160348654935389695345598879311989268851925761536859802782756342055550245051027129443756589705368212704426136698538099294223915578144124427432863835315687649527253373636163204781093712776882838265074814021000355015375674056292458145389509081837476070862545126821364060 - 10861489381697210305218456910154861389024726294851285110225696318349461510571761085892123627259925808176380749986340869938357048928388825021051129142352441676543972467229419162416464948310928591624373452629404476165160812663561674374583532604196396815455681272778235791125747690254047136577398050863026342289365413525477916918979992268873330621119621663965183013304365197659636736643999754796434425642686904961662597758929924889028108340633822749940644300568455196775536386622884040537486956798092104368288454744854093455629891327249552571294334707837627998413169807124922462238649605826175748842086736194236955630529 + 13081407979290323295166486521410847703502877748140863220988267209285255014076072869067055964351375795467804565811349286891400964594721091064861134183268270994458075663062620153824322386625529238005359487016484986315866603327605601144456360336491700874665588745946099425729847710932885228555186223132171214210793686989103141289856560478899135693012921562854943861439061455659740605919254066297842903976137356558252960797522596987562539891189539737654129136881759363657761325881851944353830607030083501854251079777979122390542098286023051662724171597784929100058747904051386287752463237786529483961711242799835768751538 - 9142410381536794589249539341215055980661251762233377739612771727112060959958590674650808522052308942130262453037481836541904633600413473426522937472665818642638076368359258250613001350855561412016405369825421841928482577711555976276263045504600755976944237091057332768237842151214550726998419583828798328706105051054860338432850523560889795515026425801976188105532684469363127249800290775677508180762424742616572063780333719861428938854040760809686374614207274708818262876036694883922446830506988552348621334752061076924021213537148997246259528155773417379732225179523771042049375711814109908885632427895308040839071 + 15527929088016661360023099516267036497950996871069062074279722950085621337749778950989823182460631273444556941634158800349214804571279083952639868632028418712683883279800014190565519006922318628992029162621342393584157980178477479451603911817330026799807020999807464980965944568217805219851972375563115133427873129392506858908128761576339640332925797795222859170755021798178600949438810381267440008018027451984877855392255557519521745869834679535355716701658391939885741599054997885453242061710458936975837180803030730884476282236363793777770228432724413718470298176970907463609157470257052748341980307890618966882270 - 5022224512155345122405893785022352424223351914308501277831477206706178341993294608234759688825596682113931024336164578312362141890779205793851789509341655009268022995149801612954221321820423180036918081068901878607141777226722868202716381900738562615877907314332724481184385046992520307031128057180921493450371419662286468170119637462889652012138590924591760920087679877552494081420715736965706971437601350892567703419933128886713011864980625748795942307272321946999606085120622027692737769675938430465847283935030937404459923851462538994591224313293613420806150804622362894369417220117571194392016905077973199084037 + 23394822776363104195702233093098625335330416975588600213439040316885003939176877965490319906757866779259111224772614908220653239280307923103137689776369837519299804003127316682814168070843312069055924425460341324018657792282051012858312469833387507325825582748158676596353289217662447486106327225200693289528433152097097493673075602727456156309426359869494158137935945532118278648593887933974709335825227640823163014924310776205334126339525796291527792347778485484781650089043587775886541724841382464160655452563648827410212928934509794039511147962810386102579878934840913537517373681841873303263884517587778101307853 - 3594272532883290951865126424330084251864218490389083381707345410670892932222189736116781636564009970469925030032723388479474139745588171723055515496285491383616969834083694550158912759420983103378406947573945298251748380575639003344194316983583179002475110637224449757699646096057695740286428309813046184198412118615060390568409134473846175125434882687670948359374039072798865101260916822794108202459389246405246642206066954743310109326220393546478347089328206106124112159935909844584822197536063814365509338766364853954682937708801788353436615763469898218396844325564637927438891825705815132153659208908976208746711 + 2947249283044688587749185255020557605876976637604747983459173036316521157243131297511083955459251650421498411973847611770369922583228791787527489871062526645151738359206151301957618570905261825256869360556742443986664937190585385826049533197420222126998946980644194159092391421462898865568120467308006548035581211605591685574384059736023575723442880413365475014169451479463110938439107855461608337445500478595034850895776624421350064670807673092124384083614861124611012140257143342446215588899602943472691318429859136355923084508783749013620111981520216563350940598313272229724929583050203307677537832509149003322464 - 7123341952693402406966365763000247897670697595191943402799041131679493316380666836416897261477503110833173529030755534035047443465255906396087103783348969365797770317522524022731958100531153240999713889773230674252964089515019299010396425768075426077137319416245254602162707377193019585258550633668936396733624020205248998424835300851777360712560539896259359502569789930370189215592240162197186015303088186816089783117046563341166610124166921645790687157347582454564760405876115442084946321164449070930398106067071683065950674975197252097975468437091492704733699675826198470151122410258098383203958923115705452491800 + 16122649476872803918900076425160903223335806795701969693819997757688122015533638354927735869055347107291009168463931736396701053139053147879849332406386573268569658958397495628767334271425194851235219686042899062297448012720397366542855070690057738055017434810574788337569573658623552653718702422910630114083809633401414001140890703973606687437679190638064774786090624698189165087849433590037691134081615603534821014209651560313838907437083709988713154075659694188405647141507978351533481227784348406963788961041867558652888447798385688219509990749936489917943363181555440922832831852217088564612724784048251509084489 - 1789519956460763045812042732701143159447808396832101046042804776718252114469296799146509565503429213755218005265919402431373351441683247676391857140828353816380201114336519740736708961003209167398188501902702112832457274409210245509683513036020233743476607318916453535015200339238255775908336340109547920887467956215683241148448459989639045347424847249708567875109100872302538969797647256887795187969336138700692802598554541773337561331164201223539141506700083196689268218700928452188388445799232557578486505415602627193055795340137618748230330044982744088777825772375784025310104548330613031467341386602673790737422 + 9498192088780165175563346604766888420026088439338166231761810225819855227247997641278315707722080403297962330587405970982042457432426621301366358862008223196930332376046404817447873931115510243923598214334305110760765143897059174037294514342818001672828720293741628817895605267046034176929638827762534922003936225143413175190421282278920704968416449197047988874308848345170586875698050485382549533127299751084086209940140545050454114961199870948043944430109480957227070700565460144398051802438436599785813972693108058670845237494395809170301604786320233048051563103397577684360483621787031574989111403945807860043813 - 1290097472145823552626111200707095853606090977742295825703916958623388204878093679149774971475377811959584603146536126716391126892790935252832470715019061476270315521588583328306055167995803961119865914206420429226195959970472761922050990462264966573132930357637393470816659229613530883326632135936014470393090838196569410497863077224436079078507173062522753255703552541316466777072024678288905968302360371778506226506481291323077987646213667053773852935337079260388211666757182485499087030208386908575292364371117296724252665695884800321309402831380923024153222300778499658947458734255516542149781760179353088652692 + 18928972706402522640015173268362068576924607852522770522008006132478704176267425484885060480717624941910109102155992932276551428809308027014561558562148735244772549442583059911052390278075176525912911436720431691646197608814577248925767086441440136409288685396556139982459934329840006548117859147438015497727870761598338657025179454735622413077666631642804439701544147893019384334872489621041621485134584779604471495589307373976676715621684014726856379968979640001991252496166213776920740596003048026278884354210461898541474444029164801944414856740518436308547273000667151880931260431424260426137871227003755979486546 - 8183472894215864307944380684206972894814105450438459888834673851892778485341507356497417815669027688519159564426475143724896232710382034418538621225155599904716240390819780934214882039607985268126088886579645598296686664731143738221719533748098206877536861574913187800626568978668842825265721737072050265527828688248094172286437554254803414265669621739734086066993511553795397806817225417663780035720714282075275986179236312092706435241616438157909114684075243809393166166247856108766527312899172809013549041460767970716579242886963302081400607351410327181490410847256831475156913013194244416154280620943360833739546 + 7704822355402679977927656659642273949588982817097090091736307244816366300187145161339489061866069070574081817371619599767591138521360453277292313620344124356963712608079232190162696982440520433646741568482146492816853295152883459982243703394734536623109741094698983383190055146582357479270587454779533733169719707440199733038077624447730642509533338900415954605090024055710919668107012070647209204506986230490847974571533190418212459131476645971394457789726860185674345563646022764766934453993709193386436886434497691544794960428989657501554632515541186104256236872628679750007700514176122039689128171881592886271613 - 8056355194254910916918270630041833125266826698690341889748422591972267035827292441548485275243473047225653196688444483207264295666882869492124896126859000838854654109642050988708882100173871497874012049989644363499198967442531669794100006398008842208439728443403825253361217359289674154281768197710589404722185988427688943846696450874124724208251798329660993577733106794439617712744863246565970410247176090158394084781549014692701410547630023435987268404461711149611373925486466190726051098531642444119927768124782711092268316806114694394270198399516140546099012786671022633126528409464533917488998550936168224714831 + 4701943893481219632431458308495046710120469331434598938129780834502402174317829020813034967319926171037581256694047683445090355585406729985342635367986632894885193192832499111362302859874799269255772617179657025984048568347817158846327610334185770972293303314057062318473527402225457016018971429074344476834582358324564980337025716492637732863930042515790095530131243799941016067355359506895817690450500323064934351723475106355646369364405209759609946407458790061925064238961405118695708937806585616399030631197196995049494312643210323319867287084780700092550645309840222063102096013437225752629287770808632746265908 - 4345803290902130863650059207670722930728156197247252802458039168601995006224326780326874777810127638474841265985414901750519422362352834062888890877744019886759914230401894035363083394732087677907879289187611449757202353189191753208364407207807745671623259823037222997371726023113965608471459987307783826140629200464267370888193422990764785164214756384721034891818823802123687869665113869347367412303331265186851845046101370106182400856491276088924764014420416829120985473261242117940448048048045427446455584043574792428020970552626309062842848571561060063475259267473624198554702860865772918339201655752394852500584 + 24235183461565173249390977784165579966829047000961893529005863812129627937177911697508287414430184146948089743246684579199698305409785612951571472278431567949939379689024829297333638951731295873913924017947101168787040971134478866481812822915574492078157098037342545361791160680979484617913572057343863076695848216022468327729707736338897206727727241764021423734650517448359440785541293654704452641435312847230298609880407302203727299847138692746796262860690358850524525457762587497986784413402680388907904506885421920243592583738816745214380769541498221232201102333890042274341125248332875309539868263272912548852854 - 8270074300845989861149443916920890257579377657394840287301914415934525340162406695437305652100897884833087597665582711572989796859424340428553865636017668862837306216793156675106458876658031306606788688932173883942153855077294250886448318271150051657655274677825476664316949372925886461028108927810014089791133025708787134675638541411993788993256066723248432343917260037743140289004301396113164250992737142731186478885977024859681971755206121549040887600560798264550222776333267475308324761842140362308287087756908557791526626623414939182193253179271148001068262979240793015906613052902483595504656784984345205443530 + 25054864860821235004662117284061899585192028385695092322064672765308180870357100369440269291492549667318694786743917834980127724495115131338925679342854598796607589812992305353298045306467797966856967081577836300473583779590178671411030600993041574231324830894639022911115807214573917602003328545242881368523427626144468599405697445046358298293232508271522360003323220299925195441222435107255464481935183690555916048819680832125699993291344918900023394582034509928198499216355038497756696002835178929805686339475194737587719493015952547198003250734625086794554737345238918388512903378791207967151089255495660189301573 - 14359173530864094929851041241909715567531678965528518439366622241603799886952929021958657072494442484865578356964766463152143336755343880269165896714262679650412975516056513246031949496778915700492089762755407016166361931766896074243152635593792324512423032858126263486239388973974095920290093385622551288559325278834562543399233494083684001220319157208929511313372050933982994697605377773672054663869230577291243906625646329896323977191864545324324177366028258512735231442661692060272284592539824539586395039921961057448417302621899227201260054858988859292751900110833179557946247166405639901600250835752866479905894 + 18323035644561877202720035488447878328249159174378349068523276563858762132147449060998402230893340379230529187966601922841955366529084702738147468573209158472210078229237981219544418938659710500377982145049362873580557806237041195789586836029632915688041945769897148356085317742362278703830226403283628339225568636583744000647504510217821839685276525305692110937015970998499099172956202786826589954605484536332261262162487174264817393023164218116130384174399150331492229312725645857297429865461158075070101477675760315052835930004927358571550852041251581959939597118829639232084320799610435976055547805283377041798480 - 4235292314861352127572334605508115679747538168938540496772024710917493848576973206248621035825724361945336496682647937814534989734661965124259732736299342043944425684318771228423539334032176693996709677430851971827423476363187138789792544285713933593767636179846466495953248523712339504919457311879912043931144865823390139618219045870588664701497080555488468939892910312180442424660801462068119408933274989354182530120272572602646507103654663227512053029562173588669844716851218100366181436628351125890083924705530320667216715620796194942261181953850279345228240616294646864465275156395903555882051987260063424845632 + 15451983073447274456736170627603428244216563574167163880511725481971445036482940343994683742912703935977811264432027878496560991339135071315869195985645561617971935442875764013761203600816187915955145326599912399236277512132415627495522708196976222141425434983758129466604332357592107487841469772312478750741045402776374049685554541641413321409804530915001787953865598776267296933392503463795447505327280416596750672038462406791084472080442663411209109143101241945833057356685503925404354966596414352188768577924261257442412872937732603880998079107872462479037952097682971195513000654925061826984116809375780286263983 - 9416345820784457490679198481887751194863975168899804257100393209679541616378165778716185605111257298936220758104043573154067534810388578565021985690035329975769093843960886742882939391439082572935232814173980129477469963739740587426390893688305887236142076895623034066719768094107569587257232717488532279797635598929263314122045936317489146187876733759318833975190824023252469847696801038333265795387239874336626554721250155136773592316354769873954488055490044787873370084914771126715063622004441757286404570206311659003994354167964490117697213533739096943975999841160715578048430290900473339231796666409596259866841 + 19953480047056571330907147008936683985775058959064375926629026042357359044238292342919668067924090540912303407430354605630699177691526885609355141986426714544010063112166568418686871782764057152066536415539471462170921473906693336702788660447680486827722448942116540797299295554158637377190681233473432629567565477552976851138554733876909908021297368137317732489972606086290187545526129670467683698758682431728148789938565433408242903600965624910908606770266106265433674327781413832032373685257116830935686771594118774996758042865678469093616865909938180621014378252468260961491501524168570730866400142421120605372120 - 15514573040801855402988010215550093275488518831233722319861061801734341244369378604506589508312257315879549373427127814202596388497191080467642717420959391828245302753518724726736286105199320520489093982591569293871594653939665001686698758149540856669960760328970934493953960556796422360257046134216609521609476341540722163462354504762898823792727264653258696865544722997152388179526302947115195823717760914347096332006654537268875449885315375342147086914649181967032996480661502818548447209203869665909248892967047590759352567457504087711769830904047515775706668607271211552865040066324799650907034970417864281713214 + 15839788385885966533458176616371033179560366113121455313300811480435130471452634299427017287110859057517006327818210877882643677345454111339509597570676617369164633736224699943160253162066062659295255396009307749085608542787716554182976988962147795689756588899322258754202104539310354821188516271862410271342448591736682035892969790663017391095732456983271751436038691932060525409245397026930612099659255427177733264692751293380684984139715927274251991203735129958113591522820376368531272228415328853119225195993895031796187311041805108636410065547313788676965166902293546815651134993772204786491821890319655312447405 - 13561627892845173846272270009830443189705465983917423324689310983206569919444869574011933315854463995709687378070412301204294559868905897169772134227045291101623719303004562583081103609139125465144737067770791484348299219538649393159141707167856976439180727025208222067672199390873549876317307661846683849043013003711698994853732139147651524283295315957518437479345354293713460850850642628590808755732077816699123105177015268840185692729075596470258545006277120420882354940774220552064899778606504367725119531279663675273484619641345984209310973168615537101019521198269408781851072737848780053437939634406817567708123 + 9170664711381238473794959113555196223192081587922431657034832489422421111137263568301323108970609785217537328240795334683720682645417458257893563820296315479161228377511591595827982882248973056810351720068299925309514458502185430255093641623508729938072476386976661345737574103704217701544840490807680181726272596713997687933409060530921980784670501972550674177733030682498688456911950279928409216008787340996704220054039009865139972323382461120405958677197176412729048815965776861039344724238932366005881771468750961871120879904684829179703154371702809157398390900118959085464243198789916679011897593992785719749909 - 8685684867502337029721101924581883084488766653196791517142588101230706466395684046305527726158636650040747970402777326489185837516287175975409727269324757259176807430741645329905949126377114342501020651544328514384307803989806298658391596067061893212274969398236072762880925417835644256478033437040417933403487131805855411081139426458242449898719999832868415156498344324323606151518610638878982445888181176295281600753751530531440468520848677611612813106069070231557387844854756254821487448091706318870312099934806707977724379052352501387033363545317075697236528287348647265976013390458238501500464202481890768004197 + 5799606274669704517317656717188438701323316953743900867689055608524381563226051063017437176291757822887725004387981244915754588557406698502161253985002778953871240645023651797307381792006688074785344123456247340814829725704866822086396074488218463086050055967218904546852071848298566207203873297494479761729319051816304277785309341509310290004934872573303900507770548232302095094942066331580701565820125312278071388805549991742212940405230281556555851473662978384330454814430047271551733981972050420561368608589972898693316925333788798781492643441075737876588299899536184204297524377062674556866861255732326480115020 - 14551009400403204277659609990660940993688679349031265934915084708168677357683051253035816878545804911999122604814518966487552710165038276440506210342238487876522233449640606629467555336953944577038940870827478047567672583129429583174818962347128397470580379322400862191586397627650334484095629454328529842741578946390961148928418360287203866931283969493893322172971350627570536466455307720873075244477473572685844131625014511216618429336905071348464263330168886156084618433104331324152493347355908852212921748062674526732516201621262904360659260683882515822760879197645408275491726756682788933939866763439765804532631 + 28061668463144944833938937029687038588058510396491209052311800484393887388931464151996307326969947923291939592472425738239165763203855541506591672383501935575908711929637578894589100879169083677306589011752700177747492190735575201032883299735205605299842664341877903988925691003404505275855949945506715166268425697591904632466782712359664856166052334606320834740998191023213798072337741352474188820443727656489063688124721386403174259387995559285922899568906185211203267874787611890244703801751065559393075018458491703019870795826650047503692035250913731500026777706700102706677375312154152919180202727307941308666728 - 10408175727204103163887796831455727988687856467563488166867468847812985323499530917480452046214173203527974937191800259462290704725742294261618368504839689895754693462814954201706251654055094101267131573255361883934188791248597858198519412333524412449500701346837535087823308172492092274084411138546524762300997742174202772105827872598977354748187288778523436674747746623184223050163744515759642047165629181820511691460747119745272968188312992600743456821943289469191310649001785449838200989093951712293364437525801562965417180057743395011075999909421578581414651722556760309618036311089656952977608690998499480014018 + 15781367716996359309946978510805304891881928180262354092482867817574307445176923379313405469801785774560196825020032511062605652163619914712369025532537905642916889695989930557126959378296194369435884692997905884477345538521172521202771340359567441641004156866735651255247286669147169180718668790590372718981913407512367183849259900449729642989398959786300189963779210279792533825420068639142432150766290439086115152899643960308202430286594147658107953399779839449728785730761209041342326280355304392191935214336115085925001144017078252449410755563978282913310263295143903142706991874655266365563186829329523428332475 - 17139823647308673417447762983069184647825207312274689670889356378774096131993259546683019806008655536677855206162745737129877873976086952997599517209333400154031349203137129139907888567010655273211327298399270328094056427722252305436939028664834354001929275892978680586274218501563200569011745879355609391136289850385945106299404086081641175280655411661356204104550708041311510764172149112739512879652155091752304801316674767856184438415030047842848186278794853822560556716368374536738859815939915905033973689239950405629081075085332389990397613958177790761156342247056154973147575768831022799191871531889159808234385 + 17983308553262630114856625013728501615546473473800347339219839263845559121254324222546400988067570776763915029046414864979272942613951128325032039306916232674771758888967125324757808432560208399146010587870564525281545295439280593829368513747842673160822631268469775072698799828727274020659894684290337936865340131068372028681464298976718683137856705044271872917401477120557573853538725638722927344644675934685364045925603850911574369775473836828654091055766875112363689946929315767554935343382657894629781144547819967733990592497681573098185849571726450891014723394615783492809273619956907684517385932353715649063914 - 9003043596008445576319958662586698429040321790287559397968767754370830250186574678527445866179499777493343751733564380607175025768898398837240242189997723529861317319610300058138945804440196780251325066166310754158039156127237314850486892789090219020874580000499633581675128579808511837952267925624655034855227910129227116938375270377376786100728758837761068196953205645130624746669437760794586385072056931295909930541672604007609118601220895819925279202109098312825147085130844890059860405710812736576762255595910565643352336954853325299534125914923487608077558165072046700429799064308182179086683961032292764762971 + 22651669811084181437909616067779338218056219866474507573670404684904056077287871159764950139051652240230148644997095705615104668081569702374769175537121920738452195422432206040866674303272104125233399901158898434598491645274746090247054455318153324594709296865141053306925068147231057726194872259245358014169429414594506706907928271836223203461973391251732369107338399697931378332529660394920847560165638015227681543792391798564256565126851439635846238395293046179462688024470482602889960565881076365902018139521253498953157110547225580043200569133725720509087249116157032863785208524803092714338636252857174642021905 - 11560024637415300657354290291307300301375531166506043610419250750887637484072116565838124261062600983355272869349545973738809350754721331331132016549666305588606836449068471407552396430628029520648817384996299601908732123075428414915481333797006952482394762071812617725459769888352878345370736199849136245378651864750498482194001848460483834464700539774574684221364998248102819441376138442403683769418571527815119953209571861409380637647858406499482390392735433120778377331693586222924212029616892381088729064876418071189075770334999992056865113530609848914531474661013848795299535739378747932403776014035244216434314 + 28285959584812251329465015630473688404524842089872996338415860136278052795529112708240442862978456920985600590376218739750161562271871466560887416707018370960234266621207432129171041020176179352444179555149992607368500380779301564720063801863754626789842486886788789750551346258179404949963706536367033483566737128179175823397985640477893337006599326606950420809322258598480087407598436199638899117066731580075448568864779213888384494733362145045568121500747642881389255833537346953803517500763436616319012164012510237125769383645120486252729334910451698605395666915239468390682895602277145961282674066640446844789348 - 15935680906937738536290617443756079414013459674600659628375578478030124217583609183320635942984702091504995763791673829642444158731478587943286947663451213407940097402162669058217392423619258114579292475789858790912697803614201354855919795554359552081964383537014460371077379117821732213924678791877054817961699394067813353753535784498303388083650854233099424906141938352797746693646708230561833507401220339882860412797730215792096115550755150014132470689009424950659040221820577544547633095595992555314382206807735404634859051597621737065375406851564378278858083359291068870228020315474710531419956172126979157666217 + 13034262801521551735421951375574374317562779372656674983246830019787127312805235982340896222628701005815731011920304069279540895112059143024877816520278454421902845086831317450016451857022878185989037529732341556087022865630847385813187867229089285393531793790746742027739553887745811779778496205447101512476764858463151274331179335379780698827684967118769893357794569687669049181304723830043477699167015913575892722312298676005021403754729994120456778448168379470596986399286094793678848028704986738892232169185314127029809528982969912608184248807059307215710533670841661170317331001075321219720257701007715546026360 - 219423907904846476051497635290319784043723952536866016087070019826728122313638704260110249673368690159729967981950219505857249106439802336274493868782967137409422925072003726761518532508711584184650259406095912165196807946487462104686625720352921195070558041863457595810965150222018846259266406892791976754426926410835636035141271845153192086680252035267551300663059474372656738274597756082249625503254243427911345446513579078107413338495698802206925543238968879594229011008809738823530451204688831241483331311671280977585527527800383409807189127748024609553167660318640185073740956555817253374044990228780316421040 + 21238922328112826782882323499762260494186558379162549502928100308179287922071212886899340645731032303185137932757549505289528228560834477129700857968740228769291121647243357203932241709721985167982676186309245567095680850389561344810769299556666280532507037828229690196502584531259394409559377836076906685122478740623781744694123365224548673359838210036536309580380807872304001445642225494201379448032960017162359032087189551131324960365830784195779597979408854300958010861536495242554262121158107761558825596658188086527601978026989835608369714752697294505784326872920880463839053832539480366703933503781835619754066 - 12631321806168269238110418992126884865535830177194173971018947782776462251390422207095998037951256426074133674477148922397374005003486403165415015576842825713036261197010065995896281805643158752270626454753183941051844022115304391473397170263983927012986298626181848161054137014124360160206029212391063413048436757794007708856509994479896407078596568327841060874444819073962428059502245228658660737089890573206426016950616725421938574637029405970841829501377920508169823317943736700061271778075109255930685258751926129730769862849918696288519481304178878652478794092024167560039368333422125567557613267220308334622468 + 20454952889343966482062314390911252905764074928787832203917525905597424723404077818581998921874194176062010763999360446010057942898960226612522951832697134497691145614237916197748905104121054481071181983297816294532721904244915349613258356747657019531751365744609035418851589277045719002206480888273019627944730155350505544689316223650674990362545846351512155002345874143014357195838378021145313447821483689159454812651032000618972588372198029412712543845221118396119594110404687773441736474966816300343692645247829561752932113956807516339319076770464090689454340680862279437066099879192388692474469630311464618087241 - 10768968999579326191635136333795338822756601624902642395117441184206838142235308197056158341642865062333619274291240728426989450603466685835893966011677064583511674614244172400581609414343785783180220789616177623203942452520172145211517136319875829232954967050395678188040803706523960544236781400748899681606947777526218532413612302167100157321629435961744917577507355511183002200072485774403150687681322540948295720538053175567332616375833285176982141003536034267383412401824608444137162881881263902395361186942120029767471739675044792076716091963055366941624602151355037972417444746413458919071657531563911333786364 + 19326926113754737305879728852255869466937369529991532209421486718946888648123384871296621173862652336099216179277687689447095222252583633196259027698512697403135093038465364488071620627623617467744187492871394712346675656797402245145474631429686902273504502483543874228351363816753495598936159629301685441481485275703997412403223919445129020155400809524512800964198569954712919350084579788667704588236047852965745656826079238339893705060889355433112040734702530269795864224438432560531138100506461837059709665143144324211936027854918988642663505266580092419534791284875755010348969339686714830953374489540028797682827 - 15430742591361740082024070225144248601973419227209701613510834495562695237573250564810006056303462053382921214006335464289252183191318081309766309561042556245317983461995295596730377820856711868667635032879257417970004218015475188389264173772015603104015105706425752645560293892337926786333328922463403733753726544954318391390712660453512202871320878220117006833643337099533912728845328127609222017291759138276897819579068038099605839079631937926929014791783994366329301556569742019797029681705010111752439302038730795371848548314768331390127291773957934716210760992012211845041209833082664778893114890705428613736197 + 28325704780718650012352882857146815805797807844888813706322197885908348818158860944891174725513653005098110836252345306581826479484130865434971231290462432225092357118065229903873539907019020570914162096832735025538471028213126581772882775343388020626812671264972711593980903712987761548571642542904912750496138351389288112179473836801953777795436465790143099887306476689260541456199155165028062732927594391276948670081245479378531445022874736281717703990560074035639729973666308513190664344892102450955864798212031173474735522023070594187021426908008623419858405543569146272631872372008013283649222029098320041733189 - 11122838289495121530400640550946127001029601611511737910945029759676537361437870641050097829356907937823014440219518928723865485316801803818569778410421105514292905000563640402989267681779364913195466056166861805100705711179200553332818049791979085040245408770267606898094565174283603390535275690476417510578178010632326001659343173008348704766615723201547690872510324040603326172775829198405483887811808397168437395703630891303563248333604819012815528913684022024500704607683897040416272895545032112649835935731315732664275523470838161456708875047378263552158211625637757509880084081715843484740868699483839910360868 + 16530687176568589415238031717372366333776017454200193593821645764948879297265721123234474966199992761233806716302369662957908508223274577228565352489169371225393981986340673482944091996015268567694767068260233953960979989333798450986496533429221945440793819385508454772413669284582587377622324211507721923178363582691322042563706221122393034582764239658809609968390313852281354701075234495030570600060893220938131964789267250596305495898615980819409146071121605344461661793249886042140250140891062677772578473816335391954468955951249866713491405837769320907639728639869239244348984159407628339174267815341239513111057 - 6806827205454799455735503883945756861554216068825315321434206884116453015276300686065046571706359841779761627880935699070749896666916173564762499866356789191502611613975700549999952852940313115703353202576121558417358128011982930096402266060871539571563370850100201313554041933218814074093899704263027389175985855286953535222760869203401444448326838685903870162920653224914664324225055228223345630422475835619995973004326641168276738652351056309744356741199272549224009937110857996012205849920162811860073093905321925144818181730238956240926816855546524173333632152201026289023019078160516743171506669958789569051447 + 25825219346616002300983157178194840865172008700938445490580412712435202478792967445947720769637865324737278029010274048135317147995209307233504534720211339200081317293128743590210333596529772062197136589293906211107935183728908763464565236313330201597014403322398007846923062726864171813256840604494499226265864843953578076599181606990478530077757043637486619934363000567870565965427436538216482044266099019079211483629308239519853662108812200554291288563342455614854028027408925060055998969820053974723837670030951082952508122554336562005449593296491193891881204277335418799577195117469726905210715480268533060757642 - 7102971770680157404494712329760515827514176722515901506554882440114549179111652017851895828116520748479240675473770350337468587067189835806896280019848151231073988610472935585601669993896274675859355926907499359310185582534809082812973030994776517082721495336863456721413519833380271433517292070091164325231496439335721196048903609296130754149250549709826247878799809484942418861557048202045812342077888198026275844108820901023699753937589839517300894445597680276253922361517128268245013646861646974120004453203437303992332956416880417205181209615626446735130049393264447469173370371395680086098777040610613961344098 + 14336342315581469144722678559186121669027412972040332761133047137691544019078719661201866375956758741775965695107404509135132206944332176001503860676211453847558810426796339977882300441213685405053306505548769426928940622534816322837418038945688120322825219828919640823065322176372475923340620307214685337217600867289988287839961410299767015734736956462720582193137772860060941633189489687411611891105915525278957430600973869629392978185337416688041390649807835171382982717982231623186724572758818266265188892851354381063509364756429532459662057064263803398038740676196002750268026304626048617628413682330123451061349 - 3223110132276456340186471900222461017912329926812080962182255758384838340475508126928906903106613922875017018303018443883567384691958651937281317891285071206976674021927272841753504200505796762603874311204396803498998817709694328307462612854381895405653393470684768377270579472715274200157537137138723974639407936796940537684910930032305773049188007501792056323332435690191061424449284614065497958390413326101888744960607062393709768942116499423850886293043989774976267893825008469778392950757968238907885789681769057022799972332077039325782160790719892646154901402364458474075943065096981957939128744007167533756422 + 17210393089817056349317767157846688454906085985731798694351510141129141107584369015312789474921363271535515789614483955671743952101613742004215676468221490923806148241630058704028521876373661174651912605110132565711269717898739385116358753712277847617697590702526133193692217690419266315365448770471459210756496730830972377616314256773863238043872532332302231467928412473211682069409428823319970830545028411715197021278826696442545769641515645774739728472817932938473767768135911270070136188533839540856220795103317583423886652287563205304077289908218976875752005932048401430262386117762031069821411707720305544031525 - 8047846209191817583216314950383959440179471826044810481080587406603325937015783642913129318129532269901172831972731190060053335925194391347279645864969147805785508676374518133880349422933928826696657102204754107794109329639230237127441217361276663876006688096807171599415575195188390261534214132274215021098531941838100282420226533648776898679616184948376325975974337293546270229722887515774465369538052682409429972006948424556039135795531637260473066983691236646385298500739936512382182375781615142463939461874158091739424532117316427591678505633847168179901137046063441370422398852158950918303339468846287975852860 + 29560952814272106703295456057695359719510810179989429762204756314922829289022830192305688119842820028411904232941989093483535794604465906809168976483367422878624200216470023564333211896846283482552583574922919262830161654006288467174998038176849858098922281541370582106512250740253138275311599779526633616569286565032804939277309319834477182777702187825073646717258425130875504327984483668182270435048321818578938312740464625346908394342355444664486257627620922211892083557408860184477514341420896068133636366958902834801940505842435300603829088332875693541306007105800870805533816943108008455495522391241015037453046 - 7526263993760868317486182195224950845774007203539354742888730948623718599998208282309154209772444856556097905321936255595983366689522256349850083173281592869447868277888170256597517016338719783668591710011850059061842975309439900515581005951396159234162579692904788339060717606348839324958585826228162806499753034912817339100350882094754841008592299929477013101333536550708124235809067965053408458386509249337463660768672278448067953301399883436637829450759611922576947583086659929723039464780534767123049824797692189943142164929733392661035878420955169372594749472553150266661961509634108374321692692694818161656830 + 7290686583994792566640831590340875424392277211383639887951672835549403307445713719940089528462531085422423350552997602738078714527324147864669695867527740597206218513107661194342503629488657984592427521080886070357731381476198157504802058159217782745643446662807339088466292867095698845696080078354173513792016310780599658146811959116503890706988769394781837527949003986280916124356041077304547299856431617681373837053554299396792441198844955333361368954797305657958963933069942850042362620996854784354952466760772560730766951176245592498005391655655805374473928656546842570661843872020193892474155406330065637965852 - 5585647873840736520118499913356621776653385365544282195679047199193891909723415080354011887771628726404771779196244271118176278805669075188486450091139546343160146552762135812226353421695752747021175914747784869849156178832330867615143180249228642770838278467684619414810093896647212608979289295997461701144257645639670626563292710600337904812864269716926140991788722210980958002573324206687994612340714016989917187550472404565014807042285738475784191302436963757243133548901433764188921959563252576014042606802224333944971846544082917081333073999015754098613634324299818815549357538618105009312461378798582672555777 + 2557690072980004385661749614785502084124719176250919300130426942186779517534701122497302922379452662286381540776749636794601852471165832921621551687948453985311807712531368907582374424716878227479173461690953872071719359415044527061173224317166152061914470590623298568944897003815222984062963694041947305876341612922861296708956244346512446989057102335074694157062854040137179301064748517084924276553947149400600753838900363061266058421682422832729049953848288876050439560935748234205439112195205284647763892529607201307718692141138468113211093830033136805870420110397896058594497847968085553927334779151432178144540 - 8076751100260952032099686817674746245829252209067837343633037550729981060053545491299274017869424270713834556596739676650116123157400082759748864567912750483181038809239279103986191411402232164627332878078014055291212127931864080112514315875549921945368312067615888292085669971451521218175370093099003434250443331760336919423331064603589765650317732926483877633420765423537281635205269073375099177417678998866427525128186878143390156021781578212046162347103359815630081225848632713410745851279510817234279959120157277682175335557713788007176057896058264577516453727642161725127366813327651761906369118351705426677172 + 19696628200471453405458424793441263578943484747784205344036589237995543532375647741415989827042701614837510766275817865226173158644938992616147452015732096074523395388502986785655285213837491096101965103775442863813357819844966755169012921348409504091153687522484093574431095464964497412947796074408382086090098649847744858578763767823980043992649459068251133163134915535356791496634352478034016277918694199355736139335754275695664578408910516278579247765403912761263252960374448966926652824595058890933591357505420736038375636884456929051913062040759953852651552788096190637056881601897443328559735043787216942250147 - 7370821110778525753222999299553803611375874038714712566018356960834259376940845066591035801342481247053380022450321412743508932416832046245623166254336398508394435221002210213827485441232852553841155817070139579332680052302984688426436789765938121389334469268953916351874720062534819680832963775631963858203403736870020293490187682721166020227480035883903299697507828069359172957037219104829920777748789411276128421922098738830713692352457247757016270793870360850749223826408627025016577876881703274535006485619588413724932035207148527338862273898582637712502292729580855975197781740925283810645013625528319304663678 + 18032015927292167567816234667904830201525387202257978849880088287759081088408746162062054470277233064748143951105899368927273476102098456585172441810040747414310095756038646687057140413186537339286515603306207310210717937168296090366614172707960205157932193016544363058720087971016210100255397270260798960253199143115766281646610819501051261727529533024932451223601167474379345570676864444994073240251153273662191531823545714424896996016801571507597149730460591333189222277182502907535384632662495614187119334885018443424872080379621155969539917895312386890254835789200645826454860149523324160339551274608353590019171 - 14724616614323110977589321287892928546762874523878136177752556567793195673458199342066195994709647245795754579031290705448390475805557619688296982580635597075500116919811761604075796497052515647294426183246104735539750847423278187164301854371931097811789329916838824149724869087673822022216018505220228891686960072880912294464884379087352309025773980008983547092761324012498550465954698915252315696923142178262009787956761437780950737500315013749861222050146420905940989138799565796283891923409029768548440693657334631178308443986067224340256913696203695136670975283293388297530547976955212475476397073807245757956636 + 12356529823143197352972055936160832001915691570080847651107064405121795559138757170780816051914904764313979610041187175847809326149554435539967967877672610148451299732026709348759099612407089976721006086856020319309488291620978914266752563340058487490171652495870883757640403155046946778629520247999640843847409104054036352642103228669308977116969030143679814262586248192387987229294742976216849184055650615875124217138115679819337294155080701169142873268567731237429201899637371434070668193204583434456651592181456232069521408728878112946503282579593831236918499239150985250026206783641084723289285161834909672546963 - 17368658081694295334721939730375934274734635323579485157971880164013933269627916647368795297165982552410971694506734194739974208762382325233620835119065610943576418281115957611006439629909762290257992390284453326826800977921008000394871854269290190143203335604106984850973876847137509494996350619000087225157325781166882858705644175366668376750918598281587161148070025373196465294031172263887479037027388028948437267708825395067252787561844203192611399507523974569334395812189827444023918987710523046951830043683328114668498235317450798072197890835789495498696792063307172613432159360901126202886856791935278389584197 + 4920357969543145056233521173118334010302551113354002091935464639503882161425559220202253534506990692267696220773575199816403058646456307520324278811965229819514520552406201730499179302229958615099147644093382861503783892843975334981619581536516134035521369352153118526921551053653509637533399409195279149112266821826253148977802817576925849336927355629441113153067655485302788137464071173201868936451306022601453272163605294439802213757379126722428319926437862659709810803622037781123561870401244772443910638043472577001827615794831163769332783167943628172886305511241965976897409396159253465862856057964495536078357 - 14726904952838803284145797995039585375587515696366389579238082711716394806079209548133346667706454492524185919597129573930278963954269389739450378369278705369429376651597368406995761162337773842941304040939901127758173037576494989948805152666824844156194475063630186927749140522469026089802093456460267767610298550850170475331413465746934481490356421106806741214909706689315252076321445136391196081536042324970139112509108357477806445330478592887019826205684419559841429358119163209770896836758028460183601573119838863328576674674201117180697975056393288852813422474951206383497332109264748166986366592493877469634562 + 10307966481414877689732284067831995879176135447336548226888206937323967145942880249607860610585154369232226467406453239657817583773958886836762951079052770967541143365994967555735326195847090698738056401810845917169282552063067746376659395188945235798366869553085769255276672425108270895815540170424998849899204467834476396075146118004492598889451018783478029369476958097589052012162256950146129779509683977050096433949382543415030229813340330305701518139324423118026136834443959520135157240693268561681694161513467629511760955207043205364008560697261727960469749355175989019873832484556417154464035198151411886653980 - 8271977863549903701829438632194931380965769084789700828251548112313326374605772266019157485228951195100030274243438739438188826633833512538206637893627799077999482820009913349734664908069563467441634311005941347306289780249987644690983323806663438439410336379778740153910003976963212858969541341036214502019673445200350869117768100803198982837216454377715382887254804771867951371032322097932155415169117015296548310350254954771583407233622796195151524511759213899907073007015304800872065870403289159021113643079339871408757753553661881507589813172050240233123443341752063783675972250511796671909960490289650073116648 + 26132609427847780566035956422676695282041759191149882288862309990154028679690872996973179417679587374319665046828462981552758978292784544800322381393921253179262019487975339859635548094820549956931670751081762090575862644646447025602178667572417083904627900591463797297634006104446779506503294356673004240182913620454509023849939865609659110919427344561812390438028000933021484822367557686353206794479501927645722199008016470606275274765961280220584001047553949761508175698368773371602518358032169957635085264238039678081127418714532723200884982947323911742343428597152093592637318160809560922209621577977811583667410 - 7404767853818615402543940246918256131474742919687771650376696381617849280486684673317861326398258853413488381191565349001213989981073808587372763466535489144626167330993432794464094981377717899419264820820192184837426904894093916619554386490143042129409622495302911257704152089912486881485027982792592710214472848845204733320784621526979234408781303696268455741859645415183648497608493932292093519891012521373331602202057854193866087977525408050090411854557493762077992296061843797909933207352396292757155891939988898141845880138260833043899953709692147919863189862066521252319442656235999811292040997793384049153771 + 14849714101521929825411049396766058296561367913061605798688235783358701179328163326979759126310736896133084717509057883196446856977005995115616413891206676780414303095894652266980756876879649872637508580350544678358439668186844773270886667436423444428578876207587215016886607985674311017624413317149100983299228821929998407734698044793386151880909200818463092728836883524506704878206482120885182124908000081651953942171035645208008165573496893870809713960719966891408905660813171222290451756891541482045961033116516297292364051877710236689618341258649285955972969288247624402489151489316872008231989952805942440601455 - 14325909415125838611437742054721343009400800825683490011496997442027367813466262029846679159758438716268122689145368911684948796466851881876459836001824911334688567696447081927508326517142071967773068411744727959291868108026299013617704810881841401592266782192211939909496422396380716269523290895259755841639767967912003603179802618926957332531916719248550501200116196417315304434713157655686088376091884841673724266706454887841071139191630864433527376619017685217878949041953020366370064604895074254565348617238127731309362373684139799755165468115230133716728900127611791207198322272623078912993988496615775246507873 + 19809697944135418782803789185423734299770520676931340506451543061159603431008981074151189979413616291627053806591210694736034084034255344334466848049825174272496227305876561048382192214043283271272928573118004093419715402958798316100562691647907105393318316487198555806139040981047465515768192250449975696157636199305488390318133965358142011620093678698260706094695808322100687062622330885724238232667639758961061610416684244017036377967798880592822278394538039133214791113227198789521035311099189950233291230303457991473011371743974713786739398751285605656721950639724366600062025904005532730434780771460077766549276 - 11633992766998023053657605431399982250866742311872772067741436768151800895350466123811825779458164611771064553612432040211521060466964420126534156698165504742298776094663535601181677995741494709375080420351143019403676974195665232119307355924046805053312893363210321162300975768871995776904859502373988976377181425746887974686269428049881015594856980185625622994577704337756609308195447241453087799286289017998214842274495476092079962036032711190016999707520328861392345984254393164520298013969366889820125932225742926815364191804985076459234366547229942836231482819081010643757700743821791373737676517356961258280560 + 3955336255278584045522866728661730748103209463260032252147899461298485589329867482622415700017513823072113115553520222336490153412269376060664286396293926291691373997871297808554811596505806096287474267088114528865193525100318690020109047850673568624818484731320944968207291083251201535425214445468137700399727125668072481918610350801249157529633586528680517468717120894600016970971078371809788477062574317915887590022343736523036562115612508369475950864826924423317614828132070605875468084342889044648178515722654191720198058160560891681268913743343586650074638982799118751230216046729060961454053976901362496854253 - 853860514992766979076159968134664010464296226806597091207373775512101562764601496674537239920934264138765060232405284754774591005867864943348055165914505895533974181513710482102479581303943582852796755729535300731903412675238694093034953292333011617341650001138458523150101752380935490841485098192947290825135761419344095232492000054909342689194263986272543380086139146007215265048686716701193243248128202248340275268356606067276787465969202058835146287360826009084560803693263844073707340568901970875374707110048842604461557198544036976480847724754555329324660316855051062043761396482329940386065769193234377726498 + 5860623172579119366005228991500451123624928146794887526699059487955298606713881964326610602463732479853174316704357918124020201833543064125565722174604129041401723017852778554006210220902389251776562983147613321461497222959418935941552382691855813903871232724447419375104102263517362732914397830892440231412180218896784952613371091566225173323075590312796863219782860361058514059413615912947761686581477640645064954829046720285464713864094454237697503271625560256894497577831383001893623156503537195330156704996718359844716800435141072273512400781988367569346072456603545852796831551280228007342648236375674109083638 - 16501504234008424082339912441597515330429316507101249058387542865841523426794974844817250854989129721717231163991641556728835494674996867382223966070749503922811119382784763050789117056233396837730370173314840562290581801629125250280053760898472524104638742432664607365239812872391111489029957338133961036090657951800706957803603783014077694725334972909114532682444482860589846318861046359001723337558355764344272770953108920299348915374118138043449724347729215433199011663135490737040732980425785115429566105249041892482825819536195130716059565601613434438877520912748979906827157540201899319875777387478164279703944 + 4005559684742655237183240700864756027642777549057020756153010230677457805149558056329515746226432925090016218174661381368019313276293257484399174227247517796492925643641686962591262292850083796966661229590840026691282959415063830978352914585157155709753639075572628508824430899906698136053465717038007692363684862236776955949806381010063373705903616191151259434223005103157672628476713190853541663705963458592376469532119490705639107336315943614841845465657675384221759886610744978735685079396359768094482420425808116848906333598006739352299227103578202500164433157415252866432394703959929373583528525034482746092506 - 12785489414027014917875042749751935297804773361561728311365861702264839303030458356846679794576064219555727989225782428192966963041146787967535623025264363339585547656835179138995279064311227554990107922001480422194864180458760795828329245627722677214418930319280733157188195763911287506644630534758350341333351431751931025784141685811318326300020504787523113231354752642430785201449235893350443258927794619767819129002911331027487334671257741277184968871761842511079569752571385771703846024334053821718004164415645112929457307695123854670612785793794634109791054633578970779446305369931850889862729303972079626196671 + 12148838378956639635723260225448507755639621398304109282367664088703575851034317960189791676067776799088545681600459341600267160610273148545197201220426336018586957283232040317900410686812948407279012159443988961680180610748930144124420683217738338627853577682349394405542269524541442347706170884508137507998715706332110190758867458863370451195220226737797670611441362609886108392530172974403993672483082459681491874053647348455308013541309907617206616347566694118031871013814895629603151329037219862800332300894853724535952380472168303174052529815152876410292175318231550486267433458314984710877802012380350603052728 - 8451684799280238944897819214601714181022112074475515169352487596464402399666425248110272241832945059842778439439724299445269879140293153172131855154977161755028420019941655126167743215187401512863609709923897654307237648784760831616423576981043576961080173471583041502058688979306032261888649096681993703189526175493614023182544890899036990722576261999331211524011810519736192684201889545507368663431884013675043572698551199919085896522131524829004462875858906691437486773978906482134955552563833995203036031091098458506498250208890255592768952074954228979420369365668024996217546684402371015998127489854264476448609 + 25228600000825971478328435778906582780065011734625473212778781104598919103697571706011347020243415743666269525785584578042131652032956387027558792235535395330190261529510893346040036411637965988039702492640163042539322768245160981757797183323306922947212283596360077457749545093714660510740390979398259129229728390105808776975977651982907970884610083610207155808820403448797934342412563499321642702406593113890551693911013857076111922263647773850570579974038397663398928637603324296286744565249413209817077774122567967749382444858596606482111573866986814271126273174229916964064226831832917847090206423498022579996696 - 15261551606723884122332309706387079864560640384578442815929430356071620783527737034091588172443137034057929390613414367762869452212402963082303122159847252993502501583476103037548411896970924750018705610840349508794155436437753345971676274509400824289441621387103554062610381320467920350302823337694593927648811780386181698367767287506582449380403297266640150626877800394636559796795816541677656078563940645271858360934130918845547215207837608311006752969850508444916305679365440677126568979227904352141494659369282066938698120079139679865003130108980236343282430809468697492648217392529492790907048412605053865679613 + 19924351749614854328244723456154271857781868585484001403409488644340407177154000487546749851056545004016128988791596243043780201434368775711935404744408450739572296105059672072523667162036786158772339800443412477508280305373751314981420918107612141382724833176183227347396269065662789042351238714756706208905995609775925681160775439451775176528647098606150841853940384798355018232266996248474822874844797709698100056234753739250415448350136430516570060419040348487467905084035507677694813911762708851440890590652138579708746913090440099739171564256955157547477544262915760014650276263427925424143728894713369944985063 - 16440821195354821752178999246804689165288608711263354118430292516613662000680602614746808003925731205530177698559056224900102654148615503905591651438094600693251880891045233115060206280868427919075197310863753831008099673978415715798233284642766880645561221769315018924371698707574434124351889060167727693821121705053731130004198699381285574252477608503889797487923124205080090942288536635882059995915009394278220649889276759911679597870765881387831673264062844599916353438379069335776954240488572430602138162355816400386948456874759324260591620480182975760761008017290970810947472551501016231887258208916962363361130 + 19716912924350841955132135974962594500436304946715958389580299520970317901757556388000203620653821383394237493550556018955152908903636676071523337503508543125116600520558533256983715387566132880606556299650869590146338896068395735124932134905854004097039652566516906978663112181789943012160382732237326390228942545194086127017630460726974773762791992060505788791840328424349117575006821435307980847118696085710229659767501743789131184938878975838157284257530488344583215585740915599820850345644013323253096562354080071002141778756900330992637989396082245775352959965594276037524851161887475837651322967530436783066633 - 3918474543072091961030594349090543218124893333798812174548025956336904838328873702345633072472638444752099092538872253000923019199463827258711282146446181637788193866227778139590417019979222367687936889591664540416089617800738481665475500063210308972996024993664402747872984041572114972102902575616970258452707387822145107669531337620625426191318978601968146652092319541028790873243808445322222121194726728195727208286846046565716790026743003257221947494054644027048751751739022910570016983988245645125348637426977903121411987535218081742417156992166670665515283179932515464036188044194775322097813593874301465033140 + 23856490583683410737073217060087411144360034001058838288696467358303367450379440927737595819831937792957592510858913259280267782913342213136552871863180429651455525426584252157000180438330271128329443958228131837677139256807115266175406096881776527483194431070753086962017196826718130880093577303327404213016210916907683666181965953796218906536908987245006032080874758153963098467567000427025991962232770415992728858330434563867640218740271857833749942114985625151110375506447978170008241971594149058460722682887465135840149317275112284280276668062153312131337805090574208450082632793918507640910912598028414732425072 - 8017922345616472611304275600559947863145615640563175343287682848691725106145368781953045529222339343824455006010173259563062287416816322400850074569642188617164232425644467193703899910892616607535009695573745624497590943323741598328664216243301984922137712320938993926296306527868456467450879889409392397988318582218253964623735538845623592352214258744210766521063529223313718320164438558565337331977228417810429849244780776107631304542256112075297848920545418534669943040473555858824854831942969827736672666148087842242848226496919417602657945129074976615540658834628828228896593967422471980461635320656259202024404 + 280799356422385251495224567279492896550903133147558076805321074566067362455779563167139655660536826880112664751456400767191359620662540553972965825640004766140283935321951930849654397977472974348838777879118406995760020939839505598747286374202687062751341688078345730201451176088559507169849454005163316842517515491684262191588447293862313233643331472800055637891257340204517473520229188531956429291605008937518556831650728897486378284893862890161335960776465072329065911851951599819534358159749384061844282698683251912459475092354186040371892629928229330229677983807725605477113609403459095861148372112664206436315 - 13693048985401746577154903386672109630781926161462449453295904226406506573722341500466182228445278218091554721965704882448373875893430943135273847763993276330927882750090651128581648800392537538957539864832173920688705266309703204264626327541096897943225592239696692515319499224695142727749230344202269800467301548128128662871253176575238677670851063704412137704099479144096080282744947622924105291575114833102163035081941177271780714664241170936723854236977124986545766261739254933322671515010838507449614937967295569175640319154892580822104579046091861885766110679207163639605146046103256839011087712985512436471756 + 17620419138464954122915841501162293737553009947517670187529554474477982051068402387436342196322174560794593450411108119445733329543312153831457400403529984567825853102624004458716033744238384925690737203825424560492645612567571671406861089207067662345129839921299496538229093854269131849064167089664457005627051052520559214765179360049857430592972632003628602655646883563023783799350989644016386042717501559960929310179359872494092289200871955570457993670134102284551286511502097390015112309630880084876001240870764568242533975160622816737325059974258535946619634102220151524321328717467431257374477975748110949167752 - 13431818672595137903785578809873185186953198333108051878509612791108085062326582071224183862839980004679333247589736658963046794115820494089690992330896536629120052853240222298715936563995294383304256144141794160260019774700164206390115750131644088082836750633393427033709101302106522777363884687363326158161718311135340938500190703106209709738060589628960836636934857316813293610423887287018370782941617704416049081935090730210689415465694761259002961225074257313121558513322198387712336729249299990730602967717813020173924006783122926832385405975580809429383194900393967080491338679042311668116873092941748979145710 + 6208298552166372421997055660737487630715012213861514314019234143397323350405911788428556013203707194185807842126269237468466157168942436579129520678398227729664303498135731380105283493154837103132572190053665020062556785537923956590244476543090390553264230654629719313547182869598380091057797152452725254840914216922379952365317011933084185963656748336197355724376452025495847727067388471823011732587771473488737667595509165630426826134254395037605815232887085655225077904829875770752126414449862382984847871743416037232154552654013314119891526481451895166256392621274672542871476734665055875048084728395852916183736 - 5833322952539213306717737932757910510063965185260049298158214852268428114789445818213891222938991621690169813780544593311229363143781263429540020095963473959245207557575417692296567755941337277283251047952371128430621744950635416380901867500847620909701163534953410621136764025206166740317886132234493855103623304480668338986756214275264018693304669338747306498128299040657276630749036311523335384132008971476289773598126680234414295025819800195193937789180174439784598630147252219536932835678628976805533203962833755364960845698630874909366559268557126553849533181762318523723550424725602400351313755060288261422807 + 10684091324717858075126479567437100729043588228147275341535125027385232566274489114489893420938619003577862154878965433981964042167457901025766165078435342822159754052650383427833165967087719779060543600209921039139942184761336134238266750832455922207316176561072008801418378206690206727197684674698019006741119555418185525843399120787522084579832078025229499470837245432821857482655508831403728490810775564741124621102170943505744616547609965636490406230552865174199097452761588241523518506627576809317616064107998139748325184456771379452495031270725373182818253284990119223982527834169801604086414661159519271554834 - 8755697018985824809660180357219193859847121974203601151774964167622016450341496462973018213560788612360460831375673749144663741962852841618945165064155770948864409970860335190989736029236120586141291785912386479381813521473380509133608827747795745615725359904103508087226344356442876670081642464622390278935640582996143744270096598955418705358546637363976971348530461293069229460850570967222528966568315438020453616208281690571261414177948151327548901398967189194199212580535264108307630978277395926912442669090987055503851788162035440635424082541015370074087734620671153226472472549045104364158405429965022560594679 + 15683962625870348043272757857886721641477890728830229032984854777367839991435220335582804083714673267119283598943337898304868256045062564963903339439399217298163473477271272704104228410110005845864528768868119304126820550423286179367111013055706963227329753380331497429966842406924381889547000788792624872897336644849041812846411485131664892865768207123942256511713951559324807758449139977967761326043319362662599318813180715212609248945115300883931673025000266061577786624125765502999846977945956423776124921137380839130021952876303358614137260788589866270120041598452397406842392744978347803360339624160466486061301 - 8666911511609506167125607966518171333758387900875947703054999795713985447956362302907595097925579042576773143343437025915045628390444968680805134862985040561956128931337921983112513865266623583866030511203437838399561399694468829226378342450548461135676798625215519511009476676713474480042657819609136083160011702607126435703242263896354287177409859381575147130290624040708881253578317387810916348660969488108019519201322668426102544740928641135235232726272262051201343768925800987124771199708308392404217645122016159589068255821626703863949334754457118586266081166120381519847097081179514122447083583845237288626110 + 22438600322851014382690150702526557061778733423979510608561878048338261187663499718207598134230485713794768064524631589577524180044564616009309419353622373726531814542783756977694842130528719785552736227672048372260718621263745234260134481302291978674205978265579090099973646800231085042419966117597979974412650737673816914685753976474700541752389745134318079310430743110904302580154184694619744486358175132596026576012360869958085497927020615626180751634089566706493471735178606677198881400587061357081940649221905432713548673666518084113762253991859162243939224621516224581440658646442816130810125703478523895376360 - 5527195143875356494200762810556945554750608526052164862471304023907685260213457803836295494872383825147829921183004272419939027407818778148169237324262890356294323886426217177471668538824174851683755699353374939683375056597330613542761378459907690696498128768658360959662638963833569842379205745320672165553662925917347953437515682317783164244965229690105350556737462144387311185494091931223203450546162675687724814281856792853825172313679834607191085835557241591433021059340021767028318552732405502486484061250362994203093519474778527043107580774845247322627899513327701224664102856681256668796903269381668917545461 + 1468443822355778688499137590113952209325623525490970945760954881884398087521490466071545689588621228953652400547673490184444539490626290319590856690687373690650958468687859849001075011662521208790044899845566060001138166893328249531799624254450663224265318663765686786991585488663071547728251037916821944697430890175118539287403080118833556381496994972626333009085689166603788565269553831221755213895106300479045585920480350769624896430396785837153557642022429584856445599295041683087426248979444818393724388360505416158561927952206240522008536902559237354046985337264210974409382562833815180038219331226594080075434 - 14689788251159533771264762893477736785651276663817634103863354712998239617478734067940899684447786882602020795990002744037250330057954576733848645939456893840275979032017282985501954666073009858745992990300065990225634328068783581575889138410515915560343103320540083004545306017224698154394932888196515874893463345286939605448019712762776200060633767584807776570265520706036165021679117206207557217808678691852496519446501448983220006479062767814151773967539408336839859082288640673236563047785269785319160689448512879441004435713843775696827156673050630982445390759483797715621349723378212496009302320123176246125419 + 5759833177447137370878627234970749355092166033613032849033044262156764448671076840542703804968900240062877055691951619627553482409726653786695167888843936342944127051394676157648355435009124631245542769417642057706521745301726129744267773009513218368067127740184858693107631028374228787130832715613726083524453327526604196045147943906313686734304497199488875125075859981325751929293340290464928319663230218273821422856827111442784707254506362512601529837837957225193757764891073658460261436358745155375088832917233027513206983874657965597327405254368338404830011730881175719752042068789957803835029555895054617254838 - 14975951246248654203734475159146123724019823367216295965760886043529504531530664890858983787558090033582040067625587299696210636191840011050490895532288587989658152266235655289435590726545027068645644872849000615057932818108032233848066963248527794397518944022165274305003113761032996441979941251284161316125341439726587019296653534200697050197104818935165455951509682063445113659837749269994117712236021664606262599420847446202272483700557004369883574636997770979902783052533867116236372904392853327828207211849225297448793099495612243319781266462198901555213842009652189625306170098976240071142982208014073125456406 + 7720938536659800399654175191620799879114699377325040852697265348703600059826740449169590121141682637055691326710120202277187874253249473293865083156611065229493798311440323740248242375383640947407279474300648008724751362302787269553117214881705463915942895869618023689625105654766097240960557067175654893648854643158335374161811145112155334042232618982831718861500080198483346895265335368844833298044808014508113833535685259890064343790125406562231630589056463804653840537683046819594380731078578609010052642460087647442380262609111978955928738370648433297215623201705805899488862626299643451349806827169578824146005 - 3800392839004246780437019328202909686310821333251147905263843040603166654641617334404127733509807998705049330250597241143544536464563354278678207395003198126631518960493325502672231758056489516981070665309665598373021722268384023125486748590708877246565976664134014156165124909425761272915962308118913359667525588502787851401037703340522169847267144425581258242849429813029585011174205819314505901759444067110188832557992984806832787266734774506079298072580568585446268095955622340010364320451609291350014123115312309769316067802808943912774815904664162949600521958022171807129978220490492917198413327556019718728082 + 6380663343576377206188231470962282115231119819048874385812681969838808365005667034626893472566178479137307928861143726811801328945223616838170757795729355862766372063485552041180974852063163285433544446821629906825926616112178313402926400765914534746779603548437359664864411874112036437005460953397183435974990657574161651515812690827428985166154780150124576151153846845569335548807860586962163664564075134380989962213904460718224893137181127342284940647903058371526171273854738575822627297902027995251603013300187504357916478860462906264683847805950899003570287252572843625403078225611346991800611259459154208612320 - 10298962601748796548998846554245377003149951916678298403753121118410223765591265854111088074496526510970195456952008307218016246056315804431344137947649974008902433274849382500556901959960943745142083109908868279246355135950596937200898908964155282189547869880373099127416998547432265432589491437010594508592370036191587274799683028771559428718530464926401831950356614261746003098852709461150368036359656663011633035082821316299894767425033300483169893566235301766697253073642765743669393003409442790240874706115368525846862817260376824917849365064397382801647560432269802661149760082842728880732453624342117244854736 + 12587900606520810171223495126125949180540715151714755588079122398953468072553916938081328568505251994496437252373662655075372185011121462949377114566302591675260080552067175402868133862558610476794289277655957554593350757701509534123880852883944173711496087161805935403182395864567370830284438875150610768361920674891745086996926043110783050591987736732927080957939312076133287332358962759928068865586307930015134744708555034431851134280865376407462803298217715159422293715352582229336428641816868564580069572557646239794642558949199498573408839600439654332634005053908531843193073146841964794019600809314696110191227 - 17482478557745259665955993283244430909047568993449197514158451938135480788474157236330886832438852863203144910649721233045810572627216740277427960073343513270001315486620253710274146948443021380968374060409238931707273657373022082475297702176411528204350886063739264991731554677344887474559389666335982913108512629771247129221265257309157327767081176934596117900519125535049948157021006139562069566878535321394972108825008492944726545605586237851922233430244717392235275276616548914835164890421086308771131488444616555876744420733655740457468285947555110716302579798969932358506283359625065617750960569734014632347354 + 2102142025614296683716798161783699221064597974583337253265560613655418646103866280360125165547476585200624284270524505576476935938435416779301506101406178940530267387770071070805418501432539688792277385936731917796804358010228047464944601108086172115045229462810739759264223624500031627459308841073002587651093943580194416958679850785211175959969735312383229452175818582448081791634456727969029247622772701844589916718328040426164182819321666752886703044823787834137542644965119907562996783546945893693353866700180948572885792773829996757046612608542920917655245698959105518662433786351961970562756123088300386481464 - 11577618090513645820554718602043179416343206711812947814679009802774668149445557382836054920963296759929141567765567961238592230003725832003688875181852696635749781340381432742351143740107638081910917630479609112440982684034110571824551502637980353989378488005932976431063932195000766989685881212139414082129264133514736884892322302498383036821218031397792629552723867393768982354960778829645318950770132954151175245405929635041278880401561024002175079066207171372717006472541630442949163121957311794965399363199270592429762856824726817912533678652352113227346824036852695308053172614364809097527790576412498594600397 + 26963859836167674625307690880260672542765565283691281537813454280016498210313150535080760464047421390487094784475338296566868110821478489732377193452156042935773735426409272179359569448891001024047977298376548612614321580150940628255322587035880160896118365109580214615747326778456965877867542882943124975739022383130904939998633809855719051172780727589848649348863658854522457693278044445616060414824453549609810198947356442718443966974896378405274133345138296570450764357872155304326193917638973643023505388124069333620015252543369038852549129333423303050510104222019046961273966521546195475711663875271273531519059 - 1841209975605701595365003387912129242390420486491962799460918558550672827869839667894763297102397848138535151497078045135966723560200568912875815457864731808332192280962557393458916568942333507397699139674530087400961449389548648703544938818080527146279828134878089817914716211184122680070595658151070230727905221957003231822662974972844447119152106646439812816935773786854274304764772570679888589709565148464491801158016069477730622608003022153533372499549891384414569284689614114728642432212819127196750523842550415519158175483064395701877108719504630746913319233437546152906612046454809955269791151693572610856947 + 974799461596144342040027938467633876565000639361195968083096586547112760676670878254309760422726464180325460232146152456626845657152641738838905590148819088373761569996690053082653600883732347986842066027346821140628949019963840144160115202217285262043950768981502657676444666620247335532475447850733361787470116941531531215221886403824638659184714740391636983956153479439638915496084701247620892750419727424399695186514304205466813406973957303072937044555429194896029412342038717101552295183704298815450652645371836532595601028907372038285540614651642957004845817742714976745451841853964693677804142404056083946012 - 15466193874637654008399007672294041685338372143008257092073655173576596978705451522105498048160362883212128611619074271466159777229518923452850761369417905604067498734459618462755976347950154156591205615227504210077268197825686763371678626076695679988886888411064630387476758719573210392543113420966144007909397482530198397075915143663533324846490927911047648653442666817981851955905417636355813998071248966603982630261406265669400630614703412433073063783785111942332253312876761932333137338702631310995692867331163907340627993713733981487057037652918747037323757493551660178457572116806992318424238126153058287260027 + 13786779878919259950595650164530622358031903334986539183400433395182519631348189691853958010059905743463898850127935990543930289836449238661672831380149381288073176350075532858537154745059140221737225765247353168517441207957947002260117301022453403289152623373192012479625436410275329528693088149129902487129764855666947808896129056538961214773847062732147052374668377690227517285538904537332641682992141247130613848991503619063283779041900254529579492575348403796469139100237967451960174878017845743919410554756733168503393040505744301734533805348171952892755759852872423229057076420976989533407337953328199190847712 - 3539192957913619629120313804369114084351111047400316508298768441226085301752795762541416581472165239830788812309313363490174481900096551507129750258842868992024740283946865370560122807402261606915791758407071157200634201180838281501458296715756451154087292229484784260074907404426060989890768113393051564755022970766265123858036548431993946981027315451535769233266748792235293774706982691423103654274012370286504150626327360531188746337901125267367381453995795190273035158152925898884085619400015796270299744124257235189326908736475256500541579903215964327851642490479411466539212929917552264050976659064288309758958 + 5915510910064922887566024248088814905053610671661471841527338128795490604451828961818867018483263792782697775245005848694877578599683081669125321826246574781498443591983536197205090786559098993859198769315578743334475571476783455097194135797085792573357927347362361166215960019840127288762306707988207598183760050014888953995312598057580580673076170629354830938688607807898165090992506713782486992719071062002206934901596069614770654378406583696039529479811477547060976713947251781217184383286520463959598195737081513637582729119654317011149475511633541360345771062276021076348335158345759918516693446469380393921682 - 3049007083976648058187918103167483063662408427242689108693269230496455870062702396587411349532802547012736982966894484673761340847794260482604425499428937042082279745840395704273510631782964034074853545568300699194567831652731627275075394059754503428352392801189768209170255457768686055573295709091651513010863738433567726119281464825155649430029691206710946241457194402037213883859421446103795245183040674482711055329252208238828329263966605854602932334617866391695627372865542241421568561322297293654123211327974647271099671770143365486577236486669184609682318321579356678269872691085403034528146794459947866369329 + 13209676197440013339758137591012845237544499847480032744941653550903534992098784090353778631485570392050173902968937702806600702061070208152743499631781381465884706876959349891876119486614142404311090227263962294456493702812097486818484187350285003241648576352120540408050200588983191487208778771918960664933273050676064180536480677523402380847233899259771674118404180013387033227654449986705974006568811500926768442711080422584312912541970633503572614734610342281943416054221432761417723894178865400839789855188094885809454039311912270924433783058107181510228358873234415593665286778770382469459937386280059571434134 - 11744219759033052883913880202552834948896048585217580222318289804855573075882668763636275581288848989332880427436107932103322485541563033322265455787690421489958532733244064903899617970447050786712440387668820573056044944749420676344425755948683246823226293690019413595746909305436747848655820868187954443068142355433200517135603868532816531762442569168247837085616465701860919614387572326553016577315486085174321141116379382957430745494021447545255336444121740863004756380892457495430122654781254896313278814012849432730447741559477652544770497039771284259298078716810469148563941551871647053356348472841677707050129 + 7959596806169796119241187981939695655653613195061211376076341252404785297573941147433364083270846256810493468434407186804122936986123358875280980453486747961549263858953218039962120615545869915908608002004542668798137417627456170689746323595946462968849886930743542663180550363734197941236854269626472412703926036534962277800308271536593147034897305597845991868755245983296329963247629313817884827922906816732272149998571211132973253975522164042364817546968387912404976721569189733502882386343542304140922254695718501377213727544230229015614631406597426085130762083394083578008516818700745416358919854265373199622191 - 15057303735021534844447176214215737800173680155753434157855129944103944224294420151474610056964595601095589893071827921966852232671311005618686133198876034048060057093843915192703090056912349377799191684037542097115515121736040543618098054722313989497553953951977886255787878126038349319391478686645239577652509755049062947430884686969509008293205354169054331295191646420855854796209005484615326288175387268621553253870172396232201772004347501845011101096343272407337746472101691211228791586827834499457016523338095947042637141297862361192501592445010904136826913314829662446366319096389022431523053100757612673646732 + 6162624772038971628187583721000196357504705890080641706563944562818333669772147419256376666886346279712739405388890576635866482804767960343301184930468003571113527916499944554992193752912379564758130544706057645799577010928111685067427472094634291558863071905764865005144752399367321464804545367436113687528093975175880766052302624044389767850928223004462708542818357107080302478505972926837175595289812652888405309017096068710531014402974957489518171071618483101588944917241148996725037636316646161355792136819096948155610681475542890009372420172226312630625358358973463059923835230608584545590973050450616411742722 - 6159114768883278152763230282997919700480355192102231522904645788417150799391403342844914117533981993678879439137207443070597074301982172012663295434038689589238683373440574686392573330035217242065193693706181526194960501583018070383316366779191278434451426418662628016422573695428681514300885884055770464432759930153571539991784249636746813343808893879353502345116318234576286585221134260905405745973174437520698534083578852737673776802650347089843858993831113949774349502788056764772394086671807597545441972172095551477732563358250406551157836118356942300475667909149580551551637970015524308239794736631839959628416 + 11503618423309380566470594793808246243736282208847573211195469697872553477029366309470760835104036164000083770820007335955221156166525782615815957894980570446056234674417269056667756921676873971963246977476209325591723789702040254457242674296762563516910381690385852629130918302515497196017441188163774869642914148171028469592173552957016509268051963982181884957695141045289294533901040485035488772065977579511591031223861508062042707696269422493776566397562258789141902745469064624800582146701173036150109414667320421442445308091083319413638322945572007229072092806455742797214374716947258526172660795739817740454959 - 7267143389817565014933794534267634028790628997339383736390524380264295061677583280742558327591825222626798208449374061259662822501446253324015809301701647928185157810629984455072641327320936480892068761230565826286403662697824804969058019824778088750729962102058586710444977817940710065406440676717356680868209354699676993745899815079617743309078977099103334861748908539429307950158979906843109579881985152474738766471672651437120727231010130188439040414705613615419691986492971543835811766018686197843217573874348060775459257861659792938985087757663487797112641837996409555474543339684117524225274614590348356798879 + 14321032046409253392319651978476384009370533500726671962411963949332913748825599207940556210058629231103531227301943767332440392667030549119583031961468735908753458055640738982352953651015825559742681202443551561982562246634102276293148148187476737841408911826911945175260948663128009478509745600495791526127238543430152718192542803886415990374284788217278110533410828985471830134902615997192410728557430097731095532995103266435646655028530054494079929756649796841876068877992534540416084012468804004410722521250015765550925883444876163114098822799883751478214553953369730828535470803531845984317424004013567732605791 - 5342230672990080299619420732617364029714106729461040068116352154173009156800645346175781401457004417700974307402275018956693037506040941525978011174970698212281427929299006388282648794664133884657263949257482353252134103766099552442499200770212670069189602112738559434636296723448801296395569371887210778047492870450692613635385019982238894622917122684147350616105363725574764182553271650544071211116902159998282188465381893391145959329674045647487489683324204940207949495460986321687789241486808348462999565437131775800631365289203258299590067102567825851451314289357064281384018097347873440269716816907072909137894 + 19025137790277546416867906503513499395069845123009102425866501695093050168001612530983303078097191896390743111439740288259749991326227271737055545959489110904810061249643499518032511021782231156603004464169218957561091849229679532577209445900288482820546748035571113503824041031830805668632718072755572356392060823138932203098940586715500534734270089962318794322136265346454879006759748273582081484143600906261585516621372173041882522183630179882783928848139416543604545393494695397705388827188771081916502783283539053124682906200087083144997520771135613119236778452064340567460893887948610779828105761294371882670681 - 284928620851245205945338261969007191154595449535410445759736881040954565378391395051596928590942473861003086894179468160658477398188696433330982534154244970881759805679227243072548397809070138639421882268985479213905761837544902986659363727473062540138967227388981184815448046798014029616116493333051356922975944389740946447779806595630473581654454747267090607142521654669094664530097731121846540513598916368289743267182181899577480127856335822450118663735206284479399904611189278082851843405023030412427800249888456212621217385136744289341662678854669645564194676053687093956063975718071203652060037247730543825963 + 26388137319209997037093465666655490644490268243654768427203435030176087648911255882345107804641073435832615126028655481423752533161721289353061037682602825625253035326211765245882452418823933840654941401197372962564031858017165570171139028429404795794134637434466281567434447168461875929687007365977900500710577470034243204688659264379968561685149346597128899256621512967000648887943600083730692244402041214197666612561652127164812241308855034138582493814868437386927715663598806594553731254028643338581720703712017168965285917503680500797483901080867328435137727955941015061867638238373553698580721742118337311494869 - 13590339786918436457792124768604779362071012304313118613673483264497478522550592477716047000554046441079655157900412465893286418853900380318598452654986951370588595313368418708794424125755361414740636576419981394635179693070502829812185004298092694631856160604876298375093477868740449252472999025564804022975348920878291183612766112257125251053434162058480930043147592283048838283783378814600533304398222359102416408272152779260343128553842160642524437965311174229648295376894631876379859359000863821840473889079410953842622874114652309716957081105435253909842761415579153283508398445371789244451727234137468819065257 + 5942596353361338243074953164658361561489352580529855276595686269322610542458522929753531165998782955223489585270958584166120204943200151078216876395910846421358809558250818126065268250932312054165185659133687796020018838440481264227750226203291657090650141167597610448028985898441000336774734340212646030220593469425544529537527191323958361484998919023595425982676437353068844116639836396568367997721317413132186309417034290789479657837960594198821552717586906838794479199632215212796067650897303458381991845353132609133089057414263860874085585131802495234106426811021668877117290277747344129379040046715567582855219 - 17210427969939532901638566316866518495862786808463103800996146826939658918585530334489110858710218044289339378393832404667463364644407189745107564741803782323566298053072832881543035104981340961449104595305407829185115718475357319679809004997101848910524981231181470399823989556962610019329948154171623776870094756941389081569455320957869221240060861640968200172831612566720594638902692038492221158049948046263563835546363877736557279563630234621601306226310439044472958249783755370353436216753366420605265418734359173304269389402393903102578886909956131880709625709138613208398073616270393401627089291160725812393373 + 4931583496101504899583017191004355840723057968009697367891756311478602796401131217463738146075250115339913730976943916782895064781956786576127136267300450916746468389157741627498718606845878907714089113759117262625368821425303352658036233889664026601586971306817430535061528241096218765609454873807867559471547444919319045692238717719215501827817054890336370430099315651641876700552428710170301379078219297770184919716001610107682740969087333432380862966130888999894400059382783972114877126744928549018262742365070850379787894470640360558703269177265463141475287407550763976540206218989954298280647077186921839869672 1 @@ -3100,19 +3100,19 @@ 128 - 23809680491431891142738465691655665112113062202922884781130057911471162618797591181080472227175982265838552157623268620151859228940461680766221065702279245899986624551235793431597384416370415964986734693382180612249294074406813963115177946675184230801632375875912747950664082271721246062628603070737193229755438985630489545011298966598718777992419486655335021587430634184886143214587423546138839814603313890069795693571135726372706172200065108425773653931186599785747859220889263961647847041767062129988928077586691103249682083388060183694266620550871686307492282257374133012508856668481681671506479351662081854438633 + 21302180381905815694737888087023863943891768894532626927483105775835746969657543855114407602458856322478709663128205181651497762075675029514119538795074357253114296567270959064732387721953062658887317004888919562997796325178601247504253620190089507430259662192316292363489664376223179630897301243361160018331927853988301925289801722571838752299987944780410769199507472008237250417856076548046152338230035184117644360228944300181300241138329785241373443875434706395416508148845404210282530804539091468695763459973922504233339057550663953611801270877806706261554374152888130693144280131181435930446642900166810153798673 1024 0 - 83289768196896186130380152017159589998275264889153932048188195088149459035372862233039869845900498454919302587030149928180196206788756561050569806187180508265567602254752282733656051812214011508622721384441745732958283192353176995600518404140847873646406093867006829664699577446891423938667858592091804965166815465171573052713468455394991788025966021627572845189864906082117512925446845401769242633593613029171672317367674716848135767061776794198216119086242805125487956944953471940196747756152490695984848489636473459075386615720124157103508698871731830506363897808776098403054274235082086755431712422363639793864650817759757399895194943618211690269613199096488272907779581866765493305054468487210387980897619340488390573086860175017199349718074778643376181955380213229004906106122254084302091919377961545329729154993950763862275877577068093090399616598018781450011589724930145671047648276126926115260431506062315689016255177123804484572175072222761509487660426979470016290923775538935140641914645630403623543824080743199266415176288385228018815198427899901392624835617629393464876121313503527164116168582711949222433185596296752251957082444567461463193913745471997996027849902013134898168065589456087590188294906768815751354472790 + 372005077933276649041099223376330097576325931650069053883881103540295623177520305256399423023217653232223647377901655061316556245944087707962780101518209810773110635569897008105670319838227386050812008347178782394952080219330569489252772469237732407096587402874392594847269007412838811442590508714830628192749102576439483330698498238914328986899876579070059932331076006916772129879163055383572160621417981399379629690217717283426822640957197394498595890704632084952298623001647745785567622798022792057597812436954748724143084359448718292915641109767245402076160460864846430486790138075156365282425315176822577102164780821384755329368494870777497469911708473110366716265952138991262895904240717229482393941566822562202673492694140784241749631785350490457768265971261922698506124379964310644010618908510144191026266193493066800022766692586087444108145562352529156212488339960840314382956715154598275529452122124378253801562348364560972984244606319353661380027773261724444126689119221399928499801769987695231006153321914716886656379282810512297695769972610225014446845473586429674643602889249559508039802582637733629689998447988401759599154903939697129496231765103612542331450664618060127139121846571549673351917017890087371694354403936 - 468236854275027296789436417884669390042084059099462742378252621174313484901493835885550480030482260109675387309384527668629238172468959388072064004570156964957331478148783907792350168720481611727610991029357992908014090418147372474839690409250548062258575137734652222943494439198103627899770490505782717614727428663852158798442294435852584149310731635079208868989519578352204102679077729575411918093900087081371772520190286330455632843512845696934993455635504882055430469113879304062616975089163284582285843722714367681657977939794003256461617926369187645912436675931476974051459411965613468898965899971473933887272034971234393892233957714574999867486964633583903676015170869808570362531780314294292681141437607821010833600365943508361210805942234151756587133136504825728641251141619912244949403706695799298885767995224822788970112412033012812331538494628317187724117586222370211236318639478974392988170531992337028417595717977406417701617897947622670263629461614037017205660206092069076446459401205924397417287911840079121920668848727741399034326755438655768722796691240260926652320793190069865205396239141611265619061754308021749112334304053455800030419365412539439538373942945903303898849425882811717425214439559185470697430490705 + 300136808233009477906849424779026192004618220514984910955111281915220850472358497833575448751108467522495651152562153927442139978005281710848361317834795068746572757121221802195441107452099872671211860310860628805063348197541975580484416488948461539042808278216688450951363151426653699366215846664712643578309201957765835310802765923295195346114241207313583746706170197364444732333123018667551908718168907917109048135659069802078872975464868695690915793716339761108025422287336834585762622172953077750630620787919601211437323466655708312057976118360449680197455391805026993299432466630928831440319425332144942308818974582637952893951950343010733092745746352673012517334584593399072014391661369234271011277337014990859473617782658494525813774670860640371951470944601905663029070083526232773398707927852657741472775738530455444985335010803619584316025769998188669170818816489424608950365484776106023218950405677171914682616663943891736437035560452847647015588052088446880309927630089026742022013732406178800315792356709478387528937906718892535098661516431338760365112641987665321924635625428839636080206934966737860658430468217517098360399941351031210215292201000129180037563976217124112479335116285338783046126413144817837229510475338 - 331892860881740885414967336901256398838651570063257497780025008148379755612772439523426884274772058960140924499501024463840458554970896603137506133762888040933757516798340108484826529322688785123345736578586939160966882427098494210050782234150285535819988878535426409779084135527758294626506868899675650545845008139019597941314921500283203448477010991045130313741618499911775449838322579608141226285771231687336448881166469707592638124933306250575580324408256419723459860522711647643880653524698736569185981730647452780151445098939986158478565053465332287878345619199405125961429123639920080342164884000217250419194369422784380079216506729596432244975781750452035355989533746832004946727775926109374619922376446302169167199254162612590860726715459716074051774037341315168661205528539780005698734575018136423849826790705196375281120761156009911512171197115760455825872066620077458871591459214434467170180922333771491562878427164636730147897546518800863984581654140317495425417354092718273837772903288922074181078458988887624300251042732214858298724536295357020796874176349131570763375083894587528170174180198634299159539326339793340216293985473923164716986488113758740626094974999823161933879755612972726765319250540664487670261887215 + 284011400718059408908686789164182927492853914358044644275973022459163933506887758674276051376526903645379321494851682961481833080303162810604879055381546036214143701961504946171562989594738658629804279130783957028532344547027803435053121697248632431593335349447365835728022460002614236470151509178481538944075998125984353620007409528528076562462532283674412373812637146719198107142173621605501916199817323589080762261600192651937230138599541031965011185208957579130815168893613350968843511659019527689264995938804526353961497262389787692859559065044844154826137922998840521021387326824228038030375640943362037527290475048831769202961451501520836556222221310711982891889286783331675522479195636897641292326911117622194429634512847727629468908447150727493129319295454066292241015444552604927508304890176681525745737547494101291563081111281680640016883648920949482701153251767425453392120483825911942303726095551765560507761313055684987044056214355601712445579643397770097287962821954110866422836786520222737291553158667997171199684998746563430182905537635503459045693649574503437245496892951815019490852193190082823065194369298708010154041308131679335038381709614909295482741419076780700888249102681705982339218035163490882709935193490 0 @@ -6179,16 +6179,16 @@ - 23809680491431891142738465691655665112113062202922884781130057911471162618797591181080472227175982265838552157623268620151859228940461680766221065702279245899986624551235793431597384416370415964986734693382180612249294074406813963115177946675184230801632375875912747950664082271721246062628603070737193229755438985630489545011298966598718777992419486655335021587430634184886143214587423546138839814603313890069795693571135726372706172200065108425773653931186599785747859220889263961647847041767062129988928077586691103249682083388060183694266620550871686307492282257374133012508856668481681671506479351662081854438634 + 21302180381905815694737888087023863943891768894532626927483105775835746969657543855114407602458856322478709663128205181651497762075675029514119538795074357253114296567270959064732387721953062658887317004888919562997796325178601247504253620190089507430259662192316292363489664376223179630897301243361160018331927853988301925289801722571838752299987944780410769199507472008237250417856076548046152338230035184117644360228944300181300241138329785241373443875434706395416508148845404210282530804539091468695763459973922504233339057550663953611801270877806706261554374152888130693144280131181435930446642900166810153798674 - 529403894192163445317144416049430187430435732645124744990241753966966156444470487336641247043984708708237341203765208244016723266217474802058248098719919472430162620795357706514573907496867592776927026021954354806541152912404883125941706599704853694526724911320696350384449741718001718019213743638446917368557001340255610789211377840184864224931411785706035416836385629693442601177822732211123896077042412494639371917064812300862083193984576879518894231779943531828533345084031533986080169196772240963001248747443242480330100602546847896387904493228762130165488751233079104003629369781701989148361058350464669772080848341213276318355875783002860916205180718929334755322316925484430642162263956680820340106972358781310475417479965503474317831036253888041304688675336794474926809640966925432407032962085028185673213907740815977105471987038705358796218358967355027331325428747210768586033587820704416542541381116460337167457355727228465267332133590429796020669805879205806265545414643259036481520664835934029749349139477601365132116246890431931153958796750844502729915984767221666945673349911584056785677729646910066888363697467618509543425971074785821420836009823432472489573913256875281779759087305556780465723770012679792759626607025 + 126531112165878109890699092732738288965498117704028234137450587504983093076403700987200359651060721182104054573802599869111020766871336450702624014633497737254502317617186407879019389219990684397620082933274239004799493539608352865159159610053169203138378342125536067377613522201187046713118261508719010498316917793427860348614920935926976040258337696470895552009245092279005832715781775096974490823571839676083867433851931003699240083566743474007759307749199008107472232713537571736875417260187892302883422369610199414066626811562870693477234403435305570673730407588849848794390241112270541197907313150595039681116070926506934136150936484904950911845888242249794996127113885308329207647193604527230546280349139163103658166896970301446549994026170451869649714565322805364084388568807467039167992242494521515522073965704922493965747550286150476010057429769042789427697644697156596475836071656639548436295755471314447013471933011384742682668040466526661981933168379462013212283731896991997022089658799052236007087097054441923625603164935759975915522516076295435106016148311132901523212417844655647700270158640540515499369621186841685067653324229767816038845506699183000445459493872339515733767569778571521917810684415618304123152651688 - 244206571989988725168531303896734282614846370628133318075184027122674957719132955379812723433327882910645719107734385971075024494480656137168440151248281104047467468106676852956367895052456167662423181165805026813167956568555663446288831625562476573559379934647526325128232644648994441768113003413553104112106336953079478432893805866220487884108461678072080512538103242594833285397441339395525900230360444486913325112247776096835729096551718300078872451347010446450436711083974326436073181652813032741544456873530203309525998162406199747032450311688028645107306395626920559182139276796474706466556620500586491923798394918529417472000305063843557971393656805765023597922766820866267253150682257279673957236012551254220196298570637537371147350749880963346051882810867591865361634835879675369240492697442032327305526206703070185238684658462871197235594105913964956092607360599294655594188894066888141553406377550478429700702956414293210393775090460384218150892341785272490069988924263782280038816947785916711218336561448311890463773728381858097199111557586478204271983204231146316597428377957061464634583521277935780430231244905784090573797771665675788967895168935113351981175602969475409526546594354096881501141391714129932724797115831 + 361143730458611824657177540766684439058051437212129172324022213118690907918330983532553353057447143889110591886326297269630709338537810217539207561140498198065936422809669022067836623542031894469340474554591971940423968115738087077613915446099226026543320242234905585483621363682492451876802427534039177907690193030006282228649566000111480783030153329966382735844955681697738553061626829779642354378932724477674366290271107509372684957972130683941396833107171932030316365611344729958341237675075289412817554199879808553278265068135938130024945405787800868500737658486006387834253843276932307981500705201088192991310735734222810476359638180008281179464898065266719739910993474051978982433972797808708375428139943419124299551708396969579074726288123043824348145525113000797608146436267528084696850215404456092127544425292953337554495741067552721629036409066086234108432041212498764142854293143999637328679108267267300869685121849115345544172558040632684092856260953788016956993480575261006464025648291830839155712419443355280105495845331591812675190922387378583898002306045071522566503466449139527874269109049579436306032036069331095969490347827199545156656797051416032545613200344335503873011039565871436808842688842044336078720103905 - 195489201507160732043511824339998179382556360476200116412116525529351027895254842611967948907386853818338529521067303591189359536990345756846507100029899529132843810017636314552727689704551606893214600802001606946036912625851820865090894535404232202439522934387185616614940143905747384208512561052848689462208025677995020351240916784942499639747041940835689599973392897719853982326006708010071605704147650362749991907979199433775650851866986312605804949481940610835962542744383096797166403138276180524498004214818218155397297944919878694795062743631297653149845403240972991132615640060466937184798467916113898134541163336522412831457613123709685796551079894963799882501784210139219065804956622625250541823300880063164682625557954671106132941420320037490219483430870456230265751290791267368910208287092495817501847691072975151304723111565724726798849513236137238056367310058266435183646942058160381762734187757348109661904923921178515216276459459590028316301964885205571604344182488928796252423871148147096856352331139639125838736787932981616649871962323256776173201282508794636442097372391584255019060834289638642514345656262986135675011611774481074904134446413477070992704564090162140159248498078202311779429616315250846423030168328 + 335460921583790804997286049588082408340253053796458915003254470901954745055175000905585264095829123678111505468997278822425044959509265524075727833577779720798945962511930833388295749677930902895487928650950878442555597225433107499560526416424994253562923951421259693727550200679971975197623565390857332689954651627785572648876547900153213440283575890012291579650475499258913405170732802024190031085445745416554624999115152081022150052810899810526974261300724481040359234708586695912864426138877724834732671591277809148440669423580303712089103090149558217051668130882085413296754095256248164063764770876053644574188862609721936083748519595536186650570168974805066222250388925912532817192348795826552329019824965807197596817457092455061633487850657651617456115039965878566278309410039681538042223990277822844097473063880524230701174982212092379872872693399539140667228353500825789912316724525300985110600710446465791321539086527301505452462569985787867276310111650699125490480854967713901195470741868512811805461520070203334600945196546383652039613305643909398811876516155580082236758383174270162059851909049405884443688170743162304910614597775009710026847280078110411868291642104452663041785911961588128977759477204724696130379869587 0 diff --git a/src/public.regular.80.arbiter b/src/public.regular.80.arbiter index 045153e..7ef0125 100644 --- a/src/public.regular.80.arbiter +++ b/src/public.regular.80.arbiter @@ -1,3091 +1,3091 @@ - + 1024 - 91627777388925608683661594735129665756971992609234738363553590116863208273109740622734997458398356211508803688504319979761871694283491572466845390005106655327461306854683056708352579361238543869836202184825244894198944604021145654204600406451415847322510390048548032414650759947954875769173861773777140505813 + 105640570737201057902331884997095241457724691114154926162201099282947501191348954190198021293977595938762887298770443727734877848744309115297888650533251772753954910571680864647466746682311189210669903695354539764988792993683501504351252228271848710934377802080658853554092571597422816160694809218341512603157 1024 1025 0 - 89845043926975683159263323710310590201310684997997473373553917305323305264555600593770533334283739403697589872149385838932031902272621369170883440435502639262430636475655836016841636300838867128946669110229959624249371532015150558100720771369342979639552464068774105148357596229441248470744242800484987237017 + 254426393409213119812500080511218073488986683156618698902308264601064164233673837231902891670730645100948727708659354996757750953015435928946160971775262479069071516939075974729412911512775016046205632751600580466641001876741841946332307681191626228854161005610722185368896552030155203153794792910467687213 - 25788042180093120547385301539479156696076119969001818097741918188986947614647945632330937074393360200827940552221704128085862294628946638623955492302331370133602307936104364242017943131669429604283388403571108041182460395984612694343190000274974757745568647419429386808463866351225889111733587423376447148257 + 48521419293842112448734124627737984724863191651349372852022063433687616568421517617928258687243990352907119849201033785201231192284972310335759349964751635578165476166224350817717654057112694329326187426317362723656106215681670144177055801840616463280884798344508255091034412963992654856352328482485211649872 - 31997719206379712570660342659362526386249492213858280833132090392793381279815690919642402002932967091296841515829379410267156074910689223612125191904714437929746987800455403147328492858919562811801883951825714580873962182170487347551175283688813089570111795619936497603786158671783707662726937518742942018556 + 1651285117035417772636797753723277628117911777219478040524650886625187925095514004411187940444762486346061316374827707270299769165684631625850021452878742510816037385177327372074076740986189752721319164032791373321991181965477471769246616028768661751536934390430547010559771346412598126071548379017229841227 - 74896448033637695500659870509438026030306667352555164586241518611339010740763918978040212245435141760809971412563723681142978198710842179297414000561614965960991096447255896395671984469561240832521409683096397552387654885844955516676333783072604259140677029761210314494181458261454014966222694177813488062219 + 68516326384484314696085400420023800662605057089682204786111265799504314312237962052234510618465524660823716515925745214382484892244590708783838186295368694042296364894351001376760614183643425858674334764214312089122694960922054591735886485518417046913967303706181746762922872477432281423770362246580372767160 - 30825614612122104007355481950159243286385517359984350971483773643346222072996100946558783009299610414299540229759440314692291884596279513128771374389276439099528073556687397962646249322174014150805574831962684516846546746882938163014372368550199009356051222859483069981479047571925098151787910298212777432139 + 35150343601174555052961235318856065783740471792330220049022589104795569815396346545223399378125940349573789003333749448471722148775499221289094215634293064144037818696201611757141392581830659666995841452613202129606524126110431906029667792623584023388362242461639627582070829577261442357245233016640301261939 - 21759193287538622323834732060897238734174415558432489950416178177927517305159068393955246109589586220223323214950006459407835048505176623350706014596035746731335318786993952544272071756701255056142144219496659556524370079281521442246746530218250463419106918544500190147588060422924208614772006819628177434377 + 73309768842163546425924867891941275643814975082059713640073120829501179720291490474018921734938562944300851439220091495438377984447889066594640964053625615914686215476457590249989251473181004261668016309426491775204246860957460077362083918134051711405704754457666588938834146341304632902330306085001166751691 - 44854802839000925610619876518204865431805146423223907296565947354508379767127668112377593669190648199204586569655401643445306644019044001985919644017335560914420714292548675688702010716460350137150988377246483432200831943199111349146466188684655503942305541074924649039359266999386713846684309611009465460745 + 86476530202897747244232771254803130688692576179504707781739780898695935298466954706296353743578036896681023434482859637834432319880243920288378181091525452814167187352254512784539486697506945196608091043544141198733699441443352587423630438639307699059022563343249496435482781074271049564374103114206095476817 - 26525278295672055025365859522771397377910191618475943268205652419415251601077712468899555292615843570639924741194456378921182695742319922072274404239442664135094098437960013336245639414093924246726267065304443641392639424822905961646172535021256537341202105018325071158595903048662076122622989845083660733418 + 64172555071911824408437210373106592315014097665495548591652263714901095733290344608783894979303391372762820891348965086726173254130261462112738448925447105669420722981384303722563837542519507976300813587409954045379801598101462776289930648440683995474409901582347807931858496552922868246016411985322899997605 - 73332173769643781334232172187787132231290309257822839378284048650864044607274224046725179169151715846057954033992178051692366878375610365333390564353796626110741365164102472818577384701038685165448645809101363697963595663725234759745474435072144023019949292152495630296375675140206023120622158470281827527877 + 21174550943622060685607131892686662797366382180287143197149451882026837788126029069281247455536397794341366053905702174075810520193091862675121034581868692668779660361271975039501636213542334639221457346471197535463473979476935840352536090505787857085002356847150545001471941467382115862230332912030191858878 - 3065620399966367053161643306262427071625854865993282620182703432324516737833457086642655472168608497664514310855048933769773163001116765422958498840193894649317491759363192266185483355224616771601783956909291005485557535274491976740800103479191121239887122299092076196934654968403273123396101616060855626442 + 3683634110737494828823888126520624673092690423984553950221462157980062656017071704251821315333296324580902349320057474490799177065615276050699825668677864266249667427914185802851675570306135735713764949531620300750412048969129356224222779731243936697543580444021711502950154767200807993244965750441208700626 - 63513066951321223269723854620639202990986998875419209609753104818902601077311001662563564425021900279890881655842681030206421817623739821042433090153915120077845711379799524987654112731316073167121261786925757607947030006232678598830651529046512541197771437622589793083144960940593910322697709947576496082986 + 82142474323708625081236220805075609052756581999812842655779778811030452284057431416920069620177611111334275468239935382299485382867651525179218924699070594131011659398348568645938151258191650503718402152796449954401685436584468001651446258118491555865540396870977417687763555398081732356459401464855623225926 - 1058322501991716479165319179294432263776222576910227593624447523980926326651183736325759522172254294114701262353767394958379732302951173704072643168637179747842260825969151632025432711174429988846207171772965620380433463626066857185566519053826182772790527228812011899080240886584761182478390705856882693289 + 19594534642389287971004010423034036373398433517852478747776756934605569074131129994961186349584079971124873398400106024375616990549829100139100539082963351352372172018763505554826097401476453824766947866263620425849338823064047354028011946115201690527420505616884386583997501409355373908092238647491226888927 - 66002012813823019701285725797277378555557347001492169694984195939211116921853386027960476141882382054282925011887108459890113052668649036300082210696819665823782308338343381013108658403947131018260396409277457728782579130506983403839684504869912678842000880506378333846139382177339406688084747583846997271193 + 58602321479943079394184652293503542136026513981391516968720064934664497141217474505639730659473789710589649497636203165685301262992452984012533270283603681223888111106227226087047973683392749369076655370940236513706258846320899297442129666993345704790407497577078308702707212005656059486607653903115872661721 - 59246576504029245547000785851685025033873851505280972629004680148316652974873514499987748480226514328115453308043116970425806257237163538487090483060721652125959841401485197385959325920266405995370351894335568877543559355402141312947613556320245407097275328679549315113110383617060529412394023008684311736891 + 93118251234131149802755501836196784548426694517446694156574361592689074271040998908604347769916980559400103251313305590198585883365610644490753864667599327068958215280150392391204163048896391929544834012752395870259006100921425719603031416122586256722795382788900656034417944350232589995705893108439426585228 - 52356719908817597041372826587850023794034573909462755981518422088104793232032419580404568215448920010465035214428297854398383769429012582345132421410200594157015864165814781366920052330511085120035616684763708562031555665255760045000799275652518846485638800011194223812115459351871007732046791921085890088404 + 89629662397318968055466697738599000231900379240770963105568600659983882668149491831152763936504470683156650751182340087909546183795022664483814751763901493392850003074603857213920620729497528737957849199624088452351537127709446795579604359737738914671215064616488663074159776061394267882415835856304493904229 - 49582197466804579237880646278053869641641348978349935454635953493132746300207766300399274680342029657516241485498069761496973293336271333611123402003599769833308563482458340980959601720868768403181807923120711855807785853355294235958421774447483729017471129111116545293103643212999049016171915032291321439478 + 96982439454992818530031821418691139010926507833616990470843119433340935999542257645692081933258030972563943110382857119705064216876045999531772836620423069731100960670496398393567411362772437392341835136015574784422728228723952753561922026092264497567669617311385622693353641519911133561339998485882553559666 - 48212654888983892913439772190302524231847335921028015517658556798251852533044133492167391000647347876572848835188427079772431881292736673648463194085272461428623124167931443101329677004261727880148893071804204551203113798711879661925582493487878244207942219375635686515934804902983876367797672359495284092339 + 56113811556103193045968891294564017533789468444805556041736016386303698359247225879163911290356445535873134651122479509738282722880723158290551429590683251537013605875437311822220703149877309593624245811941470640446882845190235036969544591076666750351654892142029139808388043036589783142088273428339234599913 - 22052997465901393270910402780844995460132859939353808231709037271502833420251077256049848457973778403117599225615154886616447321745787187367611509882355007910625636777816142522771442402242653798190579583204274450973345218870108257244179466668223428840298124550127011952802370663423407742570771752684780200693 + 64940016078234183582447429648057324061119225780196626431192422444313009972432954203363629162779935293343145535962152508733962399037395510438341473403204317987081514941518842686777711504170930105896736119025504555953858624474827761294252643824749933821311822886582639456125160131846149530501582188296736413027 - 77197231507704363366216564364180013881807405795070118535669310035213038945480948675305433203055975569191701918221016332573938511196832337299535842555002685917139613891068455959631061341935776951929369814732813786065037896515649142956121934395533908341640129277155856339931269183463299980151938921842976383056 + 102967960578576034586034551493375696583170453684447409506455781692946542099361309328719581812412461189420556621458763050277640854264561641781831309001806648725637740874017924201312193203763539579047858430000809041152929297459027799861172040855146481120328052040817314517411748730336864405431063265117999678231 - 45701510256378770054710160460107041896151549553041891799723175742911223998453613649164826948234478357766779773382128749152059229704619894600532382011445527373461861862292321017725136373337110271935018882342272627710141953342648926749514170951202490644204006227967961568646786109370505489757672594026399687876 + 16862538458729227109252921137003151946619988571849550117421766027512509727462563365475142402221334010629443195227565870564519605875539737869266708997899234710773117232173047980304826256055405976343687968491705375735751720860544250463440111258258487930716127614511858086044543075753494836578674654933642355065 - 21382906397982541765652802656760504382683463419903238113489762875424941789953855596806546957184603958344822870991262766546971123555744904544835178097578394503338656646855857715002294654946102003667995356118109039396732809754384292478077563102921475647245384348660760764673490002745938164847311453546450721192 + 43725699099984266864147606217777488440378990843970572040090404882211127886438834861719924713540605100971306092066689816625002161256545241334228244418916241886471267398676484375226082310723167722381278807311497524996686880224489072322851942627865105267514984942532200763885991743950814601876560518302621974476 - 75015677382277413106342149351014979889309314309114066322813807665610846733113754620848893114709094782281963469294763571668421400104475615691726973103458250398662223787835438546720625875719831050090209943092504765082407137802229279221337310389993194772937183477589052868627821314378952838076916386627144176907 + 18081059254969736445934592099251017467049033120115564496943612421894188130438528663970235664549363018494522397949455896721241726938453805484072021533692075648535117625794137613508610347626059768952351507540813020269047817215543274347303932782528624842265040246543783275166101470286267481481853098301894351931 - 34707700239368805732470982837646198912451981955307066372364469719494532842523417722718694722152046724045838189776300110848546381970356754566096401563486025087604061728062958531395227122017963133922112320075376762879507202614445381472475619104043608823166070951505837429787465800943466419367656840269002437473 + 85239274704488613931259917419100701326368160150324488647168085161768191665920888184011832448843177293842436436748764768300023633895429908277847102133114520075278637048219874164140080985981730730151944927268888063709377453869426572977689095053591655224189508339862937924923104048239679258290835105764863110904 - 520578142211239995797616963877640319455916475182352190023012986487926592579038131169636566691726287491548437502613279761923995029503933054607761720439279723730727641549086725899240896837989607170861717035054629283264825720971034750629611952377301399125662262973943441611113086577594175044730716320042860343 + 6378967576633716158049460834148986373198193743470978715895419508759063815987560784277975450659135417947387714844792291346775319414648353947139135525317984979698349158996436288470133174573731793642792327405681038537081982009949465048699993875583883167629840831425635038420878071266313972774501080561261116428 - 80216009101690201763929057756068229959874918427776833137988972257816249104489142958406321073315663212909922462495351488626658278171218640013137348859838624805860660330026766010116064607007157390273654404945250163075154912507938345212741054275872288462477848440235866755898072895165126278790471460940260646173 + 36097961991655320496017641787555164165253047249437786617962697329387715216244370900180517708100212685209276545692977452938286408873667487753497380483965844866220977127309883698495392875776774823630383951377005402983997465544106357359054626037914065301877938099745142964736463558425744036492343174648696862042 - 80278916618988287713584330535765929625923269499289860182630365518456307707915676274304403307894732911187046503278038200947255899275359583976864064512513824633603190825749674645715011529591826085042984850622651661434608829952610587546868329005303972206647761699298056071772853067050468306801724566212322899718 + 85069200524798884886417213682075796910816509643903271275270093387498332629178672318859062270688743599819389812062594983885880479012513589752736890062095808700750512911202011070415672853067715762898299420526442223180434264202148409839997173605132686813612089135575499753593209871824839266648461350911869299757 - 64589912396055693789783237133503540772631422183344270284570983981124658128154896718572740239549917740575386431755601620831217609990354721236435693692260724285853997768082579084546438193333480691014552877404611619474434616938172809271533791179876201854087070437573491480371071119912449487727488349312419082895 + 46392179576774785631229375128419054761548631289243028338207253110060716286067502572290636958590170398350452521020921949662523358416877505007852563398084574119579121675609874177233049167352858604871285713761931784349029772639186081214809516271199185314063627866836988916909366574091815388687127030823044828743 - 55747685032633349793562745755048855235462951646124096399639693910916076857986139385923745899291477873446509137314172707279970560201897938668665720116096448788894924562560110441924078660267070432335575879673487743892370808939592249421023661200587046822608521764790365764905301989412545801459118232739892439758 + 70726717132395546016767745040682340472505649447906269132948214825526731940199919374392569800864700150465695003670822185471997222382551589935702985256549474555561325644944287879602200228047726990900874836976607129341279282436377337403629550000702865146877685489047980481279413344925471497412162703952952114006 - 68460291741095452697456718552020511986960734869922757775678354853955531833817423352907967521237787929510731160058202683161773580664170417774631832586387527172383165189201010931030682958398293344405170919934916842476451386830548053142171127395090489253075529481581561151097985114536467210218402388770899997346 + 90227347489583883485083579356348120021186542940018178627276513004689806193110074469789762523669052298281233107725017086345778387518404595588829127470897252499697899621792967227079625939557887531784398622742985393677707253997145146229106025261695693515766280700457407019842100753809601022256940610664310594350 - 22996102970207813464326919164707188443471398185693077549240862457596308908542284970635625683525708651167119677302462526973953529765694341649625141093967584752399618071759996465439336679612872681900459337748040037495598259623899477910426455898902732906066089530261662191922336718112121886666422251099457868095 + 71598647089124615580309283967966772274164277157785482808893027613820421203212307964003071802494416191815438278384348879343848299260007399425591907194793274380860272209485513210632072010612585930236051391765728214122400586803171117523440544818237536622012834710614855042968266177476207522257831307830664401790 - 78819215946780737052943028785487218932862180290075783581050807945759876444480072891328617074528386440993678608760657736384998334953693290966588296748057402261666281612077902300708894669841609435658481310861132468694807767394298451936557627640253717616394432788280891800220860747813262518305607518128346677900 + 86539393324106772652594946960699250776384303007675725416948572900854778245400742646407733875523826056823000009072213438989781947234628220599208637218452473981346380319153825124525728628028030784281353915092852594260668007100424882764551155172399456047036296381860021952174025274425690521467627479134767539205 - 61718899640441782041648822868263552696994606745554055281089599692657703472492177543567162592484893954422367886395031172764914264657964598601419753157563622473959651459170448455391586982228254479625249930107659884327149606664311271034157390144651675817723526153911115622274977809372212079146420949606048036637 + 388492228710893782256868836847192464526389191828336057702036058003783644421841915372288663012958291090478817147228091392463031278946933874528863515988269959005951410495996022620904673246080685597737353990838973836014015092367069938121189536000529616319671574265084938620369154106402273351832371212930467613 - 39667721852318699040556133215656897233714187703191264414126557227647433068958926579935226562629839249909291638949120725506046737022390074048536773538887900636192883252867628431943211185150503828119091005284696171380019898645053246146174756971255614200540341729101663144113295569012903332837633759393465304112 + 26941848501011939290232872125801799787659890388319136220429095226276157917544231473652953926395599923179003345469282469321624232032484043843121324689815738945304198175679145968788321426034425345414491321701829507035913699497667410159565285284607692850062937844525334760443549799540876307875907373385644083228 - 10618984736827201268058165201877897411159379995961524966842800993706007402499357615427664983200738925389924371561490794404488992981804567465163521609027245877470650581509446760478760059997842395036119260349898645366504081135525574878373156536506716661916407717806182600876792240811820539530862057092765075956 + 3003951720737908841442075690779071712411269568780146761089047449158690462062941630177112222657486894680869588924633009075875150105463767898285686896884702932948860536864425009649047719275246295073277735283233831690839959131106026261766694905695253961151483777840211447769018249278360344731390416593650999902 - 5245912802192332060831710965504282231663737110952994218099770626399311178002761887482307048866117436458346209056767416909085340408659293595949527285985660569882607884007023786359345282532082649722764945025718374922855368578429773967424443063907108091148821606674983075119091463099719688760020564806672482546 + 54758626839291975004800011692040450155295264053665525608322675515102690161505087174920463723930298681894436865696743737589116400847538447229922678089103126006140883698325014191025024093466081683570719747162624732808150483679165402433525923184853123581448249970184515941341547478814221759814962555120459682321 - 38268666852909898365366328469029287210841349113247759491106733045010784103918585647036344879764958188199579131245025048931380372459961006695910362898765940307122976760617727069943335211028104178499028754656020965187854333987252791134010476929903408865244769369548411165251386449693054144769338759218178215094 + 35724920143603129931016991492015024434876920847327877719255299411519628005706746404227239759078129189772262330514182165125782555442112541466496188019467186372049675242465453973111925813525712529455067346379585979691454489293346033303194117929272466756134686689042903603722315465739383312290341346845599547605 - 45320262051841924951738374945550454723368962189693622775304973562878693135593553883815515791875312878404759959711216856723998850226152692714792966913236412429239894374671877766255595361404522033207159310326580936349834022040958852298956799232967030016635316425486688096396076606541074282987213782046069379310 + 76544849582326147419465452607121045807184393339232617670207573015106756963721674915121537005443519277529586101015278791258533456523095917783253953011415068203055904088724946568331039624732567356124849769717204064729035891683583536367399093655490367394272502295905484930848023541801941041066191731143591373834 - 34679454167423802350724308426580495255972877263149838581217924809615789464031029029085827813574774509398458615409440085093248821613442337404890244360832498124356652281937412619173261336792498725809476490555561041103535384240261422434290867957856916339715587997218263309783650796526711417137740913870067028104 + 30555756021959012453724870844323388402943090992934272063712000590690480384308980819132132634660639348799470098351250687554055520325381824438239859611384029519114416972754981553130529401781812847553754205684599684233479194873687982493813771528644447063627472210745345802175091587045040458302313266361839651551 - 5088563817353881512339446356778555299223227263749621005003618474845163755694047859854652535883148446811523267880240546790237236016295539386292383377601923591015777429071002723265815864699934661831328978571719298290741878756048574407136732057612949772015957526904025343603166035127616192442940430699743465232 + 24898554876814457350032605158918459035455533625947185422191304976251702092897274665194790905751817462166813685922521195676837324448156410787171909674874096984586176746811435229079669557835296746987834357075675846913702704390954572114961743808015199331717920663433998095733879331832155534968910276365782321282 - 89347213656182286642238490414449416502685187530033684181146394606624262819175030841476668505915949207620007916488043808790284798849059166321821152137129864099100326228976294198771446284109094236240464332395035606569792342179324451349059865264029877959591265445455791430177165573819203339343132220202207258234 + 15126561701464885049251025799585001496748861786155927896469291763839411205526585026167374450316586064209719795335056253567506172547026194941003709428817611887194237987216092722634995854580238055315632282598391300547751746556377344215945871191423662008207664701665008384711419363858280348126066480368248611161 - 65278626293269410817181088466924555172567073090776846533671619901838313086316360904139074166446133877804266273265631092771538975569405045913293961880085134596921836107786350748646593060050072521048602884307756653198392682700479856213258145713196933760349882732967068938174483164121712469219335058349143915984 + 16024907506752571858067652642006504587810855912628044659941039607832785991704214136962284894159906871682777146034777522818352659634618833681373421465575803606625313849246325743676649209247525779170043998824979300078435959001174974318940372712323538161692258362045271353517768265385102866673245399160084136701 - 62717576013107773313382028226973160523992006879035783984235257863388669714199768719346606828306446905438338546545154662431602918849348550852498665989229693078235640364373411285968051027917567006939005051549466181722027342838754855708501399661625325622518877772233595061977366177223785221628060151623288172246 + 22947856908670950811039530332161256958957956596984629186521392909779848022500353617631639088981515094551139582814530850418138434431719643789280257642809777464706353760935519199354518269549260178604242702449601601706772269795187788468072422510493046006779323705248872474232346394712900617211404143803937242045 - 59257183272660247317104813336313514187492406101936022890915330585882288383145930960208234483495968661341052196302913713498904056344155595820915305344427741160737319658384129316341452813920621165161403940450017477786529850190652638403273126850201685672482745755530035293556469211272141920146658278441763630346 + 37763231519170070655542033493775315019503856355651894718581043396915356899160486034291075193110282367451522383114188273308741159857148179296087313875361552267400231649439126644641001931642478705466853034341490271766733175971977476980118249485648714044462359363367332629956097885749819816835536559164512131307 - 71070599224541035969519600042126058352470633665843215375697964566771665151012144654581836120140371475238295035836062959774217733031263135587826908955165029857782032957892404491015413375147162482295296539916887524892025745838865390899348767072938427010682082416541383308583480364524888345064276405938258954603 + 46386717993318912372818177917628729357136803844820173775555249900579312540427855495029769457544461779668856133333149578656014398539104515853191890945596593798293030312655475890397148153507287614468948723522904603648217132548112942179745612438236227275259107539841758170121247341853292228904133338670011271537 - 29713116989423756428582500199364469182047467345245854114238134566067794232303480903198213229671973598286731585797379649167368093675189808759303736612917892048642326261025208053810260585538675340320020793772600263280919455793662401020922543518285814594439783895722823672689699124000653300208361071478968974234 + 95128772985742374303835460186446765510377554900795504149382000877433806565240111829165735166872921547961989753913859853648183913777362513530359387786654918028362916889998255065014144206517573376010594535086172495223422645929111004813339016689756720939369805556486888487345106895319117707449016073995890310996 - 1748662500587434025344355974206121986630121973496098263922232125484611438088486680101085576680048417511525422291689304050993642793432502721545323521958656302665419641945882238510023235567807662887843840530662904574077390042617969933877144004194019128827327497173786376483371508839574134792549655656596156255 + 92341977053194117614498888373293360654906437025733174539784096454680287997283860899731831073865294996631743770665473055018073841035717078152685118986781299596695949704498352048791034499850643079710371096736028628071005004906339465588465721033093718389202711575982474762915958338531486242275749687047324192280 - 80704978037126228626828584790734038897439084300590098838918778632132531036765185769528902776289473351327476222832061136644310337258339622319745535423566764179710739706392614214434054841023378193678203085215047590601979172802628268081751645446061437556269773587151807410541637852440477089965046386833902025754 + 825245184391894407307235047596804103046899199260624301663922527923939338923710949446101262411487547259908935290783428261524069572483637332042984594374107386350481147486429569557319001154932819887963740854461106636415981103897660473458066585926876871924946631794936642277104716681890349996182256380898289024 - 20682919086622540192002012175907236727722979576312270107088875815850607234575292759375354658438860138331860100601686936326973086983218498130475855102395212244638908110772131416974854724662050213936920101324086652054781479423730446300317335990904068771983629167681568944013332856402143362114427199147557682758 + 63317715531124769156959984351231603586491895565920504466109816648023321505588784580317473153931313969911377142039976985994716641234838015110498256670479093055234511625125423354173231138442739379164326817260212288257738983289250539362099068664734316595455113399492670362010641130328824524603408251221864775439 - 56579286120513815906204631055302563756286129317088729415054619508992953322107443968537979623596376967737468825676794011743717404136489951270018877017474379006609956975179671712833512523687385941129006372718500150716984969516761842390008679695694647067742209700907500090271380094231551794409747606012939320180 + 43217033513122506926670520548546706486869509408062416746311142874927563702040516627783589920498711077749607204122569805752139436600166177963786919658319789003025015686835072531658039619661507286982425075648385916615382035691418607081811369671734285218933971754482489592211586063400255473681931670110121056545 - 6665489562719029377340148482631336343535472197737319997233824099665097762257087391952358978166297100079418570714447172179604477428282910439471435431576531262135535558617867274686120375166165764076866178246919596880746654347699330777472072489262362846548354222414084030797838939231780769567325079942636125563 + 38554771132227559287335618309963478284339732919726641938487177370196459086692143149829333967619400503570471906467507612009901897129584627184143370153477999232733148430605641361372006909998155700083492228524856084176590649147759508297125985669849585159668967144552386631058783800482697541800805700228223113276 - 73098664122044828524757810565161646800690384428121132169132740051708003722950275863765634281220099135347795027309293561897287762847060127251280262182855904070337358968759782103550701625426958992790243702214198508309618142376408005818103369184949966403652817035311243293217291046800830552442153141912922071821 + 94360883047370832626222497088176928126752845563967422904731807536766663422106317669154072900957142717706682498550637582839793118562450487941392259785236835239981328919737804054382259709256478406539744844648891623076639058479401642047212782069932110056870207320090833004305467781209243131657899724713954992508 - 22842511184508471192438615541745618038688006954704449733719324228659186409144797566348373485703790355341289681675540009787550053007797550856479794438605770772516495358893359406747403168452150345589632730058190006119438274480046770730943010766302423314501123239402489967881433833724557284954722762545224841573 + 96866775381366829100911848858055002784829301302946271448247440123961533685797773033087357639436860810382064147602387425884717985516286948564244879505385137872746071980521702794711564348543543539154027065750909547469570565792323561650984259631819852915615804143778834220125517978985039813803333425345902726057 - 72747943992727916347725627771890526917174634214597974094066528937974600644926027858540082681277678541857639627035962491479983929359250077121210771023528047122315742588144997073164271946064536233163008127689933861675686165622210448324440063925177346033758827638171602358494921254089886033021760222771704518434 + 100395943386958246032940293917505993911658896264545238801887512961259434362642976187342979214985427642155111538856022009995714862711545465783748408164509654908376809442572260429527943549773038843190908278279821220197045577095473238141763514257374124193109294152660145525172516096378720833574627799419633693511 - 58289631433468633833613693137798307671760630382250436611943766831403224583585358135430406820424782671044358716658724913836685011055967717465369472524829288610166833542675743239792208997409865984834031127281091230601476328896363290577049586128748621861118002464459726760933374092834364698944219682822818431398 + 33064234917663779641399750279380654969642848777149100136314486805535299106530220651306179781772274303591741441471580188237648049418456682523485683450983209932714147674461901371820897150163776374618408387257336360869373074441335326213089889718227631773914094309957122745883879429988499344917139939110954091315 - 24559049128300315981286951374414711426855547028363825636946470946116301478026059034150161658456784003503523960414982918908320107143143685659870585190396443766561658381023326994091240050449451966799944634613076083042079521207245622966604075774728228908574798490233731759924812453881465027988478900645513540179 + 24521799386018634550501083482042951948044348275259213154952799307308463506879754838543059105009751193555934091883242936466382353788301824919784166494012383116208547457769183603711530708563459158081216263730050089802906959374034074513132084819408979863159891657725637175415932179315302563110817289090848989330 - 53638901552308473068334750610208724509768406868539679498675770705804698048186146149533273612668052113337727952572676759751628003515788096938942801109088201959380537328918785535579424788833410068935321724712931351203806725823269941575686210599681558077723826126542618102746310822974246671026749685781383372922 + 36725204105992776967331151774847216513664185707622629757393817049181092270097639114078214846172244416902945296540193468227753654676015556734062294979449775954393631369693743339529069699737390940571756078293852185629224074997912520555935000384376907057548825144930999980280281808009325020491804923202091227269 - 11904798156344871723213921458611860183808379062366486569546448801413434264094445794988075951777290862990035567828187852721028492642013149004385107021930613909102936819736912123513495051216115925814196285295347474129881989198072883472340037191900410460693264998427893889638789229674321253440178880334525755209 + 69687236923496780324187493063959552189679256579391807986583871454404555242108047464545096727683665721670421522171661075588244122263637360178496189729205155124173920501907502149870299700099306770268155915352294182750061841235424149210033701428102837720737885464520009708925955314251893063509235942662906695168 - 30169547006024751034929605396204178076373413981587178928913435168967773615425040823107835332285059141830940797346389364384691571417485203073116216216763951012077424479946521492573826794486395475888427032495344332463285869182348651111535035270244780865500787373124857427415348062181248962043935228940505970468 + 18492416861239211800761916676831920486638906848434031179056170857782560715458538661090560441279629741221044991382959375457318280419311441902125117796870144872547673793852371761859608483282203063750463004919132674068827149386310107513770916491119135400938450824996285709283913596699120372010800225180841121354 - 13784836778497661950275411900029501870581601032957034971130115280983207531582475181947455903169034299371318944837405830731087062085147639380580150736078373005997950608121933961436402876588231708704116796426160451237233984539399679047775886453202035979809741571425955103100678710999443440213285330675805729872 + 43710681395003956110759060419845711579468199634100406577560579781757618538767765251273835674585116578560249300016995935267324784102580394678970050720669090202487230444148761452752444840206437711551869974349794671647598063322771611103435595726220997616907159594812943590135009727848934444991838599398234073900 - 22943252057748232996739659452485847584477337362851255711868494429310887376152455767017263124750363021801694425596899202009362046625871359747322852168353482662413068029044471276083874986856145456556462643567487241167976254671198781809711000926067200205585522227227886291671183171479094019553930405852618914287 + 9468951402399327448069960497774986381470874026885619713738766514996391082966868538456320139095466913239654034163398932419287847436754627709777767193434650470093363426616441504225235458319764305635353462620396221945401599064417701379575501217528032359839648170228798159237615936428618585143612897729576754518 - 20810983396439398689815761439867592490286920417471845055119598588071538308509509415237608105167491723847745116091300897805914119657076053089338402587217380152394826072397125117231810681095226878263045814139831431658495436315946696398204554396946457388840840750956311628201642740284640160044809624384033471814 + 16790503473803815871359469256640521086320642732179597064887858912657033714432671049587562774715883511830894217740239695737995390222703339893907777650190266788376281179959847634008527178761242926365018936132343909908728285414457884044110044348403441510734816303384834379204020177465637019825459021482088162563 - 38693000251978715581008500724310286343246768597496976121107388658317619512662849922293484687767944751854925219493590247017811622997751823796093330245321300451557100104054059096366992298511970389240825739745538950110767495844477297901374522328259079955091164692368861335898373988715033626284306397555365381548 + 34136540019039507434816070840722009281382956038117916169979705995697530819700257819578356339394334243710474963876812655130447369623839521147375384057072403397906405614522280351200359484952809459224227147176646365263295784383319749378566799779103342692609746416365460942151646350332391110192568507901861558377 - 1465882253189654280356102799978022423296968514393261827886089351210370988506446118730691432128773008618635281822781320647259461139649741601848952917860477154397395693641490857477030448341761361289351607106308022789318970461535766635919934096321679324944579656353355769615577590232672736238547983496528537767 + 29010329512115505751722718936419426009476181532854322668155842451841030131669207970262798540814306780876994816155917526667590886323099847592657709652885967536107916556572949710427656126923628206120714089209733051238112298881730423960693285633418608335711404833722648161104473000429729304796086662726103420458 - 46961381978995430066452027029525636704410551680993762061598085656900405155563737782416900157954335316096235080724107477475034211227818999399868217833150021129186378747770638270898679781848872588999803401559744824182803780543918789554217091603073146485277816171621676632410173830420678326101368762331694891318 + 45129599921621917683180494816009439547745852826252439305201398777571379500834598079652112137774509602528914811966492768858270407845340027058397517181045460079862132885918028023611538454233985621994953540367124600790926103248882128158465305837741985686694061727028278836324114666993192992494880384179316685690 - 23512755982994802230085835405123328288245950027773334378798757837612411734638919911687223275426660463173239491022183476063667676232546496130116104497726166774030530445712224192703990580640988088441564888519614951927485948690066051850591782035607721868334777196298533852429524405746999239975060521616770004693 + 33652927535055183931363015218421777727902978425154869601880024740028748302225354269824599955905951213478611971904140130771807696922442391459000236868385056832639153775086780476416352545274576769899172402468318927117192813862684197527439739381609573701928024458434611727659735878063892492140939185484786041714 - 82646235177878086332973092581501782498185248964174642144326214336007614860400061652672465579868208713908256398661226558414309521456032669429866892381925498741197968365730398960431107125352138837761082675822863696759298659657041959714821097447390907882330854638267823464108922400776800163543105928644562228809 + 102844872605317232015821653644579270179096077470986173935428610305145590984681693922760821090550725560227602034800932259872840242291960182040314429732805639010965286974387059017368020030055222726886136318889035876903923893233940602012561327772556136846350938333931557134879425792500635021570957605561928871186 - 18267622003300471913784557227561428785074894123586911638766423883092921649548272555444564949222706145423402894808031578927396548613657987881613416650132081117833993475931682806700349431294346118751719304030776867396547066206214295763426371135413543586161635211866207890328657964629304194888022623003753269734 + 33728839317095850921045882953736779584671238488564991208686250245751893671651819950592662506241002177455705179399164325448353116425942830001313980889636058757835795376625585118353157401063199212274781337039260547778228255554798273682439312370755749973206940555607680536721627226800749658802831740054990395866 - 90706930147193200150786898105585726460052341329611713463772791099626180660593212435722380688955743962589194641474179615220393250568965936536702399449468495765350407064310301252508317483505279873031695946806638383586533234534292216655947747360444551058365683407838968154014223326822048677383647200117279270082 + 33881263743391211136443251315880181700592750809627258291183639464118386780280918158942912921054730897033654713449694980917278869455604337432536088862705334383103910283171755929649301266092213267682068344896366117673681464548259131410967896112186924744373263776870985402421152345841123352628039211973069365152 - 37627266214004525811836232935099456912227730448557465042387075884592319694459254097272791693564706327752417021109092339163991821973019438596821345104375898970890576556526296371858173679709695633597872780624003306202399118359005517452154959643411955737402707755640920647642174115288034517182382776930501320087 + 1136474031675791189214254011134090985973501623352092645127619777089792215529391230752348265976540540148715902782219697735314766016054842100978060185963508527629494285471774149914414342167783191898066828636347743337419662820998230977246872581278294209229473464649463776004150966973233343560185086772174024056 - 32140762533780784014799947929279163919560466946698433468053529199455489348654698514363909492135066320249313509991610464095389916383540828885798115686335006769249247253268022798764543237930822901105518730287038142505649602248761089980790243194278800366308573552778521936596507417482616633957316972351068950663 + 28124759214030040472710824345807832166326969803951622476902317532580016707109310722156388050333135813142083548302501644294492412234850402108659617362093882320845406707214476913506923199598842108783952247331131088192268832495189940667852605212966091834446882436108474504687631232492848993444193951230918970272 - 48249515066553210252409323991757049625061053815041501326546634200347687570962364722600275486828425919288605870931978889089293826155471568937539079056703382913097663716162013167672883229190782493263322379280216561178870773000057612958982215760199874847321678261311738612131947906945356070116343845067599975492 + 27520017897137198472265490569277444928515656526610419230728906248623146820458232030081420186922407456757113563011412005991233200275259731841921194485461188776367411111122911121758272399264332253329422514461927835346644904190675878635388432625030775587614961383151222806398063500057754442244079107570990125293 - 71770550480953590731300644428391798740230940207821360137509572906023253646255672767402912492073834496761636246762960375790660731572190041352153104777022389906859901906276588187571744736029003768995299825373148670545555911690898436944141448585568000881561369655139434275290537878620351827572383090651100924543 + 69601135416024055035360297358344157184303976731333101429124253643257752197589023852683053854993636913598213916498801386328119457702052877273336284263812300378915124841313542760694104229510549110093923064521202828298522311367876351131682119613151185267859105662949924093775160477893707306723413858894858241259 - 12831773264899432186470905211684807720868119800217727770114515712046314958855344469080718230086778092336063267326361486696133875001074799689010832737257745944695751010243308577638945893567274286458466309979948349375396182931362838793049229990639381649428593404926048793681281812843526808160019147391735055808 + 47211818012708378089812583573336670310156305008672290940406329275843234225884972677266062205537657813550486686105163515360488201498009868527706199011317218826361725306585592745669389645291956009153551480230450973295787874756019011612787273787337382736578409719639676948568759090213477149158212730674103698561 - 57360948532178479579085800441097140586652438394717537316906576722937939217270421316475214287408544650520765002919656614881966599904265651796345638040734327320439340450301786439660935816810982278969035206869568429743763788426371548568657465779331633355945957083102005847476589342501153656036702939846659877847 + 76422630697458212461394561355246389612364224949019514290477281303325867320137053099109946262770799288225147747018086919947464489871154409649373362233526255040942541171646594005500729473265076874258737224849748699029279610001056408195754631802083865068287274317010555475393223840020110394171073658935684779943 - 19613792525532106458180365927515709726265248860438529567158620087009539445738467040156515198532814805414690458435654642378547216146910015885137472410849131675129456192034746979788215821576022657634140433677793925272308689607971119515884287522771527403627347848808468083319264544098133095275858580354134141094 + 89802528782151645201588823300840593609734735910842108379038779319825836873302057341958047219857535876844571823528709260549563375092498595883426268206522690471287355438976889544463361856533951066964268723402941245403048389353230936832051998543917428470023538874667618017572919759982387599955008192728174309636 - 8900323061016887334762062060712057488847691995189504339697007247807550103266034065945073232724120227405314400535237726230279998343137879696900378388782615204791540530460516252385223762661873542305950201142283380751942830826550519442495540429918893083050197352574463292051597674199341832070858709865067793653 + 993654596289377680010283988208761329539223199122466738593178469778456824964558081831094883244665123775106030646118703935967280655835542027596576205369611283781296196387559109875505677345226182289548308861053128656605783045681763681497648054201476254096051270175058081700400873002387488884868851562690652271 - 63166858012693821335022535306314340901514381905792517341210778851226050184439068380815192079546130403829879496407976432218182939308410811074445004049225596446554434562044859024119643030025172117803005490555053661435440094914235959356752421271897905047359259640020726273291138086926234845246612728564756314926 + 25799903567327622110676726496589004730221022597336626442902093182280792356150698709953203705835660913411506204871738253677204175891340932904542199552287458879458312594101123562324975852046029934913584533559877576280804568887208904468792469306473496637354725571407166498090359932457752533777447114819100571334 - 70535680362032626281260297760798110087156078171038860252769499540443285337188585632735680969285486514600173485741674952692455620020163106278670030818436205898304773000167753942125442155838563393462620096193968783492069777728967656495723024452234336923348486224536673945205495750883759278129146866308790766390 + 58986409809380409715263731422308061899847093807862018624931114873993445744355577301694165250774725619163513659704273026816561341465894471143002838415258288376682454973113250444415008202715922770742287769533929017561367651680375765433830598250969058457777441057457243596365671914957172375267752259427383942588 - 26327760808842189915738369646476152784826232925860748256301597681990741964748550906455617400148887107896710789858213352718550604535953727397568142087008915061950229216211434729459471976027897743166782096612303888543281840142060948374908378867601310451911617522441135414177999639176915853022741380361505051948 + 19440401213604285305548519486630680313177175463925007573693834085053560653989377150304317395793255143390420075662255556755342579144340604813761926519652051803463134299379520878246481231518636296682396523040070513649516795072244647078447712124530634898972172448263967246824258193808819665423177004264654054828 - 80877033876431588426741786167453836934971296761455924262533058579594501705377752411442133474031085325261988199930708474590621580823022875464658841947061879492421480580436865382196113702817217270161499514855111002371283680375472249377509451346094934583341979129701444765968614815231849252856283341320339094578 + 65094591613063749803856087470532240238354050893548154448776072306287161416258377791095235128642176909906426092151656004678555960921654092545558088556757599910356774519261285535653834335791484862566805400111589395589974946661237757176607170412985692476778218952618101189088302402677369052856720835454023911661 - 26558521390068687044139564302177270378220930533434204548120244878649087689282540215334463661199425915193768063119770883361706114020932010885004847757919835668904342969540674000511964655850531650725602877840068786156719234392159317102030069681086643277894930675992763436326632853951051010390657734903111255160 + 71761301788501054898505548757466549567934571904531922445365093890245715199433658408930919136879814750163527436374215701785085859041473616280589452316281370628531237447870822655311739972383906047061948391386747083626363011250696145475821565972171840103286118429665246042331750947902795997860852348480467152821 - 6912196273430380457260311550109261458708687718714526438314823127464594950365213938417847421460808395106923954544395943819543431027208116960004942336306813903766889734951765677989731319663455725461111955190641544340621459807367758925509211008288409760686526508041523815669678088600673235642567856635801983518 + 41594649530071381731006272774149637553689672146449887760794217720451894428659426901928991269352806534703521054466366518903981697593330995256710120564393692872364007429860754858949385060055713132376473597092824748827052857240989827760437527168439200489321366207607224138781227649232833327083128973182806492893 - 87193969175315203654114909477039913417986192328883834509663190365972740265610201615729981425238670812313855831143558773103911100128890946516966929501589816513618181433755531602803609805688701535932989277463547321932235496418329166444282771100113080504013099414262820906260242971348912528207078235906672883906 + 74292682068802932773373041382471281926886558252828612805796327990420143097703293939483614971104754552240587412285797637145895933068998388868264137136541450629350681350958943852006859580968250322121385811339920027096300710239222453918823917114714165153033545106245975116757106104447949303385118665117741756380 - 73568067875280555590443050054842071166870497373008014056812634545282771657048633430922898344521353081589523081388998104433121195298692891887564481504505980820147763639647649456123898365667985520470320602826243106313342155508016038790235370985610133690611609347019960483162313760191086009968778103928358142727 + 78786032446122038758386830234092994474141413972150948788019429634555313967119884960584124335024402107677348866826547332976630539985910134484707332270376697780379068225520296566008091663752197892708214034510197395487134953715879446675402649496895705017558203985629818465001307108410564156121003391334254684910 - 20159169754341872039751792291364420937124269386646851106977594262927438794173936556072741475943834960286921745226556829987134018623454507820868573252734609041989366385648050379021161278633522838253836572961920636348632294211001736966492115637559721263418389041472564898139478069798737927749882738146467376911 + 18274229333933026206559956752852942477466583071458447653806601660998309274588477503108791725967833212785086018618815901994192589441282155520068524940832010463694610300933806666978665267689309061739120837500148181838635086916105831451411528131032795858553836828106492326403854094687283558903670004453723892 - 3283236770844763109356156467823658882311629843312460250175377916351024744393319880780148943541921369061061149285253073211730719865022238256711531151467653584927384823178417397861146412659263853254188984112447762784460574630114960729191647809696312275198052037337878364144002290183801345505087799150991269971 + 45899097943292292246296447885998433415448211337706794596927854456571601026723580895501093389650102011213302850629044565692194180071342142495951997403981204953946815605614531721151753297494079626633408130495560353410025563855774329872866777448200300926583228195735373927643582887132610727067568119074206763968 - 55609098120894698997012427507726528369379743128047411809093609020413988243068065497847107457046180831839979291246074640446496421829859482605768890830595404856020959345133097022350177902243547299907268513325050452903375290376989106977698620953173509349229148039574865227899817207627788471531993006558735143845 + 49997732628325590826719430164859056509044709397861707628813754639547478471285540764788240656854893494640932025073385464139765780868561380777793705697713817909044035514840566776867403151184780041928023552554191579089496584237188279562403645895716187508206486542301166061937591908462494496224945056247956468411 - 47336362021970991294969582584526902970948037012375530983577976912923155197421494738526251660601326547808812841228303537811317859876424278232330834876700661876608331630990701908839646965295368855821543592232758294948929342200152854563478391098778382484484803964352183161792603393785165738738473158569758924775 + 45942060824567269257716787870937291335511866923133765047798078986131344161571296609936313222307824696628529199758586852879694822169690184119391006172227448185806929017513801563603900686735753217148025656221637066334370326366940875158003437988754772786234953803644401262652622564429398669830822088951109963916 - 73737601067799006462317403464499873732973263757444478952481757089636075164380271438799389785684844222478760386528743653519169086242894900626452781641028716250343823696378701401237130366438040141399487725797334223362395393346304457660300106288141360954638291968663388144228069355022325434187291720362440431777 + 34083752072462611275515426362515652076832983243816601753156756390875370019045566007303777697207931418731444814317510392585157397783503353680906154308244321219555496762694724916068391196004273681917778640720691138644760374469966943600406095564233640638690272406789878794354953027233755258835901601729385326445 - 51736342562597590184327364309621284103748621720889035364977335051173807559356852471422097150731959369019345632744886032057117998408011336737186678324433115715052713524811133357794455673698802978999985721076280133310261810770068682369056655083971237866142517369143111079172276613700300789405980278726964412924 + 42617272406615721570971954556173992574507653207671963525353304183389692468971302255760500183345555576256133491045263041567041994292606916196555052959862271539415921840851634449991572388123395268022096107337977414909635922271425025235717439648318507051341978146302607669262786928768692863225047555349169483263 - 58726369186045016486614759588319655239418318192255545196333227359581638162913538710489820051783786506767869285396533324311914819893942536228842008379438692937492973852994524921246779237626387969602285836484821494722338657948535996268203601169248454694093842119454213796828524799783614631216146879052886862959 + 104310253799621987190281973524080008760167869198885438036412743531433726875723622386060374540794398894325643056872872266788593077231448334295202050041265089723217041500069941696649905412901329337861624790710618206674214153148105802606815911569372339097106024704151384454435244644616980937783635152937134220911 - 76994009066054387227753461587852205402972705909353907094771027462786809147765786379939598927025515340513118536671791937572814691187617601655212298551026941408948477765316480697665730336621183604815236956265528847432695634318167787506047570209712545279873932344023133940478317421550959818049668760426468847418 + 28345448306437914243627788425860825712768994812194822389203791902710930394686959328895532478162493041633703448836109675358207259282477030242849841912249077331098771991761303348789751272276237638930267721708508010803937360766942905208472022445932869511816121426613070063538150651549203105617171797710847757587 - 68972391942952386296624344163449418314976992127441869114902658244447858858714419823246887339192275507023239413604135042641464661479749948584360981573863776036846215766365683744245387280033120756372677885075394744922391911456504673874435210489748543998374394847637502730294714816230231895181590415968561717789 + 67409168179093820224071121545100779686471900295951843079460013062483670537903529192504353613342443698363935720867461925961437732120757253170524483041951032058432251415561941758569642184070593335144996675305759862466698239241248638031129720948901176050071709380156156330604726482480422656149117309809846532301 - 68186401914015943020284778837511963591248133216984541783399316982810883371519423701887391542096522876804534027805878916390866432758333240405099849356337162386488460998064837764003089308418743447763716967148254760112374125467102801086651924519416211296229266400246502273725320897755885863842887928886829244953 + 102681618773589338171804856832512351036511646748683357605413165161887520293679900871778679735141334783094296003646701157653567565625406837649274508068661374147921423143699494919455945593924683949972219315127627169660828709736943373504731763864538236125595730209897345485644626599328312011869728227913821631708 - 25653577868628338218891207497406769821185448782127435889366493880162536078229381203508054779370684639387102469733879066340729906614600707591951775744769142802019659885957023931236034964434478070735594210244906526622267389197240816105114537073523293336063187070219505118090638120184673525560775234771559582399 + 40821383661222907692229785336231929866149170744840070931612161138963367856219305183066536290474388889981424065534676159885486116549346945413439408398969414915031760069475631670317980464236604682305043005845174671733464858525373033502433056860645560405213227988285222241835231561264734308809707823917128816620 - 90375498152995079124690279181270914983559849073085142870174540886819436644409839800067632330752408337510619128609402872614757248761876059448544827528243002025037496749074807917740544188425902849450900654348879119812879861803680866305250424366294331103671278234414725995492872326035592598280167816983285968474 + 6937522447966816818396012132016945619808239647880646778482680962956389417040716107862686043559193715262587357172788251773566438782340946713751895949105334189455757168943436552670738806659388075870483678932901008229528467963107741152856719460871119450983309137755847175207373256611036974776028495510708722336 - 65452166671169710026002479362153760237721076260938415970343841951307580249654014377890643989028074745223000055381580146379233983429391517530076083686225523250947328130776431192903744696850192703355778830625818659958329709431350935625007184259955848171561971326696575520668510513173994549172047749843195403133 + 27765872685528338396864284261233147386767937583701413876256001388863280276018812654404355238607198951247436748157039569079542063080366466905190178382767369055729567184309211914643056044235740183461614541919989251558780560748336663703870079651952014178571285739742812653235911236136076602128111748170783403106 - 76378742619931767516876592269609989795544768882290755407257356150046930436723301786220846647668662484383924278333056146291016874119544073011899132053546260155285426158598715356538380734054487668198557110472263064308564378769909825164044985498996635925599905291235857802433647663160053625003111548238625599062 + 1598434983609240443655116647937433092265740871157825214582538040699918896112913316375900197730006838839871109703804686189802300325291940122442423699622943024186587144387032170128978541648999141806383714407917545366239896128342465151348276342890112285104089654721482908546666856486834927813864802845151751344 - 53031717606002511352940052815587682125801314787391689737677909538900476337528638334665198881355599842203502264827267567174997776295787228531827145181566211605456776259023974674719156475431459294065755473665109376000301904191305645617573782730657696408205920385528772788500939460126176488505391567764386279845 + 35861466842508275653074568367389534045183024186951944950964461408648927797575785654187065768732063539304187169504930570954498925721215123261164443553971497913728058053580384213966920667888063756785525104140220558559608620501886556018550365864670327453721253049332308522364917527565348785885929620146538634286 - 16624241749613834649011524844081461939861223424428308119346978783619008751539213874924207084697904561291071755605261787981418140478627150338244449163139253515741091734390507393863943457355655432107789357421634959840158899970317131553978090424880002249818798485673232210120280717359993378796739450333338939684 + 56303558904677130947475150305226533630882442614971818221927432861335051073292410839355682605810598807518421687801520943084037953494541846769447122478429753869453205620060392753641557928268769765511828366604202417771150103424193946571018634682330021279779412021232566924924050085947541429263630550389536241802 - 19734161994304600816170884018988829621750774956622097383542322607448577933593022306455921823443714163161262998669557212483949269917943035332246575369650227807424098203962446442339451497785967142145587017066258445057632183867678514738544035062860335616597568524241125694456113399712905099601360546145042642570 + 19807538864257364270653041305219335468118956607168629176771415208621838130663714104703876007015031139533226419859407056189954817076250395520581939647254138067068558007428773632319453674859520563714813892138137563811760055070581273666692897423419199160024255163258397441245654330370516100989711454660829213498 - 30512325242978669295664782843870905602660226119912459971588918869460921266208004777293696469555321110643160384991613298153104883763525668709766381402892880405946470066903202612462055574250766640536947959105789427240681911133618937162440449871912886496595924859386666065558410771146692727892156877366914508835 + 93611570967331296409373358050397655033086542318639158053477763760789073561526407497168742880234608928582953523329280272623386149134909367862089068604160211170806026883954749751613661576653584037936709498967218398546644689058339145054992270836285446671412645873312835923468958997617641430522145856344091710255 - 43927869694773201085710165926957887649905054523302328658782559018710231029577197664431429156287244061380531332299358236880942294569553408323192675435983976268157848451164671892357417302834260779257571017559803547520751451579292217207136341682561874320189378456990536468904675721403968439742770764423312745208 + 72137628796038554177736561112198165191301014133026022453534490273076495031741263625010590705929970842827586293255485469304959456840491650367180987248643218838305284996563927016150152944809167707721044637629430905836797433529861856579389651196645277421053187388440106836245011130451249235494759504996142229305 - 29661061633814529668835079675844430106530720659551479144822890179081610757724458946592592223458814502792941111287883003174544785314024352854927587737671455732128036035790327381756034410035464619623221557668338623943462472454629199000075792682619487680141330095093873585847535436993996657033691716868296992431 + 23076166810854398355774207354365491569513030264434922327755967202567628495298407459296744126947321324027539718167965881178303529299791385596872765018435425801278336491732415062462096247993849990943280061740676958253450102620836186015135689876557392027280405606981865382342667642069158148867356403978452080313 - 18093585289944261090355165579759273053547653878504157932940197511599841321686257714391049275969373812644167378590257736093748633409841920111207849533635065704426427472539960912249868041346411698772972384672226801745611295956987612968572020901707159212851211643703786947790046433471383930726440300167801787052 + 8512454865001360731293555450050718014732630290556741810731993535905169388899053508765570107585891462382831502211775009196922864762195949467098873358473858132143417521343560579934232551471974509451898566642426206339192003707010603393587594736073952951471191967391834719193116341036994812402554821344510827463 - 14235250227897891177715825823420840000590122950247044553335315592303964990109837645678354768784307141418101716005403535354799903575860938948866153357179698252893662565561630394148018426460273698615002210056457821112106031523667324403957935700525336057185118012970002935818701883914969596667063596238104475550 + 34578557610218336601756522814891257576506350084340201695847110575807813729113448692632496247296185391400413659397030484131516322686400933789186678279905014547299872954728825788905709393171292321848626443658630804050551166863766079196094014212422564783485369619946478933002434283939100614529538296404919829841 - 30773899557128966650830679274599357910533076686042986563677880095260195774301707951279247897948613016493913541353688581388689403756909679372177557502345010212182862715345221674955461964852663934202558344959798341787913608366813023737218821825905802817681985248900634022439818427950480310626049311671091259583 + 51468640880793531598204845642613609161530112771095227040220971562277499868181583895916683711783273901508348283960232544104175232871313568388216813371372477839684045370289309878117930039102114728150192841655972653856042845785936407568290555212463115786626898424110971478802012837627029999234385709400003071875 - 5104230323346188378474534082724126576760950090911726508208383209499068931624755582162755878116141094548227321077341314266075847242612990095146297220267191599883196933760905511073867282622138288193684987911809381455001822404940315572433224709958321104870046550721676199170850034126892955134707465384521775475 + 38540810386635686575257416023268201501180808863513544222439532127908776690908882206599730633794731365466658886692740395396092932323630936217798854359146834809625651015605283446619313974386787573514911170752796660392343018914610163705306818194026183029151998487291229344687600373984218925565394725971592118129 - 79453049874352308633523485892233685821989315436511541874799196132724275329348359775574520492227699359373190086010726200819560175374719591178890433392036174927205722086551215046407770564171522168604651195428053754247428753929225813953633504500433898432855647629436199592544772384584910117969862512523800936048 + 42308748612242412617113905591359256958742529528745106911683204220203748154264728170784604878387405535619888055295791902590791209139233886017225132080072381174972387388308650858584817893279669610983421117879657260844948205880109144971079594789769151512289917766553171181389509676716421485408356417369976461664 - 83160873823572429143055399298951124197011277947196170791287594182837358843288952148910023806834398080233535639509956376087221131990687125703218430239432706010699519425655822798452417953806331709590310540738423981040970803062296099401703241787319008697611864451965440219601570565462363359052725217269807911694 + 30640918205878286865339790282400211968155942600811936596291892241194383199023331131613287896793282608061248734826444595495138594910011642534670207318419210861405302841251350495773706373199596005362415324527318291419240605879534223886878683760319907312246859811129515183953779456757285530263466974105929951519 - 31940476695683898264204524180490565668632159954159261996140281681878431921844186488354398256745886520833957111814739729935330891190459234758532642242266949519119299766477093672403713853569201260887593309926489298787841060518690664608095796482312760337241400276601175094217078207195930407284303229942737750775 + 29089357051734811081707049015846855779034440454895933345605241440778712705085229811967279567785405829679157017729747871947237317380844831191202282886281336871130023782322914462277394865378357714457439885497020283398030997014978300445675321863874094654181109798244416843865552914749825434860741666726610613396 - 22591571971943422074320911506507064761296667082104254207814838431385213016967246442450421879349110214750842259975612916238037705959268578691696951763445238662496757502380374039554650767606705695652506455134954415511181012860918578979746792765609494091788253957999817413718212143355190333504011596390406879298 + 103216770588434351773119186710938734990962693994308863136124962115533480185506409061911658657379310245942539318040786487660474137569332114880365560415890155166849299096496872963595866048539969946162454786673336383837036609462456605708542327686146507608714494925488534640860055952985743958653784306691097015972 - 41747347702962730799695229535640398081184278327584657225862005657431008557729956057945912869814019637557569589312737478464323371703275029575612884097932369335059836301918246697437039578012982766684021035672659603156898053541603081645108491732887089295139129472456645469533166563657325534183431101638082839963 + 54752648712058545787121114687471119271302055397392793839318072422727467093781527919680961074258426178607212784635707822145727935699578060867500886071672740175770881057700573327966211037066168959577109009999487530872132794822481850637510083655362911824019874291849383374322593328404629824989865371358454835974 - 34428197677369103885614698096796884159053422911134200216140006759372641125879131860275906616871638630357509501125039076283400535419055128355327940991451736948045422834130637798759233417139028025499863573790921940769359093062595753670203950932882813932178821599577552788943741006440695554633076164599373975219 + 42851828805541195009883786775109260802306696149131902087857588149745765840046461349240839369130466640137263101319374180193611430497716316928846437347117729727936785709294334307227608765940364433207351610316665397938610942341932127797072049704790688133139438868836088972708829894699777634588611432443679030894 - 19657533573466580590641691125236588929219601184932526968486949182366688427543282196286273327450521460446403776918289955192426198345321401712200208245369496699271447556330210076777359698317287366699894454143392606695011164137379295783815120696205532419694243434231515052310906750474601764238611771447745834403 + 56195948982382135489246393347521048140624275393541916274165546036909967702036606569534896938096007489017694895914457928665126382648300212291697343441552844707356657206901192073790480796954102414396388112303722470448793951840874697614998316137516277595020406793551934311509552017541325674705050386033905379830 - 29493536232166419859791118413421975052629196426358629563728596972582817421857775383051742130120684496694067379946441296717354197440238645693168056745734257227102917472836972758648702871048726015055667602204367258343995312982252515337847663391072488624899965300489436416568788108681678380577000478954267036643 + 24107847461793422854350239381604338971545010597250562087122149968472033140065304659416840504887846644963608990411757906992918320205701816377096006843966566279183446208120220824084970124713195478198068956313375053966208115332219063071431622615702779961520710873297025440377383637866274937207930071195136830311 - 24064319807430707351842790314794183340485323131950755007304331095105520946916130585101735206654967956148623057342754856396335720231796576751653184262954712572379943697980376396274729709623041929291589025409382017089912352744386452761834189333267399295869862812842434447477165511393249624722026675442207536940 + 61177537574225679163760404921520844904096295590435840519533673376000895986389573246429351055223862922251391333580891213784889033694468711063859126661878527989906270349196877041139123978536336157420147200607215959983266410846355207403650013481074650248509686885588611445786021297060505988802241098043406086481 - 74858613671008116256867821718952874432282903945179959985392619762274635098836900718178739493487775319141508021560519539409517087991118369017249925267318569354900591074224586352099675982145919061548067656699786557207020270892605998438347466063019084340834872990768013261226547595058098998660610596774568246878 + 84887671816395455312911451591939628719722131937007990590867868264533320465010799329746619589011520279041144221750132700234612536672613931212680925031363552306030797981249018172167168400515306638224258278090106854387916569896472733137621790692525804220630321287465634607313733053304497613702872959860825268460 - 2633308077869696883429422306049954287009380003715095208634906214820098041326980441833661904208951529467643888223932197454686539141944878739678235523806821414303068447960138774512771342150338059498375365154692510914088739270010265834560302758706289348520381898237999516251430100034081181700061695094465742065 + 2556677969626706089523665068616933348625590304938558830787982792666519241220623346521368665654001354887123962029498048271955545442662165492152622898089040365304330537542276669047129463136171650732975267514896887301094809447690044424669874885312491858384924008940254957793965000051373658132395236244174538870 - 62556469974302649725275302619773188302962313876253325411477069985628983872016946928067265477416876122880564694414085482460680640723583112954602943672886964364278540281476349173289812979300392827276686572010083024385285399032423843871418968377481390778924099659082499854037388757926193746102963616996853177904 + 40792921696517525093954776102175295935829521175260612019646620433767236057608574877338861869631074343854146162999411495325700572104840274343033489002530236433438807129254779553420933471629997343890909298329094609986756351805323534042305707669006826437251726976701637704166050881218296936395754199750796261194 - 76865328079188693916908487409135636495220741751568354659601427910464634974523144023564810738456890753707757278814160353344944469726963113735570938353136707865204564044817821667334579251407025748775428081524780460100921350559702401263136831713525678882055455056430970913176026331583221824710270322730506947698 + 78240913392373641808133296987747735358744919581359739898094705442082258773073499970536740612902580405561034734835094855332287721743628995570666335975604732292402116666929488882763951584161406590945404743673546515343095592922896253258318917244431257003930328795109263521510879158819385846130649610071246252201 - 28315446765259777169001076613767076760414666624627531885993927077287595847117424858011776309924332834102006578976313049723166963031222710332355113292382721871334324320154756252255392836579174551829133871143578658638299366216338289326037183370125430250868185289163742819735970092592933329865855108837648293018 + 16966068935123367267493997101200967126926280246181197408513523654518495791773352381181081739934327993390435313862378332185026383696769666443776262333886661977780117371238319003705481616985612818456365779085255056641308651555284827595068449121157859281358546066468141318687104232963003371891304214523949774215 - 67977972374594513351749722437378466087705184517040558202365636263540646682071602035854004705143313198261821559212582568348543412077167006158375335789302352625182902210428173104619757349402251990960997592021887114815413956792761271907792748060805551073221655088655438501728477449054125240107463493690394745499 + 67630764663303176059817693032465655560294150915923872702017477230482909129522707630636489790834272838675287347918901802726464737286070116754023538652519224753835628407055475816194619661586096951013616985567842907633036401401947606091336092156456453810417362462924360192253412408964922191352605958054392454636 - 90125209945665083617145087636353410572329219727926602026691928200035124876787044801092379623789253711976676652740350448066099986341610818822471308125764491620953567809339148422720501130131472145460143044142729406034952008474849204191491939655267658003161758417846985032804992727222888222009827627648001164153 + 72327820052053724241948652382833853916593453529671161205368800332125629703787249688331558784684099744775514108204526530283737284141403040637538338957058359367986003060391306049699156822508943621495828893876268671675280424177564987369450986613990013264043761216338960981927382087605867614276175808442283400220 - 18833759585388944188535908638220252588434844879558729849311602926087592939063176967389150613531664481867132558995812226992465761421518877813420523082409532428789617025302547628738593111915017346986814399061654069610428109548309312632073957518783797993245137342055882265564857777894308580252310953247624529376 + 42347633045880415203828346567467666190624866897182226635420202096391843573115082474513515233086170962886459674327774506969533587344654403187847038352743448429074035041998993287196778331748044887846692444980637697822289174080433281895985225591024494419624299046207437254266193777260390144227171293333764700830 - 44840673197093646571600649184130013227203242540278546477536992189994612005270427068224929953552817664933563092203931450738124607916053117262346175444803142104744080809234706340173693041735107510998215688958734466904398377097426883570172612255581003452224293420763972889366480512701936130476059175700119633065 + 81526841552168447090040828799125755994190680301005136009426867565112257857119243958904788158631948014966275337166758496491757718707010384179266900940245410603165916293314157919241022216826817807513477423582131812659654942214554549868426128286096025562414651783591717627572771241351241774742965115359730117301 - 19663387714834004708102733028371579030628976473417924190875501478544352098912154850939156360442020629811931043946437189093211720265903559715882541900191392904982950726268312973373592370835178318610257856803647072320840775083361899495312927624769803004013526167941189002973418021319271397437471627215918308544 + 81914115318204613910569952106441645860726576730482493424728979921052241445757176364736779124124888061015868994841915563556553690038034971748008911617520418257949033513946149855577977047551052430888880782741021141282962961980514438193727760999936088861047283215117004527930056300801255359771168751596670337506 - 26225467854248985120444410984298380495258328419846877491088886870046510855122266616849936989514734973641411281060290310330565863697363158453136959872915606048699197279380268962267969447881490784119238321941083951743622784375265208571307128745751015258381460782035197840304479009392442107452067976438981301534 + 65996852430159820194707116035240689404795240996052916268651332132112242342242969423086766453601872039254618125390111506299862383840875258666338127360018630757613180730422092259480980068754455294082082378103777823455249415695698624860491449210443667342379187290782491966614683378533969531404860550980962910004 - 70258990324162959411965372805173712891277413808570570160526167583505733208476784433752535734391058546920012568493245413927713914630273337226863371944070547493121846010111929395941911381198528997768594331874220904550100431856764878316747450093245627868279815719706404085452003549393178131071334903882514325689 + 29175900971087828776987321784815461819743464437757611938089545266953816466247781331706603396025167623019693878732309527620059082902680194679784934699620427012866110570196039663231759232426611809473051677401004439331671982843683609612367911351771619060680756668755025277355132701983005918422669697582413090010 - 14065341512090081409597131731105052512430981287582706485290940540295290660296869837631840843934570983365958493878779624441850082705754371169439800810090601855250510506102624888936789450953259776563472786774656857765785805312194850269800831455150790022670387201074106416907248413242648264931479294981876307158 + 94044598607695949829234257227296617743728587131177088729534102941022672175820849795033288277846906179283064001268842779139323325800409042012567133762123153359227630240528491067268446341268240819725073099873258375591930881229897851769811541522941725447333063357196491219288701935345935644398048313500286056347 - 83368858164116425197756010795803426737306370776745649988036355517524227139743709858129882715810123579034601752038853957307925452145383546145318364576311075437015863726509943576151382527575494675311722511896037696519085494435914984802842215233835292594585888164727207092665619495927301112364698678207957590175 + 22436735077309375081433597811582660352427864605232324664177775193729857904443704338155550327406584250487112080524414953928846970203170506999019233856421427620891044980746456725110485082826435017422543095698014763604861435160818858306743850013249545798364656661247479843725139667616193973217157001557718320242 - 70715913568327112096159816681092438121607790473252837278119587464093788540556277805979499527254806696647634559540665944930711608812336319105245752790093401659978717547320692821956814938945413694854705400556841417976801419425635607012384090679035991091954769326759560174908775748795447810660949008912479937154 + 94166947061342815550179317022260417144249713169414993932344735165228827976374624809867416598341339415643699261712531795770501348354645488066112274131661701167498676723129679140531504806737952585523737572198804014450137954384727965925590162884315742640609308255305505209473629196699411928209035676015857711319 - 90453912815188233751807658999640243691732897861733393288549545762787685409608549035500910343470296291794662785488713280553619418458565248770032052162748512616184977131725374789518770374762883928255978456093344710224860141005983528280270635715085767018058890963715335328820625899364246153815233542630411507449 + 28233395575897013872335023839985015261300816314035468843249266520453089104185429391442203451724030137361892175518514898681103120848537180351689557457055099317416328882217575579391166912481772595730301391952824728247925013015340365153771909773688382232472778766114517876902553789490443115670387019607324016348 - 69722834808829109296005514674063781164622961031970535461060782763271051527672398844554135283988024982313477173347852674250355661081200088774819432853022901200306789938154308133480477749827255140336306943799864215118726080284236110437387974042023059435552962383894416261199354496698559895217316568205841567304 + 22048149968259778779575830896847579355676379975803612742324574473655819241258657338592033919879080880416565723235880196735942058955102593822561539608845001169489672206105537961784502789868523946763117174516322218575008296021823766863302499892280840572318241294322252067971720364606393354409105687909954374481 - 66183540778876949441409472038198249570978692269740632900438070395248551793422085392920597350670409728682089196953567537936844623744794732551740139521212883668050102749852614111190524020437732645777446885510188988732054819320610258147235113100113947298670865685609392433029289159072784230045856219190844007291 + 78026927094793514794900962865070322886745554392313792060656111405567935406570676923883160437065440457770435624911439314262289182944860092434185792861765566056052281975387377307469193817400949849647251440246087835292769967643416167719201329438765150138564105408325968255173848185525615232499319727300209794392 - 5526199531592948246576260233084874292528736993702811652906549691955649111248699378318373929827611801300153080471497923321875677980245275781432949841790886726015175400300988163936686249455552195525919993904321820611995785100103636428917281330671147665616946068380416819257655734549902118505149728822758457699 + 86923849704005992077958977802826232376733039441623302550302354340331551690409192828788816578990022673486322994026739589586363542768177012164745464667490113307224367240801270078092805588210850832404778122940135735065520646855378365730736667909680075732165371487163317316429403494833518333991579916893878578602 - 5533200230092020160744506032054585909435214593629125740904228631007899444476445333826586222648481886131391293725941607974858636723923619646606092768461515666171386618459317288555628495357337924788852802578775306505468683519969600913490325770510806855620797717397723513911319544241973684830779198975543690893 + 13981622225463009152234162538939989826374278625672352332625907957287804918694569753076594200043347691273287989591131358352872670708641476454194593752892190500897309602007259679638664554707467372434680194683662766156074631576743645760096308361667307169641402380676575471442381114204002265352018781730796631102 - 32658700612116035059848507969096020122197292873925036976744327097720174715053307383032206718773720332986202128581255769068096536632292316227135110321323500838510409343197687943224396083597543346582427804400292213746654315211875236836649583940785356076873202784695929919408510386450877795734542058256771436915 + 21921593322021025324359783320583693186986856723918067135354306975463601306877170291312837282077843579259623686146713513118910312645680781223929529007908283368372529884951847628968573293666696984599408982317273562859054254925345574517720382665804449944401478487838225790527695883285815629598065009883327825458 - 29196430281938330269872268900185115790140257913966262291032079787363787859900126309981096673353084947189578005539176521372675870166250722067792249771383614677043120488439730011644206172218410204995960602356677188523081601208128256018090369752618799099952890758227268397889579293756895690057306829788851783605 + 81859614766941502894701682387485921437242657770022158756768884532861008943272285048649029722102416072234439209538275290994472349815641645557470729930907882171258674861044817427259454097915234200670658372207586018125698912430053276170775341787261021721667993626766741298811555869391487292265934369786406719192 - 86287903757737817034110371912461288116182366879063553943825385538804850686266669932382486658955981131872506716835052710109906242021910385662752455588803037469355956700585501923460630107683378697605310870491780456118783816444512739000037895644695772988525605824001274289193602334113150215100432703511728120081 + 29590214723349059668868978966964826673900483861976171211060048742460288251041628490892090116496886963838950697009898342865984598952814240238508265886676334386219650294279713901104828872014694144395625385850251703373087546139763995544405003600691008031641269587621279079496549977510407577884129982558735423450 - 69822707937152731732831977341974669632499742996322571395258245852376677486721992957394926657641343715137677437154005215276461608698536360162347694006231926140940413211022703485127843966088581094366299573429679480985544789872773138328335537505698627014786190941806516480006780431535053280477729235382354616342 + 11342393722320895185206049205283566907493141389050981376518331252877528646835166298936352715418993031194161529064939459007707910592397944228054421178958401798691300463672117771275187004746176546374123101181723877142516064637442036666437459720681154962568136817094374238263354895083106032311831496918489638083 - 24793943107711564420324065979218385329089048854620898800257362961493898863821101096369879852395107845242465397254639458535219574988980116820474266297845831607319331328176516892734544981133627867569352197432074431118723569168938119529951317259262141099217866417427016605837340559544676844908327437271856629808 + 40793356195419011348343492087834789386368304761890515014511247995592689264148596837100222480492978881766768922772352666249005265107976014845966305684804857961167591734461146256359234951229115047413231872334774815416576568591473969005580648890420755563997278084551355112705302144002147435537560311323151702762 - 25238251819310256122953280265341719280202321878525245147872217945793617097863911934117723389376189729560650219761042397400271098716178146513620500385804371680122331321860489581996051110116825302096058920851596602352007429968817599078754310983914721000812077811616512238065380971725449761664840537510021243222 + 27152803074885891975771071109611284384942985201830652320785093036455771365820844570459618295891130129930506428498383697566815642833046167114428356361513309024364139126637609987405537915982063543723913867205441313752209209707062456656754110814107029265078836114620370373946549552936731435833029601098945440547 - 9449425160202254161446597906244371176583265262320117264447305827431795965625762725342210110286237974145559024166697625646404755682648558856726674051572600222687598003842982757378783495144370497375969015282834686746201534716470367491509229067040784063750117901258942168262969767308202612396293385660076824357 + 66958153742259320262405082925435018964153850086335069166459869497369687820911308084134650202568445353989070799095264984468961619099226804945026952696313533448405581290933742504156095836656174245906703056437153974583757478708469787246059529153474864542962920047966222691395151284375354485820284477453368072471 - 80642497271598545474732247910709606521204684616493751570427490071027864333186606013525011347783767564709323438158574102483028609021739376629931117236245099831523821576805266420186607864661178666030102313652091575926412648890108084538996577673261058024465268150342871932744513093156894464504402895577199973882 + 96316781646112496944965789731750017029445894567605629505891521011270884988546314081458309123301053683797550078084535024919393719245950653739599692555059965568764270796519200649329263319334567240462225195161989121386758097628515056536615897138187008677062589388192140280090416572216766456873968652401782574839 - 6743699124874330304767617676670154415712697981169024831510821878506479434556455788893830815074452855343338211184358179866501050848322968927378812652925777192851595836701758414227366518570804324511653112893415455467608152567399234694071931597216467744378243177874659446470853175918567448721495784131426993105 + 60122609056779969376841112451956447938173785356238167694746966309726351480396370645297640082629868373139936743815792123220416193137203612990808386798496795329252131084650185977402708573738472433601173705000060774482395844715047436969551467261350903085771750733391754077773867430791143319536885326778197605347 - 83263100711504230928757818089352846965479796198651803900047390310833615875645568509183316644843223756089468106048367190644482631749270875701262082485185493675332810793430249251221050839713074577197316057309692818469800052326040526200963706260789672429240644898854464914026206943358112795873842143856352658868 + 40987614578875255196440629324596752148848639730844981898313664196813068733709185589550005357871352262566822918850113666622949477832137112037336871062814461362160808839160059689529262836023659272938898444784654912332476324961588986271770735783279827691750179735689391285750194655439738277895936296775333258158 - 86787804379057334749390946439277078030489343971787728291945283477445447139647798842989696783953510187910491248694262585563470021543231638623707363831500043440378686637711918149120267717546023250563910989734415667503362613059020081153948188383190771136487254062990375604329712925041096929067850252048912437920 + 50672891629585207436559340943506040384532020557557257167770253247862819420174258825729781829138537436324710232039633846450302184742551824065855273441077335342941228253007155817673821741654197473909772263703668958701534459794835002923044217701793536430295612374322671683697917945441051385088392211674758909929 - 67622745237057841519897644842549012282512448764463594163299163471550414259324260342777293424750072091787119702966909386089056042836259398441059587758470791090665845495255466681744499595161289178915461646810656480740689661554797265491229445947779923904105335657773704324030686446152167606049686170519843378392 + 83954676281809856532102532699086658443425045098346300392616705071807238058733735310640130294137139394851910545606753741898767818355907946895557865086083304803085471198643760039031692412547878291961166713829957424405253346816029247563827651678575411036575327389357923120548173274986920542505808866274253770179 - 29586233442343629455784612621386098109641726115944346288596822027752815823135869612962498000589047927004156684413350017450028460281535134585899471312238266211096768291120672207871694298625425018428340685159019778656448042534207076899267598129526866084611807979612690327808859987646534899710702358494076504641 + 11087118751267158597051445920333087984560174671956731885939372588154705767799121789423615748493631034543117667984596565814629554682717499394180651465580436440689753248435295293955988039732906484352635385416687842252302769535103305311417979256189306052148925404079000805613641523342502240021282589590886131649 - 51542796366976364598857939963519942952052196589657375389320486824106715030249007829575590297998838695992821129672112286982470839101803354976014257937387231910956697061084369826215596212199210646104161142285030619828104590275452250495465147425713099925741526301111697300543290864571082169547253810817481485444 + 62257700739563692181731565399888981012744009999868876656950806623365106337430066095830607885654718626963132394474213217977141719645505813260908570543986219596043744626307305292796768623523180120876076105478826373793937567194721311519985821839360994132518973668091128609909380384517413380586970990513546697306 - 3682940128363377628112837946003735920586671396193321026752334699155751265773914933282748449830374675044064734921728234388791987179890631052748238959979852404926777021512032579751178690768814836310341214806450489489325971410197448257781832905318227436123576920502071242763960751745384105528537957865628313685 + 58699762410884063835837925010728765148544378031955669147478787233628269037598976769489594967267413633226305661841560339284669746230063061626994970977840638175856324642896262053326049482080790792508727632677580929643121759991848813887722284034288203382718290943720600946494683599694173570744015550737443330549 - 4060538770227830331408329837680948382650965473635603745968221731297575416158168030602462261312121111764025057196030815135518911682048041857896297834621427603392541754867563161684531135793121706141176725515899369503967401316499035191308419289729033810965230776523506471609138473901501747430083896369390681033 + 13762185116774666620835417169157217397568524585173577236206567341691442230312754453288230720969436054848462560615616838653772403414749575426312596242353724852541818061985894506359647370043931595920573531769374982786562620645961063932884892479122266048841690306137886113640484019659492673337604017033106470600 - 91428571105945234714374282355262619142227885544663317401175165521148560044211679910891785670997245065464545096481169850175118792967281112171749252459610381226348606494993305843308785845869942579965058334959055443052704393865051337933289915108318053379848787285942914905767339950032907978818753871756981755990 + 88697113631897510997346962186068611695133209616699883457200498043261833419893756608466554894576245404594432344477121905355377726881688510076881487053707011637253134937768923116483977139542819640403837779217543584966243152484369981480825691055569190954178394623024679292513776399611845223776427918109418905214 - 86908899068286552514704971041306531936251329261062503893662158235615489008742522049866711398037490403825684791915911594754564860541120584955141423198601223914127098072304337500704004666199032094736948701646666282657162307222645108874412545562538245317352456013713951855628742727528171569955966223584532981289 + 43617160662234781018769852107799740950317488617741226724206889544616000037771961806437057362837792658629708956999592206330903789032777913004766827971662248325939619972223691701750819316648091907744618170878556354028219305523371530820116944614840134386304535467703243714528801719166688934889283177249165850553 - 32490804095759886211436342592352064193952268529070829525359724308439366898455025336702685940922614200567563852879055754968612719330639413790332883790886463642727663454146558233510635620880318871211291524541844254666041366041113970420467424347074458933073857460169559598037447363289230542774947426559411848756 + 36283685231680713399148650496691229292904462263697336489985063526373785501998249712253129831383020440613234623574870789028406563540486697941861656042047727136988869543218997320020149837156761940146124884427515984850152270099304355646005353173514077966463112887279738472921862660818835182134218028630453241018 - 74706481953008303258410067522248322127685727219068952516182204008879981264915298262074850523600353771164737616396123219782883773993505991714435443695144284583557697293106894228422483194561445067524843625520868455689968970715477952447732263350776616319867000580918454039804958231951604850486819527831768044714 + 51120155114093243479949284771594864611540882665325311165708692939689639333386876826137463895687155980601594443128789079728999291961756132829177201433435305600080345911158486920343116146034203484876873788246859805767777061790367343738742835432279207284466041133816502177216877981318022287248728992313744076860 - 88902735507573070418189280793176200494297717473744878167547198258095746853524088465441550692485234838219988000506516218356954094200317509703326486617067212626643723119579053758436107361173921758481865495521088998470231537219449194854963991869768933002044649330693985197107035103940111785135799990250137910046 + 70088598228271678262120559154985097438846482344207841070740813150712255220758725607953988891358152708865158198787674843440618860743022662287499603876707010531365332821899206104558756642215766324426587972202179015850720373116759320830405142057408186866442462403391610714239247467873309941355047343827204764005 - 88045061220800927564999946745644273627988180627108376109888897034333726479972360344880967337289639222018757830120000896522476306203798973906667300010300083115442381911240598264359754391898589539074427407139055621452114086601085857492409396807683687484821537292350453747507073907834597488054365021267361999552 + 82487683690862064542428839242551099832757202687698701898174434749403953018728810214414577535667517472664081925190696711863507186852336584081222075839497195575559756637440991650605860916251655768206123711260689435922505693443483376615524862449062603728345923330077250288632753929693795978218265589151574967067 - 68164769205950579687575532084261328850590885403645454277963151655833555395642765649666238649612884552334850858792141867014327496644228647305076235895951024914584252933883952589593555621383072452313887656783638145347483484248571140115561539958447852270904660306389725106661994728318620315927279598583778840507 + 68877665088105071500678872080774332596399221179166248817709873088887966514365504401464355092670455218937829776516880118009502232345469509054019945695728720141426695060121102456209859001709888146219745490956595488812227240533545252146383669283094943568929168914651308001451910999149486024473522567975895867116 - 54643094861190005480885099739229116955734859518484367824580751929306774066720690538877706786754115786369868073825696047450900261453166987021739683788259664000396324178208214499118031849768685551859041015487838660210407333866885227521744343057781509229522379426389788671228593703066950008648189126991621215429 + 94588902129294085412156483973479029201388022157611762760773610058855759277448980200490175779964553493652130588770365914089788434057659519596791958919280010606326372575875853319531298342353551277923305179701431374333575649848697803611291730106244721476066795647879840481476273847481646434306271779664930948001 - 20947826927363988230335675279641273672232616842476384016647107040347227443498444656172346804731733531440109786529477048849963055087994801372248380927361261335110822981321566650937546903606006744435796056399255221049735629934016045056063761806614322485912180872589842717045971898681399646585601078194090007371 + 16736599585283245080117484075626415692345672770413417979638506041183489176195288348360599438468967555579284212528178029080088678831320799871444998713736633769790746082990058221505833378025284324026283346759469441723554742575971461114625792487689937671252154033740391180145173616653367804654865516040499149627 - 65280291027105398338864128566609138820966941475934482530507525414982858504571977244049739023418940620916276312074933405072061551100558829657015345602323230813145871194131856979990335942431834963746081952913179241497713109676352613779526391504060303309069958771422663521885716429734485197493525089135400382505 + 18347671112586045890548491075271122666527933440004141998430309677014421677747065973344587995125008284543984012793465174348127445164516525837963517777765701548741931460970788245914494724449761987724550401276417980849335639804213918756765605993908583777777506126955636826126841372233393409147978617527703398547 - 57455707886074557264691642949004626975825326992055902544281635007075055423734397513886231524738046358026056877264048755286178282436859278554938293048167401753349631823563704766542965640221793859225939056863301155464827554108664551872438424411667103237460821953722062174121141155422889593857006093438865860397 + 25246464593925011754560839639037459690221570154460810400265765293924812940819462401435152616169838330472612443352453957146882004311620450644309052783337549155248732165716348510268672306257977387832947804473465607428236607302190597048863628965502873621639365260479353236256221999166905036330170317478345202622 - 56178367312015801478131659871194748863500965207649773777954519824008760065144838037648324129371795140280405012673300798664407564637814198368447282397659598367794774766559005705875392148980152805005333422117162087624690950645977176292889672454837782543760034932164818193064443741045641384424748731328885456203 + 62521597222268772794314490856824784431279439478685088315889407245641958353804914399142886474330797741846201770381094227537099569882066811416001966054029228525803794711526151753946373846454902865904437920119018748128331163609174535826825480387734566395319672224075748425144076992202416581444411755679203109915 - 69356756248881546328538684651453466731362797343324104455585885670348217121862270959552087327651050674033365813756691569011603184200597350894957474476454549740891668835895951704454527487151333246013778875180743266260386834250529115427523269211210557885577336317546352866088950465998893720617617531543812557016 + 105118870210080589033869693269974657522761185957403711792895790017876179752028829607755932889246712325042713938977436740928615265286244690677831928191747174584783252781007923184263836950835789165390760058060699803355475215431950836618416205482444470964131461516167031044000169717192278086664518485364762663389 - 43448804993296577868969093814941445340493408026892359607453964831584058565469932287102880402556999811926119414341519252275655224324630835705832092135536504066179500858334597871928056075931541345100852973394764989358055576244610364324803691655140897460694919795917188240236443418587320929541949938155334508076 + 85437739839745120062507083433809874352342536019169543544459165800527702505599210984540245663591040548907583276427561596814464028167317551891043142021865684508450527754647940951663200667861639520976518289807504719004079130836206867620991539384608241119789612137738037315800425822549603686012859795538286735486 - 68210383170251353444397385182437205439362713176879617115062961792826901300452611032241409400204369579522365389967917228879021619388732750316921895077496980994609275953044362685735907656648715808738194789461014826725187854733730792233424987594792581851243059105105417094913833293196634562517085069780376286923 + 50341637688749340546760408813237495973825175379590891452577618276271407563836721376131781475808783030738977700454035837642900883277491776115810566310587461846010542072474744147405096681446035130932904683465255612254790121867930785333263552109368859923828788082641273827391148694288690785868048034804836817058 - 87907735148593796170467198621271554200025457862712278645185161363094094104331633849965951987100578973238528685516319297852991051816592519856873264619662594126303502801728335419100447589620966911942352621156382638322979992126111496293696113774013449267999283932687021402228950454546552833817293046051884560842 + 31458580220189779672500041727024200185373713699150670733353979296711839989217851250904812890094475252935952498367016623479009014263971484027702859717343434805935679777268528320975487942001984825693556705048449265880008949393923534042743395765639081309124173017943359128929436600847260585579545489962563031675 - 27574581837363566497025452176284094466926707290061887542415614589368211508921413131087382218977064650886775648938794123055873238919417273917811590368422997765345667608150918842518892837720086712194307368603596016063660573376257510911889013521953705484462875106047759696706297372955215704652912485434658222229 + 38875983409265541019559187298022748648926919575132740437543990239224924849199187805627504277354382828877700774987579054890824021297304643893873899763974265241337110872247890958538725882401616131437121672656581552749110343124522679582908975063042221813483240265406600318899766209481276514604481456003755474052 - 49544647789408264123877172531286892404206744464556924412014999135372523472859562071158097155328004575680114520350845890053873840137632977902932000723529913000584676204432239705613930980690351548444680126028751031434395062085756055603203872970995503810987537752114332377759724316619076548856569980928544532426 + 95626116064288586745314086239597970173312773266310060590219003605674605450202586226939512654713966280142848704707239029054405815114219385335057937654971341168831186199450904106300077371931865860263473392418838112661369715719693203344830332351847481520382003440456885706972863406543544165332159109927855827655 - 14689164707657601578602709783150960839393960152049160238268471846275506073921535084406556190930309929515271130946840927076103695734000299477414454743682301965711637296560906528027373200213912451548944826827766017587490152502960696793747313349467884606207283607054773237914013750700225519506168401171546790837 + 84730957001734217916619518479634504994960746986794470912811008691731969550670406044657325895449032320667123558918638199734753032389362280270017723481884692430513679108815341831028280566956023066639720419610493663905846980339707876094059930051487475111406110613473860940609810525547808165895996079832961476615 - 55837442551314819915844463385659974916285673004960781734407547813539148219805132551140581076294735368116856193739033417035437962957379846654311610590220068172713205257257502847566726022981942322661629342527549796834935584794916653647142473749285779245597017227750322296311796344362995594526268113367100944263 + 12278787154006099093222425022602496507032101480955052645423461377485396816082386918303789370418145356584872439973844000937563662317160709556967148709188000062551045836217986166037278291794328737689088686455699519193741889506702603502849138629903927909603917191462530881718098683240263389502983367666284193937 - 26220445263404296713913424927418210145906797322647206253190752741507589135199177647686034880671819303063659766905571583718779987336962688046573289166391230770799214432608881583760102806089941242180722516154214995539623730794728493520559714300550714153348243272322184021315042463581487562718654075264343409866 + 26066606709794495509834450481405346916052858709452948260329732561291892199362183167870148776820212875896304567213078585113618413635629478585210666806356280441494500141577789838238083897587195819514774817385092829087341088068761447145803346816870532863332534298758333209172365684877831227537749970156123146576 - 87718048424616946117304827269635717412373344814955872768397864236990660682681350670135498321514962303748782694127551485770980638504618883919896237687351923887237139505010585558589550785026850037571627569948831896922996994475983762181680642104518572300960834948763023602170989739669142681778298292648344518216 + 52692640061910149122741610917396198520967247827912135768325619994989357778422009750006650001909903472524672795541064381392884790107530081033854848912826496262657434614591727681134952541994661503228283370609568789015661317562988191516013637238888519993923728361508153656818072315259848129253447503074276036928 - 38111423516112604680084293751635601960542342659070911637618624637737615447898544677113985493571554487721911973756978482854894259344035142457155819708262239009660485831048888441769501754745066881951326077870273265031732204568919159886581208932572668092435047969596227983999902430551110245464402661014537400959 + 104736225770817240132725445281783441527917352830089321870513077522245006236761938945277220305988851383796743093563292823365123118675399064789571469294900284726411558940675165923070707420889950350429588538191600704258269410056882041647100047284900361935651965959921332160695232696592365829191128967162740204475 - 85812695531581809067061850389273523263984212757868973983000842782819967222255774332155009101151360775096685622863717660483655836149274254837204614548216143275155975161891900929572292568567647190635477361791446536663591814099454762077011363298727847411660430383246653639806539323585043110364948547185888520156 + 62714898313358615799747689666378258721371177183817660270425681248445524473872183567322856284491421544587431777509059952727506923779660870540102462292644620789612471682710631213395808472887700002673485434548758662935804693375176493332853635690911987518967898336388017405185006802439331330711409150234782736084 - 47456954107000056180732069605775903383152757022264791491313500986804152698881402647300430447566817079359740623789924248964439093878193295755574411529454011094148223044518337208231390505530032694476701749805870142492368603115028725706688898720770278176391952282298659497406431231102376697154568297669178163662 + 90047586174590340372932174153761462746980016274590735161135863210436975864113648674821648623977141737526752367207174105819120141489475694309245064256081135073231155780528051515633048126041659323625616603412326911703712714260862209325644965803696322204834728804912864097118636625943500060188039674052066957978 - 6348631129546966902621678011778536014353501093976042256077488902096347051587443882641935435081004804026908063043483462731912543400725474334031870070491145829616686827051967264630225011916997324855104844183511536187938034175041240958385717681183985206656950572548793910701238510878264081646850493252868772594 + 82123385156789857269168421688131803016194486859159085173788397372068534727946993044603168862744881754986049202145779336892541828420613758334461690743303120480315326499271763397716876059892519375820206612950117595208639391200114189770292290411360419400074501551586378729131190619753891951065871501561909533367 - 10845308044068212046066367749884897196073637141089494238574918636917062662992197990310278491841606959459686320856948748307308900630616241060011256898664246150369465671188696677798990915184635485885301533589210036685421351182773689153198295547244912064759868066788627794693201863090816405649890864441427517553 + 105284603378345871764607003389024436203327959338800249819529336359142326882066084118420365236435244596699690985810693419275252455368978574949658600138647970849736154708031592888327710390668590133982749409795866085732105519524538168496788969358881305873400289609449472808326184782442753465689487200151284487700 - 84086386446600232183964774438670084481408134582464604265632892981894058130650699956548552877971568058281867591088963516662450057310503457858691861964164365198112606381550345681796841132355303414130084139721733836037217906064217913126648510951647005381286779047716955097186225875008611365857369981676272911017 + 61904477865735275595596811647973140106931113105427732547466139271941187857220807626978102509930627901811444302385138622958694950170826510323343885877484925204604777693168517261241222872086608925861846511701286392394189155130846266128401324533245089727197834190539530286922557338265234661437702955893547364579 - 872877303436597578581743891204391543046464196936319056575075321749878907695392617365819529619652701954770515390785170136655489435169552644291652940038832290148291428875916391998619123482664184145396154861012021008920362261791422036536117582585890382073721628679972163649392614194639763698112039882022773494 + 52784714118592418201489481626309272681772296640922836934777045132064818098555708681936084137375506849950921963542946331115058765040305546108906518426777005734698736027247748378861892151634805066744549449456159335713564370601456405593419854952697231239480202038881362085835312353859832978964476333657328048640 - 57290443252910887833865085653460422768947729292159874803923839389197954678073284361113502788295787921483574353098340308126704203348176326190369748315466771574460546104600120959278641548395859290250443309967041455725321967035759293639709193329047075199270633449945285768820753758841460920568301026580925399796 + 55650126137618943571851708376419442084734764894861627665923019291696896911462436625980742330478967969447338996340975091463617010794267675815142581644892868805683571524590511598204104126071143107827552250109663384238585752198872349821470521846838844295368799778031421646311122716346245560462771583096297893036 - 84452319649836450630609365520186118060365609203846580295175050651363054011720822763347969388515791139109542587231266335339785720870195393007324864667392493710355874896402976346725477778655955031692772003656787883279630780099160733070137326941923459985858818273103154791518370624875606657781333718924037910874 + 48089914502754882211444926992771182365047615553954585818533007819808568028620691220394012302416968521927145518348279764255630504004732999851016660194304192228689808739254084321800819866180874323753462355757303210295679710850687352107951522254933660756441839988425608118053370101363211651334302760373261817550 - 71009766757263962961798937559189933849771700478418235573742543227048853924350487500371813760555701538419241582770502624215369357778448924603332765258425716416689323156463045995699959617479296569451155819409641503225849514173523669048663120983246104459473371673175092482541611989804853151329927792895980606953 + 2827276458722936747633624814888468616527915210956242714655650524238234330670479801462093851892678682741212817513024153615183520722644661583724626038494307538311735224699247498156409744309292478238276044279563218100503757321521764317465748797398599150846889943483315455652433035615869025183329024756095408533 - 68914902392203966918173882248760084657796279796080045143328973881692739890900911709692488868515419847439298302248047086644702841850779121430320959620136969274851671821063241945347867872483450700361693096562238187902730695629828307039864603390876106709239477299158783564734953056452781993662788532806284194170 + 7006869646633487747905297763034007797134272054477002286347985896896358425522305124409177482095490583334116273295612426255922548422100427696523335402663770189427896058530397377063917458186757960891157217558918844955449876248072569400969245279442957904277192751786952243157598678144112984143178372580928142763 - 82564956044934693009635605686607919998582867449086117825643835217911106911951521350345272313021231351520853169781573546539065880789628671050676850317906660692593129231331770937171485615461062421346132643878760418826920899965070493556087281492501486355174278344866682012792108535559229828950230922196047459875 + 25110853613135716838172373556592059377041538277286490323796121454564733773545520762328909395461298219577157201632368437879867724607423941156821973405049269964895320390156926421066119107769280629481986037720581523503922485431757213601355064379817956640941167557206284898128854438779158710292874640374362633112 - 27878809407316459240484440240720467421245554962138439403462911785524754938117932292261455515168416965334405725969850600439754781393962818541617142676215876238187829263384238444278153905118567381782376416995663623490332534745971318592994943097794195052083232105706692218186631687371744086920929197216838451081 + 73746758638632641492094922877614009637147721095593275943403887223925098864509380091790643245056430942248984234225782085999941841152021643857950292422635922538013851444573512986370653414685743655064550528900647186080143601436357919641515772370270131729921361325754643330245298843183367598031655296425704246329 - 62409827267212999469878061572225846170258072555481218637356876056833750473626647666756994886660420194026844565708845920463382117200469927283071879610815742161513841800942695456656726926662692989702684726768350171355263872041642561501552277494934084291247294352460902973989425872649637262139590890498992118167 + 13558253164803670897846793366831008991301176254287222662222784239873704997231490210896261596011397716800277373419305315430467020444145481097805525630271665060601573796893036673599124259808896624308888214940750105128249540113512726078243473212912991753312449873736108007177775425071994577675777229863454762686 - 12632112932858155316773012502180188468923751857252639556617342224093916463531364501851847879569200992980972927377077688537187054071063520697516891171374730846426948485874285801177393997868083857404745660246832565852412890866720535953239580303944343740739511491966475417650292291677317383680083381743277977357 + 23237507166897260733557130622278908278382698955506061475808369216936104988802662419676340252186530349899629367265810934533848321469056541029662563619730440560013658295795518840048467090233216843743365688975034417512994414081394502473950135850366366473186453161609439329733170534110773230993749349000973485082 - 44314642933585861329159777524605789327271337053250781524906846155123435241392182017245232180079624436625742884623056119762233285506690874470620320129240862495506258778185748764837096955822662512426135311191752613060216717928237914660489881564899622485246164215053835393437578884214353582962120407540164583141 + 79093924035000596291910427547728471448368110748800961952277999855999120938593997280827558093791501380778993277681328275639968180315053936499399691831968878722161928522530093798045525265166226416290038429258391191064578675594425050272242576547351535981036919150221146437762229123839026890319711810609689520461 - 58995192110345614351862594214764006734107377862490384718606347388208135547460912063346472317435696980600360364892770006687028447068223333418683149886092347846377969567734642671297921296059000727249304333147034816832594564346198962274728000133212417663655389179429228054510880018827524474461182400429879570469 + 9628457237227842892174976070428334784523600795868143406931751800004704667609899024585671688471242354764110185032013421106737414584192989143924195371528180099074054771723191640143372127583759776841819159325957360775268463628349261941544146652445509245925633389013055341511423592572955877937511289059440499375 - 4475835927689962879367814282875087375979324839408013451654099482406751379379744946610678301487168144566455011530244658020103430239409747408744610246061176675597366755896205325393811277114418206179517821610867271091821631796899795927942200684527318213077888059339707802895290367179881330262461183712333857218 + 46622054024595535056021730295642985921950757706173594683033042980441594981207200280364336495844828795705481349010597029762626783915520433606275108003105597173014700676431311369982051005453230648473255546714172035517868111774302649669055693262474854077977658504386223301188009760694184846377061697447380178970 - 12733918624007170523040997167504959015471697555907397862066240797353805037299324404691694488975883875371168613519222203857182370893046009024010586840607866242393559592880463130435543062474770168810946178987901626707878678743034805263650912658659573240691312003607738568627683034548699344349915991257960658915 + 7613514875904134655156285610988682006136146525931435026567879796999378268781506025051647854893917733948422592357760323805282251641865255035278755111127651267868852317535626045854693285757321105049059842413099715366689545553214768469546056744384463040465137420197080453098396016269041772490653299050120701768 - 77824980586525596076661070688734888064876463941989934999160418399958050018941717929980782377607094533043380188715256124507850373976126483074356797958701032398997771992130068729821836772451717728320748335393029270631291482652320985077317252487852168333548612003769043536238203298958611142300218039426910323397 + 54841971405030277965759143680763108765363216172625965388610190223757717006883128002495248516281680641386275335807528275332693028941198578727309321936342380955639636068010110794631354798998610069223854133231793547664814444378271025437818047362050267273302041803859933200998735016635665546091267606367880119027 - 87371234411755067423399515355736662432072724407533042528536901701700195558403257481722772355704269101339650294452829925379358784985933628493080360406955402330333291461697241058695182567844319091676652943992178617279749546849809819702846507595620856885851896492529534197159560580308698280951205994072317707757 + 36145098873208465778257772675237691963506105319648869688052975353985765086046977247151556549453803360618862048943348881970722836567460157297936755991527074843255889356123679854119532853649062416321729008074334193288342666280501874887365008502612958482759303885608298725075609181604088017349890539480571918050 - 47925815271497679311857754732603496040248511672195840032397925144022965779162276285472031552368156708725511347190210336624342150734345466399826785750593140359625361329772263003135515234855658095441316570999838938806891296631596863507704235089785403455304602912038655170808373257978726272798158598978048940921 + 42700190865777152197396950628698080518251374599916166044779296927167653112725351863365770916467452609591606440264309043033987400555953860098055474716001054680172098745709047491106777507508640242155148105850627706649628169762095883961963045022213651551416259182915095818020023264684551817506619861603324455757 - 49486025867273787485527522020342526480259797328135898294949627062692963139828762722332499611196284411710137543322411744456565610310545572891746737528919931621404229187230685809322704746802859681776152503845191296092542506406419431465539691724999407805947865605137142551593266459185421912395620636114151030347 + 80099861223656468666870421853213786766172570232131938870484777800412969176865884015680377253800928252879864794755230407955862766296386434911788541168102058980016235920997773304023249830734790351999401176111815700401777896538130201234631960042741831554882496786150114910868368445988771280084887658120214209674 - 49255486689241224809572512825346035873167186180382759425511271890177684426695470356085850285231820823284590442843124336737158324139881044957963456155500616755696837572105732468950824408267599267897012913516054178558208708010293622799436242837639788437829871051000305277100341606419070870757721011362531417099 + 1536109895664025517823027875211027735789984280467251641157046707933850727087434211485450997781225167068811640343811267724859055390738552804212448081649340600469558781562877167629169772242089791479638871570645290068655749056463327698935495924122760204694147843243406437162214924309596058497861329605448995890 - 47536683548528549512084240573968520060121121517547283105413884181731986415660598694620342905976748741165853495246665313011561944766870860988030793394458564701379708045998346258697585892603996495897649209417613230675276925894743893168917560436053397139311501961974843656801469202054442960364078291719733502934 + 59511286993830726432745377284274948811967339391113264394497780951651229071128667851258256650790377163353128868753952289993628578043094077265173791250160867326578352921197337073136651457232168592116444599916425043668006157147135409081676019868302652699657615556329143052326754929055361440599347731008003632946 - 15214645847763729233235176225266824491553994241765748084983101247601307254557390944405931211995044176451313399830462632375485197034710186334641220519965207206453069987727191747420889118345673937976394168422549859776333070739769217766750623708645905070328491826909004240199146512297803455243419910483154600223 + 20066583756048338249346576643989148584406116661919849346017155268723147856243823111933379361969923513633963168287742266054704866038149855810615753527628780213842738155244771969916125839640801610218964798872311444491068690539525011231748748571060669890942347790324750830676062950091236147788503581081369053618 - 40519777729731625505583691572562342662118124410677963985227890864800012371489416927737627174955426040177684955734940435539083176640423120317455168958640354237055417689284767818069279865295452838410971591920930024901457279105605682909850283908040625400509063167023008070817506980315259253745346937042353562423 + 74062123510872955584825789771628862754751035512504335931150130154646139588403991168623589819745035119276603584618528466919660669805187794494431164546039470918831138165946998363298424040103709817864268465515038547630061060145684394289605649520780906280726522104690846492059941607901144770871321174243505821291 - 77981095517536456376321040697543410370857547289619876710593901845431459040638288308976931083537220584137105878726032036567958578480932015062164967598485716902469230190402205236615136357746560955394524071653527568177520497931954875334762707024095312224877639842377614259201934871767276571508744186964047922079 + 52252905446011943656539852703411163091847220700728391905789060395934988537720151808707072236800879569165525217163483258522878657582668333079771551684877268430909454540045678608034179436740545734546479069609590213488642667607194408935760366299871063415896409412300521966317962585570041005381252752985105666459 - 83237835723716077119392266244311635038786604054190876416258986046077582220194441873264120553448129590392209298192015408789412992609140894283828869731892406619858678073606944930036589592558699966402404168251704744701905981533721626051187546883688102872888478205581377889847879274343994846180921767534249691698 + 83952035423909579136383526684565258946833358735752367478366223582979306567231891892204182029939152978954768358152401061841144143659716024025895414722413298637101430429946000404518009381094078248135579360553838978244132145887907892864002886458029944782359113859895194707181142144117564869560964233482730707571 - 64884591893204995475560858068187632088622040303135675520748689952379377418330412579041087298176169075453044640071271668928346135282267801105585342222027227110847225456109192811838164363624413752795786157609554440397689438720232655519924678468828096092773702325047042098852672625776986624329274605121956210290 + 84923365122573404916462086718126353561940144764517403397572070082586570324589171410262596853265174698082564905646000725523620928634261761840579345976237361600554143202931071803174763958607090200894522418762687288576829521997453914136026349509659075295769849972494471867827404884117618822911728033945564409063 - 89892843540967127626995186218899623742635163708940892761147504416781747464891861879937886035316112598178748910698671769360522314777963538692089702619689920312950868965606080762468050484571126713210250902964407473308748840898578528498016440506864153173534745848804290502804262311671752531350301046412924820414 + 5457843017854653411792231494513752341624125199584047375648658323204788070869447650821040961400127763296532313303073804528338576112297751066579189994625667450652006957366985340459535356955857278531282406261992844001081549862011254291531799043392952801052578239114838812239553902169631845288145208635935072887 - 72925445867394595181993459116059657711164763749813634626514014305725450362878231431241413373426158689612861068496489647173609479243018141643707002495328121704186583980088679804529225914591667799189348288970777405505885452195719898874251306677954129174150853044269648412405724919526260534537428112260266334498 + 61673383279591288806656610448901793864145919282884317133349214401665386161792130788678978690917185164560488854030365562588502301905750034211189962798568110403519606404442900467536509101732170138082415123412449278283314915559604196437678852886516062723070622923717718421074870677181269281348482781316726800254 - 68127345354625809182422359294296132351992905316151586407641545673610005854381740126807460720807356493059199684154081271252767120204309060602962363260703330993679449279306829541055774214398686541999511763426835797310077675312963932176008065145338480354202348384019618556216762874651100483754368577452011063234 + 10219875505949038059592524360000702470870650958225264441279557488397941339891864802180538893570355955979048321706786710373891353430564467948924634646158115454115284355928709926161138469962237303161069446819082091285925200831566875032632163879539931576037037038573456130917229097868851668994661776931167404113 - 8329041423486378935123305740742842764048791148197659126840212478291688285131296881349680469518832977149259530450373457614142904565101805434244628574319214324692641539772694565232441722090663163559508634156571563057296148696716253072188987334167111585285831827016201589647765191779303668883480090132518398627 + 57471116683011393802252322386896369165257113273653842802508523393455022877328469688822676631974001740357769837694651388727017654199141135104272290694164935445671642233464573410157507420842228775929606835890029392415044235396627335260657893731095720026069778430275980018683074126645429151789269757574870281249 - 89135916419350515767589008249148247564125977605474894598447109138737659114860987804312196612800831412139097306609238540464297037033355584029015793614914752935393911394678629366704077497594680179623045348822888945084058026530631575063728366355085819896818210879685611917272828827639495759415724207862226768001 + 35346493402182770652767277748789444200571756632030632138629685626237571759286516924620650895094575091853102467908281523802113491554286884464499234134118848960605388110899532163039647753903233670685243530783639418750735592440662152250670440595304088679824307780492730019741286517439870770881204916702062774754 - 83710675579481352972591063432457058979178694493809311716853816235560797812363210015597132451582250234446410424325209903855657792492487515382914147519244327754133013684625011240278110090396505572722060306916016719777197683199431325099139219494721481686754607843540929312124974087258510515357768001588656139400 + 88331548702714402491320775389924180598135191284990296013701909983513485642715803217804581249009182868079473458223021812931534199390414135619525531159660868592028125257647512280971726126721236069432702381347219706388535580447999205644578173090992320585007819831222847045793815561483766355943057280298901665178 - 71205025098375468784274810458412046863336071183637939263699995849236824014356084860020660116271810872807477080216813701015166087865895886017206090731480191905234143793927885363611791043718903746773442937004284593385304650629503547003542968487387498665046423497472909225202011145324879801986357998023074847451 + 69875932847349647436913607435598931893175516334035818161460158676239768936215749573669365713563926564195246526598850942902448016419205417684019768666714099411485650336869959972262783847591344004019151275274020814165943421388805152476244535497552167584180757236922506365121317463882382997004692160419302883772 - 71197075950704484192624302687514999037942306853435786418206229040361707940489092946699516420682869729995515008226604880265134288344782759497833742309387867663401137040031162549349154229168167428886739030339543136833961602972778322884706121016312178093224672990237881843661510728207712901862961860077476456036 + 66734454588617080580593027474576331656385682224599433431603105224249793911626018976357773874626929271744719535541595848615969945483365963460133412705040096049645903108895444014133036938414780995417121186103433922034522257257453430968470196343325203189483367012498949084039187543998760878460355163760302738211 - 76077650603564479527911336986235006857268156256788281830522186081152734587816220368610221942097219206103848380530279635753356055625617782419019313552670669060351096002380939312282903569798638967724738571166021066663308556935659021473162827899357274327609735077930545945077118632942450677208495461475041853634 + 84498761187509310334982644315299417422216443446604910660559566490516176677683406704591371861307928866507452314574612818959355687523113474583231677418310285581904057100487259772924286306271970618140360199035099785791675988452333579123166939777483726158345624806274267460429042861171048263839608393948162001699 - 50874573094226557600828539947844268375751868769454399163689523969271502486919131953493248616044147684418515719667353825469645680241130070176887983413043848182596301759886056132134601719294050861765588018204159637975793741620902935012557412306601008877756255301615898216760724838759429525022723403580468931611 + 37699852341082406838747755469888311581496032541821280318027565764496146828964794061444453867615808803297625518016649607383336890769087402727308110331321318553361497546767841111792745209652745815007264325519226380826412049430956370134781317395803941489520228884721384752282794385357814243034540484022346778792 - 85993557376710260784734047161187361685780506213842816801559624564375613269889439312342345668025328553276834061723744177757429579256848574386430404131235853154283909725123927803283721655358982809335850971510586582399308081807322665120321456168368979061116626578985113290382437530954895658021405704681253739190 + 49645498174894430340654353221141060860130561831481408112411626688406666244489626648818798154255595517240265532434307291608289126498675033878789708361307716568321628258981268769972450998545050620473108894464539007419943658005830575506817940988557985671407188868527971058864957963231817460445085021336597397141 - 8205763852307011440779373313835764303503315481972626516332633116295460792451202589850288876822176564925614235711643086828715674914583824119540617059972724207493235790726997286851130221679963082111697605290479541824863579253980929727431210320231717819175144845602659839605761849779414120239184288674660364383 + 41366998193703862428053647431518853893248503662742646660635171344794591333592569663056545234028187641235489623121039324988522193902646566748236292547592448092148217614903820684452298697758019838527282636118488690600413076448452169824930593430047448347037273901696511988654816163473783213754762424949128599883 - 2558996747918894318139005695432478483874952651096855859003151182368181871490440172213494860550727001007409390182265931707210233515120620337401045720189261345530639663338490876491957945194007774271519861096974200738196075719633377801476015135799376644897583396922659672048194812348070143756237554413091299367 + 32783663356901842051465935692473520806710692060651008119377339333790805074913631471849155467103973055704534706725744115541495663817415677409776247438357443012000850799890038175201360031195903577538276329565853007250962915015954001886966628664159090067812712805434053210150045415881311022658341771168266354025 - 11847361046531282988134518538220131309244247905148041780202741954115776519808190647771134500122284889179421161432593826718964062960393440055594733988059540370834683188851939274509833204924728424737497245064892376373077736367642428585434298853565394580319514182453833043417245411629047270804051784638633567859 + 12084300415555267356413989887572671580979792235025604173681900230081753600380204774287095969865322595886264031191853258886570347203542695453766720073601206261648526808356905884488827814091180584815499076571232202922234478251369033947390990023028720226491925764816251397194468464473046553361731020858714915905 - 91441351448428683066259756415435366064283835018122202366505156865483342513802205791800246245555940852697933047112151205886201684721201203391103745928039840409817029595645795922805384736281771382406606581482051814981785045648212480471113710601193839175919786789695130445774698750789631616456972015054577279477 + 69342282145038930415872843278154145421308527208062368395922723851122521250567172245401323546953645332213823253847937093601210401325018241091141654586737320123875355354035441439087783952521025377082061494191500998070600303875492402411208493827322070879343998131677846226954111058785349543525683488272195154082 - 78382955790430688295015879778545314574872982530057339040301104940863047327755521638114168150154820011576768210924426485476461692541813646631482843938897441772265262853198104822102178630680940850269892617798537959648628155762552833002441172802957807935482908483767005646472168181790607101081762897470828674798 + 28231465475985200089481418883005713210630614319136684339115190160589168872704923126719836936147992130848177437706689691326367323069049162490056637765179003998585758764157028606397307573562667525904731626309351710725704450996066360501767277526533902204661841067225604820352291476565423101510433050262030139190 - 89999413243929527543407395754831074007840368205291366886713370783809256576756915705410554409659760352229493973100522851331057976543046625716014277611063619039782722790466855905397243598851035123865719664472764284183428487622076074422272065281674754413351089591035260588263914566490462028691151538944115239503 + 5322988766677205874136274371801013089431309058788823526893541720333246934235418270881551195740700758373735401702347222916286102010583332095307077967320797627850951595688769447860381749032555964294545357707004400440059499019741899367211742946271343362725617720133526244105139891672486263554144225931767840446 - 6722526387504880352273731379255408216387451244309394535635016784377819904810031443031259408675557278757511681383204292684833940249042868700360391421735212239130212968543937708300381161854011811707013522851610927891915906215596035906070175126947694014501806225196253225216628265195104164347231331645335792532 + 104812177437055318636247191075553124634967248625537504880361666797756343337543698451023758535021480384327866365169962619522599098509753880359368522763324072011646161585548669517290033788088167485390903183392023658008322241172235365757498509266254090545485983144995240120330249800440188814607829679678527762070 - 76538363327718581279847356624534216042131850998561520218578582365221563960398414519055642435207992398087387960547407224216802035686242699757659883899059139886514983631665227420884995670523527831384717490509644281530449761670684580130833474529136268441479676911227374685545644382091222509515796161225768221965 + 32919873749134643921992923803551496357119599728101851080201542869256031548635519788605356694694537995055770558524106726660258757871035900362775972859222174773053777551581002697993848900238922177637348214068941872346634322419517558910628451092840484677094977824130439718043368026286417208923027060253736237320 - 86539064665035272696171427816565427613532971354309852994353282702883435240864851277363593664358961125705597718159725407074123183760374483403020006435419625904873484544333618358373276389302965643632390243547966122145089816840118628345541995189760284830031516787270424519546683739093817722906354622831933006489 + 51928446970245981362982211041419568002095202392551180129011668405557546591913925784238442211599996944580748014624854601368033154191752025841544535661510850355405077686308676901569193671502392806610021119758456504916887986349606876377443517198049002603188402569856482551315906773591658258936142197698073220543 - 27604013616928550420324981328699887106711864905342937683707841344457027037225909740816479286724997274045016048372211483654115788911402179136474211215176485031543292222913892724883973189193549908275456493151734925566433337472127240995742456313579305586912115843315603588452107401143698681912489920185047830668 + 56264650073291870180958800670028071205525854927434435876214025158635373290595764131210814864500910390168942328412291712066509795942180894526268262503501655589657462622955616463426355399533816800430426388905220097207870637062562624510137394121145370980769958807692469727281394621878032782924272045435405010238 - 80093164937589445315408981346597434260648606782961780677923052215252763106752610808561511671785420768036907240562539497865001683661291982289404423745206965625096473753963625901001995502834372510134525210892801270056663098744766507721135552689225237346182362293819047617550401293806093392864669869120168002081 + 66627284226381889392737771691476946484894055042640686603661077040257749140126126562444822231865603538659297429685954155399850288910527696065123802008318372128267009453993323845046789748655856809080748999086582781802160014210409119051004123597143485484811986599212603225169320697874574776418604621629104845392 - 40300909731984204687788968905973998038502406940625455085357584465989255056096490695994495077062000413676516761219522331149661749786202867499257487975452863153862295480342769783646632551614987730402104817048931630921609582097108751494092505689902733681858400631249009579807609146611016000560017819495454072445 + 55521016864352876814031838784865895186344217647478649414347206632896117459155797456396676172021991552775296830997834243870241552421628010136901902178908712859831584150780983491661032183665844738411781505514033549253426708942167768596704594869901566156195514611502588349486885730741453064748742689707406251059 - 30711747015649487232889461019243142625411483990668890824807716935829262745372740924730958891630019631894676466900270328072118407294704899471734935940593230009455226195146882151135447851813802406028443247035332181055128628557402997357506623058018450053763910435307885561116091335813402803265682817614330032783 + 31553075284440854555074712758198990525655710209530803920976115345863641014100501765350069318805902733522487323186185078068807738901645318690777800477459691026266410272513601420446693865519284581250780965223853444989058325410344922252999975758069062504011922291996068382319464790152147343499995131737205275385 - 31453176651990871093120958113106811489385805753533590242310876685342444186614597280262123959798106446559950425180008307064939248446197393568132956041370650224920365537633572716734255286210289688737031334579926092051728633476628272638044987207078451319445370312910223625821171465536753973138504352638275737476 + 11512051300012872583107077198950292462486526698876379583924793601057481818520941141286077269000547302703416955551272407683009580863776614169253201651392368364404935661021855375028817974625880720583109880897518984839505136995452220437165566395703070584008198087827323190580450256246873691537415956974095371417 - 66312449824073214987726931032041338768658130032576665017179719584729731429797074272784031109525037145567399217848001611194251536884356498434572773083151451012747523423725248974238000942610292715473666540619606563623479356801949676421679820256822188707782457260846506536672348004317853672317071516389823471717 + 64994167752972715072127444350458648860793958969316357586485891907054145900090191068931732010496663359024169355707513488748254291720590150505627988621032167418244212291682233278323125462133242449756832655028600257792549483563686063675062893977034407521390628636117833344353219642077732139272332407071173326715 - 49077971948343197525096538332254897673652282750462354303612188798260202653445590500193813662683797691353274593844572128649858477464016538003532863372465111012449761355071562370980992928673701594421240029691985902074460220775447807522686918866441528698648948604158165411964651853693991553275101108047347626988 + 17994007346019023957765894249081876643258881234723815393959996161183481736640493176875419972335151248390214276057968492882776441297216411465112467992759992022459988642535860995546529673607267556182496123591250645860124230190775620461967407675975370912147133343042416918226426926127217265642208303618440114539 - 33089917991803692553066831939032269095920705845840962044090907253921732162705499185992250656862801518955652920634434557748465934841256607378666735584026856893403446657192879134978527232259227035197377591197906816728910955345765658486776316973385270991954956281682096216748558063533006275470936829006484449984 + 77849246268985361631444328440736255742230736120125390554758833066019123761339545409269989018975030199138254965007940155772325023192228821568627994293749844100842894873536611572521159554572718727220437950997976370175248053407056442199042631113980241841206302775727234978108104286497524311912087201537362568541 - 5083408038305834170490364013141741277265544840916749094198541740264652686045544740764719806425878202351250949167386008058508973953165909581445239766198077370341407935960013931873659222171747491681490380122280158155275438226960443505452616193755948350156645179807385201888748931569551351877110452798526382789 + 34220376847902136953230152179244203329989736855419842159376790715705608944361373839155801574326485703328565248281957107561807062598178546281647161622076711591678211049125750726613988945342347357700326443120550902793291900293148257215196909580918847954627165064296126943199793797414997318545235906206817859989 - 86842597800283499832453213714167427520642170083529272169665828080547407782094697544577075238369976508489656042158294483531446189334757067014898504109827910117961927083985487272712635370796634269142481143838953498408957207790343571620170911406221981350280229483549766715183952876370397369988739206639328717386 + 44110898425182377426480157519929404490575864572232011958056080656621525847544277305669196546989299730884490854699089931496856375716992784745460068421314832422199563816204699483897758997329212479186419758639839114038258274490599100347420448597134808943743944034002273237857414410041336516508981245006443318005 - 42899002821745409191273742656482050807227011242672950003994688294606320761297736531948437347043891417908750200828946307120445498141320624314086688246999319488723776550989533726839391775020687983663427324963209609019734335567990365071612336726705182023079362155752972650978921200409832035853384819230968903455 + 97123220744416915989475526125217556528975260584823011331544000731409631127876578973673516424403244556638087285404598474223466792400908508602098713580418876445858639018037835729958720184713649179868280008586493033832035133670988264268721877881074452220815825341312831324541044686549819162009492023287063535807 - 85227209905656033644443085536251081611017812632205958879630862249400788716180321137664424062663316386564860935513588115798646067032368426441139965567858723265657957312812623248662587327860698532878590174146204251260661802709043840534538481640033874042958552859234363344112702377994312499013448257026590722776 + 40302557221192252226724813167468654131303241377712146967053769673346970745763306927072237975958573012238949102747562099770702594569090463828109639065068536657450757508218011039335694676831788518465505963771666449898807792182302582910674675834432306503879595677639233868036992193204447582273115367581993139750 - 59207172803510489214321334169155158085819262799759341877456754363434907168328176488979535769252047855602838346683326134174507077237821069647892598424529978839478622759605824489278761709345966746608188412555175293033147566109130284608797068322348129230871365113481270941099955044480221855224658682649984903817 + 46896499178706630043895058320414921514939971476794008486480261314351538646545418580414919576732257786498365366188058407088210459073544056449259738092505959946357904593378079969072323498089624292668187337540047173315847831653584742072266644717860169605310316881809321147927640533452244340885192541111525301363 - 83019942748038953476000063566113779779524360893404756195214805512139847375239086652556511198440673783073314887606572081983159493580864690792691547316284717318876715313847382338066744771139130253976942851698780085916949459372698676604403197612380717152580543497893758517674885410479629223862149032747227591563 + 90647007833927974940879292980875043914821332326873101925118752516738676237218567062442098514918551925989577319106810864267821833249110430628334349175247746375190888137218916313811866884611485641679856199154711955799854445471836301657501415382775695820181330518298704227846138332712973181050967291817317088035 - 82439625474398256150082537168629513742299162975851466135136654858201363025776433932224905521219182498018585305985973837766244579187129883831970912969124715635942858386385189371813066858356537173351067879064002443245813724720708400413218831922016332203480877997959540725277416110526500133466004275883357298547 + 12638773022706588510758460585393364236708786612174515702185779874025973817194743389275279791560732727002266055628383957605295220027461740995470242609506272506216317038517940630813111451057858688386685460070671962947164400417580246456269253667425087693875574082833907163415705302908087675899355743136097029584 - 39276575500633489491279253308479388172901692876576160769758562424935107806504060215721398654935633173329968948841337750955449679371304561363928527577249866578917110153754102596869586298841650242179353816852080962294366169916498202448908551059070202333085819133863033167298434507572426827302928974748254463564 + 85602199775302652409463993006207976965876973905866346311837649663481673931436218594819933814146286049527568320896772930261688919359014970427064700607958520398671330663625370682076007036666381000700774999893589722791116752028473873059257210958504209430778734720115238304138750198458781627063543795129282573285 - 53471382950887635202262334286450464700097587287029135426051695075447179923445065670962216210246289733217624094755576288835457874256831272788841978058843761020061928945738984983171007842698987487565416272260535810824121285255352245649591798811691221872455105736921084503791857313698708473097207080678492324082 + 76246240510627000298405476774639301067714986412660808112257835775621233268216362222117283367694564236531908676626052983335931938423942530656191957013016024795907859626426480218185694258146548415290962155936559943354272909574800359902238396996186612058980017061777605712745885430032389712198644414793216401505 - 1275784477140122276133711584910696000861786205103345241913213903804290653184771121501055105174301982614947552061195256614870096518907293704335506569015203895514501117483871297498253741913338599422605497347351060859586409074043635295595032616373539735238145828087073828535969783147915359645096025206314383876 + 12351538181369523736568914128626126154490896845710383747560999935149422158271248333447183291130113557802888361079189632383610588345466860029709834428306396117820795824932582037502688506021637138962934723805224451823490360270548029182029197125151008305336463670985785511106539694584785177408379668975415235586 - 28960246213381012739479377678870101287623217530703411458982283540621305626460079904023905728871151766599425495342526221643157719559602095168549203863959714567199737580437197739321338202464138497389820602286293080784581917068314958544132086826934162490257273413004575718118816496477897623877927772395264440095 + 103570942796574531910555310821140044280278513585649597743853188101144352701597540287113704693867264659998192170022830371517183982436825662981745689224368291577764550268146163838065274821053355124521794225368730518021839805241093725363040338218300569869788317261646685300478013436174669592482207007923373946886 - 64397317302924513945976085518784439519183067454332014056267915229810197022909363438686659140310118113255719402735760266938158764384076499473608170068487764756064378450192582200365473161405090353777430924821925483887945263239110635161912416150954367623493809058980887682079758703488322678784972755135010640583 + 13032329987447109920735764708323785940091594348505620667222177539241936979469462171825094020186750805192253387515203817620773192770276999100993844664836848921589744588512863495369162845708086831282152112986644078254306961050035695083236456606073124783627218744174520193333903757858041042244727899040278113760 - 6459118399651546277130647029185973215604202702530488471119800735427511010114489975281966334912402196019421092419487141265582299516219437318355649702983868510801193695390739206301254131043627922792134982318337608612044150940252028664823557308506886523959872746558960538129079162417503346092884218787579002425 + 88193729832036228393396565825748297536142226628538220983597930227790651324308903030801418134560832174980445907302526282242442486082199062935599612774853394784871870966690156802614658471170662275615345678038274693296356588967489770790493450745491140200295548485359177649711635841855035115290423613067305282084 - 54853365874042509065562999551203343114758578729476998538586451129092158178292067555696044140177217456892225649773902403373812459651580815899842902336551665107647672984823042332332220589185096440028805478708766940319302996820552687052657284981148405116570541062661126985040621429537513208806875593266561732801 + 24084376906599368414362435894842188323475579650669394607824272838390129912420033848292245116581246236849637725523633481168763351056064088628807658713234397215037486592018124622641526520358728564223829266404285756145939524572647975497526647754666649607685692591019641057011728879507829193806852364399214551283 - 57731642827734383818248453706387899969695728827213675199893827813177130023373322486988511045005097722893053489311390801700390892413126037941759537073593835195934492600661158282851529077815944548721008434077631182337391484662557739500103333112382924753188493184638600193951164978739075675571831656462804494643 + 69348875721908262826422513490462958872680299842373032298205259410561080620868611880604342267636942109310223687921837194473610339922576479413989553025239963142117104425873668906470253378156774866393051320557584396920409836048070945414095287910811623615175577088105286978707899382449936905987156022380861451890 - 60162509391172086633856592956421550056008010063352461188882848488253705614247087560815834041824809711234239104259859351213153355987670807702472347265441085862204943362315917679591529043734266997386832071889149744499260707553126874914616374391198841975149094885198685716811608989663465424346455765145903765860 + 3481805656933070395643643758808775444201094849029218379307934912940717059399902534145499160959055654546212633448100849993930637835031461243989567436552621980265580288004525378290230381756115547568086815274935555793387921460363131770305568350283810270974342563277322739247158655240694515612112220631719892714 - 61876136147913711686482784056295186668839167207877869676057352043934268165398570822218831066245024462438107606494255263410831528222662178567441267528436663190755930627615478583082771369195692567979643539880871247132616362633702969310631580478581658922624078256755349888763245593077305882077494544831932321798 + 67035015080361246933412870233806642196137989446093423647316487433138010273497997578459769825483235711792993264772582703171886744817736704934801149911610622407303386928491387346167987250038886939407834959922373814400312634495962849951675463042048397018836702309756384035956767253804545117951863300421963325890 - 24648066285243313086779453400449239625459414282008819430727824373488141226313939873409554164160636962366084291424775637909416840142145508289650817758762950794641468878392346829271066192860333923609406795389820124808679060513921431541213137891698653704991940215953538969199797840648802719853380748523673272889 + 59171201627428860054784063005984144365015902299314279563187729910402993747384921684705546421628100209129809163795213958904218661802467920339260917073201809678497305151461152711261977577699678777290661656810793769406394349423700484005528397245388221536137138107112407725386718471682669724204064394250459548645 - 52624567538740860181304054280138583737759562447372624031340651589707320392331529832344872920854155093583953936057092329562132935528441334260423079647219983007408538509552544519634259848613888158003138401749223244568819390287255731003176880926400073813509385928595946362719823518620538107639603791923550779059 + 5525261406445338144753295617050936746330561809440813502440204295031208748949881449444134444901697810092949702897307561085567488161830786999238380474386097897206347065715993022267347909910168659872552378793731260098928427394812513427696790410474538182209563586245786765927859207450172692928905053609326461694 - 11526114682948367945635117072053748293971514790865578808850655950459873809712835460338717740581959530061402965427898179108032142161959226199472129921861614960720309290839328929526954068417618439876047083455871476662804288241457581260798668206298334244653542575582934720379044423460384755910427579405295314660 + 49750482139568783872787518657552653483177756402345153244887730787227316697383305721387720073854761901126435996224262840913213499107082907980401253206589869243199474890995491086640786439289673294277161340167490902030059956210000742401060566165896154435463535909979334424033484580911731493554124541746696917054 - 1934197260577809229659479818156839525768840115757498547215264318612517692915506904097592882653628374611803710959063004879795692405860500408387081495178654016492879745184777947683031743552296962419031195940054055417258341595890163712275259872657194238041589997194300686511745340714735890423615674544573875932 + 27993574032161943339964076917371337114498084522054018944355077910313947458197607454623368895458620623964830843941534772948519535245951061236987465214926768398498898503129730245159404561033810427482304917293837807617188979693256426068782792756550197177948350783243590848022423768808194124138927328943333634015 - 22550813004373274354515891336647866522850950526189862488992116109901991798966291388416504104966031451766327570559417058309695330704727891526380654137055432886596847281297010093703194702464454417473114064335711958605859328518136847241435391307199896214283320771938115777520865248102809765106281185147203640652 + 74504473667564417330257206928316837675929563537685488991105727338347751407872670028859977242842275484221626202074329586969583590384945381155004769610421315082577424899301516241786510134108089058075661100740560273627736565543713501605417501611032476296115207143530662068811971611640491813758163923103123564933 - 34995804725000057273123308730239758612127251803026866251704094143902780061901602552925758370913101826350859183807950965120188869868378105253550082621000648421223022919055924264928361954167986085086755969804695142759304843102706439076969855548201804972601443880305319693805865427697023905306335902912348190764 + 102448183849410023676440610846479556263237096672295875313097744142785952787731554599815180657163760661505212701671335684885744912686566671521103800880512200617116832990591612758065010800203347971648890736101789241073335801991594800438809097612860846833050508057482229528161543639644565189471592754589630771992 - 79840888370782923323505708958852959931644782406934081576572343718921833523094829148036061668459693061500174516036778596674833148650603863821314263027766064109730588199260204484084465868727705398552792902652765688618126494240113491483828632515281021137825294566030345491468870089369350876448591924869428685504 + 29331914435487537901154469216316807033317080734103887205186656758107654117200761803777027082011278053917294442352306200195631586092531261890699703934428468703493532419897421291628817967665370339829654361311823978324077672446291105131581186724508187861999899455040056997543478991098561409861606234807910284905 - 69453194934102555367579396462531002583197147440995617178448234352226667552643422724181568785132091158661782538742649370633030860657327282462798106743954122210194081219521420050525099063977115982629454352528386643132560158874734173336242493072617120241972665705294283597413709599496334409725993280560553989553 + 72499883789520050041756135013175657897533352053245634480741063552520137668175972372371280371141576989987095080672664816505475687928331587853861279413093099690766480623251896758057065104703499160398255248519193911405571491316819799241163568716786482843988910077615811588054087129506139799552397161473192333044 - 4357635159202866686932235946693845430933799258652020503563955898536761714934612826072646730936040920716454389932526224892586643061273379991684712592176981310180904917801506749749320159985216901344299408932627640146074810480595495096033946388798730124110674821015536466819816635926017910620550622114011503815 + 4967476665302303709071909550443760259075813894992446383513421641812158424502626282108524347875124819972984192182003867382309190409527754372165878941976268369824902972999445452919796647463255289781096006712593049075733730624677113726353940883969054962438250453492837555975129484638762671120367577521359771570 - 58472692840141160846191507639718438712098061513364048173664862353118889515137864968117725987710434171471819529240710622691118478423491891634983944205875213388773054234549885036602094545117120343818135077821020542268745478988590725580554288515560964453855412157182902861833898762504373943766182531879859326282 + 25581100567221033963833401725939165071999189347068265170962678590659586662081569098435152911533422219293593027099924860296193356431645983048706354795990311676727248311252332683239227915295400970924252887773671732918998986206951123323910395537180476502535115158517223136235947614275228676640288485190513006683 - 7070141874691531825636530688298525293636953294357185220984732792900445494034393917620021935656636795510241209247558775423732040952861149669245166268549800977208453076913326275654211481262353555377969583668367411038038125617289693393684253149305407596572693203284195287925771619789091272155399851792202565946 + 95639425760548382085537341456391875249787982516092591032117305136387905425702646185131383285116935756647775672795983328225597268116708181938807632865687845958505213010243041814623409679757159780822171112225555881806075293457037737544553057956318693131381666532273033772861396543416622626869705998734974155278 - 27532215249215359366341713055272302086764271912130340835324368651000419271450576721620428398577773141059347879872176549803482698563433330042092489956656580167730966278618406722604639167450210879436105894931487270764245766321266215622180423293466653752383883655308060647409583812289659883011541160762102483503 + 9984868940071774931211389179231469535893632732829960610151159173154086124705195541482540307330591560031750276510766040780204427876423035265398091865677017921629965230943302284072083059544243845679940599863666957094242239817378911810873531358846870006695455603468728010768062594872352272184485406625540172739 - 44462166623119109510873947742265170385576421590577621620576192221678592223853411468356652541840858760056255314723552355483508242200231868652404288621573799350311186279161316717778862709615756753207717624241009280067647172884616623126062361928221933968370753345032357702590796021314795926420917526637437877975 + 86011916973850396322468502740653532540230397525068481071072352775548572703843750610983044523391454963274801057068783925390419687081790317485468474877536719648738987381926304883304787158621748747968598424009736706744342004906881243755146691506991379133802446040362665034199983949717778422625552768934434741321 - 56541957882693300969150665622651272398849243544587909393991139577634670303179302279997989570071365935569581315133284584940034785759892187521646122792291039122059286892318260611150023696358107400859435082106129436797215512875429717869468539326845279271954127934797545371904301435032192283076452391950450155712 + 95873982226521736940241719261431074926771601580266524073520121338202040254873483480112661465425030630332775765971337711378310951393344576454789485890488177582814455260299814919618076409558507786537860197425498504785363027584695731344202520279417296411645950753451090716538151013247664617119124133378067790152 - 29322868060713645853845198389786121047968945301204574556658294854511435969498660692755003181810697730203032639923746322816725049097446346342388870090341721021742120373754096843772116160353191924972937439321845464388264055630916042280222822191178032188387598095154799418013745652402592628663536729916677207464 + 41093688087940664276993431877085552219583854116536456142151732883311496531465954861830313568964481067582212977003098260492705160257000941390972349066183438165921288262536017904732743462461846625615353175299636942527824325086031842007485391049504771000195507333759633798001748523475111735372929167385318351469 - 5584973121537429105328493987646630073075385960411639090932475745037995299036695508931973117814469902095107683452739877467691110511985285727233215635803497441468049858901673454357324523581160386998963431547573639240438850008778432962508567509686452406310189779267317631963069546703168404104058545080524901599 + 9783152030735164359793354699620747958323149287634163201709945749661100044033952149816307304463209969314208634452406275666757634095062076556665232764558318548960485262635230317804992759902737286056827935935930047830804021632343046882006529793704226936673087273848921725414866094708383709666296856951353645837 - 65293973292939974689783614025673397424913172759848673130111237589012667179141086765503839036439120583292935869934835641703596315965660144855372961744180620595857672696115718317771381050718822969147952100702056433071409943295564360363995413933120488735596108550812424613835168287306414037656124149585153130848 + 26707395742572414296714158294619430246697492552190326879087510714806378820464407704336939161527601687298386394261851692431832475282959039046677545976803318264213797999209011889173243304908597062833938498680712206284997579943583506622270592377579791982810041848336444922787886223303793849993256191046731590516 - 77338709387286453436617990500731367939974315011105553965412341314418592510766446084726232364061797908044678083293987940654995622643213406875945763224630850682702538007581417225741829140517884714886958511639039968706292787061252585611134716731646074242254079970225757336124480840154463896490340520753783701560 + 8396000806520244472288866463074553447776171840747866449689483624094699581370467232327142510137686663771410267241605757844060940436678363547609388136064210192150512132204451547476591397146282024915605750629687441061629292937826254968835999564292588149854227556381221776801181584323977288887864216694249679010 - 32855705979524571167219482665477960592242428981922393852532946288533911968704695571677946747325430653924195077056100103584778560450177188129750396348680878101373259722560514789592635489487744012951854917468037022769000621565884063997421671764131921124360406446939795226326128327122809625653524662170456135194 + 52684711529159163801255761147764284614850560185134497559106850649140383916853553030383457977777963940537883413151941699503613729160232903826920724765645498611205914976716828733374911267236231111093716914446877114194269615247392788773259200476707375534806438206963072403461449821305036750977398340928534869877 - 52961443333013756691657619980998627978998600031339122357671585227491791114029378419441540691509910962251247696628946192145582753112661803519434132788758889057201505273679337238639661969539068325464051184882845232642209166863575091020330567557909432002554617091377501785316285935947000056236004540021054578038 + 77971947510580227137948835461221530304910508862528885434714670381116473721387328924106530463224962437888091330578190131277073542125345840183214214622292309205388270942127444637362491701429018653851496749198984084926792760367357756524536406530253242630571381182101469115815409635835996975668057748845293996515 - 47935496031808834821659243741840997777004457464246918099274638890643498708965962911666482976478934578611486037570594395547204954807173338191580814355627500624937487224177211954902863035140904597405581966980287504226266499364205588191079855269282179935875537117390245903417049392984804333945698533008407477471 + 89114992230691190174185590159688669964595158683660755608457583841591717479025174040652138191801718382605594002610675321484572868125489115944700897530589575307185349607606284259745680947989304301897253933344139552919328461226376150245182612786490628811858750781322942604998087914664630226906784868584422773263 - 51160645029816634056326669223941242981080795593475184161491485844500227132663670070611006298391216063265257675821309346138410559954089484026733628891823208098285293052722354884391607442299168031173696516583889689933028762077701483676133861470301585627078442127705104373715838265623730512925764423243995081006 + 51061211677829391926212495061406024879911952329312720304590507351561900553268372484535936199492787661778869794103786559274107904739579541642354805901904849404316521951464906676644841057079845250166098570488862326042729707096444230814818311810659946546526345362339335197488171215711786228465097493461916002142 - 4709123640115513939119860968264188252324426173004117845874071955690478186568169024272023692840383220116846724220217856791840391008716579258888994943936168386215177036098973184041636121378576249114518882706467654683954654235312741892033233491895658563025051763045379566365247846015570292909175097909083966381 + 90300148636455375448568484739661256492357823379149697113954504931600521380381323623706089847114110850558219827029731425861989852498442861487672182705693165928942588954748303462994821269906459684931266876512832194306316465016684561203275824192460945404302205871010626336969392612334725047229284080346028651469 - 55316798894306499655875908108410562908271572064303570695174871610166282402402033865210664091071566229833807638775901346603306496447275099289577053490039087697309267591552558446684971759775710908184480728242920095835286594649708084628737961266092422684706924261741174749940645573770572342191833835003385188408 + 87455251405595756065905922583163716168946290483808888905389585666188391716952034538739698103091684459403557188969226789545453483530784788961613655759479654575420370420007278467933675244776315697293621363549800026801091019607663347842421445739553807519114846711439501829036432905521935149690801735903356225797 - 41389172019355625760810066891907203944366187516361325392945372038066304274982902224069371300588826474477186656431778635300249682168626564348413114120157203031261132766184440285387188436214634681392054989434107036504772567846180069055713444818412950290522073217474220736120291788479982221863658759432151112280 + 57444517538436376395524460010149340825949149402298920530452264404825408860973724440487591039252329555651042659413624887610144992539479733455971915311463610630474389866462350842639788844173006640002344043644092656580032029548085239303098707464543057935739272831400789885084128755915780122570649331541221930906 - 62111187036130388103930052677290802790497197944586731832381837477559480568744260122665957320691469134944617181341308457159299316159264326700884991293701093010182269577757117479447941277510635140797762345766024232106490312109478786509289593109902185958763341003062642079549132577171583132967572013211682379290 + 700966999795404633721155755510611223316419253287488959097289564738189039181208852847613336915031587480873364382963498788166206517888259116602171515386918412118435586773300954073832586584226624036622606097712794254389478210846934507521250820021697406723197230712644821271796105938668721660530851251458145874 - 62214236077404392159661867530609640541175964234743646719281717017186756168678012400733069950999840046781326093297163425305295927823183010389529040096296936960421653173405914790038521346007646831298707880649887200406203279700456564039660124529414011678661677450423216744611786240452107806870539946235863614427 + 27329885366114432660134677351705494153549819070342288936625718279299383964785696929662909625657141594767604508596344381212397292552143746707434706483588920569236800177042989947023107977461343824541344856479183318858418900213854793007240409753649399324430813676232861984835946961219590214587292979202843266490 - 26962242001864299019473640776815484512561427389921880371617196421494741324397318662283452012796359730024753838327620202285142311142585004143971787960112820957295230171800426049928485955631692369602900257115678735621409337066678732233532999839356781362801023260914764189314176045555614283317646715199671764590 + 40388479081761049129432571760212231735750635594816259314935308616244192013296057939799995701831574296248308645814830525314814294215616553157395673728572599808152397395805966342154644935616341781329934314515909848549633581352529345702446783743085127986206202174191894595490506574953733561014164694727107473023 - 65986854155918641886896271406145303298523459634206157099131584883577370854539467439616754107699825344099048591991615788482027964646764100885754195027585887352407868342192054181378699332263574277409298382661593514435703024239659013278889951265051503587025805687860670198126589713640336769264998129437171506853 + 5550122509780523625683767699265787798690728088553840790058676952148736892031879478952904580428718956355906054993769071267625211041756829913675448202528981533814742284995297185981236251689828328553461436914658033193538995657221485476625227444394874613872475556722119952874104767204385187965439953780933944573 - 36811074585526631971214374995799454594197488967924975221535785276267486030767147301458934522510811984510975220463114373187106673693706929369159132960667441760955379927007288384783107728071681030809093193500073758637673130439401527301315178391206610418595447197230777520383665654241866599935161549754912019522 + 6291339158081469739158840267508917813942807916711835041307645845294615973619350261375963743925152850893714734310788790960273263358420232419381476110235847195650603732741350651530326554831234017182060210076133403092563806784462365569386126882761687444911682688732088939328659535533038392657305950305741021386 - 27708490427531263222564266229636605702201818868799173175836270541189079468386943438921141035455200353729285372632603662969772442470492476994528723707167431212562513925104322168775525143170975972300428835955449053878224768502007020788960147578849364678544929884774225399856183733087094209209809680984543046780 + 35127109216968518482887362526096855011052095690735935119640571726753358768715323421528741310624446794726986450590229406763243026373034435174609868938382238266852102758617069449005900491106230221980316193480557874861471516929232323966480477652866336780381218884435052854578478637457177371615320541204862967162 - 16342759441082342244354391387759339207386109129081071305828280974875687993542142269075224497136622608076672970337453939364042738920573059577999314664913526281372546080720808510027243907287731739528895860452690601593348841043048765366168253215214993615226091837633152141202423794554453826305072922454394828138 + 65632203524073719301513867034086831047722564444888294060547706881219572809055506842051193758595589114179161239979182322060592857662819826916560278495451427736384805640446312894298161686676377874234894320872827717514713858105395738008731441241476288757474417390808720563318128609364926542140520445195455658552 - 55538695004955800898820341842451526315713350286781712549531088941676127151948107005551816840010000806409621038671546243492021005384136898635875116006542769809446052628251808561604710772366609619467198320007328180096469291748037060252447759701601274875519311622462139677129477555521207788782072978829867842657 + 17690195293942687691997536598567191541390595003720845936112939301950381199130271312562094854501035639784590972599131545634447144637308405958001540085606677801535361797981069464511664873908296782649642020908566476301868024199779405832689630333067605834841145882509584892975446864433847405562712525600481997705 - 9733998978990855412640255120385267732477279683224040359558207533002559079591227843210555623837737173157698702388419748105797477291066742081746736207459984543897754378667557320703424847868035826949442383671683996453355377604362394605567180471427031645013367339927439437067405178766663831238526838339781770376 + 232545010317667029052541662114815077107892996841706037674753818198190907738347240609105034916681903798061558211567093957632434541331257943789092301185158456403119002921733169101357844356844606519530956913776558206752105335451275302711079884399560807489321099635534169983420600654498587244968605600405095949 - 77493186718099692369418412296702285156700255634930361204732255106695707716750281311726597093571060339676243392787061098709520637632054737298282800134048076665342778430687413203626961907668358936562566039817825219973537687284166495753501454657339180331037973990995308487489491041479959439464031762099851139613 + 69257457060598221129093437252578635310075571132513093152868605417652509310763837415840346182833575251428928507365514973598877372375966852514445604250328005491912717833643397814940146261620332923745894714957187551839922185449272083257014376337322204433812061217462769441203033291867412278461384581127712539357 - 89707628589571367654251097413531987695750080325031265103042011823978656391077393870029004741656008350854988882067627253086239852526937077322502483533818021608334039329275377775870838953638482123984717822324039631513665499873851911893887995096303021179406371173795220795462552154288267949375813537569559798735 + 59545947735742869055282937774112590623203937460436799747564719372952375305304385895143345859481940593782808819406856552563557627092962024174734661292840890415012782413731064492888870163001492337187289952270169596975396549080438697674058508176788789354145735930148488871789197952375061535324868918719071061164 - 65693032702204218532816859954626937186431097931906305669599783048635795062428188526683486326928384791058500941557734723673978006878016115669733781011004534594006656240386666148120172420925800192575532502824391405602308166841024726696226701935348736570712445222493244290354692509739047019574152609883034500993 + 72849621930643634540776567360781250449578883557460987300276953102358856370650245303590131222344091844068230420387866644395370399796309689519494843923430889061401708577014628754832313081330208376584749868536259437096105363503251765706230523454292551707709751041683397522670272169675328826690491140651272637780 - 86691221253494745455398404757851584966050973790609918397887730766982234249468603306545859367645733001619029115045746505631260860407700536250528457722365967231208850532476842074615276392999160329780443828268667080638356836519548628199762476770222029719832801616892095042914940322352221140105798562615109350102 + 13286326846129721436211941768016450519794241605000414500008071821093823802937559905302776560062084076060404186759131765754462709649337381094620727009092457009665457644613082536375692091116799860680069719404081000704710772146250280154532365881010262279974501123060175530881664894389583415221438972249821080819 - 9037676643466495613439198393433141189534735819235190582097932164836195735554377730954917857871128894485739322307602867302793308641898026901486593104459148044888430342903397225429776788262514416556940442652952067336112235572034186281176199878169770443926577195200917432189892005561209295788831586088863184403 + 80089318740270446325083003934613079543369840337364155537752710881722615057845514274892712292651966948281269300012401510187597632512141594017829078668054519197885602648572592310548897733521448403682798573325643515851320379265192473420569998640676132177168365291688843976389007551278166758823552479351284133144 - 65052397015756621824877137870296325830137431684908920679216465635697927788246473939472150499361151529433530855320314279434407963591660499254735955932114349641952174098075516212834389231502360982861821665398179354614756868835191428659274754303543699221553147706028727874579583988628357427554180913312194485071 + 83250465672840726570002147879933839335978997691047803901424437176955292801247631335088771607987450037617684014717203823869607821930597804968250180649403852123522218085416312733392973590005256201921861362519283913670933832415881954951392603255700430354596527404171944114299985208961510905343563815409078779137 - 56170385096781165834853857545690901856235909772934123538062632943860620801404846532988945446759608843290497997048499689105989180894273882403287721564240879790740929470946794808314413461983780032603690095129781727365193988225270265220889284835520616428477841592887840897275024625249094980593875677712617847288 + 92183259010263431214971695135387792894029299522420013861496712953229412848511647555509510042545381928205458034729761094118784329755929274833021016481407486680504117664171884749382195988685940562520722547361578453718668416302823046041866046347918179665539829779479770348208706902152683876420113406717068877895 - 70612763138708054272660013509675890999388631847592871517678765926391088544162313013907914248203713777235480005507457864282222374639119507450530931338132860502834459277670599176931420479512068773606906227600258813710330242879343832533011760930342799389798424808360638634189144902004931019749134979117875612558 + 34719472576945560209404596277734194056422193470581012193921206113153462517907074347482367231820760244757979632486164608627460951049728820203191786788166170071163784742827524815043574147676944379276980192298868525436290782065778018902995410292426174857539194962641953019455829706060494327105516562434222255279 - 12463213689949262244053302932874981246591309150118647002558474674498607350495957029188059758398732603808823952554670379230926037515424721824639178470506305011099890240076627792974296758194392651497207880955328143778177248055982562287863290338130361562404442178485254721146202820630180406024966341806216357456 + 35406983899114037516721951137877619134368256618777416624111684485976095167443448908005851789880673177926372317109842310032383549703859731905843054625201133743024254115638833377103288884475149364887668042122700029798341471903052647347859090441424773641812489100611569357854878258879244443907649798352365262943 - 9673395787568605223996073326489111162835919638684578424668050970678048016781238148749671883847620296605473472331089302353180021518925562604163892456545513208757206464777071534969288103820418242508826729049088642405383106008180723148311541231141427284793395491111685079839631736709028056531848032338014841426 + 15073229642774490897083925078071122878112701080955031080105651763339580629856710695270782216004281603636187994734170699043937521793949813394303014158134588185674885486089132095200742772230525690550932265897245532112029866181510119609572922265856424308024870035946135586336573296111892732961890469318731640249 - 35200718618563575888702296352003227618374481751075242932758664389815782164266326863642799509086159817482268855874375740874371122909664521656865196858847767605876119894214197501154468023424686802738024034377630632601673746952879867602469308291720744221375512651846863786502078205116006193975211783265312164301 + 45312655404517580293949898234705137719869422360036397307054441470994715087921932336220452520764840234099018197669958987556586078674767514245575652176225601161653811302372542010910604150738658685206504193693881028710782018981053933361279213063062746063203101488454215245915841657200324244552735554716944391735 - 23051585837423301225552435990154094727303098060376062260922436438938714556168441688414390694434844121791255312908779728817409464581788389466149281215266060993876986569432510661446675181655180934908590958659560245749641138951381893711122006422788128865986427154353654654512087288695650074527833327216364418404 + 85582173608000685600369595964944720087480946854761299758283955354368115407497400365726987862360982944042572300708948758761151755414532910519826312633693792419257682875013888800303593122602828000602660316247717488644443565098541578992226947681287730254874745687194366451676578372697813504233127904765527712091 - 61684809963852510396837234882888805418569311246485228311031301738514578517423978761352549911447792015588511592918415535925930317654064527534104480127571929836646189232361664245757033793583129133398847958266300209410115375419964239645284590161082588157454567089051185202843307470620744288534139936369509264462 + 32777830599939060958697147091072497558439342644293864450880903998162142499653394388578697846733866139266727402463026329185583791524993251661664528283072703948642650156867462749235637394294939832136124400763001172187952978460075815700812724219273582130499008699958053354018074931572090640801545948373165722112 - 66423267363849635948736033732514073239994477568475674018640275059709431634436986060952815738289225823220923996461254819889062529279284295842357780585616243132808712458989117568471175959156289490253287670907457521911608329142354438835952283230498977801040031181568290822446110775973262615571848389772264597464 + 28065375600445760519731289499406154426614854413061507055756473936415863405786512738364170103940368449792347095562487750077751133678235837913021443168980615125427702843374077872351744975276403882563473853640542728356393955256972647714621496053063163974227631540155970186558240197003841801899009162780057815414 - 70683069208690958758133705941122042053069160789187332739654660052968285668820102098117297103275144035107402308153313333775133897111037688091831314373358134979054384992628301782895975279413966610391919908151474824470856516627755019493801783379818823249852313397940797092634921361238587520908058597233010804834 + 99199624817611775423765147124319667232422514711373423085073663393914821802829247918838893942062174601958898192689770378274134567704179714594230418444677555556198595552990056296226363975995314676568763813066517881063208908607900225925789532796875115331725673524308369451559546056487920553215314957298075503445 - 39288032775382483009484149793735149937169459981628674004371517637567441190022089749045525692383088734215921832995402520096401327959642815548350523942951971224803246623240363476136976519978264424824334417451361660290330239582431287003224764503856752336541895904568683990796031080446989152743449018416967042537 + 86853261294192183322046773327253761023777599778875688559712196542929671051591298285548968125007594980586177930615713859640524798517953017929877887552771092542323424205659371260742824115055800081065407649313238340319467838942950374263566359247635664044620298316576034537025079744611973695612819277671062528034 - 12231282815427319443785876822238430085655781913034611935444968480750972502480922892371497103948079048551761498793003976218674536825636221148094373341697800566677878846977438207522624017880620469160166757308241643814699365789541123430909564724458094880814999979256268934038182668466750797036405619543912331239 + 29536097733908735840121632557341211603850852306440313205067415848450805596542610215580009953240178998805625115840699268340411025043959100234278423904884401146804694112711398873939200298334743666634581253432256305843072844068434768013104918521081221643599965937592370088656153951303335968569230448909053049823 - 21299226919798541913567375804628207776916244370237535998579979901646648077688533327922795373606009408459586575720826964717339279080792303308867207935991524404596253725654930629868963908918146721221384889380929612420838811996948102914099141304903864998326775215463534619940537447835214484655752033797721794172 + 68715936012809364510950999882543663416679097159128965153867711216739600996392208550898166707763658901531511632798397972553921261549450465832914493101961957024783575831022185384284172889654538916023029501498753897178985530123209738993613090022531424077175618044424317260226369521904242953217477053109660643564 - 9687385811277666016309700999820427656185495674520165722532341921481976530588613622896586551311679416283097391995133093816331261940481288854378548652548484377624503031740871514908603818486940116779958320773055205800332508871337183999399945053515287220692251484413919736561132507615089267310571926801024268052 + 52355518347684034820679583465754282866598276896958155698924839329910721620148793842569737931911271982593560198464139305825476457872957189776882158591163123636916180505848307816356442304816648822807744583024096842041236079312835219443763760197577489473956111788770122310165125640733270993478166002256271769049 - 71815344971470775640804253984345641523236283125094752229183627780053196327555229207691369341762231207519300404707446797827246477558764874666082092528401365592381611755488055755688375019635407810428766989685448299666983105122603522249237760084748529064289990958349945448102714632764877263617017372936860202601 + 103844480611520454426070844701055326609084780767386774737664286403257136498548396833924655580619346016935745912829154672025888185243679683101631102279559626381830851289727483589001022732754015650033885443730344315377305616979597063062908690974486211961550863280361159699452660958078269342323395006711165981867 - 89533738191404289351120021430051624098111856242813519363746260849488509941747287084166610797087065043006395512291173632901137388586253031866014984700264187512649240299288219857261164905703080979371686934173430171645057938948938502864843571732395330672524063732375449000055280408363483903656648928101102645522 + 13748881510666108804016869440478788107119845411046749709382562362353402035027245823348996980866559842788865118173104813492029193865897851757488427810805213782335800207023948908766060903365220434127389166795020318590860556417060835515314103165191529656542459927030106724353867073253437410585173255866670222978 - 29851967234869869670789260965018787796945568235296573536412271137902144740280538154114133565223226475518528843375243338488140848973660754616056798229139850198730913692866523595822128904636899165160393959948554584658070234637628139640907399894710249906155756314686568705014095782308225698471486946134633703174 + 53055557927972852583744495843389552806504306166806610818929536354605516656450709131246347465863114148633400188513727566043999149554661315856772749993466314962895736003140061756393498374307648998817147694786433746801296524584452211231409978476466175312886875464047593511182723410020178672643329694144765601267 - 46365018442772313498372074558723132600061086902824138923182791574793037705494788136224765793932463149483879919070098134704307411242223010774496729070409385696282935778543228139127279575662947322253563855437301906917750719995510054745173787359537560726766115984353402246484310555741995873406429527340512479560 + 49987258668945965319054848851783598736115074970637917451913334599663348709889658939353428428697667989156907385418214422716296816322356646605017912455047446032771403623155639526896633472178148479761023651441905369378913702505767678888289953351640276767508686171959325021281194897644140405108279308558535990669 - 23522953123877660235380644475238864524731026185518007523619624537457101316298419565247262521446223368390078719120275055456525972166753884822773969929532832434431662962408560906416351393191282249439903777899719921346673355218604984110385351658954338019230604292136059720795532508022046849890793139446070068482 + 27462081941738993903732065899911803600994929646194851709326949851351510815846189825084334598036902296524242714009233178575391998562042853548917863866567644727006796483159397368028512598230987652310930826025084448640890119106063027433474314996502974897759881210561695493807213330433528462566301857504647397098 - 35160167929094872044554203453190381157251918743126204227215468924530189532886172944681650552898376451342672754415182777979111274813312206903235990685940282974581046775984616211990862949527092094743532230516910735829329542082664978719677180913413369053430223749637783849111203873077750372015004100042247896017 + 40669343047082620912972928875841708456691813827188276211319499936459166251158325179880660044685538552467272328237270129723753982190279971081537253458122719653539880792815616523845297980754203917707372656001586667026428193836891675956055203106917160064345833215953490122919355794569372389128223528404300363171 - 56892924621233790270775410599194502720850177796719873931827190754786499940456720003600978167209746959184596534227327804050311750407117527273537060884539308479186308261553295660828042726802647900056841030960916089645621207209645956571975699203735528401308355558948607236040631260810928447081119505869115159714 + 86627879942185409831242800319710349861034375799063445215832804868996823808194449352425391504008987763502220820809399938015204065930187659428695206143223438013464023178141552638259978221501216315383998618607932361746787573929692638059620972134928602117707478786875215414685725931660814482175246182753924996135 - 77276683096757910814618619540884117020976757801368944683282845300428856549143300693587836378777853603829949830697687806470342153894226982200779380395522443749930986313758613003242974857249130483781976494426172861449899410291527566274177731701660426670488230109241087028472011913015817781914810353182356943498 + 54834058865003460389354012546505376859324318525436989007607307670467597308536133429093307123445402065268168915092116255667842521545682979595393185958333227251369786291912515944249569537416960540979920476876420061413482922338531345300266314778271139803671136787969534546015363365609544177150577324360408163124 - 3293669705893536184270566757408314358758320337750729494804255470625704782928468241831098559514978772456861288624439361667469558117992910513982496624990175603041353023048213906321106695101488506022833862282537592866031599872510837269733442026869753014174454557550302716644706203344337287642306440370897822244 + 48269749012107061244137353495354984568142353892205731085849206805874777799635573613999134806166609429459005069383936865011497970521193848375618337272077974857321862001161898757244086132739945248147471910642263330964141309171637814753039916625981874786818966191765913214534931232352561482396774125031066589454 - 82807105317741461971514266274469238738691333477911194653949947420123035683188519721421361182236463515511265231461762230823189349543637328666718024515031245716997730707634788998746587582278237495236151814762217580789091418144046330537405219975303688640132485082472604061170650154693094353189595043156727540043 + 18673501953348854562715007182525698025864337038162913349000903170542669237567373598124029107811363086135556888790237042308076212087291888387366583936898731288479115311035354686001251753615856792721450839154366380139780950535828839207803668477639854453464322500734413553093445055116640935484010906827629510808 - 61536261231196063454602598514974936412266858348719683419498427926535145903561794741255220885771395801092468985309091289047583419294951457289046233654461149710761590021227670194922417073938009452582889053838202130160672670491101557539304311498441054490571306327715561063323008099110272664887492527833023278526 + 53039116779812425468526503128681839054197766094083204746351369895447042090238361784642779022699374997641930759266714091047637574691179223473464013704650067558195783145343140706910357712672225233148559221614211030593354244493062728397149493676311895571602341516843274374186936486470949277354005863736200858091 - 73384415847582755261061518560316019513744384136028766031545879421199511547786698930492834446550650946230600494013850142952777474676215696959790977421824078398868670812304348766581781760713802986789004216472315439288383685147479578444513150753090462604552390637371929004636630606163934906683031061522809529061 + 6760528442030156388912352126500685017508879983187645476519734242035118711564582745655914806304165218542706837005558791719794196435109075493204043726496254190332434802061757946486827449459938069419825257099048787199469367414729392279644113910791198181832654837336049880462593054595845486807896570115487376284 - 54336125433372959092763920332216569724377460825026336369702294565638019221071364821753901183886114988239947747709465609561841132235711230250351668383116037634738323500940671309382724483471285627273770331290916459718689662519038337886960437961582130636896561632933398528761502238687887208850722489747322852306 + 75665702076034713658557593820909617055424878489240394448108561545928441191448687621252620543323326935319562242803479609439129300648215720159450225389669256867292011786474791009317587420508622465142826854980292006750780165320015332703053417965150230800899382824632466069114226842300690970758832870733575877925 - 79820890579439349889450571970067300161837201256493192975922513313329803829854139561617997094343096253418602197760324156367578432845265604039044036175574126659033233074936894846108036071295473862980071134002793146943498303589135188531436339663774625439154428796976413092739699095846058038290404151922240662266 + 78068623839084901835048966851097597292025404326419265794702739257745147977236881624825468451988848549308844148448418412138558349945901642076435885637860140891375888865936506147895780394167052761144968265726255104313761407833570774175193714420181241249233762348251542886505746533559663447600484233497181823296 - 28873240642752908969399168277804343460367846938108111448813668462350968514399990027189980956896326717784875405444216659994700679220478596352891139051247197091598469553083792222915319716424772947326399170932363605440312723606748358231877599143282811000431489739381693108918421363224241315614796715469203366664 + 79705996256052522394534641675328616801057776030485365110726146237774776609665437743627769696848602553439108036264780069742088067393709565455934684726894631154879429855787104835829974820277408027968861913333706521019603647025417075805109422190217864878353404992392737365263517704012625217463988978730474136166 - 20631096287741065164724710098312302650453948667351076548293295590714097275375448826631360792329021977341969740300716076542999823427531008369510695083726804111025308584334512648299725919365804878613237411059509068897078813117485743776151984876890819873388080228874120880894932246615046212134470277620653965967 + 91774825999136116873764507696798835414862973981728089801968823850234421235608977656201294056422386656956531070151345295914962649306610315093105938439900026449393156857178133309199123217968342271774653533570497056641510758903278516710994056718871539724890493794140953264037654080016505098876879622220514002282 - 87945089015104921702294257989563981148451119735743092499554968094830306032164675071615286347461705309824023631247533680970048426589260050646949001954905653984514697810300704317689065302890605208430386923372533622566820512560814582993395487804705889774549650207090542035120884781236370279427204410050170717712 + 94135728435612872582477346905974305063182944046511185282791976784067954618018396996836535484727808895969067252739735184795523349080684029137499847890816392941897634578829979644171256431959605287730353371508183380265227360335396160269629525284714280168638826427717358246599992291570302254141897102612276426275 - 52286148949603083537560103437643434943983344854641470878970652134095728529553373104119360706616656456802603161365966625191258702751818436044832524573283278656602062486225041155487398192690600538983298794941612327819993917270108605386298514347247495763155483047315845492999137676872698141882905277379944706727 + 32082772075528993584226466982349154340214405130992680938430144828780870581372358803160182072438597533174213405483837405021825762659011737637050617661347059351843591363739446369530557954245638584408937074309906069965951080250533211043226154564822960509124806413180876593596939603909698804437362894360298059775 - 84252548859880500367563428151823531132036729799515612616548674735296613198343406278291850798143233045490729775005371699306222180136824995525142855718878831687279320831897822327184308448857415267684926405287128149198084743915635479276545972157700878900706054240340487316566287836806770546656527846878823019548 + 76755112099888432964709357702267806300944971377072202520656588665686009170787176021920225450618583455738467483275068845515088835678957751286951640241236779062223019860151025074315202515212362428951936916853879773662272393801464770655764829671161979930700069876750985760980040153830555990974915246038159083186 - 56837347420650277136254914642502802439606245221454009028804786915630837342872722050486424902695044942432090772531719325179392024448245662736262243054391162505443807244301511018159565744403352565480801021401521302178355520582495915922467417542889282226039141684639624520013143711638717468982910962467855451063 + 47852315911398677684734564513414800709232825713035223794997739741177652324464838636324222071301961846162856706048218013207035782660967283071389633952324639730234615197541601351900571221764999902410323825313185440397006481844154022560385441756066822243960181079078616015027818338602516319581059620262068448587 - 8049637986780713908988215613424423512717760705241385884274571160695654690917345765557895835098967310966827408770138744423837507859462749304826580640946369592200947169254624047849947840918502454236276954529779009494086315698265406577429505234310793479751031513514856657190768574932853979799530587311347802054 + 61688584555770644680384087584583429987986760088236514303268169469789487040458940320444860553449108020960319952052105961215482311823115777576530701164068840038526218476735549279953263401896651414541641386201200017037728270898705697344067413746535378932186530820858175148198059571715606080515302142133214046058 - 22978724483049205244482541826220057885478037273073586731068296297558624780215538175891978815804687727040525875829673458040794499961245057635056647806480853342012009060352088837699963774085237745845604316695154330151422966538313418929517981816493789616298628829939097237468586699089934066275547371375153981271 + 21481434184536717885678312973454823073555418713848171631093132442279586257483006524898841407504825611840939650019034592585510558004963753256518002418371556548333689544124434498333400167654545110746567129808096214288698486256493321823376197851414642122129146885507929415378509198751875000651383149999379693873 - 51953131609097110840779651393817304517078306846553062507418998350056761864654493623338608670320985096183593376870494368725365154242771251557059994352432155195389067330405824003221343797119962949096061540293324124689610060902296131104857627064013684133590627263663749966099776658463369941779746945291239072371 + 105156899557316355864070136545566978283422141426422966383163442597880665942262511638463331980246652617150982400282388287964371081623042052506694497993570964511289545201271371159292484065404737322364971836315160334534611562333733276846570726697560635346130818435440596824671653191775720428300108368184130688438 - 12705068109448461418070368256214950369041941202229069700152631816502609580681070392525160938116818167032428854028977265029037175699919743040145836589913340288790059070764164589704143103252380310190022849479807669955702652478068055538070651557457145884306299164415391283477525430798725563042315808631947427655 + 98959898721214494495828919472659555932012321129732453736121505001224519873563715348306374385527739636298325511227312714425700372671565400927286511614498093437039501707693833894880757300901819134595598871814973607745655093002192061709601161280265341030374611810270418515177807211697521799214454606315690267511 - 86554004549927698770384102860552807087550293816235677012573838420615331224460554544430547078819619024343967776103303227948276182048653169093081896432562570551172050060990899060980512107621678872348459665921318917480716231646369219890117513359801930322239140702792241516534025817376808824381368876208925775754 + 68381186013014706228178679833382996223491695085680594186065385357026784018748376522929092191717642865580906943634046901975310202411058035121520049309627323561778195538447043149085034822523966254182486431428463599442899861888074804092654266802953736923724056954580688679890697231463474120241623621326920794514 - 20781699028829407415125368521715289749331979103747496070701991692907235324293366099952165487926728073226226388505662308398448326434868553737277621909288623684355083074935045666199861548501491733281021406398870201150243663630807428467679986209140801530308142052225904010497819637611338443255228095654113653147 + 6341055597850121877185496442853140871031500239359397817498635890836172698375327708251156093770837115965096992481986308304317047498543671562420187478490890118668124085080122704985115835581464255627376485107199321618571304574993242873986691266879986998418041512624131987049081795002579735816952404860011582229 - 10265219224463700520557736508111107783637266342295000986799906141324074259497952439938107038246967790861983282844082837167724643040867707147045870215183613242890056683913669493198279535170602969095696896538418334774667301966440896775090173982756545774430684883583243158746253145538386190541564816619396259346 + 95749881395084895889215892638057740255608217623282887276670305134242386361268113459443434164663293641912793485166209342184594255545421861322585085035223918933383485829943262763997812619141583939537648117921488168878808269706829995841375716484191535662059488156769299913422930871550956514952973030160638121534 - 38132140423603985612539589360327058656545930602677031582473508875241322616377752862473919484180039969440788584165269789611589992357102007797168387159955762187825784793482894569033148988939256064959495843039435932663211794774807944174134494762300820606124444471834637519288566758571187520188269291966701269746 + 100250378140254516949327783190536939282312409600044675872747165249515507584079436742287130566029481058179443167015741441847989549576899964285580187231793343093460681383676382851708813699345714670289499966640145405138917198652854607189078021170403079631709636181860962536659231087262884663097094817728655720331 - 88553563478102067415760917181990087896046941771673588721674154429254131429973099440698817953620266658877100125828276668641635177305658514565808281931050812980875614745017646878960483774569807010234225630224254144499606890463397009320334547288868818228954728279072312672540990036153713375676935892514649212184 + 49683689846447310465294035950979089212485922709850291376255373269840294372713943315923141611068174772512158395444823682774227362953067863939736148246300733612196705469378167953528261099375115056802246992989047159848834229597344194711420265456514596402938334906531237250093475926925659794206289891182812618128 - 75014317248207656681806148869652643188782388339133401971431946653137612559110728596568320424157236661315665565177247860941858500330730020465063330745258353937690963622030781680479699840712043006855861116583884110131707042228203990885709441779295458854196803722631312528464691639534432394375479257440582707066 + 76329901143914374347026056397345388757845856802786548824703160952842839882264288994547840867050803378637689517149819610714208641247261250953986720620781242186277511191654168321661198622994902246093147583886422648423948412392743845537461614819153547037617469127739024585244439750441037091760171870815936655282 - 36828789349409031755152723837259434130078026532245403082212139488899471635394500348939144911240379775570670329559028058060359700015388149734105029172653886651014090354306730078911527766950912385216247199916548001743965877735663027232294986182293892210350453694527997784744024894148432720965803116681292393538 + 8821352179752315363520416648491309176041979261291498837203682349103439541771309041003515916937575567640613687343285717855803857372432992160233802668704356516246767090810529813539545439670407324258566243882679736149326362174377971939555008549356111194390016500143051397475538997131208087346332672101333748486 - 8285395348748373078088162819846870980784825438927504850629677864377955357373935988133550445777790418670673497602492290325761190255291332879221213095640007342949001431723544364688936410900721747553115297245846308901224855252328927787943960732488489019445334106744111732473850895115397346569939017119313159114 + 9559554989898240151446260865684342446941791375053497260559440107622951214429559748503552971281260755772848740922106508111657365664342153237185320517235315570340884558949797475806515095609052785804105452615775230120347538397369634906821464692688794002684887119292087142703562846535724485291610831524289700850 - 10710130747362029615660389941602121909115068569103338688481515180328011667968408248616945287262886743533690290983475822543425635561292917776627518842110471766490612722456339677262901367609394655657978546846484143123284698407383552587800566437238181204507581873624331994762237349636317091060290425472955324322 + 6131845871953405403836559583160006773264360406612250149132262804514403151110285128827959603683716591348361507287350859858881531506325861283326461621731334792350230672344748491638296797520778111788926011313341089516251225126987733278013694671344915724343243553738544310927151357098999938054780115464510834110 - 74302173079005116301576058119338646214871405788031431662351517139326360299336880313762311613386251653919165824351366915168626035135134373027511152001419778436466565183449259615622294543425532177360369036980082948781874858880893683993556026012002076707740851946814423656207626529196907162955403088595300073047 + 820494673661603895786019139162651606450741167308361504039858028892063423464825269922554380000391240559705735227439384666995416713310308540138583436985436797471482549221828420973995331564993200555588019217072172915444814010079111593703418447098818677355219744410265071805537796385366012338275462128880498965 - 25835318996808119976802987237970796026392707310054254007857203371587032965704641732223909566138154122272537643112858106499919460154543176552765852914558904888202491977026155697817351984835659277359228472541155968966431254725810774497152657483155518858363573229940216059578573094186893987827574667982110354953 + 47388283262451072908768604716227231398458544231313416905759812830642199487114435426788152441767933214127120608504254184910787319606246063873832969559627206124418528081096796274491601838218962208631590581440212762702340653397305602533976960413259336354740158048960317546581126384275449664371082709723859032707 - 15105238764827218082609463628205455801222345808430212628688059029478992632181614067286381054694349331857878243639002402198082928025179418347426712909581859230506933548008472251908350636136921330969596338491331099434214594656746101866526317906476065419652224110187727771732844733810666910524332884302353511446 + 50605316585689993493182292582285093297579277499444271114991019425467074434447132352815860786448637982179457714435506128005454045773242216379221249947063192293806592719282019345770802883461488813048171306434366628747805149462570036975598787964271320191015145769111054238958243095298138525592064975909217042221 - 36049750308981356531021597027061779157566716088974965759660536310345636259225164830155364691372057849646087180433356550374483897434026218324794608851569693042556339900406971207669161901908311933494710134798142672832332874469394746676734079706880406080648373665499798417778799706052003538935721509235446812379 + 75445549791296377368982759690709619321688378363928714799553709673079123516091101103508961912616857493593192049132998755914412979684029876757467500099340605620460200874072311904597498091062691409334686179743208950435271488835910198982513187295069656507740828454782486099872527196816010476303504134782627332358 - 14238771232698996075776815363677792011751231934906741647777926996806190347163587496114594011794802894192625320872535155538157765581500521014297421704576472545410329862211378495219892251420172679185913245789859178386052277357080669974353990796803731742756294198815444434587391699953675921885174088294454371427 + 27510053753460204161674633694695839956016606311812135947896553536911700020020169282387853046665003847923083613668911284499764023593656738902352255817978239900365176962510177565338478191106879766660635739662762162218437637065709309824309272751240276291153861256429139045476905353844487676193056361465344595699 - 54568532557911361697008883950036441914645104464044013626365757347664371824417583605306563943603030404204640980930039482639673224734843791857478885998727136158690478590690449157533986963348004768898724968341868948778267650970894891755578739177385237567590893322533991247935638244432601443044160564881299071055 + 79031475317546129515975763706976080375170708930788611209795228758383728306155300814323561538575005708801722933107651313208140940204292297064660053088495896068042003885063876615869560258934215276065816000295382387512257734337439045647694263766629210044305124635811041456796027805177734153980830784649564916824 - 61805084248174130018205995320857280519534266410896831606300435279021721680641007199532466536708705155607383239298264099882254459649490456708929919563411343619815868278937429360117187107463406374198574443349709972679124403103632863721059973283319063738275827925463897723824863751868746229756605104785236180618 + 47759559362586203003608045165870966958510618551268871163840653242163914997653621671020696719311173130316084485198437670890583230054268154549160939835042336962187479724005398222274645609694787469622220374254395680742894758597415675199322470292001654402152763132225969979499474746218519128393394493789541872262 - 7061108774602516433216143703653313304114301842917158022628051698524955975407782849708493610814666289950970793291750198555717796175917708538030970538942344379029513912481065862341376943523056494140995744735091197908737707911882082459659518913989070707244931518757331713471692115240648843615767779206006848791 + 48983571012098417444512977341477616555480155743491413029630124028685929876805002911407072376905756762823443771336269106052945616804750981562153664223547570258199837273283061893054162772380886580720452310175847877487548626850063170745088392685454440171611833763952429566237779528611618587061064040135716298228 - 17866536043454959175476867127125050507180921272526781954210437957823061964698834313316845595487335160550892279249367452622666754840078397222073084619361287760084502308339210794554608719349320526021618216789117184342281949784687693666265483071864450836621738597273369347959648568235150869059183781975827642650 + 6165154223132662452048588531879173100735017647871755178304410214021772347675143072428124115242190145754082070922249547179899990691968989456253911407856693218066393509221102374917828585219478147604176627094965859185049810038402338431288531939232635886410783859824683983253205237829767309442251767801307143915 - 18843900375758451193335832963473669807822310318353850296336958477339017822841991485948176829409417551712420091679454689239804906578387540678125821416074748367194672878599962952626592396665687583111839282078518149781645463956860538187388680354896873476305514260346112814555317756422917797711910263579001915901 + 11294489479560449488209255021119477705401808742040265807030583660199210138449522851357514946897286073199909892015051656213702367271829913616437596050650447214814158802047159436980917365346993524893574992042719285636663382859013945629296737396993709384122602221193378470575553266166097481749334659971633852211 - 25156735735166482512554212668718901683381009447168666914920187844520401803148777635932508902310100775990489640865278032079641207212899516358157049253408570199216257867584337918403573085052072702875715482191752593216782755509555175463634248548681466721040282917612581262344488386440340578361144225237062202708 + 66045581602453690220873587781853022879733838179592564362116435467888125577174250158358684909859381106660225589379187878182581614262268244659031082188071251676197057293860398259512796295643896206051932263857184771856135144175326764742136843589190901832257064233304927875364055138825702620917278604352739538747 - 77132006557786794456068894821784439652737970345025780521715648619425671192631397594997998331184097080605826956994343049388837661330809039376086610605793822926331604974300625431554563574574323154576186973242239285696771613530640255496743907349391376659346727336465815923532154983448329423439231376053550947828 + 48249836981913960166559487127551286796723188938016769784468929545596300340281978983946578575136607957198335602273663057016466685514298971653973133455435728280396176706997504350478737758778567339099677771358816158353092778181215763173890736906371460551489943376008888588345732966708991514513430352519708139452 - 45504118801909839257294117766105648224356237474835102245403223760473869506333492062908780999340538428556813831569583902685330398452500743380671193584341686865140303143821573953954263751359137277874932393321111602710555750789182953715704647704868843657847009133920113427857196397169832415105543941866904930742 + 94404755641524619948238059702592333890701121394001011377105649408685759462498613980810762582279774501400021327733201174662826891386467837860364313464011330364710026896718602053624268971591652641033669883565141179361776643173076048233390129145140427054964210509194567692129670640619984111599383803108561401723 - 47316055698963708674840650385922375604005810504786667796080351941532148835586075589826670942690105003909854245530526374464976915760906176712597812854755636366418619958083832050710760587765185987139924036736695207963394584001829385781760154085735297171357955329472959559308516371350842512185338225804521903064 + 97964214450189904819411748712310096639967039508905869977794091566760929740215106550442276715746260309028435149025307366507948313482057063120402964882371619120815202512409374893546176247491503668267930329796286493592513179585738280359167687621771380386765360200712410974707936495746354635883197897966710016132 - 52377118377536784592058294196385848462678094923616029595800506659417512611125797410234361784463253985546539916389244502183394278646146166300912168509212235100187043989947770003974114092203960944010870607371878482494550296706198314772792257262467243189508495302465725043584748244313704563901348287265307402894 + 33446526179630624282253913966980316614982285338629519613173407683912347088691832266185680020515319402997022601184631987036880703463022168934131161432293746295220431323800262620251754093593025641550209103910386818150500170245127823154199138516253956190141007611402290456004593964642546849283257899882936839779 - 32072091962644944061482677807245986115786900188435295237455065359157233907479009678193321056682841198902378222806744642813333569768688561108248495527897235309284309638576086132176203379866175215765182948192057468335811985568293217536422420900799212223419335453926533744807623057885971289521609064656400004439 + 79074528875385856769015388192496379041910096290064787980475990782548196733165709536202516765801898906777564101461903549977492766789964718321926291077204092445915712494355601186504687790075637509774904474180989276676162588691744439059361552001524311751346777168317303953431121814083123565481831543116281872367 - 25453516760060509210199116542822451952881737746659513197494713440782368463601880250766455308919433648426799978473681334766401483399718842486786936412898939956000928426056327710338492664477726521124467731412519015944449150714188268990820740446580518170440375746868835084345795807096109995903124159159386514486 + 101505087203260664628831976237475063953739165533551267987366682005167598370845343250698894866530885720716783660201025517865206209214451196786308799789263198454714602208577005012976631182528319254780082259564429985929531920912517874832181444471185493625694568647103509738515721213140055401047848781171046013832 - 70894796594691152059839688766678916263287370887159513884479435068255846796514884114829939499993024625796636727267579637418356498799824824699614819136426673746725791113099463909425825411881192304702669697875175922522058538502121455077628938218372991302597096593412543632763902417712827253833940414278032490898 + 30078320051810105905424917996131054414760367584442416950428356174491719667008294670139248437491535852144007253872912060929268343781403306882924206543620604721261934151684245840333453366119327302025548494247654755332460166318506195583574094738544987409591546391114853236676473675403544672216583225748340267376 - 68975573534531097824234051607617513372857919518519330227535167104841087092944741337404589790965543221069764256781167284721715854628930040605742646547649137864201203685793762167459984355655119741372447429481167976895207544154015064973168321099231958061178163668306921436036787493518370646820845164264120866388 + 17062801034427235722525941607461362492880252822137120171012104404522740979874671946270373072933190041016334429513352399498313191083754480931070580181585846278953593262184858574522514241281880212793448664561962987746102477057804514892063378841205035930231391028317597225326639079326197474887576425428463522388 - 67112246311694733175748091568988103503283310913503238304284280379386083071404591511948754908135181043861206543417212751386310689595976697276373716396832875553414218253365398093736954628814761893256375291642605338103220698636407839570198641665972328409680703549558341310801403518191257916038273356548496149734 + 82542814763433025466980353041906141606372573842968618180399090325063414648066337596980781997572923813473588355302676367456672756925935533772588244877938269023738147223486875804457952923573251416710383866752413262979282355187797109244746813235629664335066516080768327637589561671557073597512369839035126792142 - 1025703165438062879346921844395315253198415771621172567041776728736971293050375713735842256429326550346771274426749075752757630025162990557028312662183322135810921757669239640940404921855786467056366694458952250473953108841061542225419727982312969022040455504696490882912813869502861470709073521067919881887 + 16856652872224739373603962369504287684212066202172467430022456212946746926254223744927404482053982315408600667214476119614638976471819521557513189706374501685873187346031604011255032691418192646225661073407609685521095162805959229371971345575993038308458924460253264733349155216623899099669037794896706280097 - 46943452606126673692455055245479493023003222461614480312546347651512167870131422827728391555515659415612826261849034256181308202245368163901017248893861957424631828108400725873260288375258505760707012933134292214306560669013538936278738684169695731749724740438924126863370230274577623968362368873021074079989 + 67948700880684312842428185134812497109229656494346247543887264918933506715940027660105049717198309699442676710307179766939776670202732268315497585635804793695574106819668245849333009316384024637290778870275624466350263650580089499588533408437419238784677105133926008008796476194422292742229823166870571225686 - 89047315585745681073103861746036121690636275433937241740670571984155653070138813560785064123369468849642653034664724481230347122966913287888260835149353659601207680660557141766937694144222716599473734598125204744354051095975942071685285293327498144990135526440620136306130381809963026164263858021055752033139 + 17944604713413754383887108087270520426262207624353874277157271373648012515314331115479490160330665076723065983969530643281829015303706427638323050584571644495553530356810914402620474042396630542168672372278439432063975613748128169654942446904059710160091814228830151617543621280164772065419848467931633565301 - 986372730397882623211498596589156180036848868144235171108164783395771322344107657814750413636137215833153794872621263091256876790495609928046802056179644139025754953983401896738756809817282265709479987422973488640007587979159348706296659634303966746996725366696956392617935307957994707792598517047714869547 + 21754577356790502478754633542497371907798943154611227133691381355652644535250496203026214053307704407570948256697374954623720140570351831886222960668276560497413090332254729518670892843921175565590883326323458494815683934844917376327567843227730862205027826295960468613377903838176723993618004739485844952486 - 17680403375051330725945449607230567841458008860814176591735715470517324086656552435701644831472348364702736141278140036558739573838475086144075725671023238192569477529860999331524102319902656535528200247177414069488976561281965394651450468895205057142649309212321244472614294258097844163429350661736260320159 + 43844505295158170737794306553807754889470057167669452186495722919985780861463996054402144775583810612656987468400270187424488964156482982740185923368306140040696366542830306258224780271731132844786500473694527859879956788557702704968133679562883533849472079860926916148104095107380769472743667004539748588106 - 66437577277352918594873081483788544298861727251865116933909255729878464561502755424358082224154351853715181790621651185639977565459141250897657367986387162207912956330432118674214091852652035140729625284492262189979504984180551172702563868782995404909323457213808259611011857930833435248545859510848941802291 + 68232247305849569909362563985070086671640984037242260267793718583186903608419063199251992902032719170671217754427485397379187977640599115565526858518038198233058069987993101423793781122927839922676638608953125746749019682192589612100323298293385349665089826615745645723704315619270932934284395940101373370185 - 21614113782932555571144074079250589313419617278177322700676196502900049083011537421874132661954755104799793013526006074317028787692977484274240029143953367735758771729333078427716396742330325239642878727973899803564814708616036519733514150421016427409883257798574937835640760398777188854641784599443999444180 + 84663523929845091781437588247256508184810591192145402100797988823694481502683151422506065591227626332582573404824797746141621359983692941152314928570833980473662805131351839071495324334392053176500054044692631552405979350558111841896203777412788187530862236538746044598214179304290713943277209169685647490641 - 47625094460723520327954658671494352282241774210742683655559230157217901829656811851878268714079250758101157994439531723315571360956779513208959850501880631205545373760865402144278157953763030265776466413247245429469599960559765812015342923693869042719457220598396535757841578427618623399582999442061792921366 + 24102434544699895558778261445224535502364762612151496454825886856478064863745794101602375772172352404684906905353636874727565858936924467742001557450155300637932659837361060986197083538921664044547129041723381386855105098431127723630932745933872465337457283198743967763278848346218653984137836247763184191171 - 9845828813183737793489840447869455900446062556904430353198277589776170732004769003120895479847679098124242421949528156686020218149211952349869375838123024560148637586222386240061522280990742143759482204584587472668145901725610987462264618562506122285293977115226686466420775412582114303755126519847844272689 + 94649799142407920909253678517967828469526747827063886806545180969220324678388978566125872277114947828473669796984493090184738820707731277994440930060655226732552713398196880262935390440532634787592613464742957838000444938453801633421118893430315063425374981601237674118231851960630478394479647077191551733446 - 88143974086864897196148833575027285072520882328124863598619098054074998143985499428278616221312037923255547424647340338683703672550104794234484939905224630146411847433583880713933192642563645959082380986939623791355386220716902227208319411924675372498230415261533886990481646205219672306309788748438092034259 + 94161938648125130127924484056328378082116328779700746200847992182657915878444211726565417597186764443505341674456848117991080252531145765007985174685562983306636016527792203116283860781982044475325107159750479153268877601090362752889158393652422733446712212204225818756623429827055722480794375419660696306073 - 53914498250144019383620559322459411703089532851776841423052190314634275786410447913419439205240862646090652895174932545252443931084709917123740379954248659153545253035426661831654454288440950893894330828967739098070535191250871212301183955593153076973320644657122176372832448031719832480632973981263983409791 + 2455392143672229042666742870883284099000746896359169069589406556100365976717900481354662493819408271949786289215528672731180261000234183586024905341181675632208606984428454194035391079159218030586694032652474905667356949169419795131507416375436780033385466009939931030766772442018697331643436507458378723634 - 24474720719026231208593408902114606842403381775540543647029817154994869113058493133386670241651098538282435169814046628163064981601107121734353945824958487459542020271182448880617108582078211853712758723742279959343265534737948913626630342259319228128361189821918859617983554333116325501809143532352398669906 + 62738664257777961797567254177529400389097798620585490302058551702656952136124001253903459535275164641811992772707742269631315840011796391314760936029303361712010676136735223948555555339708529818754369326551288370620587143573357375858736045893293010121410769902416973960844183501572941521513142453398286568539 - 1841045066564506374006938582571874311540689604485311486192216040377636737119420095413469113972392868507179974803511973970883545342196153764076611928855894184432928249590372868102253687127365758335987892406641735290541866306685401750255402576389543115620980890758192689488062722670569031629858343537974688793 + 59984506920692995794716955117740197849204971913464583572066346295048587038499483091048072983186953114660362275672218848422350114809229922684958245379386094448619561821331235853136756487548738463704102931263619459047579575163629465552426953203487169541531654751392384134417435332604059388872736720971300736319 - 44392084925210599094307703774177975771905304987839297736046408054301627080046608096736055482343708472481942207560781291261021692089591021168983066021320939900833552217078624007290134455200974219624743779570958910755832575865401799836122244158901375605102640497623423131472334552331090707960164729426089776389 + 10868360426889936664875877056011050925502779295424685666433171533933049376641416512567584860338150733893222941347475194321685507985324832172538243264315096090650174289594191794587079273180117954713361395138768866768803479301036747951623781410160471235610027825523278666807682761651926618489267871580449814882 - 11452568739637869959433991214218704368077433946129118409184869363947695707747499199608495646016736068433528830354178564819750075660666148189598639883299507690110607786355712126413053574870566195530071122626561187201269202464092370791065351349834790864047904730093809527490848680083090611259580955766944100599 + 29121418831387385935443214514709917944718486050881281802325683569288792200007660204361664657152708419759162325451705858076154015341325445028299173826703767172567333536445715574023776684224858525694976415819135235084396636195630633332377604965585225395867401261229466823392760216450482135305895319555971361427 - 36884620445195494429633059598237888617579323885432649078745361227982446398957277690289622769598173752459678321227623717841746701815611702339236070815259413630149552929863105019300178145680099234327606600672923891540221567972151574772942649780945930873387869529988289367410969300915782432513840840574447531419 + 13191533656769773403029849750359811751391141914704534502540763811101288446645199088955554895586086092388350730985453561104118504313670097717379936127900816901388524587723497485975915385412587840055635276191811540346233202102367123146282802201848085389530926959916212949593913594855667457140356170540120020405 - 54621964151283865782596779523064172361568130865636984170384413807761813914166190362588101787979843225390496979737421695184332773935178824578187092809755745000246410359611949192990179648619344787865417612765281652779038138324025654201589306424080955420883986703457774770500519489197121417633164082637732468372 + 68681303227648146178950706535693792135952069585227231845394414652053330127171735017471932641680190119019733874433265753044630591187434780476187024149973894128346281149454084737934871043782410017865731532813140650173932185419429984440127474018430632480728372808446493105121019305389765822498504404543466101169 - 68896435169916672278743032442099155779817159890538025647170640913201059912829984681334763906851363816356969831234656098544523178564075973351826741236197705547388919811856708127139184262288849434047258518991020796095389731041514486301453295101483363370823315174290353103953969924208618728069842108336547437701 + 55803209563181562019391597146381886351420103130444203891924928674601055769056653615322327496544253036746188072435849937957822479306566801317210120600233428339283382024668239546975130335302151467123848647263022408385663671102199864929601949961896899832840563009160816041190343225229424323061075322282458228591 - 993351917595045533929055367974149931925937906759487772836317488430777067847559911162834931060117064893567107832208826597814949071785161249026629187570285867141913954151871526685050830760088404720993017304410065294741705803344659922553898609639120285065022418474660898558475203651985084800490454680383260645 + 98647183844984663617182701268560144098565288547424613155875284209365614438154682161815778308935326988991893868990249893237615745417175990964760328561040815715467753439753190113071514527477907901831292566542334157503003918292783271034398470800189293496505758872597068369455745318513956411638060576704702437244 - 38458731078155855155446753144413809562255416650110175296429911999693188501496726468327318988378475937391317914521242166457944468181282059206226177515692683511681359840748010394414707561619191373948083272100745065216163899308193205150136462507792465917825710097358412410288016147139809173338714435892232226687 + 100388559273803647088529540496130303480168334675374693990663380562096332314811162199227524253253417433159801879121301485712839774307151435342572720104117031037570730250094225895201000407017917600468557871559909411653828353287931580890700983339929612730749823078925456735732516144339641438346672127523908614799 - 83005422155624990168514776025945536904652350839523671891025283221352818449337437939729820914814186600678401258471789816032082117409200729175352154012421885508457298965963131123912927127331170078982571869477563373764348630859505762922685735909000562455412115537076456232802661756494929272869239226786644405800 + 83244362322645235348470871697795973765587800866515972740229285040269237750408914953095361251906550546680236374440866298785146455230487189680196147668805512195030456433553514358407340230543261733005005994637875282574610910102131005803956519218975991245571476446378762158988336239026301005957947306693840869943 - 50967287107644057612863102247495214767399896642781123199700808626190630470578648629144461347030786438574994611143097407055669790306699578450575516781049534941379906783073819586410791477456675349644594047865068921550517288884556689555862542897227216740258963452813949129651937445660792020564424881704430778572 + 95720072141533549674997627771397941561253424241175482831085586229956391503410803834897941250196591386720206366404903453230551019922040736881922157617477756458623360942631814116068530269285828015107574774288096886520428979914582664955566478544139635852910397955473469620983250812016015232480552083911536774217 - 26393853502585796333087787423727067188383776225625592154385994496690213278852700175595775799795103879167433582840190748392363605302440680632826691797232379852188845214218444145700978409958419076675891235815690264799769982525341402648909383846364967657707210948959144925708265293593736766024975100658342336946 + 24620618566352151015337804318270457198237860666840384436142353222870651208707560038161784474004170901129943748207413826329094843288875622734318886253949457250340820997900500621850770956206107318129139024825908767954653010371079386569872452691445843818790791126795530383877408040411991453857153357466983872128 - 73717496913340873518460392973030999571348784924746521230903489064844569096843089969166994009844979285012611998586633687343931236464617319098117882266975207858860071629902503283472022699389978679324608257333327386288369182739867968140614577449021508114085260265944087475958072720640327909297133202326350367050 + 36994095869456518229882758712961861860034940789937430854901661717601374494340634488499396085648233230632249869263905726043318039380722956316192236054460458927214349709315115626018185641650173971751450397023520819920029260769192239007601821360028392446615372771870743394837252621416811427735352626019084065768 - 572271227879907006804067003995445840139278735535780384860052322217138089459833658229954441355149550356424560623891600147193081819071351603280075900347658476291905228420288018465352365835902774432560658445663773832914729741646332859051067097037269633548134202123598253641517537518557249757092945352520944321 + 57023556533144929140820020268617422830661432475820436427826586836424776760863946297345254039456125215519365209105061321788749276884349935860954244871545452040755786837877354291189138780994590146757399557064358724486425446257251506770580108549511972659989339888398224599325990676808086147485522899216293675956 - 27892552405064517414615208167012218868000264066970729197481635871544605115751300251713732132757844823952311727804935768724094519732806549362449868764591413292420428208119222523130351329668358044608622171400994614971395140043092280964503637562327018555075048749204592125442335600265199863020201949991284954799 + 90018093159508334859116367557582956894641326554726034411511889819858763685479774292827288403910606609799430430487416130093953151967564371584227152723731980086554871897139682770983636072216227089871399809646544852794404647887532081493277399484409930209007589354044538294404769106935167181186473496418295763313 - 70057797801189395431441280482773516673219314285405635648845348462290139748869982110450402049968848670794528204257275723690593070556251034996965913535911324549623316449465584560426583446861499177019227508223444219410061137690201088298730099285016454521311914316688113801920786270526539278881736379938422924749 + 17250195585120211678033230222900836208848342918894174296421585437552715662245570517860507370150177833853537381109156983570926101215976841588829840242535947698120432622715121117129111045462515788426301429006033718916098635129053411484677435325580094942262615131932927136709188513276333918276006758299096081585 - 20851909769788648615349606753020313728145044016288374662127165356235461674410932131317567289246193263717953511667259221478572469781558067475998428105909186630219409702326980308230053784941603308952644149818208570788912121498599893654120169885302940153253416461469679408432308471105602991975122425994421854037 + 9945583957444278788508948340052512633877462800247622860703590404357260401825278899680550094417624215151358529613532478336202134751221928060671888390048939530962997468904676091401598941322268874931919343830607326769553483790006778205119930482015091074415001913703292179094736766547138151352078336483940214215 - 55686703880631106974693631181711115440607894263521827141989593794919929265396340543236529875459775292106798932606226715811907029941666003646307302431266211534301968237837751089688166433438892638970941939502849681307709800391843071460126571133454886886567167483212556653518327773573953172731986798570979309092 + 51053075213432675359026977800645643610381388641865560838402724831439638148755846962987188732540668032035599677780973433179586896917751540025714882309339103665485626213661449780368997421291450841738657994796358093497701798238096582338430227233476498703111605632017654265295343270111392359290325078236410186624 - 2652623305587998523510374800649124508409505453963577395015518609549333041762013260474577278565693913566620482830188514195611702179167848870682637550615172634959820247684214702902827998161189371309058349695225428631237737320826424072739555290578012871441151395171247471681330272472993810678093738635558171684 + 93155737468876166519915074804236600001246456211259506374507263218193834111294283875106645667618390712484994248126373294460909994265705525445666248485875958402917026700310234935884647329935314959521715549956505976881010959177855241049856735166251799048878076407273379719547336296218934867525091330458760326805 - 38547220367698196028886996354808167541971623061513293439264109506986022270852356964834825578048232405212662484242170058585185319601415840334710279435587059844381733767179225484394486370424919047583177929942888871885428649093967530743297906908890062548988991495649082293237755255719114572679504278796276027470 + 99056643119834810894588543555957944313460564820665992182397338223789943645088945864196123814487904555480759661784253962955422069240242345712141078246704663789823549780730922300181847304184538705700599043124488180043065295967725002238187254471309037908590500015553169558213357398341093676534248848857059755255 - 54640118548231306299480049796102788009599229591705528905612326409009471499664389873612652392810274166912872573809099154052802422699814451751506850638942642663054758844338943992341587487253122873298248490408652720646753465650176571484769205016056681593537680642068564131745594780539424761971102006217679546965 + 19212375544228826095610809498739456245208565481824887224118829610138476593194022939284622141039646742439100243562698663355806570969036595384511130534237843341395817793874776249271678712082996152987538504026374767523456032981636962348849167028744798667566116149319428207646992255233167622025900260356751740579 - 79824576285452845297305165011401335422462064948661470281260341944464659948793324058495837505520291549283843297769091446534837288880529975082310000296576469903562459978522945329182323095181883248242927941627838110298123526805620326751629431347839029891325720838557758920572356913596435193851695871513840832514 + 88495307574656478633222197674630761879919923852801990876316784058632795648285434170156670642242878892824122186360325822420469298240495486873088869843764951235362069905040040750996389472321294533552963835492720552324218392035705593287647594369610544505512977201164126949698889284218073443588682657889304407162 - 54866579058707201660692469035706222176307209825197052083904480273501475297929428871659314175006993933794049846139980936672849724158959234757313517338347152909985759057286999092902471618747673332766463288030499373944035604141932545702288322920319814212392832753924337688527578034147321877076180757408389165800 + 39604283092995105733692934846183247512841993009706018842576336084912439894381377929609020788871864283698245708902560462859436192257123540755984893786865486213894813168018279763079913208845804009706253024737931773621236200428652762361193205398449464862734889674601830115301186406735709539168836201402743854177 - 77509871615836646397106113524822420181545555266726429762272200181133555012749768568527163315854622902075284296620773098256872673124591965978700087053363901343560494700312838462212434363203273845873579575920447941682784768993723713398325874255038068341134391796483872136084270418945515959992460450125835332573 + 89663025022907218173017267879140220282858068750610604709856545920274451172865075232505148689854966387585888576039068613664245623936118496851982557459784733427545477232904715594457544394305163273161267293115105104067986443213651337802617590538046217467793147109941925632934910257215193289518226111320524568811 - 45085568600728490833649398985870315245432810482399487341970911409209633077093629269440567910374560515235868382517820932385905426063127478002646808533890647014004590560788971195048085217539417012614431931494930332484254244812386570647696954248353659319800159217822700300181694308931406543743288801883538297779 + 13921005351066237278635354604134234044197737458919604120336490346479304964174589431104743204844297793474360506226297101970317899058345696943330031985623173966087594027005199978773678073069555659623353009470992349013858186221647069129881878288939073103032875364455391379664883706842170346376763311138815149466 - 54437712693482301779013009588465720651823299988609297152777509996672860103459684962673558317308487485572617477970320948747359955531529571637107058014876203693979793492431080806561318563949760967440191015465592741115682744445972894501400229330616479360647400508500951325920800477653425638541709140120909648494 + 49461960040786170400954950213562969338784028051714004453126591681463885466604177331514690113686933140401937883369374895156534471853843861268063184682305322673104098570937161559654924929348128296251002258355047861646451208821558475555454109334105415868763757816971947147850081013149256612120197416004011327164 - 61341607604601391243827780837138396767785958913774249597129687303542607950929104025434794372054565241650644155428616304480156227831475183678162588798875278104441078259993928061484435396092324008408571733455046863610106971838119933597495586010225721916100389496715965162134246590823649609752982919158098747005 + 42284900453449767360912983479552679326302034970673653669704526451161924912815434337975390809078078204178960503988317097768473833611415444637489843921808071198232197467275850265525401801732042714208514409935426150551618854756021029133346874320764721395643364867864452788158771342116696983885459277247819571641 - 70020172379750862484201511289601100904692663210771250459357270166006854811292337210237479152340303350456475691497655639022543433184122637516810952179643922352214590223014378936813356313856875389622558541430262776601501306377684723666917104227921048937243159603046800514387421095136021804716248116176608872161 + 20121119703731673999330451124420007247042886339541306741760307344429834660822312394253937342277510904310951366143614977581393593589400381432528624599230527970757776312727877309961320807584577353506613574444885671101132057487461548952899386185022691669602327179163782485239955510142521065872709215537517924213 - 27716768442654716467821683318234774563349472124444765201676400615119539659459401038358518511645868830064919458643437426804334045907507348519343348975723228763639338833580963617917529116508378388852803058737127625712542667978536195692857140904796197482447495970567909264250509154593059507898569615585993396278 + 70847836615032106904531441938524113465496423821859997281928918473468519334158641659030252625828282027875067237358210761158816928936902759859350529197902282117507312002819836232168889880904252019810306327286058683480968086521052920410362859930524819151990110520306854440906849956354707866321617395869144904411 - 19518482386515165020546945474718758622224961328054045355154230452200277496785027229125536644800838448094797668437572490849480095017743643293836928252086685014129588735621666986359552536847178452296129745155480589704900889431782785453376225376378916545943449293965776082107982464008915863111415539484946361199 + 48587216568363387847939304613437622178765641111176393354398200478379503846688687122456169251254651037222658367300105275155393635912154116114288410700142048470446392007667803274858525311057042416118809387935742136544830213234232578795112166244576861311054791596699751410864270400719936932624608566750746975194 - 77847930824609261241740720094997520994870782250810435395303430484757927440491594158519458424301979961627994656514217008878920061086481690006277127608958718863579398523070407521626935149321161174270090513248641528929296942518181346330210851058320119279968378328300699738497491029631041625755635157315796139607 + 32144846927481067627589093633115931024269862601647161823126415665859779221251327476039733854246455450774502485322953575981229625490929078503110994801928781063490629387351471474175805840520175653722648653782576596428179281553886986776508427854304587374768446888376347365105455304429839540215647270433642531259 - 35180527970380287253641766221430494515522502669344870875116722257433516124719051287282983078808822926218286708656222231920827123837776479072427435974247360210027853485618313166491647582119160130987786928569932745816625218161445892969861933516060771081289160258935104672364396356396026045357452443021782422993 + 63833361619350556373374431243986733073005911240109508133527722179974495833020601813017371201042055670514589180015259352183273089854290352559969368027617504878738934204203371355601101349954572884649653638160865309503142123507278154003248048069476341185399019168760175101660242156525025578991973022982516805220 - 61005260827513253001946159380599735286517556001041810875007732821679712741796358705403528503513882339250513467197840914789840286432919592920884799169422790327558296268848220796625873573543181307568689518922001137868714197607150646566210554037806893820375313930255790080595135807982881130342785177451793374714 + 67875961762773275213468373712728904621330736502330710656502938705976834202016734406776935477832100440610221588645879489887901820018083524030126283165712056496377255360451276524888210292527552095821082720969913257022945798789845571701906970194446685782406761643020371867427502422740348566809198713819076591984 - 65786371883749997836044222998219678089455935879943809693611902629951930468987235777629817695818998849874006330747071343861525875111789611267754341128956588552599693166539904425554586091813793740969240819401565633859717075948793429893410769544077736022125673758510029775108578308658296066715759417245884884622 + 25456094241824814445525941298240980019412572883114332796548745949502881162915698462456487354377096876938670193328601064147224569183030968606918674748559609238297288957427748267375747913118270268996112789328980963350657704884134605910492194736611302699365786489678320653132239167159437149443742144057067636312 - 11952349659865182146881958834101209881161554459899028289226570125444815104526666373747341075915138475153549639530113782047979913435127965436562643688970045257795102319471725331059223803775223094193258052911967839172494487969029360223521258582600723728734318022998238565670891833894751037767684424827481744251 + 49206545976818375072706239937787209609884198737872744228657865511642478614206229158126828532311333778685765090193097368182673733816215013266201356821762549150830019997568602648021406058858756191255109331916079421777118413989811181816090018966310628576211615598398815779166181294871738566643278189930041626829 - 85582552408081143342684249331489960296015960066788312454258744991643898520297888217180738311187900234985488326377592015167944683247728214704661720553688486612310913648241174312832277989502176213671366211981449801734285313780621426961639521101590657594108115626196253193710541379235862300427268442696551325528 + 86056630443131470380997225931383189151923916817785247923103535778603847849224249435392901035088175862906335825582628558859208125482982868729534686438587257814804885158512159696909241763296038451314843636033162366032987878811334949879920624901181012716639529579305636642985228854134490123603143950948267784835 - 33253578619856995825557152069706421328872097055639879997742643972948947574624369741347133763308884727043730643111357648533458966788213904253137135682664542222759321547862364856503338695324691840403754484424189040758593651647783860911575819551551775582509490610235318632130585535425014222232566403160435003894 + 32471374224289938998137371806187681855972845916257552347814132993050056434489653569557866180693729395287404174471816177353931926011634429600476087824284923947642151005515200045940459310956398199209555621521618271012746057731151487592906544992105513759758367040260692750805299197235514439975354572864880201194 - 84607408117304741443280815153805348494418162836283500301779882929213384623607950691764567072699507990930877220096829525807133894399848992017383965155645670016118004823554262651049787620108898233171947339740030192182627316249545021820362111636482140217913699006811057560971393779482645286724640274697489571694 + 74381840816855151001787416150545957158544488393935384127388023537773249821766856427124646095635077867732292509475884406798348207213352978220412592239292588026805857953623395269869056979622830312505474999721441345191411705195550167269267293614120400828313056293804575997867366134951685328518754821377734642470 - 12509321518285582295747372087067489779024322084392362406984900394161449238719449690319913212974604480895927192629408992198691316818287109744807596527458816862694076628584346149770882393675408380238673839119433308228585780501804745745817693574924488662137298645150244769958640740529866874012469626328981321078 + 76926301299341882967669292117216684188187929813100511569909203085398773086894335475690007651939154834028699021066602093244515608303192859499814251257867191341062957895964111899135458946460426962891717635159228769746836912224961996019161670114610162763933641156082195621071569712102411416390753884541104801851 - 84710125059531243289921954010289069269877067386709420390661881894784986565679804742201946703929990307412170583711086103561114468278023446030575407172797232115832220236199192457402473085706293778238150049874366521518245695991366549004613096591919034203943561844334987205395894054193300445312026654123867090471 + 104448566830806444242760544551037814643973168933257011858918882095906374256223830689966384561237321861184944178945026395744422476088374533759969049374076941602010222366036413609829770718042695131867156614367855702531793109474539296528388059037359784355241581564176300312162343140787295632459170071833784224144 - 12066992461429951387058582810887962699379787599034156469233175726027149603597942312560266286543698734490456561240734182017212289284444342256579701087650395319725221626895400218450341435669466693712403227329989955172743582838814028751494728506945545559263505499047408021883848863022117006902663184571477091982 + 103376847067029018774645268313922972396908527461251578391123422107472556430035595330289251925308633199508960175817122802491048731574389779738933018971909858134299067254927730836732098012004722849032218556314861679710366695717340248693322982341842086409742302242500899997508924582486901076600111973695573045842 - 13720088279580545227789667304502432317636154281022300839859798622468510330804912501331394123158907970751988897414072107873681075573931097832856311971692785537579345421316757254722515823352416970417826206629955390905187293537286091846710810213279936776457990152904324829691457351428956542397053452124511435901 + 44160124125080903397984890254333632974670653613910796554024849964446647023691287118636448683029693544114098419970240659785990445650155398245101463094844832395739580521370985176478399435830912022499245763514784211162005004751578107737940566250560677343103557735709382003757693661474513039901654018915869753289 - 69668673978172910149158644739160261750374669389739716753334207215574769656851601278974794191085622569662158459984031619138019855823834699155619583992699277572558501163712508967824372445107939744394288150666553003048999358296676734808621819409925231963758793268644127613147106141419029046804678960224543427091 + 37425350963942499267249482347925590581924587983455016937213000855742994723198257302138924050549702365154806361821412861879868325931473151552685178674837684321108925655098237530923607410823450195784101135563840591111717465599477330486815528200768316817849912370666282903189688142504998669666234139798536887519 - 56964864788741382266354575294193823913672490157393866291510416290505822375350678201480560068629437159061018368169355971257201414870890330811478083015837092632112480020524283622458493624374531439277234468165025256092321413137585135098916818982301169775985344481582345469088025304007175431480667994980244325787 + 22061717369148921556739057001475881636761847106734107019131417738464161258891425632004326427044630704332917296481532577424730968272097166205838750178001165792372726727558223678865452027490297938500057506425263957557575851421189874539690436487574955640656076464179177194483785070249233229344080982028382914376 - 47988977628652312672307672089287067861837488737397865480981718330088366541358577947697996279840362023023565383687422778747188198727891034062431285509011975680259864727814815877027910365490755930782767778433197404078067711183035125847246284548290862864651805930812487529600555877376673857661604835917723188681 + 11736254031482920799439873641423502500116219436154010359018638987374989401627208076976364443412751775736884430631616757847724036574003906938080466395692394089668240169647201895663407988720777592317112197816288375482831531584047384297717060214737037472291727622475529264224517102637231043187103713924803522749 - 84482557244063498657966292725847973801938136271873774161954705528855911404784840031145714596996012983853218430573239353210759252735579148351951705983637131584267561564162782004428944088170585603334371561473377940561809506213900947711542350706955188254652162518224189646523473835004430768164710164280299199823 + 5426184403698225099776704837354494021368390126414484857481941071333172513048945592989309848979845113557267384697657450908961517231987929148853729149472058267676048811817427728573193245172096605101251991079952120516628886483036141621478726362374505927640590182488013543725032975164142888814591254817510261930 - 68284159576651174481831637189470518576490127663505811573009019664870346763106064093802511413374220059326365282796541229583961600805262052229065023194025224831232645209743429471565667548337946880863443284287533342089806311769660098000273891836543011833015506937574305781554503160856463640246424084621898594877 + 8132603343037296901358726107979997323916591274887957250806891622357909350212200325559833240078180399413933431384873507732556333858718396470423494913074667681309089283941338738117406832624543673856714762347547363237668846389491109705225856653948339980982386783095965506577869936934608773530054645314920418006 - 2333490106233048735099477626389151336163751854526700600199494187423833403707363602938284320737895088618232012061397199258585290795181154124392432454052846743509578324900191326371932782626884729741989507692889026531163519892456339606749249039882112971888254197869157341838255565004229401719455637340094435702 + 104285096088075574472799292709662783193123539676208840681024284210297782222168673194805984708408179707306874585409128870516457272160823007419009011898622668142855243413244409950243340386564499003035551650628576068856880503670011207051573551115886261825520527805754686945119383170988657287960327920132203455905 - 85442176188764399426124924813304052111351686673685503691299121504479608694537620867503799578028156316521550877089017032489208515823711311829869473286613860498395730026188840606863983349397442303981271348874080139296932605789926075058322355940787432448790354573377856023054647226079506620366923077067204631176 + 50672637623210737756493405116778564949179914560112640812289371572239133403727506640650878710939063298706457653545026886315824282585832608748876750320255475023509682691448923147431991533165022118496807439696103579964366993533378560222718818343797840839477308447215903764044378686654113993734684281985405890272 - 2229095249676668634442939485897437441623619885871796787307142630959879365526615318171726621862225235286099112243410011920944328301047616600550367086192263990845133408800334002918151752031167778510650695879173091702923994530985952784980091027033485743410447687187746737653635642218875018042989657558852201811 + 3865097373706472262855113204447699586542801452318526710071439014534134440836562569430708427881282898423705571986978121063731651517137007499545983167010761678632839731675595955065012682266673569863475180957822606077169276532081864958105962633019233576929750407858946647319995317243067267331824945587832720799 - 82635025818372980092762651133292489860701996902325050794347004970403255944344451736746489994202091725546258801464918777813351753449124669912529998329566163469564791656633055824454227081280394912552503706183591115174007119461871040946306136931498020810772815892530856757656241284130428367731199573405883951044 + 77371855875921656274829022813373066299686348997455487538555907904867591751417262277166402674781905260126856988730091873273264091859966444475910298283174685986586167657104944754942587516956866816500886568818026253245027964145713596264795916229646533916364110279550740845235747970545928331810724106956018206376 - 53139901496418757612739544708707501651122596587225481721032035516177516058948809863587017371616543841182562312260358065046876680976331306981055291245183560245797717400468053865488907094323691548091410684989676076054110101816122423131602216881754538641703513041644231386976524433484389742349619265559339588272 + 24290749748974249681171699161241519736333707955539504137323239985304475187758813162442042138643176622204654935680044585628529392669956320909324584969640516336147980694868124155581350556165793308632073273228728405606613978608442790910243589297505529487278541592545164067591053197942668111233068543264718520343 - 78532473535424244811447538555775613561422988515074135645602788381243552123770548871884438284311451383074668447285089478007932823598988312731310906854355540738008846935430585004038302395650907295453060145358643791184612413864591941212360645563608142779641198308881935840164964784940538109371153229120315214402 + 81309264804928732840061402482960276957655170831003188026163214893430547460404987013766058064784728746874639200956437206624077178275481962724019494635968817837388327461811455936741300808103810087490817710514061722477860544565041466187694127706763746560227300677701212380253382503628765438707354406753945180864 - 64513719827829876651832985619038405020573998975061776333024893768604697961597596383090512518862395356658330440170759428589627744537061024552493961501399885565466652946225607529648879989371223338608146980901170706528977372268295464234981879912189581620746834413386793730332831537712418245726544958685225669716 + 2382069834143098472943401536545566559358934292245147388159057528160853091370424509259306024079815302553193401398874839351611992037781773877033496617534754467688880776999309852224092002751167185576874964136996442082378946340243908054167854379107124097039210006820272423974690554233927225644827578465681767164 - 49511896951682015244545237471764269187662182261636340755581594659665664732898463886928018356754834488098456017169308998875886403209383079408357990011727614607396393559490366181031061186718905298813677510054136561688461235296680512460593390845603779869660839059345878790253059580782367537080367581268691130764 + 63445108022740226586582724207532790019875657626929430115558981602164042746333545272164800908351526585032836871809742448218146947799269143386390160936068560856754865405162633388514414543324348992223764780934919202857448466015698656990151957737862907223743275521452735445135517036452085865019143408584060031171 - 64308643669763071827333341789232708149046545765562465872787323215484244793770395728074337128197796250258997327406478332480833134977400048981947711616137419162908453044856703881988739079105487127128832497755966254227352009185456770225151746589232156431318377390108677541692714570649664383149196056299579070569 + 21498109300474563599850864932494139332342286031005931392160606211271981409758001578586177366596655493263888205146967210001591733485377361040682850477619098813571359118939738839560045819542573864811369628986466853749102510402336284353130888008518969792826916604930713054362999149083377149945489705224734113665 - 82078766978857918272652054212849330257047397529882719474598817234700849730101740443661082609533675545167836456650179721001065089670900760931382973502489336496315385561487381288473859109167668245593658670594816762660664247420455718823244621511615567356644051710207920778716716668237744486402857116683589851423 + 61085304892048324372740010454887258572640660433351805044236281587338890429193413337047489584355074741923324213128777622715816516571654629556036516446057126125740742667208730471085554193463146432168964360717627977652238880211704805303703342050239738948439890609995074085680753220522500703622996608965206702071 - 76518303788917313894017456040271072592831021400483775603562451210395449747784539846142595399637285673696659845383881085319402479971228512028618424945623454669623014929876792113446209630131848334145873985897780591245565692843630339425939520839308264230528686384145592520522306042611705616890621807580190914038 + 19916518165986454350012244193143932252006100799576326305438381633777526103349498398351507693468862556451226335967375937550718872095904406258395014959226064676504211264010757524962121774991009293268877298359735475222276002409114807297101899880302009529787273032179923080628124929420153708630291609330800989264 - 3559639348837620501366808646936549016119362270545112895843294015795252794086297648845190062673373331968446007237295704016248322320104493240179051261269922283015114778895174505675521693683675951985088548311334702969560177638763030946875056726114813032591709133732198006011809921155342628541158769931293894459 + 82510659088608360171620323345345997414912915906667254330763903456445912766219735567153247847715899658167444885100454687648722818495962703255937166343673326271959706555896653087126245048530516123196136937174848804793452713314522437778889210487229927632488363234935071471853657387914049751509787187745984057237 - 83485261823895922611350978570218758935683679442025259134865567602382606198389357632654334804603757273230933827526658819206574311087269233870957319633543890642856144904610424696687242458677962071300657735485137733905998365859493537036151978497246222308398176271799614348306571040384976721391542076970805833479 + 54832133246941214432436045935870640761811887105282698175117173876369542558508952836536527131983992439870681513271826686894928490889338101149707439312363371958356752558917704562105284524130044059607686752459326950194526101033018395655699361066417444240052377785069915619267404843670481093586756257795362519188 - 61320220491534052706629090254863904403884262989826686462352881303679305562718465200659821846646584173469412514156250070820482057668963381199998156324673833847143413962652021445354223804983313812248973876860305593654212090665952290676039219627203208842856113001022476294397158336440755001558281491675880465521 + 4447563298987026427985823424743469147013405408127488873284966996453600575450224902712914784115521180716345723268519567756290511449255541344963882101074687657454249146406593962132936417200440862106661430052363070034612483597213113893754478145954006526073073132887844678597382138085004445040159691496418832965 - 15830481269186246866053992898254005456236073625797659977751671446404753339859098469734161468935890853695247883599651589544694255662359470117181578027138216100873350698762231541585015802925802397485419545092952708957842895887268996874689948465183335028051542115055192435349067755339516364764918598106743790033 + 13009037975942280921166553234993358037770498975223485178290445866575885007255064538648518840993380673707909857740105846170360298767007472949879484215764159246956507677041226675849530745775391408429740845882731834339403855081619020035192948144091195674924584350868432402915795825903595305558114733029268863158 - 43876428472967561537006646312921825948736190208276698671148427615347736959156507504062545149008857583049356509214328425541261238280417656048508801629313127051057140753190634301714096501220876886108699834792853022857159221627585704334516794179187633113712030139895348333376287989672141192056579316976173790173 + 13203772222783900537880944674194332468557037580387337241818156103722349998941698567092863823279806922514714197258828994622006912491287050518161504616590315418453128477397013881653414553269547132052091501400770509451422910037521816855338566823568737180225470522029568737620424170995388344432740208303774161909 - 6547448643525951087804684374619847598345581824966283131778380849239034793058270737130725773380395299231461727972190988984679948116904610507568226969456358241749454103566520367443199694751030393061664580645010954292263591419286367354947343130827539877778220439797818140953167466098785723632559803620629125116 + 1874145944484617410987000195582031374334582262804235946889253223896462214909200818035671035241594183977208610099308585608410456735959866211215367861440335357719075195250578773494911137586988256474282701588324903171969571291397350821704196073779827046426002881146506867258709818133093943885051392982028854261 - 83112109162806725156552558208387333036395705996638969509596169606404933427796562831378184922360810565517244710212555177372686849080337922557516410675235464884342207184640474349452427947037600643796582198331418383671480417505880072254046732101531694827015423499895053468364755128461846913348870332091470362811 + 54489467598072553556982379196574137679559185581461373704966974732624430403122474898347472916945568190235531855769483174364307652802781044515481829865124574045513027702561799441995181721864598336038597458977964115605052193211317954203861334597668820694339077234259058909765953365285838983305063297165399989672 - 75249818526677470582778987459632811171492672885778460900845528594870643819850521586011497039625138637516426372909961787635332860740446197077241000907409112338737923548648466600957124537839686827712381613611806931105830222368228202872322762471594572538705841246544379988967216619501542956107345156880397160707 + 1246172454430993767774937182229142928223082888004224973687417974696852346148830284305947781170342900670281319764699284262938196974915958629184344259920954899611799262432850747587353086677537852443701566303156634412224125551460684768637728077321321109717364882563574415607225071210990506254891474202153331761 - 55917188260809861979387654687568351071833152965478236293214758819198186409071571654711167970390305394342890718356271677737038249110586105429205952106826338093263737453779935509013918695930286505894823759129471168923834911733408378953694525092980655326192818858433119044628313061155637241436164312658334796750 + 42458343038062633593366228576229965177122404227166214023638183434089245846957284931485156373183769135165580080654770000222364703998556712163630886912718119757103633716051701237871900431203247598643293606277983644321198504307923960312791407004894854549458422785817543203292178606389514798383929277061649356228 - 988283297110921187029860640949023699761184880779864578590005962704534698580230173425107842285295717512942369823699594005192002647178019513850065395479120839962113423226624712168748401465659404507297352282777377828101207650021112667012508918840782884197328316204269964632173420191638095039145665624793867017 + 9444896904885561982025947612386130798744622281119371788144030100828409874211644486680483152910533656363382788096061978547834706247521126680139014363851712690423329845279485295849537695844051340093938986451135211258612060296721404431890300238934875603437218071004283460991188501346878664102912419836768623576 - 81111093336424967895055140479561667200311880291278020908419419116626213466428365402094022584239006707349256163131582313059848115636935739704584237530785341786058800419283582301632756752418058423431304720152372752431130537112270890803981965499359039336779650935678445498482722754224126090442119066122001499920 + 84843529992271193074196011376112867921836916455211164396134929739061575420417797267107787904893851310037180698365953930919094422894280948682560351504652206172053402047589167042507865514582190935250342446757496512207616185677579957276064553306228784714930327637932542215076977179326845488190105558089358053257 - 6181124910690399166233216842832008193580041460412251368996967436824055127137117788338659850116764237736891639219399489339333353824279853353535362521272772771891797548950393567009848531507814355851193933877354132920714161489006034764078507479454329291922562087347542479212989901121562634853090675229874406741 + 38799581488725660451806558257845420867859424131255145717200320938714489273838466159527968632507391253535218524731453641899937314485238747802593956650801485933529831419457415287414706644309842405066460240634570488091043761528910897814788853280741153881159879680394930162981771206836645602136351983123454315101 - 16210697566084545895672820464385825153517624706269049773603408738584467823669117754925528528841416064328030339581467059316794967992372322566694604773845071721244727501087199651902016249472409418421471438911665288090055260001609953944478844085655791984390685212264502799106164157144313217166294172527762102880 + 37785031226727942551617271591207157151055099748180676879454967559683428664595822144277081414886639987114657972294804597077230180340994285660838634977912425996794427828266834714365465967430032311555608447416671175314430136641015153986872672053548574968612422171086455869568253544172661166959050124387874402995 - 68922135455462455094730940300106558782032701238592369917164344939168279072198657258878074231477144559328859598446517954781482286912551852307427303399128678283174448022424578538123915510551487631920180380722914157743931463081342158835887710086672246366408269361861435077661963525173861942904647366262528206769 + 97016719790506907322558800721537617790640962592528318447146996720090621641976992367387661605152381513037778944468159749039118452419346691849312772394587866293874817380125140467809123295768988604806450042694777865148606549022088188446328871180208155715913996920486566311272383324834558435613358315972777665734 - 12491632279213207083618731702144711675412495038582295998893585650466943236002435483568372224203035908571603859752867523664277144661178833028791212314506474200356823396417511600362665798852032624731493115966819416515650201125592148536561341409192507086100732887288657258094599794654311875121435404111651770694 + 85216622329377826824847190197102109892153838763851100852967987263325951712872688762328761047488304187919494894750622091384298894496407943498115562631612042584203937136287724941569214405553588913088641487321503435462019253294514403677533972985336065170903495639889524244089617986507948740171330023202295507683 - 72912473581122101840844599583320945868112186362227084061898588673943254987304306152671220001723822661662605744705428308503831048315488287796473246584041047388394484336648151241788878994557570576038084588741385868870042743872876758700355798742183419105490602419267214025664391029301531002631353335980746477069 + 90074599860352597392135778182946550987279051852100961087672015346964495148537332628689291881312695629473743299733379248574527239521967279323333524871897574419565244605107593254944185511577967874903662989093466958033046023278907521859058529353534962433594117391870040247157979515217596071479895827569639176344 - 70009645671122481730371543431722202717263205765912033607112983529190787250122101244633213857510007779861851398499131829536664177636259367340720594216748120332239130156172059452376975949841658463530712654750274138212612865918219030957685228294788444018333215247207126777794271681236526710073549591853840621063 + 9809140943877798228197291971000569379753813796878418756648713254298587550978397520770364766598330992586591871326900951578376011811475796368693535212864669347506900509473826334151671699503110266325965825497635848067097670847027043365729211222465120587079459952937356402340511074680378002710616783981087711516 - 56361305224017126184294419535592906022444355428518193389149753520656513734700977219003314302781724151531639271645383019332586779241420748744780935794109994228761203489480636961557261437864132125565819124582686762146777200051598730864836310465317958897722129298585598770130199182987642886346819431201603403551 + 56397316296698016544626693636638542853836711014233418884110773134490010348472403124232143344958553138225594068829291171256494848879199910527003189227235437562209730860235566389833629201567040155155728195419794880791509796225973606819835089221443438547371186969555855856150267664968942200754427806000761603879 - 83208507965987273761411014318168881457984116648125491070054124543827878426687396996931955528383478892762603717716401714689867710035575660263204406040315626688954121176024561706661476457180552321442736085500272452227293829763518433292446895874714662313779713592895919808810245510071644120548625701694151405527 + 97197756751268652639684711438203331035541465771827334822905953397193480140385731428742265479819430669198554757000567793459384373963975753685434182585695605490229723203342299353821180495369892116820526418781192482736339484444167418614355521395303695916575782334893026626789016534843075878984967792794941956848 - 12923347830309217147652283446872727226178220136152552656863735226310257267697133599755151148100078262062191390397598127725833290089877878405771157941448221799634156483483571039162705595287055120236923831925814117463328318100231914965203636762301457313066208878038555452110472018867952646072053559369791240168 + 101669859012464622065154351885410575082236204314631944055099656889211152507761913873811637844887559474558047571121891366646716084095024431653453077491487512369502238623888250210848629484183984657933400369639426589641383070391167457080415035886040507865648002206669683168427236780782592602856409993640457171639 - 79540719488677900060772674484911603818671541502323652249310115731405000135047271398752212497913456771218341403055853540593391479353878207681181774321919215567999211835846948522118915335727684660336366509695176707111754642185799247524467151415100178670030648039326381468457582709738444585246642718724705313581 + 8860495451826232328373412045661631510653401848104141481007391414685215877501299835514562995146483630533304595725986352197637383483703125434774836266130149196555004297731492363710381623770478259490841103407588778300953177257764411562368166579743047116651916171286306443111260524059137552265541323754708772716 - 18590287428599341718843855077786416844827320183841801748519591313602641366412128359768099450799054822020272629684732353397154015686149872790063349580362124342205628867750779737705603597044169231194452556008618792608020872558940719285940276533799608781461516385479465196483078412417841983654238702240131380840 + 18984119658091770033951802454717984302543923400080026800384222360584390716400392596977727661725527182067551390491798852823381834955089395082818961680111617719373619708587590299387397316032746053366057416137033620763360913107279219568918901515565434874166880409043848787489348929966780567024306022443138069591 - 79929387096841024252205318564024019904108784027922645597452796420669072539545607884070310269088729990393371010585684085725947971274185439063237972997553699636982931790238408003599469229303594097661174203677125160427661172612035638642632243367381436098150000388031183987015748550700037514445046206084277833310 + 2750365089479178714990391099703299823403693621391212862577682453845585010029055035003574801734762703796590292837956727407538903969360975594907685030443432527489111594544684661744989216022075404371862992910614804121213520461382914960081550585795377803836711621483188023574703492199596096938437105885084120242 - 74203680850589535482012395978486845553998036770512740698601220221557683160052500679698309820886793564355507563956828542755970934439751387147165750366597152348326124216783088710576084237003638963924969271837408755273073105450057197761651261228618376853895342076104084306905272317173189882625725037843605253385 + 26426675543401028051804174651287186570898227668277425497993140011345452584151022584014746120819591057900151856977415345608452465777973905033645615083384979380191457742059816569655417089963094416771349780447160031653844542668673633920855572666341081301606269361962842250729586483553499899508947041592895468619 - 75867739920579591356423575471054978544293032530287657645564187556102195598457525428626394282931227289205899177386804326759601875530522966226887544762616040141044317652032001739886402463854426988920101302092981077734034035290783726247943258852195771093879096176554962893319973380416176787711758144895524348351 + 33541405604941788468186964015120194780037775946174072083037031273157550640618906557565207969575921025707247975215694743013392187404174476642636175978816158525680584277618970095751150979515359325429542370631197029097344926199477521464184816839206474089725929630264841774360450895372965928939953556317580113638 - 32931081089144593861762910487282340203854747465491907360579726401782107092531918516941307906068448101431461431862250484888786188919237172509839077692434355970276482056476390279158541678003701100973802927679184027862783955122594991730058751253416001166524460395827035441512166120108716889524692065465786884353 + 11278375410240627786870265126548043128374804776283055757335808161830918299722255162128885184255404627579663522764445605320915717701513426397281308338275317449872826526667868770611021603356499862404014320060323957718929512954328619785956668961264370573078073097744983697568984974059950686146536344567734601362 - 15045826074695505426896771343304912276481838273398896941262161890783917679582345456649095045101510665424581752314330661959716469485723455216631472232797661366038311291397146948564596414006701120705917325212703375429181203163145287528892571873701134905287431278025333326946784013609440781787225725606334432960 + 81164646297541509049619618623315714782562452411371013588209787952295443613981505517062094910954891699790049628080634521114595223587743405656460554642907427641621858435528081561011614239998205067669410940302863811507047695242526375612049452624812646376906534683507994582104290563060249991983150771965604289281 - 33195509878529485245433130815966112567806322006771858827287213405458584753172005412023736460657125950564874324244025037370842591937825808992856150438981382366591645973005811410654669450395328074733557463144827742541228281088545827601715432756830090574373867918530761024414587367348063397368568668472126441301 + 63479632058286044195323031468675991821232823205988137953894248626423251582331247786205136101705469238250250459436712478451158096236034965530234335978974132825194093887142679055573837313874722591485933357416446174812014781169320443206192377112794374279118565549357077472846513673583979603298991264168200674107 - 11199896530256271718314670608335597191230318002841707727435913349674168345021938033266718829423212563557071225093216563831138743918910139349597065778767112647811012954491346575798833575469332546577607372886658242254766355816528466964130263651038779575570329958514778070217516109301650579090017959250277550601 + 99280826479560088059315946652260034705724180187737769626548556491480031561424510407056856286553885595380804194201576242707251938792051989994353320940388082127055450856931516850340602007645630123849270162723858189404732163086799447575612320845184874618895556946458652566331270437676964026822750681179204573442 - 26508746907675045142307767997986532301220997493095073975150121712861380423712924794705491811767976889242265796426133308572170114773571660713820205177843462189774292094841095561554865181996646040655614502292918330585828485271345124938967383908157546395504275266148932422073668903668808206925475405855331906832 + 58854356550027186594322133545112801425475512058423596112929918205951397767893613312628557831181406698272338751622182642587931554038911588991627999820307120879691868728903373209310062327118058625367832514078673626893511127588821698463570371268878532281025395608776363816685591540858396566233198412967022167895 - 2196410164444524749861823072564654489490777278308224729895972436052796812166871121894215258590147170560450067293822530280213119851214287604220385370145481090335367250607582334338885731408485773860856686611311827217401687341691817699769905693669347869936973815267429319106872097121980491432628497747783908819 + 38597045348895127726480930780398081331357129209799719301823530808837233742167307200218643371341978763205511422209161558097669154682903091776277208699842813593184521972870413570298512135311990656202046738955903529219565124087456340019665354416114085374783130942306583567511403818005015256862469515621734109363 - 50588149597656648094280775456450069432051603274128147974921431430550077688062766659011760441915945787962905707511316121236131880650607553049698049721689562217692463324624049653729113134134414501036126365660827672037279742354458798334804671750614025381296727451301799534970466985557383051630300723145349023214 + 24349542087499066043376555862342359169876901647279568622843921138300155492282333850556610347347809644706904414640508870729127058943188728780725370838348681731089112569030325483839176745204204285991990610063492791833624603532783752616758375204898099961165592189484852848654956951082655296935613324413556216686 - 19062854366453690287128238420440193239625093590138273336093781604188319199681429130185114895797352513804826315219436773352299809445767529956513259558606921540197628759384494928197796608088265302874591019442973655544787453343103426403558006757261560883365613506373628198640178991436630686787571800485240145583 + 21348935733217445884574123872264243961034847249100830887115067535759507974850767047558367504238354857523920343997333015775167857708023993900576417783233004696556133742370935222016256314061152710417981638890034270767593519843617031554141173816104757968500860195598924211813056053512647386951586639845578293685 - 20865841877543987740515488295661133742199026901620178911606653351730602964903104760210207143880090193368403507114352358093418673488960236796228712977043566847323313341186526540274716513630474392191777909401613554224183928300282197158984536798690199077597429832589430129265843723943080159583684916314827506698 + 37926243041645298806429127935340263243133738292284463287976591331261323538892205701158851287436924076843922380532552842297747007981124545980563070437939351610575086858804741565041459647547951101917267998951960334828913043683480364230854871163957164572713710794355633700834256903322883351352541209256636845977 - 53044126470564884965077005275737263000030338823565942979422322472716525315557529741729505491021712682037629984928767857872244805123933210573370210237439119083760260535247207918082457826407575658124041215662670365811415267962379614095806569719688540453633810303554139247360343328989490668099399937959167667911 + 69706425776149368272609786552092240662116242513211871344115833809115580240048900827784989964109360146153869699954528172998037770164440760307306740953003723552808169655412664634362086740761571898501070863977428381753534528651318555303064376183958390894794625764424478088660709334320684127307284409595264874678 - 79538694079316358391770629526889009000583985889638093889299593474292963528046928132628590973960750354615775408137183584798287914462431743026500031867207600966468002809353235132910803928168497533847733310072338649144339339020316567223060012087651795545865829313385016685605540336082076808917657402062783704960 + 51583264701511498554962879618130541722049966748467665506561684940436610471663099697200330997144245331411385506012663963995710164155963290159092113838231775420660805253002481432472646887291440615490837073249187432783000810224088151942393014433377968558093839305769658913041332830893216531085303407924588371330 - 46655528054163869005088425135726707866590198647808955375378642239355875512212033192303385547912292398573409281557012360416178761280833152992975844397244749258888934696955300184973243104847502268890553580155773179980433643539473074508395084886264902393093839355488516272847682137485023344008958364880296244960 + 70173421188753935300406102102533752943573642864506820151996590421686026400162744554680401195664400072673525077008011830959194089583368607781562809746466137626194755272286057008033559820292431237489603157489193647098057339197231996633962587530684012198742187504453036261375614337103217765404649477436973847482 - 2816573368119166386724912014064461084342129965673420758448603526282360183607272652449574283028568574248002342098586341248528639864996699922562461325726232885384934622839870735259750211491043529822091682343072636683645312172376709281305088036076752916645847146200519233553260643893455505186691459642524120921 + 56058405937976351205869148561515672942505340691025838624731882740924649614233113296224983657458551489164395187176958848878136643766207745378295225221488233095623160758172503367896263589520835397207856801752883792214285922387846986353923090622715895810509968441570566111550234943849270368697741222912154641490 - 30483400883894715395233628877623131672784892069647382196017330467287585030289486258383150496988282549291502588850750320558885773476294804059788941767709569821998556920120230440696675535625432621673385751655447801624129842898907294665111627555521189214605686275257720265117945670968846186800329200736639875599 + 14089302587449862416793291307734224356353586870507116082130986754565660202292498726638133502645963694193836901068518482561242393332828000731549482556303378226887150890105224520338199449663339373428360687231653224001522350928734968269431228979779924470576984418962817501927635188486935540583125546733873199264 - 66665084859062064714132643175523027639172853886930739320465339652091954473040753093104734843855096392371307439982989033780005576728125002328869346930976972807357256964605421290012375619150353616543094627308390789534662913335115219002294825845424628808508615662668286686668145877369586148551978423039529563911 + 81192327715688692129855331259412086568162436015041528617290464289910029217890159334419217464866262146290423001203386244724925321069942728471571195158927214686482581738963442629916538478028893782886220997268811954171070435742701494122175801181237775567168799158991149330464355931618448527470937649555100178290 - 19206309594494355181268526001998775293123554929720170506811218206922177458970068514084316677047828946895610537887604650381082160125393547068018663975433689497569574945636631266082889080005647386322335990683501100176463735645352132750470930614811473293679941380375727459316987784935824804518563682769893101128 + 56652450496164062902559415099911385127114501389330896423075181580018028009049365595108990776694708093344235302587697906767436883991446026370869368139678014258224720679041721560696418380245148062920791857435675284733434832308100036752399345395945453354177616928212239143530283901146388408716892326572288752093 - 55090360299416099924138864272966349026420885333230606861896493244434514879406574304160809200102675491041828358097253806766165580148501937800173749182665905764211570711079094238813824720935682927252554412896469182725433989117007193611096855080031192572943725623870823201529074286916516615636061256362144708046 + 34153259419085051424606132975024189285009481176330576551130295384361200887004161238669469987455581083720521981765144273788956633463116858810095387975071593825884965987927159226249458633460681297314774883860632375294603370825109838057966129127438371264496821473178170807441344100474017682204907807885154097534 - 30124280873672747110630585885546282008062193482706824439460034403449025439477694460662872773522420510106126967526468747183752624990524265407026870149093516230201159322159643875000172630698513839724312039768684865016369819002774545890391664785325167865015855277609302338533078374831139010382577316668136848386 + 74424375036265830606796771466824398692718071806872847357574339969548500970007667866896951156430545274229903220361833426832426515785528013346798754276894065187257064061002510212116423442201701860707978074779290390202626966731878933379721235049756845160108734394730365554077519114593682812101633937342918401071 - 29239628548135701883753366434239291143644658570789007182535970344118203629650375482706742670182322643604659677646033610418016798435138709741960792546069494354408897107505145015758111503019226893817156170234528032507252754608066847164737242996971650381264266480401780639738296080757777422617477107212882271351 + 26660672164524195741175186362928716383343518267527700154830233185218454290500927361605143410949321467982638910549124089723368333087082268795271059100776066912773534357231420236584089614644880888640771313851300568237125147217840837430975562081880958549675413715722108214852389319559219943172723320926079234428 - 56958310965950427827873737286871612467698405563392079698256910315695943352383241003201206525724202948426893880703928704437286111503658375214093668944141159110096105077171751867545650044212650529409170538637069204825562745285602918550159564001855747873026600297622250017547202233338374356603252696120865358812 + 80278138060106313365347287924104487503990465525221382935840823235015893423815095431480439921008137586808631561511183094355101059495172700658944546109095225853008568103465190752901169161484951876057426156481840317283443311836718831158242216526756551426947035341091117032584763527928003388425419781386827549374 - 4126275733043740014848279007596874957481376510387092597536800939999614318531276612629878265677070798635410732144943931188388132131461517005446713231159984933809181803809333749286856776433954943583225323398534950718675113269313537286735291233543988407797179219036389456353755190710811617016332912968466362111 + 60561875758249064102704356105721114125020320110203646292432973574545078234729650825246172117271879719935308073143283778883222143539807656015663137677227827652073361310171328867963344423225514834434039795313974406921572541770260845556962726818462391222140023543637139296642818804506297946023361100219047871970 - 35597005619394866578462387017832946950228190574273783520488501491873040464401084258152338709856540616343157024561848380792260340915133992032466321760903815699497147484763987250147372522255869472783169673870114684161463630915114921573254272077004041540509013503830703935272738414650543018791762135232679123415 + 6131365515256412467050762992651001555392747968410962875006611345053682226919959983465267819486887701672654113579612047564085810607535298149197558356211736257574245013185917581219785036408230615519444262555250029573378065849427805554560563390569396905534181166481971524198942493961798635809594339615903941973 - 37327874614124997889028159902506780254457012384867640198423998659448758079881371552768593412433762693246885116784118901802450278543789028192220161064736163141035845851155096253691899559894323082860600116589807375757347481405345140074839176881343930694394939003621960864637823542516201605747745375502872144238 + 93118786301348583557275645036445380963375841294297827447576945427759897907465562456602172435602810609734223634202497664677116773422075095492517647578477244217837306313999841584430465013825688369957514179431966960068133748233456365666264552374073720500466253712128875413880650836077320097061805767591933317742 - 50040139969910297838874589365532514861375117142663044413011295656278719216555406090848721254901725308611867068372165676485951572873273380893904651443190497756044257731990182752188688300468951905968070496225952570794940197669848443732903908873813755806370555920463884400586832287797413062355290864485289391247 + 73493314507861285371825675923718912813936508245173479113491229405607244225755066164449075643221017720356769822954634728628530486184697528085192811370684112709572879844211959925121782149867611244235230686105625033542338089280231425465794795554820179443148616816101256165570506581430106285410031183830299369203 - 56849676823271724380330103110596507684541528100122424908107021206311044846652056758832362842208352995744757441259406235820207132754188807064927365223736089326191482472370819969415851533942221772178062841421823430848415497853482757165013806242927604361917713114381095645418190678929187973180853368486903794993 + 78637675376856018547263278063675805678901312034466279037839316550869085589430885278172315589535027780426173291662454863354543721339909419923601787694501619222509314557322759468247191122447859018640213905327295596794427555162931649348700218543591474872415504724325774010072282047144534585382340194318517993021 - 59430432399314483426384880865350597613774185413690197384109818091078067653279866127193556501384867320862127812232230664514106909244697612469479280807602734788442919788661165783250337347207195971349475445895917621581321756151087200328401105541808736570627482878486964516517151930144713171201197257518503889531 + 80928508454524024049225159389540174381258010135627472190898188559358736715429017039269185686407662721408306835995746394200692569479322713465197293896684500425070887620318520734922626326076208108178290184065509743601838054060060845362342744008555667826965671900067314277994153299941889667801983830905506421966 - 88742025925925410413384901717087506221465138919064140751882820242001389000104979714004955973762796751248485958907857548112469895472293299845509926027656937522217990073184192840658993770471492341850360645783293526905592829265148274989953945885324922177336838621691770446306761072345030430933696171801733369338 + 70131502934628659151757395172396535479701100633928704865549734148708233026911785849536891142548624880927537283405811599825227866467329840842052523510589437537322746948694073093439016201975417020496230571251808435431589831914167490162358845370202829628427601361851012068810474576632217420282628993922301463542 - 33359974566001708766715130987850937314828566094268926306276759504434864849107561358249722860586892300657996054081416408499590889200839701250900254363791828463030509561111741177232874738671416087827820984614123195940905707610615684118059504670776899662547717183676843403031519518698714029568652669146699646966 + 76991076350411646596184978560783833454172989478048007208246382807676625425263103722310162003547804391228380294792549618836370166340763495087043546961309686992202534781273528064598114671148865406564972317400905278390693205421012224411855834883020821810433287819665878577997940026905401814319076111907876182421 - 36425617082547817892778370359503989479800985987525955118287072111392295699874911456379508781897960409652463283123312613422879642676318580043226025236373949388881375238318871862869398635783421627293045943238052142105328260722149893950846534801551382031930104368164346428635390768876978444576107455057097872589 + 77168134586393236763284876456130005165951352199121013562390508488765025560039348993867783589836042450301822242129212219229603419140924638626175958981741117339744477507436380566677827530116291773645797996367912047361569125690508378911980481409373248587652494280145596428340891239362071529067756928717309123420 - 40346552789921088857391802048579939707968953680296819674569363547451430027781537592155998403684503699342612351032392727042914286661212966548336061296908004144210613264422864889162855586412915103263789994726722461612703609504735625608583634313692090084126250291705559694564514394214763753597223509920206006544 + 46588347912990945700332291477867664430036048722373290122806196732797385802987868025148389506029458862062572522412345581228444778430633053953037420841630900467626760265158500258979497502689455888422387517973821918191767777793275322153990845283097494673578152123966125618589195293817927367690572794612159835470 - 8003101951250803914497256576679650157089079928880336324472724317618175150204186808826896612519675003249793599934196657735173772229333188894560689640028648730389128269884172457758677113829298787677063819232411053597731992389511614913723920772927635011268597002316382013835690321173718055955794951316195622733 + 79123875976684680349960220354674632594507275703321447252218881366916980393561861464651552236009245636201921153333387931768327636099560070769181728918793738398665252682697986980199057918476223394451722105661283129312087802807244095435827169106206925608371702207725181935034159002064691204864698391818112535626 - 13493880870974236748200232225321538420495370466129955556579978442211433329670325173685733731031260157445787351543605232466276940475985192059347085554490903231025679715783996298006800950790401109118155550329677341990386764410650882258643260520652964716038173514303661261209320490295454243887839547362123639961 + 15952867317788332545655927381324950008561530442160739091710971239826811798023211773478215061003877911441480123079105992401315962474729641601144663859632373679144538730293983150900018002163737304001131435312660525922784698195868794443498606605397524433716324535539834116133874211412297534446018624581992951022 - 80634510016866883476544186798707679644589832804796475208420618832333150263534223986765657720353721077019611528743878159838199044459831740849272365059997002457388752622675796254719330548111017805096903143407567086115711733019212893245717107910370428622061254106866365947273322648703859253595686389957881922531 + 76208377068565927550963480599163790434202057168865138901413807415631818083992069707878465319499579637814436712994298408461955242253092465655690853373999276045635487638893049080878121595443919434339390726138931024079318964441083651687435326639332481759035320380146356104890223856621451212488222088639864439442 - 83808148626959075188106002785842810459911960172184797939201131575400599257968647998901324518314632490779729164466739724540673723121385583057002344380924126246781315787019896261272040753225272162493771547129290139382072274493386580409025024503577965030931431669284065509875314974047812169464668683371498938413 + 86240225932345286111094036936183122733700867942881093938594257557762637751464023524888206664240775222868829826775562068943135300883976075297173065603338609020987182345043037066596329533447555489278604721462754044066865828349367982126876107570892796345870016547033847514063931416085391714377873154056090998022 - 24884004831908174614367805438367126372897195311691424001871121944641110678576168764343808146573980166530740231128602421444171067501740881039766977833585223230278924362724483137904012505497223869615450272859610656369901053263541905589590206145555627902006275783145273200111098939547140324458852806699908801805 + 12373909220822273379966706331245286176273482971274607029442376393513151575894361445211393881640369147575779220950050664845332586471495804547925733314924934192961192206235556472287840464737624564581478294204416398608983915377773925018236319589635322340182498957942105244821800515954913595374533127592400121014 - 20245086269870427594019311798727763998779278766700025085386025263074628616779045733392793408159335350730612907267593471719335219228510708523005487354452303653353950103315427004397923922105884579704123185805282216407073245201512652873763668412855205467122853291538190570807628121874548526052473892584828430190 + 92626585270049497610237682843064012409145972211427084222118861546271198322686033518645356108357880936945604758989910746171108632851092678290399968134992234144271544380658787833644193232624711969234975076050455574246751147065621876063600685705312030120053725654028664868917096409424815440204628363210866451885 - 62852636356347852855927582965263741268748273496164580703261885025215634648193794669391388504165746780319570785775830477041067929358314897410986674967296013205087084839376231851747489142680757995504226728053638563452273686542320102005495814312754603046644159664703972199626948715363285509190518337765428367962 + 94978290093718587781061883936667081299211136092415655995433567520344456612655660841531135764247971728442882366267119408844577239471151389446099197622643096967336178985696028801811647538795676003899251621241761444494647890124399435719744748770192884124591190149960570399778414110228295706428952000601047848776 - 60131097483525210086488409739651272413275071767177014853467412998174214454177639510229258734574810000320649792130684407627107494558694052944239281410929034005770198971474169915381910880958776022312960436494611676710608952673674416719456724154449897107194816271819455052137653391814540947859459719399766041819 + 68910126226983425128638056257489227321867892495403740633257449203669138169729911561159025721096703563410582593539963820077241862743245890946357294699821279379434086504850824940923983193595572037461990531322712362091712542637207510705632270701545338555721611223875871696748256400822247040716881993051064316713 - 79667216995247917227399732180415134981847365599951560220867174107062822433599741512860369418283564388499153729835935614241003021796594857355964766978156646079863774245619281646404898739812162872534568986564158131648639267380504541262209299790830785914185452406509799510557245048834301592483102631691204573629 + 24546660073741630411178032830807662175615278555003240586208670977994045986593357368612984152361416954970694655765736906114782877951173917337741567788893638118182508820982706589187547669059597729590598460465664719560440060477461641922888875222281959858997535908220942495986335878624305404108926983467655148164 - 22933507601371518021138699956295519356639971771539180874153781772071437655839317513423375797751069616043379686542438874338733699671395388530253432001197477319394540811591860297331317478044853824408518737868859044865750678160380716091514307196018288208736660378633867705667699851035080561271350744479935503514 + 53072059180666715241704093181697053594748812599258255447543144696837515474031062807734710075385379055134803032468793115675340681551844920459697318438727650296106411633208086747608637371082343827243961381919902206835728534807359957097252701147065583573728783393777955032404886140526668822190264701921269031928 - 35000645756573337514398269892206256331858679218404738000494266862538899164729324348623339578269092141371007109209347466722723618458762123640615208011509000762986720426851284588282351433034653680025011190573115627529381542132542458454241385627913184585449204837533178878548741976847649321973148411422537738707 + 51593099079334797325876348073005029372248819412852419037275004131205431746997098227269345676089668325318287045061589224786262139521862971729107005202515189770530316609389988838286259158549785771608940716622273938992143046700411849909613148254258031389244694812636447169117920423106510854066205835490516558280 - 65891914298111244770705881574206344911161082810453041125244206948591974433095818095995909478155961480553781371031685545876369418497501738665420201050010455785547941959007454058571430617443138084900670212138528058202244387723432846614405476459438381310546556382465743626634417835854033571103828583145743890675 + 47804787420101284749718076551179025844452950146819324456331953201952785958271058874718628634051396516347812998910454137343176732879841513488169048409563088904896297159172866268663945284793035533526164440680060368027752242442566005856555498156456755000338010633444939624677938639214448117407151122788642470445 - 14882283711294537504515955735492846252547127277736283790627017288277252219363119992373259613557354023268426835078501922810922846235599281326457261033547663981883179559777737219043646146484191246309915298240062216827523304581412166563647634978812243234909176631766180067096749252157033033645431435510902717917 + 57638197618896148495732657388969246920508125244302251760567033804502557727845073305248319210858605450033371207974827395438837085335377800975404672152326038618380662889174427288180987833045380071676906752178145447713608758699952134498513056892426118657084977200205346722092924646182764273517881354530660218336 - 15400296224310393199594810273090148050077422423886002193340813056820850690551397827327623098737873483890737849527324209773425105466606630085479295403053859570576689741634507894115582873603426126980048401302492202182959815275687778105128485483505821521405073173378618182617867977306420699953561798212783192283 + 36004488544742565626677251663547076395308975365490295879528145208686378454945401278598173316509894078910363192671167300972615108329337148706167124281309835008812871383386015742203045106637164608238928101364932602666039307222340654071749985319012403743400546448729130539899150501532960002386854171085151309169 - 37504708882951576986839602044097823207802102744835204502681567937064826784716423373994846015409745089380901329934014344394170399554839376851723410759825914866988961849275316721224407521634625693136739055270802017087339773544414155787635438792509485515032093159620932103626125896304682018401525262695128724343 + 52829123877884671206794683367749248206793672408817260903786007358326470426397009559084407379573787348310667915328452626200847539424125327045499800995907832719290990445252204962133919095616469051025861598017719393778090462211778098623569988601819179414828291341200048939736429515125311726339699071261278911594 - 74510365445432725195255455380514907109893179652222117462126598494982124333406601927133271657160670220757989641746226349287993979617188292502133765832169016013503937833108673184532509443071404875643363412037957145484031977378519685111658692813091759600845072635695037629738000078486464411144017703714924856978 + 90610301805084206054734344561591292351359941770859777542712643298121752122947933753326979461865770577874968075111315471949182692998500754277675930378314815931831946518038641138322667397612512938584934894276761664744060478108865934011951617868266607929215955988312608361949434962635696505338420206988258876758 - 12812609674473963634658034381297136027537879621464284038376710607163078620207464736076240877114045476258160336893429853812112592216138025408377531145061151368012691559760009113516635862271836636796091758057535055244312944731567613901369510863612642069967363335423893287167760765578193557686741928597258614863 + 54825442381869628115561928209418376623633850546839150102030888419300431110541939866777914400471869715051057696936277414872042600019933847120010409116364945290763686688981634260400204260575774107232830997314157451655265046524722186788586883076162384485655552888655183416910020527942500319763226153154290083552 - 64548543177143794574954669984479516835673670684319441292462289777338337613178050093780325388008370105029310216298232552543281526431758913812319700790109798765485370856766675220196882345548637213303983629078441546663183319684857910333002040882778248982416915649839803227235407974323958186540461453513432909019 + 48440146932519621146873370600462667298440251565459042664849170144995551493303749997810509505893169610097824589532129617839428036240528646492179204984453594054361958731058277266309072407636814042353403187846039783398363444050763408982875744781702129042918917937060521757373273799239255433748146553276095091815 - 62065153905914861026138029954893233173718545322683103038687646397385741653343056650285895191837064134826849872296337036367732098062519402496056460144910131012751249899897069454038451236728856512312452933131498981026575225991759132677185189898036063193892545868056781387685943904330870888809680402025900748998 + 71246762790311118067646988477801502345782020344215643443471440044769401700571806892843316635231397704067473574819436356468010659667935695042016390869075241946512528866850086952720221582167256453708624902507855288347506916748084566163608260365289025889260701108450193771239423223981155898614958503108069399310 - 9219575850658422030428136237415142687481179808110764046768150493195800977194136023497264599016077233419176807981005921283940311290346379812572016899149040480634714395982835837833219951100424045422689525360426096313763430858142644449365659066623951064177887872080308754752563545075106175742890070989790360922 + 85422513568761656053970159037699783363666001582987887365140927914950776312399854638265408384756596918227470280827670114616287786508399127331135779055281993225921541522350911452435213333069348211601194476205527057072516010721279163847535337483301190180474864348838675006032313219812470413766327839723450623379 - 85988775802815891241009968457111162097787448851260631432784126971554962052200359117761142670088683994202465965503224547098554333147032432401679625909097539581893190910144671898300122374873611113295941333068810170556199566629359713406143369249588118859694310076147682741751562644872662853119672915958791259587 + 48534662580636277949259672378361648849115128199318772505971847484580468572096426691787402164452854396261842913583675386298262914476797959489045266765210602734733778821061631855934043616505947610244864437916604430753447861144572691155784664141610154873331137892202608100168213025170024019037136435599300663010 - 85413066710881748140423247492550256422638384576955994555847788609332949925119047018016136261787325920105626103776501037248349263655628250267393401365560117664502784651879815991237553053395575714571213245738287720381355225977845014584520251343516977354625533417225100100872006688858249251845495599410192131548 + 57650335870090695283447769584966345722034237306844979299711153003539001439492439035297210956121499119116029245946820906783033850737266776502000280837184518719268407833715531478409212887535216169742924496606269383892892800339195639921210099378441075805883447389610018064510330137336112704615188085958313322484 - 49572404134891278098083249333608057233659092352885343755393904827093353361378562265125372462997286388568031018641955252707251311105018826679098185085966155109848058884870666123127860630446271544891907630191223163904933336285712194791262478794922005037614629120071013332891697116281939783566077896329287576161 + 4259056613473140203020757879208278860428308259960406545651612136195230581892174250556319056366394984526063891897308339186750838090651257025589434953975465478435464819689292742234747962056602396179372650047225355782611207074061740475991295777023127456590255646292290019660927184996171374528347420487262138207 - 10660783577557128469340225935609087843860886924282657286481440814034248408720807349624629854578745559982830247443619515854958257358871005288512564536101795555329274900736228186327933857673835726142923238826405614409256217050932217347833633821758990544565428777593161239750770341358564214629028498313731520328 + 23515746118279492277746237802377332258074490098643175755418187534491101507158111735522228816262212503270936114182670219830477715900665205442120550918376822961075016204539486529102572106040964384207609909800874724485631863324305597503700274311674944964260099855777900850414411148668745891803013012080578988355 - 29747581791420520002998677064044464843628989242716786790187113307113640750267382912893677117323378658100578993587149450230593365082491483095558823784613841491901596617677961342091121070368565730932414083095415317225111112392263848293811497216883491192040616980612272704812320531753467727227515618860777188158 + 22552662204700625331601203298838873827659028854150907657865925924190841722059691299656259469662681206323656529729329500391447562813249947235676071612275221850557289921954963039252500892789165021527594072596514737410484050950342084844779579872405804324038786310459244123268809017293239137977451670920611284426 - 84543334533496862705743460344619899573032906586846272242737295081478628647321285101823066878807279341316101957606232303318972457292824323045855191683127590162903677745177686977190669846104994535333610577934242934745418567844222430149147669169845639157900359314717162308380387171610890448087863203343340024791 + 41272666840963369922204811216978445734096900122917415014609407226888940039440065662356759947825297208044665988714389045729183912811116728825551621622771527205445868625079383552564746441651404808234966878973265508647793951916296086386651010086809703668627512096351976858419161363804800723889262053133677542841 - 47911667666154901710223287271874829734766927304030807544430049047857265618684947169634058636917113525214238528248583258734577607323899259066367551050918276397113044115837733918946613864772788911363291297855076164510132107974148330591190184397857636870451543134197584904979997582761852248919082299791919945898 + 88204033478712013712758718214542137651451436672743098923595209227874943215027388948829281460352354067693698975418096855656104770933201761845358389232449051447266316882720412835780732719018046184735086217996954138861310961052158725469435685047912229534091486340254615249208613202334710811056285177643118410233 - 37885794907753500251491029766676815264977204244430871930995793210575998064528462692155665937297138144894352421179205640913825006318348803768152402692900142762817150658418135121676691393795785626227431731712442969997835252967164856723918359243168998260008062269811654407718203365294778448504231209135970026694 + 80735835462427817032911065560315923562351665332174772901281564270489680073453991314460790666785489282713227466491296220178114961454675775293182775870114374086811233791188564058720578609328618140936212252967969162112524050310082891375253153007511624437353979686636618876635581810733933310291657585603372776037 - 20625436561810304775211555960169781008788082853705784358580953838676092645594729140088415528550028148059618545307763094121744452473937704509001864598441719749927824012890075778780245378087990123481865534069100733148142429394840049035924914331259052371281506974785634624695132041990582989364108140780850836730 + 62059224585731078012620191707486785902517689676280890560921593863737499839538848776309529090806710622972388640502356865097984419372546168318530805445868335537813410069238645003402965761857580018111953585397541537012633450848668390478465634928263024897163329912498163797876475136863853531097720746138099542756 - 74386516571293045757706043066690615809620462802852439792481698953429207430781390636065766148574114562635501660428215936201879487979117161993726473065528125476003148937401908087071309228379525195875430046333137867840014524766669461607551301719816378420766934885302452607982033979688506393105145094933734004960 + 64441854697018808319835317859841732878800278567470221140415803380121517352958687751691018748909776602304684672535775498775118243293909418326457470785142628701758802727846540130013380252500434735640826521559874657179396924761368670916735746461775133007857814169584080809741704133174832312924047911074543004929 - 35306968320505406083407772380456277368522078453827133139825086336472507841457294964400209448949487607845369488786644481533787230289263441635958565705127354152641502552265282073690051058275653138163439623042193323700884583130297859238534762075874806903301174626998678987699051499865242261510465051989526920030 + 63462924474840562943871961641976045405290022451810304237567370167141984493246188397813944536523440417664444593122707641924784825692920374103560106758252051508550181542707177638071458505277306314149581821135779285668437088661296383688823606345547397893316537562625385533257676590755493455692895766094761773323 - 1884999225482897572237564421130090289656233086240893201993364028100105672240179142581725503307555920273204513681580320436946945751671651153443819518094099067518387482399358924827812786039947983101232538341148211896647792476323220918603624231822767297300579162765181203123386502356173164264326028276942129603 + 64555776978534535402524992336099737364532491608923752832795011258215145174453930481644836964889393852561667776808660427000352277071745040043069296191982895418335627940109327085944794789936998836105476875269862467614438178488511378418711050512083317820580782342035127315672936935987855112139368531569111145252 - 78341386955961223250489679319708175050073089088472655683964234164857797117700480618569605379128227184391851252166677035650710437813032029201607906710287758023980336531197259152808056602011942420018825680506209317536821332901168483575622044081892289419520063225709446831585617721962139885225377159486369701792 + 77506702069524589565218696245755839282793750858391212625923149832384222098298976434470427714266481199699654192443307864120582842757614762371432321607064724384228086204632698967328750045625219184560720782393866221635655757079096626637069643908410320253892229292241193846918006623681384833102381672114199573165 - 49689988164287493563197918786973384523784357387876793865886267890900480653195765463642826187817725079976893972627393032609959511073131803423705507653502419518621367254383046363985398664857620936621214847142567648392670596320818470328732956892601948859024374212959744298850833190034238784650535193162984429643 + 49669218291459869452678494236782658074649597280327412077666704749017261114971150777386491925227806323447713753562562707297242051119833062565867373542575557144281623216586029703993226126666132389606638667609773110500218415250676099587979534384941092535262132504386173403852551668545499160628626152369186627411 - 44936013497806454554554173748538909592385779310477307948659627637286806469193394431411743926185524147230298218839717917962543469217234840968082203734471819464408355253226998763302929439881712337982167171440375435257827933204080021873483913263269586673638843984874539946598893835920134750131688747112169917827 + 75504814556740424694410225280962989266889896132277914489695717763745807375659614754922678410902305061083053768855666753033488098338943930897798975851100496823970360206371781358577091240024992601354754250338141347096894025406079422377438207571308831838381737889372121788946049816103016694181745539433128346595 - 66647907310506457754915785198675852143169880251112491900104078128247339233280928929531462812071725655515443608261051164578342424322706859749959495930508457760655779416549547548572870208904699380491448439991700834609905800265069555797804019280828376481624348057728634136429397006245254047209572462406843388600 + 100963343583013156009018402726491119441986767124697954941353118932500139680510940272040403962244323571265237376263074308297234009436921425802575893239758927327082776134695010164368957515944232338991866346619024888170284174847203783082306368973648410118841352620023553684937130162583232250607307386526299534553 - 22637104630695346642240207755881066027397961776778824883098565795957086794664337321232282943444358762557336443012619868446113469593999662659597429934761255730621039995210561941904080716596444484958024630293696882043404866295183072553637801978159274372891807937714682480187870992505855967085500413102968827449 + 45184477636010629858498588349655618743004019230934996843330469730782498576503886460592700845297101013726696066552626574371894642028178014038666974620050575107670149448422971818020315351517680757330069433619736670439955565587002829678451663527988140103007924034454303398786465296132594253167441372467428049463 - 51115491474878148039525016041306044497105843578193410600804468463259288533768911510035542080652660853337113297433380381533094917508170578592880326755925833247418440971871767279384905250300533354510405512895473912616515315411210886188023088953672589298920257229607397465211378659000790686053125717838175343223 + 23880944962510431888949228615472817658687532305757638563183366263154791540045512278385938219665731776114539177575169641312079612042408725638232673084852876785139674779430162139360585095507517569341182657334502262445601512337118628157591250827864194325479912185115491443546800350753197286097976924914266803238 - 74028879332482431892620465104135440173289444449472544403415315904192733557383915320914102910403380941780066403558842427834296864231256124672336841612905962919373282067221060023619313892578485691801951624989124487671452744208315262958802597017545926205447744709624329972633360027271879356039256722963178224967 + 58915247293719314691810588299571560138155427587115121095834440252752017395088138366581032639168819217259022605944989689284757096040372383095824349211802990395202745118305736305650018682633578442808598217088968734556195327487842390885157208969339318944933662127860904884521822432482145508875672849920779648646 - 7301012919357553953128710340236097067437787581050284801785210619458043890905149609801451219287138433439791559148718429741070155747574680643601513842329613639201105449656122073147941901000444802495845228345110034134108455237441222989557146032577568630943936566858002341344742264545256747440742097112301878673 + 2303838647387865546877306063484981625508799495493603858147217889097308246238049600955717343622176608285959861123640417855553958556977488068269478549424714292333907060130773022231526758938168180492849137690672242545926974640356097181752119707454638947343157145232447382380947605572281313508196400449165472578 - 21686771435549423825024333216057303339018544385902349797388961298140170666874417075686056012960507266141996233179937478171212834489460690554720538986569594455315530896444883684405488324317657204070017206509288878684600248885972839195746088691664718392846770577641341851643900456520832014993344222548991318129 + 70311500298737953483023947322535885569563681031000432040931525179479857901393765842248266678881288390670537421938244471134544867413322218078100160397521351873704195708641369220221262936712212211922711494877487524280522847991345231375661690643044168282182523296916168433369946830641908536390208628000153720088 - 13411478357241592010543522557079912226473249427698513740020288226267494994821012534824875579681480960976181949205672801095276279273987797039865063918102159113840492909587263471491674499573254522940485267065552610556427321701249048890058189915627661834545268499368847316853128710077809628295319354838437820119 + 1809978731548003316938342320591711985586874226021553632934409251059128585744729195750352502227742724479351115105256021454106563194032485316647748016505942811443235086389754755980876865091281428848133542890290023609261968522074401864426429167206541092817531517713204735471370502590159442474651121678224619407 - 68240463760736799323744963824153838439109869649075416624533162534537743930126594289484668558713856949393307148605577107246602253374294274677802101341196646740825740946589101765594849186216872066813019612842792739981767295673934511149245634177443618701813213538161292993852422592246396640318526465261885365734 + 86884141719871591738617151018137596191397008539240817823178595993567934268848550012614944276177020404901131653027895051002137066724852666667382192491760217550140586853839541712655541808659182629115035542317584019212989496183083013920039791886864293646067230378408469640379136383248993959029894964573033532925 - 76979175407254641038523583626611433693656306574667678822555399959700890731018606516625820641625154653063263213539078828381280005105730995282006982655877716034664784357572035141430303567984803369774310737730410274139627193094689622808134799416315999907078766515844665763972482315469295322212001139057891374837 + 61648984437188980099627408870298003211722853653807023751201202975729366897916580805784218259933950236651201935716068294435383667049381686848558013417100571953857837810586006654320961376403519893371029629118015430328298646886872715865775663629030465800403806017776697397679200529103083243503371001256869485688 - 89054729182347177034720589914956865112666516823858869436270390356175471261018065940356665033848221116799151760885038810985198197628239369180188865981154282525056342380357817824190131141104152074395648616812287023582557021444704584117996750359449749436883526344657330875479013506779530008994247482876883367297 + 21880861119427549366656468665584193932996456564185608730181881606675170308870386017705074536696773100649238549372255236560648656455361876955225253933736745285779542015956985328663794191835558413070289559152409395749965230609658218144089465929683697792564176280324785861757976377331541720101013368101955211181 - 4610129936428641947631845179170067495609690399485398248886012492481926854497313088424843217406952311973027069787860025561147605977250046912153042804766967930064628427690044243348898008190915687980850758078464319978404577867208938577728139893576153223533249965989600492985976436457209944206208046236557822907 + 90117882388497921492785887659411099676451762288635833189332520627200543919217757135937409953123466805830920801395678243297913077148038058022620084981274829363426589948200456079919067972732587350253349455903174156393240370791312312310467992618097741251958107175840806871272659513130460954529105555739243420021 - 89935854869193167667330135803473664352900183676049145750004318342254423267907604251750902273649121319840840945609678111750790578867925701254756877895480265388735746616375699162466461785607576456282766319196108005460402451651489391527399367072614734437326614785102338187191846120636735084291902371521187256360 + 41701045726210017561457946114863073587295907539455785035264901430975642979850812105751662060721252438559196102023049150312812701134414758984022480465316771042145393068779020793802312220371719926617590106177444976778662620786238091028196247126339142152673982793032566583823795109549856668006274319437502146998 - 35298099993376148480778401211027592019055599612002265812125482448455418705800318320170936219208669622593214461195197499659156388484483733158638137030469022368932683873355931750051420891371779460478934826870659730342015771940033945074932908859148546352875626644901943269006882161726507438544011603952412514432 + 100557201652681287974854882698035008465310420486018707382958763115444060533624572505427759309509562400432796628928474429962192917229008434378627598729885112011283708135084347811608007146480977546537806338383277356990186379447773300010922100694584337238674507913171151509543113621227033447691432298051238336511 - 4986847112453301751774842349887899395367672929321167526852686617755601910236150143011118586181685648873817046340393069846206104290788639157231101124502824563476785661104987522966129007582254094325126672614936254520544681948373491261023946435768449255457839061019677100609162840265489333962496622108753331978 + 85901903434589935961833861378599306909663689254770971859216831287891022695646764235000311009374158605067441067109593217207462956540619353669986131298879549715034035358801792390075262934138579693118364871126799709504220264601166306781207710612951829018144690881927229801534088431017580125091054870787521910734 - 2237734152976536820677702940850660069553159924318262786205327227369488348350760393931145414568154836147667171712659874577027709603838288320883915830063601141760697848336940703912715007623264884424701028194404399314281655325214066733379208573974877605305284795636168928270089917428826585385176621020982593287 + 102561723863666250940614820573598511609498424999067081990708073919922969576413858156661425634660846927822193419095433503448079318353549480213765506230113105292920599272778227762584680813535534957362123455656562856505355611221113714453508709378936547721650071626457225339887041823919396181378586465282897063565 - 79838239617831018111495657227594119594853734534757984435663548568414212005657453016780000722628746849477088484366100405095453082972986948316671347816662435248228361529846713784771047508078786805981471582898144511850334906395036727091038362998528980806105144604513020313556983602432426421667629592084373226000 + 16224401981382823634147834550074613060179755429265451736131128751325652349151777713869799468237606418196894726807566947329236685880870496895361791570979389062602774800188250757940786986187899201228597832550245131896476179118908150575040496457676835792598913537451329859712809737439567123662847147425634938570 - 24546720826339857067413464015531783732875562260045222956517686807595715759611980748671118904373610828717007769635582314747250854116640201591307809556644714226274874922024139130932032973305114872197889537926738501617035993674152020012882304912749795913263144916415878924438141273581191414151297189623969320013 + 95956795338567826676604819883837311712575441511126120071908525456879307742704359029622209423840453944202798444829985174661455202601178730798022297802594995245182896425876713222951636934632658668178193093471956916071039890533124350851712327598922963556300441599356087385444277513432303440372798636674105842493 - 56602043594837282884832954022384610906492439436206122443547648614537736094354130601374482431269848940987758986314224020588702288123304744079216765496049622402015800388942159801815862745436210656750241669282774684760572475376548660242361048892631062079613772495784665915352272189883634454791774230822722532753 + 88201494836319906634149952916625984924149898270601818252160140626053899307501150981319648158141123239202694589079841842912761672447543008880442245629457837736964294057005480620239330614128306040184773904750575115384014754251753295608141339399266910436577216768767377729829081561056309250326281684860596702580 - 47157693438563441726247012745736152323834792614385322581520516158595261097377263403386194458812553097550287951117239943246365926095811763702175659550112682207495098073878086184381188700324462592286000871092947840277871856244051759883858973475180408574138789028628072558439139915319968879864192874466104053049 + 15283076069653301784774016967428169904046299848457751711484600848111035976799528153569900839537397683080709091376672179951905031000438394896214137025208767466228792091361682615590136618800349550762401968282085018495694704975055000642066893426403850568693706845687638576586505206831780992512951062203061278480 - 6636252339002090091184684290976412942068336817324069212135168377459354963850876146816689674661820682654064428987485559323722552559737889780741689682310657561737351573820983327180854905004593966078710391480552845307360607432128568033027776028562229354896021836397160801589413660724313644001680925604929808412 + 89325590688158188540005633216316984415778272273764401653192770441998279725221892652763702159692110166284599093306471542719736586068453074317418623519245902025701648924212383574372979098306140753850723506643938739892770681799508406267195811278179147856925873071572055011322933676045741965210415039982736902101 - 35416341331711891880242858128972806282878404749188012033817073951989267037491803562474735702501409413123833607025918198700231663889154424931732819431229648859881223590417696029509755768576735704400982296284801014354029661756788634097784372246219127568408001473882439245630258739460860322248488790777183729012 + 98559923477135902705634486782728345257820704783546923821761267209565254901863430415814721815363168873229174662771382436719565523476921252209459663986562007842789344362793668578640408942646260646816724925827524252763698036006315051301207675246553916157527718396567762972776968082163178270593739854562031309540 - 37167834380053790123923188374698697198479158194250901001409914132001508627969342649210222495438358177677480983964050283018268039295088806921595857459330321149621646571441318990171583106342990782018749742614568882984845263398107836907521793913957688737881860203130370891407169320777446257893105057105241203323 + 66380479545354075709419804418422215613641532549207955431063813139408072963706939254089038750038020236170865500385318557883907466737180382023944619670170314946156655222269476284502734972756603633112122093456694149901818442917339674334621378181955804477289321812449895129639731339047345536045466934512385062719 - 82057300548144781616070056574518942090725335879008853971677828205338947562172280938130490249859890712474510830974540044317649325117910164106914439446093901253602115668906684924381347968434330016518892855156798008752044142990893222016506648767953414683086355403333377944974249301128735348621032663483447575179 + 27363000451431841520196317372409554249683058810297829197266234387955220770785069117995189665990398457324996406277030532932145413257778324188450843556263869422461943246979498883688101190063720791321562325790349514643652128223951776389054096772254554571620974815686371094579648785241159847267230659400607338764 - 65751079555713794318571976841570445609241424121785388763923734187000278814513325207072307196560373420839985924092200855765307838440411432432985429898072017785852662664077101024304833431850114841099921466531385011170060138268697734563375982395602778980213224801147135394633741559074589879368626151594793756521 + 53280888075994323228610215652512875513017863691462789044873730166245625040323097964795082144964701541706196896259573817192265295292661985688991112244848399110597570105925659702180670483667569431809591954104547870851317432440207581230998968891394334543636971749596789518625281935084909153253476142224353027583 - 70945202997225035299918628106912871881814438410062917413057293182566858749555593876648800063051312295847991127426106638580648851617616489188345319453267139851072617840918878759332818624427863841776421267191974003553122988238148285110598274485588690371566148481074146818030132979691862472924379220813721397866 + 80915390523388467661772066383419914668924144374440330723032913974790992934379760611591659860347881424201087209698602312669010334884659915609992058173167154080486999229678841878078463764269398599054361857886556046816271761755038630598520527164158800965020821629699414156569376993585302634185757559011335318482 - 33507082034533254737985537181415678280091077185929938077007919912111086750411500871558333849349074749512079674834377456534054423186485378282200443398790410203476202124468334572219344098859694601243387539875984454260743938291853140345894951203976941748343373142443465530907238750261811524778439800036939853022 + 10962827562112160963474218773365622531941438833580162173466259803028077798428723611714207773092097973761164313461326150396502781050435249423096438421097690202402014179663596472324380963741417568726660377659341789780323586853548801960937425741357180307518137189358372653879686390780606631886175710930681686770 - 3974027388794723404927195953013801007419786505438462514403485233271863742832101976720829819907495616979259444260822967708915236075523572677933227777872019224071566499695028453272505525383825867691816080321714899195606991073387219935044692905477481256650814274406528220774625996252183117642924488613232253935 + 28461815955281498743218825325110955273548033857489191952454179437152549349774966901131495763321770187742302045349003411150392926308496777730208737172449104480779052475987558139695655969208038438719883268745878449685037612069358048731606605380456118616775482857331568128119623480649011891232991265831386197697 - 41365418348502711479286553412915652168802727113663049937535526900731274876784053912351256150991920901282542327045083043822407323795412924439145089003021889342031898479073928915760045284136880684343577387976965754926892282361007253120383649857642125357927734776881590459415518000350873436783645350660917633203 + 100921713936241551930892267675147852335174519729676071699817515852085614467424559437487323142198728691049346317017772192154793843457694289169866151197205303799352304280389229186334954084711142967614017765828067387497113436537105389228553530214209782577929352646829052548265711353629470034707174443601161608785 - 43301913562203945761441398743180143306285036018080286465383295902144305093742029374056052043755396629301953353752678533621072649313771208462198675458015359616634654288505363812970491194519161925118309900636775996017197515039186504444426935458865813202526943453719339635074308015797013753750100113260641074686 + 43587572621059571325868952279591757039982755620438417513773850332897125203224919602428275145281220777096460043000631060333157414701519361452132622330702817064483155524660934495052697453252369112980647886211304441756496970913943481920342946166011932747363656192803043069408225193778570421098196041636388573527 - 41613369858933000631169523756372138926368195215556749143399224080465355535367711884089634824768097887836370719130851398780480111884395360461112253660713508043172920031087272438651955160556949187166091913376304469154560022054066755090254693268648737705924964290959343140392672512609463888269125393007989800373 + 32030627603528606180116615437450078819127958732611155642680851144542899728000261899050428490727723554932443559773562099257905335597836684232905427710796794246304687577175878848958261127747123882148129141454850698344327383542981390396201139676529633902846334222115356608459825201975447880925600700181489043000 - 57505008631954636482468540150336448221991611946594279371836319935372941709790302873526889901388060912033506328036040889389737599560075135920150884461919080969244210203910830955029183852979034531599613848710219124632408772428641672594736760827484674973310380050160122369166658420212899958099503326824997765787 + 76012504278124747652748417888739114718511848202315542755368078078143985707373047022882465213276505874967038451787877502738801296609007408604375295830056228148116617510320891947041418455607525249264852054759296281510630732382466172265160416349443918839621872600715510099631113667424825591286352347324281105653 - 87967125707398662843618366253788643358160493796491872345793093161839338586777651917031666354910869785291781287539404707887823827963002061503598177042856533291289486124059376317618113101628333876627847726649602460531141770556556555691240759983084276039644790843644254888705408692815194353606240812162072792314 + 23649445792532050923364279282672032394818237733073047421703416797966477451562245388715038534027857280716567535366412788171891728501473711308310658022966070881311951754678562111600078890320477523334959181334252222281460868534150813394157933054851126825263868013891301010398341659202200463094739760691639424037 - 12934258731983518342079077764151382286342619824469775779497601471670693131822703718700827386834654563147415910821735284103830446506697785077483723354754791852639483071179903368519244512106043690634211107125974713801053181986379474782432586300867257762901911273665146944030367883221698397348796607546765643877 + 72621140529843633640626290770900648884854519768782375148880838515507293228621161639539007603724573804057685592223371616076446268986825285922189919568352175379928496235736621558360089814389495959602441632011241902335036398588546603078032098571025461005094806421292807576750263939064262485210327242767578983406 - 54749147993335697690948101653357267938816534888718558578906795944045228708732514581463347572261271717387459481015411976075475075036116103924581250735455005704173071220030443694901743173386594894527659376826645590384282709568750529407111920949664138994939696678382638607040920212670405567757021955635434710925 + 72072288381404409791502135940351988837326121811094511769953163089295975737974474710779762436942558978445975587046515159743201182493575615213561056492715011149108983569848539964511244582408323582030795830433382841236544119008665818136297639649677911477910147056407104516064911398440354105309878123534969489521 - 85233226430309512170537512806875106795811866775337772063338348390681583228592545759571762595692143344858092267415680647625424769101508968574649470267239271113358412108309253719843445448718198879702355885659562533709753136379965876138029673662435541664329280823499363043881498304164148223128456160492535609670 + 2448383696052985069888178726642085224174172661629867101109693195843503599112533302131860008218660606937763080678805525000526725863236959441758260414603836081030848795413178306571505981588624566823540884178131125354997942651341199859500603301537784431346287368974411174873005799313851539303083000721992379800 - 29836320932457812243243638894677484702913809836325326521813612007039535593813704318120368569748461640386697202018640332120245363377253499615315991505207129152740252447091664822816342365905151489212190952345492768297019024068088929376493315558766753079939898792177386736786994163838862253965658917086668658927 + 64843401110422182674018580620690271940001275175475698796912328411749399965959962677714559732499804750003471500239033673715455581668056561318905050338008933259686360146924686047178175696646295496683580169208976838791018292890292183381797156476072900531603650837102343619245798205478364211055769463863155445568 - 38621146681806476741183561488727505975427569206429459916917328412819508506098846561102893785525756649724778903476614723431934506933789023917068421153250244685319986586181385257936884448425857063257299455979531608249523111928610221708454719466410231083990376708694191348765923555114639533304353750684103429149 + 62427030914691326440234737508486961598345602985080137474188406542693989914547631792692044117664716142062730085013696331990401203831923497499196820320516062373409613682481571987517673426662349997676748726909469038056336657764373310281020498539038474116264450926744739719178125785835781809306932877624312166556 - 38943438359674729466096686174127785207566766291432117267309355458117183171356736867077802922382491372795214347417425634553485409809207000744991244832355484522281595386568880774318702199739879771412845515092375635482842623635798563673441576677901006255908975143387876834733572302697451243822968788802280685244 + 104449937390239905041956248385082879953619728551782042804475014981227030884573904152564869118012164542759235215592697431300876460544941626281557394423074648641827887126053189481823836620211545596089725795469927840222916177709523243573750849382404447313429144878761925479117787728460276083315263369583785943398 - 28097164592935296970423493412518472390536945055481475073772037083436927772296713740520016386928632199727260101237372111792093520266815643960746573680506674373590262099367814105048557020734672735530176074863078991892591815778611781903551129045395085555476978943229565774851484923567889169346492062356596692984 + 22172945319711421566831509513573645183025712084506945230685345462355648023414342834712709711184626997451038157184792865214356959708430464649774973161717401668987503653627216295802431429377933429702648712217954866912889664827333264310435935733687708493500192978616991880005677731485521216103228300002043629869 - 74738610638234508063915387595110098512910204966692229442045807701573328053836988482439234931838796607729044865179664464754182781886711832452649041282668682661096390281264102771529910393628504870128077315956229875602183319193144068276527472090192720546744970136240627378463535772851285656687084001574735539737 + 74716096684250795254416531180605853721199814107027493261692711709574287278813992118874008746100313479895042214517910473189288698550644303408165486876185474758562679484078416830473388397511273995508034753996724551431999512966708451913516798221704483540149545759545640644159068713580904782580815807541509692912 - 26060104778048809166026151081233882431378408294812290202737377067982751932794377624496912754472054880297775934553045844385286341315945443625426702142791781594577542031901908236489765858244185413769913397917867313391748890151226709794833953659510742510535083993930138196701665330302748804947856351561697550715 + 82476638528884756046016974297038791770871082474318349769619897035749406552972540222350929509999755755442072829139354971253679120497478628274481331632103983805963426097162386658056414347391638994272348546192576710579133780442168629718979334883591158348937363770790220445008466480207221837708867844088250137916 - 1530634056672723630819340179461405690068870013211005489872264583282508521676633761011739098009815624849712995734387000654879077649511161739296255662634778383429966521859014309403725137158877777380383772686922307682104234359876033583267379595410805117911512752969057110204876276877186108969040603361410551490 + 35774832936477951631993573616964116285745837845810347423507740252541408834794652752475456490387500386327506208019819903138473377812302748283622501946622494440024586228147963861588092568816303091703468508066949043592229451534498241089962612527474280471269437406247021063265736127430124665777889729248066810478 - 67954828845652354762187817980342552155381111542609123827508260889976020801439647599717695248259119461997619358161673011392695713764001027213689948492095509707173481073985569130893345530263298020291693575178760937876236898372020163465542837096147848186132425626985751161432368847277676773653814247033209901710 + 34207124743401385141972682986672600060362199148640123790086852447003473764384759490114444393443203235094233232612980108431912040333656900528519049181979198056221931583915507615764729429870278763743149336243286746945293932570992357082276353676896454676695235919538754165914788905719834136403332615074960540354 - 75350151269443513886589437286677626006193065368828306526230010374220074160101954755425391731875642783094295852668346986993504366922139087964199130735799452472592397229889561822437358062067240424145249366109102525643673188537728934036582928907399484869418316023787456758121703954937745229438054016316243348527 + 8189542646547440556705795257020559197961033057560251945273002257163812202430167941154406183411765377048978496984409920728739411494364124184492579868011958953464288757342990996733996585617609600526222537351359618937289835106968515835701459204102557693816722595550693156459518254422790885062493860506173848167 - 42621109383335925083585314206929399771774329749183077666320435811545608172607317903510050090410177945423999112499443347356733897279681288849507093987663675718860957588323815937365861879440611600730897882120981753323394278548891196676088023120042818922652569903933607893372507226170280454813781694937418923167 + 82647839311221976244630122366738040512600972485695822985282271991342251295037736107697833146773247411336270942617338740024640081101377629864249662494956196272271714592138772735472710214732662386496097688507653445623609608861675595563376337480770937763695461433271116603796239799647965141797385666672052095887 - 52895786357378485541919272346996173661120038211115548423124874785993919930329134010554276127689531594296094895753289317749886263376049552307150718365580204226042796263843822032823874040817985730365899393652392654489945207745488522037035869390621287454987934241103272261105907075296936982328224594471712471932 + 43752382685911339405306324010421631712118540281260153155004050531231664026651902798899172569221379237166614630995608158881468562569257583552240414543844403128825844498283958571948942654807709103824301438223253127666090961062337031863890091535950470833063573099347673728961727908409269987980556287180364825585 - 20532901416283026501064054081260572495190364750130850356412042289819255938181539329171332914368062642067620308395107441076223637903340853691586343000499258275583098296722409830869026594669630421927790121862085286066919075941093385510121037328307715448819117944885369259996392494120877479887190294184844400572 + 31058117179367603194306350409854729694270906675673060923927497187383950510123194149506931136756446561741472934508626433371342273639509157077593186756879021549158362125255394621239355795393632775361102160828308365424808436501359502114434257120911814618210622644082970332605943998419184578690430677964892109001 - 31494710558473442490694320149411909424239616939102006553422872934014122444288839724781153202496896091252272796193605142462773319338773787965515385344580923000244860792240955009304171262104150222118656889625603460645088618540512362232906337503416406515846852966077390519576920997817730871341589261034218781656 + 86651410315341953743783340170610048446453464292646708604827028968908731337189037228595344630606198271125984525416296438870283410578996453072759978290179036912488140223001397416404096504294354077350367893267756028596758971206884230687932641869699229347906276208398886713721159774736091122577671230818727468808 - 41926765425778329729722314162018660825459140332326003983125522596347767832514622225058168235685374288385769624197680706270556730785945641331522752440825405966895077668273870963387629366335938390396009749155123217554333458361936248049052966162002964506302880342732116713719883164737965315437305979290851892395 + 80359548911660979924529243901957348492670140001574204412296311189176701398109377926401599230513999877202677056611747772130832055341203985370721576562878040363891143311711994655181085738416719902727909850605960037575426176339441124033623122570610923190191568007505753201639993351313334467275375059366653493303 - 6044503068128773445497595645116433053444696025418137721407477218138586026547837656883853586163867592026267865495297259273220226751556896226303200898744387128841159591221365513290747040622855461726704438506563956166617639103570165355049489119273318776397447348290488266986408859826096885350048661941596755266 + 72227061066929838272419507193784245715004748553187712852683469862061377245151511144808095916935743676992270061187054625971023590040869977128885226058919700158765759417921617139881769852316569758752731449217501101772654276108654871698333098789001852872746765017415414045779273650468139706263237111529554739776 - 76900793597342953999728414341461923387343974050615549741697804885744412005365929429054465191747298710105553764070348860823177614843529071646160604422252380234877064288227541201004052452676150900543179568423105454676931008318859612190932497818295302106535346071578907225642137869075200867113196578011095086961 + 6126476309686184999663984654281359503977949890855392446283254651349474924873392992022108949956496913688414478120883598739272419078091576440305966607639853276892131861956905893590177148997151098611442148394413017774342030040722086506874951958859353574503763281392210942510532953236849824516744793641014276450 - 67613153525768981304130643393645357488695674850174766132423373091535701707979152650165458454055254566924798803191451583328211580319978700215837287098560157596816840190902614784088429120413013053501097331791742369857855206531172302532892817169129779477179383465757128089182514843351708005793101836016888659633 + 71417986885118608010224949994892523190799461009087862176172740435976244278543084214426595554210893737918810351005627780902212424124140745559267444834771635359028584675950449513909654369038718788314587989246528496568763207767705935178414201658820187300018017794510458098244010824808802534151270968205680389757 - 56211073964267542639988784995932946568802766872795774222488413253361869205382729842479668841443757560463932696806569054299327814451522947436251507701989912903484348283542611706364611109224336671298061347588849380364845100855016627228554099384210108452527987005725945431919936893350868314516780035671214457807 + 72001549037617196224151581031886015165025744223078136647202054780481278381507839306371169744780237480538878016707512970656214548568170854430630822868508267750571663379204172232836924444930081076332184687173471323007547593340407582721166699210246737317295245757942792700826067296893096381482731932686729782266 - 37134204640651793207073586480861203960347443741455784240166364242186371731073425702787819072508076624580588430838520567116002790802812218443980234317803852517296153870158456523074783128158492804859160285019255644379810882396746148921261515341803226531345445416971751505548796564498399134917334108838289279623 + 16617150228000093393615144314043577127385224213230309095374535040100632913576118170115088869370836621822848247121630109650521438303238489979826051354786595308389241089155428575394597239833151712837061251071190662892996404099564771864490565819197929815251398352498105015847100533296671925712373989723714722101 - 73326494272219491424566825787091807230946070029223981677710711673402786344745392705946468197668936690453895692979413009663965109800070315777944668540766082596335097206345469075704520002198172766409680969970737472571688858250073927504876125058542491339218647590603569151645213324622672850337466403277767671352 + 77337615440112122146613507998928075862410375520799825132665356272800344532664507992940210564526196150728066185935476960096609353921972576599563622007783103268693585602970618609837188489113732627309258683167343941633273625688137113756231184681728319122588588684282358042152447200213993929289819279511226894047 - 4937683177851101307840808157152077680605128540899255894475428319161503997618618029434987355774810990579758799648453950447349885943603196043059293995845386028937331464828270183532289266846429436956969572871615577065809883726333843481929345432047407900103714765927232259778758404180997712723209443527480086103 + 88360651602798461664451823264451502584161224952150517646910622765375572667325612130522966425352872200293972296341887444920614299939192663926730560833921657447485747114569723508411863257195742802944445250223577939146275152889880011522447064433150102589217294828941692316373481221129238358321135905072487360182 - 40271108806099535849925417099033023092711223277403584760222422038082933919285659638798756338869106335276795761174215390848002531260922366952446465941751912134232273308083103241373024589999544369841457084755104833692370116370472333540867117446783691106255624502787847719699157011144492746112850587730217307981 + 60141987071306562593378480776400825645789595344080200867001998232388392708141555767713996501141303623054111905043121232622865246425599388230706321536755578302167538641840629641841302673886699982304922721635055234082281051679313996000736215284980382210353057063750066916423707527276444777981744341402148660186 - 74084342469953345451012724940378904637503820437764668592288398573249729504521875254944765434820809116577115699882301457649062603527747485910427801346497327200656311346934575358912505962186616744800735599789741511594504711499807935920201130710809275856969811508389700191326451851944591225172012025025534613336 + 37589850525050062121961727750479937666227401293916016543954271208722772690509955880646792576410200066570788921713889677066777512213771067138711875638896847124566790994256943329336585864628902468570736921423098381360911828483715263544493043583718787136155404566352910293450826205884205065211745034397779993662 - 59137018014525291049558050145725541003337481716491010923206879371332967232202597987616565120811636719456484497084055516851740945131474911286292068378802422092030783876614399796800711823726374033099574827464795835721930915117588879837794115470633648881177427433899945499907153213345866123028891274238798549027 + 25053508284170197628182501543585516308219319729073852283156162620186944095846083372918463104510162459916857326772777365174304537460696552108874012904132809529118176361432869722311281685466586662696820504085161152965631782991570483605657166699509369638391236877200520587842337705451321656377598658335721597736 - 26793837573414845254375019486133127074798579470155408911596802049956830663984972761267127220002849218043485545261199169834507509064236162431489893958964731893822904907300432694075626100842936612473131266267443374138269723817280249414664263185920591170984072138226773164609576688648456712314017352235750855661 + 68404308888717242030271960034238016866411373371662845271431285172863212716976272985250308361056593459529702057605516629115512847218360268494781707243769618671868507475415553759578662047725878987687180306274193194412144276172362095192323945248066366648948502770595868134841934918172125364793679785115568617998 - 59911268817279797783320671631685837105097101760443881587675913429092825491925351921319742231113703569454405043094031459373173983825598292423587032718212052641078225297009032173650351753795247038892321247367374944370425326184915186003574244252065584471470635021244841901439148840766598167631471193951844700758 + 68187386144095532573516912487401960416479612744867308756602514065013705312494616628018522854713845046466075512878601769721236770764510786070666483909634324717453153901054543240053342237056579654306897279256767854598173949102411917590196750133731955128091331925442336166114281104515774421634219384587322635513 - 34474968603448549116042761067750463409562947804836127128870520924018188651089667418803628412303701484911981942861691006773954836807636279205683756693224561152030239271457985989360966060322986105096937800180648146129989202603936431274718275573598229253808829064290190081734092694157750994369590604865132593387 + 59727074180178449690320950808074473585647346654820166828534604226550422608698213372023645795313987100354890899952932915034991051558256860816867064633610719066594765171749962237683430008676357039708215960903058529540124905969455416611581120513980106393768878286533703559178033478761900880533645879371916888669 - 13473700488764573614051042122335567967798580907643205584215247192172341710880546400545044249539042732502480228374347018699604310894187715378901099283981825871176490132446765234869974851346724635210980824617849056489279635898161378462829892099218035398018594042373671323348341516762719361977441260709550165695 + 47347936492407274438408159784122736305656255782743560229488354565451260694551853307997944912976257016014570523310078369424404874374776843628877897406985685662611430050823658419820608903588567356666183893114434863702214565015863789649954991341269313431118759420898337724759186115709956761305076367549378786978 - 15944884482463699220951608264647540353687767819668838265835200434738498815959033509239147412742221837260883424375196899218400978833552819429201592339692683770297701183337320761533325363971715970249901302908667188290958868720091401974640668107729787509825451103747960990095484982142125339999858097114718799492 + 40517855350974573183537700752711671781402816349552857401926886206804661607160429279821161282309449433887130776671740441021526482554776544783903335236897930388431560347398274780855549318050085214735010969285798812145975603992798012129099339796546771090758842839739477067501635420296219892892271657016528808078 - 64485986141412405356388856703134107932276884332345157114362867867252372835860116465907442872340493439506093317570119686461453045202000448890744235562597622962485277972246131351505171914762974242547669338414146874526006782629922310597115620391136603205854272914701500143942167103011972879794252909392460941646 + 57989927146584031630708503943214946475152152272966943419902700478950633002846762044012710781429688959510917301590799125490819463598353976716991568604893781320010736123689614378664947319005423121164619066487243519639981036097835824401509716829143626937907326025378387001041417848201419150733553224550867927011 - 3672132956913844508348435163138548343607364063133899065410547678920027973576802629927734653258122313983665507792467573147906051135806910024469080267791072458195037387604854891360729045377976314595186023478571887176580610551884877604902581281185874515672316886790449905659028103411774818042624765312808086274 + 9762388368689813981050796144792980889206426465495158396021922564476678469415058731363136922536261636106357448580334874329182335088176981576202013422049790064522427785959790875812208459862894279113527815920790321915685350722511346107366857640427623830832465080262281389676317363320348755800907755083408200574 - 61845990419173294890078917415270038206793308480037788733889918665295022561259111511503803143625569918667790893191416631177062800660699872866404826599225528512535230801848686352968217359739374746893962339881491823944882235838443838330749407682487335631198418650329893110702956197812129584947802482848348616331 + 11816104274130696682959798609024462702761762270813551095920831334537242080759617707682398954341834787890603448619399037291487380296733564029662740102188850752762541451952939286488472144957374578404010862718651173363610287236627439904016788551901244385240913747302974429449890346537835257729832190678424062020 - 9383292149115220546643519607687350158374017165096233239425286358020465386226143613722654505136424305741745100111776040914104815213652664344811432213309451053201529825560984208906841270088353727901807540707618487959349918529010095694607752158348214845627568877408444886677944306162175241612055827468993751308 + 70290022776875694201220666017107023369027986611827857302448213010034071015586170090816082569625178368007373312952537282267351897962774614884910062972821809000238439492186678120187144450549562700350572875203942562959079971163135475470631159224674889704261174356249476639601550641860213251642590309061032068418 - 52273695898130591199235217725213704967712987851877126641346401470989887947110175711973341534587588037139282543279095605326716246736566120276840887961270224846429022315488578905657843451014603064779473958482276536926804543290040059471034363795596437360851298687637295404027751868795672578687618908970197726891 + 77426616216856589594324990243513357837195063837282053899191832375260950489920396062216823808633453215926286082640248516681928943726333806861782594239767919388118179848246385540098001690518095804381338390020485063389243219902112595648447128256072871451061948301472386212522713454026327498282134492646028821428 - 9272412016025909850389232741994228629344590320776974431897730063163292419832544116436253163332494297532110253023313915686472298200840729210538148982788547788364909868081268332855717072718130485198693436286098522664147702664643471246526117835409042913887026425195791523378216888615389255317548996468137396411 + 74445347825637637389037424412618888556313489369396535742606104944339931989484439694492868869072186015699774750129267875111027507768317495282127985541876915199983337885127802075331521161167117421853966711647134952796715377756620257395044440199800859365638199468887952599237958363206552641455588976010358463321 - 81186995081322147895755920109493089920761977998362666939033027518103356662857648334715583159343543837260827676172415275236164326627569369331059791941174370784345826778767218247760533090622580018937101408202993568900774562478958118676081938409941983119342723365683144176209761315735574923237224986542559008709 + 23223422422255257469121077590120120873532879212952850980467654122572234744882183385042012211547154142570890766822630619065936197548937932355742711560024592875767767464861142438054678521118583927280090952863099469625297243117008813459741405210986443308005350117000023146685855595353130083499403279516778832038 - 14696352187957105097045488588326987617370192095582873083046198416029118344199611289782876318854062962971523121084493042548139416725104958194085774359286337741325039069005726443161338289937500965901480595850422495657556812252294638977201590185406126346932261126345838874541515314225805272658689660398072638419 + 44459547764886357410052104648842451214841576244402216958601503379150547220069775009821093311589977174318005886222723678843492044854479176560614540649086645476599307895790702261690059785133199530861035527875294594950586457273465092927937362190800359367491985169536555966953959310324445063614481960658681569413 - 14323762664213321972038102266561957095577256791961312415025214077538062031452260541119413459456341450991196249798673357173432223830287832922446825653889891297007236113042522989919013216201567563569333547406033783918990258504508834795119418346347217892993052323096084938597165759166285219868499744005772878964 + 68727478628557767500972883459339525144321412388655117979364542191330810116552582863588095296029655132646040198810676040463985276550228426078661085554199016056802220891739365441612189482476824859328278808101805858580007658893210425322101594368675397171278104004746307060640715453117087487400809827511055084583 - 50046080222831739976231859789352318054093522827687848118687752197544436003128547548010444462997945849796757079785488208650787073931054534371432257560826499829303058097469479435623332012195194528467475159695250155248802759517988562592491672709119899069228736503022812319107648313755919254457985840028798626395 + 2222579515358408592260524541816248788477143690333750183978928368707383178342022154700445083730530295697023895369171282117421530210568761025884866523413806380339927743185746226817766247099835086394232253794109358383181849745262774830551995137926196205117606445799245323114371445475232552363014354723952480818 - 8998524567290367709116880254950668456703967202997083854334365419614180489505012907541786259130154540975145655745048415548827818950612090748835688771971211911417008043898817147650781871293994809038396993990558716584081447811223301352570157070938069689308216783909855660905532482973485222102574103177671414937 + 103986934234967873416236176641719034197386382033190763872781539741296353440974202877131968666880166297327634596565487850115153174845225815520643851271306044700116278556794461313566608402995845424407289028894958290416189426073379198950859198558800076083267022305576086341291884016740209907964871796468562968587 - 55582386068169967856873553469783365684066852900243070985894384050395798969600170532438857166913877547855674094167354883129206002033394719110632208565695617479939120402661237068603655908656927863951892498630936507300650674387271577666724326554647357998247603054489461737442914958846515141740320654183626468365 + 41196483639948512885091430956766950157363509174513817432417070440145966871739473605801347324413663385363150643332507647284249320915189048412474203393646104302995892142588505203489414858168453737510329553974662427272159559453112629806247149886304090552847117767127502354558377995525284200920614185038627898865 - 79684281093515493698429167731495682138736148013830810494710833495278571536583321373668795565014217826663239805580844841731810727803060230608667415452216253944110850738242772003426311003892182395142138393705540389229211310298154599993571876564607780536705583917952239566255412085494395857991269099763145841387 + 17175835168087480968138527864126623017069576366220562874099199474389360787895590632481925130923588385904822966610661452614275945351545607801718728614798802140964317824891473112161490444800476693819774684140165739781924614035008964832151159632290223756410407217698225332259039958643645913940894005906604696125 - 78615364859185492944765418314875360764193443772537740817505071058707607734493303786196100190581052529503859193481093634598406936032487253024146255633741228380205388487959482463569621239488701827877683042374026390140380862788656697935005905513573918719840395970717345021560919633677949865992612916173586861280 + 19040106358694195358507022262120414518232932242187653053259848574849452357941923092583254295205593643097743229825370357979361241325374382698384290703326119163148294188278658361174233904717604147857719669835345021345389307140233586569341929874116656063480794895608244151707415092384889974084058726338673425674 - 40805840284474886424598785243371670847124528007684921258334540315840745918080539891968693725061919073443659117514709750251111669821654487738673244140554737283638581401708692898563593927828905286091506614901645381226910043575975933906505115667569577730751538327771976690177038303563490248097786964879027698342 + 60386558254454699741579996919456247241424589284993319131860875591729644660614318044884827869054332662322248149325089979731116140653080885439331866039909539918673191750356396150260776436036494367439323879370972943932286211226610864423006898879850361416035138826946705490240611280428329840587085057182389522156 - 88839691903572810434158256557592960255388502420051000243122597398399315756229615014311232900111252312586776282110648744713459092095505400952566952603025703801456877431474578035059166434475383900668946716027049697922884445861289981823344813544908694915972075787674898013110433081757168925277926526488287596033 + 32865497814370101842223496448366651159792255053465797735073523004903053744898291594222306788650886338314137417243855671574764312103766599256706834976972589280596451392592038122685829222213595072118998385942281919626074834788604355835013137643465037107774755425556443917442298615435467648050239135025750272430 - 38423389330723047732224251879209677835232294295487418359314068369909620294849534705333316020396531480502132958370807068050765816097537576604479093065229806815512129648842765634348380975787513613974717921736105057385374434563636449422707380484177884597375252089256867181842444192478554016528433734948654191433 + 61565731493684314767729954903539242423645274986074803878278297112446189404391839433031718610084767354754474260774660558621384909611352397524699653790044247514673194657098158709295899375761094740447896194641763336571676718616409730431923248253958809695837409104052469943498153221774427660840011125015699006789 - 36535165994418387420337759648528336220103482962899429033050076623193994733020797057486698502540012013647126679599832597359256336624139697863199645964306807850084191617096980826685461442245085311926843085601089974781298962140195301352972344289508989723058755910530349498981540941195249310218316466650529022941 + 32043466181180907162902088001742733724785052851705369933527395098946387896327931218357383350821933940005969982773063469882610865465175518584046774358431900486731121154668504402620470602543261451405001676187417339472389926982238835941648375601355978925846385675817173625841633584902798443329699518289402031061 - 81956456544671423686425193877709171993585730604141810220608461833676592042941662643508501839074618940449874464651069153923320050906378072035380810284061816183274593150479173356723854020977528593609266225947700828423830139529660436443525714862948874721706193487418284909676311193434690659744927315045710323968 + 92888446140198267769906402095678086848063400740869293924325552009686155958086981126945482742252440798229071070262992136904193866662819695781251798970543236410808435490171898853753641613840296656134038064463557785912850874469602306728302343110918630978740739410289897448968653871286980609858749275926060595354 - 19489606181140265265832415115603523446955890425289323841800073270414424997314352042197039024895669128809045861138417361166485032673455505893837658254331909416082389158806645758935599550525027837277295750127535788986568353730284042130878212395540375338184183122846930099192943385277017290975676696944163619548 + 2617222465855904392390879600917010397463816020654395483447287213259561030631555304443551928671295872171082287118750007379951494830643044409807885337541547719523546740686260364649403873075375366498090638916420540037119545901630535750703638746751139414692228255447706471046886834398866489304640723141805751513 - 4903564443099059777724461128156242159019228373838497350008422239466694870994991160441456580203981744885151624306576841447842242492972365234542793413391851517563341295926325811219969996212445303147293476687157743981240050412807863241270993202387069699858007742831772690890218038974497852044640413285230761669 + 40471744654500900404369724916901869160245141273240758078397951115906232453331481565221077234212076572012100544944716611577634101922469673058372317911495975724281891201678897772166167615522513993383857622648563927244253607131125845161153474350941306087249742249765451000383939568587601332009063129946160278055 - 32248719608568437425090789979816350271318106038267620039027657973617660830744293437843381441098218929110214329180747925250429216863954111358989963462006692001614211231595326591622424208519789598347240977511267737114825716980955521648463927354778384197090419976491918773093264560551758514182542676817738872619 + 105008054984787030040523532844546553173813991734345231801894709640481489503020519984342808431888064399888513042079021934555563274305364779109002128184374879477007435882126156880512852165053806243482454998775413891463677994479171552306022022570321764913613930389986169257720925540984788382964171267100668007902 - 31210409644450554673549038701361822778690089688707924959029150648390366516575158591142023391171714321686664312529948249538246802592123018251527300358451168230619223490336232284173472267430918446208063988131290000323471122715324355483709233403641105279393676208200657798577936930057423385322096274196823448445 + 9418358652300445929271668131393580716683692078073596052504395016827743482756270096691691564348367295557680349729151435054578981168872290973266464199503880616940935004441370749695822650449341061537163343279574128091004678116563572427145316828533968222170077050945573010421692356821282065979121702884448511253 - 27475129026722098759686823744400885973808522505325713302817178063004279498973243427740445296735324854733566782692328174024409089408809040392975346038422344979379740021027926532781489700923601365764738129383498553819174659885064135016765807621739422027609174169311270092115393678250823531437706345618551642700 + 15735697500309250052064972401459617903800748810254366979363194920651635348642740743103217791211968976338568090462470064002826362420385059804476790534176768631443901024214750102430801231012427954981954172935176145785304346090085726377070055089406206589493459244459577969012988592243036979823409219416435781149 - 61132687150108660036171118602525205388784730007722677642365944047674098180251562798897996148812109414813724793605868812635493674482151877044530871986260233004497629792499694890778729799675099251290572267347181106471965962107571760151380645930471569667131326966389175357083921539250576660661603688179514090681 + 3301243293241065549533125347289643944462451422133834998285471821243905225563519019857599111048380628320756164596418584065591527848815676690388281975522231690596447579208153286520442287605944693756753636336292784344965758707246784143464719160757693695622567215977410947411029870290770605707701027774021892854 - 9450625730713259004298654276453830156868645876928891790939403535778863935761377274424897371469150722628483216664346073533195246222891602044324429948264059904992499370890399911101400722473706909633905605036161666030276611041221499534587211523747866772136658889470452812966205265868412212663614990077519243456 + 56356527322412359460774602378633786164840710408012310216497693059755575364512958670915654125519692942956713081565108021102692186545447366925135707936548190523346743822333508701219918955559465493651221587339880392487970171426085380899712364637039552015806957766754487319035859441956778158532693001137189400551 - 64276964265585864814739091961396534304829352349237679502524544372759641980793525230974086611670259254428783375372414840313302227941331019589845266833799098823369888683715750879249243064296491096432184328073711711419810412669815800127477930858446574458375765454419102559410755406364381602711007555295941596708 + 1171283411055684926939492659473400788424656994970050570083304687625431152892166521266456341268307870300148160026735731680002739545481334296895789333047344866756740412656112918589430701910929156739455279420225372807188420162924990837630447831700303067512149135062728394509405974982699381714318122796926445584 - 73820275285539969151846205783000718998289017091171909418215608734453400923443002874629335555871381357786937712391243756261471594416303358568955566312479967795091104620104427616248549417811501323855719714116756741204919811046074071881699979940529933237665477756967691469343179005770901771431497694838749438779 + 4644520156031387543471907125914151689618848567267929178666029283119713772447127881322902413425016432487034705782561779721123414943104107894352846603374882040524364270398707923711100853407199658396385153991499720832071629072797778341781108410264185124952827413324131333931102920309749668752416844239450145547 - 45682260539369983725891191291385912176021736766658217224698032738693600984506693409434888187660173831346229352269783596386141125861270029332064929165994953930571864012838854445317023537168773129609795047828476151063805432026710056671080078176984793250741293131612789512391318920946251746477968665437893469997 + 90687760073488213685287282698657366126061964244946322594014249580474407794587934525046476004386103636923107150233318048071860360438420790254013875293811203112396118220607665421739037056142896769710408189857888393666265701482000234772460517982023401202913325824917349584113039138115000512516142460895551831393 - 86097332675807924226813877983889107241447125211193549622686156295982063779634007154366855491737378853669073475789772044049341673562375773923143504023521994029817549046313237990237757264718295034487692457280701265920114447808334014567391556752952030373987029354341964815399188961517125004997678090444644588506 + 13534102126248564160211568315925465767510278764135277433997090306331691614740990519837919735473797673687824927796673949460781774272821676533685336278192053665409526639597648717680740910667852241329028215764004797561896032669317273133831307799677966612202816587745275166196222633392949799948499249184745992833 - 23243350305100271708210861290118036302637365328848507644373130595738956996220768273958203167494581500541732361969526428138297534037196684803574090233256013023825751226188697221210374691276840055371512470456755631882970771290374319024711618746800849463385964847982876153591614748743015754765226383037679367900 + 35576242706143180371265601304473534405830225638912514967716957603981592858091535349792913415647055913664207518623790843656800092310695641896463172973930970880162703671638533853038838577216716237694039454409228193726656229500043229584075443496185941847736087302294576795670702578454993359478296126207091673153 - 52999106058738673380304976546753746454495814297555455978278001124684852412609210736691968534414238601060799108647247427001663965133805072594007137578005946841347943866059757308021374232068005377767965266601325591678779427642500570215486538909035326382879812420919693746293456071328971907044666499347163594555 + 10696550996347525337710301111678643854940175040760631926483188477017545949776871356829742681483450235765961352833420616782586428938732340759369516573100002302790310083758045589035197190780218073681833657659820543630536829347780811160631482304997879432699049216818328550998673183805337020023589728315924499160 - 43134374250426770796898483151822934735027430168622596068563077439734460105471623725206601764612474218025408587733128901235412990697396762127755637343876217218096806241033388127005142611769475765946244634894728707533441935576325833794043372777627658678211522006728110285723770631301862876393432453148086768471 + 2593679013712896326050902425735480269021845132230832196365941802122152438670028136082757371661972592891463808115027489100579545068904327329361395994085964502263486515655761141334178868224999494915985063314558604040123841793004965527670877866889168907074219528204174552937232881786766896592722135958211128296 - 25132445192948147115623356358033235681204744428917070982246274973985571178646732656901767907719120495162199450539030904395916940017921627941961799973418092261455344189148229308114375483762782904724366327905065882776105730227848072514146104969176453882501422748238747134284857342123692115040773595277563625740 + 101909191775475363023373815223068373414377476916388589496778573325534897948514126270047464118578068725925334971220189578541922306497677591788873739067106693868282093715163762313171594332423283843615596969045394796971212036955065806745071131947660287688426413993876890999385072170312639201740925634715988813879 - 1289080402713184128352506706165632756849875586951495117160752299878679570168990340766238820634135043521593590815665155707154614518381191529501200249385528973197172957898355482716858608853934438237185505813439150307940569438285955099866932816971367006447851717726420661933323175562912649778649239888605462537 + 91608713977376515852905093545423682331927672951952614101859512048791173697027303096493423061884266074834984377600169682818071078580717170132066364770232830128167251968385104402891477462569640236134517684847217108260599296172409649958632347698308712787372201356977512924840819040984598511110849078174689559520 - 47307672118644110967413339786480911374224094774344112766837470474056969473607782037449454805936770060148649551752304954480127430918761288376251196770084515121149580725036719446182298922216336955375091973234958062106540534282451572114603084885965074943736651051288175006512658773237956009759804954773931611504 + 83845261897667521398091703998761888045884625619106909169135557960291299571233125538448902096996581210010483088790531559554640989246044383859309027593143100184542081065691714295045804625340107844302524792567247672054007662343368410901120031761185303992046470274661738090011821995679084349513140751593052177978 - 83254503054515996517956840458044113730890178188165785991842533400679617734519113597724923704473088733778633893232800895977297443296266157702788051583572073245423607582688184078729574239963893507478377772943000750405216834743422528435931832209298236588353587597735574119704223093369817567899917143700088509567 + 97548379895225339184601035498201553033068827314887072044163147908684564567428444975863511254583597748768684116754929769914264046891036718740819270283990866107735663496366804075406888186042694782043111199563424707192374900991247820505647583404329496219929149135973572252824810740434023308395511161697152430073 - 44485381911640925345076704636175251853403744768623928167279164651983832788723095334855333926366603183042831281624695153288153779722542712937938179725469846343136859773409116097490601032468949142462134363314975481042289948458402912928714317552332156226049640787997458905357848898655450164432914345995073895098 + 86681401525594900819172622013319112009367470388669804665160917179008060117586962490036482069984359404695495968273075615823785902346110527727820433444678002718087700012757185703930556597582019391070772329405164743677792559075884994742676177998752692838782452628050573808036410646181555471833023905954380888363 - 69472790874927102095980493102168813961946952246324691925097124379976712657499357508822192333540557688951762986353777000306019089417626143264607064889454692666260461229422498175130982619258238240777730758735551695211562248654513389562337132231711315916087333379216927438952323920622119338736034074166965734699 + 68640240014991182108303578511448167622049143550528331106533369816020942150519252301311782946577356998448719751431458855426370937201232947344711731917045063802222861968289104456497822056387197247096757595414572245953361443464152586446216105106056055683076102295361524929263303248145801944444952271268203708337 - 31151568629480825604245268645322846685475354744526493849414160622047505404803972382276304121583902377425746162884068377068568549712539000072275480102851913315680704197451494269969943681447481718743464847201206883632586383232590200967312468910376131785081425204208676095597647378347947459266202583190554467465 + 36128328837901599269656016949845931440518039216432579150022317342816157561949432059510760674560848904276546110172691802086758389320333013756411144002890865756179947058459050094717585259500595377167247066005094350740430582470351111596673114889530724330965295014568497801598160316368829736342343122829419473144 - 7047451460539487671485216683851145585081463767622577903239815599715909975519574629132984521985582341499867109040043728778721875853887164289754560871215645747035972933174674051057651544827745497738683449411945919886181117573427086726859003082692204400779303036412470198137840033460160106525008328292849033862 + 66056647585097799774353194571690742651856381794234387545097196803825673555862540971512764259928582204649232918146167293945199016571855445066842110704987553640225363109752002443377185502951096035398201099826010563191669016219988786333667650717022099276279200890126311022648903916122087475877853826432585750943 - 86559180799146264272484317272060615809612206052970371380207426077280003846432928534011099893436767975167357071558797774332012616672046802712177942714515169164492929549185511762914521620007368137911943017118937384757253223457275651469652472334708329769651880762892764343661590499296443347522147229447198599579 + 16385579289262136436346706908961803479974196540271120125380206523208556940055580084442285731672187771521504597017948948773572726621970776424029255558753775018681356853227028517440675800963680229640315963143194304140094063109831633319604219453702722503243462641448673342284217917900747761113819997048595850049 - 35814732484056860631654195069453224264963147052867487473112867799630280333941609126005104345970070984444783394307301580262363496428255418280453826650113011745093953531561456858863794714388346843188489124183549168436191499168765499075432021805141439822839215146617358217639960043652127434901322323908752356057 + 53619303887813601800332531701520529950656870360359762514353953698373427063567532882752966824123962761531460152534990316172454921626381626075396292542077861112658597087668194686578213267479964140990827049521270035331479981815461534560777235056715776162238015765196609212202111158497426967813283494944932347549 - 80212477111121051041663755900363074067827360613605576984740010483684252093429773096793808997015133221005194626947289573369305208529420683746701509461539348588222758621502095412551427302417843794357135964736819719945208170891141118445242610222754953356344616225324851058173424163979071604909467884641151070909 + 96967368391923090421883115423315575583053397626997076376527281904007748426938695417132755786091807592470407578629573539470882198932989881857774780012363699361284868160821868843163074577252773882354628623875090683056545260329297248855450418354259370856027559572658679115892919486844260911239407631028643591938 - 47514424952978859753602243777020448209407573569761859303925990386486755450322003920557405125682308840589112503142773806886532863071881901252803233144525254647501513705460909890161499212244109488560990930633639753882039518248699302111526214280814789430122425213733949923444021887839546820704571983218840126575 + 34099214366447713598836327405703205139458611985321787316291680026842242037881247954197764001991335852710164380945338379563477686299841892420797035171944213125184706673658728477715669926306382245885126382506245191584129935938107176919889208202324752647276185745771337031841586078767021277879381240470742041286 - 81524283802462958735428589162856411649195684972809787513603533600577325422924339589455021883534312001947132118689230841301607181879683554037563335177712186678491012111291714198562440490126435224217782916345026763425875565227797301690544697661042834385519727501265607715952488225625400058189005958081432370971 + 91847160309275997971687185366985797241019523290251136412925614420548462760306293876657391761254893812007875042694988382989356120217838474952541391017647131742810855433104877142473960610813653514794413643060325309420717117395217362802322721541545021885095330288271636272214229246098961643712245361693219533624 - 76025447044879751776121613615223784777206617901736587929205917012495471625356777780520694909626209919012966138618776888364086826482955295387497625573411386676042709057997157604861326051348531001542494003852556889443805364479128499478680317513800437293632001010270500775904854677523700200887286021839281799648 + 77464612537752265525732489642834502213038121987775491021208756969678336938226503517383688288640237928866475404812932436084143316844318045747624382080744314967902665006640973975640748707941869625894140790920961108598104156477364452702474372475409649804535611942662813110924889577685687930638862057599961056762 - 68639930839459298518305190343102107893358841826895897684610978561664846207258828228719931367662242825777592197605623467649257859550729755730014076591753143004664802871652186440246079178090072370902203257150622852588327662590238470963505869295967766147522398420175697777270150562921663774618860065221336241194 + 89564285553770577422525987336340291637963671532559132604357122011169371556076240057356589329100977579062756809780597282998330397905716817489000811254992140643716994583484268456715105099631236802480921848603660050248990327282356967155129439360665022352825032915997105146338733537036717288808974069860939575148 - 19939196164356253489940847264182169318331627969240259004237617610321408382679255837974325983733488193611966198098585937728867013960652183436041178044012295557901630205705821773763249826052047097817109134336443945904571379996683729503952173300619355101028286916138988451697353449976049938669456996031253074957 + 23208556843765206194949770661813886908472095698490218942813448298021970393669816792950957839173656989931006285750625407531575837353496030702606423480639615074716028348702406104080505770403127845921119105164948072938807519517505473649879208165894426722208858667839982485761889528672357929730558695470219594572 - 8351951139185181147766306828999925603165135471431013942288998837585981308482021302293948158468753502093068158171556102480038954122706447919418785218521260219836358081394325825666301101118078932889718188182272591244297352561141417449923237689994187626635174555696835999609419096329338374739086347386309940388 + 72151714149991172261925031026991356516246156340448895446936462130827146073034127865540977706783019305363767696117894803215163117343286655133375536484992467667564110683359591780903861075022250293522061601497200679056076822042079931431152131204197253896765501545694449223126125195926543995596500122190276820148 - 30101341493877002180077420856572281618387020950899679241996754686227552902865160059654806103988711624874175389915324815046951476118478475503898013071743284668607030447458473588979491948722590003613640026422403178864859705631198420544928871643484376530913017486707172608146902119964550020329737873812598020663 + 52189799788848970208409762750857255199100500925508891292854170885624457489452144700429066243643101839931002812926006143192649940716018820348766994980244011321454422488627190646328736928632858688915129186621368038313383494761357776648495832001759374924446502783692179179631341658954877031970096664076723162506 - 85397536803852459739615685423132313229948758920611528747842180369771946360960201390963479964852346259959072001605002219545896067260612292682156718967173131220215017162663483567990878021840586462803047016654022130480845023201297640149311554745801103296257595420671133407420474785406754353354983234824194572899 + 6936835204753119490216589920387890113869774119554341852002596700000972860704890526999165867421053827786981225166192204996704047434325163315554865486693881442834149901369349696525045440937651589952834280328172284306217711898345453006775758644852235936187566996969048845750370108610378225454759375786636133387 - 58406411915401992294372206321163081013271038825510750209346904830669045732295022379189477593555290896360993377017488009206638850845153177807992500967888637146867170048659522363501319748438408192442299466797231488677079768190938007811995098849507386484436032183457559319829514991698674067702812788030304429030 + 99294342669763373955503638861166149368823513333948134483766612170366261579213949876277757349376560036186586811051401866563767554512474730557275093465776661320471059843309934354450144382824282298929490422030667795103572784939165227641244231429932855820542227818272539934988165537541249480181815499966022393661 - 10425032715806567161094839615968963435673930178230758679027746863641018878957910066534495913009626479056037005078639980829246346757846919990611656309157940285115455113335214482387130170620429911485702001052430746206114446706188307033441127914873519987631287849359991695468455048626922877475047918114663935453 + 75603864401796164471170666829054776509412262020869816361068532421388820226793120447882513376884151145789598496828938162646581420996789299093672600127473759941587674021454223717831576132755001912922759500301856528202335825059026827955721409232810449278498918489693504518217184119077659631472841074102833900633 - 40569843767857091791667129301490827671826850637590913779814101575571648770319547914922154388801050345999348919654369275505385506986709050804191128282836064522836790164103163217927803380347141741167931415142020223077325906138386449592458831420543929693546776866890128057834891582480483016809157069943511867031 + 30176327360290271548413171690890376486136570948457415008703842331303545675846099327155273400757091194979556970934010840070038304888737692029596827410138324538735513044159131358616731634550858779328758690985160624020443697920651465881707426195309256998436082422908542724015985003627134610232314232023103668551 - 37078429991664723123111169872505483438271698842178786996480622961962439381379526742722596271917431241113210722530001819512699785665934363898063333928996494312852931271651180529223141418790717805958428534806887839691069405629744851919261526888882176034494454497683238300818846965061519713758281495350730562980 + 28871583748297339992408867641772635460804982341674133696838770441065416330908350344350303920802709327156121033341404763222246847685180075230611877221448079554451548578174177182552311960086495144069467581218697042363713976076672777401450968385321700463479797608913837330160837326673639190864623517430008636234 - 49731896770036886653908259380389521345382997998921605035520235701417691592555672001935381218573773016099633815524567685365591670759217345675589279436914533336466719743809245201209990060935473072880624396227967384142868458911510275627480476855222041643527198824068733044019770428845510890681753588079084528950 + 77165952903904220267257619603788988674445398750034110010698901300707870781524967823288496267671588661222841454683855023556152982869605103315778311295882142218544783117014566769594281567134060849048574146298679142944573291362503309425100958535683962002363738597606095099011921764434932794325028734999520999386 - 79445799565540264228449921929430111340700410661424771343549064227910449217805272218494913065437665321641641383027275866135588226758401632619594347603131959402921545911628155890070169625362824137934095414696633698954223727731469664324633012479175240170076947494251223887872255760037162822930183778452191128108 + 103031636906483201752245193237845204746313161610641271108312495421791020996703570420124997061509092422379136616031679024110931295131798529801009475818913351025566077321904288383432139212955300786886407269244980867696393001589409449844943492924400108314699480956956233669211509133441750965806734461801241551490 - 55049201352866006295267652950722905301805481818763305727122359415053967865278958166266759799627289846181615674534711502297847410103510149007821540185458936473134390166589123693883206551802457742751943908473167525461903254511846862792826214215851925636178004881747557980189332060120020606337460782098663612382 + 2224417728357790406855947683854957973420875774419866599673460358413967748025175063103329694351420713998903661512306125772973150240142418828673186128899858703563972019543138951344343278045314277559919144226956301394596071485061964825552149628896230766393686275477015839588581301282057020211356996098182415758 - 91122445156667218930550636624037433293519373878413037766010311147422030253895740965493619604739845909179131617662721056764509832227237130310610832836736549434327733540676667649567460028296233165476729750181348007495988331265748178571207986542911477080672978473587900982461755532827396631150068240544271709500 + 14765451912346971474988415155388373064267656696630342261026544895331291539565269256816178220215460796498808436518545196854335985052575794378574847491051669311925779980338970314601896749991551214733382172339593635700047915226540806322582935068840935958296232508392807395104854627563262820434250161629815458365 - 27806369734252292836916602626990905479414362076443013234366503806074188873725298357631134635937077774733003230183146041697895192188154008214665501156917881565267822998245375458338233560903976589198515952492300634946988859876782856342037214946135051735860150383952241391203031471264502545930802721191085488174 + 32845555823217395729227504206954151168327531556751081526010888123119336997173416840867919563720936084166142458285854733901217792451834532780415817910836430905853335682489247707494368592118736645362011406828603619643973391298425801391621209583386165195317281779545929959822282973517261494004666527064020778670 - 33182596690261928760661264137701317258128037654545314721651443004878967254686758865218496930431236910424061261899721681574671169687790872367443813696935966288409616892234763800318891793174228588951450818744507185424467136063384412793503670463930948486954348584010176594678447325842034293214230016812745602539 + 6682886682554496499512109395780851042253900698937739519222618633998853814368305813308677265390375884857813383586251478891592492312817696008759496980467805266968317481607129357959630395707237061054113664442452882302526597721944414161033245805917322052531599874964455737906045805095597748287666144617868738262 - 18474814663717243137845197489017823905206101503521235976688103179329635645358478098559763311794040488022027800854744301990503665285518228133111347468872549473482241048116618004689610091636863795905564723816717541196131590259781047118939051818252325858617198814395799642325153314795742847154899398131499233420 + 28854789441271265301148393882394183881677584331449257021967997517332748867301891593528483831569007617775563347340071318058610649798757771935587554222855734207077518639887824408671131444563394282193804429493864940654952439125145619836745613055648991254967131405297545701586128443725521897494094380960085331337 - 59055173916380327377911355145987951035607400450463729830063656441545849648142601356326865461334493544089512007036582589032573798997317002831256919709896794106152563445462021802752169919112654512361549285029291318247091161023013823512147512165890892884335111130047707786981080333814958704498346118024455875077 + 47162361732346514330331168809343985185785394300957343401925221657857272230201949217812404027246468066994559919299597057234253358033050657558557886927198954999471575838921727064075743817981418305550299068351229477136276903856639972715002413383439282648390105770326042557093232053297435404149635008635948896089 - 13161106254063850300349858666601657035451002076993093304076868769176350742323761919411740968228185842184072131718426290661073567055222669073595522832173110700333577529223148075306173540497293864551699054790478116900252322546859786012877302201400946582124874844877297696960044545718720252490366543167689496309 + 98584464546868621391686922527594958999163003080563511827691261364382351226606099173821066034832907042361816660348862957153786461409933754742933794337251321093097482336661837692304290049625271154264389607218372334932225051369667410472654705924466485350255048849551814454945137890245898185191910018330994283694 - 4171480062774252687134966434754618706842578033969510045203869721469242214610602907970758852878473140244114715866739066099485696309683629328008953870784600811366472313917627943937982684180347947585651114772063567969831117960992042614354899911041829389926910086195251769188012571503171597004620824488840090253 + 58942977616054769033095951040228817321643992310372954482840931668721689243062532303039448756115136841917370416014608045752867162579292101309284462723698408597665213722270493302905265279506079810997196437539641762164986860924486200463252827791224605943189377855100475123002357070797359110432117119571956559608 - 89490156029702029635385447451900950885767584658239615652538954443770769377066284177984385664574067132575196844763383880454178344613365796197560730764133433830395489041818640943893718573535489693512636861854467025070434304000406048316967563092196802512707575852778100696154763478651958544211558871344545960032 + 66003558958807039728211079818070685168103787798975232107836680018711532553545683065951947168990746390320329564366708861577603149580849900376326039380411075983562752665830462075872194969221632511753199896414710973670114600232845171644696691215896709123269283322517215960647145408482597146378754226596236695382 - 85671357441329174043852564539997969462154715251860036865126665227769315034226394183281394489806892608535214763248644998886937400182952922329443550707493076453265565541005332569693072910012996714996770923740209081637000885576435888095829842142059207694431100494523562909717254980791235786991451662346062041523 + 94405166675312836588087560317010381659819227149902690981054520498563901817632336766235775549993899015257427002159334110763006449185861522650802791148158806907141859300330747946152126352209378582954013154033788429166416535593479385026456395920377289315918194415915027141621528551155820980400406399733412119614 - 74811657673244692318766938573877812815853181520297539809001130176962727058321179243536138455078285015029240738437291950145879886989811582202658256167444644479717026700977547967848991078123643301013609784842604531125736489931781260515278643067368743395785675505427579559832133023589679756896525616641036092251 + 71637783078080011339634994074246701865189401136346647672551729562290061345649051138887186563578946904979709866003202062656005534729519884792864345690797865902339925809376738677819098911602776532499851583555303176449387012000392914696790632937375006859891947818689750224717095008639887172082680188704590803200 - 54613275633398836699089450566328081073566711497199897628154611194939260124194301728949778645458478259286902844596846287871200448977699172538996744571791783728534610309405378510892842672420817978020087752625670237885057517202476274445455628616389958214769479994896307347889541995441797436842923986226144725257 + 95051106927260202575113177338036509404125040800696357350888158974466350933005418554241674356084951534785204459556035802537097020676559341656576978822841764872878173203918524216030233286891580325746197020571841792734650447687919478830708465951521275974692240763449211915632386847972819158838102686098655850785 - 54380595401521085194941013907972407638931860155477031134204352821731128268065162447573987429947394538798406454868246308459055029435898691053861495808688556864658275201353335651088903690552314371909417432622022370245474778743765115039785282644137624017343871419985739035954029926096022759171512786454794846652 + 6399323049593949947968887694649906860971598881456820375127256986958469858986115956021977534080281215997818437844242710279038312418363745553147532332902557050814664400557892993473674233688065542353044612234379253178451185055726266987788268620647464563931072189223069405472909768118906962551743021792086659193 - 28885827201810485839554178735356221184526989827131686868171940604464870168637501666177763931256903719134623878146210009515923263859085372891087017395318142334558215599147492825537801771630684996097647421711671545131763546163262714539551948047746220943567678854544504849573455858990463139413776067019217724082 + 74300246779397673115646256083400497254006129673344350288706203317151232538699876666979244274731574701604391437261481236211875435825233858681896374451886718818758429428282281982130101092291885919210299595314828429007560621828392409820626814770118552437905031992736885468960956889681654094896132922183787698364 - 65393122816560075240780965953851316895920626943134747794164602614216148738196980432865811811220531020326845912332353192548839089337942166808059499118183164288887846855488481385755045127227976877251037785820222746453946890607623082678639833969275618970109005809703908847412967835065150954749613638339862143320 + 8006779575834013661784873042455519933915765805119421255666443282050788304274188101987038827009456897475213345709694227219178381773677380917604907838970041265617530556452698102655171061318284581060855213199635736600964183325364740560166004245684133704041058657744981967795814544183144791828259407370542629684 - 71961783994641668898948749416448834471883034261144074007220746342947756907908725397130238772474226905823444812954549223936946760906113783995839504430578864729540018573537567423375643989286567067162169342182493427979205096897159465404674576550546545113814714131586057036260993810668092585075905684928406900645 + 53311886655285422565891779496587781427146678076197368357955390819220974928431094670609706812229352073522730185486041448948536092960517433605456105116396117597465897718812859944846148583181773101781513309683473609724208558537325277353116055867062738263824340702505538537665672331959452657544130829456780827205 - 82454436090504734224977027361384975283219041640068178735378168370286726907480649980425969321039735776354183284711954287526853575870536579174891583428586563212684882506356547025864372484964899422725107578478750648323832292932495287806160293343334194686004136961844368050070134187250917111883055420537847714002 + 89925568044312146815075090871441322364389527589982876641110135965784636531151812540510206866240983140718420295691453143071612555011041685066825357734589313821644862484356591617825251741431891461264729545536416322603202983480287740501874796831850923907348232615061915812602997656335957033245081369682006026129 - 64473140058255083056708562303888702404440631180864183189152727698386637262971860406645241372903998197834966516208555635429648456224420508952109704270317659266508175969185112001168419820121790600057213480350670393208395108555257440786432281486569840108348527495088925886319408476117626208035037218943186960131 + 85493006240482404526703770803956527168640894255309937500625485201373771404452303610893519926845413750601253047443637207632192601419129549713078790388476993271190230375945887724585076935417639447723701097263734631855370136624341745041541131244415222045092057795226586432859340528358062548973284897631715086078 - 36115006261910028712368089364431842439560003855594531792217027195310589797899698857317770024404638549819394661736876615372333412702331190042869810817246579229800423132801895231596858207796353236265998749884487918655915478086930730051645530665549366095230974569288229479733771460305170288635685839222643270761 + 62615422711221780020289342766397971933028316020117361066773813225733268200543547693403094531015556419583193764623167387208336895907482205692751458944683545739965142151944517487813417488882550709073377274548611454293139893438752995965526550584182697717707645564934534331598568066406720780780139784369503899717 - 78558739876282199400004832183115544157274446426849298616616967079232196595194920017606945965295922463244295509328655596669397021187646014231180416435066138036131791684621961652860395369810997996615955109296864898639580640109799876305298395451534518491731130213333665507074993992376318022629006944668187074410 + 35168801753329605117531700430963877621608552296269682740012330552428270882797030691486606647679501972749552731661702604106581286768103384535565090736291919294634673462459238306675832799891982156487025893851295610444388081307280526560137674462048053937582276003022971465305073889637984605863531513401527842621 - 19739744650013135983612468081707348387599638108936826140868566270801829405553463304161382662844222900914894625975943574560499774070350298764604258458486491267941029149683608905540300618785299890099715305657497878224615294487728215518553882220659722470915958102697058213798723564152574833463700379535433234804 + 67788841297061212540404823671966662224032508176020922141987726868779925543650967254264769315042770357354940686903640784703246116315657977839483056155221557022618551826587687351439882630338212950484172961334897075710096416494534655434541356521111062381564999267296781291765217325976013834848240687704753746081 - 70576799604807743063201341970884192669164445238645006562181121024116186762115732325451106967483618112859549497537930949935653031536677339129504518281383640478400675692732883281895440505484147463245182163021027635544966585322930812357513263350834251395217614363408915359669737088634651539360444280199973105286 + 68846984105196320686483917434527918665775294063585575864943996943562288289491499493298395575583602932182337724627297561099043496339532163268543431754948582460250368808078826744447231823327022597319403442227681481385764053043645461529546567811090310588368381071262796745919869546045687686101061565959016294116 - 1970580108709092110535890393456427907919434199412205703842373757222328865439592281082366093519413661930676132713100337020297508391237800252823828467454498354043802085911360601962946650649122325912087728753091757227626797228132666943529996945044381879321198571776176273192035878522550002484005805576911913724 + 105092259134542886230267128084584167893385930025561183870492654019150753518910534370395279087114802905597468153197634607616811591599550217076497896868115596679495096384337527290417190664975724419000561560244815823849014100716799178469739718478802868711520052697051157757424051505894521339992270559493705700118 - 73627684901101621619423906628776707978304390557298222250642375352056788165888960084343020865109555905556472951021226807726052399205385307986403438854794607641741222297431333075516994335205076581797834657977290147975472610689154645908269721083867968602104999234115935235017822425383725943928226126368880827912 + 25106406349620133603267236010236531252251666849585523666726272193535066328663800745640811143571483700651969995320195601183297415308143972390504583234421562370558194078317011890718804269805175641889826287093647601669189423704406424823253370164820524115226470591944633468514780236644070204940818713957590097277 - 36563906446428269368986426225080894441822759439839680035208511013892898522373054586561039658143695876357853789960301322350644459942009644275457044829965213401338185639823186730290464163077406647380338209387145606635382910877786317755621548184007050712159680125821031108204317867922419870889688879165020633371 + 95717231552165992733919230388485924669934271187518994497363294302640336648406144519671483189129887772438144977010419394360139314541118188791744378445747828719102728519063038680097891289517558533903181228995395852208776701692520723075426042431090300558634971377478095876859983755098508550804643226448841947801 - 43080199681892521001137329422229065835805094472214473428306030294675330314419396842011177108088087053532333207141986644531168021379300699254876047356958402038150674549324834580899207476818605462779466465723272318165760209827099046613885843866264488026001485467024508992035821801383829978243725942459234963288 + 8853952191888931439186821795797416995415622854013758916032994767483847020559612697185408053823718442218036065756974943208047817833825263703647281043198067297537481699604170057468284744611746241045342166216404966441916260192562356324016691993626246649461261060006556217406694428551350561015835717957268917248 - 66321259883289251334325668024116054007189936783255983130758581268073086426254074923960846969026443109744153701204359283434726130496286939121300502156158141427560561271659268971472009276417125717580712063714495867190851594378105065096509730171700531203499844014387140950251494626415129137099467726622686223344 + 56375767973854670979108790473515911350727369923078244809048635848928159323756798719852485316885137896901114376106369233507669957878773560706676302404018340799563156244126938812600682838966593181819363511192628047658925250794957016881248370109718450114820518227979849218473044278122922079071194614339091542426 - 1066128663637439695733324471174509554978187219241330003489408114739613981437605399225090384388071357850166210504630587576972506238455976476353669800534187693058109832654211454305304750816984804893945087316474339778091669484432458299557307503347256206063814472357566583124565489356537049722634649330769224257 + 39677538207441490236105221376899237056712416879277532853472738305263393935926838970810025232186913073347914189101879905778146347563269988804699094854570271456257215788796570691449143197140941179729998593056007620932023296133414691996186409915943742583684402303371402837304418604373130654112296227455778967232 - 86575793956352151432389154700656913645336471645635515201670792377001168482633015922821683431279539176485401650807615402204689522269444471259293923272648182315819747270907591595430283876752678240443108991666820637176371113990175053641867184975337375195350406359013086501156206441318400638587019464658939005590 + 12513216027776023863667001289034218822491452250767692512502137724774660266656016248512082982391512715086693074676329567324826755225811650464167757055460114846284434198359886052507069821555663023516510196789604180083708917016485199526437286307528822163497253467554918631181093598979933268896217214908612135204 - 32873531854658132249505075703913440707641333913573459480168347818638135533055101907077435942318716358468730921795673995304153301794323151976173210243608695653729261962056926189514884069674516861231972977660072006631081611335422017198670873359770299696172043866125524123452863436102233062300532351499269811841 + 82386824323932819423598346062197202421245768061457605707968304921435058331016212207668247371513334489404148719101397541758495656110130493030157873563847723772403042160753842555192086169235464985964957191283373855233292192456651609309991145262693838546878025274833654359523454560975007224484705086368842321854 - 33860292985443404810776563870073498596231230120534879019664545650256761961498071019878799288497238335352846203997461253832025465863073616938718988063171040204416691469959461679824052498069361431460403535884301587835028715999935671176319805746360488622077445726181804249408620836799441787419434568400726625476 + 23134880892402481997559710163825217612577210853403340817483237596255076102720483083537324745192787789408018984436724516654491906574693886424953798993398472425553969532932387698896830851610342764998063380167119479519852680962705213824231976279618619373948555184809113438079166738204310028566187140551034329714 - 72377247508149521244912112444088953062734587768980586235423433961721000306471518326667777881453399713378143144504143333030899272183601736858922194477639374086475788546198410096493606107391964262982684008700523055448010433090488981077241255920245164517933385598378462717076689954045068623845247038850400191202 + 67431903715485224214747373430938747290088992819531029180940297876007980648248835077400415034662187370769873805850944164223144569393345211699132880885418565875045099049874746784867423477378323003709126377688420537474487956891319815114497968783030716539431604850710824913536651178906172341782092997960559949755 - 25042068897594974494975742805002014091178010143719073629073712643794123476697031222261506197652135944371533522445207893290685332427468006711005257173056913464603749283845912852339845769910187508478979255013596868049187155253483595427157353881596441489168489944121034406771766117447438041791041084860392393457 + 3962494133368370068310122086301798019801792334066010837753903239270702132893997663188409420910155310780850819466991589584067274501731407572617826593105515442898774560219469442785352771296845706639629282687435975568022086784190966548967806468983644848342110530359110627997665688669614908114812835723090372829 - 81525986765773455229640313340117231651653996104555999934245440234130694884786568372759992559210295774670612462032281076406988070960018228780412760008757949728552447477610063207730340412830450611766358258067119353413194108779389500285405257561386731402411033300961325635398310507622868279629431708249051140611 + 45785684135409837282789562859462535413658752198188824165663128331913978012536375224072290668882857564428390193063470843080463234729590871190644255726842777660068596712130139676905743255343471018076280624601733561984611153306160557165872554117224473570593282007425567915519181970452006961397933053316337824127 - 44426073699243234535484820041449752468423474230078487916759659877400090647836628307541571868863426858931598089757322288298758178098402075394843956442800509362616954667104157327444029421291847752779003024985845431243015477988501593465912878333919402771799957583459795791467901666108389584318799235162925535727 + 81619823975203147431364708080660543190887723162017883989106910835284620616200345986527920605659073269734419507702500244534349139764276373044684625378619839901521336041952833649637806294400258043528837679269723071689723873397795463728364038907655155822164915929738743794766218827753484916718160735743743747553 - 31923940074422717494476352373332015200402822740820161968696339219620647441145116494234487594922638069698375486575677228882625103824903589042294086074324626477746759265548997091914570510026829002711767950700307238804448416686418670847472051939493897923093853527515034693634808912858754881489824692781754014437 + 85214092329739808738084476154358292465157944262880478528263404258382639132167621532820159808364334771731224616636421046936849508392427052908420021558992070562751234611309664285252892769812383156076847005418547326358794101902971543918728455584045580734980380222798976819334703207367886682955392887715275408425 - 27237811610317365273033514315517989113837165442707733865175280751612140774832220727301269845730200495995540155332192340816166601411304382078352614798841789867892245748644681425750506439154890921779518239326536083958529112187738619881633713330313058815290519034250023997598362078407882478715054424171135547383 + 53904239595247830795800104796274137170008400341037846473026110496311019598943780853818439892954953331403167108536721414956520931744676875008779368076694615002468471348062480116353084436889559455516414931282011126144105080281478641105218929075890564047063686050929064224610960533418879592432391473458606620399 - 91142958896434437662076147477267172421110818973306452195745938102043563327761575900515486310532396642011331562175330270565444317053755547119661453796237823578607074636035135055468862180034573283188007150517002604188914171043698934818380326887587265896086803712345384329234159205868092508269354328176028527926 + 97547329563816792548177197746208875739748772475427139081027600222561923084182172442508903897017672176780758358603243592492080121416741599879738999489397310501898981267105467784832546747074753551229106747529307742184024458919226520783922347292494340512573545637922287535662234989829860952979747739614333534676 - 66714502826874747528769784881896809064371006764321875822761853779447309223415491741215572282342185837822203668841934888090281868399976491180683590896570356308665588186206590344405651624320629884181077784536279437798404840437500394594305725597059240909163101003856885585413217020500605461070592507005711925427 + 46778942953593559118913030617020015317957701877931016127052477017886099914379719906287566956392841678593938154605862927297170939871683873598346575179496325303285074081670608167557723480625534601127742489072736903624355364280297304335764326282499465025337586627843956251545533133077652845681490281778282305077 - 34865155662555038321997451028060991473865175792869457939984593042775054005370580188016970030515800482126477333089481427608236547946888994409047870565821547536554763911636625226017954623812966486793511151671121966597578043729879415767907113443305948044756984518263577732971049863375302365977723954794280857908 + 77050012968040425059873766300850852248703743952265001634903143047010956924650346666603053124205782016563103849039217672304341297564450298706301149883581877472413633249240824387869480339419183003191304245347381679501894540988169188482486742587637256227316207163031518837050565955591892491079261570508126327913 - 84136696700946457922661635940410076519108218602740499823886773231943536108014198235000962978269802257519381707927315773213053352094314418207969125140302713101870075852972983399071602764723234884064452327749203636784647013219941642646152625195518779305645753148043948861959971434132410622417849386610898394105 + 70791962760691610048789742832233367114277746512399236699990304579620657558249842897182599369253226686231183443585245115199810683597103933426694799347224428905962597773974232149744196806194576557992515007815283639115816300292274319257469024893093389300841468423459858130118326026872902821166202482901088798300 - 28496127572628005173912088360779602251688127827424568958983969354608483033030237402038916566334287057676445695647477271672832420403459870658776722399210765857800876092901803512436494267329844414082697113396556854068409798006035585743111710023720836998313455839220827378160751354522574271675146502722430151319 + 594879614735435388717881907098874894847770893343431850636693699861554272881270743192509777593436826624378923905848088038084052924753093351031405954587459062523922409095686757003762958096917125173488076260632936457053246717271301379111046419669572670538234832801488528637543630543936096506666174440807902316 - 52013290658025923595476702630343964802218905687835318683034935137823827693870419367347977219382641024379174221020046529645952091943901471847844398381222781747318682241026286730438692861924456826446006488456038690852300566202018861990828159313577083018922665283078520447251892882248828512140095085649235030758 + 36526041111730289167145961837085479497870120475968396811733451417203350453547982704514284169732072529857187188129499084665373671183547440611935775930086831217299829675696180144289026215441799526656388454871724188239320419062650046580434454548859633931943821346124101895625202310344046215214107593758516351926 - 31259836044264652937401034832278652065499951905270368177455771460287189233100572382455180424281608721574157343157920920100567478005404234931634768144482744629832510143366815453486227981096628041076251496612130304798170922609449211319563213920699418781797814694110196667373316668784389774577697518751425107025 + 74310717272830320365042248334376582911272767678589733917941472443843725126951877099865857360248426688981587148321033797859264091826308936404317778800165615835963641607260082660594283427466812035035333850677689491552677610219971840860686979885175853951146227211215148704578125301220697400137256210366017433473 - 7418198436428640930502411166422248551484818437434306251628810676052181805041018731929771612727743713238269455875008547879511441115499113120839417078820575433378255984641313407434084811687197418382797115416985665481357888648710151330427776142887063413884144405371807665146443058776057790912338817836107420833 + 30052640088397256005424460064598926950089060983776480923183132905051458607150238660045795937519731100157420630206761493275780126539614632513473332693666020204547356487357218365134913560923513370454211038878892596958536348488472741670297447109068062942369850806851758424536056603063878744009860995559950016723 - 19692718918909926595293069183650334753567231058940679583149649606569181383969257220718319941946109391575387559433878584505830672393249708517935798618960058754612749710355407214762383734446248653065018654764423641912228904549851593345837578678864861874789074382253071560957803578583969961711490882635474512603 + 69790937823622175561675349650681118185151886442194311853228224979033769775639588765946040553175952718261688237124621928186889403536891550396443592316564511877923205804696873343994570466660408416872680730818532310200903272650032887225991501742620447609112551143458471540291086977808152243731965251428530072589 - 30568027998432064142321773829903036910474816363186273603705984197504571421393282835106647195815993504265400812315449353884348220514544801275900774933107560089482827070118866266244064361143379276380094927504982040391641187560137216444763551109331776009530997289264616653193650461798752704729903183311814092161 + 20366323235462102690336083445659810239266894350979371122184532415866675009133984293736907934994630417066016611775169091217716589072974438422338484378192539394223154647058763453788840052480562502558546251315446720856565168339523683471154657941911841554123770451027076000724361527484889968696047699475269244530 - 87035326733003656071647950931307478584863118325050184059751097026622782873825973294855484214148631708210996842247252682138963398035477157923632252858479651520515782007491700648512329266411234063985884988593711937530625624986457575462590018237443660386461803747134632753436842065047599284997745520437672846074 + 25503506564332230795422082435979205214529779706792229948074345810958010330084465101910578026108382845409599358769142396108590939609701516256885581416220178051235849706164020194499766773319224140219997276655767551976566628071038463308715481849076954692722814212095871721060258918200722789201361082633548858966 - 11996948060914299991044355984360542893510437030857272170268567903460799772707214256307802116601875841699043173263994683331305638471329228729661284920100565113475864793312331197468798014402326375123496652250086371366174674012930812605838669850880405871272167926374917904039817745136020930446147471512976450624 + 13702862052735228822492598067913840778906853944223938892325267191488123965103220888083443240080193187995193158321085207726500207750002956247058699432386099151825467632145442617494851917451254191747980800712195559508185272478879537312532751023922044535540138324437512629182539425195713551025813455343016765275 - 44967556366663434451746696453481299607742830645302725049490401935310796912793175674686255693946911538966664105905707107257192092504407428376099190416494261756876187626722514131201094899793484618136063524781968588117723616498593058425506542378321466070033488278021151954577838230419676764754981355627126953514 + 36213734696079366565208277952904842937067749183675776559441658281549200795085335981671104013692260707330886797800643070574465688101845644329532062228653499412254106726982643668852716509454931827399706713969261347821725630038633636438016868392495838223271522071036792277233138824486807451172750656711106946248 - 89156540816777049938155029315096599703776854728644673313208863860567051650884480972020634432309594065152570860637300195565798700850253876059203982177081490921896136940889868939727024712456631565315177335424604727058047623967361865267594281065586353585091557017200654217400392880355768396643158365100839467379 + 52591995705951603655436464212825793411096111527466393902853934040426845557105410023588392898120031971402875497993907669170667963690304380605395311126454912152351478963670602720837739810072572571136920927862318877200378386606870890733201206647758271873286885090507797794196536266364685090730003465280279849014 - 55112094410665965144830619471237827610803621709484305124271376027623695929828835553776136731422799027529256835453097176206448081649003309506272017456816345514164793262597810538802013015989630311540524421326982861022633282932678389176951736570917438202418914735306031592881480058220275624739407238095333550300 + 55989761436274835631424232299205998456448061086802830848346351149994778789575085149304903056712705249949088868493988164809348079680528889411892311785323575872808371895600912880327054748456660547274654299758244787437749279922941428563652131053514291769905486597722863069333863775430808630116211187453104723254 - 8450826248235052141492540734097038247367666415505541023482100628937346421219542621636405070216784215690744736147492032328888685151965517102668291634750947295054573072339158384231937556964759117334785572709476313718356063105265201812019313041191602806940028230599977327372086613987057665098783357113376035604 + 70252637670953755016336701151007374403804589281304461457285154743904600647938293602271130297722958823783380718974021119602897842564599915577239604545025212186920881757839713932152254595422186779420867627180843117286215528863990964539638183617574518881159963362711010569170306787567116026679282747453864221853 - 48593915331833314636203253784545640942771666450995519336615408213710492193985917256953537714685552911040916450798251247730503633136108174229493067940256591543458219214474428031726573357976403646053811135447077965675103907271753902436493345878140964030059017118541144307629958441724364795412622293041109228683 + 11064262779793604865813438312658558201249514216624211416214433401212401405588947204798319267376515512505991203180261862181484554889974822136487126689770890841346537806549669052597109327026158858683998904694829643630102240859149822314570039914018135562393270502494997061640831966751679776885917276499043452068 - 54618589226591589980538184986108027495222350638502365420076886246142521113854924245098855242420744356860280609425300690661605595064515711047947394683632513614779482701665700224776730068441731233629995280565878488894992063662017471528342645971756237759486601867145835819778881244732845560615824514171238390493 + 62967458427771791091039133635389455950852663120380577906748824620191507147059700194997908779288678301948782353166346770182322637004550224783455574476330955971043122481913474278453080493865741337879315422887375140828764187799460531424315776861189827283528730460669831936062870601802575751305073540918044493071 - 63882907755983129981287016225503162874162065839363730057563548830081852982350386549214875289943774489794154115729266348622110569772786727146905187077225843785636922861658268067470255929945587315544053572486222073931393064967401564326399030821191643343080708723021305392914095366346636728792833625005039225175 + 14012556104664768159734738391935255714137652953306572178866688642659744174014019759956984552664622149443833567574849024257622743334352830982228471310648369579296106928199877285489396506705157787950176030375083931936642051150191074750757270646822216601257662856574534440147450249662989796666475181514613030521 - 69666561050270295510991694279519252752915146032124695199735483532958534489675007695542043369060241156711226635896717739791785030454113318958477079060080712484091686511277952598052810004640557401675427373960224654956536109975000124223773911134120945652670050890115059662491350742175472847114418560094506589881 + 5980526212830279986686061367719185249047256090005694154681722596892070802477191085379116259552659059811489329553492176646344235107049504722624128026004963978689517369487098510624942952524824767425738291325956017404019521299899460939109900923540196549198528672115073018308896787662755571209952136451600709670 - 88171971090526109570447901529357445039368867921684335302880930908896079740452229090975608118003019715387345275945010501827277499539220407518569918602976577312144282538463371832875863771467420179012410602240849044640478898257669889847961054583819462422281798265188202399599327264988695271405567375061472933963 + 11599231100786325870928733507068185644848610502823244213522184914036292683044350412080410023643685287598960792004344541577241466061792044462119904759031223930183367254494640308297806627330271962356045543702403258589288879287674180734815243550746061606360760115038443854690029816167964244192416072548940505038 - 52366008427951211915476562361740162942322802155644581894914815054910544572575519696470231923888630383060677495035662089450288160899345292228231364737206000876484407269227335924368959588694546113234007208091849300007967965344358385473833651112070039964010945382475145301970756289739584344330170948081510144650 + 102004879360735337762678181372602602130713341554268565343170043431512939966621182551376662059280006975026213254303772844269540418098950367729119911315295174566087640195471975376454554857682464592320345443733304037775259073405526264114998934928575488576768614824474018143046973863498828439970605353363386634331 - 8868818220934673009858953243554514603484955200415385051511994538684501997016100229326002874122774713855238580357506486799078678642918833795936995750889674179207464747993220649456385098928509052766555859247859879542957874023111642550090064123557692874885093364378602067521805027420547887363544291056459982251 + 64081761249164167552672268871916175441719175705396697714102333601333838178284245127720312265034778243353884333113455260781322010723654744412868776104939829657677769476007184388548107536261600390039562373370109214790499121917191217207040230360768736057149613705750142278511863029881373140310365148978246152503 - 37705209659316373362710960693108812725184272836253362923947876702810002818814290033978477631349792676633051574577855757237618765429530831498001635893052247132526261437339479427465413332380081930267268270008077365637661999801272845831590968854731451145945626417544466739175194591674267093757517056936293038923 + 124486382958716021257200192709586270242755677438626518668445765673482004466646797475778758739344561911414016333665371707105456650277800450782329708163858696452074375432027969030650843202067627921575809164211894914117435141747336852941663409427998785793854805216345443761386008222652973430115113926657806181 - 19630139518711666078248507731919337427752618591733287663380229948987369649949179914859892650933383465876463117431040133708571198365072714355608862315330855257062503030655212674145538406621743835766119305946065637809329172690298979565737341124960969722865477913204370437505740405923004268602337615353514601101 + 44087314346057036128332554398416806484031998254338922502875815727160681913580182526700980750453619047396747193651105444033150067827945723807255040240233799458953314476167469343607209482358768313185927360888255977996194424097473018685475298829133328259382339273903894443505908065114221291165868435615200073457 - 40189626080284965896850011860182314181791040060366880806730056413183434678238171837187521653781094030265927913778804779858296443231136859181071665325368892270731989069800091036291478303596841626528317899942222863754330351855334413385033843621736938750121515536226035851391381294940604875127287583722970781009 + 69444689796447406175401193345608638279054859722737295979550328605592936881230070182834477070449309850114062803308662025821718316471735416864157954584568474148155044605103186476754505589566511655300788822161500877246225053679406154535363185253491511201836508729152763885898437299320987356038974310905948479766 - 81963336618466269367702097450137140992942896044154140380285516894017359834967016903797199229679500651150352671211614562873614471850944589839789931135041042827339592422375906335006301269648444738846635461646804999998523798592420718076914223907356336668961550726080331953545049067401529639099959624752240588364 + 83466986109296555112095206878148807959478694218777713144862758245070003200950771125117136080396209947000618076398729063110476212958423792796968002392265902130910937934216758301267340326268562258545177575053395240307713340298333055976159868730233509278683986698586021674641635840782323097792879609431171131404 - 25366329778776221278642925393020366016232981198927824803586078909235993575715789735212017149449066084061908724589546305913965182242319154942456773425094269275596487810201974336192172714731256780992882057288308863615346362508240799959430088035686631027914497421429005820381933176292526783672639772045983842876 + 79845179387921267501218273627875153728847370645074265523425510741660354002084482617768611626082953925536722202839085137833402960996471476239822786195312102512740791697247331508256455773076076484042740693056754023986659295404610821325101419924170703074687150185011621195196397921341634396427324415932669447519 - 9429674409482458861372323797449945219871911902772539412857228980749651651250291919510805984614140538499731762527744210673970099432762707914944457156272365526115419048327056730726132508780038729503345578077800276982604352073320147697190303168218024508837246460967574562443858732019128542989950939789464811294 + 57538345339566984880501863256468618632399184330084929643158409503270074953355653584111715242782645757216236133602860800439510470557853123008982782718954107277034779713328138452549268387491964650035289116794018176635185166870330862841931529849887248505922304956964786431776513951659244100776064162485616843047 - 28964793715482205248060950415768048981875125849775899598583023888429600396094409938765312899412176621966960110498378344782307992059130909969700908678635052400412166611582873587175232772552371361131901775727714348642148157608629912724435857134060865849056064273242939733236152929790631908018524516436795825315 + 8915769201603049589570806532285661477107546585619090988006867839575297043138527560793006760649345646190554858620959605144888154906646708865524568378338885837052847978050785414645206315959434229662666660346018971848796659952833111756503105205761814745601283746332742764376897913417158868703593029284198234619 - 25587748733899799385303515731085297284543693647674386549288146150759880555159293074573646173439972523131757011722310891199817322437367903538124659386380929154129774125574306708961807881640596610174101589592591209372136834133090377998921357663325049453797852128298128756952037289779748937899472434076577580830 + 37603559931126380779412005942324736814149747935091551420598105900887401403547750446212540038096035722620769417480379225784250961578683796466135860657945604063597994664666658353992585317118741575934517294432586683782920791859154866257655219466628904464981734370013784077798425248220829824847803561036812949236 - 53961802121418614544740133207002449969005516033346686497055641485345573116831334321281218328453991771487901582265721761911420909256613640826608858580632134990439490045752627563926066892404571967127563631937055379978290040416972152819014134123492860319342760710390668293659538864192769544992544134216597461034 + 34569921415729661093989828426756549301533745008621586796251235011628713863141615828149447272030131640300610016747227021101342832473737021678434567992117485296403576917206840429048992652060878736335491660528243013886361143287558034425555451704336201735944276559656791080390343408918953700949732976140879688172 - 72433571209564656202005067118309237174102710118935347835361621401926918677881024903002519380195596747727426893408172622352196927238733604746239663462463435092669120863458194998818188252712830211002413234556115058792795855231457960519604582545187669950542311412565331618365859587962074197200388392536165821402 + 17212482713614883984968759430648901022714286516175634705723086944262071020673897655583689241084993719020806245990397881387740996231840671325351923605691008877662168726627459662374449137560685155487924555422492058053926150124425771881261076370548176607351279659718831967519046585480480259001618188750185627843 - 12784644322794248376713957528208854199472512299069387095273576879156649208418472207373984089660541867729278275818527730524631255703229555892773038962870105341366301360709458697855585961899371504286536467641039593485640023444945583538260332496274156101682119519711253019104696195182096838724792845656747836227 + 72486519029177470547624093917219376607893548547706939009758642375736730611363115076319689410687639004786851499931363375990995885671057871509985748687816009508479526811250951405278888584170491364799675375042588137989409644295964924469578828574627777431357589457252513833844606034040913419751258186937472799281 - 37595058772570546475308333584912452705404829560457409443325387890571155020112844872323662507696448630953700750087499866576612211011747805417642190498903362703166021952087351856902659068951985369475556388843097234628886699597090050912878728444251832363724571092117732341033265120862289578743292122210635711740 + 3208262822996706976592261523427591838012946696812439961409165106552597767191949572312786998717323801509552559577069267859186276834546494277353903871353712989230405041293725399070564709927087972044562400466733661071510695606000813299414209828571033893581280809005603274051264372774887183689358118454623554098 - 5113868334646434441518942188950636148373352370332384525497808807478382478809339539285229588183481167781706207079811521662666874864592064911058122246056227304509619440902794414615464909678104054154702617413171234590542459279746948762292485431776780578149524358614466649126411609620398421163274668628686532395 + 32715378247805653957842918457066066077687844640600702204679267211293919951852227907618158421638687495959459057950553445169179247899967589176184089999879431620032920449619672866975826161845409651049198102256807814685873227138736187759184515420393919859825664515421992003789421658306815025714844035801058341912 - 81676154981447752018961995697141481799632837928977801406725886720728978781712848004394037402573843738495848695926718702854425825752358025194576489813195574161910037281343912373132244947418596453303138000113590529242926923805470157077477041626331016152216777651630278202200294722888575077600100671522912546406 + 71860655226571123111409221498369485428343416327458402110267737393556497176084762570599462027816926357435954052890884298421286728398707144355090729042471065255042894110925783368661200546163085202619830139682334823696052520123820875624886997089730815116511993856042733467270769205009933248210922503093002302983 - 60624930070171402770366913473817741585029609501624239838885771730606696997289732702520358313523837385324524158780745842053030359774398807835356163599536999413385550513392167856758697603673665881083971419535370164974512713719709694463056984762187124991854471506820630112755295207241592395362177742848919413107 + 67952898403910078377440281388257488353141109496606359382712842385610150127290918282086737164867506198797088064123064023994441030783801069813709508662883719234922822815257598647000988194947778920581482322355157213493519048330703062066310396185614183094327228781544265487846826351993983551017239611618633490414 - 25149801323159299882869501286150542600902471124064095002852361585553913511341562854278745334871553377914204106038510358497781167051745474311945208294307337677990427759092536239124415110929456479612147604443679439842313816258811316969149042439471868411330184731576149497940008762855718050104272517815535107729 + 178602672457026214069110453123700880989628351161616950348872062858859791728013246863779282369227108208377403062775195078284708681770995066639256199589298760798246529749144437657173981869093696609174581522760018207482853774532381336968321496900202871576173535450664259865017973829599590985902515563997110033 - 14774217006582303397530752384574777854770708032261114464817786718326337429265829781957399273491352575449338893682727253276452238021793003035437795536306986429698516447134019768936793209745835381773302501956717429418372985507169814960887170820375578102517670092813050251684372521841459479749960534767084191071 + 6749165975386505598187089268303878217698178674215582574552180792616267454796957538849612479829145013365354634552819741228486095598263607955647690409313328532521507710603536674595402592274173063434598818866880895460987030796899749498483739352976564199157270926528221265035790640640410260135334273130637018748 - 7225802434387444974362587073715498362532393113150763324514343817602992603511504980268363912478651868783431737729274777053646814742462443071181872910994328512856527368847283541475514493480955425484510523149922223486325249492691799723100533975918522408914204081477856580106205262393289749833550404115789691734 + 34074156142393252872281140413594886012074715779484392872154036344111088041085077115531154550675939793624704100392137337098575461220203508334712138348551922600347455240171993102285685840843802593290618313714197295902698537277223369397820618662528109221575993490587186969912695738916557439184645176235762561429 - 62115809720901819596231552455369522366551258581738359727734738140112051594047874820499445060403765748733175804742868696309465167686190931950595450144594644060485639778104286064250384394763317267890117241960802693053631169407573554006582052986153727355248272514672700775832630253351658673902324313363596891773 + 49444233878247114031268389958376408155644780943990850709246241216644713502634498981869673429723494961605663645562200798862218424155669182803029141348200497742998885355075540989597089095382507289791069468148153314365089105985633388667382130133044727016881742077394390077686767652485286452899205918221630006629 - 60002799050644179576827694536734251774845095888538303192972394394383492963310876506763619586704769709841994652378293848314396465104311835558557862461129242452279950439969621800683307287006357394027993108692410733978475176787740407894120842259036412551604131879413203652544944656774202222134602899892265917977 + 912155907912469898124371746001364527074363399177156436119081319019169412406924796894825035884220074821179812429133896919079297427494255044901015983444689238842301479515411716808835838285440864648623126765077955301912641351132112101234216867990656043384351355222204912791709945065012065718652565420901631061 - 79594889091929009515458580576266391978235480581705310808683730442587211558485513840567369850387985758420085023196238801527261347194214737369160822870193956091797065518693891133164097990819881403310681154039061227438838120121843880013000496164261152716106859809948835177161039995305482241155844138411085739287 + 76112590492940234323783215172932817212287549682881440458621815517340212413826758602470191888877041725493846986206409732691941077674524810708948157289236659888026818255019668547475050753430181683547332132849541623828660952527236467380919775223387496325666770728298457124067424059747721900328220096034396500490 - 12554496860582268897306996313327516969162420865035920928846776531899036520083724528507093003145009929174732866200842254172864005448273669027126227508248638124954148077929543826137700475027087045381072762184810514212113395278034044038298600567375250859373428515498810988958221568821825409022910170654162586046 + 68088210630902104194227008895255102243089600554818030178812118447993740971791912202059809327996193613338474813522421643335689221572904519414951760012581441216170995071894878720650920326642860696744976581579519071119646032007836426072582571489773493031027871754168689014361269894784030765507992285299776443993 - 21580565234470678075962524772644370354956683855070787707697106874785949363177600351213081010091477248198561018157611237965058886706023646869101337100570523884100127727767089642730691305604630147837255121675736418801434215210555643542416440146611547052671534705725079655682503678286453090984782823709457316554 + 47532817771076261917641095067948997881350066391673710563519384433025035408206941636839332755699023359886224420704710806813482045031396322911464870626780209891095826405524989231854212041482300788055320781803115476976953588333596083986284358156982251451264239768691029882118304002045351710437769011054795534636 - 10776520986804701126334703233244780837932866342940506350402334239362838103388606884741424241297400553657065918420014422125050939892548302781140238821450029915547338628282774474706073030561689139962457260246813812851754423593822542672886550347004477241088221921017375149913189155893361687923683594211190875587 + 33190015109920899162193887184266850877509658628100764495763478022640650493515851860764802152924248917416892190579152065168702597977402421735553077440410119291695608334215959306007106996414185566843559036875354497449259289462631194322165995274554283281090824100288243452348610678291679054347874114750083751306 - 73836521600655564869113497708537883785242803736820018598997426343615002968918599333922984345494662110954264790714104411440462330775893231889468506829423551477439109380397713662415367246046355519475465130698290197037034870890238146740150407156585204671435338716784933022191253844633851606046931074779973439731 + 26279824405316942448945707117044352107426860987412556821933938264205975422012722808390122460243525567957036421783116603275923973123524688137276330342244340600406818652997326665304894491606881818339540472885915991856597676378110840911304702398102062023737540615866241795167839298236900345907115931819480564908 - 52471459895290331860150238728890408422848189937618699951820932766111933989483925639210389141951137641511307000583909117332039708748537172861233625679998604475352052846194983257780321567996934304965613071501732986331639931271230327686858595996372292112194547209030977926432366678707768165820137410667041776846 + 65574142489569680127256806884979669041403132615005050138627913875252084408913838235692490909435310048318928878225709248153350099957734472026561068198589088925355502304755109673564117443535079998463111828831561740147900456844678705535799002506816588434305025350710443958153152777432246319966609945978631244192 - 85428404766439811180969986970602017597698269934841895564912836464100434059639844872545837354378095146758982541511397442435969444314171412147889788949133031332470298743147476513619908915242643444649440334554791945950672755012615704039998141303392516740424233738300770416999350734202123327205630806084712187765 + 73771760332812609565497311216282131514295922023007368919807291943247637834778766099292717863204999193290887765751545498867436641222488708324271758003138528629070750683729475850471658343710762565657647605683665604284648908921690518351158891080330924744970988534708544000136848984776964616113358605801131952624 - 40352618087929755527500113812009238013543774893546102644500358392890557370153318331448837611878211726520666058035964843416742452356078758164143973636796637463332398186518541228316046140338650679118588973501259997240502387481412434536073439479524345399725631273341990298738634154493938021082755852130247129875 + 86298766026769619340022551552532158484826567311480219464966599008305423484637717621953479403467278508677393896589828849260914553648080492169074231266921121400885180430559323931284334480614631454493066939043364757793693606175575424705522832406321891767009528387480242925472251611793516476461615744774795956345 - 64891783131079979255229624300079718571226148696283492644460899580329191619386181263060849576790053854636162038018961104584525634822390727041001607722559721729637712834046770568705568389496602121043820816070441177734060187512435709257336344903628639517536063872999022949155345290693252073252888104827414740138 + 29630860508163537032694800460739835259812663076740068028186120268031137634723188783840387061678419880400625823475471946169066607655386963627765270665643663512195918016024372626963222642273619494506787109525597564081152211394881263117437244196087108841736190579148145611234019982892897981215027026353389733776 - 60609123906929505986396557679091575622953016455087990670758759559575101596766899361452265803192207277475897397705982334135261660796626693149224009472728368355480763241682132162656906962398354106913089606128751541272210257813140147147591534797251227250994320794557637493871897918588773556832188935108995332886 + 50473447526949025304969118039240418645136220901562443358275609948592243563621417304112301815232210638728430169539501949226930477931003222660917404102820735574946855317775150664458482587059812617081736764622015498477152344789083804324546923018773772323644570476675554314846372531714310299492676109009930199792 - 86136468700928516056456153655598751781835775929528446473660030339722237782675566902077688295064748581066566675643457223160680634781652660938718275823143311028054177909262265705528311989122230013451546651971308389579377805207369199283620562947474795334023126967899833026118975832554472283501110261959348601906 + 54443930684247991846423444603362778025497236295564448748360699069938410664218695573625018947834790173772683133435308764945172144732926337763854001708578491366838785941019205010981448401315059618955510728402131597630396605180978510787694557976963652854252258913315580412169190226259808461165992147286750644428 - 43333597449296639599632229185811574204079010076891058196941498155903437555166058863616285248218950766609258614296931762936052217457189810303134899843057317024629425185431645960040877032465159603186700508725493227199675102878468988356590747350696401915925851409173087812131683042784878935108768158344627440239 + 100632894688452102976669764606236591150475911317614396967980645646317068510879292954747555112416635265266051794425192829638706550711300465891504695321207898092216787425344695905936664575154260990685874082712269176288057156441691977048034750555174540292180694138663795363557651559858447062203844056037646696891 - 79858181570000525624325370930808991151218283503330355262048444350619344362607781415368310037923026419356792394453119432013019615552491142834409918032850600123670893436063606959774669839645622517961459513726641415531872255289227920596058363244643691008440147226080034877681877072716659842330419722606633841326 + 62946441681550682950753896523724587222480215869632094010427741543430390884704987431046988247681940753412074034688805573025942827570750401499592555416806754993735506108725822712939222185426647186490761460018054501902923003169267785073743563701116421681462873094006996644741976811649609285149894741510349759007 - 78241692711697791977857578631220964577120067649583069087630790682482408412142283684133490954778741590913709017374789856665086112633767128917085354195868585660642230441103685829890386909042252453301789705270278352894154876142772746180269470254443420817852568907483728601119885905865061261301323513393596938299 + 105419694173334286536207158558050352371350353779888473346356261345775941681225288058707293370536062951587407081502928912899825167755916965242402342175327752538792196196537523046390890454458464974861808425928083728041615457181847742274720673652629666273669295236261720414613322756606575845511458607361430920547 - 35765907747478755019080260535127524880492798139904425163979173054104303186174499455796984132001987722974229595229460902602263705339850934718350947990176233808540590961317939002354950394753076402446001403419908711252115407852292643358669756698791408410088023888272885066268888979931294999131587433950401697479 + 70681508987528980612813868427596806787728350035359551216961240541873835920733133656466428590464853373399624682777084886378928273436305627689787730155525879420030894490355243153340152118744848257540758886651629323581506626020042057363978124735580882596381825308717884098625390249790598054781999118443717126612 - 541001486903889310015954664884893954278113625132682996002603483397854531238161051517736958485797928553154630776054092591991993703264813100020510318387231120021545527663995811623984082008395764739462666315122033901992719941516435844498566093345664313118861929758105372119026363235173475228961578994615160788 + 77513245915173556258578162924957801785981520496325388268022894128860918994321700581793180994144842826641294023247388032042712748711711098699868763055630441652797113006598525583563835752449431782693458086071821417437059343213746350021438252643956559656208870280573446861731406452723612501276815693442499526571 - 89680166310172533856271586870927681275940657361969444515306914480934655796157556231951709680740649661395062347718449232804169011252250451555874929971627377918988082232530749183529656895932962989962696910281467561114878917172039233386322608537656771600558400113642258747026328492672791635846835962558067579011 + 5888251673920634347870542405969031897011866593705466499036871103489992664057329178848995145377160547045644458561249369245642343537976519081900593930179757318972699243949766870281634555855551473496159727826183666325797298843754485278371386875667251963312709409283415169820698315273358743686037716829155060540 - 73786913476616856586737241668772410883676700989571248624486484195696524270004166127416819989406929766823993557592586562019305344519406411570553998157125117490700438560695738573176964435778552619277718166786318558052755778463404247622316560890391600066321567195360609883911726996760254917570949076332855608988 + 22299888145103412421954623252215251757779638582389484977238599739919030631360757929752669478040628552886761127435022714972764514786288073859919600578385728701405293343555154573835740688965885985380328659901005272414114375551663031247088980682932995090930697279591394328323365773432674542156649507082440311174 - 77530289512313274582810760084743184019388750444039636010835420889972640495855469243767258398750115579578661572662919510307898425969871502613238735033825358134774461559812684967733540560715814328739544552576096919243665643118600562880544714999039931982906236435492021246049557703648377609197962676408070307746 + 74887137478276178803140103147314826195695280641875824593435103064334579502177710913829371474098976497230188168348803387725711987283390734785244572230716807808488724402455257308104158327022266725855597133239593428492260448777218561310767891826273990722339236330369445674782144524593719364726355440250200472277 - 19816107621887843034493446557953385369726454222719531526617269944350131404533662031144004275439148569272301801022496673810058785609011881586404137788738870681886311464210719972661252723925514675331491385018117313946557736082468924903961262679707703255227646952708084416825528469916900844751084290589201796359 + 89882182948548218714424119627898618106980394658826380777992370573452778711133126177262704306429426883664603410004988392196156031188653450127478788991502996618822710725451744234385621041411521615099145196624361297893486722753683661520362262587796957374623851413005768733510041466021300844695146748568100500352 - 24057921116629200961301870159205253441938319008937540339719971202339339540808109327902343500047178905498939679675841561537163535960730376642281574802050279999795048481903438945498724117920427440509604303422314778468262328352068542442363021512098199744085180443156235605584192167164500397504802572280245899193 + 2523029616887084104790754801339758336565581077319402202734951929869576475974589234624943001678294664666189653527078350802600387147218207479343733745992962292536558369335752118682707163057799162281984305572786105603192966636684771695212146001149306893552686497066502359631753520402465686435203540992801766835 - 83604542162871807123149506526390665479421800251766810610797108683255966635044754178283040692303902603913835211671774149751601653430844832579029555996434294843920320560978117186297318097313009117337117116936739054172006407585624343394139165272410883435790253440487673787739547970299531038562779198985594996688 + 15968400329240373591862355656529867405000967597307810367303846847973778156815936176314838972381454446262503189254933732251683420272437689916478241749195425057637985078178320293040994961182442087687187173950227176058691908620154947070651022184718458319702033355247579795681055832012985259367948957662719357327 - 3247682502768312786088855452763168797608955980501826237209517947652999695755825749580702038207418361015367408264681308431336177223111965236801077993351432851096393424643380204330687779228403660014226876617024877792689223986380347239863584697977878241350848445772527771210719308052484802654721350895083569846 + 74119554951010725576165220763711394271985224129117255113875171847620345354982827077115491352913183209821440628015927829375622029054149429932859723089605093418605246492328971733243163340129583095483368203617468826852907543891957505513471626422449380688731976250364706867633423182803993870038534296297068418075 - 91449858827660772506606299093826744000849077349074475446593643904312684795574894381796265250269391823543298964708390508959498882407192872076394646410399671492941411087575535956895942519687887010218646427014327281413155168349840087689648856504010148706534839740127296544057449294396399069054576769269085633940 + 57933804029046272802706533614587984974815312086444520630689176813570952815061649999823597015021619139072589314698842553027452523737171691485501552526402542980636978453593945263257945006621106747704120975168277243571829729634818737118486691760272421323365850432646528257084475728423314973594816629267657732477 - 85031553662012035866869874273850835408143938380379624992972049496916388329951335085544552296193704762958764772708133760545354902064250145341605972926450321003244943891953512582292512155773155275792621584224660137329904699396155899972348867916573710424820366480303807034814296001724275666738499185158285353948 + 51075175380880472061925502546172693835819833303747081263355929254117910817057589832962793910821570326249171213485105046116997278697707398594051850807051978246627080319364371759225305768500538350384006060582133398337185670304346240644825869162693397491322758931130373181080797058229219376006619665974727523604 - 45641194674959635500978868824865097300951511180606330285549433336376655600410873009498815154309502452409994351360003374963939529435296922719606613813267922400042898384932574218428120188873382086483689253660249709030618279934793342788895120613950144923900968438810538013725313118532607057460643414670156452246 + 18486231629006649159905543516421189901978953130857865872949646363702556804019193556578947560150887018888138955319701087523568122202243949500174476551485726088701454191636921277132492104851449325972043638346096909039577822554914626989717272915521783564372227669499801368734099846093622077561384931511126725355 - 15305866739863125854323725488774181350426937057021836999411614412129859663350809100975171822918834899987174274438856549204443666599570150425909575095786836190633851811001746797459050359598438020993347064992319401324970749156239197119522568139959555599261029870413645416544728877610065336371621629416609069294 + 26728494342268120651894528673561894585599601266901463377936525101142881258692322407294620567767396034578305179184515619208018450091625540125500998157654258089151397976900475336948798720081526889359157937593924939105027058693466375652066973341456841446928740681273448465364491732987269553290900137713735513778 - 90322230104698511402063143614424027459968399658383971003260734289245570901221910852178828919700244869304626642544122057152476567144204417233237952200058824853929640809840285167877219655505468768824454448889734481447987663371961529423855095326392820439837178628088828656640292287834914451904774085652658929026 + 94185013127019956205698779357714472603757480431149594584738148569992003700826307874859184330227770389266957883813841587383026083843159582813443129145393178976192521814712778864689861424478044425342612668069662832089987222266373310689590883939472486547908344839551698497991344251699353355518128783805809957388 - 70775407497782851965257260196743148807067326767805668786315062604759878159908275822542108583018067877897955036883252754705443078541561953281777995457705360680932926233634722660024363645002999882923453671237271288108320564728800240648829269715548238242983697837851122602283250848173290463467112812100418987442 + 55909291808701087800602267712452049515784676858049737352648543447381897725666384333654108150427562675931554376892513724804628548579548143848713618072029065270492185328837444145643527675543078455384007690440297103055085456618890807858654338716022492839933490649353812846892432349333880956903997441679383915572 - 47196580280748016906113266779525356831986711943289936401369759026591638059234620846152583968902155419752119927308662224146252825467819256852025500476151212537514704158059870352601914861361262275402795793639978478269390834649630706783286393323789053167800970332633300864794310184075383287464127733205536191246 + 93149596006967960246783797519437354381500039730443630304137704032437488922548827796813608772744693392850424800445759090304864791915863379079704238707811072840109135867414575190697326442626305001683716880619717276747059933047222614921897072268746833303789352713275689531862541247786422618758231783454278822830 - 10378972820857313852361637880214497834903693314351043499159840108895697356577911461632671144311716919194742249235756740596937393501186272104064438188926003237600991591171574281426933975718924265321856276171406984941546026498944906854973362910607653486274703248634594818605433492757659895776521495532204593984 + 9169931143978929645488197338260401618969089415143393892168289854345067883235068611653593563584936350591217575965668499693992612547862936858593605269727600634099416038632902448175047109166418260697498034411327293637474226209336551188934241208937799980993062848355158148024770804823789458261446462929133222511 - 38666518867217938541669026376007868922154380374567864769943332819713537054823277421958143380428595565799553275975316870969513859173211272734450046222025065373384760129525972298717605418689255458639968237833954823815452315104549815118053351975631775345341671024217715359807406435343742793434284760960254629078 + 62099342619763547705132455299945493515225250348152796124753214765399585160181489754096572859002457060661311035846164756955090355115175854662033113910890386877269851182945952106435155849189865980280394602320630833369098130786301457340581104602633935621190939623060466627892458703892987530726721802564578562746 - 80920719070843135316545579371785527074669035911449278674621233561470115272386847681726184917679860529398926221917893192769280579023843951642902840778927605165904461208347659731295083535573632222093160496298241092857391941258978483801348750309000677538579979070403147971037320778420326004111736516075148728494 + 66021251832124023138795448062386204113238734647238081150127326510673822888403795141895296111727321575229825550098355154720990531703518300571710442463828479891770614443796851513056509395079016283422230097538068732951958334272788761295777372074353329899710705788063071706889477051149153177411822432069310120197 - 69792921035512350814142040651491273032825863095350980802977576691095267454967466548188749510350394561014788191181080923720601135255847917666579235688624542313567226528202240018638850813256170822350279887651278296389269766928581959738874839405604235259747589589092468754642693294511429810356968449950631603340 + 104464358765850896697187174957001648529493338054720477942023611079107763211532023800707700931442878324570831379441211346762058271016085939275951447212434195657922824892196797009843044004223062498857334412353013822678570626099317139816383547784730454439007078430754564501861940806943433917342351991422131914767 - 46427957621296833763542826478061626305974191675917150549322007384193667368416495227904654573491914644214953763863573205383171669468318521991130783127895516265950714138209775742365984688235051886744539584163878586905831394137999588554651499096043989884826020488907220804000035477127753345089083479779912375916 + 84944211429406305631565709836988327619727526960260530889063114217576597496595719061328500823221612315582014924929914848707895378538102654282610614291194157306836219952059034679110944790992971626478187560525574115771210677338464044034746345805523121809772296623253568897791380262926514924339033671719139842755 - 54582305528798478185356279560099527726020920643034609543288810441066223720759604112898780874145517000275549770186837658293428539171570093649482611275166851130981719853520783064974993759508809476758257207104208716944389079945195335035398624788159472162610465793107857313624561971075285473722984661518924922877 + 7446440280272028115707500330054951504448004745472903851354146673441746234007516950304980480567044822692453137963751538551991869711389194835089239069445650966356897901943923309244500130446818760373210734699292510318716914856887155207815138859438462866297368208682280820945269147610537700334702594782007752202 - 26786437000566884767095298304109859389050315968514302644394492480734890152261172209046274216559488955360172206778134290086475239173139010019529521645298198463262591062849792014777029578316201503366755667476296772225253612977571505954963831338552228233353714517628276652561457276305234298289664693412363999150 + 104462391924099293100571641899586435859518508514614977758092724193483652880464025156229683633424723492739269364374122845774307430848085586307406104094012831223341502915400032837163929928675780849165213500480778640028126715637563880368160546079705961242191489104196231124527527798132426746738408246727318849092 - 25732411587718896623746613825617556273185620858776316771001351475857588304763715004122242461999754655173568921620519867855835396731783209219909824576781883854028151231751641941638155633747667461401083139571619349348490939351442541159768246475904467911268822605722116014235580674109152587292527978129427528264 + 40325342223261101642821209025339591753237878783557730233517749500266910325004608812929171372283463267024151769079909792734719013439646460465977353469751251337933786076182599830561904518444947826074022484327950960665031007582391752523213298463885945251403166279118014650020955323247758429999346876073516505015 - 38279790260545698453349199090766444231444710470292993704029834542705114585488120886725971183988598816980874778899696791010896883524532473633879351709157180427158242741119776747962743465684369089338759807488456582204872818731582207742746509270485404662514266352957194619575185459612140372368972541059505381664 + 7683646430105696357993747823612222764295496667821632039919519673734890544497506677600086190835577650275905259323967571755727600422248140542727230352810653860205463731195777866115328296461778219238547094250221168447159470284151052268276213184040146031004691813469452372859278795419788694923825166067101168055 - 15468703663606750795638052546369661837790344825301954506966859852984263513199534119336336783006913329225896155769400210963703611851049100844317823768070516726962277405706349012803799209134148335699037524676281671745857616743619233035027802447006064580201781359748607701865647233424826038137967949454507830397 + 81058858823309986306450622145574028015560038408158262174388714961688045900724737563543172225176654101418275517473144222392694147791064522914732283313301546865380005310957577229502683412701066618611300853597666455358224271518683531435990124153658950613302344415827515550007564785330761058317108813758431279454 - 83493546790438576037793239863086721177322311484938888608845383999849632196053491190850386288955668037396151130526496454272060651167503345361259135730310997461947676247915354839064288969601999934092999492922118647654396055425124869506092707866122757344173917336028354637877566459415472106339069311183615500334 + 42706534463358188248249321339169030880753514879701715348531028041725835208860469955039325425383436232651606998312813049935019582854728198773742381052239831177571597004002362579107803094616271414787608231221313825962727391961765574004059695740069065992715438879997195111070243125094938907283931454726356386063 - 23699296006959261875761707023292817742792294256001813514765143467410632596317459471372190608232763768706465288551738723061000537000669005782192730202515099452566522602429633322461377878945555614403591091388442323826074612098701152336440962927578470191235355662181069073330766115141746859089137355304426534098 + 74963988827941307042168382254439751376824422652221003595539046644457228095025267869341205497778605972050840129780060389460403477631783992125832375572144816458309191468532926505955899928368609205744834677389809718919933057317655419679661412223124132456242700334772024950550021449935079571154620835266884462756 - 13916569547095743271076169127877428526609597423705392978036420540863979564923509690460160840277987684804883456296046331098051389107296480381562147471575870200424201300567600255377529818474562032545475539601643421444028236041766261282481762841476279214524016433744329240206798546340320181090160625612487512045 + 67043985211021435877014129664130252453905551622211724877051017742783905647792669046708849270370816265405487562753640624228119017244636633614174352683363822805893450716313209878012685401161759880390197745954073529575670490012339398586023764832513398000165460983268714035366790624264413118726246000900267798722 - 47435859723528312135322723663722814313745874376653130217878439943901317756606020141683962329418031409821284218256292968832652670523401028924601277526768890630671137331764679108248717127497627438211169834224322845054941262109251943866403531887923353735144906236437498093026453857238201694913185597356579646 + 23729167731104920369417525292533477318875290209533222263307857444414199017100579387090453779561422286025196453568600741671918198220427081599008537950713647934226949337782033142104812343137511694838905743113506280112701901628205388225899532517045209500558269643458522529758578495741440043928331525357093517939 - 58382885201270311299289201365741362547565992124674674069696734307695325909260702909173259074607884289313821937399582407756216433868311225691612578929016213410495760671085528202376267869883559681075095801268345635245523224480132742386001438331612808474129986995996525386456217740912396052232953220191061094451 + 6461258449972168292203939162642686374072126180674813115801607215293678531223805464506973056728931990595892516676902210829865015083484486815389306109786390250005138417263424467006359850897221044645513013089025263660006394008223717787201994359827949998090960996272899608506557676034282666063030138777228408157 - 26204470133427023419699857890152620990083637211905745490146899892685792918880717163782664319271581717661335199201073715420610890606675430286002468238519217589055103690350419323453481859175352761311705259422086003040969133227294110084294837986232675875943460679959429109444275069194937475671267433518235612890 + 63796462594872231836129635217185206368588069826117708493889418876102270628366255033489242388927713798802899726211630590755233233855027959801492564882105058272688323106091495322122941535949003667501746342295520229206015087646062814766533951768889546518578405214573872566381140452562182729900684356653353685000 - 64564521325702215762030601637999068796030014884015350016436472443632641805239187965415513432028124729606471074553690777241723428826609435117670939898961870863316342495922866036685664477025347629496618950625764055752387480434561610403620315441300328729672090493798622146162095427612735632693892086318512706585 + 63085081543004511287629994433258154503150707198371036272975192108973758176407984666726167076646472350131843631077641287215935065712152563292189059778440270187829633802593895649828372377470052274851899523964679603248022940482349891602774703489190195523920399211303733991325617733496076739766727748179044596660 - 34291477590066721493134971652446290569672213312572762284023875979241429847552010934663238655943052362738859084005056794450032309356653462795623141286597176782216943313915031217703725014126796042791986974119454102818761778199287692941285391516515658539977049384459587283698758490965805484130527121496996832428 + 33923212724316813945660665190871675543968518261383076202283135532786870722734411142501009248140047375120089303703378848668323498979118229294348544051763921934461623562047082841890187413202417577484423934605517896218443946769960125491405309641698924703208674135913634925190214009508124942077066188697468168363 - 68698000981487113285963134281187464955010320845154595193255306064956893001233304572376290752464560307886969461555000414491407696178436464576091102964634078207057016346812791274331406019060263124191885471048704953285892567061102822281380461182868048035485656133699368105854388559479273427485350688815610528137 + 12143112291893603125691162073822164147334360293743771080461954244172998914985138670068186424958435300218762541693063170213544852310913101725224068560019643074696966136926764311411328540002610373841756465037037323392185892403977307832499899064421986631644623998020281417915138091524889271759890511544758888274 - 87752661323670380071464764806211379753080332799541711963599455551407269288089321065557635075504382906362450277697461804337122207480769478391062121224948666354963240280683887207295035780229865779510820396920743387094549494423332074319896156599534071255751721110167993501403816001623860086187143818594099664883 + 85409187308263702133121949277428892686165996551897663588890579157012347626907274956399304105142699696721595437773459692182897719715551234204965861069336727959066853443586256881763525488935737016260399304200124343940554601359584807700389758338362892140356554483144703494582929819131521744497170537081648211305 - 69678901520379772857326288550900032665254351036077766698417866271562591815898625630864712692347939756617175846974568675062721812652623516151370542075761129874965468122941637524659113761901690471965238534470087061056806851382393108520319584511701405958881876365138426923346237447736160372915750690817433964766 + 8551569909868598718460643239535905905539660027957764305864470485367728100406713266163235933179755328693444386383850781157888972259893545511475472477759724552070363296014208122467931429129945843574971323299515933055559270208931983444881318163207847075989035708774567077187454214301703669151272626640693079193 - 36919430678573181835720040660144707378204244209188097542226021686643716983476040850893405971333003154918961310722849679436606285326607794462953052777931747092025252019858539440431625383269961166715280890458076613874241344597960498547571366977555649643844668970650771263727932944246942175267147696075711779094 + 76878828348783657183709603732538780115108375954844597370199261798754810080173477435036263219991768438980393457805143449358820996621673423556309361788924821554169494890815458183598574195160164655037081246476790549330768901482830054046438467530901661631861344317782609192266702048993158677596957017204417156472 - 67704500230488015214169603096598643445590420060542172219272965693513807453478272677410132610621346217546113593746701214704192982380158802740739579479679166682005524435729627218636578348426695538132066079430029192109279799253621498330951236212375297426060412288583889122191842547682993189871297350991387852953 + 14023980699901472674895664791880404870395491973631810051778611321422072823869188263813883806355287178286470298339348502173352049202097671389575920000777975930578078472237402052432697098811103039693126517118362444862967398665552281384580197176291264778199862703540677852987494001120048868980975528885161954896 - 81507119371035350619721960932085988635833379392300820716413590369876312974577861030341197320209606754792450808938776282854150776366459680253866269459514048009347691101276611870359333528968750152933715712228273189719180027633669019557096991792551714271935521451096954679598551393776795458405564708318284356796 + 96095292278116859979137634486195025417490935265712415895970088604860714409282639894447280783522960266282314624235004648225191728601858272597984511431718111074502156640102656739367468356094318455518665295782183046023436524170023274737822906891895951752374166769502537966657527937388845380415002959122210354748 - 68625431385257516826941150237732416081708649762523159209096620417656676755835257088408885816106462185675278495237449171267938175536450694632488201146252486592753909718360477251455541023721094488964613352633750034305114397441290757333315119904702321585153360249027053494219403133563607412594340403560353334300 + 26361626014192451537226975565757839469243340016125387420860635555774383843760004189632060112933134455295891178143165697645277991037048388877294501272034489138280302089010419617731962786720333382600255099980260841024395026406845564807592000218741209586692965472660849420734023843531565927658224057523013841327 - 78420827886755278256333690543822291398320341767436987212815317543799787021970687152234646146340286091345742365744225086527840796016452168283423043633310551461665053181901319322708743811978332928415519722701227579011306152528928951173735294137179266212056727651792292622898984010102899858689465919046510228834 + 50190577120664917781399044939610538239084919748976699332787582928628030136973662867371171909065634056007953910062157261544871299866205829972518645741965598668077035085996381432137850015374455072762647301400092380149014146269052746237747458758410996707928941682446997700062310078401786458017088425344879331912 - 13693970263800129779863796147167038931637967269183097665181076548708627909194764383527252005864452296860898603245229247776842134464585695588770987881344500180257431286814028969128351482889089419022295754254603591951201444914254501687429136160628131038270792070362118303003794070747300038908546590649421298419 + 45914263664379120410304572225773533077949192665239879787956340362689219215791573686409858985758365192815273690855480343935453986883468038674353601419030918332147531960311845952138806091705276760424750462714336979173449061123124495520131055713380300115459919001203546532454144609989654542589170127341737739188 - 69630676756268179074994990912459148446394920366486104095373471329688504521708501860123856917184290420678042014701932836970976013140756047293824087241823966059690773518990825177266760481146293347353769838291223896994945430775124609958765211400007796301611893689241091330949576463121292864269898585446407248682 + 89387199971433664788480613726665304851251482210132323370303730471433298108809826111525449996967722998270785709834633328777251627207025890081151599925754582439178714165964589942516453878790641031600511707676478525948340266665638299292974308081133526178550722259737104633341206369296628546151112453118272047589 - 35153072341359152522992058438626131077894117511353961790868288252247257456810828874294439595852968739654400631854806201547027136095120738064085593372432164175983010565310036820100623114300230138146235344389275233888106320274266116209878231203698512586205606525590124962325965206345767709616578862573019388987 + 102174186031069209120382928699759464299709038439695444865922600362554861906213952782415111841417169590270739338910335423721985667016519869184696945539196817978690168003362320915987465884829717125079299756584662560852927743505842559907397303232892684512473606173995193124114737960286891611939115850545290384004 - 73911442533554942346667989707854433090048853343354613695620852090135115721310372316229820030613971157359918800936927181875000757095915643796514067499629535830055479269279773167307372358725428558312364319530812469831262584021669354177518259325848657258142233019306558592864747025879534758528945765810757954891 + 74086036830902167743885051410091416726251046593098407488648535633123159744192773073720172539790467925360314135990519194625677617779071970300178546854703544834598292689259216284524104366117073969126044940537375552864091986751570305328369953826779811940753238679230407958435229878059050686319905274092408735287 - 58824643232507662958894829192797860303437908839803400203625366567041268207762476338059890734180599465133058837826260593732365835010110349575207271360940474486074487862173624259843036698949560812024659746639695542874516231778020299660520083834051692796412289245442184698085318385803562837145695907855587717681 + 48440076700502806938467332922510926236748990736037783951972513151514573369508316351978409653163686783781174075553706647346351457735753556439558114539055746340500110487936435055628556662289281492695441971107715083566628688021025374313333054755355360897618030959893528787900839437622222102038042243654036320041 - 10911717828556517655270445019489058408313096128577519546029925727954473800629536459230829900155238685430281758161906534115197774328067227666492354312876528754143211367706817067652097853961108173255694845091169267509313663251349101236343134549223337162138627931110158224713752004336988812210520176304922276393 + 73615119295919704570463247769436973838741246464083499838531001438802265453834426739772393435381169876446744605985686449673294263840596224231564994165049616292296724000356358759273689293846392352744787554132663996789120885813972735875303157998108291160063099217483483059517841819884383251578802855831506035342 - 36744132022406639261562128293770084556108296855714238235248267255195634899834564108456084124959961441110089053493615242295926959512435902915423803076753679466792635068999567201017818389287767939625623042405896516061165027196393384663388030643847631206968300873675121340990808554633210265931696464472537903147 + 81670322922104622554867920426299574217461625686404193289904015965467214922732583600925993934056826022406152497534811957485776203168114657257010734040773829910378883779111221195459012218408698044545661852634817417391210359513943692008671624151828418436389505336455908489126175367401840103216642898446603869887 - 69762323255502486369178824741482253220463127681170911873087477998255984046772471118389143441667624801844033938094280759891110216687122062416762773170502642548302871404208354719935173988079667323204960272507659705943626295450160115725994398182184220413965260726484713204533334316363040568246508272634391521827 + 66452235459570927528930080777057256346441044600080116465244278782321145291759533901020376338665352938120955347797122824112846461871099277079712469451350495937475048516748456205761142968057644090446951834431475638425595736651562511377583280373215730634663255579889451564385827275610503642049605823671878699436 - 20788444835703126183753092618726349602311636441920116797773529423755582344864741254822049694285565898493566195042694272628453719157470255357984646369331338419714308395515902527305635650774756314043827581810585201411975059234354377763208903161298273488332669573431837286360505202289944364271223654371342218475 + 97894557268447915300884576864772409660342422323321469280482263091410032185393192723176055022638551916340218757680404147059447167503321232236335872575279207973418523137388258308898342116744737876328677425019688958173713248815673833665114283228153877204331829098747645313513164275589128496424995455563810748448 - 30619382984468431753366425250364683701302549670023291429455142027110359310681953479052506146232801014114407896181993327979977177898800490250005778057862768322486359602209006831378479621841754193149370021923002956274909594501773852516460863577149618420096322653723029339203684363052653132634805989590392259072 + 49645174674199799710689494936486203651289129427869555532396526759230921358770267909239018656300490137784750975080229417906675920671125641599040733033594227942049779280181242067993920992230765641579172271330872568269480814541016248506416503484796965117772139379093226245089164300110567758532814751763852273075 - 3066939013094078471042234240590188107512018443646833293692039668653214041509201692062030960979527845820157650783411747723996914204908963503616868979966030894639144275659468973847557922136950982626828080096976795527366144229042896961158759533858343001359953121285677368181623504780957102037926634207761714909 + 79894283317399881696104261355208139706071728142264328046633443904348852895679014592553525814260074146317980126687822518703383730769405586454240664883332815203034744460951377692964785813119494309339836067540557331729763000292075449558104132801465498074549419693174413126158153068207986633680730048639633565388 - 44656317718222691288659813556412317445136881100604941118196779024792123530735996402687803635492691375115341905147329134022613471072324160232947309330957027713706617980214714629379545722820576684494107616675959809745350581007305766946355487816675995114335522116226218110558605921989378652460160488061851121214 + 58136809383204051828072754053727165688854622661553027623585686433712297971074373267336919888873423821044789119511753702270994581004602275061408894129348725550037672604061646678217760029461449495290643441119208973297449829883859581131041927124179600077856669790424250166579290727540544810791381102864589351674 - 79849752949162939752433518824220387500395420187230522581847911602011732424885920944418497897855982825972546039199679619295019370939144267414326748843746309383842080919044569382946999928117415710959469699563755348637146824212177898323499551351434832599451601199306856264773976506325497432526266476743847858983 + 93522809121999062193762947746028007613070887042790778343476281546632867345972278204073839414861049623600488319957369343086285955195918288472864938216239901785391491428120434758126982086332769631122137158192543916697899452485580718351709263665925984659555267200102410805679560963995889735351651060668041649387 - 4406479626786475883615028984422469141947750191274435774510324179943770576056177484598315765676111275216992845881320128923414654568568049341744737251983070230281582006592892674246206624238701612093000062092518935077961151972329976169692617545864692175751704095801306890267859059191212507864662381587109353123 + 28031419717825094878308523933885202403982726173416573127208413116454553929552011783924158715921965818438720378415880547641301886397142523466631729127788759793369517220279773713596487062207123774604480860140647868944289879736692090968276966415650461781766190854431523631185386147765804069940621887381928853468 - 45374720533715221409248612640921797210030952358019124785172933754572997279056834069285484550276331448240105231832983314501598325776835362466530388917420556458167708796914122608964125796254922998357342528611402572236591960765999849485963683906723268681794285563751600663621557573974132229195981394868990550583 + 71535458842306286408997727170456224558817904499491477155886704447190584479898530441314814570331872470751057332826923472929167397118390755311187690937202554381694329477640946425547755517028721018134547947705946021008085020106659118330860136736625665580555797702941202111600324367344597879868539986234747070875 - 66286851844269156195338958359777217096526371734544399643967697615537775709395210279308749984002827798280459481455918917447709982786834270013287196156502096025079022943424184695019889957898271410709632484456720259026381547196633907090917963022688665301909713178607558554553632802292353810787851057613905345118 + 80401688758540093063508115829611391793946840350596583028235568615974985427838285830678774686095079361464147455913018031419843553884624062086255809899096234558956175597916406074186392160940850862592286139238257434428973716670735753648975843573980962487179963599737418750973033343374344843419321091494023509733 - 72123689566712285879472766883653956813227177461453188900628254418274475047388701553141598853023432655059645461195991159820064775062752305307921338756975501992558646694979055418062438904681546665022498843980107802995767861585647323305009284964803042025219571222045811067950913329952005823778475522305570162744 + 104878252122306388763990193008267532863050973718465055561249621500868980157236446920269065359580484441363081209338358891178323647600252657791835437125798990264281643354353499463960538571527354085535662495731466513477470675642215955962692656933868739929758173737701937315999271700887054857363214074629485930233 - 91415817869382037279257890471419906008011427789932232134282315693492361685326520066420894746865817078650649784115692410748988528005779630965255590404940390015430798565225647027417968876771133675703817365958478473281760728262026894667545074246919505804312837695649345731662166777304078668153476616408975924987 + 7561800411712679250511970846866022623781600495693351727074328432250441845153672697130934023202139080838643188404421722654734221570853303509681501194505651056213137089388591948637235261078001343325445600560630836202997069831924953221247482223480159543138183518734774922069729653733769108953194613371122725661 - 4795478807429792794497152682641960693711340180253262139858782097823040522886581038552375896052141943683504563848981028272023561119806643031229394289687959340412116521610268615170039443197339178473480314489386729233209524496894386992042876069367118882922595083990258487970540341433824929019010216057101917790 + 40171748587302213326292987410579088436023768158181983128550581509695314868974615555918730783405137891904335252368659843978035832069545741216113427575153144811692755167346852219888138982243394588941494338776988496973569179891689354150956183915434984303643724646575090243859295946462341905961728069416363596584 - 44859887499963029771466774392804473123320942453226578895842823932829698318065288741800479852263974227868714841581838609621223253145866001675858644243411499173349686446029866963946513827571259759881112897325452584156303354501689755045640148877745940088245509719045395513084293915624687074570384233921967106545 + 57139503775204612904879023122384348093368820511488138158722337817237890120224726126528714665176383721499346834944937565261743427021914031548128507507530847972335926742418337581852314321566026575752155411226751710241470170188826757092549369577721796797608139440058717139811113408168469425646042011951299392012 - 23373617640242904010239666529089905017433533481067642987679433830816309400144613998575325943299912907551429171461307169400260343581548519445262030991237283210496982923813835969629514565516894228017011240041139411922544267427538164775881698734457681726817648591352709294198710709992526665844889543765185172070 + 60443128492138642343519725189524043677778288060635480141706991516758566327181876843800761020527310363116663781419637958735320531504092586489330773081277837699809179854067970378077717583418693563109052246108370794194577466391030304892192260101919707053689256222413920053725984394444352018549270408035102425274 - 18456773964020015202208734946406361478915886129802191998875736928446797025458341437845365905913119197374863953897961911199175115727606459702531897487546144569788010253496687093095552489527989861780163748591582822145207580668148825061715791853706971702396937577203752114536361368326007842041470240500632175961 + 96709707806295738211546272764899919160160297212386840805669928844711906796083916335589270122103201566644623858389976749742103463181837949820473272203489363594659569365126113598780626182301967875355176385841988826564728574074019824146625250639837074911054822342127565071018072305408863485858662999377636642819 - 31245019544376434275550850510635230220633928210316895554130561073434431659137241630474875662593005328019367964268503485584519148737069317650668378385720773517438079293250138948335827900442398838174098220092449842999887398498773153141316510867941555868866219768890231773139186554867456154794592915304923408143 + 2451555819662839902792829632709328107826638640935314689788366615322639556547273517672775450294290995403161705363479222258856731221577486167029202858160166804578467306682827893056010993703239069225387831597678784243662903184288182732358382975926545620012906416310862666978369507774369267371744484269029186646 - 55109243500391172243238808796763127776227929486464301607560673120655598222018170864239681846933530763365102018874486074955963326878671144302474273825765661673996064154024339220410349349332980465835702881370189729438521956382341601700853307102044628953538661739746823385779656622698252523872949691796414318268 + 51998693584666569740357947854358066535459216972927570384036980903105267616164800230094338581530489638918733648573616607635747699821085243120098465847606159106368758810031658001108127933695250018917958489857189961838699296308742627591877959746727985562655892503434353632821421997022351092148691344069698107473 - 39294697677117769758056195122835226717420829894091583867656661333914499653339312508422022753107613996745115829269013924279454263295149172185572637013722403426101252939337341243408143183524771436462390457685189137683497398680254727499717811662625847934245053750867026674109591203317486116838538902031090875258 + 58568432411043258414766032846158733777319937971575417165053704544307398140653690982807408180504392086020347048936020193266051802015933470325261532309456518692599474333004820499065485171744159438108586596404172247795726070535509200906017292039612448816974527154361260697315826169197540155078028329801402441370 - 9565841095900824025348778488875135171188314825469081570642146829331843121747040766070974856779315020387152110032441406515705289667713666412235697542954818377893981385718475184752873698632571458607230914125527135161791489982346215569249996164181487329810243883452613261687502218462395428018732568705058151554 + 80423637474472147244795438869366482449285031733043532368817143543295579460394062020038474395520748465967557888983457785969548252206416212701648171858210671961679353658418329000973569694373142143359960354753538919729904243654807558954932171092665875037371429078206038904596690352683841260283160504559562826480 - 12708804424230789850905240236163825981172851021480805830865763967303852027675380639473141430464235590745466046292854258456962921043617373779489524048012499473188714521576202378074549502886754522267524151679230982767887164933099339460318948441950421962349812082025078396870415526008855964091947245869231630060 + 59428274245737466835890896368818625605996738419795460429021747526902241771803413788689333671732534316119196503514294090969320179061907553192474566846702217257903600284176728184227909776355021845861095487722559237959051049288255279619137762197800079440898672607999412899200726619075420403516709159686750497819 - 23424188750378023886351433001907692095012459065293014037303473120226796864709246661207858365922137069165597238283159835907020751557659348070442884834187525150646674190712111246855976429734033695150206130510656667479168789779883623234359059422980167298278863714976303278497228723156415375452796192783530323726 + 87141249380458983048974299086870388127888789237383443209065961173894422612718493949932169554072470148128459474234035008710026310976371957874064691950368289598927592788895440512766216164758179035359783382683304698482930075215087691865978767821866716011342884273316925649518433339217543377801171810571106339266 - 3794345480917179085946187692662891434721134375920079695726104085418838566449106077443433907873804943993174810706323815864289061612375970859586664955317243369764781738703631093482631739901108090840825218440686012986032435348533444893411367553645307636778650178598152392615637153505762170054043933119055515014 + 54809313097174985564918323941915788065280328695887796753714641548806842855667196176514099154877440315660741213111212597337653734584658555737402017472838850510573897984482051712327811790924451945124688274774914833084878528343725896950259895066549004083023506334612971226958531656218038795196105077392323883320 - 19484738633584533217938881106524560629898542057009249635355023295959706086516579660486243993417968006001408371291389310049485046959844460316986465667443461970927804362394433913493035218879056752568872654285499230581973098013677171692786151112157836559489656988590986706424337134846689757613804117977689909705 + 82284463045767099019219906957013143831406528715836497470309200101654056213614787317184288484314132360886919714850373774781710897924618061994761127742355741451571745667303606304884398836829883841568493592726148311246932982732539974383280082650221428903951590954529201971935505327875551115399663408502177964326 - 64475297866327764543187733141233652160921666890410691491056041725906650692963189395241562671169861094755669164022767953265521764464147735759244782246772556403430987746049352239411041518162303340044561774543542966960997443531632934988196008758356174011153783761356731975157186523926664771747675942091813335453 + 28043357931467423177121480191716698938401204681598319036498808127707965379856398041863603188304617607995663864690952349927498388180666291715944941580664986789587871212558336915557685811872112312912910039441691277112077222423358756083935939521802857105578378051390140480557778512514008857653536184615005905157 - 31506471177861211346536318317031162677193920623176079651203715376487023635741578186452037357428044223540158973680304169545658296593913513307410084159719381708518686160421868971893958738297644888004803478235622524965379196052201097686399414116347856276518569788129435528832623582629649399683050472162407987947 + 94604034370189179560458065474563918381506761653933445727904735034565407722831191531545210605346386105148605262888896905617010301199633287157786637114045084979182307497488011051239215843524416417432350674984488992413676135973352263444834945055437769961732522128938054227446380162325992905153454115823628289324 - 29348023135428872506051759015812533316779389393785896622607970561200753167057573062473578664022114370157675487637737276058572493276517759454337898228909949851390151795160501143569954345868631873622864237634951777857914208854475533501656631321733721244062138339536451668474623616442564053067519767778664527016 + 87136439870946770141972667693447504249129945778970578705982228311598419714909687226275927648741887584645480759225958324161142959330337859895924756029511917593865366365256127622100103816379348495202410922297510436382187103984047603689951399257812902105546143068666566834934452991908329792364759202207128242416 - 84216902476476627085565652917980243550306288854173056784345281922691681573646282583129638636826105333538391573749630468859823513876461367274068387734423035919828079584808829730840056571522691680322900223699930319604501820351538684880932454989336439699469406706128447107352113368003777152947163601766373585652 + 11150964803006812268086272344876371877808667681856002260102081917276164825959231760798517068471739710384708408073842810317012694860778401513572277173780861869045722293511515139765177117196062915072733758767689744548563397796019481645701189261652384722245444379524559022940940315740252117301154046709195690139 - 85987356816199914853696852262123476548299524285191973575965668438522401336622318532006208866477754978953288788828186244806458236086375809760675391642063671851186955590025847756931661596944681735820146530425481652865447310951868298684016435376314376185936139159459468123517601390154602211464034913149705003555 + 81463363531184473221108254326174391180556241355614224085643012333407063617579973733046991646745406789834945613912385656121580335159087762335313866396115614966248185165838982623715847044265279661272188828061755223991076522830929429004113833246953172701882741599762571361506578637165352208511223397126975021666 - 66908844432901627397348925022786848598958963925798589048885079830118444494362854457280765789624967846486229386358732105145237778885656560932532467891556006108717775049041246369057810859961548982900045512839465463560243419247021161179819410100393834690816089422642991570559545671475962563951526310369562295203 + 37019192680807748929846513131972558947457400857838295053814227331222283528578441226031524376934593815564260366065607892982673187197929105681305271620315925223177507980003677104247603499038348517246137708111429918354691928425291801053867182896969815576869800800127105159432653579366440487568599451553329441856 - 88734134862563763951633828297664751350195365758316242046844562439239379721018829372042032341423089439688918567916372794197716354283847393996941918978581250064707856312712807801215740489305874333967894349391619151041334471144807808562034904931756510258058905551836146209831253406017393804349710571060922230240 + 102034252713196776296744746044033458654832462715897249918575317353491970687176845266608703753217572426106404774278279212713569238810461331329894424691193596884266998706682052167561931981705276870216155634759949948160072723822026645474420031011340997188902129897161044305506237617963324089087120348920632797511 - 30410434286943291309062320406157043789811343260552760938447103638671350391858169956552472193975443947932643240376910273719462823477248547499523656605857752528144993644017902118990823879008842150571047743308476179612984889931094394774749175467167878112838332291524575068269151328171140904757019502589213802328 + 80452940486779413399884929246641347993453321238881368366797171339316140989280511268792547665969927869537937338261105219901452888587330576446031518994454806252067148567864883272950959773373156840216138814588597144038901222517948443929698757977502482932470692273849867905915448571852069195669430592925354671663 - 3239422550837563034816796343578524500750314426178521996524254996262076868623084455489103988426961936050327348970237734435915975743475723138650210936957370150106587950116090037613747757234433125184037843550168683030328482768623186393969733911119544452631738289683716063079854697513339640980821266552953834186 + 82949359329927928856215632214053406071144758098496116314756920500069946147131096520278999163196102113674882337820748180607011977665374880133369109906913476362931857929764701530639397928056909475883099756022575077540306407286593061577110238947787374784331321016751979399187476811200977791878797633602765264160 - 39077444939917519550416497738185757376239547831479084546715299386089315284184243506903614014998015024907236440859564567870322648830138959649888568049119689845970225452751872448331649525323440659580543665135492057923660231394683319851323865031652550709238345853800161841021582066573528420985253890111564144099 + 3577723108303456763613532274269738326883454609166283924968388825671753437900300585531325313065596345728737368961118172632964424168861626010830128812527392836550952937893837562589453607805582272552215584233554692523186868033801794822544377657020354487817202908390246828572843123553743792143304963124867491287 - 75477349084786096600178284397888331037303315179182861880500695929544059295833310080396848675918723397598810286856488484389478266230863245537611468633234861823895973688626301999216250180567880672026220409556519571110105353398952281807861492843041953340378364860725726823137805783824226443907589672393839616287 + 66166254454347585453700111841512050029092315139589097790687982085430148156762879469005397479097545833623268042020723984960465944966179510367575698182592511830100043608189459889979931845661995353944607235342425593834629597073321251854702554050680299268370515670779169357617734009133017992589839693924992714384 - 67278559694679309259569277319440670613581113149139256651675649546700087202935126319178200322364458751791768039536860560725713068741805297168686394334616114270873064275668560226526737239405746805149154239051987779361701433053072514720410771886792496170672022099124718102467038173942499051497050989113119241951 + 92208803832957180339346170666545820839147406145239618163086155901777131450796996838823756453581689168023379495228210437666125225147161127767500986754922725504250325310641075120292136900977306123163250199923792238607827631468601972759606322370826043166083942813539811230417413847402611518877033500526849381677 - 4035963831516882304324596517466601874724851564326365371123160065713073744972383973815404311929668794668320449861730069721972990782505179048850693761619653282758002267099019154461326906775777701094124712688004353040645301742699187869967858075988630837533654676483196072847658169834517160999850153943445649482 + 31621225154184284809619161006230189348042803578331418277356469682957703104132300568410457342750759824454325990252135175289678112256410291548973012939872084056196053672681570581209105496418324189969057541129277243827953293463071652995963645825325146931738989480523865732766926726883687819045123542664160992475 - 12496119346461661538329901393012570384446836253263682212438414474713725011332317586048463286442427511293746296397445718613757078709538803554067444471634681963742170935005607098706722000261231127417395910308905744534779561592256041886683391959119442759457677108172813540436196988650211016456710371558557433251 + 98741599063969500827989931340255245025078027162647699062029756732128382703420220635388892993506777771203655650994559068416486201871585619082808742158385488238421013517877885255565991583436853884005079151834723770658393154775073765070898291854387025117028816932078522675477679695620425296660859524085553087387 - 14512660041383002560629992503834373811235441539859441132100531717317506915598850583394951419599067900214890826344187549612688912070675615104598386356480238301051757674434225760514254938942167391759318020721255656200260057704456634693999314985984223021388675546055156411430400363344689799467064011992892942850 + 67449991668514740137484884939289357866796036602503161732983209487746538984646752904392185299289890943564876467778247499576226538542561226764404218638307471236463399103228454553370267216698948472326665369215940725088675928203059632270313367764931633132072075306913156806462631218240890249449755888560771355979 - 17956772289563043159771988791758043257501739383359602924419636574492596314973462218433554355937549935356008537962147113325856975274368415481782819253236795319294077994292430086725676176529942251734736123410010665136527287081438065872339166992635352953015005427347528889367355421924125545183635236479989389643 + 45574177066200369872224382981605351445544019730966969448968557755970707630674578207980076504704361852581366725247234677649681639377900522219385063112953245674603167135536417081809492962531610639486382987794501609430193384268328816576789141645989989082389007096088543128645211286131980287110374019862714146577 - 12677164068976466948356287071803139964666940043131795872010764006433113962672285907819349507322670242493062282022728141875810572391419469462064399361537521147341477859259502621402259339377725045305025484140754982433979089663564684934903571613916936323051891281828292744720843266957727327649907177123101753973 + 55605233117806182904282253968167140655477943797084118235980347685047266790062590735557430780207546595602086330954574821362354720290026904671277592123700876384614961413317635532945200544772543853935043450956354954899954890708305015475706066778367094930666207853085236489408352352235476870613221693949087078451 - 52010943073597227677886709234209299058591812421222470002177016723677405515271200890682629548867232777504011871624653566675072620887708342728435404515498855268515488662554539963725076928623753843816087816117524178495232676546001923416650388052621376633961407774713456759313884286646464595244687588309442275069 + 75968854430468569308951356243886649396694744463861816639467240145839901834356446409172341122375270364247650295171855549191718913195432632617494415831699291279570811934812011824901036799131380505626590875930299533912019649672107081450823921600547677623038694316474611923769144233888815282019155857508466990360 - 49186668591834673566400264448042244582681936898617178978330302004168116670289448530029699185844479079635368998875409266946734172158605089894406724801364748198406910526533228502384085375542731088177769376610956008052736989082554493440793053148064293180633231244354400749284871201292637814432359174882258371734 + 13538423234359441253850748040034370968098593620048330272068828447626327274174837671429715178667215950468798370131958566919603226442355313484938412850820755794102417516093482851024964833792241602813838880411979355150021935803989811364438200277878177619883457209162006792253184092091849663768322762117930837161 - 86553961289019420029416057779506834295892471445377391953083908645733582934140034238443123338780638551467857208858310696021370134763571723725968974809581939645071630073468070960235872417754626594477217291588546512430277976035270086794193476756541662943522105463127809101133995020315323854979223200588164929504 + 21941445743487971196015418538506055172707680919782096306174016922940213482758835413754870385673050913561069288175819056753361299189393634124412021367981182292660279540615455336915760578309354216123837624317588944518966130134465621677973821145624312991232384706420588108720738611166956109036142692071756071008 - 41311437744836628952594112681209888386258450680806565224605083326870495909012077992844195349820630461564801667525552991475464696608385414026920435462777196978703634996867073045070323230597727325639840962434240794693038425796815714454717196437004934011760246136688984870965197121483683446779690469912330092703 + 49613967734235766325771366923187061557255120048791663699682847645093697497764462162423056043448346852425767409097064332411534402532840386534209924653765916773513616147742868073621475984503082646917553967195928923440366453592006694206825292233865258827612296431549616552923149022864141814240463479158136815537 - 36551198735567069888662408395740675088469426601879740952452458496190023011455379844642418265943718480678636234872049913222019463606354248537515850399903237463775209906367717450456494709014826387095668436332643391925233453339014138186004027175635517560626387178095411952521124932880643268237891309077471286499 + 48324425621144914859688333319583042634179479594196581326524923017040616614335682251558508906255797909737147352369649879651802855071383457678143850493863660525419840485664840787474252743122426092522930604883463144997434060359226989533507146177034240380264698234002082196528087183450572819265796629803767051637 - 83745083091257486837427933724590915595329854479726128537027581121064457799999963399102923133186997364183549721888237484716297829308963450320233324396409940190566745079205003716289702104022340145512271170892752664569630371391809826001094743144344947805816565932591034816003365749829723652385957555668941936129 + 43647299249038270140958658910197153158535531481018342068855049049385102650601238609485627687012095449927782637491045574608010505354146235377906369331216160165834591307275668384137265620501808523328844421348406027217892078752447636956330857034212868343593241982997199681396586871788017684636202889359765745454 - 68478845594281919110124816825640055504522760551800354405466504225090746281539958380921099993244328687995740658341756957513374331515323769809881569419955159700349661359060489045992713223344295557781755330195922275620978783022904992196981909329159032929784384028125488874000489917108955702289500207712594158076 + 84721016114790846030178965994443003179774389243258594627824608055706704314152964064021893305432966280631642157098003426387024480979908807179803627055194592731123310355713605399107800502654334435915590027347905834215748200399504256273214106468321798007644114307837565162525966378856639138993794936249435284483 - 24583411957295339336854294740159962046751325443923182487862893928666985053355134776204408408278833500803313346437934128592134337041695653846928734179238950044695013135528921378338949829128751710875694844606608345161878452937321585846769813060710830810409921081260518536616695627332343746519967485804526677163 + 73249147838822084326782860227652231028377669073191899341431127794449651646437940822260976655193195839982195553831877162861906812238982173697120095442834581597841962993492294567525306764164719419607941350772090830515377730907503522237668448491084009882072996646202848363754708045568585052512780543197164075948 - 68492822720311237907463106720324328569201968588926020009079919812608484615686907185059033020192443202934252844004772025862712853278984982714108879237973562966929337820014842492549859869436323626919467726424040055852285741975224333225974676750606152497970630379425938639016774631574203246482695763795701023652 + 77177693063946603673880263415132906652885798216232683543311520490300731571557733139892701295664540826585909068429453191460672916689387691517862867844755584528094513884361159482218755019227858772600561400526507226327365503969755527662257381184629336615300853677816388013636369111005915140988297524365296341780 - 43250861810464079623799441423279802124240148839974892255669556970620048875799660770740626913908311285382994760375650800753243856031924118372132040791864629150950563908362653108196951379874516375498054211124361367484733987200658882088712400607449636363710227076503198924029105940860316796745817281825192586441 + 99295427730456708734163768769771690868224166528266706326941530602218933772655580918787134523016180409232678832709257174566511018701989939777543981832221668756655840428760494073175647993462787112873813765131574872530787383286510657727300263421202277805390259358611855206068339496928165552759115464967769414021 - 29994641985246499804812480032315572405438337063020584491642002607468415818800900580900358758644451535067678116996564389765530917011852412440038187454788246432856383802487887913101660300096270186153811632728201637488087782896799324656685948225363435442251067693466219959603642272583284705101088110402657500727 + 9678143123861691549662416463922806855579771851256232900357228149823030984807579400550208284697225644990514358615276277961234738474980189592281229330428787152238173904335847007066469924534676498987166984719347985038757958596346209657623077937484392981799970952169441710149025713449257485631687749858595677813 - 26658872494881577333572010261017598854832603771952250145401023481543976258664020870645972321772092213212747442706797378014625302215750793604331733410688277587914986131440500322139643014466265960175490037939272220043178209801456607142681351313839066433386191871993618829184136038522286799875121073056797168514 + 28606903007678514162567011983865703751286603132937127120432636732751151104308473704603070902019044279938198932244962348745201519904612726121846633720416264907527082160767753005402556734518631108865064949292402198452912329230893593388307171190869342258969283814292445824059825678175351289001527891814451151288 - 54924325331044026300796923099524514937002807084156488234769480107576179079142574170083230737896409421546734575281470019479449060397420600335396100834492498858859702639247647796777545313210596234954380084007183085523446805859181360177512542086209743508667759798323784122519162536641866638046789079874917522927 + 54463770215497175087193857578367135111540600178195395485016272781877751393496220862318090700530180695787141590985046471614607701710753159393784550405116485111927870657862776550539517161524670966957430463010294770518007033971878193506773969525397959323674320737149620174086601931575276227955497842217657701033 - 81472224410189039103088672154316036703196901978954252251252876799068168750707080373339322964008758735032937745740365052449308995341061906339030925386830284332146950220186474179101200885526442914769835723432442960936575079858006215375834467525637624391895318323351115139196336057232716584731789805613310516979 + 1290331718954766830198153198199603766940109020707296538929645015560587649741519116608284229132299473518055484896715798661839706544614984336354844279614691061285873199024488210061052060726575214982961360485520306054089919589810288432053391303961708470596008358494488871425772025838919187218046634374993547714 - 77841661929928292470813229676512506472780578930243363005554036053284301385030035329652435498618077657904342289762203297652760303282022805697856783342774655190841302729379997911797111516917961472410816120487060276804678664138918282604758115997363764025019128882933243801842965712283725116290251565135477250830 + 99790690519724901674192732074590727941876405261031791848610386025777695058231153009363566904817169915374704468354281397381785451939046314944932840403121736792738702153067529812011796587649766516701536729366380729949448827444908464188612782980166872844508970625820501305893288997859476174470703886195502928245 - 81195764103850045618831320516544875278174040951453043549073488407540664865652954202523677368488205166898216635217881795408483409290182263012908326180900329156650737232763141145298255135549005975627574176307817399500101978963634673992632848390010719708424261198771360089279850805917430289655989041958588907834 + 69906925386306109115379756242946670081928798615234432714507045725961703984141879780099211625503282761756388542130048257252090764570450818129743399043963931009110145928758451651219191414327379555161515524071819202930927020787310505445974864239470842223982618743465155143288532896677451095859440150183029728824 - 68516578824123823927402458721060923378769384880104760221096906935429790059956906389427450274388988148852044944450271533927759742115942986765316516294597613817657830400884889939672206312995376725669436150995695261768401032394286426020810169092777223462786690890854616350396384673338112396826819109630236571460 + 54212628120160343503367105351625198304482154574904407718380314809875030074688741480189684392859867791978277024170067326516013963841138305078182544182470622297822224771777642927915241780989655261194973845305434554863712683126391805467604207640039243055527278634680914713185537004532942027233180758299533053318 - 75254835990257243273001488628218360023001640300665875798057840431102714366499106249659380798934204182106585650229578561075431138559208406516726145062384985328426690047497714595879243962950606807933030508584014766616470933714052502251231349422658870193768073113491850983704531203312220895534821046452608552902 + 93778450968875315070162369671113279000928371238684297638821256975215206442987027817004950532128072928271364409683761262146329342885233680603060519851647609028886818639749388723005043636380373039512240289929621583884989949228903946614959529415905202997919967395529515744071495438719257519435763557621426482310 - 49215346215219682859962913659221310192084757509266615323829482143247680523478658259021952703384554378882183528326243907967156790383291892368502502812284685153578081052145532515831815684618088640879188313517899954101487281162648063895532731798237619028205461352910499833184833217970457678677378320751976829747 + 86087085771888404678227263507038438356069141688580953348151668079255764441203019365759008642870637556095418453172724012086164799826653854674952315965714153474299093616284998338297064920924713876309315349559016597972124008665022422262183744966326368443238973109248532871862955388388483600514433861526947684297 - 24377010203498559851756164123567278096329422299891362164549783258775933969553973831008992080296761426660608616326083807575498805465110676450275844833145505339490658343017897064092072491264293177858947006589129252766689485569283768101087911271224627230019766573679267999056833843329256020221114133971176728166 + 43929423582500487517925519926173935611403322773666582146012830976853165532103037618391281504826707906620865533329784912269366759620548044740040285660989731334343994889207706592880101441715392700857285875442877234522175986236529621596320947261279312354834834591777378540209669369217764974344742205826147386310 - 39052869105169059204858043804893860600200740095361906247318530521302299904372867688638296113082245495603321099499771298721224866415166745492975655022311720330352067374932690417904931497623510592285847668632198462177700006794783456480241442710108271766352732870667762802866272297253010878474405729986632650754 + 4270483391294032818059272663702852727761096398351188633473075499718486605126695534997775735988333401522075207679716550073365453095075889733212700077780413059385953812332517022521143182234222504654768035228233614039315072244080287009435169308375283326719874877952126727981561259777309830536602026770436505400 - 55742795501658265195841050732123404427238352423941739505848700889164765980700969124817017140645896060572507275670106844273658480624978719085365588858572212361756171509945425766635500078187669026150803161236272487702663489539327606330102652408346421191157693195162381247709477861548062425554603514212499575494 + 64816145215336068407263251387592851144621672043346186545617347136694724262384809835422518644581819767922803016050179929562265772625644883798902534977880475590786878103768779963074853297970033900175412199167166469238014065689057702224577105342231068691892173700201492124915604229460546406713628061618274212508 - 56435055667479690054248987652045064227336544573511776683237744589489519843270902266431754542554437888220591486528321828167864346348407719935040168041350579522938825181682987391522741396711120835725008818857492202708667349640241997221448480356670918718167619842976822839715900688446231675882163262312712372712 + 39409734201038370119524713882604922819983870207956581319345685795529738902129406934155912886446433507005152513275554375315785525438852895446855602563909138646528634717123968063598826998407958918928861008916258262455327337716367980993382278639358324446988694489066407639013089407816364285783135707774836962111 - 49377946653523345238337905392007204023333542342736279843197733996317079372425637621036422707592756617102711674914758756358206954357712019801467494356908295795455412707809543252193342173066362152809927846043783351882992357992427553739461691708761466357730699784886207023871609528665688227450293849281545705178 + 100842194701436811774858921966080386650536710546960342490959823258261032441516939687125397362160808947183644394671743746953831007203053497437449792877049391334628020794972987994827061539283705195277797869473481643885561293999010010089812944092564019575665277110333869410741000242341144797286619397077568433755 - 16091522814026535812668361959257596813937025392932052855051456681334334360582782011652162743262386173889645878504724072928674191234904520420665430230035457332863281992297711413035702465301134674715875897248238325066451489307408945958794106167688608077895039876924452180074377665360154022262191408117041988415 + 44085752042610301682941285554679165544485864175452874621902798494168870151282569730667746168420708167172026695914062315341169560698687251764781787847441362195256548702647786104771863050942379182975408876176899395210455201157210237297762833332574030939934298737712222759636051827615117524074792910421109328821 - 86392637680449086581828173243762124792957171264089735017472211107483301740542753480407745733486234986011254296608881728807896800038393003688623348669222271403628774598881462586165547969441049381686452698246292685536967795729184589872639940160772613819689697145501675690478440239598720683427633764492929303541 + 18726332401884933012131892622191569432344442425766902126449032010888809539826689454576350507286822380326815989002832969250390370023946349918899566484782405361603787490780046135153346022136373576146917499717962592288272026283105294199341074044689501997246807337149263324647757416112381970823675253102145560057 - 80620591600122360514117165250100328356024521202022273513895298602524932905153184207933702782429884600977531848603893882973221790312303153020611806198864891858776884184150580152259150483866274427139564298697944236615167268411749282586640182067632396386489772401027339197414758668697198789347574366705345985784 + 41400891676981998918161369063712787776545807712808861530469149059524825701519643610098043734565152732202671920358701287739746404993569157135741645697892750578905325387680004885046067061707435192784943373929053602934682588721918780302973020165307080132881024394310182058531382294588985864753065796595211260242 - 59741247890948457655034129413781691261169923663725924931968866264213942388941751430458512249340329168693192342158892155310182735008720076214446246045999606255620226786472552219124550991892552476617367964750525522287650050797578863032373956432854618303505587247736403343804078947973348715359425593178973865578 + 64289724344422434084416602936227374732478473839761279622488883670904192424796640058040323453177193120169310403125143182911049143907034571495410153944598870006113185596310954722337420193983006072075113525155555524958923330504134632911350610540976140361892186431024156621456587498122900597048428009137113432965 - 79593953569178609322138813020040634310602513335443064770530216728059994739559442526496311772924376572760730081432378898161913780749171430458549739836929525305032687744556268131701674769793632132901722241243171927199070079701799102467047499693318046644406083910161511362976326994442190502251910414934990548567 + 44496103030122116105010425979453230032940956550856744157279351858410322890177250056989701519049455567659948827683738483454811814935322229198370437236413650116091606828348252196016981767726058562135673310777687617917214301923566490184425812155352738378535531091371148647130760123114060356891418927895329433193 - 6280407939115208630985455471442278530911462074593535310115341358244206928960673279986834139346345104953534900547421532793706008291525919353075864992633817241255344968883240278800912900393720733170362361704391212310595599604676633186022181050919859995648996848696790758303199285248367806586625064615365321204 + 51307882535627807460491889102488790998998965810329304877843863158521317747720146031473105170126269344352005903204537874992547805596064711848618349345321209572264774063964974689456829571512862056155647207551712184241370659654988604433673285625152440885315150831901950857798339196718523768547559839910610823746 - 7976372443852230135654925023692267838239298893567636503121174253992698344988934425872032597433545433184186953398960245201707289196841653465804766663637599931675063876388964554856243327632786606948269570553218755961559012938428614978605815064805999640050920820640307900830966052775092553119884233598806729509 + 5602798490134859505612408105817435368477242435766296582836568698839124407905449970285380457355735070850909888602608144469342135021510438885572816217484216325422741180477306820768426432315323581889529346057031585898511728438296048176314235936754238081840394470958526585012743237228919752745610764634149166989 - 15632717644757802549360169972344081577515243282296546329225318180238867639641130950024551295509468943745335006143799340601163632028268070951626250707324418809985015180485192575034675187357604305851929931401360096248008377959393695937649435276477234536546001504278105830650127205740591878489249110582813503617 + 38478302265615129770575889834442998500507504688605051592149295275513404311391304505467552138580130257028480603941641861437538995098936020293634336004495618396489652228781971372249273355199238735261995570466484024761401990525514162312128028674911237578143969988063551104187794375513433712935997114403212634615 - 61198935512301113033630566217765837335707672252530614552359401958758317130316943730528682329577602252174832629053412640088312692466857262998866128893745095444403076824264640636001665207266584118325387846156100617950598803182685166152088331802933293045214223351832130109139153739469453284497654110038822287012 + 19011030712181970802759924346641679660722426004710935368154644170849689576952543669520571179104405127800517628879621348138252207966055375217966674653137697228564244201319243694680977138039861490209800093996919637485956348926667679778305860893225964014057319027656118407313896148437523343826615171396563591948 - 56476895166914313808327184375683916737219578949502895097281763672126717255426858853766321223034846532544288146491808765547964780717371593444422676052078519859365860495756742866868436027127970838880015974989988750439531594024906488874088170763282513376337191865483142885705594313040877270051908374527390395285 + 4055975376899424705444372364097742858302310128408234527940954422908760123408134061259027288333273196260272578665705471093225778960884612733461543174238950276251720431721134031906601566399785040978564486298753914305897063561296190796427708816221275205833805443204102668165542948586072986335710637559918252604 - 78327158805042009442777226919889667605826254711119332083774891674264687937602769453653661300916367875133482660987876986344047524500018759290426871698017621468951790229771982390187481757635854636290670729325929409121651831885931920106083103342879506126859769415288938996513078100089225802669375791764963099604 + 56467675946385686570471305842703616313252103896140461671491401211416073236263483708470173448877303461375860892043723941857273024551518357052548169743411293005345790744373205201497712740004668656487488834934685346111739446916680202052304736516516759406315921943255435416880292298138003449401577180717682831118 - 48314849422682273817443915685777345672853439987564055705430949396537458514155163029303956249958664775153025922420880663165276039360781262649937136565753684791664699095349478463678689940364173436019956460604651538411873516559891688117982623966830290790206367937092266089019790284972358726184650495060104046587 + 63862661998464264682619507799306828104812134599880638134766148449471677263616558037333375950885799228171458689242483072508325785119753006262038625720439598224378348987296603715877787955557641751567771866264754169925887772331822269204860094032557968017378495646673823249033369666209614486201409325648235279905 - 47463559853550124879300505835571139811786484885055756823896683792585276020544121032834017369473198052758100310580344198559581351238749611021333709305418281738663558175059966559633190576490579383762231444019952388893229430898443154433917003446885639613031602733878316907856024437594211646005519742144969288382 + 3072624699033375750004799525177652313425489548680728731516383885492453618549929408669873878579145804438735702861989749347043833300360160063399957395455735936283909221603034252684541305594340061978779768645406936859865428148091784791053169595162866037267118948769411717368415045387730786290552774613855790343 - 34685897833427510297315831097068874526618112292641701786124892317375815934877839384997513792809540814528369250043986751358197197834643586591912930111528003397088268254315536820298193835055850738284616380826677289018786774597103879028134206325590084904471974448387749451855405537711769970192229928465371161744 + 23558310225981765112820789108425483549432509563410227492413559250826752425460890431894362621288937801307949053404195256904025782306485538625003743688628004932825544731696369536753302699296307389571105286340736063500260170306472978079130963495700778278475658805948362680091098329765089723771740723649995336358 - 7160883302051000049614517091620141371399107241040848524434808212849215093148332902887992251849281416710236257979873704855470894257537702261059412392688450692330360543985447642552636325021381465917867992870661520473242527873453294662223330826531061117464325601309971445883726440161332899794621265252316428435 + 62484049568224312132386439039312667084584415150714799495985507804674544523107168640578947263525952828734083426764607510930258472057329999362468363711324618495245371626948261958096566340670184829681896388787352842595835454664958408090678458861828436140013324045732515400599271715225400387432017511986443055289 - 47005575438397421864150946021350223479457074835033691867198629551797907227472794658333864570302802446414765066432878432413049551040748392515172113305298138401081248619154882638968396780191794931924017665022197352435565576208039897285860928898800250973942862988082384662804460427491960338495942689080078091990 + 14182128829125235239012935409248187731459738103286032781913733632796899220186518308176864815331862149986713857020991181009693296721495655668566914381773525240629184907429889604347346621168902594193740331408419436810218801114228958821265056321546612267524877436143397294311955839827300203919814750087020231345 - 73279085742569420784672136398020360249716105176263068127788471732233264683570019355455436542263448076260014593644291666379529878289399084290508504332965751868257482576313899788045818300964492116187544544901982257515820124463265348273125233713805220292302658868137704084233062683346071089772481790151416798280 + 4554518319294033732288465323600431674386111272736763035761250205543928033517822484973945215689090264668435357525995907678922658082719590808701168705860470440236073910265538606060904570012805103769515907246004762647625949869768708810300349110501099124542865631254192798475132969208517151052523573845018902565 - 42392605544245743412699465724216155597979623573247183539383407439436717420575615171550420197903595944623964210284426430076270914910191279772962554749635898486762441901241739028024404514841921374301642570601540589579751360015049362579373169702976058498623702973179597396193417607558372935853819850713171590598 + 103033515738781230775191246000765944324145941310658204429809488899166069923007981158518591581779602881497931722274479388684475966215852456805636586186246491179779574279375868679359293472070579715017749918362611896882244019380278198690134951380531002174954051432274497701579027411072256964992611260681648317005 - 43413167896584861862436070818589042040708287717269783728783249453697703957059694549946602897587814916427181111689105551219461982030154960877089745592345561352897416498869197784906543020165993520779938562068661927392697247947234822856114806909403413686651318301437359632800422034941261953740016446931897475324 + 105277519476238715512095286074029369557526712493338341805656414830609758146952543948456983665315392356712652862450381134786692828489898223256279221573397869634072601207704831938150298543281264698597718057459657092505467293870757397242034642458661630913612665931118787853360996610246243835846170868585948775170 - 70683131442516090467604498376762693618806716652602233765331434856293146812143502730569455943739609101446082282722923027772659001039464102077795922539250766561633547830349295242587918920816707683657065901770817264696287150608951850964879867209924053755750794130335608957584750000605177402347964396974534206879 + 97299558776072859788999653207546747964394385352231093222540341744714600703534978707963626086377260356995379549212036283099580095377418265129529239253309418177189450746989437769532807183372185956258260091682388221414406772247025581980517836852815635377011116325912225868402086754106854917110339141629071604249 - 29837791430110632685110808159382119085960015671894940312585731957971200040763211165216400962441050953195620936383797724187581457959975873706245453218887640980380008206876249518782186763901133535711362853660892704698208550334830852021974152270344380512286300506535063848893846971100677017097811403657302553571 + 78314655100519564453227358996666775822936719064304529839871513371827252571400184163512121081218176892569583312863552772757994725269935820719405691849017526652141806763784432272201739654305881174208267834405231837005220445556870779371617049911279290904749137239707442127055575964223079005942754765858514178672 - 164798019869875391672617967634408008794470800737931667175851697485802491443621655027182352086701592739133675154927024190899052789135114019251584289419558205374368140970412050352743182493117900133889944575180509791434145519884251519828355187083508596401313092970723868815167251478757265508665003351390948123 + 7845202945520346949867937866568193100361266749277373649522131182969014423082129294466144204198555132815991260696442511582719132304837723604228607339951323155279355175512805319897292620362683370665737520659379819294528058250323320437401016919123369360270548497582580345863858410302241903037476030614614566679 - 39241982491484881436934656765942383804680914307456306510739910202042094507367449186728409552187290635459134233534142342217244188900395349088972415815516615018462448986307422518859444439428340736723222908709723966393616980142856258810744146262557123095851285517283781185367456373250121110599965055622584769201 + 81260742611427044440640262652282562944872845372310619675270474275071891958107667393179861770967003878473725979961650637834953994806168911056903865475113492902776230826750404958556052047871837842455761847239600972110649187939622519818970016939111538286157101934447651463026530432080756715816662992719996270284 - 72793210213227137891455137554343661871659316233433198517578841564111922570506937182940852802712371587243345995594445378497769472198525741689087095058987347644550379670089202762712017835269109401574018063970853438589324595970233554086534690120056427281823137150124129134187226415341986362514392655874193221353 + 66408480388374417016372144234306058250133599099979366562769298538963696046398982985814296119005638773528217764174345111333731661946704299305394168423726140095053116607840438599684470854231972707944620785720945891683194159803530715397129118357871725189599310773134036626107514765025467776185346618370777005491 - 44036105070267003317795137079393562466532159897032316688649465311348589999611146335104620015777952816846858045206721260531487411843230558140147318544989465822367178846207765083851222134244757062226812997097730299824762450596745187403238006572050459184487560416832721564001856842175278772500159536680802027274 + 96276268723418664034374811960301789941839284103162987810624585768947807321967941401901810256522396964611443649426880479378789166581524446132906549120614726500896769150456994818014883845115373198027318614460470217864365616987238550595509462990703511852270318661073456904930453568755053700043046511820278441958 - 78072496845445426366293813172032570048922256091999233420051529184725364184033756336726945997828780582164466926238046610123014849801575609662404788557318441992856853113402893803969577703978187775631280809986693998907647492406265463163827800054521977959978409828564586600193012818730463962779111879638077867251 + 995330400872890080391360152478936629501001657747556938697394154237263881612800061150327282979720743361409149942106018275338482767027000685336798025274140592486758878712386179365635364480489143319794200622368115025119178993895761880423138139439581160933207069246250211919258294029986101142060843573074875643 - 51107284819706127829382592576483063706346273942936711313364209304773255973336376919579494858067239938760666555277485128055840295595260422720250808242585043399953596831458532679439831334145240013716222204646767376149685494219383778412052377623743288682112613336639378150155239792704430994481581967791998923084 + 30497405117689315762525568145629651542585077632050190331954083018809898159702970331485864066471733886164501944864163811092779768966346069173133779824440516204691671886610144457545853827634547566887535226299836480786417768866604313013976061209345938213014062096074796334273040330135042160065132168176508448751 - 63230520022763194900810575007470385410625022030576781878423969778637707649538506422101040228975542001482827094267219166180870041009679959527968766261498349410344501346654569763771367903674361282347939553034043980756672475567386405788231870726376558161386726895420060166426740791957328993070476872401024391298 + 58766083547682341049763491305931993319995175524129357996474183722760841311914088768732131955841687933721689970248529015320135787119222946188412520304019681909178753817340191840820110601254905101623236412811108129099052055527553522757757118891875359723559098377380346739342271328358190124488183170466719272295 - 34613513203157442452199198598857874724872233764273749026876633938709668367227536440657976029518157808801283277854834314486029966855247176616771613416188288203956933325157481615929169591454321091473198641879861599047519482726300156911442984035935833464673541584843486802812130055371186030006960917408255955508 + 32192879109921954356500623263478240168287342155886247874675751193307701773281260996368023406719711076443611579447204031520804939653236885654837796234462851146125241162191506138521023043731305887571928662633539177762864121905828315182543854564168078247767238680378786135916139157019751468665663634744592275451 - 258993026232975212555753992186199967844497169456659048964354744566187422205955222338912329179733795669116252003406308619645058754892496005380876377660993935739236032359685717443577890985853073465845973885209183257520600135421466366244244045293947780016755641075890083128445120818954159723088649946449029666 + 3346820608771698322894126145330021051937113064230427460836264479225983430379401329151883228849000550798352195468158808306780990344579169583833472860445257933026808650391885588602548847531909547535731196740455822371373133152097351627837631293961151221428988879192860319123051586040786135594911826934342463357 - 69915281767922185777816970644146117894992183159760614081124030748667904580659009435214612444563520870092727383499691951658343927534991203439921718624724439716261288376243076121278027581330585582552487653678443429311274761726407675884561465197742787984782952156767021541592112313859481323194205774415933653204 + 51448347870193121743259292374491171842915197925421091157017917983474641414129327590965481650083377339675715880330340786479166629257819582962145836615883069367347064354065909489466025275720856902076049242896391907667180914243784898737378265873928651404800953446106807925956343039073428444945260881421026438932 - 64218091900262328984067142558037708179239624020186720904684700159244051981668666769940797433186763945798116259863988882063242464001969101214128398851769032443796734204552993634888984611253325874400578072404360609570028910582039894271558030466125328887396856159589569000106050392609517422998595814573674964304 + 49207510846882776099216351861659381234439827966125887745885018620237887340478283696586719140598553891183521432749474511141554975105986019951383943626242357628074569508856992399583599440212521056014776967376555190575532315631842580988916575221224027572171832141762292827687910838994251189778593239516753544369 - 22051788643166405555475238272457945468476548708653824517208513927388706580119596576963451891571086827720358168893432753286862267660612814892130454474971230645746710879981316471561055403651542592031386628776506063538811218062932249498087204410922956981491501025133814390068833623375843675422926118209901761521 + 43854373886026431155405362285199825526622423699329160844758738513575334354210208747445044766253853876735180201125817823689994042316921748433654115106969498878238657050556072950535678899813934063456076189744186473157978311211047876779584937852705354627242678339159983166869239097075093004227452665946511085980 - 42753158637059874356494587496575666564404157658494747209698267353895117213193056324717565555824847732388359000186706958578894001187185848951776509190937317939365019325066095868591849118610738825192290676522350938049177425993971663389372881607853657074322007831112216609401768437905114522744436576165927218418 + 42399996716928207141150819120074787931709912602156112080491673045260758146133333002962870680584786793505420991519075926373544449147170788814953047504161854594214960730336645189255171857117582707362712638471979936011674283715376408150158803068896962128418639224733846150117702962954939629479329061551827716380 - 29210675661392323145026826194081962399983205743377324036273392214964751872744655550232001149754218192197443454353279918414839983257908821079628552823782847430312581138396151510770380773565406731437117753702330345866059062381670965693185431473246980032258194168175087266734066106665888847766638062615452821137 + 96456717859655524079231139050362493290818293574062758136313648041386849183775497973423257692898358932197282292223396583028601879437145096631451411893229994277657092230466690882171955513704534531438823595424314146834543637217856422278934095838208689600191630426899490692248213341194874285828356074423821353319 - 35413314565835691997302645639988392212035792717780595640843043378377510794328498025162911517195436994129302460733058770281522073239617523410476585772458150756486666682777665146333459381984234611554129953483492027585326831243514122141987007196956854950725158504847401659051621531852274768165026906203964327668 + 65252333695649636030678026659070575167858784563473349681473285599349768486519916016246429017013292539374853937275577689855681584587472430787125342511700007189831333708566099119981016465425369339023941104896761887314154065193062585774391717080912401350299140475659540756961190019788853284444536925370626917122 - 84847069370448892436302655780133252360746054387600977025852277920631504078836770018411687620969406624916112159036624417465928688383896705509154739732004918189930111824251168903438575231606098611453314462392390841145982032821194832207526552433849352280075949775805100730793901047631604892023307286375028577349 + 96739092250539617154372662849674399710096625857783331364465277438842557917308089060122884048217666164219103768591748670033884156287137772821441625567740638584291329238907367423564858892012727911031903115739824036549685561903551646281960446373712215386019806462076080156788096294444775191563758640987939565130 - 32624518679735302441950899409444641697596462153243825926612156525613619373406879252008192822770465419826329630978646033106252387445171862196765451457542258925993109812589121759022250020307054986421854296388889534677008458137731753430227064799765664666396190398108538425445084181332631073216058121800459462440 + 25390923842535333074217931591697030907664061147878382798597875855977543631859747893962215057739211871717243646866247554747246220101241137100641940273820261846313253188996651620045004210234785569547700636082540413734485040858292660917943027401250015668743093676055337245006718194604784879089399312255049207084 - 13007189002419129985650049781406464617684476101164665181960002700866889301162715274777456166882764629386223623745065164696373159473094049057837744928374800359223614533923406169001413752898182888754770965158892208651988174082739870998398962446816140253651829475160606371549500077043774293857703380372707570392 + 64233948173757913110495274059717397880657367883188401755667205286803327947567599021185720791751816749452617062332728949516274657683982432921204014814122616449589590220019249489836457251116508835511843497472809414154315228727392906225854424623293899800559377116941555891073785227694826111044221870929157785869 - 4633989049149149369135215124076498092774637767187547776906748940202415164085078014558214807067755235339648229273814295096752525618705038632613360363644567332595595962075474658531341507280638310214838568954818503612003584741223434633411727374390915385961827770205824326767551296986012839105617277852060174670 + 13336842566205359853448615744652646010392464944586089444966525082001972427131067526976169491188693745506186596475128088371260290914328756014404748626912463348570502187802214914331438467717693047428994529180309899067195246232710962964791848838187249082378583707309354634120196468646462325602437432299202277079 - 31367826779911991077916508408520304344236832898037799034365647662820947272543687960845979210214883323160994750035902765656568149260214958548606358044663513672696112037042261808645138769288774693474525198008080935974426655278361984360223770164057458457142736416787421412729606394252462282660306686451186203001 + 96079200119932245840952806502453786353238850445831537450667432177869283642110608744993118305567704096198942239409115047546385775104834399770084116596873141382073352116351269954780345929761943500743631826722559274710865012199086029059945260006743119214884072477274114208586045586243462082101713035566518371274 - 56900099541272345463970332073825926856374427061968261127683536100727874582370650215491520367304629458904019647105321141069023389742516201008469264730882454492232371705675022923271059201882737847482021279198003827444137348297899728260638798123284680072368927904950243191529470115459184816968845764789801340329 + 8112632783888684507014997808245306038578392327133304106923670023891026596087465156465700604084059966365644420649941399688323617119655714903766331323666935749918232606623340103845990984849851393184375821051365988062860842417009017977337469613611588858328778953906072861112453578615440456323963712259410064459 - 173736542173760403129178220995230160785100707554024552881209984647404943000589378588712852294003475850937050555570363735035602699959410649565896817093186356938837178955057654002554705433925795463927750223234395043990121186327225944555890022380843992092584100947043661992319994226937997356218597028722330362 + 68776315987209837394258202690508076019195951718139605567093031566308327106112277284697934620993521878887653325316799876897310747763472817102812176415658738831201292291072093194470740140002381536394144542462527063592458544175314535175593154734906592533211925130700642281109276698260880851709181526958919349238 - 88650480668851956014706790543939080099819779205950638295529094735349392130503289477491113526829825296899934997375682858024249182405565068549853553403301983669194661619055492278212955972977721614241749394023193226390070193725491076710827036016460717283359887249906197650852003305651880563434655392202540316829 + 84354887764212426289370410533451284769749614950235940416613793912170028331646912113423987204592596277585680404740916478853290995704963452340272793803778799829863438153389972469840934260813595291498637500632143917752922286439483229684326753716482655044602404233910361109738951188023997973495354437087000068061 - 68942308576659742198314459871030236898101179555791800762380517490492757611416483165582077110924768257004415326857860018553730147010115230614043196370569292030295856113398093193256602021339278147435887982184513280703500192842117330075218102280993136271524433307953012699740498550839440845422101467134220544046 + 66569760389608502139059763879381669719482174733430350045879812432284262707630386774469409474839800982588149575781318987089154349701476756873580207250691277946224954938702599094121452474507487605086073073484748184192171524449493218531199348256476118650801231061254023180040037343792535384530374595828842256420 - 11361510812515806429223735974786286215599901977134814947550154581895636734106841147879804129510809642654952749765534930875012709275225997760446667600876151338097317330690400957869074001370439520322219659328927005275681156745906381671060940283779004967601645498827470589999422573782785340986139245478719531555 + 66850910588889442121206842765347774114805925558640771738608110670844561201255799757011139298786625084446397289575180467084684261135503948181055687932775554836546555722199308215779424431388422765447378763440561761414244806109100140636692456186013598353200322187959753398553629461734785478088732526852157885603 - 78901923085817325956011555288995893988030538101859835986334908234426188434704536023904431734978510586827458466105314093800754658520987947861207501816362380419173236620368630720848083658711236158389733789820071554650660763326090642059004193464518887429435134562034686831732873097909593661909454350906157386476 + 46998765319396652384378723206325111205305594654344182918570652716790700264428182498219757897156499532052659264034617235759412120897338356263410815382269839619307932314577338197303190192510354264091248371281192966749334179559244560844602500998904447232682302305579812025416667996947718366637097666114719707504 - 14703449899695986507222193051964988751662442404845126073154739393274010626283252982989304418396172620868545334235826472199582149721900417192138860627839874340213621704298974753505292696439810345961444755259355760219897693013314925485024976645540888967008467517823518807422666448842647947389677259735576845502 + 30472217405412199903113689410173575614824841185379342596184917709170534129679230858956995270778766758649377621660843710468727359567284753886827919596745333030296410328209463121866732503478169049361761719514659570384707988244992489017643096962928402028680309370681371118839881165214623356362869559344788772671 - 54522697599793330671960770036401460372320643306557419690921902132275745532057491984145417271627306477810796008325186896133811280834016900374568391119461350926150950315484395670440218591515835093710296681978589404704979097415257536373712926394936295209235730705528557979740382482568728669472506262762024418115 + 73343335730759820862424168276557188378455364194746932859119334452242397204351667075521468634584504878811519397708877900793481341374936805244543838147905729138233629520381392785546615487934984746332541509664077914284925017110178810760962547107936307755606507497148673161599046778625307341735479606680345330924 - 3139134682006157547592651040906672277921380005061269141810006055429256321959221633878169541961741900248218138775114411502837532662808043530297952616539350252554051928870111357721432132603901469038427815440436336996350392462377388983861134928361372150645856789562853515202278216965197372627524854023604103960 + 9942574918624001337994499207615494375988199733657902152750158562269858815758375860643322984461374306918232961089057025988500437278202088446653510123885116025717081410451366143602338539132329304594519855595062050612631672244432462965284107519235191158984876752051302784627772232038436828442668570476039424646 - 54582347933419024745116308668191038639071948289052738210979448058830219002935311835540027932781628996384809087686026696272325182462917787988053216786838422417164959284866948937765668805017083777350173734996219114735651970551058108482788922802793863253541282940879694260189026146246845149391868143721233702642 + 15234345174057487010702858951483261710482779040243437054376696067919241889763673445525782034419987599441927766913926312059915349974679998526387109451012097951909291104840178511881617287548517118334736180499193154935787998649290865548434137979229261802859414669673362162415057952552174841057282057836956777171 - 6771398300972550661944119809483703469096174460441766558296047648982291618724903204513366980165325899073849373889692790136657026011053938717329254114170350628485902853287357052977063856427035134936244167873455700644663266455056873987628312278304194199660197394143418128868532835457355651917175663216763929258 + 94001468934800145299413566828556911472056421316761007764519327725153699216093280314488498174637702629577599344893986315287131330623741101580257821454009546128974710378100142847157391291457721426567208475551529220049173608461624934456058574353579867818610332367638187183567915788922742807863671875519915661939 - 61804980797233715527609924368347963211766670970971341018388639616787198785480138423443137731378598701786453659341380941550365191158122699384015941312475979293203305336445360931776404128071254541488721462998513307308804258757501732126552273165520636718804143457081430301316840993403759066265064894472353376409 + 32876093556320373838261541389340639989852734497185787792514157884344151982640287005169200648054725183478456972816434418323048315799751088950208326571034552734506982096939389529018534338042118390839733649852171759404049064482936045734573962773559693937834252683080289278328420770244904791594630261553091369526 - 12002340420725608558016484461976457286744999000482879516419112959518681583252095401544589404976910459181113525405152994591498362542428998804851532686105977598627844181070954523224586224255031905599381404950450763452338512815906606510747324391961997826155853989922751732953981073229682875022819026031846653401 + 44387096971935727582649118203633227101870027330487507299011605804376378985811489577537081375655830245583256586151373445508014835268557852219140765851965116536690062033554151314840906972348864749415316691506685522932182778443302048330428191229779107004962568616281962313540614639622756481931862978638157453153 - 53486556720721390729928131772791857271772965899416358981717648418721391050570913554128375124849595677113541988412831936628842866515756572119841392246968590770013186915488519194294175393502221032719843002004794533466414580038015651954594303962059254854167901633361727930458561494563665463576000866896290870321 + 97162228555427239705817276956647678847339178811443007540677703633712781073817614870306713672311623455889051729928099411211084063677723563203305257251745656482908711076432918403446886471979300313111276664226541559573409204800379986154524719792598909072964458927700371327425857289816688463762302136753201721916 - 18814823866600670698667135802321166387638143367569006681996525365095829589613648360678810077616214360208667683513671666798855920423789167411963119653261892195213008878373626055307219796682924241846127926872400035767052428166014824379350383000713544616015392245477853721602061390705391005179192060406767757171 + 94748029353165275206781449849449216781275047128653027032637233265950226278150489922686881199288397229893431926159176844514990697657067086294599671283926796631098513764737990760401252897326714766133517380069547833710260469291880286184243680019386078518483991821585393680108336459623222980846346247897483300047 - 39032906940529819294015311809562519281152021482357014851083314432163339796866013371942782267275126891530221483594946065593647679334807282161722278767252657601642335886661505494429347022478520135991643504624220188328547179793928797967488664584747413130986695265632669423953931606085484778804493982315309788441 + 69573878592368611059597067921822498886411181169200277631506666205413593647330673845098450345192956254320712279080118247866508460566405843777720834890147986939064140687395309479384221772942302320954617622567771801624692604392156076506931244447444521995403576916066093830830588332329287813466783459071522961891 - 81400059233535218922766883833837497423537654013173500636260345471922075637701969497527207254755513368207461590650139304706785103153255585255704426250166749672979080757369498376131317161668843544761170718685769716538075484317118095674604175842317474599292036031014148183166464637549909033565554685613544061709 + 41118102811509719303651223908076447160643041990463579386640892235996890326497194092465703404141018031529353361435687855850940778144249481904807477007107795683264805471718120669596278908721022108804933854433725734090767500840590569053008331493486316337892867517006960012940607833816420098605838232492733327748 - 84399100180483987094259152912523100320312363383306191256663041003003731645544740443787568238713925626322067728352269763328426122910286523238639678188247016070467049548659091381088253625205621808543803334686197376319320900876419149459521901715842735027453773500758966457359609903215462907425565535236224703585 + 34472348513223432457209368571853288307376589947409485899240230135672876174843655363257404525998984090615695790090951607268813429532654501235576437519162494866064828623870162931967133867968316577909136517457089297921187543657514006831915158181962754956023284103963723449343366352199247072173310644994196828477 - 41419397401535233508848564268810138319268956166881679694195261557456357888027362212124563654177537218746371131730916293865699609383246756147869717068669666977920587201872350529464079384840506558995973647694183805218701360096724342120113906497360164422876039896877109662998915141437476720128852461451307347205 + 67143353146710930361570622055638285773636907706278794193313005289511113021249544873189168743419019756512518566840106842336483221118803905764198017582902345595472559590800440218221411736969900758105543386469296176433959722001815434888562465056366681781669505093377689647354989105574678944507250749944609635164 - 26002589829863897701288634888117969430163195739740565141336553603542889895509573685009363804477087909968535700240129777941380471901285280286120598256959186222680317970252353709432981744432584976066844784413748299117210179596098813693053022218359284138821194037638997598058060388357704409191194324191591716139 + 53092499658661361730441201670031617913469271323738527580053551616561819949959188193238935880573449707513554264972798769615701171316088425383203141687554381631121834759296188798111993545920909406317099807747940265775979738841693732025223621864470879376930297016997265923592443576520826960466287958424167102702 - 65181127594769141861581652074080174834174824639264425287150031609038673421511823384885194894709448204243951642841343228480335803151565679947298825714830262268314331781691104051205977293503891071618510369977500670849001332238150376932321691727524158389969818722917954919565205157607952463811580288111591983599 + 54149715596859192351123040069815300597743845664668207340874614430017789742779692446773304910684411183083993595411343203989810909768555169300718069072541959967360874408741063802544679796263624668553564868149943237100180901066876425105530719837762050299289887372782015937200483781635062153132713253682740224380 - 81380274151552474808526173069732370077544651326094437727660470541292997500388995735604093494023326528282249139863035911537892170005120698337353587758966748193661290565749569565112096088064438802890871485285626326124681907333224749181010095972806623895494056950543690277014766819655053892081940646355381236978 + 43512601108469950943844549476669357220152544768485755532966011412824171386861015257435513763305595305495511770898178063127973416058994122434646797246967302035298000343403366059689710363712799526158315678703346427872500195861162447700809231407016016215919468187618215756855678919102278505220045155546036988825 - 23730570148492187568175719752084096011024827326105977415441757613866117537435098979764093319780463563503903929468166917117122066180773078293202995947317680493244703737095972710261314759954864008875221930666505837876505283034711667568483481772369456058953849860523471529869651760277209957631378133702593332920 + 47678806101585306500603834176585955681384364585498055274605811298859093444198351609950177118038348098396730091722282646435473222810444265405285235208968106489284558488935489993021967829669521862414709900317285996179242479428976668639114709248904190470218090404283247219262554139058016839892632479788684885867 - 34544548285645589123683333309510725065549715599193020799685239673483155351156091140486464563913313976837245735758113508007942325067593453841456379974578580108672910866287167065537132842432888119311961570383664927209272528437262171840727459023670694134580836389125460724811305927011006171623854985318284149974 + 16171001275359344048760603103685529012753667226378501214514978746655919169948323884072329045084259297813139929342673251724253076110781368427893534111131715211952408522969958990545237287543734473135762750667976498621347642259361269383434120041914097535634349420754242585197467417746014175765767068631543770068 - 9331306037692398885421584726774382855958144626593491471983813480739074122388088975621188242632157146714403009230013091973621924122903730635230074487887451671294996963601308920244048962540653594678871530509083034139116174984710657567888061353798723467516928184948247906749545061749486927248557683197562042182 + 81885785343232606295663854736800821754944933926616820648307047939486927667444362032599909571050883804887006863114833078373195857947085270124864826804904202348560088212890909729985902300974959305210789811480378819862021399758060456002828227806190444791471918519037302736851689206843758335267285630286746288365 - 66592331466369845648182421309715738487990190697059068785660583437682089722817941122692938617409110018433893471126186945654904997411798171398908013066238186814460286969706679408807835602853744009934064146056315470745527076344014784267996173188796957981979309700953115771108688611852202132149344414535811919047 + 103712487391342827273066442450505504212921500963960036276786536068271444635301393916430773262922057960314115257921406806461127190147033283900537366038117018285160178216975789592676378400526172934177739493832348699336502975167162633867446010440241761979880909567441566028860517324634176190049893888037033748002 - 46672867222521703530980162527250372895489154898131788801492410678613028955678863266681925948491729474084085246164944899858787267006174296203615225207212219525318792466383851640243189773294633396724220128169460933326278095635950439530039800431583122904713337213069318731351929487354550620887639435778543941797 + 95917483105450696091550307136059280966604680670354777375984731418443318238139675200439550775312976426327028378101449970900709270049687810338425074427392972053399801606099454600691263969843028747800602740840779926490358523258625393083882795036543458277212767886951302859823738998564966408512173108534889773996 - 18125012720490763098150652097523905599203575334814935379716787842473690523658306062724396769534725548312612716667411223728979966665593179959412858520416102112786407693058435218872350108849865809263420231796124455103896931538324698917250575014575971201209227220287806304803595327648702609740747667462515401150 + 31498011456110737370511889202415722261757414418092591948331968046793919460169256920828484451682012067256848029366374120671487142387594460160960553386682750045108900259801997968442767725850017143502152586509248575726840993618414526975602423751376885968969724333294375097046566102327793363728248721315946470077 - 55395837448870951870602261476018963283513164506543917171839765716664838453625680972861963002956232618469891260306337511485362610192578087100786017152596121591690382193002028390582989204076519472170992262918410049863657635338794079907593273408176963322774069603161280942137333183524425461028961128584831311400 + 83386605158651028346242897911339925644611158779600527404547442539847394769165584765979394627163675140246654810247148812042608430968276825648432301991101010979150821911014583626446395210539843981777468590415913901175120420965995737518891747660160788923938184925205823545454632872477081618927286289643994431781 - 47125121234077740168256569842133204714301115792603692741413491934534893196668169455747769961848888688876668278681739303070823705898521022504192178668290802922340530072729255221972883119359769864693863717577666374663861361343809227422054844824351767585390801169401242681492149087909182786557989224190386564953 + 99996124958967750455434035159691034758506139060341044165231756545969102379739966363455712692583910062446794535843157093303310422481613506459486037864388018096576689745433557189457552372895911137225065535579351690505846114240199642734910546389334583874902453990562688024572095930331050842793398350839831042560 - 62674780511225188766112930599737604928027836561419108425447494601613055384745447670217401164697546867562609090127701927217536316668328060754575778556408650514414449593198257524946231927050657952090884887376080273219023967706891700656830506652196307003311475236296420738741288596080847486213179583304163597547 + 81138491614247667225278778832421096427778193105393099671633120182852141529631865226257668208954109143185747844090009426411808119308416795955447836751125355377311513231095059919295025951367195420456092711889237057373486085464016274049133135251516388524324266637357132309221081710560739474814196691535516657643 - 2889563456274328073808427462089806810653232424661365743872961140067626921456164074487295243308878561355274532946342471104266979085197366061597177574383978178814375897865452743245493166489354171540825480661153338193968156792855136454920673234528984048540261959717213907423835117923149464928951030383289496882 + 80035896220581005296550921456321760234439202438183269281038387606776625649913505188836276542986399228776824822109423939000954355504596081797159345457604404990890760685634240560847080763278747145995566729709072635428879768783377005763849905355300288586658948506519626726002259375029039300633961934461634164316 - 28162841426656089942683971491442217435398206630815949866338411840884003001142122589417701275216295891794653168900054277454901817472360785822252559034561254650087497229038750230308964874192838684441418119505567860003203635194954687514403996315761285609323469855077913296902880617424249154669251601919051046204 + 29348308435170931433694594187405492884618658238837861531117074655920178354006579426106778082459594162430778825473585699979556444513990653747710460563268333786752209039293491683647337616565503122076319523365995761324712195275088245920089037585062895700533646990422163193713368536225407867054381023763584932176 - 68851590789397417345600968820792849807935748193727235143363325628533065423368590184296725429998369762434405400278690952527931276714437675262544160246274416179771493255850978118596607808187902363129515297323249579008842023948066665929275461526199964326774756281014581072045978675503731863265486875237339448854 + 33370584332304234623924050912757798660690178220698106377592265294737290070152674962127818377676806554214321803449419070548642801995835355210029313955293756501434898545310545115714191914434996865795325827755391525283983266969692668722671930288400648529017286027640273348913590012402845343992486886206199304925 - 41972182261776187608969346689685696665935517317415275477442872347488851284362967933285068669644055512675614788260881637473759869298596012731104239572047407731539810209134378770209259996209845231268363025444907302245878262708894119242077338147970039096567484424217792851800500856186848643336027410280817143908 + 51744629806467700152307869528897249390246007031705254685732519133090713510823076719770063497191209209842837760843527460509761274886054546721605356552010891822537003973458638826870199721572542815988306239070326171730732753982086104646539528156088516251657431551817925979701330523094040849928567498407270854288 - 43017668888389803255135397984410544483339277659422800150438675934987774860281966469682207107179715995684578336017703636854539569889245138007113923285080882952471767823415194667517128089917486281716445607642971621204690861623452780239902682781909425885290947873712393148759888155794198982684304088395653207152 + 2297964101814369577780781984833785070513261929928111401521195332619773588431469761571626031142120139742899253807890831254130788212856780447392901395336174217548990102671350504799846274900428676061235067281440804038574988128421878758103801584177036222138977554787645480378910882997118382299921746582401177398 - 66112048718473356093646332696108934826651346305889233870513740388238623470076744823952728544379138577241573066116500793771019535519997029428345423887709817297872904319315565368768572865723639759003867012776410923426685730609207275253872190417134914213790053221146683227407917814889976757563917980017300936270 + 3503393086914415736158886935787612893195017912448100775040515280873628281507459066386716811749830398616806657175136761221433259176565548738747673867308867338689448999683983803583790576798463511746396474524444073958661078453801206923072102686149689735860257985686335735738322321715073042370372030594408403142 - 72945892251351896580887843369963022471952248854030449816982021943142684782615156801340395079546187758207186222201346851460395107603856600162520289800993777252951998554638158322908546593150825359542995158626547382365496508140971965416567944991480316172649224874630067560756492446522191613210568246757811685364 + 65151497244368931338794726875696447066202865952451816953848362860682702593530032336166541112061792185722176660494364990928257035772148716512886997039675756997757520038577925383804531417201000643554613604342737186919807011152200755126143756218585642144527704374226942643290752209434968788959846794775583990189 - 21247352490991717767991365289013233583632854218003165123167277683976486796344210223756132900034693389960608846795621387875389989201642014460451468064632449918422613261340053123310941090225516727686252252529098299296904614163853330599850998070294600551834735543789783046435887178892872824671187950248191299828 + 19977696252861329844321014120512631378918507639112528937148732916419325550826670707599917193723165812735804295358313747583608749537063828835362412904428711939471878424940486488222823055678553882496315205300525221072929655749376444810250919324127181443271382491844188846388589429409298481788695783071602192304 - 57530384255627986246338792881710764470911084762306731082708177329574300608229935279559580736727912348009069163046915231512622423643055514646791587741521311163847391984840771709049974475003434303186928080866928684800339042933888566069349779948737244081844250901116251247171625263709796976785732912238062670781 + 52154607976515958910138703637893298604395077421735491221982393587788414708981435391311956194506090546167097224837527186730052171358370060337057858361850516267671572923815712549003397699019745456974559916462122624689664876831196637446909769497686826764761606023401744707807186534817602839656698386405472677922 - 32270943578889313095889370057767234735052106948762501462239598206846376795934108555800940733942400451400152444214252456387795106505121684236613132173799364326224085128399271825144471558026330725572304255810107869904574793779496213844754826329209886471741709929426096827641973849074294500665458753808579250921 + 39035655358358674049874230882304123654769208378562181383632633665071172643917628079619088972278933880843321978575541724113473605151583326701933451715230119110630745382721181247389760198344851235027485509830820740978707539215324774260510145801594523342054367250358460668722795995940858307342201140903460940322 - 67966324401490090906378330435475456110337954146691556447572424614502288953700292620217636034497642991699348479361832141627098620390971924753531932712775555689671966669023769601973962685437369369363481996379996769870015703601420987077492700280487528948776582194649396974972335191251086014100782217629002931381 + 64819209436236108913417548069853393050914689416006625008175753186324240420159623118683606953051774117779238479221826038326520211368806449582678810837689045499646105848051740382586172536164085205642632015038779870104669080687601964037367164413626952404337175827237406426591904904660924682992682922969866286668 - 66306166738886690816310797772159613050452844500958651619473837012206392349358836557981642427887195906526434022636338085921377271087456594139596494008760809923677595699882744622397141263115291202279912570239989216882295767414295905000197496111695907622821500113910837179105388862048799932849796306547783550539 + 34383190435139190573219691595233920327677006138749126316324581695086363471256676475991595658069575679718650581949793331721685557537595103549325072770086540323979964623340520236126366059785956192879818228755711082871137074699525603914141577206436375138694634065129344796238255398601429033540155556605936121643 - 8433462654704994306139157116744043594770759596316058602550986033274648302953361957801700320653942927527166897920964350957742704549742989934489978267683553310693039470035562858935818268755828108325531532222723340842057575154792427664098596697450838695748027468355497305378245743716250651788268394134019761492 + 101735258676632147471776854910488589109944076651357289988079453018634410237036167605529338198267540029859704406736721851168443193141121544454362581373516720073963735436443531508970084956739223537458492251399428449116254281370344220788203598805364439029413314971283384215012916503688119135542638329568545328908 - 48760793754572420303017365541574765779791499428768661343004470514879995815458048580383692984925292158971359447415422653159835859456684988961857737391982010627938308512528006392244267521332536434766081484395534259269603835450162481458825894946074953793377699164937965396060971675987523738379480361638909154696 + 14269919341775679119926430247044471274505786183896227685405360478691910935179645538901892085830916813016169167572857488965907278833649322487619219505840996765201435212814736632516344295560857249922433068834554908830689966092452371536591365525386726357487652858934129109599072377689311642126447380381993112506 - 26050134975751024089656666645799151050944900249709841906877584213117791099849249772958871740351164812357001982815948001807502645791567641892081980707930111977483986092683391521122849205932629939748831145689571087215150845415893486818004429612998620569983676273674041118097690879034289373775697210678890493300 + 36410568062218440599454776507416934620822229857547792822071703385707688868453933716225280693813430555984053266182119094580590567354815556460803296448008427146648850321393911492642319150556652208172509150146291594052225962559545557043042763337232322492226895311000265803675457685374762622655599338095022747847 - 54784166966666449723620684376537764603488437912996143437897783540596853175383066838122491762087658391487297003224781756478443716553251996834444386968186802715885053418031315503282753738076400288975692595415530198260218333744797004742385779729934102319337908706354720820644027168684836070217030874001283807697 + 56727048359082065373651362341459411982821109833141389050918014016456834343847723185202694272797282430307334555022201788847676911728269791078715675971119707979108732584502387361773958295107365076348162671173517702772966939916291269732050773870600111731110851219516241405317845413075577874598942660298273819604 - 65716780072456936305881146627842139619235415592671754427235955496692801350603703276053658079747871720924174233614976753553914712438630449505427998915383760335495223646569439920447487356254103747529155491986859413253382508972458021108316709411719670816825167984323574788114440353593682995822785871765478891956 + 76982899793716136413986237703501709900049970155996307688774372236915761506256164929015016788879175844009718384337776229934536658641864740976573928531511884214988631701561691291758965657316395404621954932407164846970473409266862243083705873554371837377829396856813558448347248116572308969841772896834338574026 - 15131894617712256307202222675127667178365201199801845552107397788093888049445567029955813187690199404535247592882379260969637514274462016804786003607362997504125100873362796324744631781543414335220043198297997538382010445788805292877825164503289137383207309318201731733337373757696296259178189548277396522504 + 5927070498039598615407383229703362055587949968491601671124307888188405850240043040385882836999893127469282553465006947596601494529847209577599810313920677324190294058343964118825678603648104149389892164275453307367666301044826331436243879664947574245949217651793686523180960015420838721264030085359559977504 - 64092801067300667921801719860392341046140044472523115592698124481277021598733761677847114193407011727297986964499793672170126282170740478104859751851825504671964931345078989464151786735524356685581234647010990664691083148895264197916991999357053060286773313480763800848785133277287843795318057509658458590126 + 15887327507558190483984688431437572995159425670570344444802994564058602021014649839456351750159907243667111760376115466559058445246713207617989539579640913541780449571792545549845574882649552595462278824556925292195518179693590825834473452465545584829002997475705017626768188640523307779325255286167977730921 - 76504809647522325239850414545064726438970427721437069122147510030420801551226590257900324515458989622346899970629578116169207783587156349109872868477655936195807386922541022731105376662061333804180522377278238723249527288958497981699224653691455587490420270460498394182162369375252333372600060360165552766550 + 74849792313226649784144437028516180152245988029199718263939946356692782372339797699254008751924415000925802365482107190929127641965236296646215832230882603861810643986970461122253845256568873920768974823111178650249838153091054879575409840577656378445379332982563475992999590061719208237743388633565580084585 - 57653980873432003365662343427184202990038411883040074050758182586313500809776654440844146027467325083903601126147290659812092973675605025047417448995405827314366046259872610590038192991408456480402496998214148982997583370560059037384278151378280662199222429215372706033956759373149095830964427549781381231019 + 94461036032781380629908827220857201183391300840570985921833631743695465293320124334741528133523095734189393236551080124806988564541144245858834660333174854225921140180122988585789793815804530156032358226975655638985290829302588257997796517560487885892053945878386625333113620511667890416894521519463971040551 - 32203834482052876334504098037021563724408407035035631740497112106295396995583136589257359377024880878948872316522713745246106238888358146617684382960310650360922340017001091875825113126668028182462155299396070643750428871843916600412906207582874702552434788671281754479729355183656317410240451102589729053701 + 50453672476424911849501866845995999469247866270572334726897785951073540027118476154361199789577937698445818443127948666989326600374446821343083476440845843195537333531097729031588737001842589910054352552377521775895719928870042581492478561004881852681708032896191699489110998062064710470232833341888128551281 - 35724703601792680854884691428481505643144773976827691745528339717230614895041119679634836409666211810613513167735965843992413645830963897544140356664229580283606759217248058973428200706039401400372351392703779364651652918674271100739633144345383111625027440449890721133456568437843435431948784899604523226643 + 92630300877150772109222230191975597980718862342720839676026976561611768124025297481751086598401752819639417763429362972562966388109264191100982583630910006703757118748215584678706885609846060503658857580325017387641048243954352883989429403541784336340823745742788733900992279678393030429889290632594067589647 - 45371620498957655858682378723493919282085227745583659158805082629939231777145084811464603048595770726682336875155465135428040761060685387045724303869423463715124597773379328309598228794478617314863582243154233224923512653650640211819444737907328359705485178165957172431188242119728206327081056677514468653059 + 36736499441347909602248007227990345218381985570310862948330089025717086803644669930725121141417630501088032154587281654707034838525528407507646703948051003326530998423275181499844034476785900226044269562744539721400502312018285402143535998691729888585859779531928369627028361823339167001852726726675069653032 - 86547593100139970789200259269361413668001480009420399337817636144996797050368040486980549381507909259117574217928539445643349096724256068664389940804136997371124402404052155305678879183149266504354807979531276878483337903734461763253284920996829170035412825999173813722030183725426797462964165066746714678427 + 45764248922954821279472030012512831492133225774721649045669674123223639726854384956729811255100743301016786993648722746957846945814488278206321225792571475102208287034958191104591506471862941068204558346887242160560901900655022602401275202139081756363765529594700350984236966082967567473167872512286605505755 - 52489066515456191709575954144000830557306213136580461145266337521581746946863049870870738627890915065945706338503229430901152807185566606773697993496457518445833443659349758052042416504352553407580256149491035684714395023504012395691484318619750631825208383586773419781844623005826063016096779823608257721533 + 32718595912682412783031633985767260670938916504328897537306165217005582203708054757748309953135542788701841898841043696712427111391492636432699942726375855040932716068884621202465681643187660311482663733932530829339235431414381020505949999537151131635720831648817206385011939876766825394319886423584812663015 - 20930042243903713956764044590596167496686653935346800283517684244481563913951022611419264999880200874343983110568627786735993060144562848010753409896262618192556975324618909029579940720537095146745146147133347773210039634838133032735669443764253051328808627259132691916717335240850300647966488075478024214936 + 93762871093866736279520085235199115234330651710686545863007959416536696649632542250949754000176295268720616989812367831158114612467691325422642363286115228181982061059787114077363402958249831753005431031994310914982748515832589433050236620380914251108713530982610411425122117236101076833776354776052264529767 - 76143737940584232975175515238209171680342910867705350345875887895720561135424817660811868835336525159414013706324557472325518076311178697531503820304527409980311218400052804818628824863413724404505257619941078426600933440444025021928313411405781165964430578536092113986768382662900163583864061846837785811464 + 21951513413826451200114621450693035213841612092341116471653519045499918274042474590534874044335073594442255264217615118319062013063189096195475749815525770647693928055729154161886964038209430640875429462946851219466780370781840694395203383846596916850733223461780712873157457645861439513035150072297610309169 - 89202313734194801524777900310261263331352156674327164472136220902874827929567322178275037412838993264136474613880524993019572056700335554611496176950321641874456845897784076140018682677585736231564880756244691845958000453564139557258862867635991161570065199615516625152499720222709816612136781947374913964772 + 57052430836499617352975863341427965327435553556938476949650761487794252076403674064625118901170269538480515339782583831950650496180121358030231219012152021856168158627459412439047404038284701452092721976957357248962179828902442110381429947789105197828288374625761137600406378314212839661952012083258165305946 - 32530862757024086762639327692843902748862289982563311925257558457214017431203635447653793071704276901400611798821481817386675884319423764424076847587448414554302924128302956534634388989772977790446756368731160886278468235259022184889370153835904096723513256105559437224275051723959152611747554266117408987503 + 17975015005473043270594202573327537609952108630275326989599557781620753236788418394823835870711842094817630439521994952647501724699246732014212178797854420134772221753706543261014460272153432501886809345558402475806649253996737110914605699930479163721428033652668527123484525809518048727127275864179758532938 - 40215750166222995909571165639690258374520851587437800853148973034057239331386227747523884483464827985468792344482000139120658397855131053917404187077731258463998341939700006540851350856033359031561713757603170058108713354441567311694145049231848686471012568562037673504008276639527155128115355832634898973290 + 67754987769496207358298239435125860971878329459874902945852340806312666692580967795567372093708737425125862569615991902462337295630859380038935587328545724676484109115420440196071709399922027324815329359678925790249883679913354436017465579674108983715220647250849484773174719617940041598563371021581249944940 - 14836579953055266648279978081643966943253335936087503810730959403179303046068494670759285429174591546739192990311474519246820439526531991860168366058045698887649171621043284679735195391534392832603235215691678925922970869554739196912819929467894931721877470996089555900282890354299787682186574435012078258713 + 81577988854606417496692013924881806004515124583391407730875523196571445605429230886843019504881910315504430504654635864984919727650718020278247226423969714562826531167580919502606896519418987201516847081041475099429039737587786931286103944999524460038156025103825879003060922710934137925072891063804847231986 - 18655135801824375056757772262338396623556624885178092662381753533782743905896514260644182344950188898346942559936049725453562097650162570736719645312765756407749665319429192795628410106427626372869197732360896661573536437381992890893271525325035034398377229239205284312734596200376913852602784922451827857372 + 67701583986849474688101848356172272047745836524447317474102693120647916041301443146647938683895356320309994176221256647732721727338796835751865765473818848865265091647638111472479380224719391421129050186727321382946313751935442688591282543676641576575394268664218846558645417170981757957106398367313980600405 - 51525559057916528368564766914285311836150258041515331641213209034430933486897077827215719116833929526372171554531755287197575642751740652521981175182672045309112955356173487789103539395477015965796698654655167175705282526391615139546526567666435995343397997987451125133757181497864746004621673274863983408172 + 21301118146264140537209680643596835172154889558878545407081479082727132153986538070496378583572426632975221310411504725635621504003908302266322726096118616704309317769368321467358927653317925139321027878872313395847544962177050551813307573359459701751283416874411214918020541249196998925114479890520158087189 - 60792129440264161441809289258580237931684703522978176159830183391667293901881903304282242748008285417021541600338980395245366583037703924844040128276044244588575807329518432949409411936249942641329503836997367212990733589505342166133858816436822243854592656574392426424814404699094115009176935241217178310975 + 90033858065644978441293769444733757939301208267607554617492323496006609824459670170013745312730102522872460060393318627873684224756363588151545028004965423069828301351129413267959817819521710227879230086107649136211189510140735622459623093695827559150712460307636883370616964552152673499038960542778368414617 - 43200274713477673821955875940175407428101748953317867280432960137255473084654781934358272513225630869075772052528602051138708347275908866458631229033313314688463528944103994991182338985744488831605453475098349456249868731300016962511419052788253525790259243366776453593536571037198891859663696314772814174168 + 43705945496598533168163070845792693757079130014851430439260996782866108926368953860066212576634324385865825352070409271100798812267603796344152034832488212451338505921579260945302538272362465891991805924712682101979735771484742605845254446670946176047766993328800794629753527700896833387565416210854269931730 - 58918319182236476445464611423297588310430065529992673421682726317889657956987832374493959354613178191549598936355097695889145906947159533551912314665607576125044710062965867006376681018446439794463237946083416573096453013454579764493217732228822870708123801267393640477739278981299883175704550530675524590868 + 4121910567404376732856908161092203403335782119467289259872760071531355213600127847787197028576463921965196240827973198032630636514909576068439856500426710976519641102823549595083831026044302707341050146198777896043457015550459772105631402633268071849303626018903300743504692320383692155701290880667513667044 - 69958204283934165052152632643085660829527327363902807982859354936080490007588169214373356503542121619374091345389427186355416667059092347500016682598459602368205951244726770992115032311811295543513130317003201202162761621565333279677465412432131501575596447303040655930649713008197335520117221618748173469294 + 39309212843032465359888219121108879358331856283210245270447623820452550009673745810327009773536643181711188102146937546936693675691689733789142881659202763441936928250398040862443429466977226391159123918624726521979930838069181936101687847397343827021578392959632318700909107678155737466984969426379479122425 - 50567123859858397960709517458523955597235003718229136640192521864534098823607073856261600537539402991063967161676065030897379209629462551698955474417147124257867294377515846062874295456288177685266004458484979526145359011873074610424420121463506610535322324154428142750461600216253229605725175378973468457518 + 100359959009934828454715201486848101659764767516491778800534640525852375120154257800672071728962703945227986379857441206433049490995687754742791685513629899770932654502545325851884827481124917642660563873143113699654086872164660150130364420133894054508267175078222485235260513742474078349524625362127834820476 - 54224085208655070824246806257711588040738112462991235525354160371422576071839701188150635036894238082284104607237598661953645250233118381002725949104256836619542140831391430832645627556867437611056679156341336327770193540062322902266594337203897585780335582761920692049229194942176217170106314225613185096752 + 95903989276828865699108303379033770852022181736911179357104208503286357700248734338035775204297066349396714664914757516715662709746520689550016993069558042450809501367278192991750570467524613822533259292172936509658563062528302995424628931037404677980384636439389810924657587841938994158158318566503584472771 - 68566212434704993174083857927674021452467513959528712666239498612251500416617663141036219902972446237169277662800884807008862449241197943442179984294814943360929847799494493340754064519045080304148674459623636073951798452184559090623914597748243462043701742795584005486093418586294070744952810122296151810869 + 48290385648099333393219529983579917372503843897088381975408770012085028754603385193510037873767510651322948647855673473229417382388172383386672679674656965396442635159529953155538656941131251747834436466780553405203973295074452068979436000358471521891336770149469747272882792907696453913623432279838548433967 - 88254548883130315906807455840056844263578802710428417227005759767984354515087284525736527698934461432705258696623485665999442494529142371205534136020971179776843650096510512999691638491679873422355053680696142187472425254371814056684390023379616839203218557767787286031439042075021353099264389753874880606505 + 16531156207279601333244675841063750451185848623834367446328875788890924065459453383057401840651247273242934373309553376787496121732664362976480120230774804034868633708351478100598500210711728449652534602235305818062981958451073217194242517279954233529579121362980400354967032496940771980135303680263517632702 - 63735824396932549537716334904519076645522180051752864452491068075614867045504123523858377931715710370458433777408802465359514925547793937517790314584735274917709618893040934739042809677395848832345680184223735300811319155641174509727700986454744204062227248473654865749446521217661792658701240915184833178682 + 3428641644885306355443064366914016386604803117296976331779852940504388615117804490981787583585069601366400550114196140156707544342776903511526929626753465562152142715941009712827111856411416585134019554375669834951345527262888155810460876378256155481189293713801453004712989781618900908537287414193322677312 - 17834321422255071446798768967308660207816712605452688777463585015795748419373421821059245755812885011136519174370647460613657015496078193407273487574608538880338070341013716726833731699080745391950573676495241886391370700698703866489760054764440365688458758223908729277113396314213972048459816232110140421916 + 90120292718366362790734228249438898048783356263227587451149050118590350494649642787475221214736115091142508647785396447937254003874161033887391652831026829808383531600707756005690906437147955768307784720741106885125165624867047679301312274591196321449183327333749070749528270890316160490240903667764670816604 - 89773776504931436823495747736090022007502645780024311712196321020887241467248647752727681685661662826356203090013350125462412191778966500414795419510351411087123461516955219652375366295891278455107388783568606923423733826412212004379860730876091433882267279813577088450694904491812637839960179876979917389702 + 37080980647577045757135010836373792533939190449236529650758884602784233435720265913111566660990658394460198880176686939682459095388458016718307737459072812618544295074333581951505529466911519586471443651753320683961026804220049371130201587377286527122081831835598151617399292341450504742072658012121274365654 - 67900304713436638478580025445185884784739501327621952647864075230115864669360840805549326057833859097794287154341277054331596630882192559656927925261681433411755594011999385888318749153704366395012562704494909057771231569758569680554016674607143097394003524057555384656936220159105833424870566006670581390688 + 49229676005576171544348617275690422148793173139492481546619869153202847606836218436008078438515144793125658539880324061689576847948004133957591966659557285234231680850031078952067717293377817498773200688046323701949895185695441295069421876672713047257017954849107644538844460256426081629543171184596382862595 - 83787579273303965535287496544253923697775397650864380097637676373798713362381932200128689445306942884325251656997714861210849874304159604884866112337113170372205701694725023603137839648980434682778814132811877018300912438185493120430132311629347461259405760946052525711227350621606881846840666743450484297855 + 95184614883439780387313851614093488071168617530523193859020065258403195865360219302353256264788036989234175182296851047087268456021388658433907885581144537531977626817275388819935607701012546394021423909226964276140000043351365110841296228054092211260590711706335247777529139791909656407329432728411586951487 - 66564084713308995201241128764163384637427901283248737913550961120619899810134981337171491071843762297108323026177401856940704877629592349806388728014487607847401627184162220745228222085490078126149422603691398441264793526085330886707163207098328946323343684768327626498368868145233326888467602850123012054550 + 35803595934563201127663255515653681402210980180913262399847330840758186797176775541383370326140294088152714005016113684840690517395862473237601937694439513061953581012192286943766965255711545300403112391106489563664484289073320234495660057271047487127876216000700698062167079542109922755727937961559725253906 - 42964675696629775980018508372020046371444775632013046158289480875044585527260846588645626597763563234247518518426094761805286196999700020730917688053079805005894477479989283876646239111275105006617782789714044862845524837377633478635323434466564919228754553984843328184543838825678406998168895279442934189980 + 52701913245645995637082641007242562929715853981390570136411119042579869634055892947778491481366665636791086991035772145889685232876455809588756516124692000310375119928673316036566072458238226728705647043344571507160715159887989016337774181078894349407140694613085125967055139798089165776071230508225219068732 - 76338636562631030536135789213632071654534276076253451300549929229141915174539297499861570817454006883773904179312072407973327240627573184819843862876233109196911641458526465417371379036352228337213559742088982874879820594058224347481782304288845986453383584755152325238520042294546867426662312181966478526794 + 24617723906117675169627126265269836891816990684373854391886184321477057137968085715134700760821808231792555898870734345107066451089037640156230630811339677173330792900685370677760801040866352993386597640983033668315638737129340501926378965126112356896666959716665906811555755596788313110779669534259080050828 - 15188234071389926222873376681804403359479797480329902612585654907444613537726508981410769412999386260502244616819261291521680909724350207930896570499015862448730060043300162588477195600958230227305404559996021627137456527069677230728401950012859447354882244561272182971038948503857813073146899419355020968952 + 13608664433762822346322610520394409972109888274953037747928719897937856284202994778796536723746684665728965860234806235770868892895607642616485423525499624207855923988908520354174228361538442337484916924568191069460092890620371802011256241863435565421126032288007442795462148783304753217759115901143392074723 - 53278834518116253742805683634925125549173802922661264328924226629107108043100707258422904646010392056626004411040212652527478677181726071312381185483945562713680767409093739350773625943478148650532388573446783814715854644725883330803290942212796598370864896505361240626499852528979812886997597007885873519368 + 6130947284323834811437091328097587856653231529356118092944898381167068890028880354595197585263704310924876836971963922076965708820752063898442746433833392123744543258963959379501050795845275403139872420862553285364884769373716922599425499512420154928304505237558058855231151530694536125478106813651392729653 - 63357798105889492585852435531948286284785122703616955952125760552702815478407128381173710115464237447114672263148419007253709609445689447098237599976738808186802718920375443755763728955282415042437967413292515895646121385358588076729807008133336405195653583132071579108327701708684574352887226755064172866097 + 67723701779459398567467394082292667525993956098467978705115572013392783894934325022651629451069363136902125707133468862179823649040479501527191888022564885885000714410349997472780864587370996555545337538145902927109251590292071749103698119410166528435283821599670953301773804382621043665894795759223925308717 - 9450965318368475588513680909593330638811137962958393525808477236865316996823306470935420046424790076128799116095416306190760016121621427295043712877610494121429803779201541038497665679747445816359064799461722135220584301832489931486581995106758747572415869422034599152254062166199017558294999443121228079599 + 27983479328803626768969143142792910556985183592678872161137232533215315356744636770940044477795795983996604579836447385058445652882420868149470785036997977577455975819797921834548082412337590127464792532783085235440395076109847389999867843498928366809410531112933533086396732944742204752566563277370285874421 - 55791200092009878357127358828374515100703837188213525162595727305472567784092800574091409993371585975309139317298945636766474395622320084098858701632534314249878929227294159765995007496394181919111433775950894058165707695498245335431575357688569033674662538757975755351031024459219267805180984114712647270339 + 25361902851488838122623685138377674870781906957068824074495334566794953852331576179451671990655636155710634552132633622421188820275367795888431422960672134323475650963385510730242100751115323690448973924307202274670862523524942176878000002198254491750306235343703865059765556282856621930761407854834095905785 - 42751490734051434319764486644339257321226986511272165817629423820544513845219832536394187698610908650065441024386221526307502313982432064472227341016354689170877318778941062536916215429640588571726692063789817927880599285392053673356273736486024762006934037813264434255934157985370425930453992199442883204478 + 55265725181325299628661763386296595587880910234087918952568765113110173286421278362310902315884179870068268404789387157750929905071820353618704986576735361273603633183347182705542541991021478720335435612723221386083007291756307449049238989617629349576665833415821679919192988129955953786568183220391846614999 - 58998271928733769412524335569999434503410405212625585535538479193647083080397718411352922583881583686430576810577669961181886579455409423176274413751812485564295706033136174852719728886502216758237258424510078189319022080721630197919046981618496070579419012025761022174335229561041877999359063177008469088717 + 41378916820247710813913162834083403446264159832614340552403530541415697867973251113886196005199916627689796920397558590515390480439448837153873480144165191716360551099164594669785678135936296897764686806542374051928698424901461892026602339182875775009916712200886298258510411209735754516284000333949370318272 - 35561499118943774527284853569058395441618043035702936355506425664549116271747220731568266034604880212114619935697723263578758047505050228226762205527685778755074873011950616680298323049108644924299008797587206808044731501425646079208082489350292952720518851185323784653556095913718014819733442545777942739134 + 93921214747375188334325225327869360591331598719167000119711227181272288856480816548587033394479366272498794169011222078717523129442457415969984622649344437029479766232940812221855343739825340360627665698620716161951371285177943753501045630540503959464797847123940541583086071961393497523749945624701291773226 - 34381980414284398503148234626963622249248635043034383453981311759631833087934507855321415009970382033662925917604441622637731537257448037451932007773795805630842176124171971580942454328272933744510839285516883511834242611448677843182149665661542713214651109116112643733480148105424894515885829487708525278186 + 78803293663731885727150740775457425153639818242010007833978408156180631083838666880709008596293565433837774963353819514878775952627025683754796830326720154239387483451180695567993412756381433411510539790395176261819083140443855734348503212510346327698261683793648753469635277429062500569490868757688469940889 - 55411750767593598034793731691333205443573917023693866603717906321813055111120282279408695603878543695304265213144023322127892649656523604611320881871378138141997166140312917657305961390549188708655701962379056662747899994877608223137165154138091900402402973351427934492706983375337345659651735765576112220129 + 36268041066577197726289508654912692085423767976579801098474686405172470261076096281414073868254466904672998606864057995330291204364420877599710944138717931849828738017416056772805150974217186487901049530318990594456675009348796351072617406363571091676080717951049811940326406336568147161259632698265546587828 - 25039653228715666228425395760193571780099194871266712431433584718412633843815557998204770119957744161717480981860002849069180646316150828656775285260089385170600398037235130015647704339020807547115303136868310836332447556179817711606850997419372522495893263958252141493909014166399344800549830568730547728621 + 34277776357101869621005591850311945788562289769127967999773487527356830125006170193104228518979989285637467625951441264727924827146643325448812657486142451821935407632177450562137460685851569373228771185833562813200139363849162978945150702567558301524614281462202773140099341242999019978492908020141807903591 - 18254667591415690531812233387664445497294630419231556900462441065147257980884842104309238136307724177874941871632810107446405227041156018610537124113641587718569617250502599924109924611405656203572082353576163605130131763326102119738397423280106360196458811558524577767041961853712350991247458499147361513922 + 96881399218214190345821774100489139823801815746619838131698414298028839544863817901375163065610289539404309543492850847714192997880573858412784843176571780513740135764351975557611278936917310248751041991690930400729062309040996083990935874646848033274722527875533524989442449254307128377320774594984724724736 - 25692534184123204018321551266628928714598471795566086995923522055036618367448089241187740505915490788034862441400132511716580683915563490107911714776747242289804296907754958002540882596382794427564196633195484972844080970685232053108610521979670494220304451489809070706346481652333536646774898426000541771611 + 30010629170365427218934177322288222747570582893535244082526385857907771477758293962801345503711468375347170543942419004942574646178475387850623878122480951539710836560259192724920869197377296594601845303261493745416084481321578960367972814598711874692014897604072776792189870068057686662247721738006418074362 - 38212146260636965217861783452511280926532472883434248121366032800703708342822236176835402180214387521608744693817638678374804605756404732109844439154651413771630722332947791321084962136719202611551345954410616232774874274294084560355193061631682401025129989642711077633880279240001651841684119818227376091361 + 100049035266302279836283767261683665239880884276090625680366419137237668730306161664070480995146288399783534575741916971801011809704327988691933793327488938023698369375472869798249406974333819195626001585655775100760829874337088207268407624133822867661421295840415920155284846589003557598203273102809989303111 - 90049924935530504204888122979880968332177989184089567820884777678085635405291095121585565936841730637930914852230070197457064160679881282750110797007635913453577519034571049079296034729291911320595465924331188572629640447488999289865678823495857362110455406935286495469223266329587118367976213801207563791830 + 78827035035539926683189668695934631164415238406439019001610833572846948227891557559738698445721618226048644835344140554772916794714571807990229324506651652292324611034488031788245145932455094790577810978186937404688044511665873111225844106760843599564648617593715824598428158888766790550967604714766143003146 - 29249635636419628874673355598074528965995708654472706535627612117288290337850480452360757967560899231367347733263354074835665700012643910977290330458700323355875727945538936821623898139115832816138436415603547691827691754732627075985975087097481778034462879123140074518328785733803015426274159950825731534807 + 91369200883741230657644607729268099202750631059496043607403098121581324455243517093632080457415329102534423856682088088905665751191184073494701989539600392678151191502781063416994696698127329585397111662068612620851720885424440823904540433670421941009618212522495346473646535891271426951141105273879591963604 - 64944979463376207018783949758777726616888291262335438855380340942028835513912635925269257065760158538682020794793711271947571824022509405087423154067385313247387006420079385049380073907930929899325574913151622898847851467871284172624062943436725723315406171373977568087105721997116401984917869228140520990491 + 39876616254337397864821878920118894672164039183120075878603713472750691927692672070686651708455162392941956155202003358711272344581392459124757158030906939763515747939242344850075372425305269771906601527630832728218330527178641612918051586597101639470232400161400047738133651849124146943652035474186619301339 - 3940004555671000850874918921548067829025235393526539311903108992391322203233962952349362781049671159350352202186059076232801390918131401640993134836699941406408610485636995039933619158020098062040281110419915646754839467673579706505754244845574058087015268654827019275856392107790099631828568046880925171783 + 78543969676194269765817715588510787775026735389108442844048269568005070159754117235800234564883702309016698577462092736920889303898720648203474263518253333865437306861670727810554581752262654518144080312752328525645670391763833034739006292770435736787137271980802845149167536822645942635588800563401287776504 - 8480054808293886305830799848032246011603681813166512088489883412969347140066714278256586693819906602710715565762839584291993809923684926473734638761086404865720161664849426201503587702706950218984005512765020963896352987924212479544013779809219207404871200677209341647628959264652485213353530378369525616645 + 74966419275416431340244550410471719332323224349308095128991064289514021394541548626785230718868631395921418440048368650630204202036037339496017833490502765182813264859559734302979026481408893820798452840632734024080339121595598164002625304273196089346281621612082949309397758195962347506309330079048423529001 - 6898442643880467181085752983893662897093307706734571364130747055673926151334937033184298980959683065611552556081313751194453567884583770988431862363875067394287583055336831230820025755577482347715484480768692116387347700293886200744905053380970727858939181097400873328093523355986112030007324399335047362399 + 9835695543496359243994580911589654434978708037291139378384840954363093930295991669621328897799315762947349869850293661252517268165092089095041739048681960695331473707828779375457451824349025017750730065293908243353500790737657679564584859082538830512669188062809395926585379896707811229584128456277070014126 - 23542664026775311783691617423789822129474991735437132129950459373742920242920782223611585991893060204327115735359608674706306627320370087813719818913145298604677459045692589216056326964621529235786607078719456407103224950374508449343461330181498443518404672929782357651536816980930381771645129026919330711605 + 71628928221577951868570308870756911662616092417883494959012576648811494485864734051222103761947191449216155504881720791770016301092333309354321385104273609397139710881450497878730530205551411371464463170626708796116577366581912600143391464500045598037118463241687512656647341181176302311203951261521090214669 - 37031668836181434426739781981164682572300946233096677131606303241665517737950169225813402093359530168949587651712055284188993213573419285494827726453011226656186337216188828266776822559648585645329777009345340052940743550127635824652410386766038611185824977636053493808896986368629100310002505298817421257027 + 30876922797548369753996826676021343021112510575162740501943870402683802106425063575399897895253089194215055799558258465260206481555173086223377545763584007494759676964633154833468088001480508010574653362059313514248991536945702221605998353598369839426023868087475621604097124366602714112941194721213517856250 - 62097816006726687658111397028246467397520519790457407534427969838803516119985999656048685947505979832360823610083943500035951291258440552998135247040766243448284851213539301616820470391415556449901668090120194770546082591180477086492268458039211148090827801595909992318085817462539704413399617635765889809594 + 12361256422902124272425288602214805716676789207222434988616961788459230071095660943328349161047179127930804410960491003908798807600548830116275321818459341031143275181166656496899474866938317984034130343195753006369081798703407070963654452101223076270822539064674654220716445496350256802201441784334108342135 - 26242310830476626033638873356803589413051111210358604306468790657570771187382901777734460414841764782210832643147126924717885409605059726319409736202225717054253626377617090788508393637637512388090220160986368365221658504671105759495739183279322961990097745519488583543867633489294155393713418518498461084570 + 59698544844697703912622970377457943060290504230101969343570439075585397073736565584294526221910927516623279098612901808966540513952903473864564458530369031598523464209346723005680062658196769442922489537293943665812852171271540377675249342603398870818128806687367977268774440085163283991495915064110621412947 - 40481505246236036413197693959335697739614509182293147121375214179588720653418350895411135783890429648979964651843932821043841493461179796496428507427679250021285548833003230606648210716496329334582377063044765864253016577415949856064634243376018619493868109884461706061269104917686560501708011176476498749467 + 88153383756355359559752171909280511011255086746360949998571532183038362362184092190433126463576534303154809319083977906393630153186252811057238711604681539128793581872598994189068516608258073217699771012419065413494781472899791966350355837343780166690939867662615689549937899257588957634941816150898457302111 - 28072205644493077880001488617423854034908593618443927905493253953261511630790830502071616684082470196820155524837367158292982279727167221149201673263898478700973080067928435736296615231144312560317554242680219667101461353932857653418043573978257983295139384758359799806515744820604346362887358152741816089482 + 22200029100785763316818697615835798276960691073607295424018893719749326278937060987363024432110123603645520192623043299603002189894648492028478272066818035991172103400490408795267416841650793097779203391128429270995318205542426606933395662005339299604582758406588925668240404845290057348659550187442037506905 - 18645025138149044666494685453888520896380850735594341489296835984071572609177731258394618890515809451928071356231356061174496573224104460188842557619264553582521500320807713824825944800334217104844205738319799428571397482495412854422004410343628329788875021481186047742274212923687631325860050697504998666715 + 42969308863094800417959205659513408170270343343004940169244033456311703923296976784353682903599343484735049607940960976126737773871715942643566346105815843510029277236526492996852491576974396386087337132792682316152187329919077027426459669305218281665462067503511285338589777305696465184828838756661283153853 - 39288572758862795711126979982652190120919816844151639546902058162124020840893237271041472988984844856399588279186843232039516974237418592889478464373830646713372424217044592573306920037914788781365120820512100694416535265355850626248831892224245921855857630808382832520303703210198985732985706823412223353284 + 89542158221204854733421338382440871511954821216327980175352481253321698205811535356767494729926349385799093044251265892843650835958899427209228339957184961151661829198852420293088874241116376183414888940616356749758438036775800014288610168918811517461107701632508931601729409282034321935600163979317751819709 - 50849876390770050471581960531167875065290848216299874041680424069379792277103231913118950168744590043437622831591162232499300861572515223962540318158739376876881425871951574413339302004466579270892473625504959295326335620554687082725430641884868392664726085711620620625634727876491725524759472652546275843190 + 69953046181669284211234905011036683191915733824813374950794700650308650066378913732019352208202251920266542602021830465725933813120748031661393903132394911702802332505786847910514471886158875539910688560439238231239599241770547904726703454096358861294146354098730353966067523376621390432255498557908066607226 - 85331070949281614610600561215805597554939744826146002231504994651400934520420640787891103751355175376236271201532682120583678022800771273772845591775631242122680768711575122732412366345846231153485587212647922242912160218551620228910012384111653812014115516697349291415311620394329780553168368327394696849456 + 14560085569890288302008935215296322220794695329647506832082380933754731979675784601664101131802618845987651187160533474657607827135705503611196238197548155967297770843559630510190144263976509068093010610558701295511727691065265850693448929637555704253300982370609816950813167609852242679088210475917248848899 - 8060090589898848859093280793970649811232306418093712122433557361475550659787634862300557386189121576402163445217277625707401663021039892769489620050654669401077136097634694291115563298087686407469314529485224247293110310487682950919529906883508984840143593102085519318920914454450319361928382625652958150169 + 76961075828245425715313658999796419166049337977060153361757885350542082765423326290883737635963990085683993587595346172529242928028027587343454061241356544231948317412865105995430238021469441108816290552385921593376587600115629969253297578230927684629792491212948577777691374687089185062391895384216068025224 - 48371864771632375472519726723406313828342451806096556694985949005021289258845373155847533847698723748158985282221332493963107808530167484731277124161478246096201315554581794354575658206427552962410193974650193333344930725180649842858997499895082659206564395492100252631036257856928056301964725488084472741848 + 67411599477610763515040017130244111261131583926256584367458301648889414646470505624043465612840089191788376870559486239924516674651055032650254896477561577421961926086854074611791756704492521800978303528985692486135154525176003469461231658147398875763716038747706381907982600230144745664337437099808469604412 - 9014983418255099166302728348063395250513482739121510028020282680041115742138117387554637385601857357840708150050086463010246811727608667713012469850582607462827180477450473442845809301416355335034534458931660210437393735831489126460524855399842466026105839887273872076148742695669735520157491851173387674352 + 40175956880758316744669020137540291904439375267710471436723828424248130735271114144960387694003572505765173742258563361904972515868282763643179558323260286259463942735940645734025129632219393464867454502493091585482147221414458510161684842447258716458108901963306861151463725742249092107173067764028480331507 - 71239151832180901158381932869403236411809439224538818938730409410586355532108333752030353618797382421037426799011121639452048876102843644619404655827890741025724565299854725630663385712697117206109000357831613479170080523764778663339168133313811112608292259250377113499415595434701121560080072248866529949894 + 7212974687429093726381562367963507598881224614897267690301541309144577820695642706302548570933707805840186367629653330677281444068653656300602032867871443806585903871555261065446067699566881742984022372710244358249065252356100102356923247921656866893177618471174879126375865068456026511823631594975317593416 - 30907994066552185147755897193975862504910980188392597071817677718045665715484278603670558836384012462230548405684757990676871289822257327244729543324267692514247810410308775102451985741846515949648358757651384315512582976452830035556491589900666095736521331103449427502965574476715042286173135534166306794668 + 10141898278776911977358685170641506019921527082410384159210078416718340645175603461810672307731508909797592245996679953541722956615779326056204855256330196626905986141962459850086585510853453679836229869189126804267100575613116137932542016662819160446661272421802328235828452371612372371484183124924536466046 - 62401868155913618405737789766761079956302682821194608480698583809236286729995795514614589235331326011109315384222816250307117942494614680320313517822272837302161200966060285453766719410025123033887078869354315119896178384882280288146465457503968983991934421335303395204242660992517204374569502732062294689472 + 39753312626308233202877237097154520561569717665252126577694353329465919162068913060912721499336777686809415172170670706042159188300851795254497563461509454201560428777093164673971524086256592054751189744938599953553019190276123029629311971753236022788855090424938984207084280344403270921512201672497176045561 - 57520590942300712909522249670831402918847263990446305854659353411849421294859801237452862182299509576622317614125474125935649383999557039208786452521582945106950817542046047772958750300489901735930996029207720658015248872855580331942542291037397471503572819681807858562324756751193671625343089169061229827550 + 35104011882473510935050068796242651350485503295485051757206094008378567575047684788433839007233120693369298745264833186880639670573829165034592431988670821216414131155348939770516945388156638538845010778069486569872317013216892612724740793478192134806507308318293401379873624161965466375937021578292799279673 - 29239853157706953805402872700319320141217298641869924556680805540676862810267254529545086804780357676525804430923860416183459352811761081034036862773843682475348532185767793603424458238755760496032163238602786202868215621005290548496030241571311116842176720329382703634223252767353316857360824279945513091809 + 100729921068222258309757390885390774083823984713623307259893736390887365383061460758751899028524522713515622085661566008937284070918208420515203051587530777942385373023304416176704922603144670820910604105901597786148455213147124316107006963030975211367658182276110391803431857323637687357375027691997576824236 - 53292372396854966595897477634895949915584894410515955566310199707680108638155077651710061254807929138127913403652347539040926133401195209454774416268854478315704477765704060985290234718990353540368925340292335051243932383073796411858109405694573312677115470291439258685362910539700946463953418703114956093269 + 47683978589196823545437037194369089858332390232848406819612591945666116005950101434348368637319324980408374480290827916694395403070350369207602692645761484760884247238951182399631118262112791411695419694918496930112854844935367935629666363941472296385489732012107169182764262178879735803102941274265899816955 - 26021160321026373134633121349915572680982891480503181399325950531628237135519702136581546814572054826298688382050912786914354804984839490402555959486605016804846731937913116379165475484722247507296609851960383705898698512171999921542278420791582635344739862767850638111820952456201553379206313967987598048656 + 38645685076774487890528979579482186681729848439683293403538594436675523199571624695058386756724231102330311319722632970174114768123039986402744492717708719585633004140993641793408100531599799907002877200240495338041290376386822062018206452305863386954755859815875800637726519344869753862837729323101502420360 - 6125457665556267741170902908887434881479578747792577476398159100949286385511271313473020054825474011966544128846569573706203667376584436781654831563266384175282737705845683679908036587557170231218170003907912382156174698499807651303342783657906029917507666084469014631263918166541170289252071614707151958285 + 79746032167852084518411229051673099020653614176319002573936665710055338863321285842171741918023343496239172169246403643470606834001783037085865068110968777242117459257169779647131738638736285574704104126076532007212497541174687066186513023772340553199707726789399376006135969647135927035086663833151506317497 - 70020171764269695748353397459286728889349085726508948280073296384930020755628350398587761630588918283401124361106066344600271234477347444034012903349391749094827925325076161115156932044415899316300403306420926406562521054783451331136064500315512134757540429622411285785043015915716085136469439195932670262579 + 14202873315228870217919072797043604530494575353718728805345425826147056219728169821178779178597059065069400688036768622503984531699846821548777015576658608237270900937407949859915220283813386083812728384076346199459977631018031007247222298187746602526039238870230102210339859746581075741990698412927677175767 - 84269641755492189194981837593196575382814169073394108818095618840316164139965965464490801768350737240640006015477437030975381528269865938662233923085423421972400966789543442000223338802169794625442028199827828947996944795191177870663801842238214881812721760377540892278083516356120366981696338393828224213195 + 92944179017897392290368048950510506763736699369675988519676435483255956990796670371702599324497364103681980850126878061291889941091914144545534234276402541370256935086379975817421399185396073908419148688812935921873022922639247746292364651589695786441414324742476775143007202487986598996212358614653779040503 - 5630075925687624055463830905079391644097739531257876520869425290141443707811126599620188076787719481377526717085728139478438266334085043849862108722655162077353203870861760817055140215238584141970716594343779469168142220670914102049055087949670907030199829827073410033685218194471348532308203558625102522456 + 14290447039016378159806855993885981672100881068460268326059681581127894235804323116923320552586950774323271140853880642991049694766367454143560879017152248415899067861739240119443414952659167947845730695501899471949028994923630754289529990676222585522673693193446643066644044001130902263727491631289188902265 - 54968758143072765407172871631258517586221491396700083145389348018221264733289622161008472132647515475398849820942502555674560988430612096863458017470140960127043091267048669878686641691092054302618354764004340872607736678338541193454626980233120860804042357050292175154835035306442623432990524056490102400292 + 43638184120052218318008414242336835321064925743475286046161515520265030602960075897696592975050665788319290265445112305372045779699562976741809349953608916747317037592337684688114229028959956965743375931229717521377058570074081948944840570370128379222855596655555575236377075225012308989987508653905842634225 - 69272110136407366424297079612020436251198000371532072367727960546687790062349427773407341921391285000822796308175819016710160081893294866364640383427820896561460401137531614827671339022296592582676719612998249276799776637067506482655830035698284719247017680977251819148905651995445331486638616513618513189123 + 54035045710095343350518863270333249510784420229792665480343160298973685142797795796275121610248701843782262965282459767698390620985103684191754769095565143713143111664476049529274452196340244798242672434478068424819568645298731046526711851097119113657228613755175125905666058292401782881347996948411017796646 - 36432691706477313260184367938277693349384827658377548732711964064140426150358250216642576961479679843294021858461508007081379744964327942666839986892790711784157170229871770005172164813644349496753634466221516980690852881588780012541702940117838588527821328866679611064701237193038535486871173462385485140907 + 35142120498250403284985548664563612361687012053923553640588936623220898361847552270637613716293932348575336424899812410587835713104460360789190804846864330506490488315302901879703881773465407557365433875926809190131581680478016558900410794235386584476512406516749555188156892703068378180210004888896016945721 - 32839952289142820934975442671753413658340825230276244646994693291016464773519020443559529831061818471251028718325805751447852321954452579922796173870913718590435956388213743828694120118970334542598491312175588047361395612713974731267518356580898201522041269310536736394353185154519740427997504891278787045657 + 51615823347979306381237268394489903005699631318578584735031525459726988643436109904542944269629574089948111274676215444282105060235247619292384797333929718913255230924731880147456799581222462245393141741182077660530495321686187802708664574580610223644087406124944198020922224038132544306651926543901872606090 - 30558437263465348341690513193290990856958725530824142269728525108208421789718169780728835617421181559783489636953462933460889804628790373272116453691185546945092977916741205468363923998142735470570514148408405975913551657274443581649512313420001918156936039653057471768892568213052534251606280448654420085057 + 79565433766938782181608911922489239994546236888585474231573598248244719268280454393343013674589432773775224369029205279795303426173539915507843641558166464002573596129050712194566108240875509410765392720465451382064904326130714441963014390599327428557656311471940515912221539188217311943525140122756204897775 - 28215088873004107440694440045693435499749624125610090566349918987914038636763823354564870072853582513257075585326694772805980937444240986417023502199329255719926328652511745977230072708083996060486461159106710598386954100623925870460828073881336438137127043566253101003770701312646660771644043983253957576996 + 38983008369884026338504109584837355111859164990716681640339561232241213691033617523057349532661827722177546674491904023291160320729454062786110601433753468014150715148515314716788203924911242563414376465361115038268210493315935275269318152685278085114648837052505611318411076260673078193361096056899539265288 - 62517560845273029894590734362328599029034838788356846666634129917739662624497501987847403094798411118427014236004180269304157466470664786070098461468742363440361238822080854073097371217775961266146784481179676354039871762134871968660426824927224302093655711400761514183751171532839892219839086716751774564697 + 61382774180095086401212256132682967528026941407797528235804126002598994052468787620273842276779777441466949409290304779333094394957998323781697115160565710439981469546049832159881539282771887041342700142401341285803876956618817231797626896846415485222234380471806562949356086727132269923958340622363325987795 - 77064381530795963434225384255844781727786458812153338824395032538281053580395451469677229130260463365734588876921182651404511036524939162928997712187221841576294713819051104510208947227600312187523204910391843503191723623786753113113260160483563181956853001842393878545440385037598872436833385177681713701080 + 1462854638685308077051501607184580748315686576469144070416171806561850773361889510514296340015895224657628442416545005075375947286640560949433638004462446610120731377106472908365386896366886184003950408109046785771331263650386811780465265391387186676565298546226893938977864305680298887093840365341990509981 - 12534189919566184919094196620417824518949300516588988259530919929864064073681444999492230865378404930686075660923497820464144522815473974227440293786345595521512211808481117498890963720729101931121381992604235199756987513308531728243036942577491096756980998813560657456838994434929990532019530849530800970654 + 11805428839746177691273741273172495465240776660969225280350031479208906020673128471659688983216914440063717841008226127633615266070391703455459241639770733868424528390426178856001831030123273261089216370213145440570482645144738278054178480938344223889156925471395534153388954275462349444569174005271996888299 - 79326753683451586684709231967447357530123065445123132648118656740137401157943690874763151011017842966761832156297495881742831011227639787195201958067175516692589595807583243190429649199202493931060142948587070376405504804649587348558309343979288784436232308690003201805834320789734616974520128116608515991175 + 82637100171493615998109620187669398559052398907184756205309821833034709366935036278530103901293879086930962819859238038380558888362606416561074494624028963863499482311129859718238394663603165209685246449164614942822426908926992771967637148210340577352587649453475448674132870372319340916161293555565224582034 - 89034072403975448936013638955897670034561707116858314519752247193802754897622380488296067996185535499522033653088450561928738622245556764089096572045173108394644709149239652002804865419297299068911081601762426761684081662466958439938651400153813088346325638765126097625662654123741450901530069720844725992436 + 60644048626443347771087559151059501572682284555199549407642988350798971697050023069210277544827288325000590588513675728094256370337701807788172687223836290305160100311689718503738640240166624088191509505019595539404474901985792665056911412127795252635567141644098409442497777826083538408369372916072133844585 - 43852137464248868285560474364218259814650892095077982920981255508655544874246341888280684591123886886567727567624458212596703673414374507704661562529365192322372997537232194298688113833959395163102763523598901866159271737220857799088132850224589031627769300473632378991115505580559814010539355601361573589068 + 40159368772711395867795684913579383420952257804274884626288090980551648047222037899465011386269908252980913989686497046065468073579012863743556276784214608795932855551181201797012560393926642061659016579839141563158358641576440930297439989948332052522937937276349248800528444233683388354879941900881752661802 - 21600966095340900054714070278090862466557818216543182165093856653312596301258027113785825392713909036738008665245859400650218435482847062417347615849127745246817967725815200536245467923875433080915210972559643210233573802566270542042248355355332119416645882197545960676697597450339712822598295354644193251016 + 35461589609196812235572121881642347736052589437777352297782357842119102891675156476990739746976068013581941537444057879994226473832401619060015516658629738993403980694357462434669938532811247991399440460417824962957628012281808222489719424654574514169344034783305596314517565673966284596901672577388719730560 - 12968135963716491211484902732224225796450235486440761201210206647851644449382645538017179087240141564654424904315064424559475683061903834540804644790190692164890304926140934308540144651476807940517934787742692428210690145171921969439853254373519956595848146834622859931900528763694427302388978179500829037641 + 64718348952429802295063128359331123798384298078766448425564399125739807249443000054002981039442992787516684963605382137258003885313406712529999691148960965436180761444599085959790787747393995522922177109227928530570378920991179822818486790935437689869045964006810532073861476158791238248093677025153336296449 - 55163750543686944789899518401273221473137804354833415625205722635668887809997591923711761306701903687961615434077062222621988763335444360228324553963054205453399559516731685928781756273764833549087234510838555208669190654426501711841198719085160506763610311048239129133878319483228682721768528073697290472303 + 65224657792299609554835325132337677636024343702526342266117564991258997119297321445470847458132354701861394324968904283522786730126133251921103084785760531722178228057266243961119915154882866405145616515317255588314553522947324735482549694739982377503633939761144614322289525156357739552309107863921008715782 1 @@ -3100,19 +3100,19 @@ 80 - 166838921240395165139298702917954514317916895411496444505451463882703979309146660309369342549561585162547630496825628191698089719546774050175373664468095672730559849529154559549752634444061218968539732552753417256106733271752057696072457287563249684437138108478392368272063216006754782124559665002868960445009 + 127731435125999251495897705288423823484929684183544887921635259437584843686957796976553582756352864757422540510240658243752440751758262768691783317341334493881433611306105016347938213087616244851469196680686381525285069283261461935145341401465878496248830204104557254868497512944228976669815829568560537191301 1024 0 - 20164869299917997768669187718072024880646354552754722978537028223536254092840758546986081669372998367741559119655945941023908246621736130386985382898234768850336590821811614528436828669138370807693045107896290348483552241981206673246586334644578448001400610281103595140291121491920183719310352485466450260691283779807047828557350533795435555202779227460107596771104989483908660994517282166557989682021023894577581445166106703832626723879182554691662756057491958391690603170391792721644434981401001511678603753337572683762612876115583531208907777013058353924498007182738797769335927622956356569712762901590010625336748 + 14569923138992929163346937272896772376369656980496413357304060467041635765479888796263978891017191137868554388703618479777851971697031312328651717134365991717678604406718236094173035189026186645781039197351937056254525766450803673250255823744511395025216047153347105446713795405738768918503238782397021526977190842897037460286757802552686779768246736298217461210622444571526833199873172253488771767063963694351438520774137951958509108410882971362406722616791928663355274835837917819139510624716133006669095756951653743067891512906654960090554280435465986362782218513371981196479269830489187897678969010368514728896710 - 2984347166484785886708559470918298784160020554393155291309271870398678277270101545646264774230120271732431038855849717368769610972165526646977435967656734324421488622166442500606109725906081106873457804156402285048674299839749687863268409163106522356505117994588644361590785236966127010748999069909794179677627915587326285441895415176362942894466727701873248083449926283420344590681261194315842630307678646378965669519514258683675381657090359826734884977221696371701427669449511512650841139886862893347362071064732370260086967917635761464578124530993995371593548197444330363723069706035060033522014139123690786801817 + 4461884646921920985969422276797604404950687396102378504812673539085880427194531045851380565776643881181146090225496086141693404169229060263843753014969842175545096543852153423430310510067386537678688243439679391184859589280254489727844090195785180542092858463936597428031968518186860730346968699305858373290338871748095059292956106980601859485340490721895717332070732127288013436163329026237797976309814995173250764255907776027811351089233034830452472339179784727246434981923170032698827355426194391510576835204324190034337771283004891308845970066944694965535961450604952593241740550630175228601870115014871182941394 - 22918704797560962545415302776866379078125368013841418564967959276244028162408532015832559447205247703417704719443827229697080731097305272008744577377793641141787745537023997227734827180452056585730988848264586038845788959833709398162671550708645591095710278675429718463265031205549641127588373461110535109262642343482993804266048759386206075705942721063732579471041149282777918612867942361864150952017125150560575605834845982582073393585472390522061517079171844474236835543780074878973702263346054895890851501911398755157386271949412296780290453254591416001671703437034038169256555337092238293545220485238321536086099 + 9124933609642715839140904442430709204770824143955392605029301273448899111937345009821392323574709443653477013676388361765617126052217945992815831478328715104906567886731909364378363368156537735510644713600021381036108454086099924604648186188325573635343403029009952305580427090622425787152982434277915715864585726255332653612967576623444475271855511834897967496176673545994345972770703870820866921404581484866701064218693057201590705361367479535406428796020781412689028357261423605028961342879120058044194034758612606586139712220575105797068695372106867687275732277450935512920435600177142641528638345944390148400591 0 @@ -6179,16 +6179,16 @@ - 166838921240395165139298702917954514317916895411496444505451463882703979309146660309369342549561585162547630496825628191698089719546774050175373664468095672730559849529154559549752634444061218968539732552753417256106733271752057696072457287563249684437138108478392368272063216006754782124559665002868960445010 + 127731435125999251495897705288423823484929684183544887921635259437584843686957796976553582756352864757422540510240658243752440751758262768691783317341334493881433611306105016347938213087616244851469196680686381525285069283261461935145341401465878496248830204104557254868497512944228976669815829568560537191302 - 20353315713641856476388038169887618871634324614569505221000609069054954533922439353886690265335328223343065474844922634320714950092390152202524246553915130459195681981163041970282456565565792307977922546105234187061380609724795851080701175052678969561868745518990130145430739790536398728720257729454380838581873236010960845764051635557979849262191414438795956008888350472447275510547805680048545116687765239620225134384328236789793570959062283323424902146559596854375718057867205050917556402414774121771940914369158526632609822015997913121340246253149787229118904905861692220809956414544310999996938658327275141747015 + 6333945450935873446925243602028727791514288354592130988091966481352531878849246809868203563130491879211197392108776542014218214297150163546832170396752845436432888993787795887639269176157448226101919484997274136980710762982223884672486094567123545355579202837996438671007260402481587970333026415146413678236781219884812497373537044325615620602765574572593377785789863023562763242279566228035198331996515631476188714416102026762115451972663828907601727987035999121766218834692379435454366300769045213344542515780574915581059706379690015540086217757852262731228255344078679056474317309807630389174117616992196931999542 - 22812410140290287302823314515820682669303849734180401317831622882937724847634395530036070587296507943058502604733543930821892197087473107070351519657471214330943280729415813895731349814637106335103399368650721315047545045773592173741239842804412669900419039578048536150493595461689539711422453710601962168365039767205233727576416615861321912582730371501137298703473583729018636890201419103884488212358969446248238346203001316554800472914619438882719111861197389489733756539501478103802753582086396383900187435500726717159816180623689369561964255194119124450824919872755110911660066028411366534180003537922984342097112 + 15413786901843146777768954891747507775280769823389647329767237188765915472262327193889424141787834023892398727406333882310736348874604968137623664952658207031589228119464250236995195568241249145492836958766317392069427659798243750679373878839846210181593454085644954394125022287388713726160528087727161251393429754057769119910014883404535285170125567066117372061518694978529419446675297201693017298363354138190452042162457477470551873434848869930603937332260321008116748724189176013281632113924698642709391267305446584791027954550414102723646087547327310206019799033448603165402452822043109923214816659984439444842355 - 21088485119148840893140270751970111084272034365916437342767300850844325053685302569543732206022982777870717233502392562882129032858551245294060047324008874615408416495567688502116474006060762721631272281268225915969396449911523231150993836427208064780788868488056291227988744218713869501426828916156426066793297409716141307592017146741855554074961005957702630098796904566390949386100164288944664759597602903788946537706721733445786843572587802271867827116992914011859360601868095097698928843384058109705479563042337767796520997043220432145346789883077959960155563428277701317374667325062427024525177702696565134406465 + 1683986899604904765918910349731238551712403991834239162770962786098689098691191356310075294840299797499705882982944621802721085771584006264724545083864600331529150698500805738028790601356055105940982376899591670486285815609448344788577624885690896621643223494587457797583307354520386052500893563206931912890803922007123929919236728501116046042110638152281939653757006802896748541307035515932144926015455976513969213967071139763127106604705514004937507316754660968131955697904783941312633673816815595763216188371882007720327616822617657630806165331219964789626563097389716678364086962158316836118757070212155897878802 0 diff --git a/src/secret.128.arbiter b/src/secret.128.arbiter index 6a5b0d9..737b365 100644 --- a/src/secret.128.arbiter +++ b/src/secret.128.arbiter @@ -3,35 +3,35 @@ - 155690360652223685087311216612362041247419793012950651570839862615036822838103792681889321002639737704060555513308568386200347462837775352585553099505006380177254241050749568464020185408557664637812503731701933904305228007108939263680064462713058524782890183527115928558975188740111410351764800726576014266787 + 166748968606094567353532016761008871303263529768915743421973379974803138207450950382944156266783220185334610434357554442422711917064479186379426481415909844465043636558662927551364589152564721093479627893185280962976472825347056569503985250065751583235178763252782650546835649526657981682819185483030339607379 - 149998686153696907697719057817112285395889824038788341885035028186488689127555179662891176571418012051458009418159681265069710456919014435718938869536081277802577187700921774049393741471736076512253050433401185374434599013853315839042084410130776891219467973771837319183094764015565067195964156231506695394547 + 114791450733848920072095721925370352536139534459711089755608170064861802092214002346127130430900393380609196450625209221040469571648579276752208515531626392009321408223041151018013735505704984802137952286018440876071992489691253705315142442679227681500756879007280899186563135361662046472490023728513516164579 3 0 - 3676489766588664538941997679342835114285487884344819398039275883431359468819547362972581155963984698510835684251460053267697014673243848903823085404902047992391756000709970584279309202477568780680478686932810685434533934117059753328119553201042498794148609095818579847428739602621744326102042928218891394179539278276592412958004305117469927189013949467485341577799513073637769919814362652932243061779585436168040440135455702292925738192394922320127974686997599115438580141652137915852090425796036202531557328112268359565203875332355523267673118147829016060708941830294989462739912073565729236959788102597607645896497 + 1594005138766695050159596776005921487009679994184315161436457162068295859563694147984928465190604032438789181557479422403464757339824963898796988836759083112942419971571702252660611257873390503535083802950965491469504220194715930918426744882293264062181368551983867288950794027865269818619666102259834223899883482218133039844487069141997832820088338008306658826200274422623704083392163489825711436539789135163692865830600215080254660880187303144377091231121293891856571276547893921500608255248383578542710398067867794605762845324495000381898116562436061167417094518616740193931394926897759441429798957973428043075093 - 408762053438388852864047214144348406094296300075870525506765752284695519704866757649046084226309960418673086545743126118520169471609189511052706139694109275521055961279377916725037439620730265630019099075306257939095574852136794308418888537609923719515590548769721728025294072692622363595836924110204852251972392083647452460914097829403181922470442186047454654908886124999015389431448196363082513833113128143989011758957714779397621177873198291872807755867918578745470111150113019217149728958880323636864229142730645374316648502869229327268952586419503329102614123159330562024545385391152976264561621693240704365615 + 1047188703544441665910098982473072437805245344499820811627937886613007027021100235386569944001398048787381639955708364414837842764702827147026958407696479838846481687040743206488703916806184868857454009344535843353531154852860555973757030355583888761320747706467096919235170621432895369645026436808627536344013572877684904676849389996278200702267841061402139241888748799494240052407188280355098863749420599325566996386617067208919259024635656988228454100782706698751297320261416011023467287543423601960965058407366336751318395541876183198181808530935554572394278960532711826768099253742631702998689941498540108715371 - 4280573910602064365711479633673979520594719775157117868777377949186886794222481253913226138667944103729552210746546762083178390339923675910656691162535066263743810010382411188077862026158833886978466030232070776950863308137089975691875007716027363871972459038803950218602537836674070199931513216878012751795392494451821390492414782647479746721880024686079954253877756717030499477463382393611580895717497541015595603873000754115493645782608544194116413654096476832674025089016432324352533604844404344376908308073489346338555506820230928647797354990519822208823179820283548810401919215393374851486637980532528076757986 + 190538183095290346622436322069865431081553985348039507840421311385315527760483786372023943763435055539663875358393675360198739480164373929192152622475281473214830157855351143613791177037805871830887197218851919869299060069855394918646712751510026100926079736197701392842705514617246568064712367860706809428483523813973087807729391890615086827765221458428737240421057956946379154562645082958761832848897890943686845494004794067411970737151738145847970368055119950386497244462466865161535161600087685097284217122913924761432737617781247394841101189934487092358556586793499546781577760974128852696116687758297112306877 - 140087279040957710083700221456164378855270570577692337495484125626622218841720613841262707062936591478555618454094280655803432341525727006596519730751181454813689806618832698862831448885693275845617022432388419262142499061596350839831056025641245510847597415366563079109276583793860339061843645223895924667721878912067870336345140788174272533725470507517357539617809020306342261953817926422161011315724606776685530347549469209850924792001525515694565617163494755123673105799941327400113801887829003186801682287610724036653625804421417601851902188986010305379441499893059221983998071980047267038488068712648794302232 + 3192120569628232547255780533079510662279499738568291521471648564827218275649338555095579637079629336508555961671038700782581356737849248081743101915869985834483373544804559369673521058930804873336291117834871145974248941398083923237814648902556888306060586481862611740744802745894934665754812234974141993554442590008509918212132444064430702432117784498305683007627668719868964228419281551165175326119942528925407032338827515934306797178288034788743566696998511198456485728974481278469196884528182760677488106382963346138914520729552078337100165273421322144643166714193417488083664573135029901700519321937628880296343 - 1691217127015437603918675899684993279754549104266891235043281650309240141923890558766807713020523010326398425780478511019449793983457761570645466946521187240250799298437051406147640782692914344509038399289212885321408822326774057123506680809524688715847331627873451070990864604870309415199497874833073269010906960587195483502665570000264196091440869402397235632106742756492029033310414768372311257247633381178825391156702230100151731887778329090295167477632133820197461356068392651012851178686928242607745513635300892604429659464455292860902149552096531076479226171714295396926495627535498027408185644110852744792249 + 208368305031541473688686728019924234029404731644172144629082744309381151189405584699144404282227452101306836300887824727956218750961193256048756359344697390942448263229741412630448492239834908282435118353456063881955157381694090488630771564809347730595858501845629950306766114855512085886493517790354597220735586945154171421261024504756578937901730859385434903423520932287154122356398977801232460726635815939730858481182532874206798185606220387664687305658307416131651837522532712803103977399330889761293098022899994491184388256671258701168610948184909163687596042865942805518458567804740969383676174567397159565268

- 127465945436653851322265878540633129153538529186189396396191971708073733838795758082483099421145280857825496286168402964846681021841161045025319313180487341121141415877667080973431815026375649889099833946739589656751908475287744650539886081373382547853774069718968749902061657144732312058094877239184822030443 + 154994527447760081261179902104064154871793745107436082312938677519926742351911815475813805961531821016434085844806186251681019952233027759448367190338346889146593718712437729405922748961721789011581777062633323669837087925107956501607223026718438151918620080144903685615533605229998098749443558095869090487927

- 140606704589033668883904515116475415403034206075333077119191509494317591517733751227546422701979166780770126587281117858142526577531409651748637037446156397893554287915928235091217384041600188180413944799257486302633448099824257080234930620589837646838673975029391246280580599437484317392377303986392419439539 + 112097261958471760550752555700371350910933810498273146433365511589847958176470168827897302206034111689176887777093112106807583215307289823508176310769890469741394878640794078493226471972503625327528867471125397687291153222955799460104926819424958764255553933221335662269552092678093790926990710637694164937063
diff --git a/src/secret.80.arbiter b/src/secret.80.arbiter index 9c22f1c..de3106f 100644 --- a/src/secret.80.arbiter +++ b/src/secret.80.arbiter @@ -1,37 +1,37 @@ - + - 10920825196290361573979919017621871325477378773996850640105075806008004303430566856366994394642789608719473456943556402694819754386254952818709016208993887 + 12356362929340690040520127032415614939181470487253156511754053929839367711124091264534917725546447585120674049183680834633782904580200965250234411561639667 - 10037869211273525771309704095736980063138293524228969395922447631897580584680351347509774844638325663027280026515707047838439090560364004679699651900566983 + 10778176561492614177826909193821596339916593126629858961794679625241393490723126731303951762607721998622636798063849085618059997183412674986185620221148267 3 0 - 7350683499885890693877609449498623028598590129927712493931778808997516304537639608934556582255406402812950263733344589895491026268106657326656143488426741367576700642569418306708910390157180909012268082942541816891467092768613605603384172220605163601235476161880210206307284650848854879851668715136129277409 + 1665508223032875002135051882379323525339291526109476960329320513502291453834264273571513848041600944812440583883964763188241951619016378615629406797351163033597244261923079142313659130827697515479804924170876189525827962318656425843071994061759741330697660552397876325434641813594128492576857277266192842082 - 20396094803255369540575126571725083542016079180020759616317784588871795907857546459191926087156687086322619580791321783356145449725277251389740700899053142223793483490518986713355365123946591497025923291143490895379567095590476712099625260266778056247497470703558881148428273007027354650751638932798795170379 + 2231217343704526167493402271979822823508852814434268622275978128284080589966830373577762356427599060851487082632066806948134407327599153021914530654343612979983505351535080940549902520834665022611897375720474301584720822926016476326711005370701212677912668918960907167306561308285184663379093348328267404487 - 14442321425211627388820706187833154073301915652503449851754134722361103544814002994442426314805842624723451327673825071487951232520862333006624374831700435054849115444125041812439602129437454484468725417650046457543084347458894690905560865776452257718033673282811201516994377961766108915748113289857542980367 + 6265430792202421114492623119971298113705755149298143776728752427381973439673035306244920674743412061339601524570010403712136115073620452344308554910616081506652151370715983439229852927712210962966159010571534174936325070933071945426194329957331986283424004819685136907469079806245984606027014186701040188437 - 1532560739724105686865205044641806279446295261802988332541831483046626037569626994124788872568904425989647929223034961246751972096720054533275993073627893106340067933939551616047089581087189963718333745709299309301984681470341801604914014270799566136030390133317167370865592497871166462033106881984556122798 + 26117293004632823301819675683185116088722347263668671796551249132152434267830017941789299581120610696764057875739200811236107234511363496465528908864664013241835561814756627006519179949073233435486933119847274764359473894924085314956021803137248341100657037590374208508982765195221447021774830971532083573996 - 8121353913349146341352359593952669525036016140890060281441290306212453948138615257076865698505846429911991141885713763378936166836794325013414040910555507602601388411350389850797644547414777935807669448018614618556093337948154046329093088925858628985979033083542543957249695387912683501239227315157673267384 + 31039175928049453140550512907128258957434367186338620250999144272507608955374983830695013816558905742679243152370054430611461233635033764615935996324257210875981827593555626093533080577708973322643811368175650701792980578446874519200406016920096755476959797868750868415734852839209154673003395645962854231882

- 10813485324999900146177592097822797299963398254687281335627554887928340780627413422086235596263283848693059198957832128912529668688295480313641490653023767 + 11761360510890256267720059426835222904942305034078825523525504901020581268270987104098088707561499325792947477398663223368620378227288623989564797649628739

- 13332516921360331243318168888901315236818951886426746966188457436512652721588786416570963091139812563564046441684617810387059799511611426512420146824797419 + 12157525316118398705974150990112805436568011412333415107031481693715026655150921037895345422916755141512342053469253266630917795705853025219280148934655703
diff --git a/src/secret.regular.128.arbiter b/src/secret.regular.128.arbiter index 002c81a..d95b391 100644 --- a/src/secret.regular.128.arbiter +++ b/src/secret.regular.128.arbiter @@ -3,22 +3,22 @@ - 153472649259884163631881425320990310679086093019471224583041269433385532327367735595927747997998168737611373607955128516302027167924731670755305282928441809343212376774120099602844034471714620511313976513783768260670115694166056798358519207314651846429103703103416498426760280161597001280861930186661666619767 + 126674692710129482805643767315693743976304536004326133402790796716471843464871300024348676936406177792683306495755085780343536315055508046522373848562322521858815474626750626164799708633709828915872725367415251173244450168443197961415408406057520248418536160372761803529982860438917371344077691377143373055339 - 155139567905116267925406367962087202075634988210133849726429070887558553212940671334262263820567108023108572926785633904429147129279803999848722333181812873384747775248238597397057457425935333615274699734779294324157412688052634761795967216324038637760767226006433731016745549129509165634479141509457961815199 + 168164452789727563015306605740502510650773066065718280789239995786426846152798743374252948040052766296346316966739745641246453364358858980450875127660395684338657319412419543083113697337061595783043189923691984018087636074234363257661079944246626709016196024614801279374526439813689549933365235854525826766707 1024 0 - 3019895108316930302051173695553615624413801906204689248072328247437722660993353119663682796204013793612500637040323151528386146312849687803394818419967636699171402258708231424776622452328418922490348122037811269073043350439979461802736416337228790196768171657753602584615789021415533032521102872097185477230390032140503094610964364360246795298429002432410737683689233631549036530558067469922250819348128335442132230050356102373328734882478086574659929994956741092314755990531733026459097197528257508428881675627985077453230173752461286898316486921175054994431466395276596062231359140635692099270848729553299844414834 + 3899606821594002949793739258490406176455033119640350496933825754708210421762380753507252705676750154720945447097585276854128752700681742393994065465018826607710885029027641215606271878338802596660920170130238519791432497857332918208253577079594509254167442543559650028966864128760023953872225439954074125314433571276503303740906738759003792746174024278313806028045566317371550628822899221581284008142958714574670022489488792592326353724194095285132660225194230963867831176186918668003429143136573151767294683752110789156955822174393524298570074797495076848933412112466620904467097983652313560448954528291289512088439 - 3378254740915529906931267919643713807033864450211307803749132898273090422186144196980645682442830882566217120548145231441778345081863801905673397529195169427689935958726030691900571821961263958501190649457486708354162149730686917406599931819895640365158758602481518739544725898441534686038395996594033289665618011942078798150055284784617203525513764380432308266952788386901005947342225268986675939976549665676963760150861808828968446062391752253561511587562120399703704731221163569778802822797732675160341718922939253755745858501448574542078611912757883247521330363725575853519064064152647461817195583483687575005276 + 3385380629745864724568829091897957793608342101131522777760821359256318566272707505002259302645244520027001586645458839376470957224337964695069874581006051585567733998278002986399619175088425363752833258264717258598336434475981291305928146298099870302841294602109105070770992415155730327943478206596305663386662352261560972343323235770615771582377295774205191128384285161892416159051837821760688630926199522074940901837904986436611237914996388010823785564538696875020668783137561817623900680966639758933580504227384068707919862022818605283840312068458047395424136780059446897656982274977114743873585608298277801573141 - 1928287552529753709160269976411530093090868099353152219484079517356623609566453849203409306576593139873739695601286026148769530789646908340703525573108560510310530344798348650660188739166384314890425619728367492449879198711180348069269370520435887797107723180238323548037719274012319063415018870477399597892968040375528693442345853496102153813244779109742939871335227029191209676411578484774372934245060882604984449183682689279314267626138280319103417088946980916136834430989056397557938566559419932569988489810539757051500489976400808985256481360815228272247355658257283585530186405342037242239385020371386445727407 + 4504057129332195784904449790511072752676721074040595441138979337011275484852515304300640388843163751013572099647783591514138416554226396081888023046932676225047770248478066124168672044329062845395173965887139091506010200411860441518265356867874417941689558370135618076827143695360289813413095686075229608460638966970454766060109554095241432131087576205246498237196077895825471243525552539883802889941268613236112072985424532062369479701838531292842905276179026123125949265515464618683018028712393480907439548730738500065010008741652826122055811998075841058933323175464346939112598280193390569317434054235470399189731 0 @@ -3085,16 +3085,16 @@ - 2202452434733418355736401619257927515946965948096131313613202986238939158522115971690336166150717577281662993522693416357928013915199682646960613342696896247407557036540563974389207461874936646505929592943366356463417943244601606549836730513680602390477071035293826242907985725534767788847174902955810129150294019391802368081389059451361775215992041870049697491383399206097092383881969135319421521555377838997844029944978660400660187003823430535420681887672251917552966093729435900528250186615951664940445266253972205529013915788306757784372403267171968750345445324594119932857980648673037697590014896325459427574124 + 3099027156082262383356086458929417310223693900569720611304872371751515128831919749390411646005090521717402619263517745799521699816093966100573440027310109279418715852981065520212402670399774634105598994068722338878205767305377425339313561821207718927901399206941029526508587014228106752935267624650228871888644717952420084552128469144244530240526270911233922439230145271762000698382708234041006194357442338162880199089169808969153530853622465033965976422305439534277593390338044255561056321282305469477304286021864137039934505751374904636672152428148516966131164329518687802762619094950009358103308486933393063596895 - 5524151498770724982183809020412586751665332108053699385803524986446403142141120694960251614392444107186852541224988940064389086658655477003870861817429665338801743102016281689710514649517892405950914510450308079994847970558024238566090487011836185434905204833714793629172960626867168051494005930820824564271733647803502278599606756118558701691404561051203734021815274775586966165473017722097440244761715002960332650246298170500768302234106203920200820835904998418840500982486988041541869506935622736160150756001295521880920508636845250995157207773034690060723254781379190275219234833890679920239967309584822681280408 + 4316492962951774801380769228603977955221844638371832502502689335661557077924363140029819965346834922519525021906381212216043701281757010918916042273665149052826018363060788114949709205113848045555637126161055260260412078972433591292277135773945419570709360027126906095400467701179197262246919553426998002679623053059631540475132507636998870980307568318953542674141695093787875676848711839569134151739073157480688226715560141318393246044858749314201376327381326108926247910887519065856236612755373762267823486083959502556574348822123712562956200271332823363601724962191265289622031668831365299862778692742129624987459

- 157059661353448561896999757217868541062890055362287145109837809192924578544053438882099697733167597276827844026931583313801087097913156904758863734656091087355590173679070615637072824227591634982136949366250350251352098284022022427113329570013491389654662032654883435064016645975327349591881942990634914697267 + 169865089717622715929348931362505937716487911285587789458899972533108118889543886261148394550264640448167421528038504701649711386497588271125048707198728464234849921996844996594964678938302873286776570288463231126728639652176129746942016116047612880639404516834687734686623479556953842199294915620083550729167

- 114286656489236912319210047575382363266546053021426398945195120485233067793895432447500075831667115002795709679896626525113182692721703475929718238828283466112989732668629294148060915018975724576471948259422078368341900130775893848266098277020237527259674373458459563012177216032497049483665055618611502646407 + 176266739439571174474069884469039196301871067715472182905580467978601894159590967006157844680198594731916418882127979623801761694129346894993785397368093289813053949453551508110434429103515673399976654791919396446338109529812800641819674326847977767217550110940657732966458295067338609184047522103387879795739
diff --git a/src/secret.regular.80.arbiter b/src/secret.regular.80.arbiter index ce75c37..af835f5 100644 --- a/src/secret.regular.80.arbiter +++ b/src/secret.regular.80.arbiter @@ -1,24 +1,24 @@ - + - 13301648902472345604855278320296758283492033676756213789619889464004820156011966575878742578665759895445239424609823380681761755567272402595036319146347723 + 9819313894165788479955371851833280688606498099748045025677848546668353736051779009287350516296843216051240946419765006938138414282628870957966533532269603 - 12542724775225815400101242300005305077021104878228919823633188595685643427116528609228173939861646939817219286636488614773129248728564010204415405226608083 + 13008183311248634634771861829478234913921044755619103700877806538360490794094904471850859676260379116634404433406226786428014780896314028358541053047949367 1024 0 - 3837221525731776922987601067088351026335384827642800210830783343277108726551305959014350588969948061898192550791854386653070923233520620446887940527156621233986174689506396722757399539424764135835119590429679462824619230806676311207638106623804654237345529494716091081801920935699877656987902009612315837003 + 5864005279566564379419497814367723502685128749349304418481955435646281519787071299112517100375629884139810211188946947416422435129311766010360838826639835952958054606068371608950659824557266851904419904568711067668280578543122854971168104829123382622774429476195480704626000974215142712347156377555258026697 - 12537125519195621030260627308860574069415327295074668088162559360081309952120260225576739134209127952893361414119810368240065454176560692894930257470364966068077296516406512839200952403770158912466717537350934453208402151042590472478365874185651607122467689078104297788135983492212274778915955170910720172352 + 15720403796340423550357178083722241957229765190054386300611546062404494900814782425965926060668606292131798091009527432378699344605337478130549618533900765742170841747803914401153190281272895537960637927587668054968036359541325976414502520303303827278859494080121231141794095602734211653065840852107006054941 - 28262544606957476452158084086949446695666240793609173535420584847627254288415111878660606866838056513035640164126418369806451796599145603463235820306590697315731477856779325882847097568182324165327616066252232510158742189248855426714790367152902930794685263708705372228852359815496391438960065798099434079532 + 18723370253536087092107231852330253634176162451896837631273731318213950606780425528625334662802088831982355030632895022181496319127512784690708980165750051707434854481653781876873089423312342088766564267079655414361193803767315758732142286569234548445023003655369938046481481519460359282637510554400982885199 0 @@ -3085,16 +3085,16 @@ - 13840284938790789100410141221956138389626623415973807991951879271176771575484047032604787686673271606139564178100953623441561316286974738631485147146421183578355104201302360042516086829399976750243977542580121069108579337479985527130280748345128260559457185481349782180194611434759396058804624106216635335792 + 31184208343656945653946680134492383064172226269994511596468059970836944082584291758540809697017132142287567551068069988316371471595290812798392436633189390455904344631542464603200744082444499895343871174646349095053497058294386133080999691234430858516866388148240724114211361979544377393245326151593516843024 - 41489793121614653826323711357632171670582332365667253203274290939760130850751341184953570185271420447468491434261274405199037152068534598717189889074331393068771497022319676976592632035757285380135275197727969543164237085372030960552051716284108968205668687026927289140941724783003801808342169958255127301576 + 18889839011982767158894241512021141635474898277900639135654775361078812364353760017541730914344878749599343547714297856277162882126559983994976337968050166605059986728677125210045994678552564313138533849385528585681567874240485020462466836160792626368458820164245507797968722387418150650152207341531444245601

- 11311937287370551144669024523679749041852711806202710928128804643517237037880605167245867951682591637412786655316756253998319471676579570601539799127887707 + 10173027954902069896416306088787426924004617017140407991780788410860608156102722383849005521062387445173892492565102033896022021966461199906346838723622543

- 8100095948306339727154443236368697603215486277897187892377013500588709988819626914148544150025183255198190920846150098383114842327522181080603964365417359 + 10384378299707326533624421436051666962071809403042211595534361819204590762808052551172389661522205388580367723540959756698848731337042285150852357581359899
diff --git a/src/tool.128.bank b/src/tool.128.bank index 8a7ebb0..261de18 100644 --- a/src/tool.128.bank +++ b/src/tool.128.bank @@ -13,37 +13,37 @@ 1024 - 90000278626803335022071328928549219898885302384625475495696392398041617532339176000781540756682863545809747716887032755416794808588346560036356164136120481509791718483984106496955595265188352354812499812418959904332704497109194612021405713759146559536486405580066561793963466329799894446251125233278254413761 + 132586371625540188272717355152503291082194944773874348160730089517080215758433188246670084161603515500793161734437218894423509289350667458921271350716482458292925230825020579791114673070527334926842852620298590627765794522844957752136110446956842602639569535315869135720632207165398851660087123916784626668767 256 5 0 - 84952928249130151973298415363181405934425632655632115778308463282059463338236865931296101426297526563658948002184139200999561648482881839074260566238572499825086270525185681999983976048752950468110441838444302174536840077824800149658497720596712765680466487230694643780160720986569161115381394045270542636932 + 444711850241942269050111205816993253499463843473002504230110807671858222694554383347572694188908315571195087707305820529714310842879637068467519625933412377458243347380733774223351850987694051531205308113161321536862250254739554299924124841693266077654147765674885354260594228125335613642200900313119427348 - 83823422347071832310202241797538871759236875794554776551486639777920752474612093767516062853883710596935352567774526909794499891200906130963998176677545477005366895241130475505211733945760424486160628732385405224275208066995806606801340910680568282711150291170703079865519290710972910144663841430640073036682 + 41209700743355705032564005698395214498347760801263036391725228647895399675349309961563091880132407824781831813354255190803445597632918140497013072056912901544642784200428099098365026588833346657366789993561623223604080325091007601542298019609963768335818282029672642560574744501300661128117046024817359001171 - 35849089841289364253948714258020208204685671356192581855290227852019018717483998411587574342873073385258079658259115340273378168186154479042131730008910591593996492861747136750988844665985839953392124822100746029014207531228044262221891487246321361562775577782777086133079091066696462712996192835906944242313 + 6446456249053093712961774394830159504216368184920731966306588476349458057905082189424010275845221210118048230949644397292764394544137466107406978764846181873083683095375933965624031102370398802846797896837427933100851422401896782450351306623941971756959103392771121916978470960251274981347667713918996206728 - 44993111468035458127411254007557303514163354764312226352950806441073903717588225250519315301972483469299887688008374022117971393356091547860989811367738243460295286919643706409540086559785015845310269696573602593867769133816054050072346574989513809640700623477366965793690586571852070177920494937227461227038 + 128942009923248960202737989392555192330948309662109430333408015279051100756002214687447459166616926309107942733466318315371686086938737877455146081585461954655266849660331645493441582178573313181967415653285373999772877564781127798233564477855600314888538458827047031018920203481156313317224425513356998517395 - 47782751121904984867222975138034478658259829592117370523490446306353366571924009941190387774146363339850170365479666714437521691944370239748413195524036565698748289347186014293129251732791859921500089288180751097409013466303883577937739199270126924794903240806647241648473248286304241245639154764388575161214 + 105646044682501949175359480662828487821338614225024760040207388881353954698978011716470791029007776608699222164864942659473657227664662524379359672974579454113718951885356016174720789985679456503861201845756012281572121424844270023329653340683868555098515545228296050473146879950379143230651068209639817637098 1 1 - 58833984347066500481753679622935614690148767231727264912768190102759804491277 + 99943103275601323334379680290023552572863829986595931543298554810786122880601 128 - 1529732851269842743606688651498541651235063375097047922528069742157086152065901175156893928008071924464798570438896914537414484496691904452286113910073258123605413924828169154006478218771173871524710107131729509569405208275205170880 + 1326618518737829952594896457296731573831666075318061668513236789468585250868493936789556007769924143075274891558400451748309669686657868181944670361332155622022465687486173299989326763682367912910270126971637522343847475638855089166 @@ -55,39 +55,39 @@ 1024 - 141616585298119217169938673619272677876305616664907670349462441847709088908557544251515175474998451124985776273719472516186975914732010747332385402556781605861230647217768774351246547532123486873407558305048213544186544101822289439187078298382239897163140169395914127785862389362310917083618805462620101257137 + 99683430209219299202938906775017606724469428760930594089358427410134860618365868965004793074091319467805535748972215503524038403535258504555855034146311628672944167557855048795425950230778419329914800959299004291330197945213922372702252933746294221376666676943038735011157528710864090248805630235321387417233 1024 6 0 - 123727109476116790943807606276979081317838052696320038195918991980066492632864230426852841587692914942820131088423410904298112220663912397253955152150290232236846510050561379085907165419811686059157224902031906975841439950319087019658750534314932635772345543751326282412575589843075956716620069519309950766707 + 44374832064487549703432106936110733223763329868662976410465532166844075257057406776673624549161360987249861412044599719051898091867684286031639599197726655387219559815670638611226141829724813072055389849106845806446371521054197013515692281584194734156442408523349320037692677236600725489054906594525371744098 - 16739121827871785835444215380519805044105898801943828077420183146702251620562505157459967480939750191428737889787196437057661410936990325964940540163810527097601732711128952991104601176625485059333229818650182275857725956838887432973203079413493497365404762545005809784649881008806121874429232135314954947917 + 4630463067468923828162750583060014163210626720569193915638610638185648687072871454313570584495776843106357295879749151692425383863181535413318641399457012780863140523020442450319803861217678809327099130460454107396219723696639091046783275546878275618814275775664817225756657644407131100216751298115908131194 - 97375614112970569625132790069438867798598419085320275283540878783046350758057833265530242045591945091677132469614875083251494123223089424487413371352813662970634592209020959244089334944705716985296045040371417323190053606559785249013795448858403251609474416639759372147128274432987243250064036746349255269947 + 81502968578916182738903954868803437570755946677134177447602235141924201499139137044596035140222509670602871331791597044073071572412228544534819523226128580024545496766294194339793960293820231413658047109091660897365966097797938250791336718369379316371047772899151957904896765356935959814025957982674691345123 - 114687961738740033823889195608051804089459927982231308182683629888028268120493097845984745816632701845729587764997735825504425814728087113961943899377369172330181661859437490500588891277289700129684963041235091146245110205297670695195877570309282199688173517697376859702369996333750969206200170937896165130673 + 19530914161602779659551760133445821552317320310152365572270824124934166659722311454746309953223673997078297436243931292053801888013480083060066216140461485920045976827407762286163098778343580397538509809300097680026549826911680050446687580200949249156718366777430619222680797133560540120874109523363374682532 - 98956556245296456584577093682467520726488330699184024849705470892885919464790997973099467460411363147058204306005745127138920560984804957598832063633882251526703968694422432450762300036047912913590078648344136687298222920345966641507711224727734216915549548491251597779292132585329078814277644874144204440913 + 84981501181908958407165882058596493360698119711176806078279361144462965507837003283079265547534700328302141973542643476952659223890385025553457948180508055232705101336878525770094803887787098569156979516392327273966990531171437870101999949275825950472005389499746008518249966417744874164049226960084391812234 - 8218711316109398818437555174328187884834609897538691761989679256437380592327815751286455401090985919653442559863520717095645205034753676592015185588845079128092994088741444345604130626340515428779578880076398800383782584834593428970597993920696951877096600611130564303813235201917584729022486546946822366933 + 7893650965033577198334191201028694180475332921983002452552068231359850151359044622733422029300099432801430764455555811879002006862417563061903629164535541080083196159447478495410613617151717517389931741132158488141349634905171776801040321832649612992461489685161324965894513229375743124200392574150125896106 1 0

- 0 + 12156351937563573658659580053253823410691110073159632064873022501836009465486592594749999599277950935800838070217509230652132563179395724644794952186872179

- 0 + 8200110585906438032621304395054179270119353002269548331464070505333187116738310343642958392223816278303064396050910031983689028221128048940187204440059627 128 @@ -97,39 +97,39 @@ 1024 - 100677872533448097220099073817927225589055475630822761961661319507436767260247962574830306797547399857781154385436014063488669402763403415091104567315393691654026955705776261657176967138613165736148127307375877404250329399909273377427494681955673966773158210439868638545758901431523257149533857118548573695153 + 100372618494278207809325833745671140482141053299167545555496772471748336142814309396477676570872646968276341124341133734057291102742322081931492248898037896745834964263295089835223282406172162565851658852298315452525264953060051812464058668677471281862812603962337079805583614207759557014036925354032849631573 1024 6 0 - 5839377183160546196138319897119413819533325290939250174575593045995174313475312205945945357055929040779579042794701761682029074264866480789865312953609056002821973716478508653340243227365822718890898045365725287867056213748842174512563251603915175595564725054642781273676797433229430878858389245500824743808 + 57246992409737900342577682555961117349863309601824510421222521894627026751282629144846490064039264510887449820515663063426823074414131547854380098425944664198668967874835264912524369399371752886788019144257660363843875576550200910324966658273895956429073677736320994573692181961701978193186571833694420723781 - 9151338872365456247032717330023984817312003721470040367866914325835929050847541512893356563960746271338592363780657094336983072614756949921658742346136022440773075267625363772764997118641654642047453514303934687316270160956126363474797775317059257977306640676186579158098468551494846968917059541160224014758 + 55359130326043304577443995739779715186268346376620963862107764611659939071774803889709800904940211859512035433140926280209277737074076862166823314552825380623600695178406779285250666101690748062116072596864033546150050905356796372295859111563103651519324597646670380478259352333788125722561335356419351548649 - 15860462078020594899446488453060204383074528911840636642395812152658404384773630788846753886078318028031717908550692048913327346694538337028843405557564091344380651382749368521326303402847923001644830121385004337342100353523944772816711424003643263838603214628799049788306385167746279563912796396209660261753 + 50281672128225695904327755312403473270464636265873620911439875862842840579216593986516290933013798705736976869536862767378398131732278547320623614540644278314658335040286056564380320042634960782424531211557936644416852933930918166129586584400530703576432511573646243132971344472696494676449191196511768751040 - 59280453386284268103722404818421935125349847117062067877062879155069052841403836024105963069599655887155452164105099176021228094793764216693782009423613079455095372318275672973730755562706833809477508488161501575489132985770359851116797381555522798604015448469012986551202142312190104532872642555400431538917 + 4954009689876130900433823183239394059971025313181438225168723025500650021819168443266313593092459139668294877241958627180344247118460686185955251050098451412974392505212283916588312535306656898458413369812971999245044625814448902655421908545388586239806219956370126085702941241215414372775529176415068272226 - 11959326964505022176122057605248516896052345863763775335139405757193376929752494791885391469975876878766319851839438096353807580046606579780023620923841047087539991803724304310957287998745435684644513096501010121155383206845327287587823058414357025978022388111255752075553240302618911479039393027325471320781 + 35515595255709896828997760466304152492220728871829869589895003772974924553700508769181219885351038370363994580037898364522369466452803833450527848565405566973922751414158220323539740873051032498388712296543446809826888174558618629333699594826671750960039792539335312071049065457401731470572849760698057282405 - 6177579976638129693210753607638242900276262970293481477769650385199343455249855440373112796330681567779910729221138363049080433151875368596183841470489471223925643244016045037076031268774299214810121690782623205005340682907161134695923622607473741383050943010143072228547358500840387692910435578143502761692 + 53982898161884174760525264593615577676431520915620030422211324465890277781242664656285886912152301003799278505578589234713539160914623954004226071684048051930405768140214951306139171510110595301853061292778036789451353938383524392523322187090038385843323099742467194272605232422277182140459271404712596189859 1 0

- 0 + 11896551745918105362971728512744277845835439532818452881315269737992426112588024541732421368934755554982621680641446753621028215232581368061969077812779927

- 0 + 8437118640594123178620918076897688577337677623112766785827012578840671912538015040671630458384450627586876621108564469770753964000093941226835845074624499 128 @@ -139,39 +139,39 @@ 1024 - 158549598880497910400619284184066653665884514457464725056768436866603595915335001503460851844850974358715989372194927287779149005186564988331891384665053217634456737547126364758858138872586892253255394750999169616944724727592844850714668934638393746312666960759504183331319204851426992765085999107926643694481 + 179056286208052838965292614776285578832391122479516523035040871652754296525571820223688635982962783601316990610178153476124475074036124841321454348975288658062663380306451105704874611989409092134086971615401167426036221993116519591467159928284378929315318332059386710030291858650404083425005871892071186857273 1024 6 0 - 93135385672767619151614708098349472889111574862403895832900403488405262294311700071780221413175865192127505467287235249436679093528332912073950460319914480237801229576091653612981537747710960008601195559264248334535596264374321659435352642578799838762400334615105834863748637436012737070473309049538807423034 + 178377552641377500865286063648727556416404015075127401685534575975076459575504794560246301298721955859013913893640507231906329290835420911614600529224173881974520601196077215418521752161496328570548883044296041742448024685274297430678209781623977102471902189695810814984063443362479850712510121572973530768995 - 51100805918688964402505526106672810654026246094743783076423842041266350504540434099536162579888280257996838643916583635000431040359595396270367484548169882088538657541370581945648014016634266024081155709079844574500049887926900203053504468337355562894716369800630590510955477576372293377576414984286865704516 + 20769688870070165436992427339694203145292523059408806374887538935528912003699615548213392704619780037234390842067366936848278728385901533105547087225530691157902332145378484532788468916796432069325744865727857779279958043613873271149288783780319280513887160495047913315001985643689388969419602435921902916576 - 40954138852584501330557995609393362851788163581790148849132930469568667958967552504567618785551372519169424010215341566815088956328709957140638967201399600875219375387078406843464165429103571413475420280161660676675443278274258717907664987423391379274991438613260930984339735930912060988881640179932205929786 + 174791262245464645868767317839235021278766075455568196624276220286866571918403921718660783240456355740547605541359691882609396468612630630288115927266879724308965128595708829504857559201862612088203911860982726216825023258650320830660279603311065370610444214613451198710481166631253077931188456029167534479371 - 67567910533597432321299232485429791401290139019339932236975647058342373771138400522776905613039749025127200528960954291337962462027684428991102623967412192986506526414473491728042679629287568729837940385955692113018499901903221157048158330248546449889241970747356866640637156679384285844113917011752158630971 + 29430949861921363180532447370885938675197960719463985708429902998553499813907878796936758756888004352632985956057062412412857262290557262267490819588447955842941087683905824771268511538073109920236468184221145418158999188651980852958196002535495729417164668317975247134260832577524795061940668012070262660148 - 73237829702573440741759249754215968389862198041217609745558420493153015170848295065344233533687319549910089232836984105194853553144015141580533929822733376074860918542845474984944112360873464441170015339755000503279087804538873573693087194749158449305674497676544329941057553745545296134364423900244799497350 + 33823064666593497298664315122406795314149352648971525159868342766757305003383811070461423407856422008038095751430603738498258035799096142237609225846417708519893838218075447938462930393685967123434545052565320035862550253181734081559761406167043844418023672259049372762462061867104300604038115705269215470437 - 82179444756948194708930468703603675936773896864340106471506598591147013312113289913205405582188002889610362402757220689034199206170748124751053730159295889149537374801068158132723024332374266469665711966308941584660089635333076756110609522964449574631097337185494199508229283997828204144978253951475448199211 + 148058038465200793690340551348246193382881082948352221607273933659845806523220248031935813135858162670302995149394857476311437030948371832650496514019132121253661904600363352472468971446343853681200879325567745500014430783962951146409075530755861224679906402281793275989220685808705147046100986005410229853772 1 0

- 0 + 13387369053706524441052298969953816865931215541493627201932050414288871500077266522988236783752625813315396589969797844560751620685738565702270168506745819

- 0 + 13375016815456955841470279163167978032541957986847763585725171697601726229270480352604959863298180469690218668879817745445241491655372612081421695369484667 128 @@ -181,39 +181,39 @@ 1024 - 112226024163060325842497082935242911437822799361715040011764225873823841843362665021097286568627125826054818959335508843522200127557421761424207477974910332835451361279761825290721561724151982532242025782107278639207167210365399280901214574230356879066098545048360997676978954992541835427725637711352089258997 + 122472266630673589598992895062035703233848661693214725901405010631525288379574816031770542696065901636562582576773506864908929534663254247331128605764728063087768770017178540062512081945440960866895139848947409308478976883048112403100515017574348656902851568267215962238033022095687410295184090742019791113413 1024 6 0 - 71239922071560696057686325157017099561452940720553826325791509522173483093195766789627023245511877959611783139495828307887148219033725560935896850524309494654992978845037383316444089224033283522194927612931729319559092231538361639065660999098247872642416122519724346666921704520413018260380294916115859324475 + 7728944715899189434388609909724774035809842938667678317425460301603605823013640478927439541969555413709778749118826660002926674529472346548351718382698588549714060210062274800686715297407856148427378139345265348221133978168696684278480173159890783005838020735251419417910753567965053175165025017789858820644 - 104100661273376270465886769879169851505531293946822966310792246023467407855645974808863782309856374904477476292149951550740825062715024964707645151979144037592534671919520398388018624170324976513148395020892578490738063518282942080270412870732319083237028161450116841595726751222449069356050605483543771779243 + 26448003475986841497968052832575367195088016660519408677049324275770039699268051736789155417037960727921739548551366436808295399762769326861031593200532414836942831340943797676033433793694248322768289140083303407565490613002830404023055002980920011289126814582058510573151951384518941752137790627729966328601 - 110488868124325694000473049416595622980239420675299669611969175422326466813764904082172231659718170199735458215194796472884939819081256706093075218364801100605862923768360082238898809025226720468034843518384983904015745724070908862094049352305342943596509289086463976573372882658180863414903750573928633852267 + 86229288105115393213027250384970878195046658018230121981926087622908360019070695476890286000825705817855128868466090874517044630051807932688080137330506741796383851543511055620171832099182323963400791787063009161982955132748352579514479641889009556728765160794019431155612835281884746046945181179175314072101 - 25410228806705654077148682147097332357839890944247165564190684922840298388299867638438827012677532576086018749376404828171035283387647200245053023769111444077837804914597953847390409288178866420637004013666503923354082254710390384221283970252579173635674446010775881895161898242766536161821771080834657772966 + 118443298197751601243024301938618535427519013797625162067557289257443424747667332390767128609364405814370507956534181923146947118096415153388797603904285387277089456614581467531519932588788044429896623956929401613125989811394848718430770395258860135232715671961233760465960973508438597288028258187771963652303 - 8700465729485478716436679387374808038842851134149874623524593122226981420347470308842049813402269673151224856853073297143325064623726495354598387296949669243141564189391203779852508624676043820972832102539278773465602710364558074063858793656203754150771289330924164853335287990948557683276550122862479787734 + 63079025970083405739511542310056249842741383381477548746042147188133572370748015807051874328665981591645313044641075205479762053757917936684941075988549900240466490390069845305685504221361215041236490072242029131680788253507798397137448619734983297278496456464706652724192001914955923548292849880375166790857 - 4590915121025968668304639606926756883325865873477544481474572578490074803478225104926374593330488341308936918650623315112092392991210275489461309706062948223964695542976508808980472334651279799360416574108887150627444457044425727368708654119214936977048615234462350878487398563250522004179490745502733804427 + 40509648238776346975545047490038074209435447170427898755134516674702980824141055142532620643304924945704236217094826204991308792562157103171370843664395790315537507859800004916243411935772744533205257928339062171373642112948854794088844210884398436494877111172199985119678162349590861249848666085931258412086 1 0

- 0 + 9644368850153322034703315103697901051926884488301430556546617138464400206683907769487393990184694328778511476546020068068021945752432673918387223686904967

- 0 + 12698836858435435937675913359997765775785276976783023925769404814538947216761763836785592069485979944242173136025323887368624786677577164791726164185869139 128 @@ -223,39 +223,39 @@ 1024 - 110508930023534740162738784191716106396266335164397270938431638503656165107659850330942905570953139940993657700596611415015607996088094999591509442279914455127708604959099069404688874088746699227873907624992382646997626069790294936781645163137238191771425911876338378552905914927709093135968272189138379267781 + 94552121250876779226056478441985417834697549046525732037515214317098721124385587683741795285943068838272470889450545110834171450997743673526780259637641164399765807542836445604258361269046692410035177576626482842170596945096381486480085953604978737328476456016612043198968867965622421691858552300474095035157 1024 6 0 - 16190252281963301459787670341671658629584528013767349213762859480468912549003876067650185735368277305827860774447519281507342480468379511248984320380597596488155420581524852768209199457326484571591741160741133450056641461305735721099040547991891766427962276214315415989497188352902633732196066899033086212891 + 48083218856562860783737525775191328434529309725786982977533090588932781124076143659736041475811675446369495170676614042227311991610162480246804621885146024797948097897694587243264636437130851802277584364037533108489941116668460359722929037448947475873025984332615369387428734396236836178248179053324432289387 - 38826277848371273930615545685144151653881579668858046356703460477374467440986812234109754499967493373876482112740873179936925901985617887446499078394479826073834356951775431338400653339847270609580889890760782492450607831490636597980084536315344012754358523394495776843986421653605957824956062545579741203078 + 76634283139631251031930451482439094786633969169628830486414552234002484146483166767407506407205976751241526053457671304683137174566086803880644871041222985640288589016393229489142957844430267204654938648698223944585668424596705445851412046692088325329062368117357299350383261539550382410503213810360724768831 - 71646312009953726585550999318016381728894835203227651601905196263732648675495704743394057456680994475015688133021194892503509352062802874345113499510264292034852826077782353596162892893546954580749714902607471358408536121219401940038604527833559852950095486320467926298856159034774928058008762284219448719448 + 12396003202718048909550176869357200835167344522002799990717342448836637227464886796471669915677173549704514451874300300953954982243388321237604630205234035637633279054240127538882158729863053103189998107664715943383217977914655949391169809734095037466008231841791029642492622767619951904866524114245681424782 - 21874682139468327413608068754387545052399338719612361230844170368285314628799275547483736572943076800516046110251464024901652994004988699192583423511184828762535276498355160755435749895493906535665270038315334007057838458556523945211028789483453870687979556847570031469514412547221075372398639896255331415712 + 5539923707394084506717087117390496695592232635500747359889504943711791202029940555652040925097713452840277213496395608270510922111988739086756598726879548966887102615418006792507194054375683371861709247204702686528673393330441503439121615585771257714697719537117389431199585862074149372310085911201841216186 - 96485886870303326345904211454959767604603492416819624580214167931710430644807998515456945236664931372874407149454966426025549280311056741149653492504887840522444962154099454509666362392794676843546287394031538028146586973611391186630631976452692930091569234770634565514877707049005506297517217351335976772644 + 65968532979690524565399159109865869898284017329187061132541714089842101359911218133768358539795047680936832650790336463801883632609130291164095510938785421650736176533067266082084768408474334973607759685176339532668176044078942480494801077297292582190823343166661955740154699563110781755198790163430805716978 - 12785877239137418417784292919330214786540476069274047307555303653719482893838360620072099761662940232951539617367229428631511122705967065826801788799962011105574136753009905808872237581618957162579208042634433180768694671453748498981034084039730230512577739611331291227312701253806873170015239680554532602932 + 8929410934781893842920542351761290516339838143391027227969566157758346551212210108169096861146985810613153289756321515096365399229438452562850172935225676505051199564664874135916650774022233114020462038340430857303825774705427727079183433773581422911290563266734751511815134252968205031225916496632965260619 1 0

- 0 + 12626409640272974655233521254634505986113859217530798906873548183103099611375959546554379604492110745715846535234744512031965162358286807757060219473790103

- 0 + 7488440811336818363937159595177873184411792902918658739383421198307395028623162698428263224712461137857458567206419473562071318521697310662858469799194419 128 @@ -265,39 +265,39 @@ 1024 - 114320904105962694045397744642742670738048257184310093494555991444797482813541118111089781291973630159615166108623145340076966157058763576254419730586523987064937573255477687360566485912548770462482964712896247855433748205951273000550785436521127560965961207101500452024629042283206406224736658616285564030357 + 124604760543224075224703067029823671929197848568290368816278071531248699417186480889975307973142321087447654043163779310314373817531396202633137323160556385697895753637371197560517651126571956117326552395441960299276166360937411641365637714128170666757748021061815851985995399358099600530948464000050172732357 1024 6 0 - 7634980763917251336810352442357448371998689864333667880034797625983922573956604927507091153057925834966557368153665350952469635289997623199645010366672568755268366132281637350085786040653129895114097176398518818254163092526258937460259952070799536897171676497277456147895219443314951763502209309659091052046 + 85374642385284771257823631576104372768147056924874164883253839053780686027174341621883343533017782072735743106871350181141398460483873793075998118728027487068606054873854312222135302707457420590697930884900408430012501778121848164769218884832197965000311562550813948768513322057496853957945086012933955768928 - 39513914270257186999045123068986181195448982016797938866373057019566828837955513133438599189868275845622617299770436258975352809529287933910551502311896583318371095881740366452813502219840573856677630193614218375755742299659756715459463943851653507238741255733611459003393383900876162248979536493885002255277 + 109951715000613517319568467860069810650403863415999616962622233849462032087516269516115308808422392422344711580072435010666722823022715603530377444205621343005261890621173920886237616524419996303640950274964938929401949794216034721670708285807410307537304208774095446878328504393857085245159895842518397081669 - 18167369757222349874149183086362367126461854444912423618804351161500550590220283466858584901575245048167478301321712034958573217907589648518102523082969954103472047111844471497564088614618941728636204609814701518261137512280812036585646045975899141794125470429012289420146864294415569547756913918243318752134 + 113897613942613897227385400755632242796147855678163991969863715867699990348445814363632179253538407757961828124650703384323771690430094496902916699863026869603726373354595025416632525977003500517288059703060134213925130696858407196313572396734576461499925537889675832368585194225936684535814825774675818271594 - 115659157727664268206450535430401805063622559678330348748619885867341499736258484564346053283108051768579166247030304386659132072868555723898339395057157927971925643873235951706157077387599251633769178185066973826635598142353897168084539609732401905046581761008472697206388538828572770767797878372630530401 + 7126020928855387487678674994782820081171280721588220504548382853994207252414761574612270717533602534438287832704904426640097554047836373585430822304067094169963601314200955936766302620704531487418270186290467140502478905642048977091606481152460527776657066274437262112903743860557673135498824456202362431095 - 3426664709529533437391571211205253199061329661076698960247127381685666234868514959022963068658977893643991317246165092367331894188404086082503039904120328585856135644459126243353178497330006112686726485264532000169430991453593080490018030232649130523173383244316414940044730285810446847065836212299135305477 + 28704319304982437230631355216315820387776115028078205817309612642875919182450943971231372545448637321011435895481695278298527227533430029440070142783852154597895389875946571611035965006088562868353361887342978399010005933994152947285950976477013299302158959465667564151543055870642032282141512399669701684124 - 9720276364157748428375729186584353075775686541908983001018862454608298347400073748391355173902141296635314362147841513011916232556770801476014443006534901959642238002225992691396906805833800927736878352540861324108974447578594233665142983632777115139851230952161253915149829416505746009019992709649626348347 + 94385116545288685745006313511411261449412016951854864094148648114948170929374208755686282030124840944301610566544929548845042596674629788759596677932904948695542436232339591732388400574815727980732194472187560302852072006892434987271733784466225284120170184345573862472817276658753020379680128757909201180493 1 0

- 0 + 9597358002501018309121870214896018217870800796878035069254107760851644762277443459596584060261292202253797548066433643464174883558533676208438650069878923

- 0 + 12983235647847331021494993308557649154523925317581742012198005373331971836785398319725866868674038165717344426853381930807126225951081067813158445817413359 128 @@ -307,39 +307,39 @@ 1024 - 114018788189557511817784680777759550591059300446069489825990203391278774682846379925121383247445026704680855939747076538617338346952583982823150625163847912360243751931641735204142746397358989487244980883569001075104105660503422089073982203603946209495964255659336268090771693239026629518847066637797329341449 + 92667338402278150042501616331571845170553916728035435044100057040256065504286462484564859200605606351639537638200067692153833627624658309284127823039676010855431298672482526552316853836499357114282811689667233085741354835345171033926521816008894273405946326529381849176517255761872896679958965719410137872633 1024 6 0 - 105771865854712726031661312805356691041156950978664071233717840702230721173775166963435908803130293365277028420399947505708472971343434936146777505026203385690681745673746190215396150188524463510950391373552417104994016598945888250670295709770381365086544152932230892285140494283570873464274417511277726277858 + 16811849638918050357707196041977965708281779948508812087747452461640318210048722407843231825782189557782450810427679617933238834899374426352555709149349530750985291583473604357471905484577529661955836023008264742969193839994095846756647807398434006424747681519563767314229263412212943470716671982233598649422 - 56067960422996654785503196659679662304784257095572295353596495065904724904864214411957167404534503933390444473647257997043968292686758056607523867033460296191837077415497301294901578368869369840880476488916426512905326045817765043732231060238810512889645188362774849394525869257622061386047025902399957411486 + 58885675164871396171146017162515484784619548791139875240864919327966417145277963785116921012215956550942923762313051096493940189775695160566267858580994075124508420959429871606332304029906432878856949417986879035877178605192180897139164552555409945582515862076757143979626309158967397214623905109570430339616 - 76555359344532961834469727383761748263588667663975541670526178407628858671688631277865774606980738342324272796712506007955347037594215608252218446487558094405278068719697426233828695948978338404991606284163255665414548757594746306210665091019929309221874628420870709257137216644157695962606948404671774530883 + 78313914382473412665786170356493362330039144085905477110883824576655127416478576581225802910372034259178502168118482520057731459855605400355454141177724737465710455795317797057050749690825582952562593287731630723650451698245064627076719872087412545623712737338570571765968440087169043872698907874927081077861 - 97448860338293536080426214067977203384642545230487574516933699965496862196802646188108694813109456872158119087697029021789943723211502840824288861022543499621397452299411423155443449323435716318577089161392178509859404220013166899433161872516817639102994784126761826914611504520508993927516110127071353793555 + 44353657461760237924006107965806380925063513414349843041392711469913556488536732791027490710958460726040728309894307767887311757312709852005519327917263961141869470181271532151197810341309095643674076995541951200855303977317735453912469969481851102207308778763085134371637143049916350432664038803587826589668 - 39333754459659265538526105439959580098386355384151393724409360053973465878634502742658655012636443629348197646057376691378886609795106875409633567281446864754343766250188743435873546886306344018718387853638437800170990059987019086375527632585332181910853736306151318161619900142689696759878795420294633150799 + 63191677686706411065075451325037944524770770352269227650110085952842205184411082582248537168068154849796072871117393766031688195935193176655508324522062747802100124202901719531065193631269306020605398068520343217692627311881974378600699699375644522702645562717393999591546273213569688686511625264588794858942 - 62340770600149789755116185666878218403396738536592892859569892681203814186908713160885886348719267305078966166556976443038011866368088500335522559518997169439834664718165286652304289398463954725683679672008133900387070879967524926113851148447956549098233397127209776910303688311821508750738841808688984022961 + 27652205832407072812316692638518470944442957295475291784728971848700300617325041310215882904190200515282258358913505115222303725583753141504691540734992043009934166703390905035504237286974303243546757023303143754911949085074241979579452470343610112357023018098721133940051104802215521754650102873786582518475 1 0

- 0 + 10116582691417961700450409660073771821080163993540593392966288504372235050089155909865587090768071015740429923980831573662177196533033546908068144339312027

- 0 + 9159944739134999273570507299028731020005326833476187868753450219363085518454977587499939070133919505623808873000694070158656903559252933145645844495267579 128 @@ -349,39 +349,39 @@ 1024 - 145755358828725794629657224569476512892816619644030296533983977452645470112017832485255279476798424646174051887315858677594074945302422016021799731467824127362191624021497454803516739911480772154941148324780431861239176828348183403935055337558417115851468054465579102211659096249603340357997186792408089510413 + 93157218669182241490675992530576993151056529971540714396387059359186171724141659509029018057496673375724745430589386646269550119148269920362701170548242476230586768200869636627791503553887247127935915598948056541833660695015447621632102308915805855759457595752248174672016238265085118720537215599842731173481 1024 6 0 - 31523735331381975048528908771169248998373451704138540195275403351002056512371837911719890574231052620902463198358325054233883049782594600769036053959342191289602146282724390442412115041087052203520381288237161272062714625554850251131909886563148460405270347042318069277356651515553233700901811776733807993221 + 87446462010353589849746037738234397066041473308485353520558292228761982279440351484864438349240495330020592425437696919685785793208107143350457464619455468991461033208092266100997622440647061373010236248292121737230754562108067582715630848468665181694081670345632763908815931968482206657871229689506989460958 - 4856419463547700820745826759190793841701274325485230250981359113763415733004485008713948552664551916489650202249096660011827581814591723621885087405965926091857973706384714735525849416076095340486432886015064528227235173106098777452566208591266769671595049385254386712107179341222797766180010225291855300476 + 5371920121762799854663805307274467928931803539482488713998579982300346943296540013798537887678792263719765633413574049203047372443993219255970449761492609162518050585879685358159056493779021272257216677045502035242860798630295376382443183089111094958049041573618187286695690622912661979805576995484142294786 - 31126278372771606359234231911014554624034489388082366028676138643722940825165929165067089166398251984026648502966591171726229763912060018724027658449621680847861758655071966344333256823776538706716540300966280411627881332015355120657749891093002965506976878361398644291178038284164057680745379443782519744074 + 81378360108595166141754602315536604491755704238697043758045707442510949873531408936241895016195023908288422505205347691391502628187871402288416067822115977595084051625939256053609321368824929989321365961690214884892999027122683999087792024864593514390929829855011841082638494789836356873844223507607133041030 - 14505227187755127088024357096249485912310033473904690580573823596773137142463129181272166831437409332235014325772035604544897900780170315386674110053799130639907676517366386806046884983510700934353166750867929712932641292497154893019775617644759290075202353526068537558179626685810937288374235411056904506462 + 38267072007460605093022646226649253830904974117624582796149809817168470090793680581881206510714356664433778954062641981202489800121664733504370571757280047612362826025256016849008537963783691716960805848243559388372461046653234761099749619597004542806650489263676912191096870908180220417926161042166859270558 - 12591770697879890948400188490168447225201120882113455897093276083809722399686209674637490920508480142532225013763006271486178289067193021951259921168690169086395720351413746928992790068800280023014140030745978087461414486248827420092302677283587910768747115600699344909469148345176919368048135713450091879705 + 84915700860022964551345495171007866352879240088072004050514163222400719019015839857792496006221417914139406444513188151320138028620777765653670914650866905931580757496822620485139991117159813430362743832682381564303151718274674124557309714731995606931148894273370034729964486353552790602411267273089740887112 - 61963811858450059484094292226459874610628156491789118681061770657183581668334089970264680381954154464594402671493337174367454195720412385050194560857225798954395231201367739182412366239062972376674861346887183469596295917970740075776709065993546490082814731595048922758051526458335652593747622887360146590584 + 73465385450573914162870333292460394280010999377154874726178119439395665018458887558540867390535647454464513516463027161883108146373385017590161224608954678928418471159107754308115958338408278114189275959429408867213689090594608868255919833667342809714741419864644591378701510369412610456785454373134014974624 1 0

- 0 + 11972876868460753275066668486585770036484418629508842316078562629031483418581358900234477964808845988274094119408005433429985716131502349487632772118136887

- 0 + 7780687940972589315665978051594632936759069267966371943055920664881608463464192616257011149675403935035432853275767376331164649569829862304894745789920863 128 @@ -391,39 +391,39 @@ 1024 - 91159619497500033197884536815445959810175409515386487837855394240105314257873356934593868632132878001605281568188244384557179829505944147504880979013467676016416235398009487473343738074973916668769840200013444982872977779907890602171748578135333184461760418234539076233954818280793933041180932968884490908269 + 140182840369015629677444253779509392454802320870075099123427668377849033675466983060456985009733763204337800460423127911008212609447372562429098014335706464989758758740208247220281377732265746185919831902770207371875995669747914690479775278145713009649187153850562571367375647870857686415645933669998400329257 1024 6 0 - 851568058585399899937372232705434423536952847430565821565766740217001032646042191958749447838500427918671175845515895824168019446995478001439311307050713185427794346680912504202828615386316667679673330874054783503489172070360663685622061913230263919551874901320088371742057397260601282646611223691006443751 + 74455685967512838759991043750305999910403603361183393124429352295087548634063792550278083139223072256316954107311975400422338099594255999639972081273763818226105881287714634621018111690505668683540182433029581703552270786650780911280912244521550082056222427782968317532204880864580429169559407124961989279707 - 32853481178481306662809213899238190730085008930191818876938337647623384172585236018500528741630068002074355773321052999161717874566115974326843836891547682882694099906355149962039196672446849544660965770031512758879047559223876646292061992711486938453084596030346962561348683900323712583330663562482221197252 + 71098481933317389508569823052638450315420923677123524058701261064638659975025357178946016865061229212313198312082030748560444802197489378720773582152083681326388737157127068155678066123024313578023437832536817853345391300578991541431790615516076293902237223211118896078445149399495702412008571155478344357778 - 34821630985221854261082769032381272381889335079115317454594613279201651424060863976307958093345069887661788541272077905768279548978092749172436991258111611785111031639869013335062241661177501133089670418516594765359676479830500698674545744272864957111745168610586941119390624143496100355537247102220565125639 + 115110610485112803170120890450410861574735332789506157208438130110718586860547346474556536575500204293436391141549746837480167672278952099431935207514750592413620333211437374119350533399344562363227946687352699621710249905144747106242855517490419002537117779923863031017721389280577474729281675375467381798626 - 39701953805260571638469049449691835239853134691939309256700403354554836879758252676652302276665164254297831698163047921022762575660356659994728788420610448500042959049629515326684247604813383958855794143730808203410803226791390099230252998419624372655348850970634963424417793986834969073688135684887367027883 + 120330608270420765105059866265760358553479026206034965536914273126027422997441964175805966892926981299384783642394441490277394150460201516690147208336317181939038974254656090718976077645572006247799258611056018020338006491430013096063728859631805749332510316766006851947333925001066287366791726970862626291132 - 29102816744006481949922051536647157073416693426053833714560784125052861984877696461610084509770379744109649790378172039960416596777455186767557728516511071122873283107812481567613267778992249393262570114077799095283611024119101424901204459337010870960869064119548524952731647436544574215554906082308834659921 + 67539212953786831170362280216666497485098591299326042738929014343236632821022313674668368128665233026533515361422201716455042909840388453755300604586113248821093293298975026375527804693431927109520627809902308115727777408141187735844148052245177579943379084039246961911533284602081296628198055404193130343482 - 32974936530171477426558926657295070590730606099588594703485031901034392895235354214912037047196552839479577074742266989855931041464052716865470322846484487128028154869801955066047347108551355865253253586500416370694357777624538379474512556176521939937160375514993050845196770742383544826662501396150957423109 + 112319151352986482309182686404845526390525841147671287070408503736033729389413743209528546967376916627199467539007813942237692812742367671894844803642688285719773478359579239402994226436424644351759771456595365332573215315742895224090559937302371921472603333002763125960793889174407708080428577912651608328701 1 0

- 0 + 13237924258845536022467370903429005560216761805502124415245746897491664222157520847731290544684340754169134287990322205959239073554837394903803257845482543

- 0 + 10589488021533733426785614404860859276142077436554165783580698037906205094105402178674240662351883735104625400113876626148523838613328267286425534418402599 128 @@ -433,39 +433,39 @@ 1024 - 112714347547092648743627817624088578213968013751572306140005777569417788627034861548627030618210536511972670209192802693425052532524071823425541785153877392095531364840175519689871958031940426012176629731724076153477808129684217007187843243383002059060567768991081310625185556025948667300903236326347927671153 + 153151384061946112819130335133246133008687957295267397843621546909999994389152979903838543621040703741957204585362979532683591012452196507341382378765021930080594638301102581447095150079527571736299826032393569032760089515710110573763393320644209463370199325193630893641761118983295588307360421992928735239641 1024 6 0 - 41453190700847065246269778898852141912639219706248915701165628007851815942083621302391511900783289860613782906294104422830007190688668507600477793932716807567672278887509305765714280068794057434538394015116339344703501375893423066377924705073474230723019195711249481995028512130408101561137355440864266889011 + 7892700375071886213801667690949643081301660897876362862716031719252735631702246488042663317065226596719123642472889160164166752467928542946405290110100603916619860642652639874051908104321563771186198974277403372762475742407947778978713423261366968057886211939863053226416845695474626247148481144599879632770 - 96415473406497856667236110185119678021609839806444362560942490898772794655825836680251611594710297459293856136100308291899266023943624303948669941021882453080969342857718276992715105728166762740103353100224946268582284532435394981387666771302313544340616355675582128146757985518033153723015048993545771680411 + 96969751534332024137525673827305338765824331369062793244711961878338464229795343511369854914166525378159544513335008692960110239281780105946345751882081699160695192471425870929619862347261616029408965621832016372001825462464042514637488252183465735075947917168352282007926612702365709391433705971374480650330 - 5329771000113845362591261372882676498247347752026309010372759444191286820466993656801815402621479673604280095352453435140876825130762923962832777307385134557257387448392537204029000791203936139360913899555546748267799257960246583213855295127569947108519594262943400940582226834642581611875182359279188137365 + 114875699681605178113297100883725137816850022442270985408429076441164419167544283646641922160696686060996835821391125325554032812396928565692163322239663071368311305838437496947782958069105843521971767109289961823988985531772396017645122897804718943025519949475202876055846445752244455583140057649113803614259 - 70825465947181369379016766145109007631092060526829443000571323931479984439416579538946250685062921177121149520176090390069424053862437014080717521460006192745939354416571922457649873969883045662320737566496738458149568266569804262889119363706737911970041890864991893722216615934529285708102659412333240436514 + 65142979135827041975796028186758506145854632340505778500302049061619882852408057984561028536581103479186917953904089923319512041375743806093313722634211811019559763185887128205817238184749522143717887021843379119212824449556508752556588828478467790333950728028611785497198162523007873618632206089861361401340 - 73991179277760330038195415092823191193387632706282678107189783050146939524299427404575923452035567234547018641575084961229435181302012865072480304587370096188699743453085613121532257939129709105940300864243324811978033055046100048427785469341560204912813061289508780279815105705562417449080508228178367200728 + 36365653562546380774498331892233340368119440850968377366594978378206403596397349649940162495672849747856663451682615481355115460892329551644027193052781744071836000722331822907728424967318270206822200346897424772482580574472348312641051213825757952065374047265006433093383031570608989752280846790724625652114 - 31461687701241355840202272347802592236794985127490032010364094325610277487618212189243380506649234733982547483029134406617715040782953181897339929518135167288016440191503889749676267123243816545961641823288904946612888502090166210728064150949885531980896752883252889154649675823535367077881030273857334448377 + 37367464132260763212677594935535066845758607432576735529782786049728028305368775183042501847621998510706592209814132747806613258637353374842271547029492874993834491837910337348454981742243913507887896589909317221528522453457178954812875123817140250207188061720075701080035731147924455124722653493077166508317 1 0

- 0 + 11652347351815546411928608048767936237430835628552112025242875188652549195683446121582057824636748462894336452288925511118433186493764539072256929831649699

- 0 + 13143393295607830664327305287951872251956799388668596560544307288415888343206753186700563936883765295346535048622643095185041142765817463017352516628312659 128 @@ -475,39 +475,39 @@ 1024 - 90709850988183634883747146504520812305479616362544762717264767624480713843787484468715945022848706801815793588306393524025802655805229453394177222515245400623164925000957490861514300185291366427334011741079978619317279902405535111362511891805977098467575343342798240483468745456622946654384413405714727111049 + 100867277587437185905738415973319241270762549783559365763080515113732381952674153438473522936350424248510177050073173341561288174108410763783076387484742275185420071112263308649492980833108007892837870942819215088251575737730473861793336237539084855310382517708806608778283659205231502432743977016620509670369 1024 6 0 - 84919799314745735832787810125873543828065655104516783839565647691248215516359835680325809877446500234093245505337708761327514836455069648943537283941371069748836618942896405098164011082131455690036708374862628669201291724015337105884416281199271404498957591588666105937717599340402548102129688608671172346488 + 39255559716883834710996217195960790231690219648364596063642252732525253626322537184453873865040277621949489316023974802886660737439109091681259589237564079506421532205836519587245678559994523313948203934718792220230453120669778118668541975297967552943217325494302005027700187260063491922501505329489123345084 - 27592679420801014730715929720577911639178387223364096917099445894820948297106503183856084215556731845565010736083520611595677924955301145714878769981153202834608139649181574210484004057187171534099812954364473224451272658221245570585294103435378349057982473974869866578077162069304472547230546020087797051297 + 39251487206514441563334280658297769620912136371041423458186372978938177189264908183631867083771532146089831189040237231008162953455496756686803076545387981343077808092826097431496885696159376910241346660709064489706335519357501003266465818976562287434337562453673352957027238784722579421141604136610413865069 - 33829734038452341058501623833341351574562143156927976338141417157628211716738456683032489788533911482646850127137345110538297989627447238997872569111103407878351511889741396804506828238334901865903850154295339748009238515549751976866660542500739535545983390456708509155386761320270406660928912906646720547244 + 89788387309278240674496295908504187208537159799772080051192292579059805429479222048578000890516118596274242793098756842780898980765645869881610036023411374800834386223748464825899794852749054346765657959106143650692839796441237207630886842547087030398717915820598774482068967247661437905594328521425874979057 - 11124479801627523239560573811320263546870760761274494405626513519688011602709990162807279614911932381926257437778864781726042301387825810466192780508342318812522861430074353719597599129926767958390249454965081195805817855672203611757794583827186340414504862159428296513760018549704081177357871925356586429427 + 26357966711801363898328231309025314087616129417836161948306497415882603318843666161160822637115952535994405937855709900736450964992853399251490227990497967839030533819424971389267533958232849226183830101254778677749362868289847725471454616517783178514849063798868429799551121680536684866362141823781948326955 - 32880992540294033643928779972503468005205696794031699830392654616829919979722756470717860586107870645791429893323265370512750961837989273283871013146249685784109354110756530910036429057128129752940811337653870209208256903275898953200512500172584636259421754371306492955086813582817806744254291489143226383387 + 14384849599051764661772057823488151609489203006676366444227243390117693698668322782327983827142983439221014466954818465181340731717991045271712496710923417891229487421449062528271933023092771365428984997787726567732777005825539778159234635254765002400637042489824209849704387913027726439841852511942249366530 - 64488809336695391318011568983078364916500775881097605639096343959579383387461043844483578842238766681280882600828703088524166085956024741191119425065692954008717449256641788315388984961945826338689782533654764325185225279957376013706222894155012908069205181312321319521791430494808333769902714988147244616292 + 30051432193108012845512883901872689742838894686285390245961092912227053842938452415405389199460855252222500571948227564229716905666340774672571874746019951658247579047627333063178030591379609682038552274663193364087296307923630239584978473289012247558758375337308299796539977243614211858116751481256713921208 1 0

- 0 + 11871194330006119075814063164847621988250895029346062235036869017307700154221207494837479274646830156979463437583772905378112331319232584531756665421941123

- 0 + 8496809569739828636416865104250710430755229036839126522199307417003852295908536338099771857812069765678990190616829088005492474195283849698868360489389003 128 @@ -518,69 +518,69 @@ 0 - + - 256 + 2 - + - 1024 + 4 - + - 32 + 8 - + - 512 + 1 - + - 128 + 16 - + - 1 + 32 - + - 16 + 64 - + - 2 + 128 - + - 4 + 256 - + - 8 + 512 - + - 64 + 1024
@@ -674,43 +674,508 @@ 0 - + + + 1024 + + 132586371625540188272717355152503291082194944773874348160730089517080215758433188246670084161603515500793161734437218894423509289350667458921271350716482458292925230825020579791114673070527334926842852620298590627765794522844957752136110446956842602639569535315869135720632207165398851660087123916784626668767 + + 256 + + 5 + 0 + + 444711850241942269050111205816993253499463843473002504230110807671858222694554383347572694188908315571195087707305820529714310842879637068467519625933412377458243347380733774223351850987694051531205308113161321536862250254739554299924124841693266077654147765674885354260594228125335613642200900313119427348 + + + 41209700743355705032564005698395214498347760801263036391725228647895399675349309961563091880132407824781831813354255190803445597632918140497013072056912901544642784200428099098365026588833346657366789993561623223604080325091007601542298019609963768335818282029672642560574744501300661128117046024817359001171 + + + 6446456249053093712961774394830159504216368184920731966306588476349458057905082189424010275845221210118048230949644397292764394544137466107406978764846181873083683095375933965624031102370398802846797896837427933100851422401896782450351306623941971756959103392771121916978470960251274981347667713918996206728 + + + 128942009923248960202737989392555192330948309662109430333408015279051100756002214687447459166616926309107942733466318315371686086938737877455146081585461954655266849660331645493441582178573313181967415653285373999772877564781127798233564477855600314888538458827047031018920203481156313317224425513356998517395 + + + 105646044682501949175359480662828487821338614225024760040207388881353954698978011716470791029007776608699222164864942659473657227664662524379359672974579454113718951885356016174720789985679456503861201845756012281572121424844270023329653340683868555098515545228296050473146879950379143230651068209639817637098 + + + 1 + 1 + + + 99943103275601323334379680290023552572863829986595931543298554810786122880601 + + 128 + + 1326618518737829952594896457296731573831666075318061668513236789468585250868493936789556007769924143075274891558400451748309669686657868181944670361332155622022465687486173299989326763682367912910270126971637522343847475638855089166 + + 11 1 - + + + 1024 + + 99683430209219299202938906775017606724469428760930594089358427410134860618365868965004793074091319467805535748972215503524038403535258504555855034146311628672944167557855048795425950230778419329914800959299004291330197945213922372702252933746294221376666676943038735011157528710864090248805630235321387417233 + + 1024 + + 6 + 0 + + 44374832064487549703432106936110733223763329868662976410465532166844075257057406776673624549161360987249861412044599719051898091867684286031639599197726655387219559815670638611226141829724813072055389849106845806446371521054197013515692281584194734156442408523349320037692677236600725489054906594525371744098 + + + 4630463067468923828162750583060014163210626720569193915638610638185648687072871454313570584495776843106357295879749151692425383863181535413318641399457012780863140523020442450319803861217678809327099130460454107396219723696639091046783275546878275618814275775664817225756657644407131100216751298115908131194 + + + 81502968578916182738903954868803437570755946677134177447602235141924201499139137044596035140222509670602871331791597044073071572412228544534819523226128580024545496766294194339793960293820231413658047109091660897365966097797938250791336718369379316371047772899151957904896765356935959814025957982674691345123 + + + 19530914161602779659551760133445821552317320310152365572270824124934166659722311454746309953223673997078297436243931292053801888013480083060066216140461485920045976827407762286163098778343580397538509809300097680026549826911680050446687580200949249156718366777430619222680797133560540120874109523363374682532 + + + 84981501181908958407165882058596493360698119711176806078279361144462965507837003283079265547534700328302141973542643476952659223890385025553457948180508055232705101336878525770094803887787098569156979516392327273966990531171437870101999949275825950472005389499746008518249966417744874164049226960084391812234 + + + 7893650965033577198334191201028694180475332921983002452552068231359850151359044622733422029300099432801430764455555811879002006862417563061903629164535541080083196159447478495410613617151717517389931741132158488141349634905171776801040321832649612992461489685161324965894513229375743124200392574150125896106 + + + 1 + 0 + +

+ 0 +

+ + 0 + + 128 +
- + + + 1024 + + 100372618494278207809325833745671140482141053299167545555496772471748336142814309396477676570872646968276341124341133734057291102742322081931492248898037896745834964263295089835223282406172162565851658852298315452525264953060051812464058668677471281862812603962337079805583614207759557014036925354032849631573 + + 1024 + + 6 + 0 + + 57246992409737900342577682555961117349863309601824510421222521894627026751282629144846490064039264510887449820515663063426823074414131547854380098425944664198668967874835264912524369399371752886788019144257660363843875576550200910324966658273895956429073677736320994573692181961701978193186571833694420723781 + + + 55359130326043304577443995739779715186268346376620963862107764611659939071774803889709800904940211859512035433140926280209277737074076862166823314552825380623600695178406779285250666101690748062116072596864033546150050905356796372295859111563103651519324597646670380478259352333788125722561335356419351548649 + + + 50281672128225695904327755312403473270464636265873620911439875862842840579216593986516290933013798705736976869536862767378398131732278547320623614540644278314658335040286056564380320042634960782424531211557936644416852933930918166129586584400530703576432511573646243132971344472696494676449191196511768751040 + + + 4954009689876130900433823183239394059971025313181438225168723025500650021819168443266313593092459139668294877241958627180344247118460686185955251050098451412974392505212283916588312535306656898458413369812971999245044625814448902655421908545388586239806219956370126085702941241215414372775529176415068272226 + + + 35515595255709896828997760466304152492220728871829869589895003772974924553700508769181219885351038370363994580037898364522369466452803833450527848565405566973922751414158220323539740873051032498388712296543446809826888174558618629333699594826671750960039792539335312071049065457401731470572849760698057282405 + + + 53982898161884174760525264593615577676431520915620030422211324465890277781242664656285886912152301003799278505578589234713539160914623954004226071684048051930405768140214951306139171510110595301853061292778036789451353938383524392523322187090038385843323099742467194272605232422277182140459271404712596189859 + + + 1 + 0 + +

+ 0 +

+ + 0 + + 128 +
- + + + 1024 + + 179056286208052838965292614776285578832391122479516523035040871652754296525571820223688635982962783601316990610178153476124475074036124841321454348975288658062663380306451105704874611989409092134086971615401167426036221993116519591467159928284378929315318332059386710030291858650404083425005871892071186857273 + + 1024 + + 6 + 0 + + 178377552641377500865286063648727556416404015075127401685534575975076459575504794560246301298721955859013913893640507231906329290835420911614600529224173881974520601196077215418521752161496328570548883044296041742448024685274297430678209781623977102471902189695810814984063443362479850712510121572973530768995 + + + 20769688870070165436992427339694203145292523059408806374887538935528912003699615548213392704619780037234390842067366936848278728385901533105547087225530691157902332145378484532788468916796432069325744865727857779279958043613873271149288783780319280513887160495047913315001985643689388969419602435921902916576 + + + 174791262245464645868767317839235021278766075455568196624276220286866571918403921718660783240456355740547605541359691882609396468612630630288115927266879724308965128595708829504857559201862612088203911860982726216825023258650320830660279603311065370610444214613451198710481166631253077931188456029167534479371 + + + 29430949861921363180532447370885938675197960719463985708429902998553499813907878796936758756888004352632985956057062412412857262290557262267490819588447955842941087683905824771268511538073109920236468184221145418158999188651980852958196002535495729417164668317975247134260832577524795061940668012070262660148 + + + 33823064666593497298664315122406795314149352648971525159868342766757305003383811070461423407856422008038095751430603738498258035799096142237609225846417708519893838218075447938462930393685967123434545052565320035862550253181734081559761406167043844418023672259049372762462061867104300604038115705269215470437 + + + 148058038465200793690340551348246193382881082948352221607273933659845806523220248031935813135858162670302995149394857476311437030948371832650496514019132121253661904600363352472468971446343853681200879325567745500014430783962951146409075530755861224679906402281793275989220685808705147046100986005410229853772 + + + 1 + 0 + +

+ 0 +

+ + 0 + + 128 +
- + + + 1024 + + 122472266630673589598992895062035703233848661693214725901405010631525288379574816031770542696065901636562582576773506864908929534663254247331128605764728063087768770017178540062512081945440960866895139848947409308478976883048112403100515017574348656902851568267215962238033022095687410295184090742019791113413 + + 1024 + + 6 + 0 + + 7728944715899189434388609909724774035809842938667678317425460301603605823013640478927439541969555413709778749118826660002926674529472346548351718382698588549714060210062274800686715297407856148427378139345265348221133978168696684278480173159890783005838020735251419417910753567965053175165025017789858820644 + + + 26448003475986841497968052832575367195088016660519408677049324275770039699268051736789155417037960727921739548551366436808295399762769326861031593200532414836942831340943797676033433793694248322768289140083303407565490613002830404023055002980920011289126814582058510573151951384518941752137790627729966328601 + + + 86229288105115393213027250384970878195046658018230121981926087622908360019070695476890286000825705817855128868466090874517044630051807932688080137330506741796383851543511055620171832099182323963400791787063009161982955132748352579514479641889009556728765160794019431155612835281884746046945181179175314072101 + + + 118443298197751601243024301938618535427519013797625162067557289257443424747667332390767128609364405814370507956534181923146947118096415153388797603904285387277089456614581467531519932588788044429896623956929401613125989811394848718430770395258860135232715671961233760465960973508438597288028258187771963652303 + + + 63079025970083405739511542310056249842741383381477548746042147188133572370748015807051874328665981591645313044641075205479762053757917936684941075988549900240466490390069845305685504221361215041236490072242029131680788253507798397137448619734983297278496456464706652724192001914955923548292849880375166790857 + + + 40509648238776346975545047490038074209435447170427898755134516674702980824141055142532620643304924945704236217094826204991308792562157103171370843664395790315537507859800004916243411935772744533205257928339062171373642112948854794088844210884398436494877111172199985119678162349590861249848666085931258412086 + + + 1 + 0 + +

+ 0 +

+ + 0 + + 128 +
- + + + 1024 + + 94552121250876779226056478441985417834697549046525732037515214317098721124385587683741795285943068838272470889450545110834171450997743673526780259637641164399765807542836445604258361269046692410035177576626482842170596945096381486480085953604978737328476456016612043198968867965622421691858552300474095035157 + + 1024 + + 6 + 0 + + 48083218856562860783737525775191328434529309725786982977533090588932781124076143659736041475811675446369495170676614042227311991610162480246804621885146024797948097897694587243264636437130851802277584364037533108489941116668460359722929037448947475873025984332615369387428734396236836178248179053324432289387 + + + 76634283139631251031930451482439094786633969169628830486414552234002484146483166767407506407205976751241526053457671304683137174566086803880644871041222985640288589016393229489142957844430267204654938648698223944585668424596705445851412046692088325329062368117357299350383261539550382410503213810360724768831 + + + 12396003202718048909550176869357200835167344522002799990717342448836637227464886796471669915677173549704514451874300300953954982243388321237604630205234035637633279054240127538882158729863053103189998107664715943383217977914655949391169809734095037466008231841791029642492622767619951904866524114245681424782 + + + 5539923707394084506717087117390496695592232635500747359889504943711791202029940555652040925097713452840277213496395608270510922111988739086756598726879548966887102615418006792507194054375683371861709247204702686528673393330441503439121615585771257714697719537117389431199585862074149372310085911201841216186 + + + 65968532979690524565399159109865869898284017329187061132541714089842101359911218133768358539795047680936832650790336463801883632609130291164095510938785421650736176533067266082084768408474334973607759685176339532668176044078942480494801077297292582190823343166661955740154699563110781755198790163430805716978 + + + 8929410934781893842920542351761290516339838143391027227969566157758346551212210108169096861146985810613153289756321515096365399229438452562850172935225676505051199564664874135916650774022233114020462038340430857303825774705427727079183433773581422911290563266734751511815134252968205031225916496632965260619 + + + 1 + 0 + +

+ 0 +

+ + 0 + + 128 +
- + + + 1024 + + 124604760543224075224703067029823671929197848568290368816278071531248699417186480889975307973142321087447654043163779310314373817531396202633137323160556385697895753637371197560517651126571956117326552395441960299276166360937411641365637714128170666757748021061815851985995399358099600530948464000050172732357 + + 1024 + + 6 + 0 + + 85374642385284771257823631576104372768147056924874164883253839053780686027174341621883343533017782072735743106871350181141398460483873793075998118728027487068606054873854312222135302707457420590697930884900408430012501778121848164769218884832197965000311562550813948768513322057496853957945086012933955768928 + + + 109951715000613517319568467860069810650403863415999616962622233849462032087516269516115308808422392422344711580072435010666722823022715603530377444205621343005261890621173920886237616524419996303640950274964938929401949794216034721670708285807410307537304208774095446878328504393857085245159895842518397081669 + + + 113897613942613897227385400755632242796147855678163991969863715867699990348445814363632179253538407757961828124650703384323771690430094496902916699863026869603726373354595025416632525977003500517288059703060134213925130696858407196313572396734576461499925537889675832368585194225936684535814825774675818271594 + + + 7126020928855387487678674994782820081171280721588220504548382853994207252414761574612270717533602534438287832704904426640097554047836373585430822304067094169963601314200955936766302620704531487418270186290467140502478905642048977091606481152460527776657066274437262112903743860557673135498824456202362431095 + + + 28704319304982437230631355216315820387776115028078205817309612642875919182450943971231372545448637321011435895481695278298527227533430029440070142783852154597895389875946571611035965006088562868353361887342978399010005933994152947285950976477013299302158959465667564151543055870642032282141512399669701684124 + + + 94385116545288685745006313511411261449412016951854864094148648114948170929374208755686282030124840944301610566544929548845042596674629788759596677932904948695542436232339591732388400574815727980732194472187560302852072006892434987271733784466225284120170184345573862472817276658753020379680128757909201180493 + + + 1 + 0 + +

+ 0 +

+ + 0 + + 128 +
- + + + 1024 + + 92667338402278150042501616331571845170553916728035435044100057040256065504286462484564859200605606351639537638200067692153833627624658309284127823039676010855431298672482526552316853836499357114282811689667233085741354835345171033926521816008894273405946326529381849176517255761872896679958965719410137872633 + + 1024 + + 6 + 0 + + 16811849638918050357707196041977965708281779948508812087747452461640318210048722407843231825782189557782450810427679617933238834899374426352555709149349530750985291583473604357471905484577529661955836023008264742969193839994095846756647807398434006424747681519563767314229263412212943470716671982233598649422 + + + 58885675164871396171146017162515484784619548791139875240864919327966417145277963785116921012215956550942923762313051096493940189775695160566267858580994075124508420959429871606332304029906432878856949417986879035877178605192180897139164552555409945582515862076757143979626309158967397214623905109570430339616 + + + 78313914382473412665786170356493362330039144085905477110883824576655127416478576581225802910372034259178502168118482520057731459855605400355454141177724737465710455795317797057050749690825582952562593287731630723650451698245064627076719872087412545623712737338570571765968440087169043872698907874927081077861 + + + 44353657461760237924006107965806380925063513414349843041392711469913556488536732791027490710958460726040728309894307767887311757312709852005519327917263961141869470181271532151197810341309095643674076995541951200855303977317735453912469969481851102207308778763085134371637143049916350432664038803587826589668 + + + 63191677686706411065075451325037944524770770352269227650110085952842205184411082582248537168068154849796072871117393766031688195935193176655508324522062747802100124202901719531065193631269306020605398068520343217692627311881974378600699699375644522702645562717393999591546273213569688686511625264588794858942 + + + 27652205832407072812316692638518470944442957295475291784728971848700300617325041310215882904190200515282258358913505115222303725583753141504691540734992043009934166703390905035504237286974303243546757023303143754911949085074241979579452470343610112357023018098721133940051104802215521754650102873786582518475 + + + 1 + 0 + +

+ 0 +

+ + 0 + + 128 +
- + + + 1024 + + 93157218669182241490675992530576993151056529971540714396387059359186171724141659509029018057496673375724745430589386646269550119148269920362701170548242476230586768200869636627791503553887247127935915598948056541833660695015447621632102308915805855759457595752248174672016238265085118720537215599842731173481 + + 1024 + + 6 + 0 + + 87446462010353589849746037738234397066041473308485353520558292228761982279440351484864438349240495330020592425437696919685785793208107143350457464619455468991461033208092266100997622440647061373010236248292121737230754562108067582715630848468665181694081670345632763908815931968482206657871229689506989460958 + + + 5371920121762799854663805307274467928931803539482488713998579982300346943296540013798537887678792263719765633413574049203047372443993219255970449761492609162518050585879685358159056493779021272257216677045502035242860798630295376382443183089111094958049041573618187286695690622912661979805576995484142294786 + + + 81378360108595166141754602315536604491755704238697043758045707442510949873531408936241895016195023908288422505205347691391502628187871402288416067822115977595084051625939256053609321368824929989321365961690214884892999027122683999087792024864593514390929829855011841082638494789836356873844223507607133041030 + + + 38267072007460605093022646226649253830904974117624582796149809817168470090793680581881206510714356664433778954062641981202489800121664733504370571757280047612362826025256016849008537963783691716960805848243559388372461046653234761099749619597004542806650489263676912191096870908180220417926161042166859270558 + + + 84915700860022964551345495171007866352879240088072004050514163222400719019015839857792496006221417914139406444513188151320138028620777765653670914650866905931580757496822620485139991117159813430362743832682381564303151718274674124557309714731995606931148894273370034729964486353552790602411267273089740887112 + + + 73465385450573914162870333292460394280010999377154874726178119439395665018458887558540867390535647454464513516463027161883108146373385017590161224608954678928418471159107754308115958338408278114189275959429408867213689090594608868255919833667342809714741419864644591378701510369412610456785454373134014974624 + + + 1 + 0 + +

+ 0 +

+ + 0 + + 128 +
- + + + 1024 + + 140182840369015629677444253779509392454802320870075099123427668377849033675466983060456985009733763204337800460423127911008212609447372562429098014335706464989758758740208247220281377732265746185919831902770207371875995669747914690479775278145713009649187153850562571367375647870857686415645933669998400329257 + + 1024 + + 6 + 0 + + 74455685967512838759991043750305999910403603361183393124429352295087548634063792550278083139223072256316954107311975400422338099594255999639972081273763818226105881287714634621018111690505668683540182433029581703552270786650780911280912244521550082056222427782968317532204880864580429169559407124961989279707 + + + 71098481933317389508569823052638450315420923677123524058701261064638659975025357178946016865061229212313198312082030748560444802197489378720773582152083681326388737157127068155678066123024313578023437832536817853345391300578991541431790615516076293902237223211118896078445149399495702412008571155478344357778 + + + 115110610485112803170120890450410861574735332789506157208438130110718586860547346474556536575500204293436391141549746837480167672278952099431935207514750592413620333211437374119350533399344562363227946687352699621710249905144747106242855517490419002537117779923863031017721389280577474729281675375467381798626 + + + 120330608270420765105059866265760358553479026206034965536914273126027422997441964175805966892926981299384783642394441490277394150460201516690147208336317181939038974254656090718976077645572006247799258611056018020338006491430013096063728859631805749332510316766006851947333925001066287366791726970862626291132 + + + 67539212953786831170362280216666497485098591299326042738929014343236632821022313674668368128665233026533515361422201716455042909840388453755300604586113248821093293298975026375527804693431927109520627809902308115727777408141187735844148052245177579943379084039246961911533284602081296628198055404193130343482 + + + 112319151352986482309182686404845526390525841147671287070408503736033729389413743209528546967376916627199467539007813942237692812742367671894844803642688285719773478359579239402994226436424644351759771456595365332573215315742895224090559937302371921472603333002763125960793889174407708080428577912651608328701 + + + 1 + 0 + +

+ 0 +

+ + 0 + + 128 +
- + + + 1024 + + 153151384061946112819130335133246133008687957295267397843621546909999994389152979903838543621040703741957204585362979532683591012452196507341382378765021930080594638301102581447095150079527571736299826032393569032760089515710110573763393320644209463370199325193630893641761118983295588307360421992928735239641 + + 1024 + + 6 + 0 + + 7892700375071886213801667690949643081301660897876362862716031719252735631702246488042663317065226596719123642472889160164166752467928542946405290110100603916619860642652639874051908104321563771186198974277403372762475742407947778978713423261366968057886211939863053226416845695474626247148481144599879632770 + + + 96969751534332024137525673827305338765824331369062793244711961878338464229795343511369854914166525378159544513335008692960110239281780105946345751882081699160695192471425870929619862347261616029408965621832016372001825462464042514637488252183465735075947917168352282007926612702365709391433705971374480650330 + + + 114875699681605178113297100883725137816850022442270985408429076441164419167544283646641922160696686060996835821391125325554032812396928565692163322239663071368311305838437496947782958069105843521971767109289961823988985531772396017645122897804718943025519949475202876055846445752244455583140057649113803614259 + + + 65142979135827041975796028186758506145854632340505778500302049061619882852408057984561028536581103479186917953904089923319512041375743806093313722634211811019559763185887128205817238184749522143717887021843379119212824449556508752556588828478467790333950728028611785497198162523007873618632206089861361401340 + + + 36365653562546380774498331892233340368119440850968377366594978378206403596397349649940162495672849747856663451682615481355115460892329551644027193052781744071836000722331822907728424967318270206822200346897424772482580574472348312641051213825757952065374047265006433093383031570608989752280846790724625652114 + + + 37367464132260763212677594935535066845758607432576735529782786049728028305368775183042501847621998510706592209814132747806613258637353374842271547029492874993834491837910337348454981742243913507887896589909317221528522453457178954812875123817140250207188061720075701080035731147924455124722653493077166508317 + + + 1 + 0 + +

+ 0 +

+ + 0 + + 128 +
- + + + 1024 + + 100867277587437185905738415973319241270762549783559365763080515113732381952674153438473522936350424248510177050073173341561288174108410763783076387484742275185420071112263308649492980833108007892837870942819215088251575737730473861793336237539084855310382517708806608778283659205231502432743977016620509670369 + + 1024 + + 6 + 0 + + 39255559716883834710996217195960790231690219648364596063642252732525253626322537184453873865040277621949489316023974802886660737439109091681259589237564079506421532205836519587245678559994523313948203934718792220230453120669778118668541975297967552943217325494302005027700187260063491922501505329489123345084 + + + 39251487206514441563334280658297769620912136371041423458186372978938177189264908183631867083771532146089831189040237231008162953455496756686803076545387981343077808092826097431496885696159376910241346660709064489706335519357501003266465818976562287434337562453673352957027238784722579421141604136610413865069 + + + 89788387309278240674496295908504187208537159799772080051192292579059805429479222048578000890516118596274242793098756842780898980765645869881610036023411374800834386223748464825899794852749054346765657959106143650692839796441237207630886842547087030398717915820598774482068967247661437905594328521425874979057 + + + 26357966711801363898328231309025314087616129417836161948306497415882603318843666161160822637115952535994405937855709900736450964992853399251490227990497967839030533819424971389267533958232849226183830101254778677749362868289847725471454616517783178514849063798868429799551121680536684866362141823781948326955 + + + 14384849599051764661772057823488151609489203006676366444227243390117693698668322782327983827142983439221014466954818465181340731717991045271712496710923417891229487421449062528271933023092771365428984997787726567732777005825539778159234635254765002400637042489824209849704387913027726439841852511942249366530 + + + 30051432193108012845512883901872689742838894686285390245961092912227053842938452415405389199460855252222500571948227564229716905666340774672571874746019951658247579047627333063178030591379609682038552274663193364087296307923630239584978473289012247558758375337308299796539977243614211858116751481256713921208 + + + 1 + 0 + +

+ 0 +

+ + 0 + + 128 +
@@ -718,69 +1183,498 @@ 0 - + + + 1024 + + 99683430209219299202938906775017606724469428760930594089358427410134860618365868965004793074091319467805535748972215503524038403535258504555855034146311628672944167557855048795425950230778419329914800959299004291330197945213922372702252933746294221376666676943038735011157528710864090248805630235321387417233 + + 1024 + + 6 + 0 + + 44374832064487549703432106936110733223763329868662976410465532166844075257057406776673624549161360987249861412044599719051898091867684286031639599197726655387219559815670638611226141829724813072055389849106845806446371521054197013515692281584194734156442408523349320037692677236600725489054906594525371744098 + + + 4630463067468923828162750583060014163210626720569193915638610638185648687072871454313570584495776843106357295879749151692425383863181535413318641399457012780863140523020442450319803861217678809327099130460454107396219723696639091046783275546878275618814275775664817225756657644407131100216751298115908131194 + + + 81502968578916182738903954868803437570755946677134177447602235141924201499139137044596035140222509670602871331791597044073071572412228544534819523226128580024545496766294194339793960293820231413658047109091660897365966097797938250791336718369379316371047772899151957904896765356935959814025957982674691345123 + + + 19530914161602779659551760133445821552317320310152365572270824124934166659722311454746309953223673997078297436243931292053801888013480083060066216140461485920045976827407762286163098778343580397538509809300097680026549826911680050446687580200949249156718366777430619222680797133560540120874109523363374682532 + + + 84981501181908958407165882058596493360698119711176806078279361144462965507837003283079265547534700328302141973542643476952659223890385025553457948180508055232705101336878525770094803887787098569156979516392327273966990531171437870101999949275825950472005389499746008518249966417744874164049226960084391812234 + + + 7893650965033577198334191201028694180475332921983002452552068231359850151359044622733422029300099432801430764455555811879002006862417563061903629164535541080083196159447478495410613617151717517389931741132158488141349634905171776801040321832649612992461489685161324965894513229375743124200392574150125896106 + + + 1 + 0 + +

+ 12156351937563573658659580053253823410691110073159632064873022501836009465486592594749999599277950935800838070217509230652132563179395724644794952186872179 +

+ + 8200110585906438032621304395054179270119353002269548331464070505333187116738310343642958392223816278303064396050910031983689028221128048940187204440059627 + + 128 +
- 256 + 1
- + + + 1024 + + 100372618494278207809325833745671140482141053299167545555496772471748336142814309396477676570872646968276341124341133734057291102742322081931492248898037896745834964263295089835223282406172162565851658852298315452525264953060051812464058668677471281862812603962337079805583614207759557014036925354032849631573 + + 1024 + + 6 + 0 + + 57246992409737900342577682555961117349863309601824510421222521894627026751282629144846490064039264510887449820515663063426823074414131547854380098425944664198668967874835264912524369399371752886788019144257660363843875576550200910324966658273895956429073677736320994573692181961701978193186571833694420723781 + + + 55359130326043304577443995739779715186268346376620963862107764611659939071774803889709800904940211859512035433140926280209277737074076862166823314552825380623600695178406779285250666101690748062116072596864033546150050905356796372295859111563103651519324597646670380478259352333788125722561335356419351548649 + + + 50281672128225695904327755312403473270464636265873620911439875862842840579216593986516290933013798705736976869536862767378398131732278547320623614540644278314658335040286056564380320042634960782424531211557936644416852933930918166129586584400530703576432511573646243132971344472696494676449191196511768751040 + + + 4954009689876130900433823183239394059971025313181438225168723025500650021819168443266313593092459139668294877241958627180344247118460686185955251050098451412974392505212283916588312535306656898458413369812971999245044625814448902655421908545388586239806219956370126085702941241215414372775529176415068272226 + + + 35515595255709896828997760466304152492220728871829869589895003772974924553700508769181219885351038370363994580037898364522369466452803833450527848565405566973922751414158220323539740873051032498388712296543446809826888174558618629333699594826671750960039792539335312071049065457401731470572849760698057282405 + + + 53982898161884174760525264593615577676431520915620030422211324465890277781242664656285886912152301003799278505578589234713539160914623954004226071684048051930405768140214951306139171510110595301853061292778036789451353938383524392523322187090038385843323099742467194272605232422277182140459271404712596189859 + + + 1 + 0 + +

+ 11896551745918105362971728512744277845835439532818452881315269737992426112588024541732421368934755554982621680641446753621028215232581368061969077812779927 +

+ + 8437118640594123178620918076897688577337677623112766785827012578840671912538015040671630458384450627586876621108564469770753964000093941226835845074624499 + + 128 +
- 1024 + 2
- + + + 1024 + + 179056286208052838965292614776285578832391122479516523035040871652754296525571820223688635982962783601316990610178153476124475074036124841321454348975288658062663380306451105704874611989409092134086971615401167426036221993116519591467159928284378929315318332059386710030291858650404083425005871892071186857273 + + 1024 + + 6 + 0 + + 178377552641377500865286063648727556416404015075127401685534575975076459575504794560246301298721955859013913893640507231906329290835420911614600529224173881974520601196077215418521752161496328570548883044296041742448024685274297430678209781623977102471902189695810814984063443362479850712510121572973530768995 + + + 20769688870070165436992427339694203145292523059408806374887538935528912003699615548213392704619780037234390842067366936848278728385901533105547087225530691157902332145378484532788468916796432069325744865727857779279958043613873271149288783780319280513887160495047913315001985643689388969419602435921902916576 + + + 174791262245464645868767317839235021278766075455568196624276220286866571918403921718660783240456355740547605541359691882609396468612630630288115927266879724308965128595708829504857559201862612088203911860982726216825023258650320830660279603311065370610444214613451198710481166631253077931188456029167534479371 + + + 29430949861921363180532447370885938675197960719463985708429902998553499813907878796936758756888004352632985956057062412412857262290557262267490819588447955842941087683905824771268511538073109920236468184221145418158999188651980852958196002535495729417164668317975247134260832577524795061940668012070262660148 + + + 33823064666593497298664315122406795314149352648971525159868342766757305003383811070461423407856422008038095751430603738498258035799096142237609225846417708519893838218075447938462930393685967123434545052565320035862550253181734081559761406167043844418023672259049372762462061867104300604038115705269215470437 + + + 148058038465200793690340551348246193382881082948352221607273933659845806523220248031935813135858162670302995149394857476311437030948371832650496514019132121253661904600363352472468971446343853681200879325567745500014430783962951146409075530755861224679906402281793275989220685808705147046100986005410229853772 + + + 1 + 0 + +

+ 13387369053706524441052298969953816865931215541493627201932050414288871500077266522988236783752625813315396589969797844560751620685738565702270168506745819 +

+ + 13375016815456955841470279163167978032541957986847763585725171697601726229270480352604959863298180469690218668879817745445241491655372612081421695369484667 + + 128 +
- 32 + 4
- + + + 1024 + + 122472266630673589598992895062035703233848661693214725901405010631525288379574816031770542696065901636562582576773506864908929534663254247331128605764728063087768770017178540062512081945440960866895139848947409308478976883048112403100515017574348656902851568267215962238033022095687410295184090742019791113413 + + 1024 + + 6 + 0 + + 7728944715899189434388609909724774035809842938667678317425460301603605823013640478927439541969555413709778749118826660002926674529472346548351718382698588549714060210062274800686715297407856148427378139345265348221133978168696684278480173159890783005838020735251419417910753567965053175165025017789858820644 + + + 26448003475986841497968052832575367195088016660519408677049324275770039699268051736789155417037960727921739548551366436808295399762769326861031593200532414836942831340943797676033433793694248322768289140083303407565490613002830404023055002980920011289126814582058510573151951384518941752137790627729966328601 + + + 86229288105115393213027250384970878195046658018230121981926087622908360019070695476890286000825705817855128868466090874517044630051807932688080137330506741796383851543511055620171832099182323963400791787063009161982955132748352579514479641889009556728765160794019431155612835281884746046945181179175314072101 + + + 118443298197751601243024301938618535427519013797625162067557289257443424747667332390767128609364405814370507956534181923146947118096415153388797603904285387277089456614581467531519932588788044429896623956929401613125989811394848718430770395258860135232715671961233760465960973508438597288028258187771963652303 + + + 63079025970083405739511542310056249842741383381477548746042147188133572370748015807051874328665981591645313044641075205479762053757917936684941075988549900240466490390069845305685504221361215041236490072242029131680788253507798397137448619734983297278496456464706652724192001914955923548292849880375166790857 + + + 40509648238776346975545047490038074209435447170427898755134516674702980824141055142532620643304924945704236217094826204991308792562157103171370843664395790315537507859800004916243411935772744533205257928339062171373642112948854794088844210884398436494877111172199985119678162349590861249848666085931258412086 + + + 1 + 0 + +

+ 9644368850153322034703315103697901051926884488301430556546617138464400206683907769487393990184694328778511476546020068068021945752432673918387223686904967 +

+ + 12698836858435435937675913359997765775785276976783023925769404814538947216761763836785592069485979944242173136025323887368624786677577164791726164185869139 + + 128 +
- 512 + 8
- + + + 1024 + + 94552121250876779226056478441985417834697549046525732037515214317098721124385587683741795285943068838272470889450545110834171450997743673526780259637641164399765807542836445604258361269046692410035177576626482842170596945096381486480085953604978737328476456016612043198968867965622421691858552300474095035157 + + 1024 + + 6 + 0 + + 48083218856562860783737525775191328434529309725786982977533090588932781124076143659736041475811675446369495170676614042227311991610162480246804621885146024797948097897694587243264636437130851802277584364037533108489941116668460359722929037448947475873025984332615369387428734396236836178248179053324432289387 + + + 76634283139631251031930451482439094786633969169628830486414552234002484146483166767407506407205976751241526053457671304683137174566086803880644871041222985640288589016393229489142957844430267204654938648698223944585668424596705445851412046692088325329062368117357299350383261539550382410503213810360724768831 + + + 12396003202718048909550176869357200835167344522002799990717342448836637227464886796471669915677173549704514451874300300953954982243388321237604630205234035637633279054240127538882158729863053103189998107664715943383217977914655949391169809734095037466008231841791029642492622767619951904866524114245681424782 + + + 5539923707394084506717087117390496695592232635500747359889504943711791202029940555652040925097713452840277213496395608270510922111988739086756598726879548966887102615418006792507194054375683371861709247204702686528673393330441503439121615585771257714697719537117389431199585862074149372310085911201841216186 + + + 65968532979690524565399159109865869898284017329187061132541714089842101359911218133768358539795047680936832650790336463801883632609130291164095510938785421650736176533067266082084768408474334973607759685176339532668176044078942480494801077297292582190823343166661955740154699563110781755198790163430805716978 + + + 8929410934781893842920542351761290516339838143391027227969566157758346551212210108169096861146985810613153289756321515096365399229438452562850172935225676505051199564664874135916650774022233114020462038340430857303825774705427727079183433773581422911290563266734751511815134252968205031225916496632965260619 + + + 1 + 0 + +

+ 12626409640272974655233521254634505986113859217530798906873548183103099611375959546554379604492110745715846535234744512031965162358286807757060219473790103 +

+ + 7488440811336818363937159595177873184411792902918658739383421198307395028623162698428263224712461137857458567206419473562071318521697310662858469799194419 + + 128 +
- 128 + 16
- + + + 1024 + + 124604760543224075224703067029823671929197848568290368816278071531248699417186480889975307973142321087447654043163779310314373817531396202633137323160556385697895753637371197560517651126571956117326552395441960299276166360937411641365637714128170666757748021061815851985995399358099600530948464000050172732357 + + 1024 + + 6 + 0 + + 85374642385284771257823631576104372768147056924874164883253839053780686027174341621883343533017782072735743106871350181141398460483873793075998118728027487068606054873854312222135302707457420590697930884900408430012501778121848164769218884832197965000311562550813948768513322057496853957945086012933955768928 + + + 109951715000613517319568467860069810650403863415999616962622233849462032087516269516115308808422392422344711580072435010666722823022715603530377444205621343005261890621173920886237616524419996303640950274964938929401949794216034721670708285807410307537304208774095446878328504393857085245159895842518397081669 + + + 113897613942613897227385400755632242796147855678163991969863715867699990348445814363632179253538407757961828124650703384323771690430094496902916699863026869603726373354595025416632525977003500517288059703060134213925130696858407196313572396734576461499925537889675832368585194225936684535814825774675818271594 + + + 7126020928855387487678674994782820081171280721588220504548382853994207252414761574612270717533602534438287832704904426640097554047836373585430822304067094169963601314200955936766302620704531487418270186290467140502478905642048977091606481152460527776657066274437262112903743860557673135498824456202362431095 + + + 28704319304982437230631355216315820387776115028078205817309612642875919182450943971231372545448637321011435895481695278298527227533430029440070142783852154597895389875946571611035965006088562868353361887342978399010005933994152947285950976477013299302158959465667564151543055870642032282141512399669701684124 + + + 94385116545288685745006313511411261449412016951854864094148648114948170929374208755686282030124840944301610566544929548845042596674629788759596677932904948695542436232339591732388400574815727980732194472187560302852072006892434987271733784466225284120170184345573862472817276658753020379680128757909201180493 + + + 1 + 0 + +

+ 9597358002501018309121870214896018217870800796878035069254107760851644762277443459596584060261292202253797548066433643464174883558533676208438650069878923 +

+ + 12983235647847331021494993308557649154523925317581742012198005373331971836785398319725866868674038165717344426853381930807126225951081067813158445817413359 + + 128 +
- 1 + 32
- + + + 1024 + + 92667338402278150042501616331571845170553916728035435044100057040256065504286462484564859200605606351639537638200067692153833627624658309284127823039676010855431298672482526552316853836499357114282811689667233085741354835345171033926521816008894273405946326529381849176517255761872896679958965719410137872633 + + 1024 + + 6 + 0 + + 16811849638918050357707196041977965708281779948508812087747452461640318210048722407843231825782189557782450810427679617933238834899374426352555709149349530750985291583473604357471905484577529661955836023008264742969193839994095846756647807398434006424747681519563767314229263412212943470716671982233598649422 + + + 58885675164871396171146017162515484784619548791139875240864919327966417145277963785116921012215956550942923762313051096493940189775695160566267858580994075124508420959429871606332304029906432878856949417986879035877178605192180897139164552555409945582515862076757143979626309158967397214623905109570430339616 + + + 78313914382473412665786170356493362330039144085905477110883824576655127416478576581225802910372034259178502168118482520057731459855605400355454141177724737465710455795317797057050749690825582952562593287731630723650451698245064627076719872087412545623712737338570571765968440087169043872698907874927081077861 + + + 44353657461760237924006107965806380925063513414349843041392711469913556488536732791027490710958460726040728309894307767887311757312709852005519327917263961141869470181271532151197810341309095643674076995541951200855303977317735453912469969481851102207308778763085134371637143049916350432664038803587826589668 + + + 63191677686706411065075451325037944524770770352269227650110085952842205184411082582248537168068154849796072871117393766031688195935193176655508324522062747802100124202901719531065193631269306020605398068520343217692627311881974378600699699375644522702645562717393999591546273213569688686511625264588794858942 + + + 27652205832407072812316692638518470944442957295475291784728971848700300617325041310215882904190200515282258358913505115222303725583753141504691540734992043009934166703390905035504237286974303243546757023303143754911949085074241979579452470343610112357023018098721133940051104802215521754650102873786582518475 + + + 1 + 0 + +

+ 10116582691417961700450409660073771821080163993540593392966288504372235050089155909865587090768071015740429923980831573662177196533033546908068144339312027 +

+ + 9159944739134999273570507299028731020005326833476187868753450219363085518454977587499939070133919505623808873000694070158656903559252933145645844495267579 + + 128 +
- 16 + 64
- + + + 1024 + + 93157218669182241490675992530576993151056529971540714396387059359186171724141659509029018057496673375724745430589386646269550119148269920362701170548242476230586768200869636627791503553887247127935915598948056541833660695015447621632102308915805855759457595752248174672016238265085118720537215599842731173481 + + 1024 + + 6 + 0 + + 87446462010353589849746037738234397066041473308485353520558292228761982279440351484864438349240495330020592425437696919685785793208107143350457464619455468991461033208092266100997622440647061373010236248292121737230754562108067582715630848468665181694081670345632763908815931968482206657871229689506989460958 + + + 5371920121762799854663805307274467928931803539482488713998579982300346943296540013798537887678792263719765633413574049203047372443993219255970449761492609162518050585879685358159056493779021272257216677045502035242860798630295376382443183089111094958049041573618187286695690622912661979805576995484142294786 + + + 81378360108595166141754602315536604491755704238697043758045707442510949873531408936241895016195023908288422505205347691391502628187871402288416067822115977595084051625939256053609321368824929989321365961690214884892999027122683999087792024864593514390929829855011841082638494789836356873844223507607133041030 + + + 38267072007460605093022646226649253830904974117624582796149809817168470090793680581881206510714356664433778954062641981202489800121664733504370571757280047612362826025256016849008537963783691716960805848243559388372461046653234761099749619597004542806650489263676912191096870908180220417926161042166859270558 + + + 84915700860022964551345495171007866352879240088072004050514163222400719019015839857792496006221417914139406444513188151320138028620777765653670914650866905931580757496822620485139991117159813430362743832682381564303151718274674124557309714731995606931148894273370034729964486353552790602411267273089740887112 + + + 73465385450573914162870333292460394280010999377154874726178119439395665018458887558540867390535647454464513516463027161883108146373385017590161224608954678928418471159107754308115958338408278114189275959429408867213689090594608868255919833667342809714741419864644591378701510369412610456785454373134014974624 + + + 1 + 0 + +

+ 11972876868460753275066668486585770036484418629508842316078562629031483418581358900234477964808845988274094119408005433429985716131502349487632772118136887 +

+ + 7780687940972589315665978051594632936759069267966371943055920664881608463464192616257011149675403935035432853275767376331164649569829862304894745789920863 + + 128 +
- 2 + 128
- + + + 1024 + + 140182840369015629677444253779509392454802320870075099123427668377849033675466983060456985009733763204337800460423127911008212609447372562429098014335706464989758758740208247220281377732265746185919831902770207371875995669747914690479775278145713009649187153850562571367375647870857686415645933669998400329257 + + 1024 + + 6 + 0 + + 74455685967512838759991043750305999910403603361183393124429352295087548634063792550278083139223072256316954107311975400422338099594255999639972081273763818226105881287714634621018111690505668683540182433029581703552270786650780911280912244521550082056222427782968317532204880864580429169559407124961989279707 + + + 71098481933317389508569823052638450315420923677123524058701261064638659975025357178946016865061229212313198312082030748560444802197489378720773582152083681326388737157127068155678066123024313578023437832536817853345391300578991541431790615516076293902237223211118896078445149399495702412008571155478344357778 + + + 115110610485112803170120890450410861574735332789506157208438130110718586860547346474556536575500204293436391141549746837480167672278952099431935207514750592413620333211437374119350533399344562363227946687352699621710249905144747106242855517490419002537117779923863031017721389280577474729281675375467381798626 + + + 120330608270420765105059866265760358553479026206034965536914273126027422997441964175805966892926981299384783642394441490277394150460201516690147208336317181939038974254656090718976077645572006247799258611056018020338006491430013096063728859631805749332510316766006851947333925001066287366791726970862626291132 + + + 67539212953786831170362280216666497485098591299326042738929014343236632821022313674668368128665233026533515361422201716455042909840388453755300604586113248821093293298975026375527804693431927109520627809902308115727777408141187735844148052245177579943379084039246961911533284602081296628198055404193130343482 + + + 112319151352986482309182686404845526390525841147671287070408503736033729389413743209528546967376916627199467539007813942237692812742367671894844803642688285719773478359579239402994226436424644351759771456595365332573215315742895224090559937302371921472603333002763125960793889174407708080428577912651608328701 + + + 1 + 0 + +

+ 13237924258845536022467370903429005560216761805502124415245746897491664222157520847731290544684340754169134287990322205959239073554837394903803257845482543 +

+ + 10589488021533733426785614404860859276142077436554165783580698037906205094105402178674240662351883735104625400113876626148523838613328267286425534418402599 + + 128 +
- 4 + 256
- + + + 1024 + + 153151384061946112819130335133246133008687957295267397843621546909999994389152979903838543621040703741957204585362979532683591012452196507341382378765021930080594638301102581447095150079527571736299826032393569032760089515710110573763393320644209463370199325193630893641761118983295588307360421992928735239641 + + 1024 + + 6 + 0 + + 7892700375071886213801667690949643081301660897876362862716031719252735631702246488042663317065226596719123642472889160164166752467928542946405290110100603916619860642652639874051908104321563771186198974277403372762475742407947778978713423261366968057886211939863053226416845695474626247148481144599879632770 + + + 96969751534332024137525673827305338765824331369062793244711961878338464229795343511369854914166525378159544513335008692960110239281780105946345751882081699160695192471425870929619862347261616029408965621832016372001825462464042514637488252183465735075947917168352282007926612702365709391433705971374480650330 + + + 114875699681605178113297100883725137816850022442270985408429076441164419167544283646641922160696686060996835821391125325554032812396928565692163322239663071368311305838437496947782958069105843521971767109289961823988985531772396017645122897804718943025519949475202876055846445752244455583140057649113803614259 + + + 65142979135827041975796028186758506145854632340505778500302049061619882852408057984561028536581103479186917953904089923319512041375743806093313722634211811019559763185887128205817238184749522143717887021843379119212824449556508752556588828478467790333950728028611785497198162523007873618632206089861361401340 + + + 36365653562546380774498331892233340368119440850968377366594978378206403596397349649940162495672849747856663451682615481355115460892329551644027193052781744071836000722331822907728424967318270206822200346897424772482580574472348312641051213825757952065374047265006433093383031570608989752280846790724625652114 + + + 37367464132260763212677594935535066845758607432576735529782786049728028305368775183042501847621998510706592209814132747806613258637353374842271547029492874993834491837910337348454981742243913507887896589909317221528522453457178954812875123817140250207188061720075701080035731147924455124722653493077166508317 + + + 1 + 0 + +

+ 11652347351815546411928608048767936237430835628552112025242875188652549195683446121582057824636748462894336452288925511118433186493764539072256929831649699 +

+ + 13143393295607830664327305287951872251956799388668596560544307288415888343206753186700563936883765295346535048622643095185041142765817463017352516628312659 + + 128 +
- 8 + 512
- + + + 1024 + + 100867277587437185905738415973319241270762549783559365763080515113732381952674153438473522936350424248510177050073173341561288174108410763783076387484742275185420071112263308649492980833108007892837870942819215088251575737730473861793336237539084855310382517708806608778283659205231502432743977016620509670369 + + 1024 + + 6 + 0 + + 39255559716883834710996217195960790231690219648364596063642252732525253626322537184453873865040277621949489316023974802886660737439109091681259589237564079506421532205836519587245678559994523313948203934718792220230453120669778118668541975297967552943217325494302005027700187260063491922501505329489123345084 + + + 39251487206514441563334280658297769620912136371041423458186372978938177189264908183631867083771532146089831189040237231008162953455496756686803076545387981343077808092826097431496885696159376910241346660709064489706335519357501003266465818976562287434337562453673352957027238784722579421141604136610413865069 + + + 89788387309278240674496295908504187208537159799772080051192292579059805429479222048578000890516118596274242793098756842780898980765645869881610036023411374800834386223748464825899794852749054346765657959106143650692839796441237207630886842547087030398717915820598774482068967247661437905594328521425874979057 + + + 26357966711801363898328231309025314087616129417836161948306497415882603318843666161160822637115952535994405937855709900736450964992853399251490227990497967839030533819424971389267533958232849226183830101254778677749362868289847725471454616517783178514849063798868429799551121680536684866362141823781948326955 + + + 14384849599051764661772057823488151609489203006676366444227243390117693698668322782327983827142983439221014466954818465181340731717991045271712496710923417891229487421449062528271933023092771365428984997787726567732777005825539778159234635254765002400637042489824209849704387913027726439841852511942249366530 + + + 30051432193108012845512883901872689742838894686285390245961092912227053842938452415405389199460855252222500571948227564229716905666340774672571874746019951658247579047627333063178030591379609682038552274663193364087296307923630239584978473289012247558758375337308299796539977243614211858116751481256713921208 + + + 1 + 0 + +

+ 11871194330006119075814063164847621988250895029346062235036869017307700154221207494837479274646830156979463437583772905378112331319232584531756665421941123 +

+ + 8496809569739828636416865104250710430755229036839126522199307417003852295908536338099771857812069765678990190616829088005492474195283849698868360489389003 + + 128 +
- 64 + 1024
@@ -789,67 +1683,67 @@ 1 - + 2 - + 4 - + 8 - + 16 - + 32 - + 64 - + 128 - + 256 - + 512 - + 1024 - + diff --git a/src/tool.128.user b/src/tool.128.user index 8963025..98fc93c 100644 --- a/src/tool.128.user +++ b/src/tool.128.user @@ -5,10 +5,10 @@ 128 256 - 42466557833230605994405638570097334820843613541727034581353940132570827998224 + 23880421229524966198215867498763585662120750616381602000073011204295788811827 - 68270668044144095275726670918608038909375395196409124680757105547929242832825271109482493504281570478135988413542702600891854071063212506736930806332468126469503356929158429601180534652258436627389806348897617930893973109934113436693678510669883778536797354503754021484378861027433976679315826436713553882892 + 86711029068003725582718409975419072430942299982269261872798566781944485915581745200575252880385070740045218409928272014888160930863059693839016293674232517268127384864113882861382111826319576398659865182011901886541393408734849951223343445722796988138199474454027993910256539558469903359809077009457099792632 1 @@ -18,7 +18,7 @@ pk_u = (g)^(sk_u) in G - 84422461049440299775442491644197637218422194625556984773996900013470412970454179489588279722531869559267506920385575354041284165925774811015509161856319048828469037036964593179580920812775849367337015916873254051057450028692387229061357059651051090156024351724359703820506400048223099372523067424636149837706 + 31784797489036022797667987064843545971302973299565626191458061505411285333856183453542554877768623307723879581189140200780128147676608114281502153150720694296949828508368257822292272713488336034755936226147880241510736229282666298342738885028908716791003993055458629791875441915275556677609924846609908723928 @@ -28,7 +28,7 @@ sk_u - 3833157154811092374075778369981150502529457413851881779702353601855164446850950241959865058289567164072522868344385222673401251322717164651965722120516572 + 292988753187366533240485499856688585763823286300711509463979247524213706624158087827593912118316738472328978577052084332662138237987889209864550520695698 @@ -39,7 +39,7 @@ pk_u = (g)^(sk_u) in G - 68270668044144095275726670918608038909375395196409124680757105547929242832825271109482493504281570478135988413542702600891854071063212506736930806332468126469503356929158429601180534652258436627389806348897617930893973109934113436693678510669883778536797354503754021484378861027433976679315826436713553882892 + 86711029068003725582718409975419072430942299982269261872798566781944485915581745200575252880385070740045218409928272014888160930863059693839016293674232517268127384864113882861382111826319576398659865182011901886541393408734849951223343445722796988138199474454027993910256539558469903359809077009457099792632 diff --git a/src/tool.80.bank b/src/tool.80.bank index 4347159..ed1cd04 100644 --- a/src/tool.80.bank +++ b/src/tool.80.bank @@ -1,1199 +1,1768 @@ - + 80 160 0 - - 1 - - - 1024 - - 135218297597036027447710869998207208754674606065213053565477328119318307615909175526780620233213961426236879812016724358445271350587363396402647314849305621510012071242662065255846791249159498224132174763132326817952843159753470530205099792627946188037319629342446887089368727200769772054196948434863869529351 - - 160 - - 5 - 0 - - 18208244590241069583945724715874667682021402381869122752191191011908431102922032101750150575398954442568433700325906936509940645446026799664167551673847031697308843403021189608647351053797462122799257330721911677799321262955518693413213492091091575031816278740442189255351713608125699206715386379787631136553 - - - 131540008933434439797345948918394261880173787648911427732001625350824200688345754946399083539327263132740551020405739246247253074652019164142804882841356667895761572327083692446423627850400085866440853738034890285736115428435401625648425367295082976489978122036860020082169538328537073357748608207155548379323 - - - 91272725802016999926151875073739471182280652070511760378850930760962342713681923927240228531890954606645620919696449005573523123959193016212029127692446066052985178174169442856720775137926238522268128669447003671386368122267146212347585948046238834952090600178685872531305631839437669077746419434508311013383 - - - 3469882655055659224110796061184855363317387895617202437236151222595676437356010103862254518369649822515215063723506132692782175600271281713617198794137567836935269721890075460941750695290740788356081320228309732607034651115489632489205897080536002378820247683062542665099079636940180095369957072814768593231 - - - 30597361783781676797521480522484587284592145075325385388829200913267968937767278691821499603927812902193661100233957450599038048910138756474842188339778893991336983286399329800775281795383858969341862563509964623791941848182839037452532512334863582834255155110971223966672416785184918358620159650430082221670 - - - 1 - 1 - - - 1244736658805837004330109075480297814211691129853 - - 80 - - 108632052121579197510727782738809674259658270667513999458233547257208694922342747151016335495460550311128145055639237925983221319028074946360737371864153589540779403314101093667591328047044940954750182782695379846347426671180342818611100418161230058992137373950 - - - - 11 - 0 - - - 1024 - - 95288621726635968872770037150784213196985326131676843097938547136462929264841295546771500388417671294966257595433760953200547360249349740933546921081522125275115437397098973842360250826812492033263835470045512007784622189487961151941432994089813647862969606517420125770262374746820810455414109837014665020593 - - 1024 - - 6 - 0 - - 91765448215067823325795421667963131269512371058001714218791999926519624355910110183970996302294343489487711637666736326993210098027018038695140474955963214538087467579370979300852114793975820201555823972904294803171664470191975084609410844843699562290002166572267125918023256183462931816866438417011288387597 - - - 40294104858917502207884187657330535256083121883845488158774475159839995768781522379296790456727414484487297945298577860348991280709907143209769263860571497761805544744736759396126801492587046865066754602032016892804265697920244305298307566030270409229660322389503909826850364964925423148539479481422269333081 - - - 37181927301328601230229509824050779944931890417371371899093425328383585668806438133965151915167895804116880861939436384092456427888455471167585465876401001715893034711967342076190251284011995257843683345831106685333128346207762133410990676468736935851749651853413574904157556618055537455150277384533267079125 - - - 67347955068046617987078271939584408214616385355082946652652558963004113886368419385065451148614904475564270298464228947932932400883150877198113111247417898333396047869562351233676189346740404229714576046346513957179597233959209788707913957203885684064580064021423353037303259164004893420671864177938248968460 - - - 57669000393863291465997741294941801999274879223745070978194979170456208486599787020905477696350469460233194798640650624252822592978323224264539104432394194340083276480589910796208101428768941276014721718948586671096753212427551901667894807759957845419273976923255392385335476551662714791721228240704492903472 - - - 26693245241650097930528211048506005550361754351170897843150689991780056709581651682450255357597353232814904745727236148991266683037674349270826986976517570248012352181812879805573443388140013853869016411689779861764052607477431441788218487198174043217144077012585519677983607140788959524397744180396725947903 - - - 1 - 0 - -

- 12945228753730753010799769308073904192740186358719876267195328129219509437411417573953218759295559598225286103870215718789833621752665010750790287315319939 -

- - 7360906751004631250663929850554567318649550553171792610854559855412670519030817242584407983255129240033300713502277730430122399107318722593126054332128187 - - 80 -
- - - 1024 - - 93754528746270947617601056633800291364861682298136548284561953146489022955904322738006597336491255826850217147425593207106178206216828010702018655449477593047795515376414948882934704904553519186055641276786533221369873508841086692167716664918409533164054262959579372586508029429553217016081926497726561694521 - - 1024 - - 6 - 0 - - 18718193641957314100730569270853083678067699981231377053218236440200570748514195983062189820845228989708114721036335865296839656769486571188331480498517073112230023384223396819136721032148578078215922950710122782193152236503585708948416278154158382262317851500701694633329332013554441192971028421049617669489 - - - 82896076754196599390958700658750134011593697922866943134696485394164355313829104791709121309680409072619102123137695639536409295590399553682662365861769296142916411017933128214043071624336717400223646514016780377509575552315798740608282027520372471946643222670649888877298101008604716866742635601384004923854 - - - 21409157001559082435198762389634006574011661991672395549556344452730268173323934115852207531740777161515961701461098746369193405027011628705790585563246956558634006855496001853186543137136893612905388690157500633486730387558679778087776089487182622558762079085605279790603515779276275365424877533098872706670 - - - 70565991640659014530782020171678876734088049089005570216201610770536518351424325792391149871467733547040543767770865459680906464111242548129734433235362473871904159393238510211564669982290551880614995619280240162572467822996375606151081508022082119563011842579690659846853164036860838326243732394765514573431 - - - 77371797128912592221963604938094942633911707145381583508738772419154024425791944438183290768376322858296041782716140964031431791761038113224908751332497360736934697933992269356158706338071119510267730514533442260161070478749011694884944792352277737582112505303044197289488663410941538147133378198748067540370 - - - 82906267256926337774982154418825451735160292585995227482630966060005770865073506792587615848461940397794441648783258220198681551004852811134622576927680502421722981730340736873927483483912074641562013505776184518064639060490292519532693639651522247920944720222077401382740855126956599277073236976642634255886 - - - 1 - 0 - -

- 8140140402670500074827086978592887781641220395541539234547541038812605490013535213539557271263723713211620806619763966987005864890332854132366684407666847 -

- - 11517556713826866125245357271716490213591260670938001540496416425981617727927140436095943977970211512553910762852027978664642953948792430097326141275778343 - - 80 -
- - - 1024 - - 117121510340484883218702815716016593017369400197866007284904378631159197139001634351397099006348261090254639042478158024516471273585541723720875693552232460895578362633596275449655253304174140947289638902997286514465275801294597279338210032808446791251347509758362087729471534556332712094330499939197910698121 - - 1024 - - 6 - 0 - - 15107464790949779810848925539036116589164680473165481843812014434604020175520176471688364414295094594789131782714144993286259674728780246748998301348736396420755743906492330603688120075762111416310712907772599039447961132953865243297778270824554218777752426713792107606639541765351560469580417085799109151109 - - - 113132619367906663802193126722604452247067407379700239211440005578163970000183414500162238958023667292239182925037826362117516957239919821570280746619833192108348188339728009997904509491615767024576962472478540005115623781145645859430146502168842179897232042057741008928306919479034320821732539898654106307802 - - - 78831244758190029101616472362891555519371645829273483715261840379070989387145987292415360310610897488118375589143503280479343341807586436831967002903765461858758240031822865686048256893617339372987036343650345119947926372267957827867520649710294149310400270822176566699466347972287709536682523581276108603165 - - - 89583752214253883440042346912037084568006500039317399385601176574344374326678906556169715887314185264099152754269356405558198400381910728064450965723135896789762010431669178119883031744022651457596440185119193793176699852604878873526015261656614848828142855743809311777609303941862248597137943126610861447582 - - - 684918354387786416205491044839255104512468520452805205068164464332390890861013726899159853659380168702172547004069779846306014103550976054178864271837177474931121067671438226162027556594210608928930392798386737184879547657514532124037440133147012810854365196162946992675626655050241753400618846478941872959 - - - 2827090550656972121690688796630460105969591925581289110535338322165933007662678927433743438230413437638688120784053460847485119328516825633705134738699602887927163627101863584369718271691217967413302030401970248252827616171028363054960352533790801024629520084292963540458837640796067532543489914339488634793 - - - 1 - 0 - -

- 12630499922891895046013117100282886592162286502968270762082302629751001474994425717473886356760776740909996679625680712692434516132328086691314811018797963 -

- - 9272911686433754068745356771668009301724290378683563181975851091754486121030555283603751744260025115485113642974886345217742417979894572131881209044334267 - - 80 -
- - - 1024 - - 99079153840397804685867478704958595964211219785958155284881016629530195136827933093286116921421314259616351394960959112126590774558615068567723955791014044034246784512429519014013254580736277387087599956862163226669530087515094282327896617665735736838287894898186772994803726158745804341613911571374382274217 - - 1024 - - 6 - 0 - - 35578547039971283982645110066508624345573610232317627247471510693463768653398865835272238114026351004271431932575111890233938763056151590366620841232654704061531541940982892684581803302511323727831984614028154198292407031303845418948998407737432474830158607617228291146032822031461125981880732591780383080312 - - - 2839520020939910414585072396053942201285418477164512070052267230831770336300588444747762843759096401075210098436532138784880804799932247566970642529121364066612216811270441923475539213363391876709967520432970001189613754468394504726917294243804597283185825885394444717803465042728107614758510510324174671273 - - - 4257103436738693167679988473229289136213965822055009836429122086227208976617015158554335685934033709081255434321021922411600352023894639658729306158101602153035636660388068573921523812704376829383643150036396507460136150352573845700348414072481768647411162438985157824104787655967389449019995413270282384725 - - - 31273849552494023387697146195164619556065892108955510829954275657213643062645495427357887929042406068050763274296028240982751299109488666543364710271423257790548527234106226429899957206169892445232737790590754462461209360892073592865787825317580388584134032992457155327142814088810984081589994609099547807103 - - - 35347178693259636224425976955506604359014275201911436639125947893572572942967879891723093129361271536461729305849344256272804438952413715869305278809953911268349508791262359453574584301723678348219958163537617880479600787349102851371503927614310858588626874124144067272631324900475250505683917036436021292017 - - - 52102732689033856356640226142441703447547338607766799410243675288006455786150047981514503689756076319154821254787434210207714021249333494274124947142471750583698934512751038996632656769981162124907250526920201757770741572757079121833484338311748881797371896129073537143638484841938341861907569264174122123347 - - - 1 - 0 - -

- 9748964991505723546543868536062010971127128589119526939115913892146554593940386237933184712599429913743924002118610126365074816440430469386062335494458683 -

- - 10163043351445564172351159513591606430238448020421438472421789942995840932802561871322912366647551980193514226111956183684759285693928375857878407269416299 - - 80 -
- - - 1024 - - 99954730175178004845131539653721707390533824134606712982410587911600868971245047100506766033962983317090892319656867952029116781250661480710843185739353918573345334339835797435830424130435498802133973879689630984537203490181103875802086600280921230328725473474449200859216711406629174468133378669755826399289 - - 1024 - - 6 - 0 - - 58613911232307388786240529740987000882039067599860437772060847031357515586839511997150614558368535541427251986791314469299365847701391023351538654534248928653505326544257910522636722321510290544008094306357049503882695532643010370246985543037398842826556465466041122607877993972401850373499349505467940128480 - - - 23759200450495340002812814650036411105104184704810382581836582136381499246372180158982092762319176354865585492876056145343997330165572678887761521089111659694764726321928033912931120570410344269003877152629946202983994387902650140832036058989562136543699053859110798004475607769263425530430095499690012867361 - - - 27782425796445607511552503734068694227876277361913927009841359267890284063272744867098761749380021187439414183495224952502774379338236771979358642185898028829503362239763322899537168530813926957477896747390629838050847130063594861856714553628317263751461531880058526762279151869539133638780577291661705004927 - - - 8784981056185286950712849504706542909851983675476684831378521579437874438781947443207971368861700013318831210277930183684008548888491900029215961830883091576228665510223450239592867424261582734977160146810093587216625525411002439629017874997945384679431426050351258078369390184459312181275581036833509779471 - - - 67438312305077819888962412973544875116933726924127002079831365096482645787717754904826762149733256426407804919023613760756645934824283717354322616471896981039882491744840529505847451034873496543558273551287489104242041014171297514449081571270617393454781665775168456916896840386566994664178411923865986659586 - - - 3464604326727829206934168876456004920457656854740648111041341919379642725442948759261114328466645767790382904740245997674525442848992126187113268087612395494538879214628114838356903347298883717235497237827971476139254978851080082281176240683715669897361209280214505681097167531557140873892635301719665778459 - - - 1 - 0 - -

- 12939786488932276262323245278120924916535303702878428896930720195905603784347901951774974364977511870729292166884453413790631637944449943023839811207539187 -

- - 7724604286220007653749798947053474710559334667556480008209607824527906328856312857409846221987440911537516799761373127400163478907588364051834985163072547 - - 80 -
- - - 1024 - - 148196264683866983246056824641461916553727188878286846814207149952700786295989140546602219816499052248745376771762136245911508160658056925812311366238900528068507706459965567045224239023241599326102923853309769022811634949971343037071212919062146382997355248278317770400104265846506381194883209546789678257953 - - 1024 - - 6 - 0 - - 18228509827232960358109377366125905423396651073282009255000634400639380520576157033263066403255727758538148196007410118445711222636928632798833981031757422495552319975431175939254099574893434799433886121282995060105902206634281977941044087776314177795281177970367372303622719093916858010157621949175537375437 - - - 90741052971361642071954400353930918473049330103806494303478914341240604429740160266927238572355901048839288876493430663768138981859097012674365597674038606403261541063513022898915424660284139220319595247352870395164358600167094743461905071137254013807294601497510689150945162000419459659619999603827775332678 - - - 52734335451280775701279135902793102618804746933648573572440269533476207593955736723943187629344792274001509257176599036967710480587413456988273865241932371090713054609684326983191462176991220730297153396836508515256005211749658852141138853888828449929462905950872738295586503848336537871567551750808215082154 - - - 121858449637190773866676289376800522277568993915277707214462950174058584758252432920947572621722050668109626466687582272873980762806089036347506636343533340986613090442509515739606515227484919838200607799752117413416448281331606056270182334689643276303764467680282413521568568120011182673925501023231082406153 - - - 37196825733132964338623996101449346202869180967029642202058352423341650421724872464278502908541095717874629388572535601572954340968281300632852357761510380827733721910298105144168674114000458492760192448497375493358162287626785807975379359987001469882105036987321265846856757528606901421058839136798700287397 - - - 75089855211101765747300894547085312949871336795292159964546821502857006262710931284436535591390767143045054287236700353745766551337135697641239389214003872913304473085672132743841053938472186773425817048000547738177259207808092058727324924409903592113635766451695610110034720923274183936484960662875433336362 - - - 1 - 0 - -

- 12016202947303825023531335799913322382551195536742761139748076703098880974673847071754302534819834807871631469091115549435730929542440094686445020447774447 -

- - 12333036095825845430773725375739290139313531934846121709971815833613318772350157498961858315340781451390953760021411275599252153249166477673811092356969199 - - 80 -
- - - 1024 - - 105921949191653130859423411775455174812642918848669759359209486362932598819678144087209481182550147678529129567658791265359717569767628215894734409001006779022322289698515237895707269420956251973406350695311822182673083730764296195817297540780868975477123852203726080688004629860517990328589192081987644050229 - - 1024 - - 6 - 0 - - 86809400749152861743901567276848272927167445497006079265900998087562865265602440835156566344510296704141655423477235937471795088316625845837856447310120665238699640116252577611027501208177910037535632605368178096550493728239151536133777140960209848761693689914935806579004427834951787425614424456419297157510 - - - 84986197247511436399667031576140728639886927069411759928791244212693888161425776856726174455028312620459053949666751815466973657597394187896486659471058818599622253530061625009497213318036240988480751591194064567662021711447798444988895990719137206080680744526229981752063726938789038885269097160956167285566 - - - 12431205654625222881707000710728606382090929111990041388059059946907607046548243604353853640940005905715357216784232240313960881905454724897804957781475751038209721410086085767242939434308439807150162545625051293193433624790643565812552903666506190662522259255795554682338285362255530961345229551611440343519 - - - 62883235755082005523686546548606789143770348860378546277745391562811162140335817900845352214174699090463099544541601029119065647315851429798873533063329837639373217180256975002663524244050145680516763942257347656552764882712032814090180931672955198158069467918914707575354901887685922556718370751575138342589 - - - 39849433607740902504402507874016885026871507213461501810264903771866537152481854388265980706007990086277706589042473112769024003147970075181100851394556059066286357588607531753104924164102535180160270351409239344423986742160630582682803306956751475609550461013854012988551751425448894542674892017443824734012 - - - 85402225442112559560680078698274218019993940361574204599118634528616463142138719233262976451961276991618853156780942664995492868531530624507421313975512606915096058618792443156198101790705909662504630168187270536791683734761412420713398341369713188166278602069035350011783353145233527044956434445304512600650 - - - 1 - 0 - -

- 10543874413531138420552183302585089176867519635900090544987728636485354541478216632345467492041256889049596555096460358381763174812313358589354315818141427 -

- - 10045828036013179477466574983046463468665971382225481892440329537900748631696449009169658805056073780192181226505594061785793484031084774712279015886307127 - - 80 -
- - - 1024 - - 108440748919252450268428286731731896396610163026933503975849925663492334776921174398497109505538747057893434317250808469760213233529336913398085925870706542294714657431121759666156575676722682156151413720356321723309169997769639095210994084916522091702333943625021802404556103531364881274617202822828310848153 - - 1024 - - 6 - 0 - - 66366383659085004160581858686068110323987677633068554408731820055937312391603116323527462447105256578555787138213126535928787848971976541459974948337601213550884956798828607581314470984305212507805730810283981952589260529852613686591965244366260752647049304254010848262444064395193144695135425020863379006256 - - - 76945724108134514476845806024636683902509514081378625453698025707233689344313131316105525545539579926429167457073332412872790363136331080030707890397365463990420679800561805613345351927011441895347629470989024367971421806479256556337062265729708476344598157347724009574637722602080586962935931878380448404266 - - - 91945329973224060248558889328744255046597767263343203901720894520436658305695307815971264787080717251578623712083670325402817260476998336830698287676420656098045289735223431738396971319193824104754894276305608143683285127818367138056317944418094268645782094697587442950453451099229969927726915095865444522094 - - - 71371194814401374673127041666269343887336750774645785365973831168673801465656031844499219442062352660855087164791888562838903522706610239539435340535864232794707954647487039513635041583341855480149907762844377270478905725702421973086424891767443863000735666109119321036123589669276816773800922411249576027546 - - - 53718436417526636858730643071130396923526708450985497713286303484760405006322845800085165613155450183026982545846694095243620426398424635300019928951028659679765785677107062221527213905354703614993367947430698278405310236478443546679988798318205559042482374923767602250464637773429717300281505631064612985081 - - - 85230469722743515304402648589847925000201154330027354125047810198070022725031542612895149579396712621532910796627591852488733918035116059401887268218978788971949898670298569884150675654662295808772549913103127258327197135266119807509485752123513682985319604190596813804839912737937728219384325250171411540887 - - - 1 - 0 - -

- 9862981227862769368797719041463487267278452213802595900845335192390244678171432992590431200800304335341042208011653698525699059678409008267720275077835187 -

- - 10994723239755238747222553832315806507041992287431672695148498427805959589047328029147288267156720835206221791909854520270379355562497057005241762831090819 - - 80 -
- - - 1024 - - 103432042254953094027999928574250715964500891045142387105955201932618522113984190182166706020884933161447941491385637733523319614167734344468728413306447688694643223282152714640407364090919183137006284201884535802398403524505317171875956878874168571207572265824173861602627771714795571730952163007208142820237 - - 1024 - - 6 - 0 - - 72735857654996330036308578750037768707512446485674661426090344826756269113965804188268267650912305793719752190143646093227347682752079327651194810856984810512909164395531967789876907601998849500709695834360721633503971686727031033634428158149145749257438769804777610989050845392734398678464304671042690689175 - - - 40354197327776309644557445446598247511877805740566355719587647166808789073448238334020156687581688473278073371655120817040636086978579601886371654352774729778337067600125687099708508209515703504788115675665658396923040920295778105284271940275617551147714430295447383909281391532478964687175643491947382829869 - - - 26968813628185832884730391035851987751870560318430849916723371498400782087349207710865186129239304189549444082550532948832976767259584865952574643740037079740215589837871761474656629795571319987839311742585360362081712716843606865678855283492160943131234448889819908044401388366435372206735181092989882690610 - - - 44457756325918210432882749039045279802693637901659165506229652641196771463619711136701874027949976037693870830860638977238468910265640234729073206675396560391192913720942212407458029980943194950742066637775931509413627536969881602485810181257639579907992687706506901124298572869645460421266928082601925747112 - - - 17923816029308169688209802751254596783750808205473920711963121223110109870977619253002898105372250772280013117032657917924973651135856341002576602124287460305553253303790018252719017423511552791332813099369856129658602326535776342375244816034773978221082034151281828464402757244302554451737031177234874936733 - - - 58173516169174283964719668683473056584525739571524859721047404025100657870657926179915235481899922046403049387657375246255178245370444590309046031552510281811181831088860285782828294445034384018959362706962339714212986805788263200055409728428500955125311148857260741294606734880811179920282935017488093954695 - - - 1 - 0 - -

- 8672679680974973236690094113821641963666823374664779083333166639271801771951001348655097212003109871176706115983422580452706137508604577065592031926797663 -

- - 11926191910655851191252641261867726308467148179594475161094159206820033462251798048601413600297517962989506123688221777174124884142170100911794792428913299 - - 80 -
- - - 1024 - - 126228903767442190738148096183580491175038013895363063255063879407638776222007762640020963679700983981505819346117331332097744171511439132259106773717665842976406975673619367222219945376954037887793874062977933096988373359681541459886631958588231575466518127177060945684448323334830138905052399414218163921421 - - 1024 - - 6 - 0 - - 97539931636318677461475619122054540059104052317022399756575154292552051870858044057227021169523273160051067173161809677608371202374236595169900819410518245929982550711392322042314682950608013639486222401760902052975068868934717538248202265198283607804041217016155626510986296204640357633562628725262540901308 - - - 17056048088041119848885497185187738234341957332739548911174241850674169289366712176470014650655283087514808671532359181973245193579686505807246886039638542093762471617521947338468427670697788979094939538614633506767486848270358174624110579657908121127644226601122674835651841028567546912507950233461561314311 - - - 31717709189699030137875842801316834424645064031847570293530325225334129025771209881989868755679274813087722642958802113724122792623999410285511001585168859463078978573404425652982888882289493612951079566418713192311092484146177732644672658032091895076062007702891319957382778438919270892273974397851698486802 - - - 52701408784517534567979255300945480765809161198465471154967839240963141730818870689354317216286196381556788622550165176263143040912951902845119716643679329549799829193894570784536684136260779179477022420722664058284142073288038418969152156881985103589172969912151842893647108788505003435443026642491812317969 - - - 15916170466240831405710269071326971495003989098632832660085003103077847286202099441873708133501162524440579674719437136363718867648113746692100804664108054776712148615544501485090998986423172752761257930805965506564375676115179462856206417265463968081226820646414689722755150455107075664424251782354607115997 - - - 119874392493908971774593399912229045812669019257958357082614870704163802485902701553073252681759628404556483986983935409150939979774709275900622818557001714033801638980212024983490579855036873618987603097875751122714671577192226926342520061281357579934217951516213006849868891095137524137512935354897389930481 - - - 1 - 0 - -

- 11499339520580758253509229542741225135216456664063086084643722193312156847548408792529910681561333510768537871682042164700109432915244830423884287811578399 -

- - 10977056859789732894814562646715921877560763338630006106256821434974143239426025326128125137005756931804906605036182079761254305228156010117994276009412179 - - 80 -
- - - 1024 - - 130984031670979893855543842480345875518508410205548385455401787667182043276909712853992897091674870836021665068146327054461603450458407290201372558787290109357683738428013567907514516775559018701817491758213188304978093675528268199327422042148541505303706207770150984130237176790872039958140095900892697292761 - - 1024 - - 6 - 0 - - 77111031511076776748383055590862571648674736492772474529961718646938316725304876527853934806892564363406371656844786106299018421240298065574103119127179436601308127134820838280671592776233104655784461864696507484750746141074714338613753312756700370784915468572345403051130346709078319417883115672974802169835 - - - 3128131951563621685781519514589290396078543084150675317713253716044387307905521327893562744421717071028534528094967705348771755396568977554185830341410613830519127494248441161017549347924906597526952413022501285246828769224407661000067457541358719277808165554742389274830650941000817519093291137439421649691 - - - 24954141405440090689976175252555167972525713681839903660616337028203242900712021559077665304276350472093427384187451836674689185805100258168917640061516156543626305008035523276260649599372451478761753446079713760095403758829516730955461756588789162979921765890451415813246841487242760610785376086909463933797 - - - 10083134356469565434820655937850585425146227225076587201691007206376287612169498960565670490848694021370067252342213688465673488420651484169267195969254736060823678091580860232493159013856793525376166944993634152015542702135847543328581535175016508032979250811181479986919377039311967364297745111283924007008 - - - 113848733397666003768323762636821213490695764177128020789115723590466213187341258833452173134117916819367401260647045106530664613037790726812093687986435876985971021971510207916178699329669683834822651456959414265166368467473058891635488094103090980035908623302936245578454636917795970043625492656294734023452 - - - 86136816068775947939443892035798452754540048307990163601582410345529875583874238629932272530008216513299726778108060514260087906788536911056614574118478556477474027724459155894339604045879892134387001046080544595464847107133404856959533587474371075416239607580582640652535022808207241217726978029145005615879 - - - 1 - 0 - -

- 11408267927097292494421943021465092136859879230869963933878914044554698647201802346515123627079086986924606947152921819597576136415744791007252593064665323 -

- - 11481500303815824823701066311521986224668615318467744164273472355691092578076228467001390049803731395942719303679007978248732870976540462998083308693938507 - - 80 -
-
- - 11 - 0 - - - 1 - - - - 8 - - - - 16 - - - - 2 - - - - 4 - - - - 32 - - - - 64 - - - - 128 - - - - 256 - - - - 512 - - - - 1024 - - - - 11 - 0 - - 1 - - - - 2 - - - - 4 - - - - 8 - - - - 16 - - - - 32 - - - - 64 - - - - 128 - - - - 256 - - - - 512 - - - - 1024 - - - - - 11 - 0 - 1 - 2 - 4 - 8 - 16 - 32 - 64 - 128 - 256 - 512 - 1024 - + + + 1 + + + + 1024 + + 93230763739280571504135894981758464921549533244404977499280100317610642158696171760528104674637737229733175941568553403723105175097015515319699070952376427079443371106935342247851424088952059295885886935097518162672135947106049387484840074591589257360230315769557689696542382392519813078599471190744767574869 + + 160 + + 5 + 0 + + 68483281100617598890690260390149768811612212228415625203522044461046667111481879531370567312465572767471594307638295801373186418716158142849817983459330707680663417874829025870869126176489427613080242732002651745488662881285588979959921965144385346078984637002460369031880302928947344993869585533184880578110 + + + 83265639626129173611789599010225302025152409809086527203484455901023769133886691838273456108748805496287706878962773757945456134873405263745164606965847314532700391809966780181133976693605443364901583082171984350459199737213226723745536820865782465101328993246611565093204456820916921489432935715107535378903 + + + 64494645596589253556216597795109317230393144753176410221096594531458948364177234628870736479592689543360905599602657314236263592101092566616235573847064708472909757312236854415546056402214693799474345167566671352673240454618588407803218073337529354507911802599713376224420664104074189347847705900767264872038 + + + 905161046851521409257577111452816735715252358623913604457484229604130369307839601749333327613605388607433350593708810515691575210160388761595869399020222667210908597450718769664858099351646068693841593092163471515550082960630078586622005691616793435150664360492128321931098927419019241842770901510122534086 + + + 41967547411890952815359321374560089169572366216165489882401854020396349040651479953032950680353976700315040441376320576704876897753122041503541594885225811640391952804794467791615197647585183498734975425091154552964180829385469542341052967827029779452736068735777647237824883904045150416844783850957326457638 + + + 1 + 1 + + + 768028739645457608782610724486466841945856438193 + + 80 + + 121389681045423325292614017485147832276096371324287958707137023784247707201994560568190745220945575100850617828806471788665848145386600911065071127506834995734161325061718372704826817340005630257932482772489716899084347057504860573458772886343641833581315715476 + + + + + 11 + 1 + + + + 1024 + + 132805917336342357621340347406652851500160158358616478910647979991495279410794939929518375989150750446928132372271337608193443333865973093134231559072633996501463762859681361235278609969585631425793848655519125510571433841525692826089479555621938481220398806492169797461801342643036874762401113827812141565129 + + 1024 + + 6 + 0 + + 123724192971345628283598524077771574642115516306203819302642840518434734884990023342093372590141717915386280139738278686607193677120717277193327685180610485720329861045086429532831247312816073761794696539180603164001212548485317103853221255907270707439711950418933701675350040464705736338361874491112644317294 + + + 14625429247927685090341663241649949148258959797292039323692281863043191792520221408569037942351234266447978782199478598250390786360135847682725454656794862494759779321288036136608651289809110043898514796554758669357170034489653566653604233508960098637358973041647160974378868936394566361597245297526090809584 + + + 64007057126176875784921548625312090381394744981912355585114232564443978202823028666354191570270582971317908560590960255621718151644865169079937946397430383552508870164313540570101112038765363492847255578958178618499930646151629515550809210720009750548884710211145008245153069694049417395148648829340938687662 + + + 103115992915880337411327588408688265150975095052055138397293144081059692734045417060416587664821844857318695820398000363692718875618295012846030208453079674394744433816396921378281051337563089579440046048625384540937518959711246975878537125941932878593410102488330542299641806404417418885309003319570534438453 + + + 119457315332497076188739071965563333761790600794685011698971978110574170937694642037185938145352267447861601656017195376534888030612146228692269726722534673032982839555108591230005930224550822365861369188758542352070280899039005900661300902275599304439000283009496810058515041286869086152747650395143418209695 + + + 97738799315708788763206134320050643392532463560258106306083499059560293956823651670664308620427613476046927360217377480809698815484522143039469284490440932497202203091566977872700143965467171603897734591262817015477036444327217869465633675102793500947186640843443170349950215500682011284039501098188488514980 + + + 1 + 0 + +

+ 13384863556442163322952458250977420071347303306250951371869480166206360749972742447864759873951415001010653138692615849046841726507827289409114950044040247 +

+ + 9922097209009096465140505286723232344813197265640635285799288755528166758850118654231004127875732325223233807063304934221607752104237886183649175903422207 + + 80 +
+
+ + + + 1024 + + 137372634310161859676135284402338656224702625790752326093422619912065941056411155016565478217907728879945260871334556369999320378181012769399229672757185658932449669547994359702315835117004920960039833723832775157892486474472871781401535566138599328187388026485937842777690668704923449947159362940419397279397 + + 1024 + + 6 + 0 + + 116441115010520204443701551044388141672708396572634839287898503254446689571343162226795875092851665648107955057536241015609708368366718318010287460951620183224189985722483322655563646525334936557072068472012436067191783998514083593670357905410483156163550019788757133637004401363151527763776723191808245083150 + + + 27044557351618142662356552877489107755687685627121911493229457826128074471372139670480946601583473364230995461783264153391465908763057631990861033738028356787438011645743530045595363690544107938500296332245528760556413617439234729949411192040200982595365086278803028719387624406149566721713663632397652758734 + + + 18668480646476250585503852417335962920930545198501147882117553235027914985366130789840737981562565180298275654871023023936581742688856218428559624653989709620342050760568013862082037009826528078528308498338926463622071936645167033131204995449391746215916468228090340406579421220320039702041285615945226682497 + + + 124831643773880234485522390232602697151624554744878469357280937852918545591277448221883189230205072357252134490470478766733175680960201808445712280554760481792295061585139951074758260903784531587541999977882176959445583638063216972509599746798664421534897232964080914317787532005374524315535445105635534739855 + + + 59970642815973695149052494697659654637535503354257025919678495841553238031034885486365545257363298700332014605474361404182598059404831610511163756704140132090268579779044407534827161198033244776683186964741076946492327722988775759361482746512239360253228317139110005567490550026268269509261260489164598329675 + + + 22923915272163963950857605925330142022074779916236347548886633162654056167070402255377093400484185256137566072514608718416367258335630496123774726992155837700585510673044223219699749513900672323661639291542257718222249838123282120567272749819257073710511915155801225598478720475650206575779832514355014487626 + + + 1 + 0 + +

+ 10516953854195957215920418989214698161452474081769918026684971214243445196839612444605885055607074928941932296923395924708679567920201588472554570885991423 +

+ + 13062017406813494145316429683225609621025324451653771268782679331113932572358409228199347215573073163757686558693301128497363343749771624966776957706069339 + + 80 +
+
+ + + + 1024 + + 145833845432288909121084926233534057685357293274340350126668766405212197351890804174287842353814414753368096405191002821422184530789175512390729502084743232689937559449075513447581521298005309418519751610349842123168680301350588679553600672970038503825238594562290725630967833045040620813816180930525533629921 + + 1024 + + 6 + 0 + + 5614206228798301098336705931671638644909555489877769303373552985024454467948272719941276640621802213319824489026627166503592953601271862091261438770581967429841000215861631061086884950337508297975792991010971325252918140265180480069954277705396167335598614372709439485252924902184204172397796469683948482249 + + + 77829222239122835610084423738321562150497279446208639514447460343866380070175601047808125427733325611930916432062196605539354365357794550584735606610432247740273684874796370960540670916977515416987155254054153328167529316792368006397532847978034025278821903835834149607180869130216088411657110222021618483674 + + + 126526668999549527105050115708853820539308975410043121964399106650368217475035537783616879716348093999454486886707365887651216832345937994185160915756008992749761345129872838686896268682011102041005029710003412657931850689656325888000091306838802288920011025039877500299503261395656474277902595055003645939377 + + + 39519547515028449055017861664894155862617764060490711234501925837865547671173429701804910726363843756169165093168047068989948316277502727839336504944846821161828359833653929929545581648110770846580090891357587504044246698977653720185664161165761777760965438539711667531830065447338000177079619272633974997808 + + + 64911171886091908379987659695928798436999618688156351616885354569475319404854703300389871388692848749447706845284633183118607140873964829806267750277059617538075740035634698703898760746137798807795759428578283927848978809795704455781269250994050734576159373116072199698554416776935114764908963304498490630504 + + + 46337737440906880658350695547525646305900567458168613888364269449075743635956571509878774476192279074625591314542016353903902280576521867929458581523010335829319495590409102271909715542993648132948180305225658201466190786746685383311897244330788754428392449915461044438929637233785244332939802020516997653890 + + + 1 + 0 + +

+ 11433764776710887644313307473143211739470953398100578362765074750279421702519343502035319397892519081434634510608848725022778926493880686061311307529867103 +

+ + 12754665526208283348644128814962849642731331257467717548123984357615435694821301803974670523354845944657439610208446773346423677076013726301181649046473407 + + 80 +
+
+ + + + 1024 + + 146080828996844893786930415030267236937465501130613168303735364618844293026036288220097635327009673585003284120262747096635449871857553308329749899517971369512993356899511456706337957628017589622952308458223073708168002051201346250296138111717760726492689696085001720244510576087189788400173594849773775987061 + + 1024 + + 6 + 0 + + 12143846516438032065549326588564641993076335572135680144319973070565227510388555878816485541168565333330331360373203107549711159307955856012988849600497784921648620670877827610870429166714421302856006331726388604858639217479516237211099294053777590279150366532220218255101295698436049419849141612097902640451 + + + 130110283334213982281592724744587355779238888385612173261041558390337170888862195730988952587123072858116524751419665014046802853625023209193025314170209762095895716630052691721289740627897735112480237539255012944565383695831051013027460838684588426430717433008544285106825419868548234785369723450095304865124 + + + 28936184033269797712301045816156985323899945333237798274523352177150263697445409224159438231819208355168670625188283196276111898818482147589072075244562000752484990678046008139123016667919771421087077668072425052038197223173671078453038383761535748778879934180519804845917837931720125662698639707169019951825 + + + 139743313044528582631657668286088123161464964626310113284683779085342948598023633133544825825929928312362129974614186131729049145084732952532041531975841926166858606672969874133254866846900373891351537597368983313837098495423640205742172752175958379844629957134932742930140902857501238693610132562014310099849 + + + 53044581730188892877631548732096143188468162339421906645278191018430149084642776390613644404189469954372875388873708624934832371281884377986981016031495526801835709924473080917358419053075051086050983722965169085001326293901098332606081215826837456256432766108294919171060244900518692093178547790827213354457 + + + 13720982697614420642042383264268813339206827429441510070099063031077866574985037908849971402680608542067662118645382188812605442192530585575940209920553520942641967018589809365098731467452204409869649415457166095843163238375083308117631225271409506085279102769367813064999165660319126220444280297921602368577 + + + 1 + 0 + +

+ 12493492711183332270979559538554053599683729030245785867773420794402300221675894642818434063789983730803397982796207617918477674051272987189478076120912867 +

+ + 11692553265435788466377775542312669391426810033951519327193947944831637324422698077279540119648681098704682249147810817531550857711325868161365161046877383 + + 80 +
+
+ + + + 1024 + + 115562432164102251406622967052071750807258172151285544566894218498931362209567346945848561669965827548724769820749118527361500484654503353982654831132691503147282822681740720558479928440623829908178283919727041827646963738754679445285325013831451162488739515312866275942511475472857933145326220132237853644557 + + 1024 + + 6 + 0 + + 1918843058365060902224156698824791077915048816126174273828173328827925146094242787808159127789911738230990921536461350767134197215631858847922569466378620788070681199103616323592972003068116871618652298189097954624870678096346675641822861238845361050835764226882558875078705801193309174207649691981387676761 + + + 5633663323728715862831888845777946094661002864544824727134600431003469539113905131778031633116781888360230284434775486594799461335499354181125564310162945192736493983408607583043279052489225101857443790367000861445428439571903674899529423583149897600345297997769124326200352679791494774441424376422975993023 + + + 92224572490734132466871405475772602483548793692969421833571278855151455741757597222662182273880403467624396109857103285036810071642000551787217955918908430643545014752792961549564256530725754107414785146542687179641756227242772610219435049498467256907877773547533212521894936045955979927225093316843447273624 + + + 66183053406824854997955985382355384715497240013453258897437176350763562425331521822435595550265618083659590969116645425396908998848723993833538106201823652953927058335013828106360478760501723552180389313206057782227500096729295807156679165429081748514586663929593834603229571872339167803106406082026242486247 + + + 69743124750042509642467145074976059009243861971684272053034970423993683530657827278165993761800907370985552130382901391446596933005528253256387440804145356085841981356225970618247323173456846551942037337211218981373022884854505546817351938007556625763760451941625550568126244464144092301218250589930964771252 + + + 72915756120647370787512976134911056390045357692685473282250206465655171985686451881325200537334167943578623112088025120468788437772822762261349053705299070854344523813062549426226658609713960083898353784228091780561562317369856737756233116861220821234249458074025030344466225233689070112675547477388012361378 + + + 1 + 0 + +

+ 12113189822927171917747077461227561629579433288786188878566494896649974610926449598944988710018811572259934174588237955489017835938680313581298226839062219 +

+ + 9540214745530703052602614329672114296360144346165078233240673810509000843141104476510595240420457567833307788137793450661014218709382306011850801095444103 + + 80 +
+
+ + + + 1024 + + 111927356566104023053025699787625550838058397847053053322552127284788489517366540434191289811946944159151898144044517991896201183248020899355294666452275356580458700724360087814407783680353738034566389540489206594576108611637326536178335876673250303367935270215570934307497912954941670160094818547669559266293 + + 1024 + + 6 + 0 + + 26083963272420992631361325874882186826320192111270492885447297527829930121512725063041771515422873794638132630732246178945827524916353536920338032942329648884862506341847807165763917740516440910242943041732772815639040483973079510498995058535404124602763024963637048513509262352040839650701377899779182492450 + + + 96349476044790960219277900737494348910404104317713878532186820315042836896394111182750693236907309305366101392065377818174119922772262450705915928502291955836072143986901878966783486955686515491687652827133207058317134666488154155770640867360263153123215807876346934189507244403619175620173481171524025037609 + + + 54690578151752424968627597530623695060322314333503222637738707156935596285996271874663061813880600223163657890492147882784449085042519744202705258571783341725890402018930973779086740363427426280862005142662828899727835119949559802395804426318658922453509773311165866730072879701477097084818422964205782730898 + + + 48548246442536242336650178813376090147825187269338203565219773463426768909891921223610424888168123366278860170690454785019898354608412222321318035320240409277155997290872403728887253361243526450374951908929982176434127615635172022089921656613960936488084542875629883983721976542934773414487851263961537403813 + + + 8413113823923925485688787367614707477657758975525795517827722017213206555788250307268244325721882479636008606295000856384190034186952886166588759610523745356045626108013064205521440618996713728008939728528935599492193135365285724053499413941300417129252635867240091199959544379912710341678940281432723529492 + + + 68772694314410414206205467046690216598864909706182681421449044403117172244107392479030110544064478992356950657658675437260300111069834928175128122254740575410509949599612145656885798061073750122226817037094964836568463944945479934451259985250499721987903002593433201657517849139533217227834891411340995860823 + + + 1 + 0 + +

+ 9285545230814175208263411435100595524047654027631834821681899834374877184982061448521038956716454217041218352384599587282695285925315242520173770910063167 +

+ + 12053934775383136892747067774553082069477539062529530957973630104838578048572374622235664986486263135849198509434839037199331156566567604229630900604978379 + + 80 +
+
+ + + + 1024 + + 129247253695959703790072509914691217099002852368322468045795757340611236783965062669505460428210762504741229507573883904113055589574393037898320307119534601325006470049122917644647993271072364497135274094746214874360172173123358949071606257692363319647094023309480718209008941035284596506382336215735779493909 + + 1024 + + 6 + 0 + + 117762663225409742292003907909356310395762445497211461079165975468263649230373970302717051754658639529032746668081675057812533532269905582012773970520260676258789891000845981509443336988580006031339603500190556266787092149644268028195165941794896901354362131862834598206683215509345587690168857698887589234574 + + + 41307676734324917289596188448768037242041561478666611229918508332376293249216584670403871893840311327117612839717795187029126418654206536820216938628666056443197376483010899927824631712516956909063917313355829047154852269087395692986828780702480137828937293992857398565122465372059669336909756576677250313503 + + + 63089817419614027949713869705443303414261012258660802756430718945673750293937911985030722540073735567220860290764744309902169310419281458073896754765094348815090678089662279005948235003153968829581576084867530630559125676708622432223591998446524862273768360980298243277853419634774064906702269062659305426330 + + + 71199445873142743890705311828426192993441595666700751966078671905336982229004736114861991503242913305495774688716514992606079439892068289110033526877163042238652945854618818253560032930426612158830717352398512190160864531194414597250521382878357192086557641764475531942766422233904908929408968343948911160272 + + + 64619094101169861260658686391437493165297845452472272358760304057989905431808036959407913033998903580567058744493381896304542424570477466803135163609233034624791665491361616919472989117059076521170734411692284721188464794534574401950171105972902450942503245521469623536413107373984706704691477763216841890189 + + + 6677644520806874248729709604946168760244903183951381719735625530119707560190818287421767756180188265855439551326384671573103541157197475833159721985859875315233932931981009410659195950024397916060600415042070216195290723111879774732526912066923480930549563204082983120980936536428103764153567950378551358385 + + + 1 + 0 + +

+ 13081877070293567144772392907238627006925879869965145211592024037074476968339728750851771748210736710346605928219186736869646018548035900973688960242107443 +

+ + 9879870679220447556464714657502384107730265997772677436404457680252845162599412275546553090201887725923207763225634095749647052759030060561134760329575063 + + 80 +
+
+ + + + 1024 + + 95993586374937066529455162653639008917944416331769895672692447131258623823530601748524840575528704991358520416600542951520877430553404290694537271374818615310922199629418777773940917285970907448620026552905846347625729841466963377261529302788316386653331236574151237767948556621396949628879930029930854431773 + + 1024 + + 6 + 0 + + 83824229456454055467034777958381886084070099575662029359808652417840721999302831923458207007454244578968532619690321777920454748871657405334691831931976377684607781703339528597558380460921586675470307191208505362126230822462336917172922636421883257035328073770261565664854509432609003556170229901400608515196 + + + 31449802613073682797257425139131419417588192884433609539928376773383346328101742134248510325629565365298437902156586786944230581371313578612449753268670024177152333713470507828982714894227374723227899934752245499118873909871643883739539742747200765153224975710081093451787655817266736145458329023747843360297 + + + 24046901626095895679816597945607311212403525239995850573241184656254370764719651915880942229067459392372913232451799155395293798882992625761937473873153502423890736622586766763795872931503799528290427421747236393467366420155132576017108972252571854737191517057107119000077313989206985638792731956505981706798 + + + 45175832503961230046015360947078569944511308174669274010627205837152263355923031460360917867200068609487136017032019574229194707255438267238936157298227093781866090322680638607700980856948120525143517256771339934483638452609457869091603314126054310638555434194657134665694213555411010667515926827636647302610 + + + 27226310139875595061545788405464522559218586869146317221006148013240284964686677834822701333166143350393682277077841511590250822499110747742693496232681426234740573959099299323631804367485077842063495311347905886490364241276494837378393667776950517833124284734693981208106073674942158940515201927225260896177 + + + 28061030032752164801968067580170072035179782094538078442993446829482618382199841587780304480987658363417992707765141978367745403741272853169468282987262916058066756117715451557465508245153549381212217078275504206215654107054783849807504784914064329691028379646444146221420807715386913209285477170712492499628 + + + 1 + 0 + +

+ 11584124495512725645750254070004151397235431960197950698997506155994900934855991765691043061376387584749228555244927245784250963404172386615517446654797547 +

+ + 8286650097046310145628376011970887020008693692489576545648941788788304647918380756171984084142680168440231134333303978377479157454970188552258529292449559 + + 80 +
+
+ + + + 1024 + + 94684004306111857506841112997261544480170843980474819684454351726404536462307477506168949707131540890820127688938124464318983598656261985060474394464444104662851771105569910458875690156971112007686589137184650027225996873453992879004305779154307234416186725944747553098765878314910767432398939363070193432489 + + 1024 + + 6 + 0 + + 41813145478284531524339888170688849836993489808773877061381898735431270330468430771009301788662385120899147678167321573709618504876159814346635143345363712394968468974763358047056541628004679516114879569313531494252386434132347497962429320391260372741017674071011042604271806756255040001608579498316923849593 + + + 66985412989141614286302186698499483703029319437106991649103297187111727830751850293036846281738132181703909496240817794912400219147438773406404404501967357891659448492407736665354464273194466557245973728459910312238904312073312671232102333552915861810338965397370533857859494752184791937326095095137600260354 + + + 47312445634335688130580705786493131286510846896090168556933453943379704950126824709335441743633692656299109794749138042476418368529339230542721236120630910870410825198394675989175724057291495828269337126435824903651873397607780035162801925793363290999747965512990162389907925450219773635717120444444967961403 + + + 26680941685059982265916590861304381368349841644910847763290590165644980437512586663772588348564786395142074985622665652147665283975844718675959745082420493895716957522519133528284438195566054958860953512709923937286271601444639896244630126540024459226060622212289739313704639649931735161505997395694497185980 + + + 74083443550392038622058019232286521002128537943817376082249256877190604066000435323031376336866028072662736957904562553741115362551808059312277922794883095838735071899792161563043461419534693122988468859364640131280222420706345691410443643331380352418667933129375191851645103967896117642593878204014509865042 + + + 30557934325334532582271071478001957018070185356327913496618682277547859447967138146722346701435719877241149540478472366310643131902542023167448548815882595053911370946603870567964058986679361070823587016887587552099878742317560934642428976996087168254547665849214779296369547563107675774229435656829473513432 + + + 1 + 0 + +

+ 8160211128333345566540434284968702413044967260865517592707045146213011922768838116572601821572574063631758048568559271866605369501181303820592196835113387 +

+ + 11603131685815862998758132106767773214584562494355793433835542445435042202940039220130186654341099402233149141447271216788328587869315947097248008800765947 + + 80 +
+
+ + + + 1024 + + 127727743954354624281854745476887090335808566069742443817890352306117585796239126022362261263079819519314090394014361647646460805892494614420724452999880429561236881692111401169717707414124936138355932922564368207508256915042248864594779846067983034559994170386441595183852296112119579847539416226299289211653 + + 1024 + + 6 + 0 + + 38164224196132104532329483574437124604055028410291615521779477243849960655602119853635308460253142535900192481558061899029051510773421915505181034038040205053976600340395226223552584118692639276068809035773829056879281287542819362565227716773397503446437660962198956566256514393193806524849148173695204924223 + + + 110678530127192027271644996149003445969262072382022151859817469310732453833899229470363319557449911586003069509988091720697116396999513012913686700138918399808920334993823529829378539506175486461505670850531128082734443433833237420355314390270799453960429479062564346339269484877851018621073091246726296041918 + + + 122548490956895798346580701645021683468493703155724198028852392301507630566051709653966677479391148249019113594983455772425222329689492967526169663910403291783540669836098877872130493149328608829969126991475661060234359382873009916476841684477657337780779843037860445806000967591640647467157452180419336440064 + + + 115049765164512475615816754723709421915820944110057140572079223148858284078493729853694322750937204306066347373205296833140390979619473240003424221005440943252946247163179631339839082762769031171800431973311643442309923874949666515334367655281859772013653858842591796008806616434102016382825819024401335460344 + + + 24473572867891230766459628437908127183343542625048075648139993688246520961765676225141015722308250646609649372811767064660575479732024522516576703257333821736317565819935529241994964671174856884596066767646349413206450874945566058276469876978552642627552830542673524471166381537681830302599987521202991056916 + + + 121681456438779282590844849528459680640771312311817451946372654804617948881697814947418283630307162863219078621980522042948479034075970549463192538890581557434181542676057282587529357950472618576160067047151888130114895592153330967041148579160247158143832010635353491887390135911088640467337273087059507194017 + + + 1 + 0 + +

+ 9797347328962033146488368412716816572855884675950751084714870398060105480643989536965963618504712119836099411058406939329852572231708464480258091257726299 +

+ + 13036972117623859846367583648505887475031070725674408545288450375638101888384702261874720182461609709100300353224517609830394811715149997824925879951644447 + + 80 +
+
+ + + + 1024 + + 107749505110219293735979142621600906412060268221095964958047755054026889014562032384740357183948942425034845634341718222816289382158342428614326831095853091684651319425403499920271331624120186696435758082078835771213653665909961668175363666309216938446744591705304849284719196276795882657769948946973809132161 + + 1024 + + 6 + 0 + + 35641763542538072741522529757414549050982531654163758594796572814515332674264107217382876227414938150895794246663213699203676045040345468365595904518557216932736965338172782300662556342977609863343254371250428708891065753017339503387158828908221127194666840726277519886534325430466409332054289264640169277844 + + + 51516953028966449446491964497485751517990094628891894167852992419474152195473677450115630109656769378494026370993046135905409016172357252608391232821836911141770346398361516943084535741619501601620828360646455885527609024954604847125816880742230840305389082240666983369173612747169877033987337057571277486908 + + + 27524154739611696404554678600200022524307387187913330804982598161151693948859012016036623758443668517076661729602221235091099505199024928670720378443021686975221010739315229994281385292748497564017937013704629634698304615102321124160754148064847705580729356980912869939320882633389771287388187641972691550724 + + + 103377113942637790287003533084222224091635314875107183584866015855151366109148344152031526934949226690062760107225264806479505653533683391861954516724319175283894690835928918195415330630293690379979533803005112548786693580568575416145999408621762182595356921903495847865510985584950381585268423739186644819794 + + + 14673500808702279959267062967735040754333506548920926780094883070331750919458000285586391469687032554437676209528650776647628681974602751606955902150200789053315798988526116770065473921424842764231711641888281788435107438350932690834592578132496704763814673717109277628114653974891957529423081709795618347068 + + + 38859009087118888846561310819205669852627803673345854898080307923291445412916752468089587603202768160020948351869132135244840063989628351242421729167402060220673267655462881686556526660062794364572873029867581614425348332512100620476340441607712247927956176958026610185773841792228062538690034354280429985168 + + + 1 + 0 + +

+ 9728152380631131681740808838984346417922505362633733962369711808826276345645215837727287141565994269326014156795037119740007855698527133598892615473492227 +

+ + 11076050301673918422116439895802538274231870898680460235999737357428177346058924262307656177900696772027564584760665000075886788813530389221467934275923243 + + 80 +
+
+
+ + 11 + 0 + + + + + 1 + + + + + + 8 + + + + + + 16 + + + + + + 512 + + + + + + 1024 + + + + + + 2 + + + + + + 4 + + + + + + 32 + + + + + + 64 + + + + + + 128 + + + + + + 256 + + + + 11 + 0 + + 1 + + + + + + 2 + + + + + + 4 + + + + + + 8 + + + + + + 16 + + + + + + 32 + + + + + + 64 + + + + + + 128 + + + + + + 256 + + + + + + 512 + + + + + + 1024 + + + + + + + 11 + 0 + 1 + 2 + 4 + 8 + 16 + 32 + 64 + 128 + 256 + 512 + 1024 + +
- - 0 - - - 1024 - - 135218297597036027447710869998207208754674606065213053565477328119318307615909175526780620233213961426236879812016724358445271350587363396402647314849305621510012071242662065255846791249159498224132174763132326817952843159753470530205099792627946188037319629342446887089368727200769772054196948434863869529351 - - 160 - - 5 - 0 - - 18208244590241069583945724715874667682021402381869122752191191011908431102922032101750150575398954442568433700325906936509940645446026799664167551673847031697308843403021189608647351053797462122799257330721911677799321262955518693413213492091091575031816278740442189255351713608125699206715386379787631136553 - - - 131540008933434439797345948918394261880173787648911427732001625350824200688345754946399083539327263132740551020405739246247253074652019164142804882841356667895761572327083692446423627850400085866440853738034890285736115428435401625648425367295082976489978122036860020082169538328537073357748608207155548379323 - - - 91272725802016999926151875073739471182280652070511760378850930760962342713681923927240228531890954606645620919696449005573523123959193016212029127692446066052985178174169442856720775137926238522268128669447003671386368122267146212347585948046238834952090600178685872531305631839437669077746419434508311013383 - - - 3469882655055659224110796061184855363317387895617202437236151222595676437356010103862254518369649822515215063723506132692782175600271281713617198794137567836935269721890075460941750695290740788356081320228309732607034651115489632489205897080536002378820247683062542665099079636940180095369957072814768593231 - - - 30597361783781676797521480522484587284592145075325385388829200913267968937767278691821499603927812902193661100233957450599038048910138756474842188339778893991336983286399329800775281795383858969341862563509964623791941848182839037452532512334863582834255155110971223966672416785184918358620159650430082221670 - - - 1 - 1 - - - 1244736658805837004330109075480297814211691129853 - - 80 - - 108632052121579197510727782738809674259658270667513999458233547257208694922342747151016335495460550311128145055639237925983221319028074946360737371864153589540779403314101093667591328047044940954750182782695379846347426671180342818611100418161230058992137373950 - - - - 11 - 0 - - - 1024 - - 95288621726635968872770037150784213196985326131676843097938547136462929264841295546771500388417671294966257595433760953200547360249349740933546921081522125275115437397098973842360250826812492033263835470045512007784622189487961151941432994089813647862969606517420125770262374746820810455414109837014665020593 - - 1024 - - 6 - 0 - - 91765448215067823325795421667963131269512371058001714218791999926519624355910110183970996302294343489487711637666736326993210098027018038695140474955963214538087467579370979300852114793975820201555823972904294803171664470191975084609410844843699562290002166572267125918023256183462931816866438417011288387597 - - - 40294104858917502207884187657330535256083121883845488158774475159839995768781522379296790456727414484487297945298577860348991280709907143209769263860571497761805544744736759396126801492587046865066754602032016892804265697920244305298307566030270409229660322389503909826850364964925423148539479481422269333081 - - - 37181927301328601230229509824050779944931890417371371899093425328383585668806438133965151915167895804116880861939436384092456427888455471167585465876401001715893034711967342076190251284011995257843683345831106685333128346207762133410990676468736935851749651853413574904157556618055537455150277384533267079125 - - - 67347955068046617987078271939584408214616385355082946652652558963004113886368419385065451148614904475564270298464228947932932400883150877198113111247417898333396047869562351233676189346740404229714576046346513957179597233959209788707913957203885684064580064021423353037303259164004893420671864177938248968460 - - - 57669000393863291465997741294941801999274879223745070978194979170456208486599787020905477696350469460233194798640650624252822592978323224264539104432394194340083276480589910796208101428768941276014721718948586671096753212427551901667894807759957845419273976923255392385335476551662714791721228240704492903472 - - - 26693245241650097930528211048506005550361754351170897843150689991780056709581651682450255357597353232814904745727236148991266683037674349270826986976517570248012352181812879805573443388140013853869016411689779861764052607477431441788218487198174043217144077012585519677983607140788959524397744180396725947903 - - - 1 - 0 - -

- 0 -

- - 0 - - 80 -
- - - 1024 - - 93754528746270947617601056633800291364861682298136548284561953146489022955904322738006597336491255826850217147425593207106178206216828010702018655449477593047795515376414948882934704904553519186055641276786533221369873508841086692167716664918409533164054262959579372586508029429553217016081926497726561694521 - - 1024 - - 6 - 0 - - 18718193641957314100730569270853083678067699981231377053218236440200570748514195983062189820845228989708114721036335865296839656769486571188331480498517073112230023384223396819136721032148578078215922950710122782193152236503585708948416278154158382262317851500701694633329332013554441192971028421049617669489 - - - 82896076754196599390958700658750134011593697922866943134696485394164355313829104791709121309680409072619102123137695639536409295590399553682662365861769296142916411017933128214043071624336717400223646514016780377509575552315798740608282027520372471946643222670649888877298101008604716866742635601384004923854 - - - 21409157001559082435198762389634006574011661991672395549556344452730268173323934115852207531740777161515961701461098746369193405027011628705790585563246956558634006855496001853186543137136893612905388690157500633486730387558679778087776089487182622558762079085605279790603515779276275365424877533098872706670 - - - 70565991640659014530782020171678876734088049089005570216201610770536518351424325792391149871467733547040543767770865459680906464111242548129734433235362473871904159393238510211564669982290551880614995619280240162572467822996375606151081508022082119563011842579690659846853164036860838326243732394765514573431 - - - 77371797128912592221963604938094942633911707145381583508738772419154024425791944438183290768376322858296041782716140964031431791761038113224908751332497360736934697933992269356158706338071119510267730514533442260161070478749011694884944792352277737582112505303044197289488663410941538147133378198748067540370 - - - 82906267256926337774982154418825451735160292585995227482630966060005770865073506792587615848461940397794441648783258220198681551004852811134622576927680502421722981730340736873927483483912074641562013505776184518064639060490292519532693639651522247920944720222077401382740855126956599277073236976642634255886 - - - 1 - 0 - -

- 0 -

- - 0 - - 80 -
- - - 1024 - - 117121510340484883218702815716016593017369400197866007284904378631159197139001634351397099006348261090254639042478158024516471273585541723720875693552232460895578362633596275449655253304174140947289638902997286514465275801294597279338210032808446791251347509758362087729471534556332712094330499939197910698121 - - 1024 - - 6 - 0 - - 15107464790949779810848925539036116589164680473165481843812014434604020175520176471688364414295094594789131782714144993286259674728780246748998301348736396420755743906492330603688120075762111416310712907772599039447961132953865243297778270824554218777752426713792107606639541765351560469580417085799109151109 - - - 113132619367906663802193126722604452247067407379700239211440005578163970000183414500162238958023667292239182925037826362117516957239919821570280746619833192108348188339728009997904509491615767024576962472478540005115623781145645859430146502168842179897232042057741008928306919479034320821732539898654106307802 - - - 78831244758190029101616472362891555519371645829273483715261840379070989387145987292415360310610897488118375589143503280479343341807586436831967002903765461858758240031822865686048256893617339372987036343650345119947926372267957827867520649710294149310400270822176566699466347972287709536682523581276108603165 - - - 89583752214253883440042346912037084568006500039317399385601176574344374326678906556169715887314185264099152754269356405558198400381910728064450965723135896789762010431669178119883031744022651457596440185119193793176699852604878873526015261656614848828142855743809311777609303941862248597137943126610861447582 - - - 684918354387786416205491044839255104512468520452805205068164464332390890861013726899159853659380168702172547004069779846306014103550976054178864271837177474931121067671438226162027556594210608928930392798386737184879547657514532124037440133147012810854365196162946992675626655050241753400618846478941872959 - - - 2827090550656972121690688796630460105969591925581289110535338322165933007662678927433743438230413437638688120784053460847485119328516825633705134738699602887927163627101863584369718271691217967413302030401970248252827616171028363054960352533790801024629520084292963540458837640796067532543489914339488634793 - - - 1 - 0 - -

- 0 -

- - 0 - - 80 -
- - - 1024 - - 99079153840397804685867478704958595964211219785958155284881016629530195136827933093286116921421314259616351394960959112126590774558615068567723955791014044034246784512429519014013254580736277387087599956862163226669530087515094282327896617665735736838287894898186772994803726158745804341613911571374382274217 - - 1024 - - 6 - 0 - - 35578547039971283982645110066508624345573610232317627247471510693463768653398865835272238114026351004271431932575111890233938763056151590366620841232654704061531541940982892684581803302511323727831984614028154198292407031303845418948998407737432474830158607617228291146032822031461125981880732591780383080312 - - - 2839520020939910414585072396053942201285418477164512070052267230831770336300588444747762843759096401075210098436532138784880804799932247566970642529121364066612216811270441923475539213363391876709967520432970001189613754468394504726917294243804597283185825885394444717803465042728107614758510510324174671273 - - - 4257103436738693167679988473229289136213965822055009836429122086227208976617015158554335685934033709081255434321021922411600352023894639658729306158101602153035636660388068573921523812704376829383643150036396507460136150352573845700348414072481768647411162438985157824104787655967389449019995413270282384725 - - - 31273849552494023387697146195164619556065892108955510829954275657213643062645495427357887929042406068050763274296028240982751299109488666543364710271423257790548527234106226429899957206169892445232737790590754462461209360892073592865787825317580388584134032992457155327142814088810984081589994609099547807103 - - - 35347178693259636224425976955506604359014275201911436639125947893572572942967879891723093129361271536461729305849344256272804438952413715869305278809953911268349508791262359453574584301723678348219958163537617880479600787349102851371503927614310858588626874124144067272631324900475250505683917036436021292017 - - - 52102732689033856356640226142441703447547338607766799410243675288006455786150047981514503689756076319154821254787434210207714021249333494274124947142471750583698934512751038996632656769981162124907250526920201757770741572757079121833484338311748881797371896129073537143638484841938341861907569264174122123347 - - - 1 - 0 - -

- 0 -

- - 0 - - 80 -
- - - 1024 - - 99954730175178004845131539653721707390533824134606712982410587911600868971245047100506766033962983317090892319656867952029116781250661480710843185739353918573345334339835797435830424130435498802133973879689630984537203490181103875802086600280921230328725473474449200859216711406629174468133378669755826399289 - - 1024 - - 6 - 0 - - 58613911232307388786240529740987000882039067599860437772060847031357515586839511997150614558368535541427251986791314469299365847701391023351538654534248928653505326544257910522636722321510290544008094306357049503882695532643010370246985543037398842826556465466041122607877993972401850373499349505467940128480 - - - 23759200450495340002812814650036411105104184704810382581836582136381499246372180158982092762319176354865585492876056145343997330165572678887761521089111659694764726321928033912931120570410344269003877152629946202983994387902650140832036058989562136543699053859110798004475607769263425530430095499690012867361 - - - 27782425796445607511552503734068694227876277361913927009841359267890284063272744867098761749380021187439414183495224952502774379338236771979358642185898028829503362239763322899537168530813926957477896747390629838050847130063594861856714553628317263751461531880058526762279151869539133638780577291661705004927 - - - 8784981056185286950712849504706542909851983675476684831378521579437874438781947443207971368861700013318831210277930183684008548888491900029215961830883091576228665510223450239592867424261582734977160146810093587216625525411002439629017874997945384679431426050351258078369390184459312181275581036833509779471 - - - 67438312305077819888962412973544875116933726924127002079831365096482645787717754904826762149733256426407804919023613760756645934824283717354322616471896981039882491744840529505847451034873496543558273551287489104242041014171297514449081571270617393454781665775168456916896840386566994664178411923865986659586 - - - 3464604326727829206934168876456004920457656854740648111041341919379642725442948759261114328466645767790382904740245997674525442848992126187113268087612395494538879214628114838356903347298883717235497237827971476139254978851080082281176240683715669897361209280214505681097167531557140873892635301719665778459 - - - 1 - 0 - -

- 0 -

- - 0 - - 80 -
- - - 1024 - - 148196264683866983246056824641461916553727188878286846814207149952700786295989140546602219816499052248745376771762136245911508160658056925812311366238900528068507706459965567045224239023241599326102923853309769022811634949971343037071212919062146382997355248278317770400104265846506381194883209546789678257953 - - 1024 - - 6 - 0 - - 18228509827232960358109377366125905423396651073282009255000634400639380520576157033263066403255727758538148196007410118445711222636928632798833981031757422495552319975431175939254099574893434799433886121282995060105902206634281977941044087776314177795281177970367372303622719093916858010157621949175537375437 - - - 90741052971361642071954400353930918473049330103806494303478914341240604429740160266927238572355901048839288876493430663768138981859097012674365597674038606403261541063513022898915424660284139220319595247352870395164358600167094743461905071137254013807294601497510689150945162000419459659619999603827775332678 - - - 52734335451280775701279135902793102618804746933648573572440269533476207593955736723943187629344792274001509257176599036967710480587413456988273865241932371090713054609684326983191462176991220730297153396836508515256005211749658852141138853888828449929462905950872738295586503848336537871567551750808215082154 - - - 121858449637190773866676289376800522277568993915277707214462950174058584758252432920947572621722050668109626466687582272873980762806089036347506636343533340986613090442509515739606515227484919838200607799752117413416448281331606056270182334689643276303764467680282413521568568120011182673925501023231082406153 - - - 37196825733132964338623996101449346202869180967029642202058352423341650421724872464278502908541095717874629388572535601572954340968281300632852357761510380827733721910298105144168674114000458492760192448497375493358162287626785807975379359987001469882105036987321265846856757528606901421058839136798700287397 - - - 75089855211101765747300894547085312949871336795292159964546821502857006262710931284436535591390767143045054287236700353745766551337135697641239389214003872913304473085672132743841053938472186773425817048000547738177259207808092058727324924409903592113635766451695610110034720923274183936484960662875433336362 - - - 1 - 0 - -

- 0 -

- - 0 - - 80 -
- - - 1024 - - 105921949191653130859423411775455174812642918848669759359209486362932598819678144087209481182550147678529129567658791265359717569767628215894734409001006779022322289698515237895707269420956251973406350695311822182673083730764296195817297540780868975477123852203726080688004629860517990328589192081987644050229 - - 1024 - - 6 - 0 - - 86809400749152861743901567276848272927167445497006079265900998087562865265602440835156566344510296704141655423477235937471795088316625845837856447310120665238699640116252577611027501208177910037535632605368178096550493728239151536133777140960209848761693689914935806579004427834951787425614424456419297157510 - - - 84986197247511436399667031576140728639886927069411759928791244212693888161425776856726174455028312620459053949666751815466973657597394187896486659471058818599622253530061625009497213318036240988480751591194064567662021711447798444988895990719137206080680744526229981752063726938789038885269097160956167285566 - - - 12431205654625222881707000710728606382090929111990041388059059946907607046548243604353853640940005905715357216784232240313960881905454724897804957781475751038209721410086085767242939434308439807150162545625051293193433624790643565812552903666506190662522259255795554682338285362255530961345229551611440343519 - - - 62883235755082005523686546548606789143770348860378546277745391562811162140335817900845352214174699090463099544541601029119065647315851429798873533063329837639373217180256975002663524244050145680516763942257347656552764882712032814090180931672955198158069467918914707575354901887685922556718370751575138342589 - - - 39849433607740902504402507874016885026871507213461501810264903771866537152481854388265980706007990086277706589042473112769024003147970075181100851394556059066286357588607531753104924164102535180160270351409239344423986742160630582682803306956751475609550461013854012988551751425448894542674892017443824734012 - - - 85402225442112559560680078698274218019993940361574204599118634528616463142138719233262976451961276991618853156780942664995492868531530624507421313975512606915096058618792443156198101790705909662504630168187270536791683734761412420713398341369713188166278602069035350011783353145233527044956434445304512600650 - - - 1 - 0 - -

- 0 -

- - 0 - - 80 -
- - - 1024 - - 108440748919252450268428286731731896396610163026933503975849925663492334776921174398497109505538747057893434317250808469760213233529336913398085925870706542294714657431121759666156575676722682156151413720356321723309169997769639095210994084916522091702333943625021802404556103531364881274617202822828310848153 - - 1024 - - 6 - 0 - - 66366383659085004160581858686068110323987677633068554408731820055937312391603116323527462447105256578555787138213126535928787848971976541459974948337601213550884956798828607581314470984305212507805730810283981952589260529852613686591965244366260752647049304254010848262444064395193144695135425020863379006256 - - - 76945724108134514476845806024636683902509514081378625453698025707233689344313131316105525545539579926429167457073332412872790363136331080030707890397365463990420679800561805613345351927011441895347629470989024367971421806479256556337062265729708476344598157347724009574637722602080586962935931878380448404266 - - - 91945329973224060248558889328744255046597767263343203901720894520436658305695307815971264787080717251578623712083670325402817260476998336830698287676420656098045289735223431738396971319193824104754894276305608143683285127818367138056317944418094268645782094697587442950453451099229969927726915095865444522094 - - - 71371194814401374673127041666269343887336750774645785365973831168673801465656031844499219442062352660855087164791888562838903522706610239539435340535864232794707954647487039513635041583341855480149907762844377270478905725702421973086424891767443863000735666109119321036123589669276816773800922411249576027546 - - - 53718436417526636858730643071130396923526708450985497713286303484760405006322845800085165613155450183026982545846694095243620426398424635300019928951028659679765785677107062221527213905354703614993367947430698278405310236478443546679988798318205559042482374923767602250464637773429717300281505631064612985081 - - - 85230469722743515304402648589847925000201154330027354125047810198070022725031542612895149579396712621532910796627591852488733918035116059401887268218978788971949898670298569884150675654662295808772549913103127258327197135266119807509485752123513682985319604190596813804839912737937728219384325250171411540887 - - - 1 - 0 - -

- 0 -

- - 0 - - 80 -
- - - 1024 - - 103432042254953094027999928574250715964500891045142387105955201932618522113984190182166706020884933161447941491385637733523319614167734344468728413306447688694643223282152714640407364090919183137006284201884535802398403524505317171875956878874168571207572265824173861602627771714795571730952163007208142820237 - - 1024 - - 6 - 0 - - 72735857654996330036308578750037768707512446485674661426090344826756269113965804188268267650912305793719752190143646093227347682752079327651194810856984810512909164395531967789876907601998849500709695834360721633503971686727031033634428158149145749257438769804777610989050845392734398678464304671042690689175 - - - 40354197327776309644557445446598247511877805740566355719587647166808789073448238334020156687581688473278073371655120817040636086978579601886371654352774729778337067600125687099708508209515703504788115675665658396923040920295778105284271940275617551147714430295447383909281391532478964687175643491947382829869 - - - 26968813628185832884730391035851987751870560318430849916723371498400782087349207710865186129239304189549444082550532948832976767259584865952574643740037079740215589837871761474656629795571319987839311742585360362081712716843606865678855283492160943131234448889819908044401388366435372206735181092989882690610 - - - 44457756325918210432882749039045279802693637901659165506229652641196771463619711136701874027949976037693870830860638977238468910265640234729073206675396560391192913720942212407458029980943194950742066637775931509413627536969881602485810181257639579907992687706506901124298572869645460421266928082601925747112 - - - 17923816029308169688209802751254596783750808205473920711963121223110109870977619253002898105372250772280013117032657917924973651135856341002576602124287460305553253303790018252719017423511552791332813099369856129658602326535776342375244816034773978221082034151281828464402757244302554451737031177234874936733 - - - 58173516169174283964719668683473056584525739571524859721047404025100657870657926179915235481899922046403049387657375246255178245370444590309046031552510281811181831088860285782828294445034384018959362706962339714212986805788263200055409728428500955125311148857260741294606734880811179920282935017488093954695 - - - 1 - 0 - -

- 0 -

- - 0 - - 80 -
- - - 1024 - - 126228903767442190738148096183580491175038013895363063255063879407638776222007762640020963679700983981505819346117331332097744171511439132259106773717665842976406975673619367222219945376954037887793874062977933096988373359681541459886631958588231575466518127177060945684448323334830138905052399414218163921421 - - 1024 - - 6 - 0 - - 97539931636318677461475619122054540059104052317022399756575154292552051870858044057227021169523273160051067173161809677608371202374236595169900819410518245929982550711392322042314682950608013639486222401760902052975068868934717538248202265198283607804041217016155626510986296204640357633562628725262540901308 - - - 17056048088041119848885497185187738234341957332739548911174241850674169289366712176470014650655283087514808671532359181973245193579686505807246886039638542093762471617521947338468427670697788979094939538614633506767486848270358174624110579657908121127644226601122674835651841028567546912507950233461561314311 - - - 31717709189699030137875842801316834424645064031847570293530325225334129025771209881989868755679274813087722642958802113724122792623999410285511001585168859463078978573404425652982888882289493612951079566418713192311092484146177732644672658032091895076062007702891319957382778438919270892273974397851698486802 - - - 52701408784517534567979255300945480765809161198465471154967839240963141730818870689354317216286196381556788622550165176263143040912951902845119716643679329549799829193894570784536684136260779179477022420722664058284142073288038418969152156881985103589172969912151842893647108788505003435443026642491812317969 - - - 15916170466240831405710269071326971495003989098632832660085003103077847286202099441873708133501162524440579674719437136363718867648113746692100804664108054776712148615544501485090998986423172752761257930805965506564375676115179462856206417265463968081226820646414689722755150455107075664424251782354607115997 - - - 119874392493908971774593399912229045812669019257958357082614870704163802485902701553073252681759628404556483986983935409150939979774709275900622818557001714033801638980212024983490579855036873618987603097875751122714671577192226926342520061281357579934217951516213006849868891095137524137512935354897389930481 - - - 1 - 0 - -

- 0 -

- - 0 - - 80 -
- - - 1024 - - 130984031670979893855543842480345875518508410205548385455401787667182043276909712853992897091674870836021665068146327054461603450458407290201372558787290109357683738428013567907514516775559018701817491758213188304978093675528268199327422042148541505303706207770150984130237176790872039958140095900892697292761 - - 1024 - - 6 - 0 - - 77111031511076776748383055590862571648674736492772474529961718646938316725304876527853934806892564363406371656844786106299018421240298065574103119127179436601308127134820838280671592776233104655784461864696507484750746141074714338613753312756700370784915468572345403051130346709078319417883115672974802169835 - - - 3128131951563621685781519514589290396078543084150675317713253716044387307905521327893562744421717071028534528094967705348771755396568977554185830341410613830519127494248441161017549347924906597526952413022501285246828769224407661000067457541358719277808165554742389274830650941000817519093291137439421649691 - - - 24954141405440090689976175252555167972525713681839903660616337028203242900712021559077665304276350472093427384187451836674689185805100258168917640061516156543626305008035523276260649599372451478761753446079713760095403758829516730955461756588789162979921765890451415813246841487242760610785376086909463933797 - - - 10083134356469565434820655937850585425146227225076587201691007206376287612169498960565670490848694021370067252342213688465673488420651484169267195969254736060823678091580860232493159013856793525376166944993634152015542702135847543328581535175016508032979250811181479986919377039311967364297745111283924007008 - - - 113848733397666003768323762636821213490695764177128020789115723590466213187341258833452173134117916819367401260647045106530664613037790726812093687986435876985971021971510207916178699329669683834822651456959414265166368467473058891635488094103090980035908623302936245578454636917795970043625492656294734023452 - - - 86136816068775947939443892035798452754540048307990163601582410345529875583874238629932272530008216513299726778108060514260087906788536911056614574118478556477474027724459155894339604045879892134387001046080544595464847107133404856959533587474371075416239607580582640652535022808207241217726978029145005615879 - - - 1 - 0 - -

- 0 -

- - 0 - - 80 -
-
- - 11 - 0 - - - 1 - - - - 2 - - - - 4 - - - - 8 - - - - 16 - - - - 32 - - - - 64 - - - - 128 - - - - 256 - - - - 512 - - - - 1024 - - - - 11 - 0 - - 1 - - - - 2 - - - - 4 - - - - 8 - - - - 16 - - - - 32 - - - - 64 - - - - 128 - - - - 256 - - - - 512 - - - - 1024 - - - - - 11 - 0 - 1 - 2 - 4 - 8 - 16 - 32 - 64 - 128 - 256 - 512 - 1024 - + + + 0 + + + + 1024 + + 93230763739280571504135894981758464921549533244404977499280100317610642158696171760528104674637737229733175941568553403723105175097015515319699070952376427079443371106935342247851424088952059295885886935097518162672135947106049387484840074591589257360230315769557689696542382392519813078599471190744767574869 + + 160 + + 5 + 0 + + 68483281100617598890690260390149768811612212228415625203522044461046667111481879531370567312465572767471594307638295801373186418716158142849817983459330707680663417874829025870869126176489427613080242732002651745488662881285588979959921965144385346078984637002460369031880302928947344993869585533184880578110 + + + 83265639626129173611789599010225302025152409809086527203484455901023769133886691838273456108748805496287706878962773757945456134873405263745164606965847314532700391809966780181133976693605443364901583082171984350459199737213226723745536820865782465101328993246611565093204456820916921489432935715107535378903 + + + 64494645596589253556216597795109317230393144753176410221096594531458948364177234628870736479592689543360905599602657314236263592101092566616235573847064708472909757312236854415546056402214693799474345167566671352673240454618588407803218073337529354507911802599713376224420664104074189347847705900767264872038 + + + 905161046851521409257577111452816735715252358623913604457484229604130369307839601749333327613605388607433350593708810515691575210160388761595869399020222667210908597450718769664858099351646068693841593092163471515550082960630078586622005691616793435150664360492128321931098927419019241842770901510122534086 + + + 41967547411890952815359321374560089169572366216165489882401854020396349040651479953032950680353976700315040441376320576704876897753122041503541594885225811640391952804794467791615197647585183498734975425091154552964180829385469542341052967827029779452736068735777647237824883904045150416844783850957326457638 + + + 1 + 1 + + + 768028739645457608782610724486466841945856438193 + + 80 + + 121389681045423325292614017485147832276096371324287958707137023784247707201994560568190745220945575100850617828806471788665848145386600911065071127506834995734161325061718372704826817340005630257932482772489716899084347057504860573458772886343641833581315715476 + + + + + 11 + 1 + + + + 1024 + + 132805917336342357621340347406652851500160158358616478910647979991495279410794939929518375989150750446928132372271337608193443333865973093134231559072633996501463762859681361235278609969585631425793848655519125510571433841525692826089479555621938481220398806492169797461801342643036874762401113827812141565129 + + 1024 + + 6 + 0 + + 123724192971345628283598524077771574642115516306203819302642840518434734884990023342093372590141717915386280139738278686607193677120717277193327685180610485720329861045086429532831247312816073761794696539180603164001212548485317103853221255907270707439711950418933701675350040464705736338361874491112644317294 + + + 14625429247927685090341663241649949148258959797292039323692281863043191792520221408569037942351234266447978782199478598250390786360135847682725454656794862494759779321288036136608651289809110043898514796554758669357170034489653566653604233508960098637358973041647160974378868936394566361597245297526090809584 + + + 64007057126176875784921548625312090381394744981912355585114232564443978202823028666354191570270582971317908560590960255621718151644865169079937946397430383552508870164313540570101112038765363492847255578958178618499930646151629515550809210720009750548884710211145008245153069694049417395148648829340938687662 + + + 103115992915880337411327588408688265150975095052055138397293144081059692734045417060416587664821844857318695820398000363692718875618295012846030208453079674394744433816396921378281051337563089579440046048625384540937518959711246975878537125941932878593410102488330542299641806404417418885309003319570534438453 + + + 119457315332497076188739071965563333761790600794685011698971978110574170937694642037185938145352267447861601656017195376534888030612146228692269726722534673032982839555108591230005930224550822365861369188758542352070280899039005900661300902275599304439000283009496810058515041286869086152747650395143418209695 + + + 97738799315708788763206134320050643392532463560258106306083499059560293956823651670664308620427613476046927360217377480809698815484522143039469284490440932497202203091566977872700143965467171603897734591262817015477036444327217869465633675102793500947186640843443170349950215500682011284039501098188488514980 + + + 1 + 0 + +

+ 0 +

+ + 0 + + 80 +
+
+ + + + 1024 + + 137372634310161859676135284402338656224702625790752326093422619912065941056411155016565478217907728879945260871334556369999320378181012769399229672757185658932449669547994359702315835117004920960039833723832775157892486474472871781401535566138599328187388026485937842777690668704923449947159362940419397279397 + + 1024 + + 6 + 0 + + 116441115010520204443701551044388141672708396572634839287898503254446689571343162226795875092851665648107955057536241015609708368366718318010287460951620183224189985722483322655563646525334936557072068472012436067191783998514083593670357905410483156163550019788757133637004401363151527763776723191808245083150 + + + 27044557351618142662356552877489107755687685627121911493229457826128074471372139670480946601583473364230995461783264153391465908763057631990861033738028356787438011645743530045595363690544107938500296332245528760556413617439234729949411192040200982595365086278803028719387624406149566721713663632397652758734 + + + 18668480646476250585503852417335962920930545198501147882117553235027914985366130789840737981562565180298275654871023023936581742688856218428559624653989709620342050760568013862082037009826528078528308498338926463622071936645167033131204995449391746215916468228090340406579421220320039702041285615945226682497 + + + 124831643773880234485522390232602697151624554744878469357280937852918545591277448221883189230205072357252134490470478766733175680960201808445712280554760481792295061585139951074758260903784531587541999977882176959445583638063216972509599746798664421534897232964080914317787532005374524315535445105635534739855 + + + 59970642815973695149052494697659654637535503354257025919678495841553238031034885486365545257363298700332014605474361404182598059404831610511163756704140132090268579779044407534827161198033244776683186964741076946492327722988775759361482746512239360253228317139110005567490550026268269509261260489164598329675 + + + 22923915272163963950857605925330142022074779916236347548886633162654056167070402255377093400484185256137566072514608718416367258335630496123774726992155837700585510673044223219699749513900672323661639291542257718222249838123282120567272749819257073710511915155801225598478720475650206575779832514355014487626 + + + 1 + 0 + +

+ 0 +

+ + 0 + + 80 +
+
+ + + + 1024 + + 145833845432288909121084926233534057685357293274340350126668766405212197351890804174287842353814414753368096405191002821422184530789175512390729502084743232689937559449075513447581521298005309418519751610349842123168680301350588679553600672970038503825238594562290725630967833045040620813816180930525533629921 + + 1024 + + 6 + 0 + + 5614206228798301098336705931671638644909555489877769303373552985024454467948272719941276640621802213319824489026627166503592953601271862091261438770581967429841000215861631061086884950337508297975792991010971325252918140265180480069954277705396167335598614372709439485252924902184204172397796469683948482249 + + + 77829222239122835610084423738321562150497279446208639514447460343866380070175601047808125427733325611930916432062196605539354365357794550584735606610432247740273684874796370960540670916977515416987155254054153328167529316792368006397532847978034025278821903835834149607180869130216088411657110222021618483674 + + + 126526668999549527105050115708853820539308975410043121964399106650368217475035537783616879716348093999454486886707365887651216832345937994185160915756008992749761345129872838686896268682011102041005029710003412657931850689656325888000091306838802288920011025039877500299503261395656474277902595055003645939377 + + + 39519547515028449055017861664894155862617764060490711234501925837865547671173429701804910726363843756169165093168047068989948316277502727839336504944846821161828359833653929929545581648110770846580090891357587504044246698977653720185664161165761777760965438539711667531830065447338000177079619272633974997808 + + + 64911171886091908379987659695928798436999618688156351616885354569475319404854703300389871388692848749447706845284633183118607140873964829806267750277059617538075740035634698703898760746137798807795759428578283927848978809795704455781269250994050734576159373116072199698554416776935114764908963304498490630504 + + + 46337737440906880658350695547525646305900567458168613888364269449075743635956571509878774476192279074625591314542016353903902280576521867929458581523010335829319495590409102271909715542993648132948180305225658201466190786746685383311897244330788754428392449915461044438929637233785244332939802020516997653890 + + + 1 + 0 + +

+ 0 +

+ + 0 + + 80 +
+
+ + + + 1024 + + 146080828996844893786930415030267236937465501130613168303735364618844293026036288220097635327009673585003284120262747096635449871857553308329749899517971369512993356899511456706337957628017589622952308458223073708168002051201346250296138111717760726492689696085001720244510576087189788400173594849773775987061 + + 1024 + + 6 + 0 + + 12143846516438032065549326588564641993076335572135680144319973070565227510388555878816485541168565333330331360373203107549711159307955856012988849600497784921648620670877827610870429166714421302856006331726388604858639217479516237211099294053777590279150366532220218255101295698436049419849141612097902640451 + + + 130110283334213982281592724744587355779238888385612173261041558390337170888862195730988952587123072858116524751419665014046802853625023209193025314170209762095895716630052691721289740627897735112480237539255012944565383695831051013027460838684588426430717433008544285106825419868548234785369723450095304865124 + + + 28936184033269797712301045816156985323899945333237798274523352177150263697445409224159438231819208355168670625188283196276111898818482147589072075244562000752484990678046008139123016667919771421087077668072425052038197223173671078453038383761535748778879934180519804845917837931720125662698639707169019951825 + + + 139743313044528582631657668286088123161464964626310113284683779085342948598023633133544825825929928312362129974614186131729049145084732952532041531975841926166858606672969874133254866846900373891351537597368983313837098495423640205742172752175958379844629957134932742930140902857501238693610132562014310099849 + + + 53044581730188892877631548732096143188468162339421906645278191018430149084642776390613644404189469954372875388873708624934832371281884377986981016031495526801835709924473080917358419053075051086050983722965169085001326293901098332606081215826837456256432766108294919171060244900518692093178547790827213354457 + + + 13720982697614420642042383264268813339206827429441510070099063031077866574985037908849971402680608542067662118645382188812605442192530585575940209920553520942641967018589809365098731467452204409869649415457166095843163238375083308117631225271409506085279102769367813064999165660319126220444280297921602368577 + + + 1 + 0 + +

+ 0 +

+ + 0 + + 80 +
+
+ + + + 1024 + + 115562432164102251406622967052071750807258172151285544566894218498931362209567346945848561669965827548724769820749118527361500484654503353982654831132691503147282822681740720558479928440623829908178283919727041827646963738754679445285325013831451162488739515312866275942511475472857933145326220132237853644557 + + 1024 + + 6 + 0 + + 1918843058365060902224156698824791077915048816126174273828173328827925146094242787808159127789911738230990921536461350767134197215631858847922569466378620788070681199103616323592972003068116871618652298189097954624870678096346675641822861238845361050835764226882558875078705801193309174207649691981387676761 + + + 5633663323728715862831888845777946094661002864544824727134600431003469539113905131778031633116781888360230284434775486594799461335499354181125564310162945192736493983408607583043279052489225101857443790367000861445428439571903674899529423583149897600345297997769124326200352679791494774441424376422975993023 + + + 92224572490734132466871405475772602483548793692969421833571278855151455741757597222662182273880403467624396109857103285036810071642000551787217955918908430643545014752792961549564256530725754107414785146542687179641756227242772610219435049498467256907877773547533212521894936045955979927225093316843447273624 + + + 66183053406824854997955985382355384715497240013453258897437176350763562425331521822435595550265618083659590969116645425396908998848723993833538106201823652953927058335013828106360478760501723552180389313206057782227500096729295807156679165429081748514586663929593834603229571872339167803106406082026242486247 + + + 69743124750042509642467145074976059009243861971684272053034970423993683530657827278165993761800907370985552130382901391446596933005528253256387440804145356085841981356225970618247323173456846551942037337211218981373022884854505546817351938007556625763760451941625550568126244464144092301218250589930964771252 + + + 72915756120647370787512976134911056390045357692685473282250206465655171985686451881325200537334167943578623112088025120468788437772822762261349053705299070854344523813062549426226658609713960083898353784228091780561562317369856737756233116861220821234249458074025030344466225233689070112675547477388012361378 + + + 1 + 0 + +

+ 0 +

+ + 0 + + 80 +
+
+ + + + 1024 + + 111927356566104023053025699787625550838058397847053053322552127284788489517366540434191289811946944159151898144044517991896201183248020899355294666452275356580458700724360087814407783680353738034566389540489206594576108611637326536178335876673250303367935270215570934307497912954941670160094818547669559266293 + + 1024 + + 6 + 0 + + 26083963272420992631361325874882186826320192111270492885447297527829930121512725063041771515422873794638132630732246178945827524916353536920338032942329648884862506341847807165763917740516440910242943041732772815639040483973079510498995058535404124602763024963637048513509262352040839650701377899779182492450 + + + 96349476044790960219277900737494348910404104317713878532186820315042836896394111182750693236907309305366101392065377818174119922772262450705915928502291955836072143986901878966783486955686515491687652827133207058317134666488154155770640867360263153123215807876346934189507244403619175620173481171524025037609 + + + 54690578151752424968627597530623695060322314333503222637738707156935596285996271874663061813880600223163657890492147882784449085042519744202705258571783341725890402018930973779086740363427426280862005142662828899727835119949559802395804426318658922453509773311165866730072879701477097084818422964205782730898 + + + 48548246442536242336650178813376090147825187269338203565219773463426768909891921223610424888168123366278860170690454785019898354608412222321318035320240409277155997290872403728887253361243526450374951908929982176434127615635172022089921656613960936488084542875629883983721976542934773414487851263961537403813 + + + 8413113823923925485688787367614707477657758975525795517827722017213206555788250307268244325721882479636008606295000856384190034186952886166588759610523745356045626108013064205521440618996713728008939728528935599492193135365285724053499413941300417129252635867240091199959544379912710341678940281432723529492 + + + 68772694314410414206205467046690216598864909706182681421449044403117172244107392479030110544064478992356950657658675437260300111069834928175128122254740575410509949599612145656885798061073750122226817037094964836568463944945479934451259985250499721987903002593433201657517849139533217227834891411340995860823 + + + 1 + 0 + +

+ 0 +

+ + 0 + + 80 +
+
+ + + + 1024 + + 129247253695959703790072509914691217099002852368322468045795757340611236783965062669505460428210762504741229507573883904113055589574393037898320307119534601325006470049122917644647993271072364497135274094746214874360172173123358949071606257692363319647094023309480718209008941035284596506382336215735779493909 + + 1024 + + 6 + 0 + + 117762663225409742292003907909356310395762445497211461079165975468263649230373970302717051754658639529032746668081675057812533532269905582012773970520260676258789891000845981509443336988580006031339603500190556266787092149644268028195165941794896901354362131862834598206683215509345587690168857698887589234574 + + + 41307676734324917289596188448768037242041561478666611229918508332376293249216584670403871893840311327117612839717795187029126418654206536820216938628666056443197376483010899927824631712516956909063917313355829047154852269087395692986828780702480137828937293992857398565122465372059669336909756576677250313503 + + + 63089817419614027949713869705443303414261012258660802756430718945673750293937911985030722540073735567220860290764744309902169310419281458073896754765094348815090678089662279005948235003153968829581576084867530630559125676708622432223591998446524862273768360980298243277853419634774064906702269062659305426330 + + + 71199445873142743890705311828426192993441595666700751966078671905336982229004736114861991503242913305495774688716514992606079439892068289110033526877163042238652945854618818253560032930426612158830717352398512190160864531194414597250521382878357192086557641764475531942766422233904908929408968343948911160272 + + + 64619094101169861260658686391437493165297845452472272358760304057989905431808036959407913033998903580567058744493381896304542424570477466803135163609233034624791665491361616919472989117059076521170734411692284721188464794534574401950171105972902450942503245521469623536413107373984706704691477763216841890189 + + + 6677644520806874248729709604946168760244903183951381719735625530119707560190818287421767756180188265855439551326384671573103541157197475833159721985859875315233932931981009410659195950024397916060600415042070216195290723111879774732526912066923480930549563204082983120980936536428103764153567950378551358385 + + + 1 + 0 + +

+ 0 +

+ + 0 + + 80 +
+
+ + + + 1024 + + 95993586374937066529455162653639008917944416331769895672692447131258623823530601748524840575528704991358520416600542951520877430553404290694537271374818615310922199629418777773940917285970907448620026552905846347625729841466963377261529302788316386653331236574151237767948556621396949628879930029930854431773 + + 1024 + + 6 + 0 + + 83824229456454055467034777958381886084070099575662029359808652417840721999302831923458207007454244578968532619690321777920454748871657405334691831931976377684607781703339528597558380460921586675470307191208505362126230822462336917172922636421883257035328073770261565664854509432609003556170229901400608515196 + + + 31449802613073682797257425139131419417588192884433609539928376773383346328101742134248510325629565365298437902156586786944230581371313578612449753268670024177152333713470507828982714894227374723227899934752245499118873909871643883739539742747200765153224975710081093451787655817266736145458329023747843360297 + + + 24046901626095895679816597945607311212403525239995850573241184656254370764719651915880942229067459392372913232451799155395293798882992625761937473873153502423890736622586766763795872931503799528290427421747236393467366420155132576017108972252571854737191517057107119000077313989206985638792731956505981706798 + + + 45175832503961230046015360947078569944511308174669274010627205837152263355923031460360917867200068609487136017032019574229194707255438267238936157298227093781866090322680638607700980856948120525143517256771339934483638452609457869091603314126054310638555434194657134665694213555411010667515926827636647302610 + + + 27226310139875595061545788405464522559218586869146317221006148013240284964686677834822701333166143350393682277077841511590250822499110747742693496232681426234740573959099299323631804367485077842063495311347905886490364241276494837378393667776950517833124284734693981208106073674942158940515201927225260896177 + + + 28061030032752164801968067580170072035179782094538078442993446829482618382199841587780304480987658363417992707765141978367745403741272853169468282987262916058066756117715451557465508245153549381212217078275504206215654107054783849807504784914064329691028379646444146221420807715386913209285477170712492499628 + + + 1 + 0 + +

+ 0 +

+ + 0 + + 80 +
+
+ + + + 1024 + + 94684004306111857506841112997261544480170843980474819684454351726404536462307477506168949707131540890820127688938124464318983598656261985060474394464444104662851771105569910458875690156971112007686589137184650027225996873453992879004305779154307234416186725944747553098765878314910767432398939363070193432489 + + 1024 + + 6 + 0 + + 41813145478284531524339888170688849836993489808773877061381898735431270330468430771009301788662385120899147678167321573709618504876159814346635143345363712394968468974763358047056541628004679516114879569313531494252386434132347497962429320391260372741017674071011042604271806756255040001608579498316923849593 + + + 66985412989141614286302186698499483703029319437106991649103297187111727830751850293036846281738132181703909496240817794912400219147438773406404404501967357891659448492407736665354464273194466557245973728459910312238904312073312671232102333552915861810338965397370533857859494752184791937326095095137600260354 + + + 47312445634335688130580705786493131286510846896090168556933453943379704950126824709335441743633692656299109794749138042476418368529339230542721236120630910870410825198394675989175724057291495828269337126435824903651873397607780035162801925793363290999747965512990162389907925450219773635717120444444967961403 + + + 26680941685059982265916590861304381368349841644910847763290590165644980437512586663772588348564786395142074985622665652147665283975844718675959745082420493895716957522519133528284438195566054958860953512709923937286271601444639896244630126540024459226060622212289739313704639649931735161505997395694497185980 + + + 74083443550392038622058019232286521002128537943817376082249256877190604066000435323031376336866028072662736957904562553741115362551808059312277922794883095838735071899792161563043461419534693122988468859364640131280222420706345691410443643331380352418667933129375191851645103967896117642593878204014509865042 + + + 30557934325334532582271071478001957018070185356327913496618682277547859447967138146722346701435719877241149540478472366310643131902542023167448548815882595053911370946603870567964058986679361070823587016887587552099878742317560934642428976996087168254547665849214779296369547563107675774229435656829473513432 + + + 1 + 0 + +

+ 0 +

+ + 0 + + 80 +
+
+ + + + 1024 + + 127727743954354624281854745476887090335808566069742443817890352306117585796239126022362261263079819519314090394014361647646460805892494614420724452999880429561236881692111401169717707414124936138355932922564368207508256915042248864594779846067983034559994170386441595183852296112119579847539416226299289211653 + + 1024 + + 6 + 0 + + 38164224196132104532329483574437124604055028410291615521779477243849960655602119853635308460253142535900192481558061899029051510773421915505181034038040205053976600340395226223552584118692639276068809035773829056879281287542819362565227716773397503446437660962198956566256514393193806524849148173695204924223 + + + 110678530127192027271644996149003445969262072382022151859817469310732453833899229470363319557449911586003069509988091720697116396999513012913686700138918399808920334993823529829378539506175486461505670850531128082734443433833237420355314390270799453960429479062564346339269484877851018621073091246726296041918 + + + 122548490956895798346580701645021683468493703155724198028852392301507630566051709653966677479391148249019113594983455772425222329689492967526169663910403291783540669836098877872130493149328608829969126991475661060234359382873009916476841684477657337780779843037860445806000967591640647467157452180419336440064 + + + 115049765164512475615816754723709421915820944110057140572079223148858284078493729853694322750937204306066347373205296833140390979619473240003424221005440943252946247163179631339839082762769031171800431973311643442309923874949666515334367655281859772013653858842591796008806616434102016382825819024401335460344 + + + 24473572867891230766459628437908127183343542625048075648139993688246520961765676225141015722308250646609649372811767064660575479732024522516576703257333821736317565819935529241994964671174856884596066767646349413206450874945566058276469876978552642627552830542673524471166381537681830302599987521202991056916 + + + 121681456438779282590844849528459680640771312311817451946372654804617948881697814947418283630307162863219078621980522042948479034075970549463192538890581557434181542676057282587529357950472618576160067047151888130114895592153330967041148579160247158143832010635353491887390135911088640467337273087059507194017 + + + 1 + 0 + +

+ 0 +

+ + 0 + + 80 +
+
+ + + + 1024 + + 107749505110219293735979142621600906412060268221095964958047755054026889014562032384740357183948942425034845634341718222816289382158342428614326831095853091684651319425403499920271331624120186696435758082078835771213653665909961668175363666309216938446744591705304849284719196276795882657769948946973809132161 + + 1024 + + 6 + 0 + + 35641763542538072741522529757414549050982531654163758594796572814515332674264107217382876227414938150895794246663213699203676045040345468365595904518557216932736965338172782300662556342977609863343254371250428708891065753017339503387158828908221127194666840726277519886534325430466409332054289264640169277844 + + + 51516953028966449446491964497485751517990094628891894167852992419474152195473677450115630109656769378494026370993046135905409016172357252608391232821836911141770346398361516943084535741619501601620828360646455885527609024954604847125816880742230840305389082240666983369173612747169877033987337057571277486908 + + + 27524154739611696404554678600200022524307387187913330804982598161151693948859012016036623758443668517076661729602221235091099505199024928670720378443021686975221010739315229994281385292748497564017937013704629634698304615102321124160754148064847705580729356980912869939320882633389771287388187641972691550724 + + + 103377113942637790287003533084222224091635314875107183584866015855151366109148344152031526934949226690062760107225264806479505653533683391861954516724319175283894690835928918195415330630293690379979533803005112548786693580568575416145999408621762182595356921903495847865510985584950381585268423739186644819794 + + + 14673500808702279959267062967735040754333506548920926780094883070331750919458000285586391469687032554437676209528650776647628681974602751606955902150200789053315798988526116770065473921424842764231711641888281788435107438350932690834592578132496704763814673717109277628114653974891957529423081709795618347068 + + + 38859009087118888846561310819205669852627803673345854898080307923291445412916752468089587603202768160020948351869132135244840063989628351242421729167402060220673267655462881686556526660062794364572873029867581614425348332512100620476340441607712247927956176958026610185773841792228062538690034354280429985168 + + + 1 + 0 + +

+ 0 +

+ + 0 + + 80 +
+
+
+ + 11 + 0 + + + + + 1024 + + 132805917336342357621340347406652851500160158358616478910647979991495279410794939929518375989150750446928132372271337608193443333865973093134231559072633996501463762859681361235278609969585631425793848655519125510571433841525692826089479555621938481220398806492169797461801342643036874762401113827812141565129 + + 1024 + + 6 + 0 + + 123724192971345628283598524077771574642115516306203819302642840518434734884990023342093372590141717915386280139738278686607193677120717277193327685180610485720329861045086429532831247312816073761794696539180603164001212548485317103853221255907270707439711950418933701675350040464705736338361874491112644317294 + + + 14625429247927685090341663241649949148258959797292039323692281863043191792520221408569037942351234266447978782199478598250390786360135847682725454656794862494759779321288036136608651289809110043898514796554758669357170034489653566653604233508960098637358973041647160974378868936394566361597245297526090809584 + + + 64007057126176875784921548625312090381394744981912355585114232564443978202823028666354191570270582971317908560590960255621718151644865169079937946397430383552508870164313540570101112038765363492847255578958178618499930646151629515550809210720009750548884710211145008245153069694049417395148648829340938687662 + + + 103115992915880337411327588408688265150975095052055138397293144081059692734045417060416587664821844857318695820398000363692718875618295012846030208453079674394744433816396921378281051337563089579440046048625384540937518959711246975878537125941932878593410102488330542299641806404417418885309003319570534438453 + + + 119457315332497076188739071965563333761790600794685011698971978110574170937694642037185938145352267447861601656017195376534888030612146228692269726722534673032982839555108591230005930224550822365861369188758542352070280899039005900661300902275599304439000283009496810058515041286869086152747650395143418209695 + + + 97738799315708788763206134320050643392532463560258106306083499059560293956823651670664308620427613476046927360217377480809698815484522143039469284490440932497202203091566977872700143965467171603897734591262817015477036444327217869465633675102793500947186640843443170349950215500682011284039501098188488514980 + + + 1 + 0 + +

+ 13384863556442163322952458250977420071347303306250951371869480166206360749972742447864759873951415001010653138692615849046841726507827289409114950044040247 +

+ + 9922097209009096465140505286723232344813197265640635285799288755528166758850118654231004127875732325223233807063304934221607752104237886183649175903422207 + + 80 +
+
+ 1 +
+ + + + + 1024 + + 137372634310161859676135284402338656224702625790752326093422619912065941056411155016565478217907728879945260871334556369999320378181012769399229672757185658932449669547994359702315835117004920960039833723832775157892486474472871781401535566138599328187388026485937842777690668704923449947159362940419397279397 + + 1024 + + 6 + 0 + + 116441115010520204443701551044388141672708396572634839287898503254446689571343162226795875092851665648107955057536241015609708368366718318010287460951620183224189985722483322655563646525334936557072068472012436067191783998514083593670357905410483156163550019788757133637004401363151527763776723191808245083150 + + + 27044557351618142662356552877489107755687685627121911493229457826128074471372139670480946601583473364230995461783264153391465908763057631990861033738028356787438011645743530045595363690544107938500296332245528760556413617439234729949411192040200982595365086278803028719387624406149566721713663632397652758734 + + + 18668480646476250585503852417335962920930545198501147882117553235027914985366130789840737981562565180298275654871023023936581742688856218428559624653989709620342050760568013862082037009826528078528308498338926463622071936645167033131204995449391746215916468228090340406579421220320039702041285615945226682497 + + + 124831643773880234485522390232602697151624554744878469357280937852918545591277448221883189230205072357252134490470478766733175680960201808445712280554760481792295061585139951074758260903784531587541999977882176959445583638063216972509599746798664421534897232964080914317787532005374524315535445105635534739855 + + + 59970642815973695149052494697659654637535503354257025919678495841553238031034885486365545257363298700332014605474361404182598059404831610511163756704140132090268579779044407534827161198033244776683186964741076946492327722988775759361482746512239360253228317139110005567490550026268269509261260489164598329675 + + + 22923915272163963950857605925330142022074779916236347548886633162654056167070402255377093400484185256137566072514608718416367258335630496123774726992155837700585510673044223219699749513900672323661639291542257718222249838123282120567272749819257073710511915155801225598478720475650206575779832514355014487626 + + + 1 + 0 + +

+ 10516953854195957215920418989214698161452474081769918026684971214243445196839612444605885055607074928941932296923395924708679567920201588472554570885991423 +

+ + 13062017406813494145316429683225609621025324451653771268782679331113932572358409228199347215573073163757686558693301128497363343749771624966776957706069339 + + 80 +
+
+ 2 +
+ + + + + 1024 + + 145833845432288909121084926233534057685357293274340350126668766405212197351890804174287842353814414753368096405191002821422184530789175512390729502084743232689937559449075513447581521298005309418519751610349842123168680301350588679553600672970038503825238594562290725630967833045040620813816180930525533629921 + + 1024 + + 6 + 0 + + 5614206228798301098336705931671638644909555489877769303373552985024454467948272719941276640621802213319824489026627166503592953601271862091261438770581967429841000215861631061086884950337508297975792991010971325252918140265180480069954277705396167335598614372709439485252924902184204172397796469683948482249 + + + 77829222239122835610084423738321562150497279446208639514447460343866380070175601047808125427733325611930916432062196605539354365357794550584735606610432247740273684874796370960540670916977515416987155254054153328167529316792368006397532847978034025278821903835834149607180869130216088411657110222021618483674 + + + 126526668999549527105050115708853820539308975410043121964399106650368217475035537783616879716348093999454486886707365887651216832345937994185160915756008992749761345129872838686896268682011102041005029710003412657931850689656325888000091306838802288920011025039877500299503261395656474277902595055003645939377 + + + 39519547515028449055017861664894155862617764060490711234501925837865547671173429701804910726363843756169165093168047068989948316277502727839336504944846821161828359833653929929545581648110770846580090891357587504044246698977653720185664161165761777760965438539711667531830065447338000177079619272633974997808 + + + 64911171886091908379987659695928798436999618688156351616885354569475319404854703300389871388692848749447706845284633183118607140873964829806267750277059617538075740035634698703898760746137798807795759428578283927848978809795704455781269250994050734576159373116072199698554416776935114764908963304498490630504 + + + 46337737440906880658350695547525646305900567458168613888364269449075743635956571509878774476192279074625591314542016353903902280576521867929458581523010335829319495590409102271909715542993648132948180305225658201466190786746685383311897244330788754428392449915461044438929637233785244332939802020516997653890 + + + 1 + 0 + +

+ 11433764776710887644313307473143211739470953398100578362765074750279421702519343502035319397892519081434634510608848725022778926493880686061311307529867103 +

+ + 12754665526208283348644128814962849642731331257467717548123984357615435694821301803974670523354845944657439610208446773346423677076013726301181649046473407 + + 80 +
+
+ 4 +
+ + + + + 1024 + + 146080828996844893786930415030267236937465501130613168303735364618844293026036288220097635327009673585003284120262747096635449871857553308329749899517971369512993356899511456706337957628017589622952308458223073708168002051201346250296138111717760726492689696085001720244510576087189788400173594849773775987061 + + 1024 + + 6 + 0 + + 12143846516438032065549326588564641993076335572135680144319973070565227510388555878816485541168565333330331360373203107549711159307955856012988849600497784921648620670877827610870429166714421302856006331726388604858639217479516237211099294053777590279150366532220218255101295698436049419849141612097902640451 + + + 130110283334213982281592724744587355779238888385612173261041558390337170888862195730988952587123072858116524751419665014046802853625023209193025314170209762095895716630052691721289740627897735112480237539255012944565383695831051013027460838684588426430717433008544285106825419868548234785369723450095304865124 + + + 28936184033269797712301045816156985323899945333237798274523352177150263697445409224159438231819208355168670625188283196276111898818482147589072075244562000752484990678046008139123016667919771421087077668072425052038197223173671078453038383761535748778879934180519804845917837931720125662698639707169019951825 + + + 139743313044528582631657668286088123161464964626310113284683779085342948598023633133544825825929928312362129974614186131729049145084732952532041531975841926166858606672969874133254866846900373891351537597368983313837098495423640205742172752175958379844629957134932742930140902857501238693610132562014310099849 + + + 53044581730188892877631548732096143188468162339421906645278191018430149084642776390613644404189469954372875388873708624934832371281884377986981016031495526801835709924473080917358419053075051086050983722965169085001326293901098332606081215826837456256432766108294919171060244900518692093178547790827213354457 + + + 13720982697614420642042383264268813339206827429441510070099063031077866574985037908849971402680608542067662118645382188812605442192530585575940209920553520942641967018589809365098731467452204409869649415457166095843163238375083308117631225271409506085279102769367813064999165660319126220444280297921602368577 + + + 1 + 0 + +

+ 12493492711183332270979559538554053599683729030245785867773420794402300221675894642818434063789983730803397982796207617918477674051272987189478076120912867 +

+ + 11692553265435788466377775542312669391426810033951519327193947944831637324422698077279540119648681098704682249147810817531550857711325868161365161046877383 + + 80 +
+
+ 8 +
+ + + + + 1024 + + 115562432164102251406622967052071750807258172151285544566894218498931362209567346945848561669965827548724769820749118527361500484654503353982654831132691503147282822681740720558479928440623829908178283919727041827646963738754679445285325013831451162488739515312866275942511475472857933145326220132237853644557 + + 1024 + + 6 + 0 + + 1918843058365060902224156698824791077915048816126174273828173328827925146094242787808159127789911738230990921536461350767134197215631858847922569466378620788070681199103616323592972003068116871618652298189097954624870678096346675641822861238845361050835764226882558875078705801193309174207649691981387676761 + + + 5633663323728715862831888845777946094661002864544824727134600431003469539113905131778031633116781888360230284434775486594799461335499354181125564310162945192736493983408607583043279052489225101857443790367000861445428439571903674899529423583149897600345297997769124326200352679791494774441424376422975993023 + + + 92224572490734132466871405475772602483548793692969421833571278855151455741757597222662182273880403467624396109857103285036810071642000551787217955918908430643545014752792961549564256530725754107414785146542687179641756227242772610219435049498467256907877773547533212521894936045955979927225093316843447273624 + + + 66183053406824854997955985382355384715497240013453258897437176350763562425331521822435595550265618083659590969116645425396908998848723993833538106201823652953927058335013828106360478760501723552180389313206057782227500096729295807156679165429081748514586663929593834603229571872339167803106406082026242486247 + + + 69743124750042509642467145074976059009243861971684272053034970423993683530657827278165993761800907370985552130382901391446596933005528253256387440804145356085841981356225970618247323173456846551942037337211218981373022884854505546817351938007556625763760451941625550568126244464144092301218250589930964771252 + + + 72915756120647370787512976134911056390045357692685473282250206465655171985686451881325200537334167943578623112088025120468788437772822762261349053705299070854344523813062549426226658609713960083898353784228091780561562317369856737756233116861220821234249458074025030344466225233689070112675547477388012361378 + + + 1 + 0 + +

+ 12113189822927171917747077461227561629579433288786188878566494896649974610926449598944988710018811572259934174588237955489017835938680313581298226839062219 +

+ + 9540214745530703052602614329672114296360144346165078233240673810509000843141104476510595240420457567833307788137793450661014218709382306011850801095444103 + + 80 +
+
+ 16 +
+ + + + + 1024 + + 111927356566104023053025699787625550838058397847053053322552127284788489517366540434191289811946944159151898144044517991896201183248020899355294666452275356580458700724360087814407783680353738034566389540489206594576108611637326536178335876673250303367935270215570934307497912954941670160094818547669559266293 + + 1024 + + 6 + 0 + + 26083963272420992631361325874882186826320192111270492885447297527829930121512725063041771515422873794638132630732246178945827524916353536920338032942329648884862506341847807165763917740516440910242943041732772815639040483973079510498995058535404124602763024963637048513509262352040839650701377899779182492450 + + + 96349476044790960219277900737494348910404104317713878532186820315042836896394111182750693236907309305366101392065377818174119922772262450705915928502291955836072143986901878966783486955686515491687652827133207058317134666488154155770640867360263153123215807876346934189507244403619175620173481171524025037609 + + + 54690578151752424968627597530623695060322314333503222637738707156935596285996271874663061813880600223163657890492147882784449085042519744202705258571783341725890402018930973779086740363427426280862005142662828899727835119949559802395804426318658922453509773311165866730072879701477097084818422964205782730898 + + + 48548246442536242336650178813376090147825187269338203565219773463426768909891921223610424888168123366278860170690454785019898354608412222321318035320240409277155997290872403728887253361243526450374951908929982176434127615635172022089921656613960936488084542875629883983721976542934773414487851263961537403813 + + + 8413113823923925485688787367614707477657758975525795517827722017213206555788250307268244325721882479636008606295000856384190034186952886166588759610523745356045626108013064205521440618996713728008939728528935599492193135365285724053499413941300417129252635867240091199959544379912710341678940281432723529492 + + + 68772694314410414206205467046690216598864909706182681421449044403117172244107392479030110544064478992356950657658675437260300111069834928175128122254740575410509949599612145656885798061073750122226817037094964836568463944945479934451259985250499721987903002593433201657517849139533217227834891411340995860823 + + + 1 + 0 + +

+ 9285545230814175208263411435100595524047654027631834821681899834374877184982061448521038956716454217041218352384599587282695285925315242520173770910063167 +

+ + 12053934775383136892747067774553082069477539062529530957973630104838578048572374622235664986486263135849198509434839037199331156566567604229630900604978379 + + 80 +
+
+ 32 +
+ + + + + 1024 + + 129247253695959703790072509914691217099002852368322468045795757340611236783965062669505460428210762504741229507573883904113055589574393037898320307119534601325006470049122917644647993271072364497135274094746214874360172173123358949071606257692363319647094023309480718209008941035284596506382336215735779493909 + + 1024 + + 6 + 0 + + 117762663225409742292003907909356310395762445497211461079165975468263649230373970302717051754658639529032746668081675057812533532269905582012773970520260676258789891000845981509443336988580006031339603500190556266787092149644268028195165941794896901354362131862834598206683215509345587690168857698887589234574 + + + 41307676734324917289596188448768037242041561478666611229918508332376293249216584670403871893840311327117612839717795187029126418654206536820216938628666056443197376483010899927824631712516956909063917313355829047154852269087395692986828780702480137828937293992857398565122465372059669336909756576677250313503 + + + 63089817419614027949713869705443303414261012258660802756430718945673750293937911985030722540073735567220860290764744309902169310419281458073896754765094348815090678089662279005948235003153968829581576084867530630559125676708622432223591998446524862273768360980298243277853419634774064906702269062659305426330 + + + 71199445873142743890705311828426192993441595666700751966078671905336982229004736114861991503242913305495774688716514992606079439892068289110033526877163042238652945854618818253560032930426612158830717352398512190160864531194414597250521382878357192086557641764475531942766422233904908929408968343948911160272 + + + 64619094101169861260658686391437493165297845452472272358760304057989905431808036959407913033998903580567058744493381896304542424570477466803135163609233034624791665491361616919472989117059076521170734411692284721188464794534574401950171105972902450942503245521469623536413107373984706704691477763216841890189 + + + 6677644520806874248729709604946168760244903183951381719735625530119707560190818287421767756180188265855439551326384671573103541157197475833159721985859875315233932931981009410659195950024397916060600415042070216195290723111879774732526912066923480930549563204082983120980936536428103764153567950378551358385 + + + 1 + 0 + +

+ 13081877070293567144772392907238627006925879869965145211592024037074476968339728750851771748210736710346605928219186736869646018548035900973688960242107443 +

+ + 9879870679220447556464714657502384107730265997772677436404457680252845162599412275546553090201887725923207763225634095749647052759030060561134760329575063 + + 80 +
+
+ 64 +
+ + + + + 1024 + + 95993586374937066529455162653639008917944416331769895672692447131258623823530601748524840575528704991358520416600542951520877430553404290694537271374818615310922199629418777773940917285970907448620026552905846347625729841466963377261529302788316386653331236574151237767948556621396949628879930029930854431773 + + 1024 + + 6 + 0 + + 83824229456454055467034777958381886084070099575662029359808652417840721999302831923458207007454244578968532619690321777920454748871657405334691831931976377684607781703339528597558380460921586675470307191208505362126230822462336917172922636421883257035328073770261565664854509432609003556170229901400608515196 + + + 31449802613073682797257425139131419417588192884433609539928376773383346328101742134248510325629565365298437902156586786944230581371313578612449753268670024177152333713470507828982714894227374723227899934752245499118873909871643883739539742747200765153224975710081093451787655817266736145458329023747843360297 + + + 24046901626095895679816597945607311212403525239995850573241184656254370764719651915880942229067459392372913232451799155395293798882992625761937473873153502423890736622586766763795872931503799528290427421747236393467366420155132576017108972252571854737191517057107119000077313989206985638792731956505981706798 + + + 45175832503961230046015360947078569944511308174669274010627205837152263355923031460360917867200068609487136017032019574229194707255438267238936157298227093781866090322680638607700980856948120525143517256771339934483638452609457869091603314126054310638555434194657134665694213555411010667515926827636647302610 + + + 27226310139875595061545788405464522559218586869146317221006148013240284964686677834822701333166143350393682277077841511590250822499110747742693496232681426234740573959099299323631804367485077842063495311347905886490364241276494837378393667776950517833124284734693981208106073674942158940515201927225260896177 + + + 28061030032752164801968067580170072035179782094538078442993446829482618382199841587780304480987658363417992707765141978367745403741272853169468282987262916058066756117715451557465508245153549381212217078275504206215654107054783849807504784914064329691028379646444146221420807715386913209285477170712492499628 + + + 1 + 0 + +

+ 11584124495512725645750254070004151397235431960197950698997506155994900934855991765691043061376387584749228555244927245784250963404172386615517446654797547 +

+ + 8286650097046310145628376011970887020008693692489576545648941788788304647918380756171984084142680168440231134333303978377479157454970188552258529292449559 + + 80 +
+
+ 128 +
+ + + + + 1024 + + 94684004306111857506841112997261544480170843980474819684454351726404536462307477506168949707131540890820127688938124464318983598656261985060474394464444104662851771105569910458875690156971112007686589137184650027225996873453992879004305779154307234416186725944747553098765878314910767432398939363070193432489 + + 1024 + + 6 + 0 + + 41813145478284531524339888170688849836993489808773877061381898735431270330468430771009301788662385120899147678167321573709618504876159814346635143345363712394968468974763358047056541628004679516114879569313531494252386434132347497962429320391260372741017674071011042604271806756255040001608579498316923849593 + + + 66985412989141614286302186698499483703029319437106991649103297187111727830751850293036846281738132181703909496240817794912400219147438773406404404501967357891659448492407736665354464273194466557245973728459910312238904312073312671232102333552915861810338965397370533857859494752184791937326095095137600260354 + + + 47312445634335688130580705786493131286510846896090168556933453943379704950126824709335441743633692656299109794749138042476418368529339230542721236120630910870410825198394675989175724057291495828269337126435824903651873397607780035162801925793363290999747965512990162389907925450219773635717120444444967961403 + + + 26680941685059982265916590861304381368349841644910847763290590165644980437512586663772588348564786395142074985622665652147665283975844718675959745082420493895716957522519133528284438195566054958860953512709923937286271601444639896244630126540024459226060622212289739313704639649931735161505997395694497185980 + + + 74083443550392038622058019232286521002128537943817376082249256877190604066000435323031376336866028072662736957904562553741115362551808059312277922794883095838735071899792161563043461419534693122988468859364640131280222420706345691410443643331380352418667933129375191851645103967896117642593878204014509865042 + + + 30557934325334532582271071478001957018070185356327913496618682277547859447967138146722346701435719877241149540478472366310643131902542023167448548815882595053911370946603870567964058986679361070823587016887587552099878742317560934642428976996087168254547665849214779296369547563107675774229435656829473513432 + + + 1 + 0 + +

+ 8160211128333345566540434284968702413044967260865517592707045146213011922768838116572601821572574063631758048568559271866605369501181303820592196835113387 +

+ + 11603131685815862998758132106767773214584562494355793433835542445435042202940039220130186654341099402233149141447271216788328587869315947097248008800765947 + + 80 +
+
+ 256 +
+ + + + + 1024 + + 127727743954354624281854745476887090335808566069742443817890352306117585796239126022362261263079819519314090394014361647646460805892494614420724452999880429561236881692111401169717707414124936138355932922564368207508256915042248864594779846067983034559994170386441595183852296112119579847539416226299289211653 + + 1024 + + 6 + 0 + + 38164224196132104532329483574437124604055028410291615521779477243849960655602119853635308460253142535900192481558061899029051510773421915505181034038040205053976600340395226223552584118692639276068809035773829056879281287542819362565227716773397503446437660962198956566256514393193806524849148173695204924223 + + + 110678530127192027271644996149003445969262072382022151859817469310732453833899229470363319557449911586003069509988091720697116396999513012913686700138918399808920334993823529829378539506175486461505670850531128082734443433833237420355314390270799453960429479062564346339269484877851018621073091246726296041918 + + + 122548490956895798346580701645021683468493703155724198028852392301507630566051709653966677479391148249019113594983455772425222329689492967526169663910403291783540669836098877872130493149328608829969126991475661060234359382873009916476841684477657337780779843037860445806000967591640647467157452180419336440064 + + + 115049765164512475615816754723709421915820944110057140572079223148858284078493729853694322750937204306066347373205296833140390979619473240003424221005440943252946247163179631339839082762769031171800431973311643442309923874949666515334367655281859772013653858842591796008806616434102016382825819024401335460344 + + + 24473572867891230766459628437908127183343542625048075648139993688246520961765676225141015722308250646609649372811767064660575479732024522516576703257333821736317565819935529241994964671174856884596066767646349413206450874945566058276469876978552642627552830542673524471166381537681830302599987521202991056916 + + + 121681456438779282590844849528459680640771312311817451946372654804617948881697814947418283630307162863219078621980522042948479034075970549463192538890581557434181542676057282587529357950472618576160067047151888130114895592153330967041148579160247158143832010635353491887390135911088640467337273087059507194017 + + + 1 + 0 + +

+ 9797347328962033146488368412716816572855884675950751084714870398060105480643989536965963618504712119836099411058406939329852572231708464480258091257726299 +

+ + 13036972117623859846367583648505887475031070725674408545288450375638101888384702261874720182461609709100300353224517609830394811715149997824925879951644447 + + 80 +
+
+ 512 +
+ + + + + 1024 + + 107749505110219293735979142621600906412060268221095964958047755054026889014562032384740357183948942425034845634341718222816289382158342428614326831095853091684651319425403499920271331624120186696435758082078835771213653665909961668175363666309216938446744591705304849284719196276795882657769948946973809132161 + + 1024 + + 6 + 0 + + 35641763542538072741522529757414549050982531654163758594796572814515332674264107217382876227414938150895794246663213699203676045040345468365595904518557216932736965338172782300662556342977609863343254371250428708891065753017339503387158828908221127194666840726277519886534325430466409332054289264640169277844 + + + 51516953028966449446491964497485751517990094628891894167852992419474152195473677450115630109656769378494026370993046135905409016172357252608391232821836911141770346398361516943084535741619501601620828360646455885527609024954604847125816880742230840305389082240666983369173612747169877033987337057571277486908 + + + 27524154739611696404554678600200022524307387187913330804982598161151693948859012016036623758443668517076661729602221235091099505199024928670720378443021686975221010739315229994281385292748497564017937013704629634698304615102321124160754148064847705580729356980912869939320882633389771287388187641972691550724 + + + 103377113942637790287003533084222224091635314875107183584866015855151366109148344152031526934949226690062760107225264806479505653533683391861954516724319175283894690835928918195415330630293690379979533803005112548786693580568575416145999408621762182595356921903495847865510985584950381585268423739186644819794 + + + 14673500808702279959267062967735040754333506548920926780094883070331750919458000285586391469687032554437676209528650776647628681974602751606955902150200789053315798988526116770065473921424842764231711641888281788435107438350932690834592578132496704763814673717109277628114653974891957529423081709795618347068 + + + 38859009087118888846561310819205669852627803673345854898080307923291445412916752468089587603202768160020948351869132135244840063989628351242421729167402060220673267655462881686556526660062794364572873029867581614425348332512100620476340441607712247927956176958026610185773841792228062538690034354280429985168 + + + 1 + 0 + +

+ 9728152380631131681740808838984346417922505362633733962369711808826276345645215837727287141565994269326014156795037119740007855698527133598892615473492227 +

+ + 11076050301673918422116439895802538274231870898680460235999737357428177346058924262307656177900696772027564584760665000075886788813530389221467934275923243 + + 80 +
+
+ 1024 +
+
+ + 11 + 0 + + 1 + + + + + + 2 + + + + + + 4 + + + + + + 8 + + + + + + 16 + + + + + + 32 + + + + + + 64 + + + + + + 128 + + + + + + 256 + + + + + + 512 + + + + + + 1024 + + + + + + + 11 + 0 + 1 + 2 + 4 + 8 + 16 + 32 + 64 + 128 + 256 + 512 + 1024 + +
diff --git a/src/tool.80.user b/src/tool.80.user index 9ed16d0..ecee1e9 100644 --- a/src/tool.80.user +++ b/src/tool.80.user @@ -1,14 +1,14 @@ - + 80 160 - 855354828045887400174627068790510362312905882052 + 36829103951102995376474362285918720230219068438 - 28794283913025973331815769588141583868106485627134315620122621612135021001355083428249037587375251848813991476171708978495200911688122020732431351826093395728425473901610444931078341608504688254326460670316961405945813351242983262421737723436662745733064835372410082574802232095204090082523318615201814811091 + 5975349738774372370692689487620547566695726443684187663338009558313298910595310972756940290490490814235077168608067513662523751284753187557605093094278568638414659189819794636301379586774821313792523485317510997117366940753494060856246440993389669106141067370183854905688663207029320442537153023934974612389 0 @@ -18,7 +18,7 @@ pk_u = (g)^(sk_u) in G - 61766389956936575191201774678991826422344726660619424241531957736345802477213037454198320157568791960697838532377222744888238908470617175546625291175403585151279082000579490802866843975619269579441645912387490624470317882256150027775801188922460990541150733575955350402364857551841673911962477553998986591897 + 73886720212845349423789690054265278230330882159240063365258059171691405211635444653576408519130303930236607370889730093942256028020721449769700384008668654804025056452706408159603994333902616538003510330625907230932439880368347399797693688294648788278946358178021756566866001994381581501155238320146533193969 @@ -28,7 +28,7 @@ sk_u - 1227997349131506874171458614312533840624095871804061347145029592332093732763775812056403035512799 + 30522857441783677612381314321702379676237683533584112545763275108874547029925879927137543661774 @@ -39,7 +39,7 @@ pk_u = (g)^(sk_u) in G - 28794283913025973331815769588141583868106485627134315620122621612135021001355083428249037587375251848813991476171708978495200911688122020732431351826093395728425473901610444931078341608504688254326460670316961405945813351242983262421737723436662745733064835372410082574802232095204090082523318615201814811091 + 5975349738774372370692689487620547566695726443684187663338009558313298910595310972756940290490490814235077168608067513662523751284753187557605093094278568638414659189819794636301379586774821313792523485317510997117366940753494060856246440993389669106141067370183854905688663207029320442537153023934974612389 diff --git a/src/wallet.80 b/src/wallet.80 index ecc1233..07ee9a9 100644 --- a/src/wallet.80 +++ b/src/wallet.80 @@ -1,15 +1,15 @@ - + - 855354828045887400174627068790510362312905882052 + 20404503251483643123755909286091369771495044777 - 968414756995630807764470101633578832667834810497 + 909897389033252615083035474019566085679252263421 - 451485169377034697528434443924107613208404210914 + 255042305026323205994731651484462852001897198975 100 512 @@ -21,118 +21,118 @@ 3 0 - 125595435089325385807462484654804578242447461129746899118248205708411853650834687645943042121373219989715556155744966358571613261760168207418561322682013256955500867958514253046517005634195929337281167606975350762985326132559562762228391362348065684809049314420211837594300035880484608939211324500666703825280 + 146633922757458417356516769173181954357487422001306376993906397795224572140483858480025630671822058121174404350535618035423082354639182615117991763276192727230933679310045873133967866872162225456864732453119211500286719559658891552547665876074601496221967407314833685338161284135567441424562368334563393203091 - 4314868942517643237843322368841190515795186823359 + 5103647530616958538726241484005117353604458076767 - 300072251920152654551720758804038498506750748643135964595300983421419365883525516826814229036995127246412651373096528763911506342624997431896084526357966773436818796020615656392030103693520065734825381843952475314883032435198456380751113066903308199513615353384664715923724321053736723225137411215816976761671455725165482291323299579826283114175312753087803597923318238658770239797 + 67665051744608567707062164649153560377682912042427668695053682960107936819833149110847401893515733957544358293638810963363569019844957508896349440009725202855038110108795555152915357965412264554363497989641298127925911289253456227458427851950953930750385515928449857979470290821450188974969959133326182598866433112232776720370982527655092469932485309656436619098561111527121506799 100 0 - 13 - 74 - 82 - 59 - 3 - 48 + 20 + 32 16 + 23 + 84 + 59 + 4 + 26 + 18 + 46 + 80 + 25 + 50 + 93 + 39 + 44 + 42 + 97 + 22 + 40 + 74 57 + 17 + 31 99 - 93 + 53 + 68 + 30 + 13 + 69 28 - 83 - 84 - 15 - 19 - 6 - 63 + 60 + 61 + 82 + 96 89 + 88 + 51 + 6 + 49 + 15 + 92 70 - 21 - 52 - 42 - 43 - 62 + 79 + 67 + 14 + 56 64 - 20 - 90 + 47 54 - 58 - 49 - 88 - 29 - 36 - 26 + 72 + 76 + 3 + 66 + 9 + 34 + 38 + 2 + 62 + 48 + 81 + 95 1 - 77 - 14 - 33 - 11 - 86 - 56 - 5 - 22 - 45 - 10 - 7 + 83 + 90 + 27 8 - 53 - 66 + 71 + 41 35 + 75 + 52 + 7 + 85 + 98 + 33 + 36 + 5 + 43 + 37 55 - 73 - 31 94 - 23 - 39 - 69 + 12 + 24 + 86 + 91 + 77 65 - 79 - 18 - 27 - 30 - 97 - 98 - 92 - 68 0 - 96 - 80 - 17 + 73 + 58 78 - 12 - 50 - 32 - 71 - 38 - 47 - 61 - 51 - 41 + 63 + 21 87 - 76 - 2 - 67 - 91 - 37 - 4 - 24 - 40 - 60 - 75 - 85 - 81 - 72 - 9 - 25 - 44 - 34 - 46 - 95 + 11 + 45 + 29 + 10 + 19 From 96a9ee6773ac46ed549588115968da01a078d188 Mon Sep 17 00:00:00 2001 From: chris erway Date: Thu, 3 Feb 2011 08:23:13 +0000 Subject: [PATCH 16/31] shared_ptr seems to work! --- src/Arbiter.cpp | 4 +- src/BuyMessage.cpp | 6 +- src/BuyMessage.h | 12 +- src/Buyer.cpp | 2 +- src/Seller.cpp | 2 +- src/Seller.h | 4 +- src/Test.cpp | 15 +- src/bank.128.params | 1097 ------ src/bank.80.params | 368 +- src/public.128.arbiter | 71 - src/public.80.arbiter | 26 +- src/public.regular.128.arbiter | 6197 -------------------------------- src/public.regular.80.arbiter | 2068 +++++------ src/secret.128.arbiter | 38 - src/secret.80.arbiter | 18 +- src/secret.regular.128.arbiter | 3101 ---------------- src/secret.regular.80.arbiter | 18 +- src/tool.128.bank | 1769 --------- src/tool.128.user | 49 - src/tool.80.bank | 582 +-- src/tool.80.user | 10 +- src/wallet.80 | 182 +- 22 files changed, 1663 insertions(+), 13976 deletions(-) delete mode 100644 src/bank.128.params delete mode 100644 src/public.128.arbiter delete mode 100644 src/public.regular.128.arbiter delete mode 100644 src/secret.128.arbiter delete mode 100644 src/secret.regular.128.arbiter delete mode 100644 src/tool.128.bank delete mode 100644 src/tool.128.user diff --git a/src/Arbiter.cpp b/src/Arbiter.cpp index 1ae45bd..7441116 100644 --- a/src/Arbiter.cpp +++ b/src/Arbiter.cpp @@ -21,7 +21,7 @@ vector Arbiter::sellerResolveI(const ResolutionPair &keyMessagePair){ keys = keyMessagePair.first; // now, unwrap and check the buyMessage, then store everything Ptr buyMessage = keyMessagePair.second; - Coin coinPrime = buyMessage->getCoinPrime(); + Ptr coinPrime = buyMessage->getCoinPrime(); Ptr escrow = buyMessage->getEscrow(); // want to store the contract as well (for stage II) contract = buyMessage->getContract(); @@ -30,7 +30,7 @@ vector Arbiter::sellerResolveI(const ResolutionPair &keyMessagePair){ endorsement = verifiableDecrypter->decrypt(escrow->getCiphertext(), saveString(*contract), hashAlg); // make sure the endorsement on the coin is valid - if(coinPrime.verifyEndorsement(endorsement)){ + if(coinPrime->verifyEndorsement(endorsement)){ // construct verifiers based on the data in the contract and // return a set of challenges hash_t ptHash = contract->getPTHashB(); diff --git a/src/BuyMessage.cpp b/src/BuyMessage.cpp index ae0c6ef..5230108 100644 --- a/src/BuyMessage.cpp +++ b/src/BuyMessage.cpp @@ -5,15 +5,15 @@ bool BuyMessage::check(Ptr pk, const int stat, const ZZ& R) const { // check coin - if (!coinPrime.verifyCoin() || coinPrime.getR() != R) + if (!coinPrime->verifyCoin() || coinPrime->getR() != R) throw CashException(CashException::CE_FE_ERROR, "[BuyMessage::check] Malformed coin"); // check verifiable escrow startTimer(); VEVerifier verifier(pk); - if (!verifier.verify(*escrow, coinPrime.getEndorsementCom(), - coinPrime.getCashGroup(), saveString(*contract), + if (!verifier.verify(*escrow, coinPrime->getEndorsementCom(), + coinPrime->getCashGroup(), saveString(*contract), pk->hashAlg, stat)) throw CashException(CashException::CE_FE_ERROR, "[BuyMessage::check] Malformed escrow"); diff --git a/src/BuyMessage.h b/src/BuyMessage.h index 3861061..540e4b0 100644 --- a/src/BuyMessage.h +++ b/src/BuyMessage.h @@ -16,9 +16,11 @@ class BuyMessage { /*! coinPrime represents the unendorsed coin, contract represents * the label for the verifiable encryption, and escrow represents * the verifiable escrow on the coin's endorsement */ - BuyMessage(const Coin &coinPrime, Ptr contract, + BuyMessage(Ptr coinPrime, Ptr contract, Ptr escrow) - : coinPrime(coinPrime), contract(contract), escrow(escrow) {} + : coinPrime(new_ptr(*coinPrime)), + contract(new_ptr(*contract)), + escrow(new_ptr(*escrow)) {} /*! copy constructor */ BuyMessage(const BuyMessage &o) @@ -27,20 +29,20 @@ class BuyMessage { BuyMessage(const string& s, Ptr params) { // need to set params for Coin contained in message loadString(make_nvp("BuyMessage", *this), s); - coinPrime.setParameters(params); + coinPrime->setParameters(params); } /*! check contents (verify coin and escrow) */ bool check(Ptr pk, const int stat, const ZZ& R) const; // getters - Coin getCoinPrime() const { return coinPrime; } + Ptr getCoinPrime() const { return coinPrime; } Ptr getContract() const { return contract; } Ptr getEscrow() const { return escrow; } private: // XXX these should all be shared_ptr? - Coin coinPrime; + Ptr coinPrime; Ptr contract; Ptr escrow; diff --git a/src/Buyer.cpp b/src/Buyer.cpp index 904da8f..6593d37 100644 --- a/src/Buyer.cpp +++ b/src/Buyer.cpp @@ -89,7 +89,7 @@ Ptr Buyer::buy(const vector >& ct, // set inProgress inProgress = true; - return new_ptr(*coin, contract, escrow); + return new_ptr(coin, contract, escrow); } void Buyer::createContract() { diff --git a/src/Seller.cpp b/src/Seller.cpp index 1dab1a7..b6c50bf 100644 --- a/src/Seller.cpp +++ b/src/Seller.cpp @@ -183,5 +183,5 @@ Ptr Seller::getBuyMessage() const { } bool Seller::endorseCoin(const vector &endorsement) { - return coinPrime.endorse(endorsement); + return coinPrime->endorse(endorsement); } diff --git a/src/Seller.h b/src/Seller.h index ed964ed..283c714 100644 --- a/src/Seller.h +++ b/src/Seller.h @@ -61,7 +61,7 @@ class Seller { Ptr resolveII(vector &challenges); // getters - Ptr getCoin() const { return new_ptr(coinPrime); }; + Ptr getCoin() const { return coinPrime; }; Ptr getBuyMessage() const; // setters @@ -90,7 +90,7 @@ class Seller { // Seller will exchange ctext->key for Buyer's coin vector > ctext; - Coin coinPrime; + Ptr coinPrime; Ptr contract; Ptr escrow; diff --git a/src/Test.cpp b/src/Test.cpp index 96d7bcf..ebf4e9c 100644 --- a/src/Test.cpp +++ b/src/Test.cpp @@ -139,12 +139,14 @@ void printTests() { } int main(int argc , const char* argv[]) { - // XXX: want to incorporate a different random seed every time? +#if 0 timeval t; gettimeofday(&t, NULL); cout << "NTL::SetSeed: " << t.tv_sec + t.tv_usec << endl; NTL::SetSeed(to_ZZ(t.tv_sec + t.tv_usec)); // XXX sure, why not - //SetSeed(to_ZZ(0)); +#else + SetSeed(to_ZZ(0)); +#endif /*setprecision(5); resetiosflags(ios::scientific); @@ -1041,6 +1043,7 @@ double* testWithdraw() { int stat=80, lx=2*stat, modLen=1024, m=3; string statName = lexical_cast(stat); +#define LOAD_DATA 1 #if LOAD_DATA // load bank and user from file BankTool bankTool("tool.80.bank"); @@ -1415,7 +1418,7 @@ double* testCoin() { timers[timer++] = printTimer(timer, "Got coin from wallet"); cout << "Coin size: " << saveGZString(coin).size() << endl; - string coinstr = saveGZString(coin); + string coinstr = saveString(coin); startTimer(); Coin coinGZ(coinstr, params); timers[timer++] = printTimer(timer, "Deserialized coin from binary"); @@ -1527,7 +1530,8 @@ double* testBuy() { << endl; cout << " Escrow size: " << saveGZString(buyMessage->getEscrow()).size() << endl; - + +#if 1 // test saving and loading BuyMessage string bmsg = saveString(*buyMessage); saveXML(make_nvp("BuyMessage", *buyMessage), "buym1.xml"); @@ -1541,6 +1545,9 @@ double* testBuy() { << endl; cout << " Escrow size: " << saveGZString(loadedBMsg->getEscrow()).size() << endl; +#else + Ptr loadedBMsg = buyMessage; +#endif // step 3: seller checks contract and escrow, returns key(s) if valid startTimer(); diff --git a/src/bank.128.params b/src/bank.128.params deleted file mode 100644 index 1f08424..0000000 --- a/src/bank.128.params +++ /dev/null @@ -1,1097 +0,0 @@ - - - - - 0 - - - - 1024 - - 132586371625540188272717355152503291082194944773874348160730089517080215758433188246670084161603515500793161734437218894423509289350667458921271350716482458292925230825020579791114673070527334926842852620298590627765794522844957752136110446956842602639569535315869135720632207165398851660087123916784626668767 - - 256 - - 5 - 0 - - 444711850241942269050111205816993253499463843473002504230110807671858222694554383347572694188908315571195087707305820529714310842879637068467519625933412377458243347380733774223351850987694051531205308113161321536862250254739554299924124841693266077654147765674885354260594228125335613642200900313119427348 - - - 41209700743355705032564005698395214498347760801263036391725228647895399675349309961563091880132407824781831813354255190803445597632918140497013072056912901544642784200428099098365026588833346657366789993561623223604080325091007601542298019609963768335818282029672642560574744501300661128117046024817359001171 - - - 6446456249053093712961774394830159504216368184920731966306588476349458057905082189424010275845221210118048230949644397292764394544137466107406978764846181873083683095375933965624031102370398802846797896837427933100851422401896782450351306623941971756959103392771121916978470960251274981347667713918996206728 - - - 128942009923248960202737989392555192330948309662109430333408015279051100756002214687447459166616926309107942733466318315371686086938737877455146081585461954655266849660331645493441582178573313181967415653285373999772877564781127798233564477855600314888538458827047031018920203481156313317224425513356998517395 - - - 105646044682501949175359480662828487821338614225024760040207388881353954698978011716470791029007776608699222164864942659473657227664662524379359672974579454113718951885356016174720789985679456503861201845756012281572121424844270023329653340683868555098515545228296050473146879950379143230651068209639817637098 - - - 1 - 1 - - - 99943103275601323334379680290023552572863829986595931543298554810786122880601 - - 128 - - 1326618518737829952594896457296731573831666075318061668513236789468585250868493936789556007769924143075274891558400451748309669686657868181944670361332155622022465687486173299989326763682367912910270126971637522343847475638855089166 - - - - - 11 - 1 - - - - 1024 - - 99683430209219299202938906775017606724469428760930594089358427410134860618365868965004793074091319467805535748972215503524038403535258504555855034146311628672944167557855048795425950230778419329914800959299004291330197945213922372702252933746294221376666676943038735011157528710864090248805630235321387417233 - - 1024 - - 6 - 0 - - 44374832064487549703432106936110733223763329868662976410465532166844075257057406776673624549161360987249861412044599719051898091867684286031639599197726655387219559815670638611226141829724813072055389849106845806446371521054197013515692281584194734156442408523349320037692677236600725489054906594525371744098 - - - 4630463067468923828162750583060014163210626720569193915638610638185648687072871454313570584495776843106357295879749151692425383863181535413318641399457012780863140523020442450319803861217678809327099130460454107396219723696639091046783275546878275618814275775664817225756657644407131100216751298115908131194 - - - 81502968578916182738903954868803437570755946677134177447602235141924201499139137044596035140222509670602871331791597044073071572412228544534819523226128580024545496766294194339793960293820231413658047109091660897365966097797938250791336718369379316371047772899151957904896765356935959814025957982674691345123 - - - 19530914161602779659551760133445821552317320310152365572270824124934166659722311454746309953223673997078297436243931292053801888013480083060066216140461485920045976827407762286163098778343580397538509809300097680026549826911680050446687580200949249156718366777430619222680797133560540120874109523363374682532 - - - 84981501181908958407165882058596493360698119711176806078279361144462965507837003283079265547534700328302141973542643476952659223890385025553457948180508055232705101336878525770094803887787098569156979516392327273966990531171437870101999949275825950472005389499746008518249966417744874164049226960084391812234 - - - 7893650965033577198334191201028694180475332921983002452552068231359850151359044622733422029300099432801430764455555811879002006862417563061903629164535541080083196159447478495410613617151717517389931741132158488141349634905171776801040321832649612992461489685161324965894513229375743124200392574150125896106 - - - 1 - 0 - -

- 0 -

- - 0 - - 128 -
-
- - - - 1024 - - 100372618494278207809325833745671140482141053299167545555496772471748336142814309396477676570872646968276341124341133734057291102742322081931492248898037896745834964263295089835223282406172162565851658852298315452525264953060051812464058668677471281862812603962337079805583614207759557014036925354032849631573 - - 1024 - - 6 - 0 - - 57246992409737900342577682555961117349863309601824510421222521894627026751282629144846490064039264510887449820515663063426823074414131547854380098425944664198668967874835264912524369399371752886788019144257660363843875576550200910324966658273895956429073677736320994573692181961701978193186571833694420723781 - - - 55359130326043304577443995739779715186268346376620963862107764611659939071774803889709800904940211859512035433140926280209277737074076862166823314552825380623600695178406779285250666101690748062116072596864033546150050905356796372295859111563103651519324597646670380478259352333788125722561335356419351548649 - - - 50281672128225695904327755312403473270464636265873620911439875862842840579216593986516290933013798705736976869536862767378398131732278547320623614540644278314658335040286056564380320042634960782424531211557936644416852933930918166129586584400530703576432511573646243132971344472696494676449191196511768751040 - - - 4954009689876130900433823183239394059971025313181438225168723025500650021819168443266313593092459139668294877241958627180344247118460686185955251050098451412974392505212283916588312535306656898458413369812971999245044625814448902655421908545388586239806219956370126085702941241215414372775529176415068272226 - - - 35515595255709896828997760466304152492220728871829869589895003772974924553700508769181219885351038370363994580037898364522369466452803833450527848565405566973922751414158220323539740873051032498388712296543446809826888174558618629333699594826671750960039792539335312071049065457401731470572849760698057282405 - - - 53982898161884174760525264593615577676431520915620030422211324465890277781242664656285886912152301003799278505578589234713539160914623954004226071684048051930405768140214951306139171510110595301853061292778036789451353938383524392523322187090038385843323099742467194272605232422277182140459271404712596189859 - - - 1 - 0 - -

- 0 -

- - 0 - - 128 -
-
- - - - 1024 - - 179056286208052838965292614776285578832391122479516523035040871652754296525571820223688635982962783601316990610178153476124475074036124841321454348975288658062663380306451105704874611989409092134086971615401167426036221993116519591467159928284378929315318332059386710030291858650404083425005871892071186857273 - - 1024 - - 6 - 0 - - 178377552641377500865286063648727556416404015075127401685534575975076459575504794560246301298721955859013913893640507231906329290835420911614600529224173881974520601196077215418521752161496328570548883044296041742448024685274297430678209781623977102471902189695810814984063443362479850712510121572973530768995 - - - 20769688870070165436992427339694203145292523059408806374887538935528912003699615548213392704619780037234390842067366936848278728385901533105547087225530691157902332145378484532788468916796432069325744865727857779279958043613873271149288783780319280513887160495047913315001985643689388969419602435921902916576 - - - 174791262245464645868767317839235021278766075455568196624276220286866571918403921718660783240456355740547605541359691882609396468612630630288115927266879724308965128595708829504857559201862612088203911860982726216825023258650320830660279603311065370610444214613451198710481166631253077931188456029167534479371 - - - 29430949861921363180532447370885938675197960719463985708429902998553499813907878796936758756888004352632985956057062412412857262290557262267490819588447955842941087683905824771268511538073109920236468184221145418158999188651980852958196002535495729417164668317975247134260832577524795061940668012070262660148 - - - 33823064666593497298664315122406795314149352648971525159868342766757305003383811070461423407856422008038095751430603738498258035799096142237609225846417708519893838218075447938462930393685967123434545052565320035862550253181734081559761406167043844418023672259049372762462061867104300604038115705269215470437 - - - 148058038465200793690340551348246193382881082948352221607273933659845806523220248031935813135858162670302995149394857476311437030948371832650496514019132121253661904600363352472468971446343853681200879325567745500014430783962951146409075530755861224679906402281793275989220685808705147046100986005410229853772 - - - 1 - 0 - -

- 0 -

- - 0 - - 128 -
-
- - - - 1024 - - 122472266630673589598992895062035703233848661693214725901405010631525288379574816031770542696065901636562582576773506864908929534663254247331128605764728063087768770017178540062512081945440960866895139848947409308478976883048112403100515017574348656902851568267215962238033022095687410295184090742019791113413 - - 1024 - - 6 - 0 - - 7728944715899189434388609909724774035809842938667678317425460301603605823013640478927439541969555413709778749118826660002926674529472346548351718382698588549714060210062274800686715297407856148427378139345265348221133978168696684278480173159890783005838020735251419417910753567965053175165025017789858820644 - - - 26448003475986841497968052832575367195088016660519408677049324275770039699268051736789155417037960727921739548551366436808295399762769326861031593200532414836942831340943797676033433793694248322768289140083303407565490613002830404023055002980920011289126814582058510573151951384518941752137790627729966328601 - - - 86229288105115393213027250384970878195046658018230121981926087622908360019070695476890286000825705817855128868466090874517044630051807932688080137330506741796383851543511055620171832099182323963400791787063009161982955132748352579514479641889009556728765160794019431155612835281884746046945181179175314072101 - - - 118443298197751601243024301938618535427519013797625162067557289257443424747667332390767128609364405814370507956534181923146947118096415153388797603904285387277089456614581467531519932588788044429896623956929401613125989811394848718430770395258860135232715671961233760465960973508438597288028258187771963652303 - - - 63079025970083405739511542310056249842741383381477548746042147188133572370748015807051874328665981591645313044641075205479762053757917936684941075988549900240466490390069845305685504221361215041236490072242029131680788253507798397137448619734983297278496456464706652724192001914955923548292849880375166790857 - - - 40509648238776346975545047490038074209435447170427898755134516674702980824141055142532620643304924945704236217094826204991308792562157103171370843664395790315537507859800004916243411935772744533205257928339062171373642112948854794088844210884398436494877111172199985119678162349590861249848666085931258412086 - - - 1 - 0 - -

- 0 -

- - 0 - - 128 -
-
- - - - 1024 - - 94552121250876779226056478441985417834697549046525732037515214317098721124385587683741795285943068838272470889450545110834171450997743673526780259637641164399765807542836445604258361269046692410035177576626482842170596945096381486480085953604978737328476456016612043198968867965622421691858552300474095035157 - - 1024 - - 6 - 0 - - 48083218856562860783737525775191328434529309725786982977533090588932781124076143659736041475811675446369495170676614042227311991610162480246804621885146024797948097897694587243264636437130851802277584364037533108489941116668460359722929037448947475873025984332615369387428734396236836178248179053324432289387 - - - 76634283139631251031930451482439094786633969169628830486414552234002484146483166767407506407205976751241526053457671304683137174566086803880644871041222985640288589016393229489142957844430267204654938648698223944585668424596705445851412046692088325329062368117357299350383261539550382410503213810360724768831 - - - 12396003202718048909550176869357200835167344522002799990717342448836637227464886796471669915677173549704514451874300300953954982243388321237604630205234035637633279054240127538882158729863053103189998107664715943383217977914655949391169809734095037466008231841791029642492622767619951904866524114245681424782 - - - 5539923707394084506717087117390496695592232635500747359889504943711791202029940555652040925097713452840277213496395608270510922111988739086756598726879548966887102615418006792507194054375683371861709247204702686528673393330441503439121615585771257714697719537117389431199585862074149372310085911201841216186 - - - 65968532979690524565399159109865869898284017329187061132541714089842101359911218133768358539795047680936832650790336463801883632609130291164095510938785421650736176533067266082084768408474334973607759685176339532668176044078942480494801077297292582190823343166661955740154699563110781755198790163430805716978 - - - 8929410934781893842920542351761290516339838143391027227969566157758346551212210108169096861146985810613153289756321515096365399229438452562850172935225676505051199564664874135916650774022233114020462038340430857303825774705427727079183433773581422911290563266734751511815134252968205031225916496632965260619 - - - 1 - 0 - -

- 0 -

- - 0 - - 128 -
-
- - - - 1024 - - 124604760543224075224703067029823671929197848568290368816278071531248699417186480889975307973142321087447654043163779310314373817531396202633137323160556385697895753637371197560517651126571956117326552395441960299276166360937411641365637714128170666757748021061815851985995399358099600530948464000050172732357 - - 1024 - - 6 - 0 - - 85374642385284771257823631576104372768147056924874164883253839053780686027174341621883343533017782072735743106871350181141398460483873793075998118728027487068606054873854312222135302707457420590697930884900408430012501778121848164769218884832197965000311562550813948768513322057496853957945086012933955768928 - - - 109951715000613517319568467860069810650403863415999616962622233849462032087516269516115308808422392422344711580072435010666722823022715603530377444205621343005261890621173920886237616524419996303640950274964938929401949794216034721670708285807410307537304208774095446878328504393857085245159895842518397081669 - - - 113897613942613897227385400755632242796147855678163991969863715867699990348445814363632179253538407757961828124650703384323771690430094496902916699863026869603726373354595025416632525977003500517288059703060134213925130696858407196313572396734576461499925537889675832368585194225936684535814825774675818271594 - - - 7126020928855387487678674994782820081171280721588220504548382853994207252414761574612270717533602534438287832704904426640097554047836373585430822304067094169963601314200955936766302620704531487418270186290467140502478905642048977091606481152460527776657066274437262112903743860557673135498824456202362431095 - - - 28704319304982437230631355216315820387776115028078205817309612642875919182450943971231372545448637321011435895481695278298527227533430029440070142783852154597895389875946571611035965006088562868353361887342978399010005933994152947285950976477013299302158959465667564151543055870642032282141512399669701684124 - - - 94385116545288685745006313511411261449412016951854864094148648114948170929374208755686282030124840944301610566544929548845042596674629788759596677932904948695542436232339591732388400574815727980732194472187560302852072006892434987271733784466225284120170184345573862472817276658753020379680128757909201180493 - - - 1 - 0 - -

- 0 -

- - 0 - - 128 -
-
- - - - 1024 - - 92667338402278150042501616331571845170553916728035435044100057040256065504286462484564859200605606351639537638200067692153833627624658309284127823039676010855431298672482526552316853836499357114282811689667233085741354835345171033926521816008894273405946326529381849176517255761872896679958965719410137872633 - - 1024 - - 6 - 0 - - 16811849638918050357707196041977965708281779948508812087747452461640318210048722407843231825782189557782450810427679617933238834899374426352555709149349530750985291583473604357471905484577529661955836023008264742969193839994095846756647807398434006424747681519563767314229263412212943470716671982233598649422 - - - 58885675164871396171146017162515484784619548791139875240864919327966417145277963785116921012215956550942923762313051096493940189775695160566267858580994075124508420959429871606332304029906432878856949417986879035877178605192180897139164552555409945582515862076757143979626309158967397214623905109570430339616 - - - 78313914382473412665786170356493362330039144085905477110883824576655127416478576581225802910372034259178502168118482520057731459855605400355454141177724737465710455795317797057050749690825582952562593287731630723650451698245064627076719872087412545623712737338570571765968440087169043872698907874927081077861 - - - 44353657461760237924006107965806380925063513414349843041392711469913556488536732791027490710958460726040728309894307767887311757312709852005519327917263961141869470181271532151197810341309095643674076995541951200855303977317735453912469969481851102207308778763085134371637143049916350432664038803587826589668 - - - 63191677686706411065075451325037944524770770352269227650110085952842205184411082582248537168068154849796072871117393766031688195935193176655508324522062747802100124202901719531065193631269306020605398068520343217692627311881974378600699699375644522702645562717393999591546273213569688686511625264588794858942 - - - 27652205832407072812316692638518470944442957295475291784728971848700300617325041310215882904190200515282258358913505115222303725583753141504691540734992043009934166703390905035504237286974303243546757023303143754911949085074241979579452470343610112357023018098721133940051104802215521754650102873786582518475 - - - 1 - 0 - -

- 0 -

- - 0 - - 128 -
-
- - - - 1024 - - 93157218669182241490675992530576993151056529971540714396387059359186171724141659509029018057496673375724745430589386646269550119148269920362701170548242476230586768200869636627791503553887247127935915598948056541833660695015447621632102308915805855759457595752248174672016238265085118720537215599842731173481 - - 1024 - - 6 - 0 - - 87446462010353589849746037738234397066041473308485353520558292228761982279440351484864438349240495330020592425437696919685785793208107143350457464619455468991461033208092266100997622440647061373010236248292121737230754562108067582715630848468665181694081670345632763908815931968482206657871229689506989460958 - - - 5371920121762799854663805307274467928931803539482488713998579982300346943296540013798537887678792263719765633413574049203047372443993219255970449761492609162518050585879685358159056493779021272257216677045502035242860798630295376382443183089111094958049041573618187286695690622912661979805576995484142294786 - - - 81378360108595166141754602315536604491755704238697043758045707442510949873531408936241895016195023908288422505205347691391502628187871402288416067822115977595084051625939256053609321368824929989321365961690214884892999027122683999087792024864593514390929829855011841082638494789836356873844223507607133041030 - - - 38267072007460605093022646226649253830904974117624582796149809817168470090793680581881206510714356664433778954062641981202489800121664733504370571757280047612362826025256016849008537963783691716960805848243559388372461046653234761099749619597004542806650489263676912191096870908180220417926161042166859270558 - - - 84915700860022964551345495171007866352879240088072004050514163222400719019015839857792496006221417914139406444513188151320138028620777765653670914650866905931580757496822620485139991117159813430362743832682381564303151718274674124557309714731995606931148894273370034729964486353552790602411267273089740887112 - - - 73465385450573914162870333292460394280010999377154874726178119439395665018458887558540867390535647454464513516463027161883108146373385017590161224608954678928418471159107754308115958338408278114189275959429408867213689090594608868255919833667342809714741419864644591378701510369412610456785454373134014974624 - - - 1 - 0 - -

- 0 -

- - 0 - - 128 -
-
- - - - 1024 - - 140182840369015629677444253779509392454802320870075099123427668377849033675466983060456985009733763204337800460423127911008212609447372562429098014335706464989758758740208247220281377732265746185919831902770207371875995669747914690479775278145713009649187153850562571367375647870857686415645933669998400329257 - - 1024 - - 6 - 0 - - 74455685967512838759991043750305999910403603361183393124429352295087548634063792550278083139223072256316954107311975400422338099594255999639972081273763818226105881287714634621018111690505668683540182433029581703552270786650780911280912244521550082056222427782968317532204880864580429169559407124961989279707 - - - 71098481933317389508569823052638450315420923677123524058701261064638659975025357178946016865061229212313198312082030748560444802197489378720773582152083681326388737157127068155678066123024313578023437832536817853345391300578991541431790615516076293902237223211118896078445149399495702412008571155478344357778 - - - 115110610485112803170120890450410861574735332789506157208438130110718586860547346474556536575500204293436391141549746837480167672278952099431935207514750592413620333211437374119350533399344562363227946687352699621710249905144747106242855517490419002537117779923863031017721389280577474729281675375467381798626 - - - 120330608270420765105059866265760358553479026206034965536914273126027422997441964175805966892926981299384783642394441490277394150460201516690147208336317181939038974254656090718976077645572006247799258611056018020338006491430013096063728859631805749332510316766006851947333925001066287366791726970862626291132 - - - 67539212953786831170362280216666497485098591299326042738929014343236632821022313674668368128665233026533515361422201716455042909840388453755300604586113248821093293298975026375527804693431927109520627809902308115727777408141187735844148052245177579943379084039246961911533284602081296628198055404193130343482 - - - 112319151352986482309182686404845526390525841147671287070408503736033729389413743209528546967376916627199467539007813942237692812742367671894844803642688285719773478359579239402994226436424644351759771456595365332573215315742895224090559937302371921472603333002763125960793889174407708080428577912651608328701 - - - 1 - 0 - -

- 0 -

- - 0 - - 128 -
-
- - - - 1024 - - 153151384061946112819130335133246133008687957295267397843621546909999994389152979903838543621040703741957204585362979532683591012452196507341382378765021930080594638301102581447095150079527571736299826032393569032760089515710110573763393320644209463370199325193630893641761118983295588307360421992928735239641 - - 1024 - - 6 - 0 - - 7892700375071886213801667690949643081301660897876362862716031719252735631702246488042663317065226596719123642472889160164166752467928542946405290110100603916619860642652639874051908104321563771186198974277403372762475742407947778978713423261366968057886211939863053226416845695474626247148481144599879632770 - - - 96969751534332024137525673827305338765824331369062793244711961878338464229795343511369854914166525378159544513335008692960110239281780105946345751882081699160695192471425870929619862347261616029408965621832016372001825462464042514637488252183465735075947917168352282007926612702365709391433705971374480650330 - - - 114875699681605178113297100883725137816850022442270985408429076441164419167544283646641922160696686060996835821391125325554032812396928565692163322239663071368311305838437496947782958069105843521971767109289961823988985531772396017645122897804718943025519949475202876055846445752244455583140057649113803614259 - - - 65142979135827041975796028186758506145854632340505778500302049061619882852408057984561028536581103479186917953904089923319512041375743806093313722634211811019559763185887128205817238184749522143717887021843379119212824449556508752556588828478467790333950728028611785497198162523007873618632206089861361401340 - - - 36365653562546380774498331892233340368119440850968377366594978378206403596397349649940162495672849747856663451682615481355115460892329551644027193052781744071836000722331822907728424967318270206822200346897424772482580574472348312641051213825757952065374047265006433093383031570608989752280846790724625652114 - - - 37367464132260763212677594935535066845758607432576735529782786049728028305368775183042501847621998510706592209814132747806613258637353374842271547029492874993834491837910337348454981742243913507887896589909317221528522453457178954812875123817140250207188061720075701080035731147924455124722653493077166508317 - - - 1 - 0 - -

- 0 -

- - 0 - - 128 -
-
- - - - 1024 - - 100867277587437185905738415973319241270762549783559365763080515113732381952674153438473522936350424248510177050073173341561288174108410763783076387484742275185420071112263308649492980833108007892837870942819215088251575737730473861793336237539084855310382517708806608778283659205231502432743977016620509670369 - - 1024 - - 6 - 0 - - 39255559716883834710996217195960790231690219648364596063642252732525253626322537184453873865040277621949489316023974802886660737439109091681259589237564079506421532205836519587245678559994523313948203934718792220230453120669778118668541975297967552943217325494302005027700187260063491922501505329489123345084 - - - 39251487206514441563334280658297769620912136371041423458186372978938177189264908183631867083771532146089831189040237231008162953455496756686803076545387981343077808092826097431496885696159376910241346660709064489706335519357501003266465818976562287434337562453673352957027238784722579421141604136610413865069 - - - 89788387309278240674496295908504187208537159799772080051192292579059805429479222048578000890516118596274242793098756842780898980765645869881610036023411374800834386223748464825899794852749054346765657959106143650692839796441237207630886842547087030398717915820598774482068967247661437905594328521425874979057 - - - 26357966711801363898328231309025314087616129417836161948306497415882603318843666161160822637115952535994405937855709900736450964992853399251490227990497967839030533819424971389267533958232849226183830101254778677749362868289847725471454616517783178514849063798868429799551121680536684866362141823781948326955 - - - 14384849599051764661772057823488151609489203006676366444227243390117693698668322782327983827142983439221014466954818465181340731717991045271712496710923417891229487421449062528271933023092771365428984997787726567732777005825539778159234635254765002400637042489824209849704387913027726439841852511942249366530 - - - 30051432193108012845512883901872689742838894686285390245961092912227053842938452415405389199460855252222500571948227564229716905666340774672571874746019951658247579047627333063178030591379609682038552274663193364087296307923630239584978473289012247558758375337308299796539977243614211858116751481256713921208 - - - 1 - 0 - -

- 0 -

- - 0 - - 128 -
-
-
- - 11 - 0 - - - - - 1024 - - 99683430209219299202938906775017606724469428760930594089358427410134860618365868965004793074091319467805535748972215503524038403535258504555855034146311628672944167557855048795425950230778419329914800959299004291330197945213922372702252933746294221376666676943038735011157528710864090248805630235321387417233 - - 1024 - - 6 - 0 - - 44374832064487549703432106936110733223763329868662976410465532166844075257057406776673624549161360987249861412044599719051898091867684286031639599197726655387219559815670638611226141829724813072055389849106845806446371521054197013515692281584194734156442408523349320037692677236600725489054906594525371744098 - - - 4630463067468923828162750583060014163210626720569193915638610638185648687072871454313570584495776843106357295879749151692425383863181535413318641399457012780863140523020442450319803861217678809327099130460454107396219723696639091046783275546878275618814275775664817225756657644407131100216751298115908131194 - - - 81502968578916182738903954868803437570755946677134177447602235141924201499139137044596035140222509670602871331791597044073071572412228544534819523226128580024545496766294194339793960293820231413658047109091660897365966097797938250791336718369379316371047772899151957904896765356935959814025957982674691345123 - - - 19530914161602779659551760133445821552317320310152365572270824124934166659722311454746309953223673997078297436243931292053801888013480083060066216140461485920045976827407762286163098778343580397538509809300097680026549826911680050446687580200949249156718366777430619222680797133560540120874109523363374682532 - - - 84981501181908958407165882058596493360698119711176806078279361144462965507837003283079265547534700328302141973542643476952659223890385025553457948180508055232705101336878525770094803887787098569156979516392327273966990531171437870101999949275825950472005389499746008518249966417744874164049226960084391812234 - - - 7893650965033577198334191201028694180475332921983002452552068231359850151359044622733422029300099432801430764455555811879002006862417563061903629164535541080083196159447478495410613617151717517389931741132158488141349634905171776801040321832649612992461489685161324965894513229375743124200392574150125896106 - - - 1 - 0 - -

- 12156351937563573658659580053253823410691110073159632064873022501836009465486592594749999599277950935800838070217509230652132563179395724644794952186872179 -

- - 8200110585906438032621304395054179270119353002269548331464070505333187116738310343642958392223816278303064396050910031983689028221128048940187204440059627 - - 128 -
-
- 1 -
- - - - - 1024 - - 100372618494278207809325833745671140482141053299167545555496772471748336142814309396477676570872646968276341124341133734057291102742322081931492248898037896745834964263295089835223282406172162565851658852298315452525264953060051812464058668677471281862812603962337079805583614207759557014036925354032849631573 - - 1024 - - 6 - 0 - - 57246992409737900342577682555961117349863309601824510421222521894627026751282629144846490064039264510887449820515663063426823074414131547854380098425944664198668967874835264912524369399371752886788019144257660363843875576550200910324966658273895956429073677736320994573692181961701978193186571833694420723781 - - - 55359130326043304577443995739779715186268346376620963862107764611659939071774803889709800904940211859512035433140926280209277737074076862166823314552825380623600695178406779285250666101690748062116072596864033546150050905356796372295859111563103651519324597646670380478259352333788125722561335356419351548649 - - - 50281672128225695904327755312403473270464636265873620911439875862842840579216593986516290933013798705736976869536862767378398131732278547320623614540644278314658335040286056564380320042634960782424531211557936644416852933930918166129586584400530703576432511573646243132971344472696494676449191196511768751040 - - - 4954009689876130900433823183239394059971025313181438225168723025500650021819168443266313593092459139668294877241958627180344247118460686185955251050098451412974392505212283916588312535306656898458413369812971999245044625814448902655421908545388586239806219956370126085702941241215414372775529176415068272226 - - - 35515595255709896828997760466304152492220728871829869589895003772974924553700508769181219885351038370363994580037898364522369466452803833450527848565405566973922751414158220323539740873051032498388712296543446809826888174558618629333699594826671750960039792539335312071049065457401731470572849760698057282405 - - - 53982898161884174760525264593615577676431520915620030422211324465890277781242664656285886912152301003799278505578589234713539160914623954004226071684048051930405768140214951306139171510110595301853061292778036789451353938383524392523322187090038385843323099742467194272605232422277182140459271404712596189859 - - - 1 - 0 - -

- 11896551745918105362971728512744277845835439532818452881315269737992426112588024541732421368934755554982621680641446753621028215232581368061969077812779927 -

- - 8437118640594123178620918076897688577337677623112766785827012578840671912538015040671630458384450627586876621108564469770753964000093941226835845074624499 - - 128 -
-
- 2 -
- - - - - 1024 - - 179056286208052838965292614776285578832391122479516523035040871652754296525571820223688635982962783601316990610178153476124475074036124841321454348975288658062663380306451105704874611989409092134086971615401167426036221993116519591467159928284378929315318332059386710030291858650404083425005871892071186857273 - - 1024 - - 6 - 0 - - 178377552641377500865286063648727556416404015075127401685534575975076459575504794560246301298721955859013913893640507231906329290835420911614600529224173881974520601196077215418521752161496328570548883044296041742448024685274297430678209781623977102471902189695810814984063443362479850712510121572973530768995 - - - 20769688870070165436992427339694203145292523059408806374887538935528912003699615548213392704619780037234390842067366936848278728385901533105547087225530691157902332145378484532788468916796432069325744865727857779279958043613873271149288783780319280513887160495047913315001985643689388969419602435921902916576 - - - 174791262245464645868767317839235021278766075455568196624276220286866571918403921718660783240456355740547605541359691882609396468612630630288115927266879724308965128595708829504857559201862612088203911860982726216825023258650320830660279603311065370610444214613451198710481166631253077931188456029167534479371 - - - 29430949861921363180532447370885938675197960719463985708429902998553499813907878796936758756888004352632985956057062412412857262290557262267490819588447955842941087683905824771268511538073109920236468184221145418158999188651980852958196002535495729417164668317975247134260832577524795061940668012070262660148 - - - 33823064666593497298664315122406795314149352648971525159868342766757305003383811070461423407856422008038095751430603738498258035799096142237609225846417708519893838218075447938462930393685967123434545052565320035862550253181734081559761406167043844418023672259049372762462061867104300604038115705269215470437 - - - 148058038465200793690340551348246193382881082948352221607273933659845806523220248031935813135858162670302995149394857476311437030948371832650496514019132121253661904600363352472468971446343853681200879325567745500014430783962951146409075530755861224679906402281793275989220685808705147046100986005410229853772 - - - 1 - 0 - -

- 13387369053706524441052298969953816865931215541493627201932050414288871500077266522988236783752625813315396589969797844560751620685738565702270168506745819 -

- - 13375016815456955841470279163167978032541957986847763585725171697601726229270480352604959863298180469690218668879817745445241491655372612081421695369484667 - - 128 -
-
- 4 -
- - - - - 1024 - - 122472266630673589598992895062035703233848661693214725901405010631525288379574816031770542696065901636562582576773506864908929534663254247331128605764728063087768770017178540062512081945440960866895139848947409308478976883048112403100515017574348656902851568267215962238033022095687410295184090742019791113413 - - 1024 - - 6 - 0 - - 7728944715899189434388609909724774035809842938667678317425460301603605823013640478927439541969555413709778749118826660002926674529472346548351718382698588549714060210062274800686715297407856148427378139345265348221133978168696684278480173159890783005838020735251419417910753567965053175165025017789858820644 - - - 26448003475986841497968052832575367195088016660519408677049324275770039699268051736789155417037960727921739548551366436808295399762769326861031593200532414836942831340943797676033433793694248322768289140083303407565490613002830404023055002980920011289126814582058510573151951384518941752137790627729966328601 - - - 86229288105115393213027250384970878195046658018230121981926087622908360019070695476890286000825705817855128868466090874517044630051807932688080137330506741796383851543511055620171832099182323963400791787063009161982955132748352579514479641889009556728765160794019431155612835281884746046945181179175314072101 - - - 118443298197751601243024301938618535427519013797625162067557289257443424747667332390767128609364405814370507956534181923146947118096415153388797603904285387277089456614581467531519932588788044429896623956929401613125989811394848718430770395258860135232715671961233760465960973508438597288028258187771963652303 - - - 63079025970083405739511542310056249842741383381477548746042147188133572370748015807051874328665981591645313044641075205479762053757917936684941075988549900240466490390069845305685504221361215041236490072242029131680788253507798397137448619734983297278496456464706652724192001914955923548292849880375166790857 - - - 40509648238776346975545047490038074209435447170427898755134516674702980824141055142532620643304924945704236217094826204991308792562157103171370843664395790315537507859800004916243411935772744533205257928339062171373642112948854794088844210884398436494877111172199985119678162349590861249848666085931258412086 - - - 1 - 0 - -

- 9644368850153322034703315103697901051926884488301430556546617138464400206683907769487393990184694328778511476546020068068021945752432673918387223686904967 -

- - 12698836858435435937675913359997765775785276976783023925769404814538947216761763836785592069485979944242173136025323887368624786677577164791726164185869139 - - 128 -
-
- 8 -
- - - - - 1024 - - 94552121250876779226056478441985417834697549046525732037515214317098721124385587683741795285943068838272470889450545110834171450997743673526780259637641164399765807542836445604258361269046692410035177576626482842170596945096381486480085953604978737328476456016612043198968867965622421691858552300474095035157 - - 1024 - - 6 - 0 - - 48083218856562860783737525775191328434529309725786982977533090588932781124076143659736041475811675446369495170676614042227311991610162480246804621885146024797948097897694587243264636437130851802277584364037533108489941116668460359722929037448947475873025984332615369387428734396236836178248179053324432289387 - - - 76634283139631251031930451482439094786633969169628830486414552234002484146483166767407506407205976751241526053457671304683137174566086803880644871041222985640288589016393229489142957844430267204654938648698223944585668424596705445851412046692088325329062368117357299350383261539550382410503213810360724768831 - - - 12396003202718048909550176869357200835167344522002799990717342448836637227464886796471669915677173549704514451874300300953954982243388321237604630205234035637633279054240127538882158729863053103189998107664715943383217977914655949391169809734095037466008231841791029642492622767619951904866524114245681424782 - - - 5539923707394084506717087117390496695592232635500747359889504943711791202029940555652040925097713452840277213496395608270510922111988739086756598726879548966887102615418006792507194054375683371861709247204702686528673393330441503439121615585771257714697719537117389431199585862074149372310085911201841216186 - - - 65968532979690524565399159109865869898284017329187061132541714089842101359911218133768358539795047680936832650790336463801883632609130291164095510938785421650736176533067266082084768408474334973607759685176339532668176044078942480494801077297292582190823343166661955740154699563110781755198790163430805716978 - - - 8929410934781893842920542351761290516339838143391027227969566157758346551212210108169096861146985810613153289756321515096365399229438452562850172935225676505051199564664874135916650774022233114020462038340430857303825774705427727079183433773581422911290563266734751511815134252968205031225916496632965260619 - - - 1 - 0 - -

- 12626409640272974655233521254634505986113859217530798906873548183103099611375959546554379604492110745715846535234744512031965162358286807757060219473790103 -

- - 7488440811336818363937159595177873184411792902918658739383421198307395028623162698428263224712461137857458567206419473562071318521697310662858469799194419 - - 128 -
-
- 16 -
- - - - - 1024 - - 124604760543224075224703067029823671929197848568290368816278071531248699417186480889975307973142321087447654043163779310314373817531396202633137323160556385697895753637371197560517651126571956117326552395441960299276166360937411641365637714128170666757748021061815851985995399358099600530948464000050172732357 - - 1024 - - 6 - 0 - - 85374642385284771257823631576104372768147056924874164883253839053780686027174341621883343533017782072735743106871350181141398460483873793075998118728027487068606054873854312222135302707457420590697930884900408430012501778121848164769218884832197965000311562550813948768513322057496853957945086012933955768928 - - - 109951715000613517319568467860069810650403863415999616962622233849462032087516269516115308808422392422344711580072435010666722823022715603530377444205621343005261890621173920886237616524419996303640950274964938929401949794216034721670708285807410307537304208774095446878328504393857085245159895842518397081669 - - - 113897613942613897227385400755632242796147855678163991969863715867699990348445814363632179253538407757961828124650703384323771690430094496902916699863026869603726373354595025416632525977003500517288059703060134213925130696858407196313572396734576461499925537889675832368585194225936684535814825774675818271594 - - - 7126020928855387487678674994782820081171280721588220504548382853994207252414761574612270717533602534438287832704904426640097554047836373585430822304067094169963601314200955936766302620704531487418270186290467140502478905642048977091606481152460527776657066274437262112903743860557673135498824456202362431095 - - - 28704319304982437230631355216315820387776115028078205817309612642875919182450943971231372545448637321011435895481695278298527227533430029440070142783852154597895389875946571611035965006088562868353361887342978399010005933994152947285950976477013299302158959465667564151543055870642032282141512399669701684124 - - - 94385116545288685745006313511411261449412016951854864094148648114948170929374208755686282030124840944301610566544929548845042596674629788759596677932904948695542436232339591732388400574815727980732194472187560302852072006892434987271733784466225284120170184345573862472817276658753020379680128757909201180493 - - - 1 - 0 - -

- 9597358002501018309121870214896018217870800796878035069254107760851644762277443459596584060261292202253797548066433643464174883558533676208438650069878923 -

- - 12983235647847331021494993308557649154523925317581742012198005373331971836785398319725866868674038165717344426853381930807126225951081067813158445817413359 - - 128 -
-
- 32 -
- - - - - 1024 - - 92667338402278150042501616331571845170553916728035435044100057040256065504286462484564859200605606351639537638200067692153833627624658309284127823039676010855431298672482526552316853836499357114282811689667233085741354835345171033926521816008894273405946326529381849176517255761872896679958965719410137872633 - - 1024 - - 6 - 0 - - 16811849638918050357707196041977965708281779948508812087747452461640318210048722407843231825782189557782450810427679617933238834899374426352555709149349530750985291583473604357471905484577529661955836023008264742969193839994095846756647807398434006424747681519563767314229263412212943470716671982233598649422 - - - 58885675164871396171146017162515484784619548791139875240864919327966417145277963785116921012215956550942923762313051096493940189775695160566267858580994075124508420959429871606332304029906432878856949417986879035877178605192180897139164552555409945582515862076757143979626309158967397214623905109570430339616 - - - 78313914382473412665786170356493362330039144085905477110883824576655127416478576581225802910372034259178502168118482520057731459855605400355454141177724737465710455795317797057050749690825582952562593287731630723650451698245064627076719872087412545623712737338570571765968440087169043872698907874927081077861 - - - 44353657461760237924006107965806380925063513414349843041392711469913556488536732791027490710958460726040728309894307767887311757312709852005519327917263961141869470181271532151197810341309095643674076995541951200855303977317735453912469969481851102207308778763085134371637143049916350432664038803587826589668 - - - 63191677686706411065075451325037944524770770352269227650110085952842205184411082582248537168068154849796072871117393766031688195935193176655508324522062747802100124202901719531065193631269306020605398068520343217692627311881974378600699699375644522702645562717393999591546273213569688686511625264588794858942 - - - 27652205832407072812316692638518470944442957295475291784728971848700300617325041310215882904190200515282258358913505115222303725583753141504691540734992043009934166703390905035504237286974303243546757023303143754911949085074241979579452470343610112357023018098721133940051104802215521754650102873786582518475 - - - 1 - 0 - -

- 10116582691417961700450409660073771821080163993540593392966288504372235050089155909865587090768071015740429923980831573662177196533033546908068144339312027 -

- - 9159944739134999273570507299028731020005326833476187868753450219363085518454977587499939070133919505623808873000694070158656903559252933145645844495267579 - - 128 -
-
- 64 -
- - - - - 1024 - - 93157218669182241490675992530576993151056529971540714396387059359186171724141659509029018057496673375724745430589386646269550119148269920362701170548242476230586768200869636627791503553887247127935915598948056541833660695015447621632102308915805855759457595752248174672016238265085118720537215599842731173481 - - 1024 - - 6 - 0 - - 87446462010353589849746037738234397066041473308485353520558292228761982279440351484864438349240495330020592425437696919685785793208107143350457464619455468991461033208092266100997622440647061373010236248292121737230754562108067582715630848468665181694081670345632763908815931968482206657871229689506989460958 - - - 5371920121762799854663805307274467928931803539482488713998579982300346943296540013798537887678792263719765633413574049203047372443993219255970449761492609162518050585879685358159056493779021272257216677045502035242860798630295376382443183089111094958049041573618187286695690622912661979805576995484142294786 - - - 81378360108595166141754602315536604491755704238697043758045707442510949873531408936241895016195023908288422505205347691391502628187871402288416067822115977595084051625939256053609321368824929989321365961690214884892999027122683999087792024864593514390929829855011841082638494789836356873844223507607133041030 - - - 38267072007460605093022646226649253830904974117624582796149809817168470090793680581881206510714356664433778954062641981202489800121664733504370571757280047612362826025256016849008537963783691716960805848243559388372461046653234761099749619597004542806650489263676912191096870908180220417926161042166859270558 - - - 84915700860022964551345495171007866352879240088072004050514163222400719019015839857792496006221417914139406444513188151320138028620777765653670914650866905931580757496822620485139991117159813430362743832682381564303151718274674124557309714731995606931148894273370034729964486353552790602411267273089740887112 - - - 73465385450573914162870333292460394280010999377154874726178119439395665018458887558540867390535647454464513516463027161883108146373385017590161224608954678928418471159107754308115958338408278114189275959429408867213689090594608868255919833667342809714741419864644591378701510369412610456785454373134014974624 - - - 1 - 0 - -

- 11972876868460753275066668486585770036484418629508842316078562629031483418581358900234477964808845988274094119408005433429985716131502349487632772118136887 -

- - 7780687940972589315665978051594632936759069267966371943055920664881608463464192616257011149675403935035432853275767376331164649569829862304894745789920863 - - 128 -
-
- 128 -
- - - - - 1024 - - 140182840369015629677444253779509392454802320870075099123427668377849033675466983060456985009733763204337800460423127911008212609447372562429098014335706464989758758740208247220281377732265746185919831902770207371875995669747914690479775278145713009649187153850562571367375647870857686415645933669998400329257 - - 1024 - - 6 - 0 - - 74455685967512838759991043750305999910403603361183393124429352295087548634063792550278083139223072256316954107311975400422338099594255999639972081273763818226105881287714634621018111690505668683540182433029581703552270786650780911280912244521550082056222427782968317532204880864580429169559407124961989279707 - - - 71098481933317389508569823052638450315420923677123524058701261064638659975025357178946016865061229212313198312082030748560444802197489378720773582152083681326388737157127068155678066123024313578023437832536817853345391300578991541431790615516076293902237223211118896078445149399495702412008571155478344357778 - - - 115110610485112803170120890450410861574735332789506157208438130110718586860547346474556536575500204293436391141549746837480167672278952099431935207514750592413620333211437374119350533399344562363227946687352699621710249905144747106242855517490419002537117779923863031017721389280577474729281675375467381798626 - - - 120330608270420765105059866265760358553479026206034965536914273126027422997441964175805966892926981299384783642394441490277394150460201516690147208336317181939038974254656090718976077645572006247799258611056018020338006491430013096063728859631805749332510316766006851947333925001066287366791726970862626291132 - - - 67539212953786831170362280216666497485098591299326042738929014343236632821022313674668368128665233026533515361422201716455042909840388453755300604586113248821093293298975026375527804693431927109520627809902308115727777408141187735844148052245177579943379084039246961911533284602081296628198055404193130343482 - - - 112319151352986482309182686404845526390525841147671287070408503736033729389413743209528546967376916627199467539007813942237692812742367671894844803642688285719773478359579239402994226436424644351759771456595365332573215315742895224090559937302371921472603333002763125960793889174407708080428577912651608328701 - - - 1 - 0 - -

- 13237924258845536022467370903429005560216761805502124415245746897491664222157520847731290544684340754169134287990322205959239073554837394903803257845482543 -

- - 10589488021533733426785614404860859276142077436554165783580698037906205094105402178674240662351883735104625400113876626148523838613328267286425534418402599 - - 128 -
-
- 256 -
- - - - - 1024 - - 153151384061946112819130335133246133008687957295267397843621546909999994389152979903838543621040703741957204585362979532683591012452196507341382378765021930080594638301102581447095150079527571736299826032393569032760089515710110573763393320644209463370199325193630893641761118983295588307360421992928735239641 - - 1024 - - 6 - 0 - - 7892700375071886213801667690949643081301660897876362862716031719252735631702246488042663317065226596719123642472889160164166752467928542946405290110100603916619860642652639874051908104321563771186198974277403372762475742407947778978713423261366968057886211939863053226416845695474626247148481144599879632770 - - - 96969751534332024137525673827305338765824331369062793244711961878338464229795343511369854914166525378159544513335008692960110239281780105946345751882081699160695192471425870929619862347261616029408965621832016372001825462464042514637488252183465735075947917168352282007926612702365709391433705971374480650330 - - - 114875699681605178113297100883725137816850022442270985408429076441164419167544283646641922160696686060996835821391125325554032812396928565692163322239663071368311305838437496947782958069105843521971767109289961823988985531772396017645122897804718943025519949475202876055846445752244455583140057649113803614259 - - - 65142979135827041975796028186758506145854632340505778500302049061619882852408057984561028536581103479186917953904089923319512041375743806093313722634211811019559763185887128205817238184749522143717887021843379119212824449556508752556588828478467790333950728028611785497198162523007873618632206089861361401340 - - - 36365653562546380774498331892233340368119440850968377366594978378206403596397349649940162495672849747856663451682615481355115460892329551644027193052781744071836000722331822907728424967318270206822200346897424772482580574472348312641051213825757952065374047265006433093383031570608989752280846790724625652114 - - - 37367464132260763212677594935535066845758607432576735529782786049728028305368775183042501847621998510706592209814132747806613258637353374842271547029492874993834491837910337348454981742243913507887896589909317221528522453457178954812875123817140250207188061720075701080035731147924455124722653493077166508317 - - - 1 - 0 - -

- 11652347351815546411928608048767936237430835628552112025242875188652549195683446121582057824636748462894336452288925511118433186493764539072256929831649699 -

- - 13143393295607830664327305287951872251956799388668596560544307288415888343206753186700563936883765295346535048622643095185041142765817463017352516628312659 - - 128 -
-
- 512 -
- - - - - 1024 - - 100867277587437185905738415973319241270762549783559365763080515113732381952674153438473522936350424248510177050073173341561288174108410763783076387484742275185420071112263308649492980833108007892837870942819215088251575737730473861793336237539084855310382517708806608778283659205231502432743977016620509670369 - - 1024 - - 6 - 0 - - 39255559716883834710996217195960790231690219648364596063642252732525253626322537184453873865040277621949489316023974802886660737439109091681259589237564079506421532205836519587245678559994523313948203934718792220230453120669778118668541975297967552943217325494302005027700187260063491922501505329489123345084 - - - 39251487206514441563334280658297769620912136371041423458186372978938177189264908183631867083771532146089831189040237231008162953455496756686803076545387981343077808092826097431496885696159376910241346660709064489706335519357501003266465818976562287434337562453673352957027238784722579421141604136610413865069 - - - 89788387309278240674496295908504187208537159799772080051192292579059805429479222048578000890516118596274242793098756842780898980765645869881610036023411374800834386223748464825899794852749054346765657959106143650692839796441237207630886842547087030398717915820598774482068967247661437905594328521425874979057 - - - 26357966711801363898328231309025314087616129417836161948306497415882603318843666161160822637115952535994405937855709900736450964992853399251490227990497967839030533819424971389267533958232849226183830101254778677749362868289847725471454616517783178514849063798868429799551121680536684866362141823781948326955 - - - 14384849599051764661772057823488151609489203006676366444227243390117693698668322782327983827142983439221014466954818465181340731717991045271712496710923417891229487421449062528271933023092771365428984997787726567732777005825539778159234635254765002400637042489824209849704387913027726439841852511942249366530 - - - 30051432193108012845512883901872689742838894686285390245961092912227053842938452415405389199460855252222500571948227564229716905666340774672571874746019951658247579047627333063178030591379609682038552274663193364087296307923630239584978473289012247558758375337308299796539977243614211858116751481256713921208 - - - 1 - 0 - -

- 11871194330006119075814063164847621988250895029346062235036869017307700154221207494837479274646830156979463437583772905378112331319232584531756665421941123 -

- - 8496809569739828636416865104250710430755229036839126522199307417003852295908536338099771857812069765678990190616829088005492474195283849698868360489389003 - - 128 -
-
- 1024 -
-
- - 11 - 0 - - 1 - - - - - - 2 - - - - - - 4 - - - - - - 8 - - - - - - 16 - - - - - - 32 - - - - - - 64 - - - - - - 128 - - - - - - 256 - - - - - - 512 - - - - - - 1024 - - - - - - - 11 - 0 - 1 - 2 - 4 - 8 - 16 - 32 - 64 - 128 - 256 - 512 - 1024 - -
-
- diff --git a/src/bank.80.params b/src/bank.80.params index fc96c62..36573ba 100644 --- a/src/bank.80.params +++ b/src/bank.80.params @@ -8,37 +8,37 @@ 1024 - 93230763739280571504135894981758464921549533244404977499280100317610642158696171760528104674637737229733175941568553403723105175097015515319699070952376427079443371106935342247851424088952059295885886935097518162672135947106049387484840074591589257360230315769557689696542382392519813078599471190744767574869 + 102680714876620505251519589456529850089969700556564489253162684638539597335736793998411151385396668678457395604056076455447346438315008567850445832409559094642617108516105196798178870587832997740211486024550117558968151215813802257578385470372409470175519459389641067956632237921585676408120047405305262039181 160 5 0 - 68483281100617598890690260390149768811612212228415625203522044461046667111481879531370567312465572767471594307638295801373186418716158142849817983459330707680663417874829025870869126176489427613080242732002651745488662881285588979959921965144385346078984637002460369031880302928947344993869585533184880578110 + 22923320959192453636423682385738922848216151492993760467429386172337582699603626592667966029063069617300543105850468927060751138940226489398256413607978816318065423599404211058602051331171774528282150565237472007558045410089374975467684411005456109694572501365211023547108753818220756570663968723659519304097 - 83265639626129173611789599010225302025152409809086527203484455901023769133886691838273456108748805496287706878962773757945456134873405263745164606965847314532700391809966780181133976693605443364901583082171984350459199737213226723745536820865782465101328993246611565093204456820916921489432935715107535378903 + 53945843214081887230506825685162514221944851452590973433147320105768347799035010333040104182762421540976644457898523154200390719416111152133906850059276116624692455403920555815325946146027238316284576081046322930997100925534589898400045746221732607763907326046366956881978962788748138738898197865947329746712 - 64494645596589253556216597795109317230393144753176410221096594531458948364177234628870736479592689543360905599602657314236263592101092566616235573847064708472909757312236854415546056402214693799474345167566671352673240454618588407803218073337529354507911802599713376224420664104074189347847705900767264872038 + 84070450444178810764801942593139363675201942216375234211388549548441399502573647392486982654665114331690463175765687779989817013063882187163233753732167024252613425512245014453169195391341163601305650730846456990348521068770085139213305228501503975315987245346014618040731218552889355850011776660968387243547 - 905161046851521409257577111452816735715252358623913604457484229604130369307839601749333327613605388607433350593708810515691575210160388761595869399020222667210908597450718769664858099351646068693841593092163471515550082960630078586622005691616793435150664360492128321931098927419019241842770901510122534086 + 44698200531549202972232618323671999010830294896874839743157702137836602383560583870323823976773804259743506237545914357368122833664632525931647018821826400373691255566854594204199447306752422310463080619172699838408810456076477752430884838822369737010719356000558487625372180909172327760255616921931423991248 - 41967547411890952815359321374560089169572366216165489882401854020396349040651479953032950680353976700315040441376320576704876897753122041503541594885225811640391952804794467791615197647585183498734975425091154552964180829385469542341052967827029779452736068735777647237824883904045150416844783850957326457638 + 51872694200042776418703861731161005597647063174327775542825481250710848362720927717796283168056945768526737370976647132055902410582742570384884317599347064382929720903764261035793509472519152983496873672379499058845114238849894388800999929829175350045958631291831128454260459997110600204624172747502759593173 1 1 - 768028739645457608782610724486466841945856438193 + 1381926471275670696491547928550620506717346803979 80 - 121389681045423325292614017485147832276096371324287958707137023784247707201994560568190745220945575100850617828806471788665848145386600911065071127506834995734161325061718372704826817340005630257932482772489716899084347057504860573458772886343641833581315715476 + 74302589183225406744708406598986697445626235129332961159539629660099003864681279676025057169598059221346100246653275027988998552977043535171844663879396255745429680604118860556814772359887881646573360468171271074105943974872534642719266485854337939537007792420
@@ -50,29 +50,29 @@ 1024 - 132805917336342357621340347406652851500160158358616478910647979991495279410794939929518375989150750446928132372271337608193443333865973093134231559072633996501463762859681361235278609969585631425793848655519125510571433841525692826089479555621938481220398806492169797461801342643036874762401113827812141565129 + 128057967809655946190316507735155452831314572900315216081434860144597217324346737671800302572587640910078110732912465466684478941477363845874613925338791275068167816621932721309235605381772586248486970010063355049965746801462578755831359666996420724229475198439645105729191854361248312605304734475323680662913 1024 6 0 - 123724192971345628283598524077771574642115516306203819302642840518434734884990023342093372590141717915386280139738278686607193677120717277193327685180610485720329861045086429532831247312816073761794696539180603164001212548485317103853221255907270707439711950418933701675350040464705736338361874491112644317294 + 60811636929475187479807521649087606074793642064167945690350627603203118950323257675713133373687111123714663109087066267073458476631246485001894677569393649603260477149691339449729864039552273625864812610179069562367245786370215607199308088083101677805342992837524421920973047652387594443568045299878715104011 - 14625429247927685090341663241649949148258959797292039323692281863043191792520221408569037942351234266447978782199478598250390786360135847682725454656794862494759779321288036136608651289809110043898514796554758669357170034489653566653604233508960098637358973041647160974378868936394566361597245297526090809584 + 71560986262474260038579847733152867125395323692136727882523150181177145526050032346646815633503819181049097447083396963116870388315714388861158191811280162852633670260478236187402519672391362381543748430716574725648848677812893437556332455280083345503039177361800148373565541695573258846852919928924249154877 - 64007057126176875784921548625312090381394744981912355585114232564443978202823028666354191570270582971317908560590960255621718151644865169079937946397430383552508870164313540570101112038765363492847255578958178618499930646151629515550809210720009750548884710211145008245153069694049417395148648829340938687662 + 5358493014159018151110306019414188401443366482533390828878588153924237270657211162207396455592545292115596564966717448066974022571552087820343845293928484045368156700279200787884399405557838594314421227423879077160333472477688129275324340290022874614042967407069455935447388415804019834527557283355835583238 - 103115992915880337411327588408688265150975095052055138397293144081059692734045417060416587664821844857318695820398000363692718875618295012846030208453079674394744433816396921378281051337563089579440046048625384540937518959711246975878537125941932878593410102488330542299641806404417418885309003319570534438453 + 9440403911953510704955609199118462522546969159294361115679964001969095067128208202978671380235142495494192920664243060842431049236464627103331285996753378993464968648353139689202039972946351834805543874912252883016750152554402795151625609573033493183190907610839726606922080056808873159110535921110839225918 - 119457315332497076188739071965563333761790600794685011698971978110574170937694642037185938145352267447861601656017195376534888030612146228692269726722534673032982839555108591230005930224550822365861369188758542352070280899039005900661300902275599304439000283009496810058515041286869086152747650395143418209695 + 34601241858178235153992489154363566911322825930412755051942961530163789553279237024169967243263931210587905323687670939702730687998131084839805896091785126613296047470576600055262500331821637746680489652121076447750079042944735474064557177506619768477733608759334395601504750316910835074596407622363931297695 - 97738799315708788763206134320050643392532463560258106306083499059560293956823651670664308620427613476046927360217377480809698815484522143039469284490440932497202203091566977872700143965467171603897734591262817015477036444327217869465633675102793500947186640843443170349950215500682011284039501098188488514980 + 103450953660312905541961327136746359534991486059040490771968614429013794227835017626759804639288113432551732347712210332460709755012800755979360542019454727242090797411218789006851073710562599252458946620552051918314153874747184637728072116094587384838416002546398982033848043597058533784377942968102172250659 1 @@ -92,29 +92,29 @@ 1024 - 137372634310161859676135284402338656224702625790752326093422619912065941056411155016565478217907728879945260871334556369999320378181012769399229672757185658932449669547994359702315835117004920960039833723832775157892486474472871781401535566138599328187388026485937842777690668704923449947159362940419397279397 + 91338861134529173742636614734321283317712406433818139285229062454925111527732609262828687047423080667973258817589805005737017416371360314088086808443898371429020158735259589920882443779130428607594850787634565846387075036083051955856286100630464641033224957452092909212599715224401427904042049536509604893693 1024 6 0 - 116441115010520204443701551044388141672708396572634839287898503254446689571343162226795875092851665648107955057536241015609708368366718318010287460951620183224189985722483322655563646525334936557072068472012436067191783998514083593670357905410483156163550019788757133637004401363151527763776723191808245083150 + 88481512963655310506095083872998303955363103665395614689748950761935149130592150567352051526842435768907883513122638406071951993833483039104880894260670448994086429616644971856997369229550170174238792300740232364024915015016653492885640971890845653859579668498528250516917066920672069528744730214455335881003 - 27044557351618142662356552877489107755687685627121911493229457826128074471372139670480946601583473364230995461783264153391465908763057631990861033738028356787438011645743530045595363690544107938500296332245528760556413617439234729949411192040200982595365086278803028719387624406149566721713663632397652758734 + 71420609539497237732868765033013438071208066944625734387424793864620282249588182875061993503837717471514509627177747945260865425509223920765478106067601828682271744524355493795121669193837190303641492443480194307599715826281960573836394123684702869297115710345424755375986644023739445330856168082010838417938 - 18668480646476250585503852417335962920930545198501147882117553235027914985366130789840737981562565180298275654871023023936581742688856218428559624653989709620342050760568013862082037009826528078528308498338926463622071936645167033131204995449391746215916468228090340406579421220320039702041285615945226682497 + 36213374277915021187960501154206429350509009943784937342853640962344665273661370341432812162660134104129081769292257555453657933322026058920570002011215114885632603237420344104120014493999772566832623489577942137696416594059207873047026684531831127098662368796483679106715230357303209903005563129291440998125 - 124831643773880234485522390232602697151624554744878469357280937852918545591277448221883189230205072357252134490470478766733175680960201808445712280554760481792295061585139951074758260903784531587541999977882176959445583638063216972509599746798664421534897232964080914317787532005374524315535445105635534739855 + 88784875219103004490867409187796580439336028275646934064032325734642172796350750877782655631487263690600595545185986973949637793376040039529334242727841787186152368722684829777472113434707623526142748869410906573019822447060135044716736888756586491608663760971724703067383426197232527066117239191970436021914 - 59970642815973695149052494697659654637535503354257025919678495841553238031034885486365545257363298700332014605474361404182598059404831610511163756704140132090268579779044407534827161198033244776683186964741076946492327722988775759361482746512239360253228317139110005567490550026268269509261260489164598329675 + 57669682815414213701829150785790139820922208365396385382451270040015047105011059602270677532141334599848749895445377163377797098101769663138915670832338561398070313576223809679656089041902001668549387570675942187547921753080749715443394968434937329744189522351133848627606864859717699163427995004551470140014 - 22923915272163963950857605925330142022074779916236347548886633162654056167070402255377093400484185256137566072514608718416367258335630496123774726992155837700585510673044223219699749513900672323661639291542257718222249838123282120567272749819257073710511915155801225598478720475650206575779832514355014487626 + 19430387956073665040008742545168228237366626380409449215616316415682054432029605888008345798193251163116713132110293851289775570086405711097037612492724618955613522669964620645767675728759532995017555557036656920568589220029848250912688353596366989096421783410644212433994547565209779383923475304673100010441 1 @@ -134,29 +134,29 @@ 1024 - 145833845432288909121084926233534057685357293274340350126668766405212197351890804174287842353814414753368096405191002821422184530789175512390729502084743232689937559449075513447581521298005309418519751610349842123168680301350588679553600672970038503825238594562290725630967833045040620813816180930525533629921 + 171795367802537336198216850040760302817719433285673072064016704297509263294972920968862879995019333546807716681922194952612358665832924006994420672781322683935998563828829629166676961578310364216820723333284118541610355614763234524893877254301205676826968663616237843247997193664755408992255295724018758287453 1024 6 0 - 5614206228798301098336705931671638644909555489877769303373552985024454467948272719941276640621802213319824489026627166503592953601271862091261438770581967429841000215861631061086884950337508297975792991010971325252918140265180480069954277705396167335598614372709439485252924902184204172397796469683948482249 + 138781939743420141798085654234587085378791442750844156618218315519623156030775014083940843628427157991650536995512183146050090364430217798889903276779395691314769341501283521555441395248293145295446229257598584303226472282606025256289516823083353133125249557574662930559464988881796972570415006594877835195261 - 77829222239122835610084423738321562150497279446208639514447460343866380070175601047808125427733325611930916432062196605539354365357794550584735606610432247740273684874796370960540670916977515416987155254054153328167529316792368006397532847978034025278821903835834149607180869130216088411657110222021618483674 + 168420371175596160385314346470541456127930556988792934601264980767954150761074401191883764002057676025574635595559453082438403114835695017344400960903147888338845250647685131378444914574667053754042483424927960459645361430078126904416924147233083786086593890435155965855696708192722757613306648217414021209339 - 126526668999549527105050115708853820539308975410043121964399106650368217475035537783616879716348093999454486886707365887651216832345937994185160915756008992749761345129872838686896268682011102041005029710003412657931850689656325888000091306838802288920011025039877500299503261395656474277902595055003645939377 + 164599507864917269230220181044130466242640054454386799153052272100119238662434506377210871322725801768535465849520862187042461522458751851837119010844326508994699806461980159073458635731317238484887665362257435016594387971946664996341942792674855452076757886270233668811767159399329679444242304826944461878356 - 39519547515028449055017861664894155862617764060490711234501925837865547671173429701804910726363843756169165093168047068989948316277502727839336504944846821161828359833653929929545581648110770846580090891357587504044246698977653720185664161165761777760965438539711667531830065447338000177079619272633974997808 + 112022954554594868430694861746706902810007259966892035372848716164773714721760248918761857377457366770462246217862095078291990529093104794681337350992919876990886726535142991553290065736768419334005963502455897767959870639353796998608846837617297713305741565185682566104560690180553705181428610482999491959762 - 64911171886091908379987659695928798436999618688156351616885354569475319404854703300389871388692848749447706845284633183118607140873964829806267750277059617538075740035634698703898760746137798807795759428578283927848978809795704455781269250994050734576159373116072199698554416776935114764908963304498490630504 + 20795710379390313360149837901235593902809611922782438280826554162582584185176550436631972790505407403299851110962435492486911884529635673218790787915570636384717044595376003628898518022547995524968409598599237503027024128328270655662334146591298270627006489949537312823974893037600566816074625503584300399503 - 46337737440906880658350695547525646305900567458168613888364269449075743635956571509878774476192279074625591314542016353903902280576521867929458581523010335829319495590409102271909715542993648132948180305225658201466190786746685383311897244330788754428392449915461044438929637233785244332939802020516997653890 + 4461068203835146920397273122878996496925951644023334909782795888195924230363311467297500231054245083629066539839024032350563196843805187870921285704555947110972472049763739700924273806542377974583744547273338787688284998293736197541473212310650426901783545952048410414287416361433915264087521382790658628498 1 @@ -176,29 +176,29 @@ 1024 - 146080828996844893786930415030267236937465501130613168303735364618844293026036288220097635327009673585003284120262747096635449871857553308329749899517971369512993356899511456706337957628017589622952308458223073708168002051201346250296138111717760726492689696085001720244510576087189788400173594849773775987061 + 107678493864345648666726963381598843005045134906745773568855127179729298765945796229988935480734186762723475076589458553114861073591179889992284613957887798550444135071834300620151269193028269405467525155137973905598460168964059816679287733081423902287277428322195154969572934367847409309681954541961841211929 1024 6 0 - 12143846516438032065549326588564641993076335572135680144319973070565227510388555878816485541168565333330331360373203107549711159307955856012988849600497784921648620670877827610870429166714421302856006331726388604858639217479516237211099294053777590279150366532220218255101295698436049419849141612097902640451 + 34780567649645587652662047318280460216197594322629290659397343806640717111602043777551795972363990570490561518129361133754971748815062877457811980871870613895746761204692874944262181605786891503668206019069701677551111685254064897625906904673396799614054762342291638726110702862138766341205373553864835127477 - 130110283334213982281592724744587355779238888385612173261041558390337170888862195730988952587123072858116524751419665014046802853625023209193025314170209762095895716630052691721289740627897735112480237539255012944565383695831051013027460838684588426430717433008544285106825419868548234785369723450095304865124 + 76770578985664099191449798911850613016440202975139749844785468106943538467941487623782662375335620379715667015148235397661770125559100524256505138827952950374296533996410404476470347577736554558794350087928716157046782489969073300743386412321573188949782078100848155826141059164451205262811577282438487833155 - 28936184033269797712301045816156985323899945333237798274523352177150263697445409224159438231819208355168670625188283196276111898818482147589072075244562000752484990678046008139123016667919771421087077668072425052038197223173671078453038383761535748778879934180519804845917837931720125662698639707169019951825 + 19375132007991059652876546182462672768720429677050803522934111565324016495763732172744623907045335493048740541182304274405106110493850369225158004210873483104238595711350247509966292622988932139561490663242014148110393502548086758118819001913181597386000596861820476450726333113377798106479230138706277155435 - 139743313044528582631657668286088123161464964626310113284683779085342948598023633133544825825929928312362129974614186131729049145084732952532041531975841926166858606672969874133254866846900373891351537597368983313837098495423640205742172752175958379844629957134932742930140902857501238693610132562014310099849 + 60332745111136671951489671083751897003291069716229419557442175701860610038139875996851654495020782497922916125497030526867835842055895873784260108184155213565134969114645958871640895775675472360543614497922018081777590790520072701770098022598964534954182431602697737796983390272144688966305745888541862833949 - 53044581730188892877631548732096143188468162339421906645278191018430149084642776390613644404189469954372875388873708624934832371281884377986981016031495526801835709924473080917358419053075051086050983722965169085001326293901098332606081215826837456256432766108294919171060244900518692093178547790827213354457 + 33206030625501357397902828493305862279894195856045523813806319914644617357371406587381751252409214237464923457683937662308696252667537129026830911327626477920950026367523422037741403916073653057335758700270326029776865721695045422550695292453931419295319756838382198216938790815705554550670037002167896435708 - 13720982697614420642042383264268813339206827429441510070099063031077866574985037908849971402680608542067662118645382188812605442192530585575940209920553520942641967018589809365098731467452204409869649415457166095843163238375083308117631225271409506085279102769367813064999165660319126220444280297921602368577 + 33699591887245320183352886957374795158953603724548326397696125237452265579267587282433792785552885615789973016310923276732538075279246287329477093697179355796742915804057038950601496710139911151519055346593812515824483642829165138763105492040862107512334441962031341198253373030460133402288720613467576919651 1 @@ -218,29 +218,29 @@ 1024 - 115562432164102251406622967052071750807258172151285544566894218498931362209567346945848561669965827548724769820749118527361500484654503353982654831132691503147282822681740720558479928440623829908178283919727041827646963738754679445285325013831451162488739515312866275942511475472857933145326220132237853644557 + 123460587970465722399480599701446111042791049424678164510782348298178989524706869827218072757318065802572872977206189692439610889543998303448261820274781115343738147716328254096174904353808537339736300386924394267507766388682907861666597761952802807474810395363126049870826035575374238638068965983199376357813 1024 6 0 - 1918843058365060902224156698824791077915048816126174273828173328827925146094242787808159127789911738230990921536461350767134197215631858847922569466378620788070681199103616323592972003068116871618652298189097954624870678096346675641822861238845361050835764226882558875078705801193309174207649691981387676761 + 117318302352368229229163809607702479318456428030157262995598611780776136494163450278418011369672196225024705223924157260734348678181103931116903595932563324645629923260513068155684589997607606713365161836567403767936006638718885167253192939940642824452024816730744123545240701916149057716603434108694989710429 - 5633663323728715862831888845777946094661002864544824727134600431003469539113905131778031633116781888360230284434775486594799461335499354181125564310162945192736493983408607583043279052489225101857443790367000861445428439571903674899529423583149897600345297997769124326200352679791494774441424376422975993023 + 79166656374368484214654356495255053395213742590584206280310930719755653489957925930346542517512620192097650425359579247070837443830862748231859562053718573394014868991678211219437490529223024342458612272327848652593110612340785752785585712120010687405752536405399684337596148008796260805479427829450136814686 - 92224572490734132466871405475772602483548793692969421833571278855151455741757597222662182273880403467624396109857103285036810071642000551787217955918908430643545014752792961549564256530725754107414785146542687179641756227242772610219435049498467256907877773547533212521894936045955979927225093316843447273624 + 40871868938993875410426205996751811587721008167871813439166564189762055623031521920195950886062485740929198925966775524584648439881883879228755988003547754790287586711275993853306093079373185290320968524077798129432974504079981251722944994855192019937284992580655570885903256271403090577186422692725459831875 - 66183053406824854997955985382355384715497240013453258897437176350763562425331521822435595550265618083659590969116645425396908998848723993833538106201823652953927058335013828106360478760501723552180389313206057782227500096729295807156679165429081748514586663929593834603229571872339167803106406082026242486247 + 89892620900640290140283566392805476442834511036692916092709883776370123872836264775868321860590685970283545083118729182759253902758383167687729739268452078465233562037688700620432639773342196188561501129246210605848453748122752153274263445164184465697547705606339433632142128437959746969173608800415728397931 - 69743124750042509642467145074976059009243861971684272053034970423993683530657827278165993761800907370985552130382901391446596933005528253256387440804145356085841981356225970618247323173456846551942037337211218981373022884854505546817351938007556625763760451941625550568126244464144092301218250589930964771252 + 121709777035471737364513670422914240357059445755508125094002474776054087244214559702633254647901247822895427221568520569724729995389163298559564480170015494003587855303221851200035414262844476231232261394773812801023837394666069091883472673028207084029985001140015089782123008327089253959339518752984564005371 - 72915756120647370787512976134911056390045357692685473282250206465655171985686451881325200537334167943578623112088025120468788437772822762261349053705299070854344523813062549426226658609713960083898353784228091780561562317369856737756233116861220821234249458074025030344466225233689070112675547477388012361378 + 118368291349285147157585550327202423335817645258822478079337019930721123815468331635525068128544253736950377216631099734999157547924851998471340790034858629390897530180532960195293567558086925678406847565038276833217752653830262850771875793504960255927890257698780412927440166594709334246027496966288743344300 1 @@ -260,29 +260,29 @@ 1024 - 111927356566104023053025699787625550838058397847053053322552127284788489517366540434191289811946944159151898144044517991896201183248020899355294666452275356580458700724360087814407783680353738034566389540489206594576108611637326536178335876673250303367935270215570934307497912954941670160094818547669559266293 + 115193322549187017758632085674974727024742715278872315780926012027804032179761766503288065034565716892785818153660349164554433828067796365626741896969380114418490544104123599167386238983295022270967054328089602503480562145153230657099035975059011144762714926206594556617956114445259820923651026107726741377073 1024 6 0 - 26083963272420992631361325874882186826320192111270492885447297527829930121512725063041771515422873794638132630732246178945827524916353536920338032942329648884862506341847807165763917740516440910242943041732772815639040483973079510498995058535404124602763024963637048513509262352040839650701377899779182492450 + 24958892788118393840566891402925212894261112686881756396217607457946596306978104211815943994414797105011718075194617345672726305027536665064724927900756862036945765691966423524893153682261745384165128816990435797199717205467355245097126693946214610135412865735012562961328364927779026079460708512689938357459 - 96349476044790960219277900737494348910404104317713878532186820315042836896394111182750693236907309305366101392065377818174119922772262450705915928502291955836072143986901878966783486955686515491687652827133207058317134666488154155770640867360263153123215807876346934189507244403619175620173481171524025037609 + 24288255554756812624762197103340158750190223778765519768405807403357684268583138358422886605098116268755079717463816662298139317595939687753107981126116196500860143071528623840509966635777831057754249172610936632021767758934196939105040316041127363794901161035243044698624148907282589708017305528332080549401 - 54690578151752424968627597530623695060322314333503222637738707156935596285996271874663061813880600223163657890492147882784449085042519744202705258571783341725890402018930973779086740363427426280862005142662828899727835119949559802395804426318658922453509773311165866730072879701477097084818422964205782730898 + 98573529002331715221466911082616318301300017750678680593832916072820765087229700809543111818625003499979817183312145679122909425246500434114287363675204505267732119319754784623466080567913652584576116756111506044251229410873182774035682045895464671545948436513530383740487677985431898275771829011975467387636 - 48548246442536242336650178813376090147825187269338203565219773463426768909891921223610424888168123366278860170690454785019898354608412222321318035320240409277155997290872403728887253361243526450374951908929982176434127615635172022089921656613960936488084542875629883983721976542934773414487851263961537403813 + 15353985435509734717647205939924424374297140311254436480413662376519872061599819892959995176175891437756042491481998969903341756892089428475760114248462830393435227191729623914880110584220456903870872511626091038462298582250901312945423814102221099309496784542055234964849111850334835617876760601457927418206 - 8413113823923925485688787367614707477657758975525795517827722017213206555788250307268244325721882479636008606295000856384190034186952886166588759610523745356045626108013064205521440618996713728008939728528935599492193135365285724053499413941300417129252635867240091199959544379912710341678940281432723529492 + 17455735070449738054682884370746228687686045089020396998083887583650988955042976829464912841928464950070337180970573621151968757420751546020224392735386909098113189353739054276774294071884697288831510878855213838041505870499205405393921909645992766577060606810395305981595413168173038810933707942671713337798 - 68772694314410414206205467046690216598864909706182681421449044403117172244107392479030110544064478992356950657658675437260300111069834928175128122254740575410509949599612145656885798061073750122226817037094964836568463944945479934451259985250499721987903002593433201657517849139533217227834891411340995860823 + 99078282433460334122518009685435268135390495565166370788375980674406524442600154170383521782130678737146346515697587435130336220692226983416874121180076768315197607852814628471856417469605509753709709939138595158453850817740160745949448738764045233343710173080910805476352529406131342795794391893459845853249 1 @@ -302,29 +302,29 @@ 1024 - 129247253695959703790072509914691217099002852368322468045795757340611236783965062669505460428210762504741229507573883904113055589574393037898320307119534601325006470049122917644647993271072364497135274094746214874360172173123358949071606257692363319647094023309480718209008941035284596506382336215735779493909 + 153256019031673973848391853908671616024035351852333113222956212092935054851555144537037154882131071118335109565772920677334385665987953763710322752551766091084637014937633351768184250877579165516584609222393690507834529036303945036774013832353124798268158248184389671641362425541416312746250270416649359548041 1024 6 0 - 117762663225409742292003907909356310395762445497211461079165975468263649230373970302717051754658639529032746668081675057812533532269905582012773970520260676258789891000845981509443336988580006031339603500190556266787092149644268028195165941794896901354362131862834598206683215509345587690168857698887589234574 + 15220542722079887934163021578416557040815588753014948049895358680874401987354756483638187693890778200226187944576153001580318905767308325025251868319513838639170229388887094978609944368236261084829465326382756814026047924860100572370509240911903760108844191920274365232194821110327754051188671927504786123847 - 41307676734324917289596188448768037242041561478666611229918508332376293249216584670403871893840311327117612839717795187029126418654206536820216938628666056443197376483010899927824631712516956909063917313355829047154852269087395692986828780702480137828937293992857398565122465372059669336909756576677250313503 + 143004036495287445500008244565089775614807488065311228319771443644042556939728810959906482515000410036341359319395672341423672298834030730662358936098971678898328809479500096931876973317120818472883465991015596717523641856810286626439287667681040066261020458108584755098587931772918575340120380122391279580630 - 63089817419614027949713869705443303414261012258660802756430718945673750293937911985030722540073735567220860290764744309902169310419281458073896754765094348815090678089662279005948235003153968829581576084867530630559125676708622432223591998446524862273768360980298243277853419634774064906702269062659305426330 + 25677830626343122473800267766987258667661454338633409925057452295050792502934635228012969731952432090824067546127184820674269109763072029928071755085679552707171555102523382002859000834013865264250888579699016146722510456747010192496630995123022435395781861793364259724814673958020662700602026307416209911222 - 71199445873142743890705311828426192993441595666700751966078671905336982229004736114861991503242913305495774688716514992606079439892068289110033526877163042238652945854618818253560032930426612158830717352398512190160864531194414597250521382878357192086557641764475531942766422233904908929408968343948911160272 + 62246636121089263731371807945897520167051837454698735241698439734694730001470335211863614247823007078485077900778766898167190790567301408855375740484748340320700390073275392868823940948653806683445411202776990790067823595294042946536030310357110325099679964532575421698733314704640641895828452919877756100011 - 64619094101169861260658686391437493165297845452472272358760304057989905431808036959407913033998903580567058744493381896304542424570477466803135163609233034624791665491361616919472989117059076521170734411692284721188464794534574401950171105972902450942503245521469623536413107373984706704691477763216841890189 + 109179195904717079139512297958344482754488860947001124419866306632211947700557001412569449694611680557227002345132253379015047209028361122554436255825724641792181226048045416132300441370043533054296640636019094847912470011225895961907747561407131402046285049780521232862899425601689434905370686341564422790289 - 6677644520806874248729709604946168760244903183951381719735625530119707560190818287421767756180188265855439551326384671573103541157197475833159721985859875315233932931981009410659195950024397916060600415042070216195290723111879774732526912066923480930549563204082983120980936536428103764153567950378551358385 + 72256199900300051197332501127222934244256559778006179914521739477500706464599171904600643790797361089413358501039731833363101680832368594873645195342133343135647784788351460716476460798313313942000048638227363109185805859595520325671335898545619147866290785844770980165710956429961244551737499380764677597447 1 @@ -344,29 +344,29 @@ 1024 - 95993586374937066529455162653639008917944416331769895672692447131258623823530601748524840575528704991358520416600542951520877430553404290694537271374818615310922199629418777773940917285970907448620026552905846347625729841466963377261529302788316386653331236574151237767948556621396949628879930029930854431773 + 135358305767271858027595880716111530935123928737890043873187024055476620530906467130993033452699358704424795550755169128359841746123492797756886097936671355386621176058979935393331413499392989299082084359031846630046001377108741347076252627789379769344457517235001038532356319713316214499718115421425871569433 1024 6 0 - 83824229456454055467034777958381886084070099575662029359808652417840721999302831923458207007454244578968532619690321777920454748871657405334691831931976377684607781703339528597558380460921586675470307191208505362126230822462336917172922636421883257035328073770261565664854509432609003556170229901400608515196 + 54594747011594798877885888974944176740233826058214590608446121481719016646101845365461669609593284564003581366359995275781810124519910313811380876256508679688339828939491429288889804388749815124253867496416627880709040603044538402764027705232404679640769755327219879688706197760711345784098387646185164981152 - 31449802613073682797257425139131419417588192884433609539928376773383346328101742134248510325629565365298437902156586786944230581371313578612449753268670024177152333713470507828982714894227374723227899934752245499118873909871643883739539742747200765153224975710081093451787655817266736145458329023747843360297 + 132783808999394318707408962088834983207010415125168788915872658758155889296838532193150695880199623917302322850691457856799843846471181568246727469377964494204689790089312937443605415487457400789095132034217110410411016988079403293808537223974569707930874192773033393470383855778863425429691879481694667628909 - 24046901626095895679816597945607311212403525239995850573241184656254370764719651915880942229067459392372913232451799155395293798882992625761937473873153502423890736622586766763795872931503799528290427421747236393467366420155132576017108972252571854737191517057107119000077313989206985638792731956505981706798 + 9473430635930700050486617160141204494342095550189134899476751191276019107931129114087093973056080555668662930307913633328246702572209665502366737090850431132340577394193612418080423291630390780237790223606432359088325373896719506291987815760514899446327539193574576164858114835145863147018536204496364575294 - 45175832503961230046015360947078569944511308174669274010627205837152263355923031460360917867200068609487136017032019574229194707255438267238936157298227093781866090322680638607700980856948120525143517256771339934483638452609457869091603314126054310638555434194657134665694213555411010667515926827636647302610 + 90024838355001075777783195974135066596911088933953254044502969121509346778938214241043930641227033089129624800092043075809246544470625613932569785625492513957934084324845138958744207292453298491639912468882105563813341034734148686353752495183156303339463108993280522860556963638419864094636988429994370751743 - 27226310139875595061545788405464522559218586869146317221006148013240284964686677834822701333166143350393682277077841511590250822499110747742693496232681426234740573959099299323631804367485077842063495311347905886490364241276494837378393667776950517833124284734693981208106073674942158940515201927225260896177 + 45914980508142788475969536593414423447529386876252836641757988714678457126161180788769040893130014877283087923780361131128613703067760746100124401445607902733176021029401905908890233576832489405771907746137014120822037941005000384307118527309121044551993381248785336586579186345829608419256901639247803554604 - 28061030032752164801968067580170072035179782094538078442993446829482618382199841587780304480987658363417992707765141978367745403741272853169468282987262916058066756117715451557465508245153549381212217078275504206215654107054783849807504784914064329691028379646444146221420807715386913209285477170712492499628 + 32911404065014905616571735182748738235851543040766582724263411775153690607184929086994340376410140178669625764641435927432683863591301353627927154715686151567872995056710033783341401210111884942070839872351093132272880604910175334910646752963148483903851675232134333338877843861382949858872798355076941765109 1 @@ -386,29 +386,29 @@ 1024 - 94684004306111857506841112997261544480170843980474819684454351726404536462307477506168949707131540890820127688938124464318983598656261985060474394464444104662851771105569910458875690156971112007686589137184650027225996873453992879004305779154307234416186725944747553098765878314910767432398939363070193432489 + 154218268867696507002031865996832738977246724680896068886617497685938467688459935868916544652628785991317792030286811386804084216509428288684761196875989322260388889257097276677216400072227578520525641529006704269719639306215286673007408730828431211470630255070235631883821820735534893283207489831811866541573 1024 6 0 - 41813145478284531524339888170688849836993489808773877061381898735431270330468430771009301788662385120899147678167321573709618504876159814346635143345363712394968468974763358047056541628004679516114879569313531494252386434132347497962429320391260372741017674071011042604271806756255040001608579498316923849593 + 27428799928169371477008314260818876148937722875877046040065001415256050285544612261240610068898749426541489168818274025311879557094462504325465143718226701031270459513481171715674711056192203762896591318737473272520615104809732143483277690473125331986133481516425478801944037361281857855867037438256343773679 - 66985412989141614286302186698499483703029319437106991649103297187111727830751850293036846281738132181703909496240817794912400219147438773406404404501967357891659448492407736665354464273194466557245973728459910312238904312073312671232102333552915861810338965397370533857859494752184791937326095095137600260354 + 105450822515849266246824784593332752863996144824625198279966526580096181889146860866466836912483527896334247490301097916546476481609859267630501968068493335890437763132841945935390933265030348476193713724966585347250648751479602155322327667705579310128424156557476020295924929348119910434857695122123769715348 - 47312445634335688130580705786493131286510846896090168556933453943379704950126824709335441743633692656299109794749138042476418368529339230542721236120630910870410825198394675989175724057291495828269337126435824903651873397607780035162801925793363290999747965512990162389907925450219773635717120444444967961403 + 17917586169419969792153843627847724624582303970451816452874219660498616008632452910042480347537075057133325092544315346979734775101435525533629606020738633039620963234297245636824119587829479049303232294479234284130684993231299911772911374146097317218619653947965414360245657311825149559284315208240541584049 - 26680941685059982265916590861304381368349841644910847763290590165644980437512586663772588348564786395142074985622665652147665283975844718675959745082420493895716957522519133528284438195566054958860953512709923937286271601444639896244630126540024459226060622212289739313704639649931735161505997395694497185980 + 83614794643827277304010494713733702635853026857962232621115526420680432673836574945397242148810823271595098760695291447287587902753143969200514260996554707598388279117974226336910323931721647138761776637137666044994683003226962992826724806567215542394880283109239037221417111570642218445097975627548527092539 - 74083443550392038622058019232286521002128537943817376082249256877190604066000435323031376336866028072662736957904562553741115362551808059312277922794883095838735071899792161563043461419534693122988468859364640131280222420706345691410443643331380352418667933129375191851645103967896117642593878204014509865042 + 98025334882817542595051261918088236466491396073054003041122381828466061599594157519317917789905097080123705591326984935802933433391754654298972150414662017901502818342450898330664054579806253102093229112778500389727696035428993861323041972409204375141288230032727654233984733937127115582284964721572192907628 - 30557934325334532582271071478001957018070185356327913496618682277547859447967138146722346701435719877241149540478472366310643131902542023167448548815882595053911370946603870567964058986679361070823587016887587552099878742317560934642428976996087168254547665849214779296369547563107675774229435656829473513432 + 103461867044654386108007921528414895482662948754475387341985070060736686576950492180848716520576397704988373242928703953709705994705234961029080392502757613196202086877221834313994327801773914413507546181585432001324248533541087174089562102726527826866350806480335498036140946354815641124317115290718066663234 1 @@ -428,29 +428,29 @@ 1024 - 127727743954354624281854745476887090335808566069742443817890352306117585796239126022362261263079819519314090394014361647646460805892494614420724452999880429561236881692111401169717707414124936138355932922564368207508256915042248864594779846067983034559994170386441595183852296112119579847539416226299289211653 + 120098847776259535343644334068493409247155794818213113642226621008837548248809756144435391881962615325304472487122528549774300242072619974184058684501061116769021957277559333567971936578385761656133295119311274656165996325688816719676095627842254071860445539705183362636859341285726107647847880667038640384469 1024 6 0 - 38164224196132104532329483574437124604055028410291615521779477243849960655602119853635308460253142535900192481558061899029051510773421915505181034038040205053976600340395226223552584118692639276068809035773829056879281287542819362565227716773397503446437660962198956566256514393193806524849148173695204924223 + 78341596191867165364462798149613513767187976045933270925524314074332359105916239984156112944388741605555584315673330918240662669972383036695380216369645786077675668119525313091263106903931060310783249892173696572488213764160500898695655888234795022024571259931035380458667979043363731060752523060256425326493 - 110678530127192027271644996149003445969262072382022151859817469310732453833899229470363319557449911586003069509988091720697116396999513012913686700138918399808920334993823529829378539506175486461505670850531128082734443433833237420355314390270799453960429479062564346339269484877851018621073091246726296041918 + 92197697267850835637041615816893083978440979223485010849369520091954329556817022954840969220750091574955501530801737742911131398158522167774789346516688492204741057116830688290864687904235809951324327245011263476463848478977798273152839939981363192465690825435376744018481972214855855772912890637337396617871 - 122548490956895798346580701645021683468493703155724198028852392301507630566051709653966677479391148249019113594983455772425222329689492967526169663910403291783540669836098877872130493149328608829969126991475661060234359382873009916476841684477657337780779843037860445806000967591640647467157452180419336440064 + 4748293030592378955093724566571489011651125070696427417853949295886768378111152102495476227775576523833542397763054262265966439448479602453489588304595952626064095178127493676309959239982750742094802606536171334162655130645407695836907472484934442915849957480725551564249920896993846998541219569493436633204 - 115049765164512475615816754723709421915820944110057140572079223148858284078493729853694322750937204306066347373205296833140390979619473240003424221005440943252946247163179631339839082762769031171800431973311643442309923874949666515334367655281859772013653858842591796008806616434102016382825819024401335460344 + 104584900904542556799078527703080866806316560026256596079705108220072609345471701770134318641946110143937813605502326970885364040335672893811516334052832715982398959853556119074396097391674101956889279124105778371957287930683941038772719876857983940733827806167120908159325650830304989434548687189098427086091 - 24473572867891230766459628437908127183343542625048075648139993688246520961765676225141015722308250646609649372811767064660575479732024522516576703257333821736317565819935529241994964671174856884596066767646349413206450874945566058276469876978552642627552830542673524471166381537681830302599987521202991056916 + 91477000374004348014105246188180409651649243135776551322813142142044628230484208001614477763449794744746082101984365227478095962810916246503069968738835364911647338508489896420278550004430041982623071421860079472688566117689119362544066175205618057687399701666608286724650867268340276001512993623664623275609 - 121681456438779282590844849528459680640771312311817451946372654804617948881697814947418283630307162863219078621980522042948479034075970549463192538890581557434181542676057282587529357950472618576160067047151888130114895592153330967041148579160247158143832010635353491887390135911088640467337273087059507194017 + 27335022029071511973872915368479831202151720242800820669365572158467591925687227633305136848793235934543162969534704442560517668695149887836214069200974132339079102773406068766037767764420212459478276529948373667413279044542607587605142289772231063326758841771162863193523221664294299814482921047353670436699 1 @@ -470,29 +470,29 @@ 1024 - 107749505110219293735979142621600906412060268221095964958047755054026889014562032384740357183948942425034845634341718222816289382158342428614326831095853091684651319425403499920271331624120186696435758082078835771213653665909961668175363666309216938446744591705304849284719196276795882657769948946973809132161 + 167849747908102684615783031952151303487318618058226134276355868669627336908402995742916429082816062902544246840315676375600682020395918653886440543549039685487527686497944229453172069154889512786032054308546997135806844060341575216655718028005098196791080486235476250761566643135320439910817103719665970114189 1024 6 0 - 35641763542538072741522529757414549050982531654163758594796572814515332674264107217382876227414938150895794246663213699203676045040345468365595904518557216932736965338172782300662556342977609863343254371250428708891065753017339503387158828908221127194666840726277519886534325430466409332054289264640169277844 + 124697971864257013069199803276420735672381775609467161633368671004811398338592994292357677388507254846498502768389738866111523924342131234320910182832156897093603904400854292861082845611922732284956492433793209240106822872232125951145778177387397679039918621121927819973078906987741480262525622005602565399227 - 51516953028966449446491964497485751517990094628891894167852992419474152195473677450115630109656769378494026370993046135905409016172357252608391232821836911141770346398361516943084535741619501601620828360646455885527609024954604847125816880742230840305389082240666983369173612747169877033987337057571277486908 + 108887781890361525299548949264309573612532412215054221866945026350960909252554790687820537292488822159239096136095460817189450475839784419203908369203805504902414189148576907397548005367318289848718165066768409808513010231990171238509327686404013042691377114557387525251911427307934702480124889546002434153883 - 27524154739611696404554678600200022524307387187913330804982598161151693948859012016036623758443668517076661729602221235091099505199024928670720378443021686975221010739315229994281385292748497564017937013704629634698304615102321124160754148064847705580729356980912869939320882633389771287388187641972691550724 + 99965937256071531833352267584518740705187568678398481975025487900445929854870225696845831801035897840798993192645749908958835960887390699965754669201895122689762609842067032782947025374191336414827383420980245403487860703320619493841364508653990560873053561052051848165272882782658715485304580849894447481984 - 103377113942637790287003533084222224091635314875107183584866015855151366109148344152031526934949226690062760107225264806479505653533683391861954516724319175283894690835928918195415330630293690379979533803005112548786693580568575416145999408621762182595356921903495847865510985584950381585268423739186644819794 + 135464487014068006350241183417277199933512080629319393539084556152088647569462879342427336794694607292779308330281931121306851709112290516904611886868248721653328973827011082831762202172003407136709090048796766379233700381954200275601566017619852103033202510881086909114257203408422383001855075728038739087666 - 14673500808702279959267062967735040754333506548920926780094883070331750919458000285586391469687032554437676209528650776647628681974602751606955902150200789053315798988526116770065473921424842764231711641888281788435107438350932690834592578132496704763814673717109277628114653974891957529423081709795618347068 + 116087460929649477650719239236850579624411409915463138669472799334909075618371332653913172377800254417621211492605964716808216033497729198457377469580439281611985552152638264761588841398460105860435413320874653840732276755863584448068058447432518834882323032920701627821579231087160538498920135097072056339130 - 38859009087118888846561310819205669852627803673345854898080307923291445412916752468089587603202768160020948351869132135244840063989628351242421729167402060220673267655462881686556526660062794364572873029867581614425348332512100620476340441607712247927956176958026610185773841792228062538690034354280429985168 + 87022481899114200452477329439521478334907267121400160768484310083510672665816499561166856734334611173826744984646636728146751086237799447687536072677043559995690196109619136304467129246411278102278767648846219215263506982413472377610126752110280476180152080765605425555155921191279654185124388043571147181327 1 @@ -517,39 +517,39 @@ 1024 - 132805917336342357621340347406652851500160158358616478910647979991495279410794939929518375989150750446928132372271337608193443333865973093134231559072633996501463762859681361235278609969585631425793848655519125510571433841525692826089479555621938481220398806492169797461801342643036874762401113827812141565129 + 128057967809655946190316507735155452831314572900315216081434860144597217324346737671800302572587640910078110732912465466684478941477363845874613925338791275068167816621932721309235605381772586248486970010063355049965746801462578755831359666996420724229475198439645105729191854361248312605304734475323680662913 1024 6 0 - 123724192971345628283598524077771574642115516306203819302642840518434734884990023342093372590141717915386280139738278686607193677120717277193327685180610485720329861045086429532831247312816073761794696539180603164001212548485317103853221255907270707439711950418933701675350040464705736338361874491112644317294 + 60811636929475187479807521649087606074793642064167945690350627603203118950323257675713133373687111123714663109087066267073458476631246485001894677569393649603260477149691339449729864039552273625864812610179069562367245786370215607199308088083101677805342992837524421920973047652387594443568045299878715104011 - 14625429247927685090341663241649949148258959797292039323692281863043191792520221408569037942351234266447978782199478598250390786360135847682725454656794862494759779321288036136608651289809110043898514796554758669357170034489653566653604233508960098637358973041647160974378868936394566361597245297526090809584 + 71560986262474260038579847733152867125395323692136727882523150181177145526050032346646815633503819181049097447083396963116870388315714388861158191811280162852633670260478236187402519672391362381543748430716574725648848677812893437556332455280083345503039177361800148373565541695573258846852919928924249154877 - 64007057126176875784921548625312090381394744981912355585114232564443978202823028666354191570270582971317908560590960255621718151644865169079937946397430383552508870164313540570101112038765363492847255578958178618499930646151629515550809210720009750548884710211145008245153069694049417395148648829340938687662 + 5358493014159018151110306019414188401443366482533390828878588153924237270657211162207396455592545292115596564966717448066974022571552087820343845293928484045368156700279200787884399405557838594314421227423879077160333472477688129275324340290022874614042967407069455935447388415804019834527557283355835583238 - 103115992915880337411327588408688265150975095052055138397293144081059692734045417060416587664821844857318695820398000363692718875618295012846030208453079674394744433816396921378281051337563089579440046048625384540937518959711246975878537125941932878593410102488330542299641806404417418885309003319570534438453 + 9440403911953510704955609199118462522546969159294361115679964001969095067128208202978671380235142495494192920664243060842431049236464627103331285996753378993464968648353139689202039972946351834805543874912252883016750152554402795151625609573033493183190907610839726606922080056808873159110535921110839225918 - 119457315332497076188739071965563333761790600794685011698971978110574170937694642037185938145352267447861601656017195376534888030612146228692269726722534673032982839555108591230005930224550822365861369188758542352070280899039005900661300902275599304439000283009496810058515041286869086152747650395143418209695 + 34601241858178235153992489154363566911322825930412755051942961530163789553279237024169967243263931210587905323687670939702730687998131084839805896091785126613296047470576600055262500331821637746680489652121076447750079042944735474064557177506619768477733608759334395601504750316910835074596407622363931297695 - 97738799315708788763206134320050643392532463560258106306083499059560293956823651670664308620427613476046927360217377480809698815484522143039469284490440932497202203091566977872700143965467171603897734591262817015477036444327217869465633675102793500947186640843443170349950215500682011284039501098188488514980 + 103450953660312905541961327136746359534991486059040490771968614429013794227835017626759804639288113432551732347712210332460709755012800755979360542019454727242090797411218789006851073710562599252458946620552051918314153874747184637728072116094587384838416002546398982033848043597058533784377942968102172250659 1 0

- 13384863556442163322952458250977420071347303306250951371869480166206360749972742447864759873951415001010653138692615849046841726507827289409114950044040247 + 12932030508236240029500379006897241129956579101695632927019316457384709196393771888005191041903025893215144948249883093198348475278546477203390317270105679

- 9922097209009096465140505286723232344813197265640635285799288755528166758850118654231004127875732325223233807063304934221607752104237886183649175903422207 + 9902386769664478589840240464665057831133423813801796716114600855905375529754843999999225688343006241702587573209999717516477696656645009688715730598624047 80 @@ -562,39 +562,39 @@ 1024 - 137372634310161859676135284402338656224702625790752326093422619912065941056411155016565478217907728879945260871334556369999320378181012769399229672757185658932449669547994359702315835117004920960039833723832775157892486474472871781401535566138599328187388026485937842777690668704923449947159362940419397279397 + 91338861134529173742636614734321283317712406433818139285229062454925111527732609262828687047423080667973258817589805005737017416371360314088086808443898371429020158735259589920882443779130428607594850787634565846387075036083051955856286100630464641033224957452092909212599715224401427904042049536509604893693 1024 6 0 - 116441115010520204443701551044388141672708396572634839287898503254446689571343162226795875092851665648107955057536241015609708368366718318010287460951620183224189985722483322655563646525334936557072068472012436067191783998514083593670357905410483156163550019788757133637004401363151527763776723191808245083150 + 88481512963655310506095083872998303955363103665395614689748950761935149130592150567352051526842435768907883513122638406071951993833483039104880894260670448994086429616644971856997369229550170174238792300740232364024915015016653492885640971890845653859579668498528250516917066920672069528744730214455335881003 - 27044557351618142662356552877489107755687685627121911493229457826128074471372139670480946601583473364230995461783264153391465908763057631990861033738028356787438011645743530045595363690544107938500296332245528760556413617439234729949411192040200982595365086278803028719387624406149566721713663632397652758734 + 71420609539497237732868765033013438071208066944625734387424793864620282249588182875061993503837717471514509627177747945260865425509223920765478106067601828682271744524355493795121669193837190303641492443480194307599715826281960573836394123684702869297115710345424755375986644023739445330856168082010838417938 - 18668480646476250585503852417335962920930545198501147882117553235027914985366130789840737981562565180298275654871023023936581742688856218428559624653989709620342050760568013862082037009826528078528308498338926463622071936645167033131204995449391746215916468228090340406579421220320039702041285615945226682497 + 36213374277915021187960501154206429350509009943784937342853640962344665273661370341432812162660134104129081769292257555453657933322026058920570002011215114885632603237420344104120014493999772566832623489577942137696416594059207873047026684531831127098662368796483679106715230357303209903005563129291440998125 - 124831643773880234485522390232602697151624554744878469357280937852918545591277448221883189230205072357252134490470478766733175680960201808445712280554760481792295061585139951074758260903784531587541999977882176959445583638063216972509599746798664421534897232964080914317787532005374524315535445105635534739855 + 88784875219103004490867409187796580439336028275646934064032325734642172796350750877782655631487263690600595545185986973949637793376040039529334242727841787186152368722684829777472113434707623526142748869410906573019822447060135044716736888756586491608663760971724703067383426197232527066117239191970436021914 - 59970642815973695149052494697659654637535503354257025919678495841553238031034885486365545257363298700332014605474361404182598059404831610511163756704140132090268579779044407534827161198033244776683186964741076946492327722988775759361482746512239360253228317139110005567490550026268269509261260489164598329675 + 57669682815414213701829150785790139820922208365396385382451270040015047105011059602270677532141334599848749895445377163377797098101769663138915670832338561398070313576223809679656089041902001668549387570675942187547921753080749715443394968434937329744189522351133848627606864859717699163427995004551470140014 - 22923915272163963950857605925330142022074779916236347548886633162654056167070402255377093400484185256137566072514608718416367258335630496123774726992155837700585510673044223219699749513900672323661639291542257718222249838123282120567272749819257073710511915155801225598478720475650206575779832514355014487626 + 19430387956073665040008742545168228237366626380409449215616316415682054432029605888008345798193251163116713132110293851289775570086405711097037612492724618955613522669964620645767675728759532995017555557036656920568589220029848250912688353596366989096421783410644212433994547565209779383923475304673100010441 1 0

- 10516953854195957215920418989214698161452474081769918026684971214243445196839612444605885055607074928941932296923395924708679567920201588472554570885991423 + 7590313132316003273918078590302512319095378293744922263631882454117055270026174894373664622063534944373597887745176839805114252442895212090845009070876059

- 13062017406813494145316429683225609621025324451653771268782679331113932572358409228199347215573073163757686558693301128497363343749771624966776957706069339 + 12033609093892453905143611421316260116392442619100420560800021219786194165358425170485864622027203788410560571310992155037737755554341786034296519732793927 80 @@ -607,39 +607,39 @@ 1024 - 145833845432288909121084926233534057685357293274340350126668766405212197351890804174287842353814414753368096405191002821422184530789175512390729502084743232689937559449075513447581521298005309418519751610349842123168680301350588679553600672970038503825238594562290725630967833045040620813816180930525533629921 + 171795367802537336198216850040760302817719433285673072064016704297509263294972920968862879995019333546807716681922194952612358665832924006994420672781322683935998563828829629166676961578310364216820723333284118541610355614763234524893877254301205676826968663616237843247997193664755408992255295724018758287453 1024 6 0 - 5614206228798301098336705931671638644909555489877769303373552985024454467948272719941276640621802213319824489026627166503592953601271862091261438770581967429841000215861631061086884950337508297975792991010971325252918140265180480069954277705396167335598614372709439485252924902184204172397796469683948482249 + 138781939743420141798085654234587085378791442750844156618218315519623156030775014083940843628427157991650536995512183146050090364430217798889903276779395691314769341501283521555441395248293145295446229257598584303226472282606025256289516823083353133125249557574662930559464988881796972570415006594877835195261 - 77829222239122835610084423738321562150497279446208639514447460343866380070175601047808125427733325611930916432062196605539354365357794550584735606610432247740273684874796370960540670916977515416987155254054153328167529316792368006397532847978034025278821903835834149607180869130216088411657110222021618483674 + 168420371175596160385314346470541456127930556988792934601264980767954150761074401191883764002057676025574635595559453082438403114835695017344400960903147888338845250647685131378444914574667053754042483424927960459645361430078126904416924147233083786086593890435155965855696708192722757613306648217414021209339 - 126526668999549527105050115708853820539308975410043121964399106650368217475035537783616879716348093999454486886707365887651216832345937994185160915756008992749761345129872838686896268682011102041005029710003412657931850689656325888000091306838802288920011025039877500299503261395656474277902595055003645939377 + 164599507864917269230220181044130466242640054454386799153052272100119238662434506377210871322725801768535465849520862187042461522458751851837119010844326508994699806461980159073458635731317238484887665362257435016594387971946664996341942792674855452076757886270233668811767159399329679444242304826944461878356 - 39519547515028449055017861664894155862617764060490711234501925837865547671173429701804910726363843756169165093168047068989948316277502727839336504944846821161828359833653929929545581648110770846580090891357587504044246698977653720185664161165761777760965438539711667531830065447338000177079619272633974997808 + 112022954554594868430694861746706902810007259966892035372848716164773714721760248918761857377457366770462246217862095078291990529093104794681337350992919876990886726535142991553290065736768419334005963502455897767959870639353796998608846837617297713305741565185682566104560690180553705181428610482999491959762 - 64911171886091908379987659695928798436999618688156351616885354569475319404854703300389871388692848749447706845284633183118607140873964829806267750277059617538075740035634698703898760746137798807795759428578283927848978809795704455781269250994050734576159373116072199698554416776935114764908963304498490630504 + 20795710379390313360149837901235593902809611922782438280826554162582584185176550436631972790505407403299851110962435492486911884529635673218790787915570636384717044595376003628898518022547995524968409598599237503027024128328270655662334146591298270627006489949537312823974893037600566816074625503584300399503 - 46337737440906880658350695547525646305900567458168613888364269449075743635956571509878774476192279074625591314542016353903902280576521867929458581523010335829319495590409102271909715542993648132948180305225658201466190786746685383311897244330788754428392449915461044438929637233785244332939802020516997653890 + 4461068203835146920397273122878996496925951644023334909782795888195924230363311467297500231054245083629066539839024032350563196843805187870921285704555947110972472049763739700924273806542377974583744547273338787688284998293736197541473212310650426901783545952048410414287416361433915264087521382790658628498 1 0

- 11433764776710887644313307473143211739470953398100578362765074750279421702519343502035319397892519081434634510608848725022778926493880686061311307529867103 + 12984815465718139976464939024875001723229509524339667690378713583638428557083258852077827822717623083472588218407867051847898495798522333139201280857415519

- 12754665526208283348644128814962849642731331257467717548123984357615435694821301803974670523354845944657439610208446773346423677076013726301181649046473407 + 13230482039279100231549510012632674263858285311407266814423211632024536906105987751850169694421467822291911960770965201757888760198835329800602452213646787 80 @@ -652,39 +652,39 @@ 1024 - 146080828996844893786930415030267236937465501130613168303735364618844293026036288220097635327009673585003284120262747096635449871857553308329749899517971369512993356899511456706337957628017589622952308458223073708168002051201346250296138111717760726492689696085001720244510576087189788400173594849773775987061 + 107678493864345648666726963381598843005045134906745773568855127179729298765945796229988935480734186762723475076589458553114861073591179889992284613957887798550444135071834300620151269193028269405467525155137973905598460168964059816679287733081423902287277428322195154969572934367847409309681954541961841211929 1024 6 0 - 12143846516438032065549326588564641993076335572135680144319973070565227510388555878816485541168565333330331360373203107549711159307955856012988849600497784921648620670877827610870429166714421302856006331726388604858639217479516237211099294053777590279150366532220218255101295698436049419849141612097902640451 + 34780567649645587652662047318280460216197594322629290659397343806640717111602043777551795972363990570490561518129361133754971748815062877457811980871870613895746761204692874944262181605786891503668206019069701677551111685254064897625906904673396799614054762342291638726110702862138766341205373553864835127477 - 130110283334213982281592724744587355779238888385612173261041558390337170888862195730988952587123072858116524751419665014046802853625023209193025314170209762095895716630052691721289740627897735112480237539255012944565383695831051013027460838684588426430717433008544285106825419868548234785369723450095304865124 + 76770578985664099191449798911850613016440202975139749844785468106943538467941487623782662375335620379715667015148235397661770125559100524256505138827952950374296533996410404476470347577736554558794350087928716157046782489969073300743386412321573188949782078100848155826141059164451205262811577282438487833155 - 28936184033269797712301045816156985323899945333237798274523352177150263697445409224159438231819208355168670625188283196276111898818482147589072075244562000752484990678046008139123016667919771421087077668072425052038197223173671078453038383761535748778879934180519804845917837931720125662698639707169019951825 + 19375132007991059652876546182462672768720429677050803522934111565324016495763732172744623907045335493048740541182304274405106110493850369225158004210873483104238595711350247509966292622988932139561490663242014148110393502548086758118819001913181597386000596861820476450726333113377798106479230138706277155435 - 139743313044528582631657668286088123161464964626310113284683779085342948598023633133544825825929928312362129974614186131729049145084732952532041531975841926166858606672969874133254866846900373891351537597368983313837098495423640205742172752175958379844629957134932742930140902857501238693610132562014310099849 + 60332745111136671951489671083751897003291069716229419557442175701860610038139875996851654495020782497922916125497030526867835842055895873784260108184155213565134969114645958871640895775675472360543614497922018081777590790520072701770098022598964534954182431602697737796983390272144688966305745888541862833949 - 53044581730188892877631548732096143188468162339421906645278191018430149084642776390613644404189469954372875388873708624934832371281884377986981016031495526801835709924473080917358419053075051086050983722965169085001326293901098332606081215826837456256432766108294919171060244900518692093178547790827213354457 + 33206030625501357397902828493305862279894195856045523813806319914644617357371406587381751252409214237464923457683937662308696252667537129026830911327626477920950026367523422037741403916073653057335758700270326029776865721695045422550695292453931419295319756838382198216938790815705554550670037002167896435708 - 13720982697614420642042383264268813339206827429441510070099063031077866574985037908849971402680608542067662118645382188812605442192530585575940209920553520942641967018589809365098731467452204409869649415457166095843163238375083308117631225271409506085279102769367813064999165660319126220444280297921602368577 + 33699591887245320183352886957374795158953603724548326397696125237452265579267587282433792785552885615789973016310923276732538075279246287329477093697179355796742915804057038950601496710139911151519055346593812515824483642829165138763105492040862107512334441962031341198253373030460133402288720613467576919651 1 0

- 12493492711183332270979559538554053599683729030245785867773420794402300221675894642818434063789983730803397982796207617918477674051272987189478076120912867 + 8086445429826466766976840778602128556427763126861092718555085428344325918560612728005964357058814370039705887555080490065308264985839108620298163559066147

- 11692553265435788466377775542312669391426810033951519327193947944831637324422698077279540119648681098704682249147810817531550857711325868161365161046877383 + 13315924134871259995943889972263783197676570583006459035153156240747027875844241230942104155569988885879710233246386342305956396267067502039128111156418707 80 @@ -697,39 +697,39 @@ 1024 - 115562432164102251406622967052071750807258172151285544566894218498931362209567346945848561669965827548724769820749118527361500484654503353982654831132691503147282822681740720558479928440623829908178283919727041827646963738754679445285325013831451162488739515312866275942511475472857933145326220132237853644557 + 123460587970465722399480599701446111042791049424678164510782348298178989524706869827218072757318065802572872977206189692439610889543998303448261820274781115343738147716328254096174904353808537339736300386924394267507766388682907861666597761952802807474810395363126049870826035575374238638068965983199376357813 1024 6 0 - 1918843058365060902224156698824791077915048816126174273828173328827925146094242787808159127789911738230990921536461350767134197215631858847922569466378620788070681199103616323592972003068116871618652298189097954624870678096346675641822861238845361050835764226882558875078705801193309174207649691981387676761 + 117318302352368229229163809607702479318456428030157262995598611780776136494163450278418011369672196225024705223924157260734348678181103931116903595932563324645629923260513068155684589997607606713365161836567403767936006638718885167253192939940642824452024816730744123545240701916149057716603434108694989710429 - 5633663323728715862831888845777946094661002864544824727134600431003469539113905131778031633116781888360230284434775486594799461335499354181125564310162945192736493983408607583043279052489225101857443790367000861445428439571903674899529423583149897600345297997769124326200352679791494774441424376422975993023 + 79166656374368484214654356495255053395213742590584206280310930719755653489957925930346542517512620192097650425359579247070837443830862748231859562053718573394014868991678211219437490529223024342458612272327848652593110612340785752785585712120010687405752536405399684337596148008796260805479427829450136814686 - 92224572490734132466871405475772602483548793692969421833571278855151455741757597222662182273880403467624396109857103285036810071642000551787217955918908430643545014752792961549564256530725754107414785146542687179641756227242772610219435049498467256907877773547533212521894936045955979927225093316843447273624 + 40871868938993875410426205996751811587721008167871813439166564189762055623031521920195950886062485740929198925966775524584648439881883879228755988003547754790287586711275993853306093079373185290320968524077798129432974504079981251722944994855192019937284992580655570885903256271403090577186422692725459831875 - 66183053406824854997955985382355384715497240013453258897437176350763562425331521822435595550265618083659590969116645425396908998848723993833538106201823652953927058335013828106360478760501723552180389313206057782227500096729295807156679165429081748514586663929593834603229571872339167803106406082026242486247 + 89892620900640290140283566392805476442834511036692916092709883776370123872836264775868321860590685970283545083118729182759253902758383167687729739268452078465233562037688700620432639773342196188561501129246210605848453748122752153274263445164184465697547705606339433632142128437959746969173608800415728397931 - 69743124750042509642467145074976059009243861971684272053034970423993683530657827278165993761800907370985552130382901391446596933005528253256387440804145356085841981356225970618247323173456846551942037337211218981373022884854505546817351938007556625763760451941625550568126244464144092301218250589930964771252 + 121709777035471737364513670422914240357059445755508125094002474776054087244214559702633254647901247822895427221568520569724729995389163298559564480170015494003587855303221851200035414262844476231232261394773812801023837394666069091883472673028207084029985001140015089782123008327089253959339518752984564005371 - 72915756120647370787512976134911056390045357692685473282250206465655171985686451881325200537334167943578623112088025120468788437772822762261349053705299070854344523813062549426226658609713960083898353784228091780561562317369856737756233116861220821234249458074025030344466225233689070112675547477388012361378 + 118368291349285147157585550327202423335817645258822478079337019930721123815468331635525068128544253736950377216631099734999157547924851998471340790034858629390897530180532960195293567558086925678406847565038276833217752653830262850771875793504960255927890257698780412927440166594709334246027496966288743344300 1 0

- 12113189822927171917747077461227561629579433288786188878566494896649974610926449598944988710018811572259934174588237955489017835938680313581298226839062219 + 9555708939079495611355915185979699054940167384681225047725748670929850843599516084564504017739835259712298489561139897471949689101632199222485821907536339

- 9540214745530703052602614329672114296360144346165078233240673810509000843141104476510595240420457567833307788137793450661014218709382306011850801095444103 + 12920086699748173672215351475621638389273860195435770401619903340348767410733675655724985891607786607181490238978036873680082748103544680734516847406362967 80 @@ -742,39 +742,39 @@ 1024 - 111927356566104023053025699787625550838058397847053053322552127284788489517366540434191289811946944159151898144044517991896201183248020899355294666452275356580458700724360087814407783680353738034566389540489206594576108611637326536178335876673250303367935270215570934307497912954941670160094818547669559266293 + 115193322549187017758632085674974727024742715278872315780926012027804032179761766503288065034565716892785818153660349164554433828067796365626741896969380114418490544104123599167386238983295022270967054328089602503480562145153230657099035975059011144762714926206594556617956114445259820923651026107726741377073 1024 6 0 - 26083963272420992631361325874882186826320192111270492885447297527829930121512725063041771515422873794638132630732246178945827524916353536920338032942329648884862506341847807165763917740516440910242943041732772815639040483973079510498995058535404124602763024963637048513509262352040839650701377899779182492450 + 24958892788118393840566891402925212894261112686881756396217607457946596306978104211815943994414797105011718075194617345672726305027536665064724927900756862036945765691966423524893153682261745384165128816990435797199717205467355245097126693946214610135412865735012562961328364927779026079460708512689938357459 - 96349476044790960219277900737494348910404104317713878532186820315042836896394111182750693236907309305366101392065377818174119922772262450705915928502291955836072143986901878966783486955686515491687652827133207058317134666488154155770640867360263153123215807876346934189507244403619175620173481171524025037609 + 24288255554756812624762197103340158750190223778765519768405807403357684268583138358422886605098116268755079717463816662298139317595939687753107981126116196500860143071528623840509966635777831057754249172610936632021767758934196939105040316041127363794901161035243044698624148907282589708017305528332080549401 - 54690578151752424968627597530623695060322314333503222637738707156935596285996271874663061813880600223163657890492147882784449085042519744202705258571783341725890402018930973779086740363427426280862005142662828899727835119949559802395804426318658922453509773311165866730072879701477097084818422964205782730898 + 98573529002331715221466911082616318301300017750678680593832916072820765087229700809543111818625003499979817183312145679122909425246500434114287363675204505267732119319754784623466080567913652584576116756111506044251229410873182774035682045895464671545948436513530383740487677985431898275771829011975467387636 - 48548246442536242336650178813376090147825187269338203565219773463426768909891921223610424888168123366278860170690454785019898354608412222321318035320240409277155997290872403728887253361243526450374951908929982176434127615635172022089921656613960936488084542875629883983721976542934773414487851263961537403813 + 15353985435509734717647205939924424374297140311254436480413662376519872061599819892959995176175891437756042491481998969903341756892089428475760114248462830393435227191729623914880110584220456903870872511626091038462298582250901312945423814102221099309496784542055234964849111850334835617876760601457927418206 - 8413113823923925485688787367614707477657758975525795517827722017213206555788250307268244325721882479636008606295000856384190034186952886166588759610523745356045626108013064205521440618996713728008939728528935599492193135365285724053499413941300417129252635867240091199959544379912710341678940281432723529492 + 17455735070449738054682884370746228687686045089020396998083887583650988955042976829464912841928464950070337180970573621151968757420751546020224392735386909098113189353739054276774294071884697288831510878855213838041505870499205405393921909645992766577060606810395305981595413168173038810933707942671713337798 - 68772694314410414206205467046690216598864909706182681421449044403117172244107392479030110544064478992356950657658675437260300111069834928175128122254740575410509949599612145656885798061073750122226817037094964836568463944945479934451259985250499721987903002593433201657517849139533217227834891411340995860823 + 99078282433460334122518009685435268135390495565166370788375980674406524442600154170383521782130678737146346515697587435130336220692226983416874121180076768315197607852814628471856417469605509753709709939138595158453850817740160745949448738764045233343710173080910805476352529406131342795794391893459845853249 1 0

- 9285545230814175208263411435100595524047654027631834821681899834374877184982061448521038956716454217041218352384599587282695285925315242520173770910063167 + 12673289315868749623674662876792526399689105251553138253832866963657700201414882030685426404271074917375018034885700283434611314390001132581350346803957507

- 12053934775383136892747067774553082069477539062529530957973630104838578048572374622235664986486263135849198509434839037199331156566567604229630900604978379 + 9089457336458712030766629429550151802473559635837189343206196901440327945060996267506637537707282012347200095016039598579224618836771879940545740195754939 80 @@ -787,39 +787,39 @@ 1024 - 129247253695959703790072509914691217099002852368322468045795757340611236783965062669505460428210762504741229507573883904113055589574393037898320307119534601325006470049122917644647993271072364497135274094746214874360172173123358949071606257692363319647094023309480718209008941035284596506382336215735779493909 + 153256019031673973848391853908671616024035351852333113222956212092935054851555144537037154882131071118335109565772920677334385665987953763710322752551766091084637014937633351768184250877579165516584609222393690507834529036303945036774013832353124798268158248184389671641362425541416312746250270416649359548041 1024 6 0 - 117762663225409742292003907909356310395762445497211461079165975468263649230373970302717051754658639529032746668081675057812533532269905582012773970520260676258789891000845981509443336988580006031339603500190556266787092149644268028195165941794896901354362131862834598206683215509345587690168857698887589234574 + 15220542722079887934163021578416557040815588753014948049895358680874401987354756483638187693890778200226187944576153001580318905767308325025251868319513838639170229388887094978609944368236261084829465326382756814026047924860100572370509240911903760108844191920274365232194821110327754051188671927504786123847 - 41307676734324917289596188448768037242041561478666611229918508332376293249216584670403871893840311327117612839717795187029126418654206536820216938628666056443197376483010899927824631712516956909063917313355829047154852269087395692986828780702480137828937293992857398565122465372059669336909756576677250313503 + 143004036495287445500008244565089775614807488065311228319771443644042556939728810959906482515000410036341359319395672341423672298834030730662358936098971678898328809479500096931876973317120818472883465991015596717523641856810286626439287667681040066261020458108584755098587931772918575340120380122391279580630 - 63089817419614027949713869705443303414261012258660802756430718945673750293937911985030722540073735567220860290764744309902169310419281458073896754765094348815090678089662279005948235003153968829581576084867530630559125676708622432223591998446524862273768360980298243277853419634774064906702269062659305426330 + 25677830626343122473800267766987258667661454338633409925057452295050792502934635228012969731952432090824067546127184820674269109763072029928071755085679552707171555102523382002859000834013865264250888579699016146722510456747010192496630995123022435395781861793364259724814673958020662700602026307416209911222 - 71199445873142743890705311828426192993441595666700751966078671905336982229004736114861991503242913305495774688716514992606079439892068289110033526877163042238652945854618818253560032930426612158830717352398512190160864531194414597250521382878357192086557641764475531942766422233904908929408968343948911160272 + 62246636121089263731371807945897520167051837454698735241698439734694730001470335211863614247823007078485077900778766898167190790567301408855375740484748340320700390073275392868823940948653806683445411202776990790067823595294042946536030310357110325099679964532575421698733314704640641895828452919877756100011 - 64619094101169861260658686391437493165297845452472272358760304057989905431808036959407913033998903580567058744493381896304542424570477466803135163609233034624791665491361616919472989117059076521170734411692284721188464794534574401950171105972902450942503245521469623536413107373984706704691477763216841890189 + 109179195904717079139512297958344482754488860947001124419866306632211947700557001412569449694611680557227002345132253379015047209028361122554436255825724641792181226048045416132300441370043533054296640636019094847912470011225895961907747561407131402046285049780521232862899425601689434905370686341564422790289 - 6677644520806874248729709604946168760244903183951381719735625530119707560190818287421767756180188265855439551326384671573103541157197475833159721985859875315233932931981009410659195950024397916060600415042070216195290723111879774732526912066923480930549563204082983120980936536428103764153567950378551358385 + 72256199900300051197332501127222934244256559778006179914521739477500706464599171904600643790797361089413358501039731833363101680832368594873645195342133343135647784788351460716476460798313313942000048638227363109185805859595520325671335898545619147866290785844770980165710956429961244551737499380764677597447 1 0

- 13081877070293567144772392907238627006925879869965145211592024037074476968339728750851771748210736710346605928219186736869646018548035900973688960242107443 + 12342925706968186973716394535438921214235596704954293960842039701459560221839812692276085541622342123471691734600034990812679842472477393419982807837038439

- 9879870679220447556464714657502384107730265997772677436404457680252845162599412275546553090201887725923207763225634095749647052759030060561134760329575063 + 12416506642760835382914337605608007021637845840379701356494020719607002466778798575874134408246939316921404868882276829304115457690088629985078174708274319 80 @@ -832,39 +832,39 @@ 1024 - 95993586374937066529455162653639008917944416331769895672692447131258623823530601748524840575528704991358520416600542951520877430553404290694537271374818615310922199629418777773940917285970907448620026552905846347625729841466963377261529302788316386653331236574151237767948556621396949628879930029930854431773 + 135358305767271858027595880716111530935123928737890043873187024055476620530906467130993033452699358704424795550755169128359841746123492797756886097936671355386621176058979935393331413499392989299082084359031846630046001377108741347076252627789379769344457517235001038532356319713316214499718115421425871569433 1024 6 0 - 83824229456454055467034777958381886084070099575662029359808652417840721999302831923458207007454244578968532619690321777920454748871657405334691831931976377684607781703339528597558380460921586675470307191208505362126230822462336917172922636421883257035328073770261565664854509432609003556170229901400608515196 + 54594747011594798877885888974944176740233826058214590608446121481719016646101845365461669609593284564003581366359995275781810124519910313811380876256508679688339828939491429288889804388749815124253867496416627880709040603044538402764027705232404679640769755327219879688706197760711345784098387646185164981152 - 31449802613073682797257425139131419417588192884433609539928376773383346328101742134248510325629565365298437902156586786944230581371313578612449753268670024177152333713470507828982714894227374723227899934752245499118873909871643883739539742747200765153224975710081093451787655817266736145458329023747843360297 + 132783808999394318707408962088834983207010415125168788915872658758155889296838532193150695880199623917302322850691457856799843846471181568246727469377964494204689790089312937443605415487457400789095132034217110410411016988079403293808537223974569707930874192773033393470383855778863425429691879481694667628909 - 24046901626095895679816597945607311212403525239995850573241184656254370764719651915880942229067459392372913232451799155395293798882992625761937473873153502423890736622586766763795872931503799528290427421747236393467366420155132576017108972252571854737191517057107119000077313989206985638792731956505981706798 + 9473430635930700050486617160141204494342095550189134899476751191276019107931129114087093973056080555668662930307913633328246702572209665502366737090850431132340577394193612418080423291630390780237790223606432359088325373896719506291987815760514899446327539193574576164858114835145863147018536204496364575294 - 45175832503961230046015360947078569944511308174669274010627205837152263355923031460360917867200068609487136017032019574229194707255438267238936157298227093781866090322680638607700980856948120525143517256771339934483638452609457869091603314126054310638555434194657134665694213555411010667515926827636647302610 + 90024838355001075777783195974135066596911088933953254044502969121509346778938214241043930641227033089129624800092043075809246544470625613932569785625492513957934084324845138958744207292453298491639912468882105563813341034734148686353752495183156303339463108993280522860556963638419864094636988429994370751743 - 27226310139875595061545788405464522559218586869146317221006148013240284964686677834822701333166143350393682277077841511590250822499110747742693496232681426234740573959099299323631804367485077842063495311347905886490364241276494837378393667776950517833124284734693981208106073674942158940515201927225260896177 + 45914980508142788475969536593414423447529386876252836641757988714678457126161180788769040893130014877283087923780361131128613703067760746100124401445607902733176021029401905908890233576832489405771907746137014120822037941005000384307118527309121044551993381248785336586579186345829608419256901639247803554604 - 28061030032752164801968067580170072035179782094538078442993446829482618382199841587780304480987658363417992707765141978367745403741272853169468282987262916058066756117715451557465508245153549381212217078275504206215654107054783849807504784914064329691028379646444146221420807715386913209285477170712492499628 + 32911404065014905616571735182748738235851543040766582724263411775153690607184929086994340376410140178669625764641435927432683863591301353627927154715686151567872995056710033783341401210111884942070839872351093132272880604910175334910646752963148483903851675232134333338877843861382949858872798355076941765109 1 0

- 11584124495512725645750254070004151397235431960197950698997506155994900934855991765691043061376387584749228555244927245784250963404172386615517446654797547 + 13318107756312790859351398116542175724849222734068960781305693360971589188723148557676433655469259538839570794714793364814074380377642061943802625475030007

- 8286650097046310145628376011970887020008693692489576545648941788788304647918380756171984084142680168440231134333303978377479157454970188552258529292449559 + 10163478794734330182377840913723115665713256953124119469242480062221283140639606280259659552725660927524440315179857892001570482716740571281058839906999919 80 @@ -877,39 +877,39 @@ 1024 - 94684004306111857506841112997261544480170843980474819684454351726404536462307477506168949707131540890820127688938124464318983598656261985060474394464444104662851771105569910458875690156971112007686589137184650027225996873453992879004305779154307234416186725944747553098765878314910767432398939363070193432489 + 154218268867696507002031865996832738977246724680896068886617497685938467688459935868916544652628785991317792030286811386804084216509428288684761196875989322260388889257097276677216400072227578520525641529006704269719639306215286673007408730828431211470630255070235631883821820735534893283207489831811866541573 1024 6 0 - 41813145478284531524339888170688849836993489808773877061381898735431270330468430771009301788662385120899147678167321573709618504876159814346635143345363712394968468974763358047056541628004679516114879569313531494252386434132347497962429320391260372741017674071011042604271806756255040001608579498316923849593 + 27428799928169371477008314260818876148937722875877046040065001415256050285544612261240610068898749426541489168818274025311879557094462504325465143718226701031270459513481171715674711056192203762896591318737473272520615104809732143483277690473125331986133481516425478801944037361281857855867037438256343773679 - 66985412989141614286302186698499483703029319437106991649103297187111727830751850293036846281738132181703909496240817794912400219147438773406404404501967357891659448492407736665354464273194466557245973728459910312238904312073312671232102333552915861810338965397370533857859494752184791937326095095137600260354 + 105450822515849266246824784593332752863996144824625198279966526580096181889146860866466836912483527896334247490301097916546476481609859267630501968068493335890437763132841945935390933265030348476193713724966585347250648751479602155322327667705579310128424156557476020295924929348119910434857695122123769715348 - 47312445634335688130580705786493131286510846896090168556933453943379704950126824709335441743633692656299109794749138042476418368529339230542721236120630910870410825198394675989175724057291495828269337126435824903651873397607780035162801925793363290999747965512990162389907925450219773635717120444444967961403 + 17917586169419969792153843627847724624582303970451816452874219660498616008632452910042480347537075057133325092544315346979734775101435525533629606020738633039620963234297245636824119587829479049303232294479234284130684993231299911772911374146097317218619653947965414360245657311825149559284315208240541584049 - 26680941685059982265916590861304381368349841644910847763290590165644980437512586663772588348564786395142074985622665652147665283975844718675959745082420493895716957522519133528284438195566054958860953512709923937286271601444639896244630126540024459226060622212289739313704639649931735161505997395694497185980 + 83614794643827277304010494713733702635853026857962232621115526420680432673836574945397242148810823271595098760695291447287587902753143969200514260996554707598388279117974226336910323931721647138761776637137666044994683003226962992826724806567215542394880283109239037221417111570642218445097975627548527092539 - 74083443550392038622058019232286521002128537943817376082249256877190604066000435323031376336866028072662736957904562553741115362551808059312277922794883095838735071899792161563043461419534693122988468859364640131280222420706345691410443643331380352418667933129375191851645103967896117642593878204014509865042 + 98025334882817542595051261918088236466491396073054003041122381828466061599594157519317917789905097080123705591326984935802933433391754654298972150414662017901502818342450898330664054579806253102093229112778500389727696035428993861323041972409204375141288230032727654233984733937127115582284964721572192907628 - 30557934325334532582271071478001957018070185356327913496618682277547859447967138146722346701435719877241149540478472366310643131902542023167448548815882595053911370946603870567964058986679361070823587016887587552099878742317560934642428976996087168254547665849214779296369547563107675774229435656829473513432 + 103461867044654386108007921528414895482662948754475387341985070060736686576950492180848716520576397704988373242928703953709705994705234961029080392502757613196202086877221834313994327801773914413507546181585432001324248533541087174089562102726527826866350806480335498036140946354815641124317115290718066663234 1 0

- 8160211128333345566540434284968702413044967260865517592707045146213011922768838116572601821572574063631758048568559271866605369501181303820592196835113387 + 12536655577251435153297128528495279017070952231480978492276109251795186322333973692359731778853961591868183555794714823581445343414531738768400801564320547

- 11603131685815862998758132106767773214584562494355793433835542445435042202940039220130186654341099402233149141447271216788328587869315947097248008800765947 + 12301388350138248799753824840982869068812246029803271748337924627397472168580398090458209842652194733464336605766181794711010942109258987663347521456971959 80 @@ -922,39 +922,39 @@ 1024 - 127727743954354624281854745476887090335808566069742443817890352306117585796239126022362261263079819519314090394014361647646460805892494614420724452999880429561236881692111401169717707414124936138355932922564368207508256915042248864594779846067983034559994170386441595183852296112119579847539416226299289211653 + 120098847776259535343644334068493409247155794818213113642226621008837548248809756144435391881962615325304472487122528549774300242072619974184058684501061116769021957277559333567971936578385761656133295119311274656165996325688816719676095627842254071860445539705183362636859341285726107647847880667038640384469 1024 6 0 - 38164224196132104532329483574437124604055028410291615521779477243849960655602119853635308460253142535900192481558061899029051510773421915505181034038040205053976600340395226223552584118692639276068809035773829056879281287542819362565227716773397503446437660962198956566256514393193806524849148173695204924223 + 78341596191867165364462798149613513767187976045933270925524314074332359105916239984156112944388741605555584315673330918240662669972383036695380216369645786077675668119525313091263106903931060310783249892173696572488213764160500898695655888234795022024571259931035380458667979043363731060752523060256425326493 - 110678530127192027271644996149003445969262072382022151859817469310732453833899229470363319557449911586003069509988091720697116396999513012913686700138918399808920334993823529829378539506175486461505670850531128082734443433833237420355314390270799453960429479062564346339269484877851018621073091246726296041918 + 92197697267850835637041615816893083978440979223485010849369520091954329556817022954840969220750091574955501530801737742911131398158522167774789346516688492204741057116830688290864687904235809951324327245011263476463848478977798273152839939981363192465690825435376744018481972214855855772912890637337396617871 - 122548490956895798346580701645021683468493703155724198028852392301507630566051709653966677479391148249019113594983455772425222329689492967526169663910403291783540669836098877872130493149328608829969126991475661060234359382873009916476841684477657337780779843037860445806000967591640647467157452180419336440064 + 4748293030592378955093724566571489011651125070696427417853949295886768378111152102495476227775576523833542397763054262265966439448479602453489588304595952626064095178127493676309959239982750742094802606536171334162655130645407695836907472484934442915849957480725551564249920896993846998541219569493436633204 - 115049765164512475615816754723709421915820944110057140572079223148858284078493729853694322750937204306066347373205296833140390979619473240003424221005440943252946247163179631339839082762769031171800431973311643442309923874949666515334367655281859772013653858842591796008806616434102016382825819024401335460344 + 104584900904542556799078527703080866806316560026256596079705108220072609345471701770134318641946110143937813605502326970885364040335672893811516334052832715982398959853556119074396097391674101956889279124105778371957287930683941038772719876857983940733827806167120908159325650830304989434548687189098427086091 - 24473572867891230766459628437908127183343542625048075648139993688246520961765676225141015722308250646609649372811767064660575479732024522516576703257333821736317565819935529241994964671174856884596066767646349413206450874945566058276469876978552642627552830542673524471166381537681830302599987521202991056916 + 91477000374004348014105246188180409651649243135776551322813142142044628230484208001614477763449794744746082101984365227478095962810916246503069968738835364911647338508489896420278550004430041982623071421860079472688566117689119362544066175205618057687399701666608286724650867268340276001512993623664623275609 - 121681456438779282590844849528459680640771312311817451946372654804617948881697814947418283630307162863219078621980522042948479034075970549463192538890581557434181542676057282587529357950472618576160067047151888130114895592153330967041148579160247158143832010635353491887390135911088640467337273087059507194017 + 27335022029071511973872915368479831202151720242800820669365572158467591925687227633305136848793235934543162969534704442560517668695149887836214069200974132339079102773406068766037767764420212459478276529948373667413279044542607587605142289772231063326758841771162863193523221664294299814482921047353670436699 1 0

- 9797347328962033146488368412716816572855884675950751084714870398060105480643989536965963618504712119836099411058406939329852572231708464480258091257726299 + 12065972956960263054303683531293153220877545209080865782763360344896177242905958506299126614232867538807178063979363544150515696532612909118238113675335407

- 13036972117623859846367583648505887475031070725674408545288450375638101888384702261874720182461609709100300353224517609830394811715149997824925879951644447 + 9953515411036989749571851292635891899300129938693414036200774667401727577909694530750019470986492657545284851625143349646524000492135746632402749851724667 80 @@ -967,39 +967,39 @@ 1024 - 107749505110219293735979142621600906412060268221095964958047755054026889014562032384740357183948942425034845634341718222816289382158342428614326831095853091684651319425403499920271331624120186696435758082078835771213653665909961668175363666309216938446744591705304849284719196276795882657769948946973809132161 + 167849747908102684615783031952151303487318618058226134276355868669627336908402995742916429082816062902544246840315676375600682020395918653886440543549039685487527686497944229453172069154889512786032054308546997135806844060341575216655718028005098196791080486235476250761566643135320439910817103719665970114189 1024 6 0 - 35641763542538072741522529757414549050982531654163758594796572814515332674264107217382876227414938150895794246663213699203676045040345468365595904518557216932736965338172782300662556342977609863343254371250428708891065753017339503387158828908221127194666840726277519886534325430466409332054289264640169277844 + 124697971864257013069199803276420735672381775609467161633368671004811398338592994292357677388507254846498502768389738866111523924342131234320910182832156897093603904400854292861082845611922732284956492433793209240106822872232125951145778177387397679039918621121927819973078906987741480262525622005602565399227 - 51516953028966449446491964497485751517990094628891894167852992419474152195473677450115630109656769378494026370993046135905409016172357252608391232821836911141770346398361516943084535741619501601620828360646455885527609024954604847125816880742230840305389082240666983369173612747169877033987337057571277486908 + 108887781890361525299548949264309573612532412215054221866945026350960909252554790687820537292488822159239096136095460817189450475839784419203908369203805504902414189148576907397548005367318289848718165066768409808513010231990171238509327686404013042691377114557387525251911427307934702480124889546002434153883 - 27524154739611696404554678600200022524307387187913330804982598161151693948859012016036623758443668517076661729602221235091099505199024928670720378443021686975221010739315229994281385292748497564017937013704629634698304615102321124160754148064847705580729356980912869939320882633389771287388187641972691550724 + 99965937256071531833352267584518740705187568678398481975025487900445929854870225696845831801035897840798993192645749908958835960887390699965754669201895122689762609842067032782947025374191336414827383420980245403487860703320619493841364508653990560873053561052051848165272882782658715485304580849894447481984 - 103377113942637790287003533084222224091635314875107183584866015855151366109148344152031526934949226690062760107225264806479505653533683391861954516724319175283894690835928918195415330630293690379979533803005112548786693580568575416145999408621762182595356921903495847865510985584950381585268423739186644819794 + 135464487014068006350241183417277199933512080629319393539084556152088647569462879342427336794694607292779308330281931121306851709112290516904611886868248721653328973827011082831762202172003407136709090048796766379233700381954200275601566017619852103033202510881086909114257203408422383001855075728038739087666 - 14673500808702279959267062967735040754333506548920926780094883070331750919458000285586391469687032554437676209528650776647628681974602751606955902150200789053315798988526116770065473921424842764231711641888281788435107438350932690834592578132496704763814673717109277628114653974891957529423081709795618347068 + 116087460929649477650719239236850579624411409915463138669472799334909075618371332653913172377800254417621211492605964716808216033497729198457377469580439281611985552152638264761588841398460105860435413320874653840732276755863584448068058447432518834882323032920701627821579231087160538498920135097072056339130 - 38859009087118888846561310819205669852627803673345854898080307923291445412916752468089587603202768160020948351869132135244840063989628351242421729167402060220673267655462881686556526660062794364572873029867581614425348332512100620476340441607712247927956176958026610185773841792228062538690034354280429985168 + 87022481899114200452477329439521478334907267121400160768484310083510672665816499561166856734334611173826744984646636728146751086237799447687536072677043559995690196109619136304467129246411278102278767648846219215263506982413472377610126752110280476180152080765605425555155921191279654185124388043571147181327 1 0

- 9728152380631131681740808838984346417922505362633733962369711808826276345645215837727287141565994269326014156795037119740007855698527133598892615473492227 + 12636642715417859827101007353201088998153392966769625361518956454328272594691632711789366661263629504337888950179922382595129311605158283150634452408979463

- 11076050301673918422116439895802538274231870898680460235999737357428177346058924262307656177900696772027564584760665000075886788813530389221467934275923243 + 13282780220042989825847520435951613240963422612857516952397101500145285194109725467697923880234771831873607951414903374146816937585493435872195952405446603 80 diff --git a/src/public.128.arbiter b/src/public.128.arbiter deleted file mode 100644 index 72788f0..0000000 --- a/src/public.128.arbiter +++ /dev/null @@ -1,71 +0,0 @@ - - - - - - - 2048 - - 17374462145441103293102237909685069529709950138189218259518239041370913308288925020994954647836624308760597678275648901519661672203079867666866935041780050692752194753036643218012155542929622206920219543756643095347131589462836636328881688348465970795214944458000693805962363391403271957152914450547707900987877431303960637352383365517596655060990815937293933717881539842911299668565140660798838029535362195478421006558915377743750951439564307914734144950206370754802443870083952795780224966378063720872668995780197310384887043602929175896716915273616352339132430799779165540306551564868585368196550298337897916338401 - - 2048 - - 4 - 0 - - 15250744150015882366654321731032712302647439209938022154749142641352911886068068705832734963814670118753670736851038642209175922041807024277873829057612452104978723712661600174386334996126040244808835598318418800951584027687753947852104947190880061848782462394664942853493338277264269372249672541263817377902709475789753096309234107836492722082651571370930259363736289488722405702051005855510127006231390031132855290443003627061654458973109723184266093884567093003757342474655931105138925070824498487517125289858481332658608778820734003341272287972527004838192307752847583426834781582828652171552599605058289985971214 - - - 17275917662849810842185034896183050129358968573505498653892103954585690183226189547095189006177791255977227211324731947564008023929843978990596966719385554829665160231395506209252888519013576263195311497223110899713256441658292784276785596303592290962143556459867410432743254581720463231336489785135346206239124995001689107663955472098581022740647434849243095772907962131072377970911867058176903038263927618079571437221165405433238205088136980139386853660553931349856987961974194917275677282154156270289573920884439454842342822269998352989422635080547739774742724073473132829233360759944058982493526714997368421144354 - - - 1704916494117043342991634479234348720937796761127252866483999216479388390437563080311372881594159527592376846390096565279539426841390553209592149640632064670805398919392880859803622938289785461518763388469074630049006073015801355723593294284255148695480542626015697853615296224888822146751509616410857150010431124091611986869580826932112504335424862130177095429270540179261270248319161250953219377094878583869311026819662894548756605014342440310003956480955662495540600326710973515668355160416272723165261196605517535832721811138350874151647764676540132086427394861694020966638416559163447589457749224567124328184940 - - - 649481150725642104996859353537993206372358880775452638829486858615936163307363973082505669639611753038505370522951017378346716051981932296392112355771851870498788958233833724022842601787734643035360853122245826073848857177112114768246561766733182810145997339050384774050328461223342937130799913664067652653126159738641723263524811931182433215106521669407246590062574530645844849214679101923519418370118765184293012447551816168195231098360527942813955329644149606254914430428129212055671785213239764009176524091271792059578033881952190905693658403295275118140737019738448574907757830595348351541955594862078235137670 - - - 1 - 0 - -

- 0 -

- - 0 - - 128 -
- - 19141356014666624758352893767644545176848614812914107943338324318697242601645528124706538913107746071674050914847144793488257451118714733475611355177880057494934490258268256163170936542191704389941652847080868885902478915560824252601167871397916996693993235410542785815987198544174861654636124789059164127578926229688423054069148665258365393615186378660354704646261700855341044803090298120193980334159786041321165324411344335649234714577836482048761256512971581604726973816638970224770967312161588986592514319975164160038331820669336331222445029404399369987893439382411714440368258024842684097604449374385096806828441 - - - 3 - 0 - - 326016274304962779215660356270689522459671578716596447507184390103458863379659065343070089997972835376770604892875304947203679519688267696046688491076088377076718884454008903515605976423383063793613737298088794950691141496549385845102927465416946559480861699586197424775887757018869252665646625578845034720774978312116206239865360564920852414276207955579938905236694352647277829511546082521513163136207238709797793906094435648938698023305477437419213586427729390690893201231437751023617686057941774320349878558240349646042008678575221392602110424107290910404204003395498787830647680078689751202371320635991538427946763938451885814397271578377040163614705539695192095455149625399323456020092346336388441121693623865314898393231462031429636933674594886541346899303503887938250883036922145492164215375973137747285485694361441486154194034228408302553611434407459308686484939556596664491155273820970551396152857545994235308121733180531298778202881495952001762946339070375838488969496864267681588174360025594575101110643596257950474179752866341483361586884970001566682830632869604133703460999535301669645767726987572208240513647876528651461127904303224564058648393198553118740819855068061648181264683730061190077391550080799319318488511108 - - - 39007456914088993849982571465137459764853640813531066297283075188105092748962932956965783638954311266380666547081909502795650741894546286756668802152844305824989127349479643742559247267656645258084461270643286446299215927127498600423832845546665106596811883921710267866070555370619188346180330112487611928667366779417374387221668626829926738649536041357186627985774942980761995644494925062890987496592961353922712934424194552846845684498968073050568768337021251602911943122364438635477557365384790189034187797317533684366685135144042491896349025995315068270150854884687839607043679550047945532032393826609694205803847026747942800836652597517409379936205791816132354476532618997141530416093506951847959220160892312699129197115070061883756832070410401032644820328668124993137779965631681449759570852994757461086066657998037246062811024794126227778598333017238414840909775114024731822127915196174355500495664781529341015121348105658924398772979254797514292140637246496223101968693466670154609712452306897249455639674755150347452636874813491933430823555928588211921802443073189707049098442984890141532413320154894763146990143585625625802246025572714907629823971559293108530118284269590743736393724676564251399746921914327766284373448049 - - - 38302651294383155650077296272157828100911137086407667516197762300082571466175982393900469704248852609217517109385281379705717572179657453626843215243972760724028946888929491537512771423430407384480657076588174510134678935920402527442500890901661095607900469403457776054268150628042722792543045954900813786515254558831150381470374164278054769185575635410850069152697326440608437974469166703377271024559140693481433178605450195240796102046648958118602094903194044477527476362422317434847314906877675432648823969992228762701093925931118325812327693144647698240161717982094149947448760999466186255771998053305562629783117807677601016827089152144098416700945135098195606438963689476937796073301851458579753596144795170898829960003258982518621379874493488887568965576222206094376141961772305652909928000835183971396633150431915080251375040154839629574465729629309734726091206585621006037283581758302118594877849316213550942731756260918898389896611604030518610249057312724343149796406036069946492477093597121628445443436359340970968307718976169264431706276833284790385472130736782914475166364350818556246609085417869322873219439695930033350007063608411661970646163698853134431419049010035546276357525085796887932281179683651757905230100440 - - - - 19141356014666624758352893767644545176848614812914107943338324318697242601645528124706538913107746071674050914847144793488257451118714733475611355177880057494934490258268256163170936542191704389941652847080868885902478915560824252601167871397916996693993235410542785815987198544174861654636124789059164127578926229688423054069148665258365393615186378660354704646261700855341044803090298120193980334159786041321165324411344335649234714577836482048761256512971581604726973816638970224770967312161588986592514319975164160038331820669336331222445029404399369987893439382411714440368258024842684097604449374385096806828442 - - - 197550009871325353874245530902979283822174482849102595915045583776682693405799505735639548882736968862640818305914683927701677300233511702372156988567958067832149851261132913464360542441682900535933784810014949548387266988772220555111818624117579949768656249112834103055056783792279298249088345321789567765928850566029847514272523725844800185963217422724694651216005957151331679071412985857022134633815366996337639592225237911620724642818623183660392306709948504025695153876703023029726893261429685186322182016290852128478715463405066177085200366391101547207196142255499701273386770791600012785311841713414059834102329012301000781073539272992548054329798675393841616816563587205936945017789836190614006282170421779960247864516287121131162583502291407402534790241443157528834845880206054891061498940674150482012358494881009603546025202863608414782791496916932893354104019706832649902928985023757817586311623414898248638939928933970920420529408711366139130909336600691743167971085949660810886484801144658793441471419970668588535021731899281723778209658720950980631867369361364092760207249587967773066918592642019267569032913105682425814513640822421463235017655794001539505115662091031060775251147816898047799698767079739532538243361195 - - - 37876259810979111201899902897652701015178139223276269777886845612974315669724568775900883350412587977886268998635081616996327057634592129243228795481507279144840839757291402746614105979275510390719070383395579305060063858548495499646892162071162340218501753187795306760561962934094266294122643690983929478023853447479221876870180846775843648830906195778874452928324573348074830545757215538080232398946935549347895807356370947724167247524290210003220321689948846373702610172888033117232102001336135614166995631555296504910256350472698699794966369070903994678309640035884885017328584587146039162173926421474992545563906218687380032281098083672000745547222601616122014897248760782107421988682911023627831792445199752242270010912957568386374908398232043466332699712728732437738394795306143055245112323547181069677806974160537916653919537239480109776606288154322730597031868548468443362965853679224089705895867538418926761145349457149360914996704231009162652972472131566383089367424862290754654348272699598078100815428406413460409519435856511393379550231361036969884945038717862949351102714155941459221943136750663291218093273237565279646242859396892477196279949348555468022112217212517961676456642828850289197265115342193755162344741029 - - - 254088112497916772910846191398274146723378639650725615138500683432228612460779263649597968161950129618390531252373640792018949849594677880194926380178497615920333448738221014447027992839304625705272874254317473550037785324966071701005546202205598200786706425888597141041603742834208126237391118443894150853882347187560158127703072464518467255017508720602768641249274909409678169455782096373571562457740467295507235096517836484571734765306807034195260961192035815827697843122081978848890919991322238091574253754526698732455462870659370883897321653119644691843346566388137479801278695219060967244512248580245416913720300503652809582247638306731718465857920548036658652833467977333313818358046371122058661013324897942399801738310311663634205893348382241345084105620337491046218283709478281259209577951880983610207263028862609569595560660195876553676123451255136661050158435244547301854050297949390031356132343571946639054540895258092153866546235213031057840866039651040263729601202255016085196094694123406731883711489534435495054140001859342377158987810827602223928631498597251159065785952293182029103806781524825935817483285585330560832493083929717614187085017770209671254977821817938249744897549532500498951519546922875140319475087411 - - 0 - -
-
- diff --git a/src/public.80.arbiter b/src/public.80.arbiter index 6712399..3fec28c 100644 --- a/src/public.80.arbiter +++ b/src/public.80.arbiter @@ -6,23 +6,23 @@ 1024 - 142989038163143514137519181808747254897617413646234561160112310961320979100839120372565797215885044589416362667571697218660951894772769277204777058632683611703825247620853282561125668936428131762950263320275799652968847841112215028038452304194194033144008119787035788398136292314302473155467644239868739048517 + 107700103880419692328367116189192966476991676044247270066988388682573412093995268127675329714869524882503283365433153067855777886711347755822415223285014370367907204226030855736100505094124667563432075907093753495448179510420086019113880211206042464143856137333804828018569350350077616346808261528042365211577 1024 4 0 - 85797346357994066584969857517288127695119959837751981684174386041606745155101155049408847865285620475900693478943292040143449120772645888283038855471545476677630771735539840281112190413986585861863487516945772289127336637617134740013224022714690718282385451469865535950889868288128581025387193359488718908196 + 49811239464878860274132453853118165567665132210498504237556572205909237528328968498933157656819613038620525455717236154422037318811347718104464880183252784002775465873092109328767022450835336038160313127256576724501524692907461024498436304787113822855161241721807247837541332450629698681312954571290009537051 - 53750529524151027509528414219471912857012299911436909306810958486153201871772435050270377305726613641866558230532537026456799585704705074786795480600386363392416891817433760548735300312924063093399771197856622833536724182832404602363368801090864017937623392197277201124192870898639445113454913704412034977589 + 17027168056076136391244849220951406305025813907508505982424809616929763646484280951528565172757897527053158579076495409131598179754969112120098885067744704657427753131869192016296254510901103944346847132094870989107467130103758421548956090998324832190968916423862712013007538578966963387587264785458280703622 - 93281123007152455925655036128783161963565241350421235077239215558593127304794381965097862517105787576967925566716331898506083388079226378533480975266844411679211726254350233866162487227671769124113214380146380900511851620526475692914952802917885068058513090919979358548280079990702788862542965204072042315661 + 42098709706440231891911748316231304841709350817768399579904282560957213554536386217901333587362029920885504180001839385889984845992260847425081760408769181946074519190294064905186606469192775053518087508245771765781558881708990486421009836756982229253107658121862326056529457376882972066640895392475655180497 - 79608330330704928088561159974127205180514708583804952822775603457881329254995819732597508457577011522098295017315566288375106362447016010789422892797237607655774023997692626260233300767337343608058747076471737091104743225762917991550768262491993884298846524532611530872009651566161779367484721074831230514655 + 27269494522790090735140959017359712614909438372077400292428155977842585299426100566659205458117020850798869425566533595495660629106252948862453459224252401830860280837157699181944673145121322079771187566123199358313444080388463054343347767294799630662050886709742907169795252338316105781197007706038593065838 1 @@ -37,32 +37,32 @@ 80 - 133179061310316044143668236714915555758793055703274051071055168359186647488299429322722247251220389807349621761768232486355469262999116000458441491099352875165870647157324176427602759393254098292300392039764466398791774057061002289610299370153576710907488845167318949866043094476530437006902677609916035507089 + 157460659574917351903369831024682175861597550158671163721833850074414895158604236530506554842287380041099667143154867046310050936379396147526924595991190388023049746134418297422151991403446948124736499697681419850182522464548659344906515520430666954119044562241871279705915585957813296923491903613099059216881 3 0 - 1411640131356869816680519647294595667016376813359468359341001148323934542419288162928061715154234287438504413158751791147703378269713239956687246865458612854618063567764551376735395710256417058601368620130617180356452828057817882295267509055691642229150426929008794338733305697727605175539450851486031817525509230461760425849284658444373095278867110765980731782674802372172363969379086980669705389460368771230077776573121832152596521392762047964758020547595255214219739861012740188086948806078641234528869231674212150215094560259421865441797439919776724686199828364954799187229689255153470020031603371709478934916383 + 11067118663010135296825619533583648316963784982800157913323680145939789427861210464656192171540359819691399019074826112071701662334944814753088826371806595727517417884634884177279029951631584592818224553798280996290345970642584493295920258952083453101143840363110566262628203047938988764866723563029285378933270306548039327751799434665394724779395183778018527642180905673305470196129102073647921409217113690218859394396380683463026560691784469672569799690284703401782299091452848252938314873203599160258404973950778456209077938143908694778803223397448244608033662442251623160531516052447842935834946186706593746365710 - 2770997013264463099006170006102388947654964530837160505089067796645189521735160099646481848129270281540100111132397089017328642082738657245771759905053853747169280632723112237097828724839490782773538260544181399058506528451829029585621893427793663076303062545056337720135153459768945437284846745031082917619561712098748547314068806630329948120190682736845890866180636319767098044215334125756810544148333541722246793052570632581647355009580455544162986235720011478700156450144717501483608924970312770890072032400356733896051777211690452830209464207283017809515274973294177553488331097333947404010169714458058718836675 + 16142411064787572582402712991822708008440904611000549124982011635934782759183243976092352168298545334830263696515225974760161375664542096683114491428285696613863250591013580262107096123895664621603880058142056573759358128749891689824226109424246215238780682189657232579312460661149169529371978742213355186353868008613716259803866452524343963828902729508888535859917733801171404986642820520029255269968872112935449965444202333911259523419568480026592307589711498096241673266337911998084564534655849090434500980859390579383826874758960993074503326135445518699147339596284180781816936460336171765561266397187072034860360 - 5387573987767484124560452994266744613294742731780417179393082300979776201373537613124582567280380196031437169774062414932969811500064992140764846421128735107611238713349852937394339696728503165912434630924896238112384609223334673374720188210460564949162537817462683572011429172481856005974956969631101232599288526490105360190258324544894565845215030140228619615473690175333386819514157384381412430519802493033659549673525369970675187453263918509454728125873909076822504027368051065548963571993476336303862291099957973772682982313707251278613685277812716998132144471097057652882260745716138367502818647202021798040416 + 21734791425473334528982709475692823122610665879921574652954906635597705292253499482704361502719926324213592867725042985003764162823843798891627328776144515056149609188796069222828234328241795776901244039962098712542008775131517086747471893470000694763152058194866973876674119639133039282871481817552345284845547043910563229775411878908627783538065669269975974019564013736077054916038446796617730143701554504692776941699173638262672611562364284300715761900012926344475686775028021477133128114344138004356540767501472336542888800684334732252341880557675234676057226715622177772904897420535624879927402839031825542901290 - 133179061310316044143668236714915555758793055703274051071055168359186647488299429322722247251220389807349621761768232486355469262999116000458441491099352875165870647157324176427602759393254098292300392039764466398791774057061002289610299370153576710907488845167318949866043094476530437006902677609916035507090 + 157460659574917351903369831024682175861597550158671163721833850074414895158604236530506554842287380041099667143154867046310050936379396147526924595991190388023049746134418297422151991403446948124736499697681419850182522464548659344906515520430666954119044562241871279705915585957813296923491903613099059216882 - 15792760628438143772238865007256637099758802225442828434887254934861928032947624963697147473771557119312836883906497937522403338310756347122467390581773301781110025721966899967823241045634247402488506412593350161022925666826766140700812765848379244794008153971429483606914550026447346450822637651634244878943152931094404253860708086174788425675915197520482698907536825093519523489279715711320686629583785292385020882872961862565664629334564167034699138647793846276408688629640118896393521237248632053650254058460146929500253712605587898702496748854177844007040645818033099080368154132707026195785000901799467845295414 + 9641942891476563589217261538484918854990974580794528153732670387705786929936678402614481870862494718802796228074622677383651612896631855399866334138844542063264266274408006966341520123665131820124846307201692061179918953903257645409414586349197295665838027185670434370790311026971084955699605318610800281504594587652936179566972590561485856364469624734305908964633168724692041482113246295823772221670247584658138141036064853144219886478203024977770468009490348195931060424415228011959660739896586266424580892013266094375734947778562662712879029151968655887317889704813707693815227446976882589110010744282841648595233 - 16270995922883323978370358066032151603855587404391704880833524028480056385715316246552670565295705585334187510479172476099122867215635588469312578812291300477691248601213877314111513158373548168007091515964359055216113809840252797831619628579460131728273394529003589886136491157718176711136988188404504864465444548417781834581342524605482273062042561575072730439717305164420600699495980343117065585597879230355911669757075604205217818118499837827903833104431672575633064452104259280693507948619348964891643097397672702825538648986803305891756442626887863670646491071483107906926029728217085775140674733129706087216436 + 22543213951839230687308595083155844134840987857765008968524760881474103072657980357672437508895495474256585743773182287060615200802673359124129549644998575931955281835043570985388000252097330649917218150828912124614225506322213387355061345852894754476841012617301213305311654288602667713533522035353052143029290199340266400806589662518193757328194937473416895431563034637475978602839452170977002409620956744637774954554161327924033375106469974827129122791481179130884548002656596097609157598351335529636451395125730417175755007951777966600850324517557749023562997395128202354022727616564382075218451186168864254960450 - 14683437557141339980605920824284653924369812055836374899971450248445990953286010094191297312530556272853536596364970904769779972409883416379150467619857682500561516765846501595566871480146360013634257284163117950956185950128162506552754355940334083113487831946534271482538492588501215301418349602057404826150139011981366203128962405572518198474742498062725604565823501063375800557016415983629720695655330869903955854246577939684062099157915715085447828605158893898038244336170652389311611962707327608111192204316813799676757021443853554227961780695636137259778193217227346524200783822327565303207950606535467711571550 + 16007126132335876296358530597585430668989383123512222504951907430189157595935200594489042448702835422933998848981064638305589551075875746673848577507980797228243724317600217360314181993056200836552057047962300075482540048514702268474315911666963796510402707215680162558424230157686502673031715075423100813779740170990903612111095246884075603475966218624374397662701403896492835672835403014275752741826594459849398988413852036094784856296261380809521230991241670141007070552065727531399542077489688765118197856596892056504182847437654763318575990493801734767349298809594541650702120954829706069313104468398535370731785 0 diff --git a/src/public.regular.128.arbiter b/src/public.regular.128.arbiter deleted file mode 100644 index 0fba8b1..0000000 --- a/src/public.regular.128.arbiter +++ /dev/null @@ -1,6197 +0,0 @@ - - - - - - - 2048 - - 29941565509135583958508359712292538181374967077267939579798419524601328143713546321511890345017360038297031805701605643559948032425580298935524894211966978623325637133713894829708288391823961634534388168080522792994205740602404562773452476637615036668970375771035082118152890105995348353796502710894805398778674791568066453944238719681022303707870285704068127370466037024508243574469005595845774356570756921768785757398523196952517308878074165052099570149163013916560249374968898064766049183755551980813352668710646671405455748490626974456595966427222231007617198593340123081202172280202512636624447461144140469619413 - - 2048 - - 1025 - 0 - - 26813008787581171006179666828793961285625204646126314089266775561554010208228907506988555667093423688411939379173268038451202808839719982802696227452950235019180524365436883342203448395809123663088768250275576085442446971041870956531179945634509142307686527764849826254303028222439834165888720826627760315517411645567415291657383804176351779631224861747688443317750882705123953379794687009129642904851810814910148168274799098148741293358927192429648013554470026623418721148295580100195211292016907881394687980604805169241945540867211018932169903457520854878053478387456973290965138984563648294734722068314537154943051 - - - 9392680531578953088990806061036699295257552463966451342590979623570148402017309217183084651531182554231903084305572139661301865171340867331657069469493291701449005881833003886743353068303003188023580246455181219164870762841639910634577468222606484211617849840027476572541059313360652122560913169716515459828591800700043731398737213518517033624289938649412104179078009823939934630078117988615673111504320646690377898902577008182992832163155949919381465303044489710602675358367225924976916805893207073810509183280171924531034863327265374359568080737845796346235612627904652276974884286712430198545166401248570788334724 - - - 19087005817205912784642313534073765901711185316405246637970867984831754459701934147830021509717858580232029389130313629119291460450346215595632156966266535699529407380799896751052522988475747877642287358388802006915309927985685567467741400267784002058761180059758729822559690955336250136258475324969712242090205528614365477828486728544264062002305264896844265437082634075165217931995646601596447251839635552436357050542010121115324170052549798907803455946669523358102461622580397740382349239718747799979395188082899859817637685903275503490262453496981016987264168932552471836239703772261860175361022475243423057687186 - - - 11084320710091901449744226462081306173995034623223762131716476118377298683194609645781320134071063671757515579486457389788776143089555081559154692523896047415786879243430982944019654382986246921047075696292487601488558019993010742114202967377186069558017658257343995412948949445981966451494101795108907052590832350773598695410888489271773019756886632746296243157865096578259892864740939528430153341961173510566243525361696471463567243702491523464538815381587666919069907625986981735781644032178724543462026595918377964371159678421727010633869233393180204862578081493599282218273951814887814964878021623221704090461151 - - - 13615902169942735520759146018084163991741395092154329168165518138298377614305291698265631553381921643416410645592666772084222086626548094283423671199288125179474544074334529244075008959245256896743453378077949009944803064453570594715066898015398662247422816076877218737151757384059648249797389838013970374924327172792425801730349880297085031926008367238336366804103581189504213195658040949849653699131461894527522099963819752369367049967847394401668245767105304619510649106619071226901082025127840137559006428766365289160613901737385535170779545081553780268376947246823356734859351734137953892936711465196394670499938 - - - 2217321688962031256631222035287105705227456951293482399019737663614399961402048266811600455351383647109059137259887204803695523809930967063665371869901570463420106245814241126878720693878000893184554562731700943231998401474509746715826439274297841209701289790426895405798615186765792942087179821970650635387761415510594337961454707622705841202704018604181876674712215540498541652224857975544403610423764571745983001771740202508149459242066008055610773447071557868420859182211851299593605008748646780947536681091461122739685498086164938794885998675388225216434068417346435647580859508866065203938558910335101206990838 - - - 1306210761775632359872158119329498215582892984034894988907693059938356924593191100084045519400541468555834097015461117035654004947480487456280793467981631305195225145943639674220083545909791487307998535918889372891481631926538967588702953077167903934759686005617569004584973987698472610434015363065468246226352047480496419285426830913675043076870489359286981450395200270032367736441568888969484292794341332427507738831971144667291882035104420666906539826008268391034894793897507796005984246875485590055013105555615077410628854289196622634590555996290526940838235839916272299153885574847993476290931780457523879075334 - - - 6433422335784355344266127682146556434748928650413474258064977672288695454129519082021054864385658141996771660550098610449114199958881698225358648346327207632736040290792791316907141645951639837940868999487786230319315074970673335370693489617124199676247763321121686243309789293382859444837520547758564946838056844101573815394116885386276403957431013355348209471757978467962055274174018315988718661042546381305430833617370992120635486474426666220132590009348164954927225134022957457231271767009687700951829539814556442322676904364878555885637086331962070948532904529718310130676707590506233701114793757803702462103228 - - - 17037331382275200011881648354122549753133091919328597065394618970726822143283394212812997782852768990474524873101509587170688955351108687094627428002823062456176974883288834179828084105163759429019955676099641704976743481857084966126100655949644663600963077840056323735352937583227143988703262607759684429897494321564606677563732771780323088416329265505066089846902881805241699906601257284585915881389409324800186799378006756942899452031372502011611694022221271171889980771353496008240114204487070055192647153377480550862553303308934767355445338231460883979265777308908079287094033598495511979370793463806086202548616 - - - 22716583343404744719435541842103477199489829064447818778131773476502777154495576889060562857485592194190134971338191186519498662871572933812254095558928560177037184753841065573687370018861094614435117428825051707883947153731916750212571423214058984581538971774042145683546927146428444150465141587745537413414297749260218175582622269595359175374209578985464129635334893126041972932811201939058330245699619456324069970204054558012866564283312379732470205279376797507637365623424493394651406947887631368917217727746710055769637622396665352970787003769533270200193807203440687238510434577811774666884414231310452580768121 - - - 29581978201997132456048753506042372825335256066785888622370546140661838313922061316682214961869532568483014905951795730771427206615711312969298596016632386903348228542595852182791252354027454395910405418334879418243911221457106757658055307183987829918433028554915489437653734700248380505747166268978455808941335859600155715443230655907297953608608147059273156244512680355504108742536368816301638652443338646436020820124392749152457492262505231006045434204987418217692211074420152604106376211655554532937588093360109402120461552251436669729313842858463931321200285468127442442589312146020437113835580029330551034067059 - - - 28496545852771371906216611272111497684932266299860772018983377313554253378983676717504422989675508289889759982954410439618635408170273933888298090290697227549908445822607533030176835782407211547191048805618524632127918539315255867679539268503299609146234081251659204897786681288889453974462964832049773321556150550878203794212187882569463930026755779929380465068218855142079834843515224679098481026133317584701651291730998989471377193615825366970518459982055687563013394575273298684043049124824034896793746655056966964632365978012949772794632169980801705446641007856505435225492944950546660400148082967342215947511171 - - - 1767206569563073365914985405792452896466535240627489488379853773820454405601878931114443911199837556742930332776122725331633974886883458760227454540587407540520261061454790141312091497358500288112134559963959565530852782086947242274367854460794565708931459865413340273345307950900064731373753358126046883077421688506060129598046509718763123499000473939105366762830908769781785727988438907732826652216983573148263469488539566620143398112095076729788450073144389209308113770172222656964875746829672733423575357299337030284524950256846854183178756342155790415866508267714696212065215364906509385098986335443010962267332 - - - 15036596172286044033286556399569891835733158492625527463652521111261070752974357601612858094644724305355341561566641279303707987998785293199133198782521388953992007010051107197465164539406591148444173133586498137696894826476825226688183000003783225899452136126325492246524543644599170165320013751514152569484933523174049940832645208391613751064692293092295812136174759143561748759916624421084921852718396089874696227588269751459014726496118024313417521300152670473069499751587758753937633808180550030708752203958185982620993877005058913059886297336942019440921488852622604436137785911444699076497594731447992337750133 - - - 26898140694149370242968426848091035568573373785734027886251236994229789741896087400354943445996611501360674769415530170968388675610384939794189172011518769954840031663306785140421273111868870205070790741527545269475374246553228129499106214979402001355993762078359228978710415152566996392115208397431318735810868278438640135871509969243101325249624058055723854002423017531396965906227761238473259448914940232156027317511204483526944279320387137324431492298794251361289715461625317840629240089299568796797801032788711263951782140584798387692165310633687779794762498600952744881617676337160246059049702620173947347944727 - - - 27902702130594104956961215204633107444833055200586292141962244296122843272303893852218525790369291158142161592912615710477848834854417786908064727980085582165806106982238425539004546597810956394118550925503427864572269162496058187911108704311395157599692695406264795832945147476326321728333171177076861492837809032935380506588669951493075878197426193439365904080431407155885899886714537358813166248505979944392134928421930135933186936063514108898856182759991476343762511285717570633576133705399162413933527412543688888536314184412118106471090525064741852295047617238421823496091527450421141063625325887221835021826790 - - - 9050987477031294239271872619194591111699369505206510933023410351314684549757019570351216877705240604641372432424405806781304171102900889957470781670691518049543408647012085878501961981066286708921719646613517337361146914134276318763031508909385040049018004745168472196040811920062448631703953186083920606625201837987751272567737264017834344348136568164607567691460874274242075828695204080914000077583157919628874709493159712728540123314914502314593841433947529080578722607274843124266680751990623607947873354943582897356933788852029469550749974726912979197869999858026465898925347928066926235331451099987172098915191 - - - 21941818092803831249880149360183994287046602165059008120616903648069940464292270478189169873050507119848935531059131712630289915630462043605853707481758615912101875342524906613744258840425357924736726432475959235125793929840665334141725417706821852701043634192993640757410931115606091845702250670528024117083723126470795464389784261131312191589668063439783319805681497067010444252887290339171823185871124664087959742820264869254551285884971710391550536648765893002218333870812294760680130502577213755184594246592379804646338898257642277180745166528295223614842204111047065218436921418346845802693224875803580937132206 - - - 10950958426085750460507278957182243226265743958366112151739458737009700768732056401965883991527248175027723005130430448691895965219009952117393058838862102848401110659886478406235008501664716086304864227526856635566543128903420765241491468877786168259411226937002084421363680228672044499149019723605970727683853048052496657834143446310833755797581929954338643360392336986546257623917918095429588630316640581776693655508644069919669654912831393862461991766595606117133035429970414404739864032988281598985739463454716978329009021755802027951256707351410871786124086031746894163997884683935419001772227414896409581225071 - - - 4050233682486071573060820433135839828077669143765154724916915662738856072370429465566659033469545326944541361164099199297116807281126017073155444540775182888859503407342365445947349594420310893421570081202028331376315813009581348049453536761028083258848270632525871169388958622839790672453860557136127161505182688720792159046037100345280978139439778528245640798872345103028417115667907588065537462776662213647396559325410281479545850329698161524219490141126572645407682962458407465552499495735042774861714863064433285446270923853599925960824076362691997991456892898081834552962254745963662495837105369681191783150390 - - - 27622351280164086138439388821767091249606710133405736546516756169769813624584865191259350677800619171706155055541131116055091728789273588560764388608098403034584557881457128569820160098050391143306304204968454468832605893909918925262753718323056613261492970485449720021207344206078272941988950757213294294923233241396014288984997483077903372837455955363541041335165142389588452125369836120240822331538688915750241938726792606658057160591463445566794576908862878793748684597917317495109328705519250862541052215389915799170626474546207199770744775836067420846573496445620461748368628123994121265196937588480311175687889 - - - 14426959138590362280290947128760395596592856256070253996118776853858509586108496937867313317639329288414484645053374369049884753249135607888022892109471870699847111044218801238158518958040085549088144925896860630692653358614657185610348712935535472842612185229346026174314112169119310643976796735649538434998759405452366389055679823875636304448112640318967816598536197754814548893976860883752174270683652443001124709260998776998251512095748236911906461861044822041316133775403269011388329029263120400838168475984138801650240266584609475429524666813753424821594780287979819824747714338885330212405045696340445305287448 - - - 12248819227031229298993861785247202261598345788613645119893675542668265827710492673259148981479711023818658735513293990043575689359053509455942141211254009600009228935062436565963654800044942071019716735731443800713990161225469365820664192934338457893667775162015974665540354298429969482917050056527453557763246097812303147072484765370790818037613926178607017299633565015942752349062364738491780761380300191412307449409929448049365707365572583368681471307422296002963729472204410034279847348542230754132411302979328156465789013016110775804501530852608614456186486072123161688421224384794026229300123320814178149822337 - - - 25064245777348622592457587154900352669524527534754057963410236258652154329381029610508243179271380949021060564214066541589002126722516518400760486134854503411613773105606940522855787935016555356484678342448172156169237419742508907300272332915232242425491187728362598897533098201197622541549609943271667999723289818952571351406658621814910605935144439140560973683515133929450779626190361044591920349344983956298437766250641002703064517714904012764544769107696127136502132931487172821185132238686356898503574304136316395480890807916053507812515154508453895620296376125819646482189112570404030731250722012478209608219550 - - - 12012003223706385200073323839624764913655813288930020952805154281537197814525466822742362698158912672303397166380568053681536086539249061063866057578688412351042079786573270958548862297542788621158048114781499390845839515526212645879006031133855646648387705248529497239956450344091116801358502223936595324757242912084265701369600751595868694294951469239904050888590886523223952147089330252857680843101364101882212181687090340765354564841867171449332337697735004618274063055502711720228723934180088715270126594456790464727040262912157057056886945849025887300049173815914499623432488847443587408960356450581898166073865 - - - 27270749080756868735409062303095529896602130863042132665195453392426287468029739687321838266955309796910384658099141788714055084035437518422834242269717343428398462680505658140471118988453739163730191664686049006137822217589150141724447806807917083914979514894968226679864185347484562038255654311363893919465177225121480889975299250416239065838726511862346630619467553498599868463398689272178182762240130262230237382084845591338399230164684567662030560136474842653695198757402699812373536347519381475115339987797396613388790158176933650579819224729654891714177328903627902017291930358580481417170043610746064530625723 - - - 25128040100218476709354759795376898627552395690816946147506602131637608807251719901580119012950151646678964663834989075906426350867644272787926142800761680413154848256870030559353586795054079939017714921316458844041985715673229621091759897771097946379904494379609526213147026606891958136003450342932571161426837699009266276519024083717009027683655679400673230872130061917767329147111553012239068097927538049895708186764773481175645084990451925426532277052600073657533900505268530829827852126952446375484640804823562017153026176509033347979877510493584832651680401906699745871159795134172645508561710167107263941027352 - - - 1049252062643463849769643147421047017313129156232802359615469528706160426379007722516407327509483338350214191601664876537271430492289890398221586872038260747573470566390397833496762308527433850387314574343024888765498648015227613891538263761626699083620977186848978328300818699980287868565734300982272524097854524701894746768534869611302021068534178083144382476732114373772175098140129798993468732956023563556164535712601012997814334825062964232246685989799741638279781444787474686624071877844440757487161664840271847042022127211380319430956664773137223628580771627152246942190596903548212634706689711929731419714897 - - - 20271194762986569928798267707574430570856854673123753162831196410580205081074922953579281096995056910599848518331188231835541701345512553422755118991837514119564441817679999378811287881116747404244418158341925998980100891697596248621359267321296345873376823258461312344567535776695035976243754298456297507862376810779007685066833478734421546939845638374423493176070959255823442726253045274148294813293398417423969627036692162718153949545496547936551483751556267522854102467137205878019768525465832941798014945279920481876554425095052338538969145623626051213105225250601509233620169396689216845430856367243712760591523 - - - 16698112596007720281991428768249911608658317796695362772940126138468101434476885944808624049953690405845054318217898333613357918598420078313155116246811225593714538037288962991258714004702575161548184487641807501287525672315875102603678250591648941272034408069168415401480399309366214777297830322268552486847248503721666258056194706550367554176830534344246189737319295958666349453659778496769407524714429413315379795459008234221550221884964154753256275227953830879454692992082580127655810336915331007400617734658297011959247057345252602011425097446382806850076260254590963243549785200898184323894600589629481855179732 - - - 27898713288779918183419139982627096159717717660532036647608316326603849816951872001814611829676269522244508326635275594517384930363111155892783533421300492495808830284979031479396428741916855850839682110696165427788398800841256586224154762638327102771652280818296232059790817939355535448767245168653632967139920877810058937989256706262253791005053981948500078660213910333667889349706875497115798090648262157119711368273670579085514580158315022318725137793420703520443747365639413602449801072787218330870008425756750539157295035446404100516926885659180458949570677034948364221443795365604285005145372830881394962530552 - - - 19038504738177611740758442008108592747644643753369543788599302719340035466328379707388846370733626257927279918460303357535543886825894179476176801039175758257035914550801984693754051163116467152921781725871673219998396118430539336601727528013264585542520429933099954291655398062482922099363653693452129189764035021570690270322740507579741029760023201493693801415572974607881579681681163275185739125609474668992182615278031353766576888249791365714124693681311403789595285961248291339758183392134182398632843137789181957394840913957402242828468455100377061469179141691601667629355737513090227890597047129601868361496492 - - - 19622472792528162860485730845534302446788987442974042519839915523629687889298635293743669217852703770958363838502951864566955372450948298360822505487734784765810387747915989552639704420330371510978416245454780888598165525668790168852778518088589091333797156470975950436693659506621479743000372002527268318576776741197097800509079521094926277987279290368161770252421182959654114156856918460071342725644515306386041980747964436292966355924199317732973156284013724451167340866920125841207039821057074536993908468064974090611173506073886334151700694512826740656959667990456067088406074337191765946755884399341178267091568 - - - 13935504861156790845953083902780719118189919916249280580065235599595337690420563983028346285571361208876923656227365267318477791864136713706072734075036394157648998197271905473469038477442337446010044278086486179631071026559699560449865509365943025405182234832433293527144069162372692304609976377861827834002733051363891200153818101113709452760636194779717504423138093373324004127668170440233698465057716737128669026242552998164936186333447931097410655072514581237036995714768411432527271075306689032528732844169330639882036105692812548893154017560424383348921211775583192285879347545577006800001271072823415462592072 - - - 3601384282255791457486466454764899736955131374107747368611094013631645492307902856908472343520728766041307858873080262758325508142649470973769474428106329994110574128343429004058942076262567125535839601536798896527142538857094919457241521358875633355777610261877104737043928495950661906348762330491580261302559116234293660122839984064546437361885110529087106227892436581864943726665982814887451669102670079724249436324835567043291133437997472713803522516302544935951048738596346990940733607039592633617072598948727011115393690373742402262759951685040834508910449935767431512226080457719443907853562380024853964611556 - - - 25121582278154060553969217853410260502799053726669377906025758529999592885671893239169406145315245998685043828483875029841085830264796195749904906961533462986515925158447974965351217567952209515962693552484064241338298610470263248789778647282588728416856734958367810190668817275155138609725481566837066177116001008040196368918620171727856586810641723485316885034442118135957512827095678346290925050146009673784801391861189518073588823937905823924481653242746491408600895429785031654957448412357003806378739604740689214161221319999821120998392268394183334936056746034267087621871345156903290708703717678436943399827158 - - - 28877467527208082668842149817537277277877890248985611138193858119645961467325692710648674096621018457845716208677450653449790483941584451758193033552827709912937812691442744461971917600521395831431348910514905454732809824022699921048177758283187060606324365135660292151275536054723753826143811174468453671106341029567713070571384189363059447396860483240886313032265244360041553458924799779079015483838907015916078752955248459468383835898747097247131373377904908160157614546802623574794804759099430458632589374222911852924004739630112229586878810979450647854137447311192917592177598255944003935440342289412098116665310 - - - 17618205537063689491656831676558254866189465769391363887836029019680590869676390089232111644280573771733945299151095861231707574186003393381013755524910318346465569132493085230284343998690574964346503191151284882890160283177846899688871110043060724587911035894490363438753763047654921425574105507246283613914794280445630110011611188581742326672841075583768378696076629280148314164289130668301398142878965910702783036824846460217990760354239055692055985848851817642867767762462006519572929145514892083033392329442576444704858495641339430283314417362946573627437818490369695958980834876735803806190612540963579677618362 - - - 28650720766815388753776851731007371134091805732904884115629760072155157385862251493795572590467148622079530103610433949124998861897273309549854139918325137936799011403757274843719079527966266404364475873398537155726883923579053189866855920670608130291039176718815350721390483589886219891932352005742871474516598241795754548307997755358359250372553182236862865276429717703199052971589222977247019204981104010728370370756229341820422183845284982480907021505487855106201151630208346557590035783078919006542011397176546374252404881168752490142261424289704972228178676641937649390809317264597178814905808218005060402038262 - - - 21947595934604181523940043364167700158718962341249768438842166086547880890446892492563768139912122692519763616463704132426293591482062919496516413291788595905697003786623964185807898761968607771990342744846902364820487296270603580904904249708483476797567167159186042491471790627178404403053008344305228207755035161605267252775044455781418720356636764278244207759516892936565264907801775760599898922461041663208504561137960532010412860590495229232949809240281674929580595720637584856410959675596958190288579757063372576144152265666998193847155479200708962880105300875156934330887587740641750759357528122888784179738823 - - - 29046524937780235213267954255190340430056642719350156715318829273987809284371711046319927964871094715706723246744703828343176492304998125921730234725048920130839891533561804363941581406096780679524902152354622532201015994409685136367922011744952630236945164541491087706547017250439237768728554681742466187596950140222673091154651285941316021506371197538462350249965432198653235788559363681194690370867494474167990148048868813853999232218400761231981008272093961047607250140042657909008343535163092141033407535417282296517082327566504188089565943156934179788295971949088461180646654645873409317163520050047542562560713 - - - 28753717968817907621001962972883248246126932321739469706473545988063540812441855001378178363337925810781889764688096021612409596757844454559402356548335609005973311891712460849025252581083387477958389508837972041117902067667803978361018777326354585702988332687373083262453933339291957170539785888230000432295764069177624126119725114905005145686222457493497651754831909207574974985949476963180806167729879416223719992520786557255255952012669503903812759499558115478025129272349953209256392546817728798778710279122532970030340860347811959514795354655815425791920066536953913760589271479878158567655504531195785680572018 - - - 10173985187523225633611263134202794482398055877997419378757970632012342557961346100082281515556348866919030847093335901000402699063245669841513990675318656184587473630454588825291194329671509831822885679265532685443224307001048217517445984384864902729727529888554775989181264774536893261291922872505545697728751583971668571262536965216583761527634920078707607776714193835775257005715659739483374505599771252902634120826007228375906262677205751176875874902481403333410350625152675074625072728938683519109973106742816407637466268969039522842409199565471558667534425411289221870868446774476970145321734003511685206609992 - - - 15965730569072996433302447672382765440079043776410966336732066013081621881898485580698002748757248142713153630724067412873552950228875970802830608987706587448120972721458397103172965117966656760243382072142202119863623208033811976720984303662190319885399184542891470725897661290666597416006275667339230417469779956309122127835562433097912368119185607850133718722895431453941127741569165765092567326299623530187506376055633050473103724786749881120457273365000783912154734063230655309036165047743034725522756741461448493735291802514241775108040070602717244992723908714346718409196413479607153650006179206942319254770311 - - - 12154326900554199304461240767754117667305707293228275177608555236909271078170372178480346984699683889249823770676853389820121202328883383343948554573648458890245696878065504643706230707269916685165859714078090185696038103921203361866319428918071274332107049112060739631607623679062890536000609024384366427811159533214374126487688655521865008989910228740388450010587076096249732699404249555438182403585979336653576138943235274020505924011282826654809677584965707609652371978990331304337260352012223277922809850815244409693991745778465706083547564679093257549926518641221091937531708111404415189835048882899465393478397 - - - 8919011651194450405401141162065490062450163378231548815167687009623863355763220396298777473196171142352219400598132636081071664023532897900781616205342613529440986044143632135617340470560402652399518281194712434237727566807882639493473031973593711130354908803589702398837102330264360396829493224147137523701485031692989206269108630514059465349170293133715654309125151144851832918075006861057145810522126678903297673111622712610244179629810933397239674869968675288991730510289538029940250975463580096854539852645279002143297613093350825129829326433900851365798137315599973122810092992048189145896099455580201228921211 - - - 477397698556446842609624627643595711629811833988744731577872280014994979290858333048335450303951342388301936921427139104335951093820765805880430157860736405096057811119843208226053473317096397606937089901501688531121051631308000492427016642734120153174215013515505548928392746283557380711302541609271933817027281128094139146433928465588188992486136778413366304085364319404762324402310504035954655138592593209521205416068497684269503235917910395951709405316974444975855038091003553731409036111568948597677194486966942454034053086293331245756218703294711952821830950675843360413662353397905358308294480894735394700438 - - - 10730480221029218918762353947277512370227953896226601899419062291469610390859743015311912883373947287465184684866485904330398621866856639533665198763552860666694101530731414489683955679755054004311068419658731271080672722501314787658812939648212737953173794951152939704929715931444977292893780837189201893917885752563466228346414746013957956923899390752134183417785895463080000422663636566372654704896178523066881457574136785279450217175108726750747558993397638728598617020807542785769496442360573838728392113945000133566580149982290379079807383107711639924751274624779711913374155808461151484677451719885040141726582 - - - 18975641811522539962702866371044527231365549890027200372409538069925144653664502030464180799228935474902815082560630418167519521939998836980278419915335863256905911190554738789370682232379641553666898838248727941572838848159401736151029412757780986621475325864766611718683899264496636675244171152254177344938748698587416535889774061337786569192329094393393025235605158381180403621107753002991663887117101347090992498692079223227798516455112513269990864697809786494992713063710363292414798476279942077521661030337583392247114725618634501420500214686987222686624247371405100374152241473080856634487796960306299317214805 - - - 11620957447339642664669299189025112685399767876977191320951900179949497920542135575965393197527288494355640777134543571855553053226415346488237975434652451920608701380823915194040539292582287927297967542231271257782598346833032907781996927155479143010788999719887830423626776736162631252766014605667797102634990231842690500742668666870515672210760129251892561843304570097578873114785219882472907231323530458956846685518454104687264649422259192900689027982126062566273813701639832200115342379319026671430679031376382537393676231206149114268623427219195385217289349447148538449645491710763715094331555387000291997216637 - - - 18221807519868036066565016807553851527142780338105561449335845982629508300849320240860912209337739652394797096742599488113049420083097236197970693248371936690607167335695049888824285277465427266900482125773737295478444705162249324783248905587679853422525099225957085378937906293733794141173508297658566117426770195136813221815484376761371986563676043756529356661496357556695138528113203563009719555001223876149296463071533694390261633987621704571358868170047965485785924887111772463539864324791092285255317093868129864072164587272799678806229545979231328103934647702983881029235448758637129902080231258932175880874024 - - - 13189769627490026380410017137838947304880475323450249151453118295303797904006430104418473503730425087784515392618359559822753384958691696770501939029841652717198595655910947528405021308378603822159775221003327809415846174973493727856170391894090583753034378994149188342592785537715280356335099867127662497474209442867338854222320735567378742977468871760448519087689549983495553747457242199335027984161286637197845100451842988616829380262168766983316095375395031601302724856119371842190903989975505525743374668911774149518547950523713502177832502832912876586852669197848659564086740764620977602628217587336810718951210 - - - 3471537439823568353716500095948883375092643288593867397286204959280921618998886213607953611198421026565709743539066781916724416016364654751049551703035334086132521368968403729868006246139802520391586843491536991438590729534935146940762740955402578886262459885372690042450765682551177961514135384085764334378957967976816112844395410956367547505543293162458779147237219615934241059020647906158228030633752550604484142331465755616496117221474932639624087024827522631605687773776915871064012162629833987141654352396195721019810480987677126593259548225877692871092660018447233411228514427326115098556359851093559020790435 - - - 15891485644169594900377424294826241362111062920672138960500469608042959381541301897328910202669387903393659787813969382893928207252859909712254213062858288972886174222390272282392879608129774669786797234724470227752916353457919025816446384894657156172331002818636326048680775493816461856323043917640489702044587290848384627288124818057947487726347513077518939562960192620285292927053316646104855656506177935128741583374702474794487574736929390434620067073546726757565071942157294082135170005293797196904179087941261556063631692245559544597166095116923878090743096752450888882100416733393627653420096114590398472288080 - - - 25162752649425039675582993179518286347577852314383603390822680833275340430758935112074228586836061817863357251654629350288867282685266565921406903999297642408374024993195210304566987799303611148660637738445157068680626528485361392674794163334890201945494806754795390306720539931731412643178164734784191014122495373765876029923491739622400063384837671025695885690210000256223242911652449397257484709672338384131549763134187812396046420799893620410499152774139143392257372519703480092251415924957055492388483744565007634822379484324256523767440124521105613003126981848747877060506354073711838014997019349062873516300710 - - - 25834830021267586790709552662811324054642538362623762734468072007400767398806640428349598215519968825528446689355489392671100743274992157138822712625251153834255524914459988110606319765639747809490516522211997835215930461779198413593889594260032616803053630672742228899901550637875031792493979388526064148582626318738338129063331248937572836949810534929144227017630794996472313637889167657495670110541550659100172001075214028075246611898207298936712568421570444115922529428798438846070753654149142303570781099057831460414631298094774408762652378149506014509231111135978632989415851521195308967284157180097243639090044 - - - 15159455066337818160845386706286110641217496447224335431701708551709384647355186441962208325775205145432967065202416450467707857078898457104506580961074344888298284430411494976092894498988692677623241924612728815385455393768357507546402346706925951932808947454507711789284449342184707472768343863110722103515430284207497319846575184544470797865750672447589461795598161942816922503719232752564788229535217619519016978424441053222778912046483112018620013512817154250327678809399710560312988671273036212543836362452810143297283891007984191680701330596249982015971020996820617543790653949660777008696287648137739225480675 - - - 19429721656429583639895453013531273000241320192458485506174072904704170894206686992912656288294404331772885065880273641527691567196862092288142035664418408498060703177781924260322424420363654525859865365549413633672632619377539379995334211374068784809557091483313145661627616690936168927265884263236755467230986517882304563276214678436013202343108830043677850495997833566167699906084851158470806941630219359404250271076171599303025327041372766777301024577172922252315507083597078747521409064482439839328958173220553153199417355991111949390815349215042781622043048725987030751511786344802730278603052262474221420403337 - - - 11169017112496979274578048092465878074388382401996697631211068903313219874660904491767245453217746060786440531525386672841731499795006392297638537471072417426387897401450112282618445924330529231751104695528439696824336776483144923584619722861779469548106919486036265426122755216522693645269623113699235481565356626270575270619702988947105320034869513524967520071424901729354654362384773963335242112707877494454145568143485325036322820329835775633666722156869063895683787820742776916009145808162904761196125045792762254583444841297362138988374078908423262497995728446461223223473016046879205756199990106301331139692670 - - - 25884564596616481196623310671344852570608669527679254780366598823172040239886151788155241472670141632725726633845949741858006964576645319370416424908671552814469422635776284983613910163768175184933171666107942917457270741461312717398711547589772444411070819039291879289568348799687028215314566644081208365861056637457205069358411192740398566998542597011767749126616432549527714672355194773054351290180549498722959699016922283398214046625125243351445515464774883603799229273639937068545942977360348918026579259261497463668051090563635897981070049422272032088538594377861713703698811493002979756783263622976966097943420 - - - 20895120260457210990405139830020114034718565738022347255113833746355477703321544239258070190952828235441617199275645169136216351783418694412540645387105329092061762441866382069871517602706478980072992702187309526654832140963537725924379515218619055948246663507413022462628256004674727368443116121367228272535538504996838728748592851133951568441957746401733419701297143107149173639430047008981378242857164289332866061260195295497942574587707894502442177646063255900804686216054639339987788614320638713496812011031947272069895418021913285220062979742628381829806282889613338010794107600261755649400212368883294206520831 - - - 5519671022883700346218475721162245958285207099287182351103014516210251364516665654057663319341286650466616843572775934015889728491185362648593990790924861263340745351681195135247794738331190702023028552375706299644376943025340116968146772701444159142334125569386836681492650877328856223045296600511408237540700254503166641039576981261803684147128531017117526234931381588607176143504764448096727281788786562095262707942508415316006895232345272327233345293630845158907676783081683645852562282064602944791727108287264528191344025468780090862430013033527297919752433170196715288091017369342584484612532145369593631711241 - - - 15322869823737172116770206314909261315608661632579662353615892261662493147468422487435013648830661266571334514645901638473611899308574989892439103607917891577596511659778808590272085943417172566751712334815449094275928621776884578061621460129239807859149444487785052260877400002926481772804554508841757271647714925990686334603993379109578003678505847328179453310570941511368127945121742345403900164646506973446418870344794307291835108796426042214374220804919665167622599866506723138320080610015628467137658340455909517339550351030766153858753823823292937935804650123521695221245976244140626351679203749813780064194575 - - - 25237794551495429187600428770815574066716430569895542543394153498607787892085549145038829439883055016560943684358634859521786552849552610904695985792842990360541483442120346074941274640529251377274058142058740996133089321231818389107884074779580792802295534983657215455866898974832979487007566682051297861962163295707814062874986560229126478015421373864887906518930546383508489863203365063083381965548533444982245422866379442358544354180249714263845912576158517015891112054671810669634282177370366633738860817595763934756110640512066806221855893230342305700519276145050508466647187903723359725834942369979906080296522 - - - 24055216935164846487893971424380162667084345333153038124524072456322146073964203010798611432908971544084400796373804228532740807897349589121687829985408572990865448113726474243328944832441378249988620820770026754603818261797649560676237525828019336269419013421525577704291195264394439881058747630676874364184894208832252055720466726828226831533516639913358289529254530576970263351856098956012744728985204110130434641571881094519055215397502097551278882922739520900868901244781890458408025609208884387477916455669714111605215034618094492814665833856440617397429023672522404893776732100757315612006336689707294807792559 - - - 4722106126817678651533673168849885689200291349673723383961345885527091783070539281724565028912346981328213529823169431362384852465370466999064423425313954108075751257484564854683417065428121525229358743795993344661952419210893556418260558151556605709023335587238807400490094997860080041700179216218344719996500273619848690278590979005658054412007589131984905891870503552875875342348405991383586312644921967489681606533934022728017887230104272522602734188829208982650208299704889545484850783971712063502819128853737676108733008940573236192469163637535038530550768630360795906883794758964273959762230759217740978941996 - - - 16520066486688176369466195072273745723857415773775963542509833849847012323884964944311414340133130580246153627783116901651983266374614858239175886333258582763749584054376632718830117864527688702759827138472740367773891480986880369771155603018891926450131053369181560271304163873108861145791526057296037234983177577038592190834625126662917042703657333426299426445519486273096767283130304254941114681995480284488185217382624766885049574957370164886875927029718293793063710115462697971863393060748152758472038330341183320739116134171417445186365922229034117511174525095530988672942552699414972359439191047847237250848522 - - - 1571626984316339834027075604086719817741979953048153508141730270847662950375336168932540033131925035608874912248859816356072561289229407640133977619318009039510535920060956245340799406460006660630271997358473487281985569074178772563834252316331642714660774024084562820036798884678378589925349945663810560182556292647152018851933818077477324987581467204356365036428487072358342598746314151171353363507016038727230705206329100014161450631122177441632883099525828074779072679279008621306157170115105271286773274696079861259385908917323468643550495911745237704802058997755063228720216227160252912028994466771041737776850 - - - 23008243848370820956735510294969627358848961133400064052047082205020349422896952273629310280295494004910820131446963015334357309297224923844268674986930076704128457321305305410365038639920937053876827580916049296759415469489382724374106005098724680316448308683659775087527406234771866335873666796261578192967265255775563662537257505665213394940678762396770385892863058289339715856400776269499981246092842968365785983289451331578717011539871760502828120615158052507673334945360052642655209098533708820455406582241698554203279168092150675787225101540888313189121629685718137958249043549986543967080153002420169403135227 - - - 26173507555832993863484616361290879439282861891089782048918225816968929421209294226092178003950018953993172989366608848686008143028649371731855609117552620468141253513423567367045313444677062701919775564648979178286115487012787461255295489542997220668984249762648031176198104960011533385568967280436943685206694785905560641507265689895847895410896239638784684746668462219381496066638771485118880001513989397295834575296321561209376688052578299441374256397243357012968545449044397734633973185549647598738197413497531662607956026784054021970993938785100678686542846285475416732239524240839657007014299075192275616449995 - - - 10518437023012728199278441290069494237609550992257438693899624506734648479612564994440599969830654241344350594826645535008855231042552541246729666640555007413998515777711275100427609145119638953280413775173167794516473042160003988641095830827176958275932672844165690708387381099825652661324632170114312299812556912678215656975278255669620383993075787822699419540127536320313573165546205263556018442282470104258949635831260830533877527885978041812384954261889991861075815697475511768583626737392361792034240182715655900764430341645431313584468773176933680285494363859991072769797289217823866851006488917027409767867713 - - - 10648963860082618304717100547044108346231100688827499710445987766755324285360946923245046202492907539644366095028032017690971139860866822000907176923910133766284471936494421100978885870480088054598055449377700096344295872681800432113519702197944766940106071489219202006861198075003905696042811996442423525077286655485916797044676666393099603369370733702449306989985357704956189784183439937119466335393720058798273331466264464759579724721879908824185941075492644243316242762110302939428259176778946822247313736122378067248659496001908115760347101387283416855936347918295040647156785420548164699807603858427359651597863 - - - 13131177900167873246653475642024492821408750293540710053421818698635191850970398206879232480408180641882742178684455148383778717029343616422605732797006882751828565985831754396666042046969156917838362397499049186326824567174108371752726352678454034686012611606231809290075630245194529378942951204450427319726119068827644692385379600109256345973698122357125648474640970361838761240322529280146908475577343940483326058231880440571121831974061337193244422139306691486745417397539824929471188793874699397195887898303873143440083497364681420587887286691581440923079067149572382265477743926982137189325251406850248119066446 - - - 17761208975010949332805373220827953231746072965014958704954509940187763597330062994372171470375149002569602519293293683220702286534976414898119016086887295509970191655008724753137034823125898828404824030314136899802803130897075807222100662901564296212749072273047084332253321327962070515108591256720060173338856127342578622792780295333443465344168687323283530405135175364660277517291454099046315811337353870298232669067069382740402862776249322852535667499917392452898097167574296237628067859150051099890805796189313777833993462542946067791091049200943137995924695046200660277524388064436246410401603694807282614711261 - - - 23557526178075603128693628820752786539681441761631783268131381933280589642588430132777498526352552799742888281803525178309943329494787961797155617057393301338347245991759583789171518641834516381429908787646178787454349305428698159195692250039383112213440130800375648367029426802949097691172845518410550872277074486492183607536610097313901062930130078253719921228732774693107305140180263992910590234565811059046233813501641350274798290324851792016204202867034919499253703224814933379880289950604053070609767874411570434580813461344763937616133490438656569989092906838213357941957076505775622402849005854271278029184998 - - - 20736073093567474070798075460577353279634135362564853158402837189795315061859050641941414604542248839842430023471286391546879619132988223595037236282884170709198707739892184873005835917627479972853957955417835204460873102997516611206778522998811359546514938355998783754757026376892330316056433056730520953294242008942924488041638174550352438134569595812976961098329945161189006174728589546353290395760349451655940584445437277456718786258864280706368989748811798190299359186869031291082739982372063084631346575892162940820466295004773398863571682381221833290185624502143744914361420550556818998840205091227885986466667 - - - 4678864102876973284396455767940520276876818169968905266011094529571801708446031747076959576605513766532764191652151813268279296391917524647768371711265658325048478456914677269048034372724422364857098532253082779686785048623460442240147880280421389329123678623853556431081533201667415600712037846044513399216745405828291757487043554653269449535867631057425693649344390712714868966723510329307564614695020625357334716104373570196437478435741999785257251037846487801812479456788453373321694934742419594596541555136753174459831801787948618534475631244718631111958631951003581054063465860924463946512078276956293785561546 - - - 19593735692173981863622948416118637854399851221194030646182171935572777745367426951179651648599709616076043096432782472119382681365960467897816996067505415820744644269404745975795848577646839732521676411045914323085037391959557926499870835211196980841157010421267551824696431308322799261024935955422031393609288461217197793062420520163769300814943393367728147510466416628989565536264455669312725516997703524283788869451445840553539937780676740388202066231582281243418327145901643759692582026002476395014056811590605678051005637022470435353142889770426567016798620869228637763223962172690607133696295976450212519363558 - - - 2943804815595839245990508286170639677928483724458005951146094455104301152473988983608856023472793232045273155766317398299611052081355623282356189438617473409551066448122682710351816472054010577160922356136059653939839671608169468507708367105393070032425011866942270054794466825183302912453907399730589753929011335706508130482247836117883123906397944798338887015279675637320539816545424242535190497294304994093719750302932554117843833863071292432870015879761898383130443724605316488476304250048892377973009060619289163041414175575802138603973472993282028839206780464606800546126269058592844902416667000714257691928147 - - - 18652889054023684943466248064183491099489848699244064673797727657200644291526933815567613446341808737278373492486970579743623851768284346248607072279653734197348074249297085632619656854344544392819527930669338873437882078805401180128448113074409482057970061173290980385377679471019548471683909135542890907911209314730208488915949589653248487755567953377190793247226744916047987938751186764095214546374482983628067137038927994499116964136953718680391134664542528127874218408471748426182808632525084476176556171542292495442366647850945294085715829892267983175760364243418711860632561540721323959550341999840313668569605 - - - 18961651224156197465973324431327013218271918598759640320769467718394900365431832860187318054471161814619858889982094518416919202071898067572309537332868037128013546656988080071624125935990683132118605818422861108479011769697535304228332479261147444972822881920802499200854326563537185235768388595961090425177221926794863523921157134862169452199580063828977008514353836620287167881028113026513666640694546195408196592969427590677421762733751781854819009452896778852541502768831581898175452812563102682016828089885145171903093322344013290527545800609514061555956330199502385509496751656430211371748593872860972043323476 - - - 14819155109570612962372795787850620366459859108340624041574889878573784349850113063735423852611177215913336371334897620782169005869021273600120819404787732594069964678234610303985458673619413230107370805483483184820310110693558729135040328046432537027608660219801439242545546030892954573506533183758940325378598583829222952282032323936052833402092868583579565373276294386520495697756487354901301895162624764406960561970066418292643274083803985765256247877239617284847488590210653482684652614240063022940013295846438045769124397495809623799420227675597994023762812786658685402621207234001348895665245110222827881304653 - - - 7615701705346761928782195122839668331842789286010116807436969486353055970294209063339414660210531028700527937021779198515785858885323785205616316312988747914145982377171747990072653781810385757888489567205651799661281155343562281041988554197749453945399490220917900437081200651456279315154809447994955034263804760764749515456265348582428664852551218133680445162120977214839179037928725775282923019051868235967943823014603266907329317286620141677934070103597847825008244386188515328962017272519421917453779543287371124732306522290167532970176065574423101644815308392619573991249233199789633385447097052128228175874188 - - - 8516902985169576761435650104770299266548183975553499230644277966586283202168136088825087194197835572814701049103824522521854465146349576549470019733863347924654228626308671677750880844509726199192438459460816201425278511273725961340646306322107933924245029225585683037762145009406620040114408436477511913893867172634793492045358705903773490645138547972541084515654615727494813528397512175573202707606841716047197117536611653055589613753762297990615559402649426600624680831731103409644840335986100878103867503007740147539408767780496034750353680282961253063189844717107345697811325485590294983847395450760972878869495 - - - 12116676076641656353946413467896877563391547514910892148828082482842838963827999161253134841135932276828673262308596343391337062033778043782184708260747234271024212615688215630083369416959245740545135821895345171354906688505775198770491860128771998762182659906576023419893934836010931955168283307621331205754326823201539185591497547087928898080839860339250855273098760923735205115477329178303977160760011159911715884551390867486912618036167651173495265046157388560994294217498518268526708349471668139412855856644758328186395100711572136909527645213419703300205792428117519419240990536927362799741682034458887783246419 - - - 4894647302811185551315313581460690385281205966373051400497509675888075658501589908733891852121964619014607860164468909564150247495706676572306915023849699193478114182260153324293682670378340539443889129443447894869817775300552502132687994914233829716635161838811978542778241956565924515070043711443683408020302688325631747678844373752466297299759289310857039225309497899182559038289793657769027242670248045026013247644849237476631137398602701946212982973848015567187556608634350081940978206877819617121034212624087370856740276924192669901339918106458593144123079935065356266408233939551366673323328688057353557221309 - - - 24351894382042125854452819234871151460000274139043748088415371165455717723116719889088512622227651215227197026978710034529158334322054677354621702560749876561837988301949454209217140226412962904156545340239603745640076335012266589720137040773772480484681643364380426831962392517169973929432944407640485994167742188008950028025866380824816331073319707297689461538780577142866547994565397011659140834584429563346075762940373914123251968211587854884283339677604213681961776832120252083169975497307156835846100315806745693895903281783995170948740421927768506514068216151434340396908257308207554385011115272633120738185559 - - - 24372911229902778662883379265934243770993226510504099303403571527403932493791295943638301004274235724336212062673213935362783104432206175731422371108301271550289626398523910090659678956307683332122853853715718765393776352471717968439359099476195291460070425837727233124691773335491818884108659304311293685967141492515509450520247212606830810305227094456194525378751851709925221397933559189348327697974729184022984608212478742644754604375532741130015695744673666140232547893735541668627070405361499223218839173050773128725137195830507134619955461859809000477361629387936383521645031365497802253788952721865438971156401 - - - 26030586141384866194859940238144856195690588859408254145401705370746767287866817746237576971874854130541289798544399395267627915400170731655921213834857319464441459747418060378696192185086848347860818931112097387359078145199621815193260873510364742081133786001136693686397471343350908895085627371059626528113148945407539465821926572568609374385346446289096103464162559456919200719004347759994171818533307241389918221132552431870596199845909371931203855151789293140119431966752612125810361764256352392685557047451655489605515856533850442557345127815290508636556130201511408850167815074225306294858086939581531036176457 - - - 25197589109988554913568432751968083667771832727114001940340152226104944789766235473748707921185703260809426362414791449423976122959673172854960031141345075979692405333925021395316134671909744332593438033804698313239361732537620426473248880767171231147384020858610632405918238976680140372396609470628884863690884137195631932262629542555350103659071201975912786477837691854046017482903004882433974326430585566091751900918805618439191614598506813119265805399068617755439543872758152486741573487370559102120702246678720429350422601845373418108695307220793880727919037191326004295358334300005148619125990750034966264085845 - - - 18069886737486047093696230209576669360111923562544026154532892907500366271603188743222068569482802954482431917178402351862468622269110350359886655360545480349491088906447263592718723179418798794055718917407980310214470797667412815056950632753103587690080852244425969182772621394145107064975658918972094542130944054075538503945401244246798466817226429118403205917941000276554837489397572945040848022740090121725481680962603590564857700374165222704920133488450005676676207684231702953074328468142178912643155008507970837702249529528890605232244091021080145269437177391523298416507603572749827226868629169235111871963758 - - - 10901023468713785796009215196228425818197017129727675527536676633808381703218904420248822831810425017366743189124216134547372396314412351320695857714233826604319182768667021313773138192989325127384207664324892063391121665381107819126965324494427609170693285062211750114585412674545482458184349922695370415261716195851145225923731144042226987662436937300705242217684124226822308887998424693582779820842383429952984007241591397270203837166704678490615862370967987549096775043433289742816556310870008896427182378226272898222678303572519634991235390179545325477892001728394207725445559284488458348939045758043926224190411 - - - 18090800909164343783820713260649917018853562125556006355569678220694265736086343655401496842546540248475929157982922507073914449618646835022051519418044367775577955254106939589369350866590409686759621763894611031031231666984177956641188841331297054519300096014574095365697010711607547934217711522008386027323212351104928295937221428335344882054465439539824277211929903656711092105141935747442232046741574749339235020049947145006027517437741954607239017282629321556503166999027442309705675801517538561169701007749684808926533509779841461808597426571258542378187448968750306292880366296549325537065422826795059419938901 - - - 1657983112613521010072610196069927573319585377518929585743092250719643967566868666573264025174124753358757851300528974083071679832550908684081449101009985430799923274378592944683663227071067558118690783384451529069183538515719486584213613757050784273504961076868480069786818167724922627691099677238088886473117875216232628971898119493717206147523825339611946461884865263162704764750119688584146074496484493662339205343955920708135139964623297483397763216709655627678322539548589875205191705062633907405629733455299892106469238168362203947195713693573010902911619035604777063628193979109041415219559132819079134619832 - - - 10568560484543876568579944732702535824701966665627950322714723385460504213849992546104843271549600478000543219633905174322671081858160555048522211666033819578508492815432535884568737603856164192137791100217059838569372719116789719529971890908110582736707397119459933864523256336645511875046706000587649199833746180983020861341755436456773302060701203556655306903781090423414594913710725044877077323422523970299896213032185694004147346782436761511369308732630879036314122103418579485675678262968383370291538907701711330218199020544558400106802366671624768079542664798248915811816225195745129533412023504893278031499307 - - - 4093233563807039708954389738467374442107929745589986385863734443260918097233453824124051203357827765377917710899195249708415579593916934510475562962568327328885304174023764755648887166096590321575000397195031846036543109585169794315887263534892866280562885986489844175609458536820614699048856995061252784072428972489556596249693342717169095927534606000441394531076052938994610235673372071187150166229444079066318557359634865512014525466576947250070542402218308253849724675478602590510220115284441052979407504541344477967425231525005389353689091902801372308226468111498486817205857496311045976645666551095002071029879 - - - 23845626795314566673050283813627294553781275585216152130111727555980306447740336249805274472047256060986026628932782969796246573572374041281467515608450567652305994932177044076979229248920216036748073313105933558410287734315483803830762553538697847083130726121919228286217971036295853522637893545538893338014882793906805684606338467623664389303011724368642808076347591367302454667869489458343388825962306181072253574979144173518284541347469503240787421736941840756905253649419004240282423942722153104390841144676988303679156227456352191970802978133927235321771248969306280166307296730061954925487335159713856592476784 - - - 15821878721221243644459842039292143811825236125786219521891283183635949629440296398411064279000818244704493558916155176267032126431077753845120231706858332077865675856411976256390252689587042007607979551853007193886525155850657018380278886446095411998107978491167218423468601665899973943941011436106007872420562631811715166315844043945605111031662235170996253019492646371696244143037856431025989336897345761692992769436975364594152856564241145138100085861497188931306714136677941820702085441751750655327829102828069406412535665060491168765171134433523704847567419069723762753831873894775103732611179009257222295279845 - - - 28131356830273900835953735804298691039458366905225983614532557185269903995813156294160903914599412030866681166319359586020388453292945343888272770171821427886605553352480330728740736378960089575881065246577423659859933335788792926283003110075102030580395777409047502075973553064128092032107681228942603550181678492594687770478660033953641109893240905754680844069337130889668308919798553847094830327527615157601718712705094388091739616565513415411560257769438021736346590137682476500691636931411729898190052119097143966921110647004913695916856907473462491127348305513698244255890903776152480418737513501091217261934459 - - - 5423238782564978797363981918554970892659374349326790053202800435082748090398848867152815465948470501702519038372123861372568746469750984288562623780697694166166699454965193706835036979930846706492235415888891592398251810294571994825594918102727675174894636156465218372840422444945784261751534916202670477010111028477372968232501956040837925849994498288777492197455570170676062428369662631671049586644446409447326980626807249791069498277294983217292884916528369116504033193852432075137862173607005107425820655136224192366536335891756612087612640670593149584388194153240796199995645109209186348201364887260138533174913 - - - 17771814958478819035273226728575596729940039510943282495176138868882523908700568531877317324354678567426537481667637419972958389564614139363881837258543061960855942838261189174481382230034060116251651552415872140184363180373543607324317560053030609257445325704386095623821915282169769107377745097403412912715326794550820709977107102013782850722087351369929988544133332894269907878616163838172826984802607747292716432755533769385305053882621463869107163574924142647458357683588675204679647013398421261360054374591327264521618105337038495292585246706137716670991340740333978389350540734307053286967104374613180379492460 - - - 14198505390946891777787505427342412585828133346516153679663911916072335088270436817202500424681300800465920079039502086063477786205990501661780334370527784889763655500600200902850205335785323755943785274827265987590364098000249801891483364474702157026855523258439189287903852362417793867273480130484920988738083752435187719905149619374303216699524780570253663870570520770701143111940424848102223682282147215282557846103653906620403940627602452431799666698097421721816540121661131224204275429237154357653238330206271749786918278740379249102427497806879812672980346112618653989531927611392933847965917437337432887572709 - - - 26734054447079001826084344919987400593502181076890033250386527310485165394383278140133179270377949205433773716291547482564118045949952346549199803879098133083827954248353089985278770031667852233068904011675008162630245111880060621571358180785898591528280021793768690004715020913582528119255982983373606144361172696374974191714021431943290354902581883623192472487001623048730547725375845121804484755120452309870690336020221894905422464524208964310559616000515790088017957779679418276330377993868957588734192180330537910156353279277507076514256771316055042981320072042248919585002004313879522993507774916372213204311621 - - - 21794077230977781318879278827434818662410703172644902360550681554030816048026348235195059492068454992268326154564523497771097894536697808205856503516010117211945554135980716463745870546125763388873144395436574544885939845811918870363856337546144608604095909275664479665404656102480772848837024981923152353009641483190740046396360112969834253203400070317289414171172254123463301014426101120427660065862282944213588202033388795105870517093918842926863355354937618758487784150001723238541497664832099875268051061625242279693442103626493704881541826298339272571796323592520591770093236908643202749008872305667072589907959 - - - 7436213471936752273759921957007738598813134719462184639797691555617963194573085798408500973353448989047530040930687812180881335797610751271484072682543374551839808696797025245887660409032074387259508832724532205803880980841095954915829760153162802736294400907937876619228595104269782125237926868069078064554182632883236185889164394721498515070189661423724791766036272233626853670943563295300946257028936603357445452583991762713343176966735989875419867147124806550976024773607812086833100350139412702319050433614719610043565900349249072398900524344334953009915161882715679815833929618289097830014486681439849446090857 - - - 508788810919206664828447776909918878277182603423421193022040923196501931089475056488203736466640676170753939951308598248482212082035106804520463729255512625457443022915873125435771798704704570678554941385493272594700770680338124718751288747538092408848436269052045164907677409229401530227289793711105437885615386184261565562778198342151900296988552091115616423641310394220508583435821731901263911670168275135462379918685672116960565054210575988090095619309460216552334772177058104191103924199108797392381599820857313944342697749567088250605990646732910424209614994972571934875739030686184740336774431305160765677954 - - - 27719205632341703744195292375509111080687674420309702486662383005715512291313066592496634762552229005770636083486100475521331366436677974313119369269213422505085931047832081167194921173743390424289092195659555709910222279291662175958514781813581690197988900831916339989358037833949850072421784521924665587115238835539112927197830835843138563936211488884581162972628551559500257983255278970932018699541143009498223113497319543117853829783916457310338519347526578044061394002675837557077599029295009337439410439797616184450484640805622639104909604134948194925717742254556062628198371168964261423367759999816444410326552 - - - 26686415092997716070248728654768312974851517196642345100235363108557101412065409968250282791770205967141585845688080399895322024282924815593791686942783615604111298418902356849806113234063169959978510244082150641007420857007297071220351667502212617685000685948247837637417920729904898520309209795704902013426740755446784838743920306813511479113451024641632272919497713404792832589481257309107206545412392639058053790585144472902803700485841744222894053926343509306560297157521288724441490723052438748743209432046660919434711470149591879674998579018992610245396105822970910122063036488604003578063497835867709227994411 - - - 18969760317299834739976601625083978855879440919933485543341316599281676459283987688039653266173056655413964929717781030884541327546352032792424608420526797417441706088810506281482359962654455701324475371829517559367864414970299955815089739321916079768686585784243519704429340118811889603484022196135011506700233216616011142119972551132562934227686313861982094504724348434942299033597524252996035932248418136138728408911729442365614205977059466430558995966888256549034778674616351879969360201946756748984642007342745209455585134785959613275492125649387959782643102570598918887394043381460747162288974447143784707093002 - - - 8674402682009882413991236438770688942321254751383663306079241649741753575169206895215437719348603674136532067901485313345126299623623438505159257810170589000491290711403123386973370842970489440814851123851401591804484043032792662829433409056339105252481990425762786596473623567996372969674206790731350515491072129738722274488960181913607051450614465078463013620674036764510099803146311652977336816488794070259110896540761299930554802369478497606987289374809996251286572149448975360820946217758546532356761545023263903253629417533982100759647695498700796907796283850773453314998199893071505901580227688074177153428275 - - - 5089765701021515857498427414491723392755684288793529902647249101831792224381168838190574994918404696019768157128224581732817170617545213087052984066982797227817015526060034545017391575958735197622779025105432782697622605007067480476569865528909894872582934692039181559396164508801923137131488517479725327607621139919650949870855339790152658676897993481493022486670203137319833053556796325121950229861636870702319001517615884076798674094687883914142602860545020973359465479023524235029160731986779856263562205089807482810604647460385554527792307151680852101487052202585660206340707950756187170700178371341986251127270 - - - 13204267206481364993520977406349215774248316687237455355681475630339729782321295324770147829517157961666801378599124986277392373727140375090566147350927677200141080307464935521076960751249047368879618398257935224507193040722962695354984803955315958813689844182362623836217628333731367879573387373023608486249611818287708963619274932714667380039664438338501366384501566735321773434065178979375331955000012597923448348539158901780122819010287883698679804704555516615635246845649469133063316661166436491450332299266683871914324346802195967852966893906044860240118296199994728342074061833266417452487987146184803583386682 - - - 25757109580506839798385483677708278831427194457576562128308473432438017896449475667685514175710054137050433056101740935947073489231409189251935980677033188735923625150329348490825650886435290154966488827912498180630710199143401881978610562559163884856543484007729818282993235681447170996627403016445895505743780100348409059399373785796943209197147790509100106653700468377542049992824149450782003979401849297586402967828149616339552990885140056880057869471198649872469203240705510832519959084375966412366205921817964418327746661097637744789158976290691592680388701276793186423984476758155810688580420529368796740037538 - - - 21632746214027801134683906035061273792107534291082853921494467297559613477106113811637762254292461093746944929100745021688031083575195810487104088390568299609234676124267986197473174802721836496510070899162847886525985403369939511637926717703584593061744731297424620354670759784164244260632174295830488150140841111495422959820642733508747385350513418801848009852331466537171030307122852503321525325513989707495834930288483507139652450464907183730911850132606636500907169597773343679730229496909966252850318607217271543049112583223139940126320387335396056961643143825613034312658572646688367527781290134136209234011275 - - - 1673305327487666770741389165425329105954111982336854600582828091820786534064854566648534222246405309406692311787887771173678585292222899573677493521411882016208118792019557927508688608661307680348618804340534950939887552648586526025772086909781566312454360496178595532047842050408958879123745547608889512676260548797117840372371311270880236606225983142538408514205070643719538539289633247509238049736670098953346267266900155068179975843679429599210744779062198180658876725645817965855810077252563111442730061599489604089006947222267214795046495701848744571464149632683454930800502223709313517716321716765543837604165 - - - 13892883204173357331776473763751700813641324889456326303784956479107878696642630426848911472483725955307460218067096505948926051719826045196306107156518868422682325165899607987577614915159646425082468637835229180352287053452242190436091576343219569534591025881587184706629411999871253583767708782594018242159823269231395080247109801244440753021103343469200072669725740091679265129443758309159418770352814298546256584734818828988073805377408075386063467086289736081369750969618639945670787825295913854134064361334312026051398639474116898279240112387278472860618654051570923978818398192182408119474934277517485324582085 - - - 25875769204820898185111152876146961110385441998126374200940526803672076838188849542686309778386957409435929657358510730459387216313829999621746831288825216311283904512716410314463918088529085619444995911415590156490421494819978230758275288396959646583058310328288066636334760146146072421093465678652900343488068067348143863304120515007511465411862479834307473486209126609055958663602910473480422139584270357927009243905719502725241798286959425592129956969338255283183232472407307932320833483817166142839638099268314169651218769381066477596581101247306481700832153683757511603531867995389418481991510571455851498699580 - - - 8159625383020010085460928624672455222762216695221168889895697166787453282942035260524829173033524166552401457383870335081958036470876827603571946544678599579313654749996649099035494198916797127440981179387905238041845962556434583289636824769786626310671882646077674449644437639142757567177225173524393454295978269602651905590563599922091876710792689365508901008475478135647023353889166898929030367716402977493559577230561715388641114089417800230531445154682150686844757708195982008564772222727939805258854709363208110442263789411917644768252866854314305321238203896548900401342777658019554096697273071973420992513935 - - - 2742064987846231990260358954059594800989449637001458210383982045761072396819350414685277885018534811288449996947049077998210354053628451528906634506745936850571439401446138094225033432908859883570831821918112766790872301817719068794420283357185723541775749565202536966836284300778880418748125353641820823015405018790411902696815632674490859966617074183671661655588158414334168660078408203773277822739950546525219940523469462311359963089584285624773204110804768406576586277451012366189462940702264274856194474903133662067950938188168423159891744930432343638706691519612191747382167834078408986489733234310437464881920 - - - 1913409351827867679037796184905785915908124555735930823149865482603614912655541045130032570206966730765178430959089424027465027119510353308503800753330869084141442488359611670471169922692523672565415111838197190053311196180745846358332887168203900167679955815372800788887618461360434635988431569203966912304096204328628634168313276713529345372753065520589994403616534039689152259759313419778057632075347547547768030851403343435045149391786072817608211742354386816186931033473773549241186059838387339784237568890865494457496446120640075147321659986841520635969697112516844447365773002284232363039470261286617662346292 - - - 28070453961694358972526528835928015522673096055364256586213289631815270313893487938396735776576991743310275870224662901006446100187742791430145043024634449563212985661112171384767283083787748032648742494965694908783970399962343523826911512911698038579368567010758483721095382723455920574848267273754324910640888442701574852321759670328228710144996925248725469051823154026353215830140977699282642150612136557128578403954804322778172692913627531932547871466973714594255072356033365024616776271991453049023053708290505416356521792658314314134973344359113336974983905242086627552457727084565288564426792052781532011121966 - - - 26407483158219995090755179394223486687627635085690815774058749081782772505430605548178759722277161454967444700733773312094670270881502027089620847147191815493360619187245397372187946990867125284841311520424712008682080017365708050869392984247747544608918139028356597815822413065872044719194555353272171848147368071510979643621344673330370582540212627271108007924393236361613950500011465351419854742471640620132152445948958825896936889108869930438788857328531651920044903249364431721596753051716594261190374243621889389274029399921517629742858326448056918638006202426940535402513736915064998072166364963417984266123597 - - - 9362629621925283822429477207240729974205981975294208610224125768641691113057587749021176139518484354189756566727966377862587728291417907542055694094138746264836845352057601657553950755547214781697405805922591832464235253004452768171760277201983752647897099299686417369013549486996115392392654606296989070661249695194458100164432218744575064395440638228719809449070057731341871919992882629196887031669401835602824003847576235396501594556897306508699936329256640093418421552368223212395887595121898586191240017561480488148426133370799742780418892777667850996109007417429033049308725355560882212612404271918341249773146 - - - 14051104923134877141069538863122061737968718790433511626117087312941340120235400858483412183982733386563832054602987073501828019276462118426824125400863290729105246105884720165708728499277291941383318062195463800824337933817813830396976092912801299737617270917041746266758684877632860529230085899724542508495002612011988369459966239255513171599347216765115055812298624171065099135888661248790765325726056475831951880961700269964663498109189595754034032125906697696984543675751500405278237822343639811126531864069912412436505157518090746284346501633922775012985063053406478295084978521192917723543369057650229151487159 - - - 13525954809898867435657673746623213877037142634288809516327006113307003566409223623503967800189851600622296577141063581516222648115681894028677309682419804229821381599339884321847318585991288614140383751808433616921257335764838889700505296819375713631979802512305829294720964122163531376069466889825425267968858576801279657434799280591634532816439751105024445273910232063204210789619798020894774776452564794506610655057211797127004026761910619186703710964420245961748520512544996399909733067835797512670728485668679884838714196597189028802367412361937920516360068727689040748756624354912123674150935446678874850894517 - - - 26308959254775163491831717474719506957225054197502112775820867239457063312642549558555801157593214133063881995870411989597644176183168153379903195584799929823988236255563943568210988098648123437524538862530536629954178067441587242751262411313872805524051297888341638393030880064424082963170867887599634895245716344469906881314603699350536682576171522857526164492937244045967138230626807873518058329264957171070374095748497582883816314276592799137321741395565892523696477933915197215915385369774620380759652661711122625884090318560258792265919641789373303281587579603002138320209167548080278935615896540355993166504176 - - - 4849852686630742447955090161565145347222536829143448567296096017521224010821341964520376837463764319597140252436764163870165785004313775201118357441567225048055556416610990129679879213567817994421910696145992797039993861427481908732978107350648417251238233591220738962530899581969063510891154569895485557196070359614444931289342375914008437057668233087074747663101855234802114805752603996129700113142258340567324690365187154892350656274533186962075414580225705890991165369296954193700172688223471637111340907694392036106931541374637068573384502721108463656228609352726343153001021328200712089131981449305065625762244 - - - 8513639649066208475907720935109140254369114405442409903383001261446441135344740450280160189169164290058562377969539273836108815568332429594317641389379008961363461040673770044527239665803930241518482996516966548233444751569958216055219553926561759942288363188116231354366756285749429777616288416809044983295249928518055563251337275958325097933655988603035143923853881876088267059362810580851365154310791573149533482439351325887038386520441753373394723515705000173895305421229901548055883746941758285025934122156958495961510584970156838904976066233288170982255187489123117259395955415497102971408480861120109115513267 - - - 22730237990338221819978627129668195882061214416569797378693951253279074900690966115078396114144547030505489564761749843467105480487379190422349608307948546928358233905190109135164525530056433950900126595022668228844158882605395507312840707577789361113817541307535601610678651799210547524084766248077114305840404499110786860128524639054223867816609478628762754655209550042716963719363345680636930475239378716667077769046712531351796010873225452559500639686184735927259025096124921149805879369421590054533173477438822551357169633480738104868104363972743774797561761404373211011826718484320257996265198977477337259470368 - - - 7560806197216747543621052766287815215095362765715735028076315980746103781619399013147473113828236686898156780179009657527716734641460093618497480109006507970606839644902853541431076104646134883399233944244163726465651793773627492233569312018640568050012739630842939510237833968937947620120375251119642704364491236744908462394971301032045236080850600777722515178439162977986320135090463498507308997641988147376786287179908401072671837058766243686300989221209014938675651710764991964180147964903548478427346988928083868913686583579621699464929869462349907373616951755170519826874030706324677576268987068226189148872327 - - - 11357595944191152969262269041565901330720086127179686720411277275882945106604230628004286438101732514320796035020931395601119097862954092593024828317988037881649507624179143734732575955531041499295282452513324527488782344844984673610066477313225190637131435429706306541644330477203672323848499806544509654510954473455604069723214125161543372926933959487348444442574206349832198832946740119209965218646048435693829183171266936992863178267501484513846724461312476666744675263741871183874467067209936704747387922544462983120380723529101718565327899638799064911655976702138246413415324528580424872673326810092074246690979 - - - 3446556458094122481728367636606654260849410621238189736283548202143324796546405579547052786523672162200550135097201920098043528972184962100514879247943640193066065149349832084968365874805872635070920962758312793636819248347527644119115301617649186408120588916711589699372850886436021643149411125015614438335571179146816396278861761699296095340542836197829598144341869642657064583586125178787497489023778134711623232184118272018392040123262211114637269158520205979706942100525762530453157562869952804590066769629681473598084656371614251680765264548320695599653011064021038436811854533221160584496713942414778590479609 - - - 18691248566811143906638996280458044801022788051860182070456474152502830540435036849049825164145690825228554243081907440457807455864620693606421195554896768385780852323405656282452005043273591527661426932641427832684076357797249602328257727860838966428699030258847825610521096609480731562787308713684562802491014778357853864894089796274103053063281138223767310111523434411338296926597909397178712534867430604448134282771998050932253101792214646149493209093206555244440001620909891393019551333355884921628211165217143823094311258363177030000724960329651434674458215138262146290375726526390710291036604292663990913594756 - - - 10131059536285412651615775511475084982987322475690055767654534053658239683274941051478765687855012796126090087229318909702087098369679983604809354890436451580772957015313816491025000278106423999220850299096568718176501440569285925312974614762455197628016507079869828672297266324968173249234141187568832232149317810638621238815996723319019680345557467454714080602935433551355268795679653535029928473782143140200165182284446634054731884925020657041762074532235861422477578979785217156690813590264976414078458057309773905219669264433242071869611330273033821961776129054054166334172368429759401524381506182121357034607476 - - - 8545091753965049845868726873705995413651163172426242998501540387976510863946959144295530408266866300380436665751402452186537624212289993251997293925114596737206797704343736178818090523390964095203057454115735396621497759982692758234156500125934128194478767222948856674215961247716452755694102684942846736224377353214243918529519644787546078722867060924565735547230875985496447660868285021363087561614463963411691339337837053540629884743358430148388880984823613765013331895400078533807553822905525870695866976109623615921667958772821096890552424248709620894995069940473466811362088112351980324996748624635834798786994 - - - 7768084670936277662385430777357057792845552642261799734146502095327838716323303177435651134050020139662398099952050691307325480655918752365370144885295154364378727454310505783097337851485928431097810749173136831372185651681941451927239475236250275380575734339178754158140788886667221334169711705773417303476047877822954650509340637924554976227831536514336637364474410236741231642656918436233018508476055618969111338530332935954180054532866626291890003806610762387977906749801095383947009747445821709198694062910847004308693103402596822773581930158172152034337141273715677504948909944164431679706524608713461527008267 - - - 14747664682845191110680408892511705556399210539059029107383640096220651778233031306094029185116894257169328719807573923635395816738549224389689705581007314053498470815921901273749030578986174863497964143943978597411349329930746658717526743653594197182834470855029193956019532140495168368118854177928281407395451843927648317152141406890443905082591431712305877980746515609300084212245110351916542620470656090403480790497025896653975772578191852574031121341087978159474874911272442685627778940484202586553346282366751606814717415404896674957671357281300220300377616323239529049924723005588442313667398469983787131011819 - - - 17074848291560752840254335669562192265018694977760629421204319670144078059800523593204646543025260534692597600646216808785994528110326825682123028293042480941342405743852640038099310669707328235277178624527166711484552488872290510749847931922216457964391303421394089447237503200969311990828764077996086117613535422878693598751891030176283996324301950914075215396674954911267070157899635154955384302443460077378644486329848141471508335317963054512314242092830479505220399615461913753072003902373233014299581203919184312410127587916307266402239039444108267115668596563740562569826494093517120065971644388847534978436590 - - - 26321243934273546089919254540672359720611443546515081570225234361671510149413015460596023335964658137467883745462154917006173550030582689800903039333128560754249209861047934866226172946016562056007124439566863228942575685856491110685771094649974004713979406476074949507272137365816280172169484165508544110514310719260199510707658265701171900505646802763689935099258919616802242545313646837746210608118552484561820581622072532500041091535414001533129627298291595766014914171853673040020620281985576921695994121945826537039915753255923834257012816605116856043461197379651504666534337090010432931922332605899166655178523 - - - 23792979574995423376598525365383170798730770655989879606423984313072814876289881660084092214520942645517375578421487911925607341705820452713518244218988018979579946069358904856917747008624372142652456253388230624908040642991071554816474644972280820363988266575982764135478327092775634509303906188743629774726748291962289206109196307746724481377160287497672184725475177773817112646291012915027138459867042480150093374892777523150084238405819406751363652320975677205409777717340978421937166528835196604104564907268496309937934729674107941708315411284420784525936453262508405484339153648953797039028799222027557070342572 - - - 28644416302512966158203927181058380383583068421855800315023142841341328652811413159054918282342125367827645375174288045232865821399852237192248568731777273398360807548360441984469474227650759951864843571748998684945144868051948975898650513957135910680828252733035564893527770591939044091288912538965012097866704548467656253708352669315864698927232814861099082599105388094818657743675325483207828783653466488215221783353012050722567207882351772942680284794162333169851976007750574839736285257794450577562977046794642173716798042557607731993297844385754978333635422870798080138144616589343332300198994332121316001564434 - - - 8756146339821501687685791632926951276698745493874252111398771066414038712987382977664028831306570980447621443467803448708902890669238205389455219067751716103228539763950612249195017309975102619515539167596839641956730648131877295240275338205715392384766413158784235687799686186763443326645991572420998966211539387132688034703053160497197474705220515742368815868885310387949077715297389371120748170914965770832027898645815121386812307811308234895295791510882385030765222876929111619745342899591871706733899795791199743950505975712051986756893489076220369796419543859191866805321472382369263014231969522658063857450607 - - - 19161734690994234207972810306520919028534993295743107736324054198319001975710728725195037703900405029375540076048588561661820177498007162978550370324086438999428671262464971530366344835921471744995366886089744059218271788605222779434393919445722337158507038498015487938389401039854159536572601400242620499663404750761107181444529378114776764263741726995392525698404369540671036304124199912086950658887851176343650109337539902208638005087760238267394537379410032014985220962765755971859020067772313930108143697848498402886273451494338062050283595865408739500589310153639647711967173914932867227799594902887740999430803 - - - 1783347609372150489126323054272371484851966321718679970130406063344320668307719494989953533977606581219989928270772914069748643418595003018215385771958535545924398520045034389446549283912208537239036382170483460411181632419900366786184445702611770732071201029304014426970969205491411339486402341138587118610139952814169848484434538106647583593971361667930752943744961050612255704182702956594806512449703819904459016765097967083134361307013400967594241526602022105334651284563896809861803233745124278116795856812908651934270478714529115814468711692461092186352174450850498627411298453999690489743412562103830151277210 - - - 24317851141505572517618714349394117878594054055291940093743615053031683361728276037878504489458098134755887427444926936878177481459380105459711181239823927252522979429601188217795917559665627771852951289527234764079190084077348325401451932662699774506805924950852434722944708324922864242023692770708103025143461815222047920888373026233376383614464656866427085107928558929658450967666697399610786835874181523262117074460043618726957117785748848420776306990332795104953938448913800691719730640353066944400640416976797878401059806778979386609207102538133724052609852017520796286052679540853733243204246156017591588035849 - - - 6247780302253929602601259002083652187322073221729702877168586886598705618501194760407509170006391710580996835701618885375812665295305602996624296204543014946724960884789461558392061255755735426195271518625662796242150349132088321160151164876826890734812427104807254475903032017762368547054656896155549629968862245636355375110452116422517772762202807707883723753908735955544908178058229485422174841341260299594825371053612009630784611070268323555770534757532189874185286422084052589799830433853785648581031498866809069467794915903407550412290983546532930163106654883104410504575483842244095513448533524607755550247991 - - - 21785056795339351196207420468935417818953375203322534110688028640381977401917884573466001075158759682902335204909801632807283473073827190007939754460980063781022268475704987922512956536718986068095054276186399169109975150691230161050704224866271153192337000260187171038285988014110737470227390753403890179875352864817183364642541071485526125193567959815174273328140943869371641241871408873090390456697330270863100068717433951168807356999561736818914688366166564464214535180426552909161491463836463908211753635991230178582113606462508554569763916442523509491865927929989317448256636178580235521338853248499870359627780 - - - 7374318551157564001937095529707498399558409565405018253797427278716247256312397187179165618883423782364653744683301522708252057589092017918137680315618486381243289275951810187886605335024448178296232169886802493941845675404215982922356621816083743953308085304113852927562291783010406964372833750119094570345106381821163637729815849949506932560650064942766114602135796512821800619319439689178635039900526475273699102206013616078696168205209545746807849686680269354597534147201375661065511844013410236612167384386175763601867022348474324228156035877223864219664749198256292380084964015193456812236726376859711899986094 - - - 19961083263693047641238930378806588811663999498172610661037209345518054228516752490845659646317238634624869198476298201068078777708885492214601698989710139711793022430222082518404189124011954747199669486755196359875613032850386449310043930586043158184711107514722955309953926652307875594667905983375849704194786939312319269049016509618665595416136753822001652888119015734344765442572539007618646990710487185689959918344642670495344032506639228079977033725450591135843519833430291668479948757013882552399719489677166051204464512215911634274699942611274387779666326204207861550079519844669872942119477610047393854478843 - - - 26522657000676685141748819122978770842522465309006134702595893757071583610416764266775685535715730152592226278544995483301877115511370566402221841985698210077196958526902545667874348172701224245619216940827203216626773332919709354228614714627105380034913973150148206042576678822382138402930556025027002592221875394113584278642552945456077738369659122565195219777446776144697984563455012482422050323183928472284725939814406459279023474101149656680175559477157273660433583873818113327730185589359927603028315106467939462536865685694132871790636912879950153334646955816952432065310025006564816454253173921296545702926549 - - - 14603975133692705679206433391224146580530478107999269026819450730085229199119675899206047235617081857264228621599658632498316676435097064315529575810602658625068085059062895792517325741813223912824678432046905731334253543522216282796968780216055174788015917656123242509389908227795523448065531244138792892880659107745300927473511831058239509556287071097259332767813537811657467921208236425518255191844708974247939200840864980208815751715941009174206324073989360793422143601660590346107610051271508034924621664059543748079809477526214942923405420413206030639299194637262108732912364405094623058635914244481341890014628 - - - 17761683504255223006311542865962682720129980623009791014450217853324469301328795764241117844619893150519558626547000547494727894440767945426602346745253628410297450105119395580935035538929903215972832144613558279760892529300609299450682718239909591895597803187674787269998254874175488542469823095226677204465182235094106425990473662110635624448654549642908826562715307664205417487890620480474549180815027306214185071131812857625745439058956373560226724101924929267903726133746128172848905051300094214946928634082100541235180354611986919306929321726673361597348508304195465930037146307426649768713019412387264771615777 - - - 1695417156266523691253971943094148316303221241283018282602307291512789645237306666880002415505300565875500348206397217044628505640707055270489064990051430973305267003404559415878924020384263597247877460249670877113126881052107952237773124327395496651479737936825815619825551691417325424353653385554265276903423759105980076862298876145785027542332693213514868301306635216592936876826551953459639426487220980064034457051085918735202531262700870767228353032297733857317436511670500165111922895038579100581981906025288684151824146545153057998663937818720899686788913324827317720689758088123411509454381278122416053537699 - - - 679488139521913803976850254343905935796632321295054209470123597589330351324713719937067091501828182311084802441352042864836303435528440177530111175218790048112169878518268438580550688841395300445394610370723848532104248078103471268414080888478996127046072757945673364751024267792666613378695568955189688052792295503428355764624881913671838180859717854202474101678526591998080175649244886055323532715533446864892774737004184480872053278808387106030477368571158687885479050000385250993839347320458025637067479007045899025814796171053868559107433208440502918003468514035656445443744611990340960722838176067413954900155 - - - 28639027107242215350092963026126762201431407996809222443465966370341173465182277964112401755803342003385286989345485326451219780018436717321871800163157442357944187539198841039698079587875656879319305517372760106054308533317895442060163756518232231698048902670836952358967493705600917760401151919020105882012651630896637630557121006634409318737655676811006142879278493331323126031671670664757823350407834580637367487980815176577963465172008023041811104020427201285165656312413142482845938641812921549402287991028982584421940143861580371963494208219806460124101433281696499292275773587705525949539277161975536736840961 - - - 11053606759417624480104540769739608081654523095060844055077193207277484731596678160079737532267826878462779266159438539521160891861277635742506016751437066076278773889914876416083656184016431948676077505931191096962896088691092430485198895508819524429966804784096886014910316121219020790004479375802402231067489250664979991376507252046607310462823313682671039540092385054829520942458025835836724185171691282205236304229229021840624891000721869177110723673599341660441423581151583319751301589322025181124446676742845294573364451844341533389739947610722934273158807765583370127223059885246461913972695644266464593789398 - - - 29684805878691814236920078120908643231446612167195338217213599563823151071561436089544560358076208205395845753447845560245346708640444513883107216606509228240133604905488976028821657778934992713791717511299264110588429166632478699611562220780519285783403149038335380878605314504117291281279046807859924820141944124061682073929638093414304355219416356581021566100608006403379456338052759358185203522070841063460406380522137208130460097430618720376537448233327068020454103321150387861435239663225679773673880890350325624506590047670989225873240363940914669015579468399690422096021831200413444486323675904884591971305982 - - - 10749222385188659303163698809249903433634765881472738089478966353943942834415517495915957466890526624419048703143309538174163870232218755921836879279439272584481585119458766661593944274851836716738902329247932124015210800363705328064500002416311023224585970309862466892261662655119049310095739332115820087770119849279132939131746920486534790365666392090067177229984702103531803366988061367824738462637602225677580538557335324900747250977338855565843069636926331809165977617114829912007836532161042591091976900423938876723088783799677032139741679608674734285355163136896331762323845527057445464102926028790160443831659 - - - 10083007522036953350762492862960870307884527697936671996358612847441036888123153255153234933147317688138822031246584286290455064031016451636223965115780754288386757495056685321384538268258643999924843904124292442883051351399273050192986268117656090341714183934987612921012529902248902870886952233251816642267602058397558752527918812256584968944623395016680244249175261658006025577676695577316717797014913746036652083519585793266319923229345984345223646097384671800135225498221495352860181978894578649080268903447919291555453492311878367242929161382562072396000815493451489558227814188859228567930747282180188874807012 - - - 6806178690140213590905165457354607036839196150582028226013657354145131207795682312648716093877463527106879454955851636427652243442987944743567137256711788182747590973867180471824883659566408113493621311831490506296309667952206218164881556086186058133160523401583006239018680481441928846722441090058037096450603836995256111442220946134736655122547448787899279871702378122580206770586808943548982930565517439698292822445270610690304323766451390130006088976940940423467379707090742929927550771618792597697755504808323129797447149351804987523781369711655219717448175110958216605120284172051315972598255181993444816603758 - - - 7417753916859613165266116203015112185296518958734616837508240570052120567483991510248378730658870083758554774457797371821951495976248742877452444658550468688102043617595555843858584022886940264974672353705831637886985261645900432734599233537714798691808225540255778746835240319783140077552597834585265343899459947140474213649156084970245833223464684290525569312344849128453833740813605599728457859621307264428779382776167928742029933434793970040382904269926099517098432057107183741439113660092769124621268602276131367308291414228084407471064478239451102334917231340245270632692272081850452035926665193290444129151754 - - - 10740705761832368741413668337205414331827577896516631795146767984804471831613525482684907641500730050586071057103087288519404519866282848805267333057600021782558154899005610212862474712947628091612134627918372459327308096211836528393432716871934454165837239162164369985505229542593966659970775551478626389124381243302636962921815757540083432045176995007597842160768584210623670673016752284845295135213923995305216776905329484812210343129975959386264719207471039654861408785281300636730236371757887037046722976267390792576761932097191167017572087852577184257217927041345469729353904565783936604534690704272560917580804 - - - 5182148520138093166941142707784377691181941157269980301833610275713516132351746816470085489543589176680550323522321293265461244284602863505942625451351462763889819162280804367177039177234562043580851662111459919597245113610770526151851478517429024878184721682447948680843134619410555937572887458585123867652189845931603239711706496258270200443674151935139697667972805821756092179649920392297483030840573161546130493159922515757103106726608308682830708263309452290079809197292413509528558182181400192658659084675248063325363795233736260443473032025824087838598796438363793854659843551421444075616350573205844808535751 - - - 7098503928187055825023064910136210178734387745434404861487712914003665462728817360654198802689118707779770363728528814208410065321951717091917328363437110451608662124154096287331031200463237874933806746634555268799513028085118499992453060523101716413650324560456792392362880512536163477848386088768804744799231033540187300871877300160224415836105684488339749402885647575793465369592914510111152715440620345699950770331115971938588017253504696302399255095424486841296533366792234307901069557280860590595733235455819236295590326852604381872778722745801316227184035570398238817363104065417693480751944794852374255864041 - - - 25985759885901282807655517460061709421339935243887774937784738862588974342430124742790988976396774033587950363712882396825983484855441064475587706415829554936039042749838064942947483567014571924898368426107651698342006942209993953328643886558179107639314098779368548956805043571608654516295748308087597737190486868111540801871901171403365261870965969900948338732457851293969160021523328579183118854835783231813658524451165778998611956580915130571781018931486906148931810681884167667556683823561640998796560029810270287206635293296057354321506156019173701952503245908343822563434730776446249032217362748037308710188215 - - - 24084517691327936196488177459366405173146159600741473552922362988922589320029255466941565302229255483657825094712952996893612567715957860554533539077183532466964414124223457389115176186319441899140291397008375382678412444854623028436660688453879331227676414605235022963660622627660835750028594486812739173858263537110194014090916500802149329951804220444982708418763213891751936336358429546745872667600002541388915220949027273316726265394577554877021591158126235880221103224771412129509627646812943578905520011367562396434893175315953527639554699882831019037805414021530853423956804514917440614405956367926892729625054 - - - 11642626714044161459204982259630065867311767944300842576174144554293296319019625493942609622539272647258456625627378699010401394251403473981307031482359744417187943924296708818998952651321469735150853445338064646672659272113583215289393281015705922730296912067030539926023022501305674706644834878766568626093537174490754217286030256405043911486076961897672883521217882303630030906958873625416153879780726839743520182302352909414074413883250137139512758737596762630594926898128229848865758211441619753550987167305657577918594669441580175593587783183393337782907820925893449937217693837883000791053932026608643140484904 - - - 6969541538861645947804332192641594636980856236522751188939390400383038827016569590962723548591149213563826834192780092512577524889785615158328935711609322529912572474177302266471979006036625692798825709403868563122703679774549392013712028803191244445547595122925395058650493910866857390313985869477147051517748466645580940766817221858831875188036768778647987065263142025958927738637414028117619876751617733988649362906111851769142055438864529000642836955139478956487661470534881886038773293275419806221061967928794301520849262690550358839087985566004156134172163282243558841542308042379060825867664734004373848748351 - - - 551363250904755388085875019315401822572634790115306233643908350850160320232401488889460284255945611042971113044080535882960804802970517528302868331119160070266955239151903326157137016818155292244332189266685946642697473150999745491522226769680576307941003837585084215498709863246155394158465816343911742238010451771992430473359430769931691279294512490251580071304921966395092847192388455984846283901554719402795164255539521899228130120587210243747898274108003024179425685805832709472265181706735937799278419927663051500442366142012431616949077133681153795694495752748750699130530188462215629177561091151293363402150 - - - 20648653872894980397846140454814665801612754677997826706227881572226945092669765629576811028669300822165556324722008520015714792295987463365421036088906268274571549941341426936321104901806415504649860808174352063951284815383773228840967483778261743865981580802751447497881923043538744735887144583373009467563395138201430495929932296459053780401710699860885590737595569016630926850701148784103994812614741098859083780857799777101352830374028379832773984138693282523046699871187530199698794239905765493553229945602433235231271496479155666751581230934785326179274025917982629759135854867949803201146318933806911267838391 - - - 25319785029673594365872114698251220375351090693704373444495061992839384301541643224619456614848118097696314992121803128430944886010893433021347250490754703643727973476165916597270879441364646839785470396937031984876912857313313837479144520115751727437756243731649870655474580037256914439425408083175681391318572013451373167666577716665726469651341829403440264256183636240677748404199942697253729469239761403637235521959982613674164023675094334511823173243970117422289191028303263488237976478878478347579334779866044739129337074187066462036949783250579540060804915193821897711543612741132013221794983084985111826970481 - - - 14349349109511358900722310649156976900311801711400530563041113537466405448813197851272055830231071214937965422649402259292703118122299211412754905374295161328235166154445001444331394127498898587155187295958745711263349874213670102646196265950223592880836294416515639350060019412313225545845285978112505721733057054636700045059015862368909605818260613751287042028680857300288319741052249541465543489565395706150233225943067229659751115183298639097475295426542012643436011502578258687798371388924239168941376637821806099695083513757622763051966933400598008688089515863827123066075129575784805203414966896481351659909724 - - - 21192567670100904725045198985918256438678102833102042466254513710744138353569006340285011780626501763022715214961305277540574268199734022389522756987361110586035842988520334150972506380750359737714040489615499764900238512259177018214018457332812176761883663218237988005469779714769070921330633945745211641295409953241016953145535288023258720324993481404421070877538174274584224214881695319206784961381431416923343007398838827419264608605033848308695554218436915997824858723825796059813731175873969702161160687292541939525862502263689439537091690249745039188574540890230054753829071350136510409374668298621410454381117 - - - 16535261382646207064394640649552837805220402305427906437982948951423270357684381506589206461112451989104644355705839291082229783444701165671631575794148406050880752629492439340568533654333645820771165707673065407314064568374422333220810822157362143682465875168488213551150551874392264282953617634902440814765715161910776175142903551137896523535339156054577594010547530691961276369142585993642555110472131706214974171286411151230447449994258011920652449627437943578552152784346260497162585712426752229077034021415228568688018984606667360252461685157594210670837059836273070620282803238708025390397220999140483020647289 - - - 5026926415794261968592942097604064672232001396372741973604776785622352224888001226238206666119975361614732988326998114323164652847288139687224129182426257897712299336992260005984975352432620193243188234254394717319497910767460476397371809181353154828354736499402150063136124608230327851886366416316468364399273661100050907893984683263398750370628564916126492818165524385171981027974385832464580990286360942014951033460433526546046949382341102559007244255912830631037691394639873278941394895686606464815368825287338644106717575157122213916340167547251486003653073451901805043205393605764250163081617203449708243973096 - - - 26474289146273797729107697995516030047224726943854113524844988685784543280533306780342519504772497140209688264994090926979288015820903192923895517528432980170252428231341313508064678466414768865843379217064722965421935355835011870595573522598790146703754984806445877406761637675147916122068675966786961583522903458068047331604362374232456629240367140600596206511020102813079476501686701549404568764117015752691616669112457708679920576134442219697484824247498303823285082688428730864780399189017235077711433065003858607831259668306470324851594849289143695648486891027394793433322882125101764499444370913165935911926748 - - - 1394844621100234598199664872983687988693166635417247463901609153877464531728898821782858453441064422044155546091101754011102695826116663274399795756452575991212485719224086034646675820644216240410357265113552811119879747706635212944156128623477712133752070099016003783301805178266012155500069551400520966663255309698961210299332406354039895319713600655547349475556396835245830006576731981596912320119125170553395892152667387896628582463761837589478598955125623043991037883462896840855067528287651037412561637682543388174332152536170004228549570774066513523009664894179095233178975132129952516704116433698435794269402 - - - 12286641043757883761192671867357368831904956185492195584062374189862920576141366279426844435546832318040826043895265017317215093638969326794071470025726267153204569905924395646636308350094178187847461957653992607392070122433089739799073056381678857814752517180020293021847356110820810373479032715799067718553477326045969088539967298191187435792350600398769082121369022026541577565427647332196507692818521888624868290617020362591443837728002406805286147657356142233851617516780994245284104770337258422770326207592586865099069783516740100443154235763939145574026475380337337284897942557467568343089036083238202649716963 - - - 19746733296551185155806965161734536456949478336823871149415382630030011138329525547831968714018870940428895454746586978518568178950754035049073771704068935285221459359514600239622809810754199637062718559276086534092170836659391474278670278684379029435151991311721052092174249421455164654266108562334973507063312895424061315644326684787672114128386400622279034649301779026180060844783927668338778944744725324459348583499829421337798009382960691815601090349554956601446604135711572918568039362951781948408269090053847008202775631320600918717625586834710194072303226577671887335986407908291965119331779111468751470889257 - - - 16125910783183910220248929323926568864983846645547999921012141234374418250880424310900630854372560026663977409264077018301914266039295102624133588239396470589044109900241575954960170317732382274718475368718592479075637118334622374490834039663202325214935207566356453560715851774526803088416665681081762994309980975601496292575623781491660878221384809007655628254027977660556957402462708716477957444068836309818614312837201179948914489267981486256731817056014915451998665344527697368903246453567293381784906968474317884009769332519505149850226740882932665198863589553591340663008793984175855490388633254124322865728683 - - - 10804335374150975956017567857605812767992269739861192507524201018269106734060181073595187716348827110956675082121047970002204090257839206068823424055580628397949017487225944391828569469133395198723526936634524340061439543840966923871229090739022341369262943588596020613508788015365398165756776838322016916324109182335919092454201396106614145651996316493487685134226595226345367644268321246862792022133824963001561948181269145597398815063084383499630076395929119213418815859652797628130479993287039339521791061330233293398167081947208397578295835827402990956640814446406141913930781977091678388509210054890035751295989 - - - 2961079993242243799775784445191472906721377423454788345434508554994887575095010309667224770206698116093729231718617111631948298723544240023251689565327334939032075295086823396991876169732855280617564675740875106997416175790296761728288010952353170729606454991305504611901128373887952411229438995925331741410524693799696838327412216535183899057490660755859570876524664157417973254673217127737433873225513826282024280509163133091662262508366880457393375384094772139954003191854581445276547465182410210396686727747217195895723554387861177096591105753296069555604135066273105594729748111170148132612273594975160406928426 - - - 16098172318931152787974899017316913648642030116376194245359420673950499166414795138646095966664373048143012606177096287259549919091389209399076071191155027160884396956201380663257901891311029971354530250110643012104973887623079435739557968727022091144224301259038846915551543427607008678476999090091939252175414386238461448959371217965363358103148153917268288462563933841098601434718177135739218009041753213545368752113117043453175908526946657629626791712970637121137166650507226429071593812081673255115235093109000163765890851604192719696050353171947037468330251309600364987527184964916237343032196023282371845581076 - - - 12642631366924240468527778565420559077334338690033314072434832362639099606470409038568401974239407897204566353695562593168073818017350949036193793186766448448816596694922679577132937822409177317533715981883673750031984033126500022736505377071741699921138777034637371246847536740697085581011798279199670180233025155326498969021621001970043072656910994586909992804048130287635122764699701928969835168809989562183988761544674749609087796550582867564599707081396888257032449539500096954068312421464636809146677334626815723248029192673072512372477858690056452019467115802582707542287228852638701732690443802322292006616551 - - - 24475756991771846642989969668339274438445392303523537583131123354691487989326118351476616856759498470860944378314509257994155400736364101051362487843446700350403491621126578880052160704715671364283596438901423758659274946528737806935187390758794220352132463582974649251279720929192348875166490884815558982988146629872307077923305343464555478487611104794690759105107593354540505901654676142141951215540081585727459305282371879531551155946030526268181680834680955845954892725509124526206503222698184733579216192728492434905714884333403596863593194398263021373258450088862195952583193118014164661692926154769326435220501 - - - 3469820853928424613426978676344781397332591049113664520610293009885398067527463043786983016636744623148847637708069622158541525750262719624950951090114047757033466002783216787180740803132714130790488369341807378965641138084933392768234579946778675940984865319089793265269417513109495243386786900327388322398568552033164042097002524248137884310672223849154633634208338348766291249172667271729065139598675288400032711530329487257013779633040336726016998884040375960335627137305203066147790516935338237800512881958235801035877999054108827655662603406819675345022376554339240134877817448065624029533650220446541623952145 - - - 28133769212010583019740371272048974709480385835071989030692410213910664104980055370480282913227867262092029439309222132342864753339063244485650754807388889294969822946263172319030611388676774849122945456233366255329319468560534441292308099171617502543904361563198656951008017962190645560622536798332181132010324901594996577648850604063132009760655011426730678542632666716869088204744672498447075138987119142777722407619092839069446354051165931561136822668418353443053422756980707046034515678536977334915097262268619119938178954698666063681200616555572763193722534220775613589272916331018381187788701705139511604544506 - - - 3955583717280321373505787530232676842852642517463730368213593758243798794255796279429551185925952265682392292014414197588148914101115475311046891328793443972754305536913672828922232725092172146107899899735620538897693881449606399599621124085568181090157274003854180786338449390555399709892678737912287827061443507886524026690982397999123999960502936801024722289318743064917375335787892889965041932797608150984061117418723242904440879154542368638286114813380735677197441968556760984368533962982647176511579307718716774559304977071061018883286932423694173960370285178720009205241694090234421813002911794532179677631011 - - - 9092298508924171416032540264826978207623401840792795984696989447789026152539121617100732417961774463854893075253414896236706101141257126573343566396925405584232257437145832778551338605871938594937293844352066895861151489469684252310013766890035444314242989764291738192579140854765043027104196506641795600440411005778775001206221688108222796891210196647447156302503579477532107562292662129354288069601970926916756164659900900497166043351936943104232734475887218516403854443325914856810143816453385415230825508575316539103560467266385433359086604333700312406423937150464720858393430418878468855042297983470054070636085 - - - 7000513026681354544894371100379607801162454958908833627307988112819894828455613406473338957998900572070600368004174530172298991158200769493660781249170665028861249361162104376098918764701253725083251913683191708653440126654518749280370936088330184266290499326574675337164163250129594291642709796146129147736766813689846495281539759098647693360569084657719468217677638343550694929545961353802017716808004984507454577432050157699946410611580750477006433096220537915926628128799574325672846622099443290558874572634663535259933434921706378805635167747349140694345586476110105286245698818232997174614840734193782867430704 - - - 9893269152377766637911751775327424823770831746757377986497495167085957439187132208026632295435740085761645568395091117462600943692258639344752629077198220808948312961351855508264439213424594452517793182786503524758254287112431246989036994962122336061622028654807562120362108490121668673017961201407169766585907620909782640898540221129341357711466950716649640221565243689544736066181410152496168006390602481705760167693840112638181230192812264529766648035561529061997201478805497220923241649516554570587329436848916660188159758893326241278097014837546505431536086856853497658286849862411475432203021619888403586492061 - - - 15550051031024406713545426599840364452703005243031564049111890403393350938646593856271315557826778611006019658073429617171389618730618111747171477026422599300044177336695678340213354792490386110555827327331563366659720593077814150518004364047742939619910362655182814528252919118060052914831414937793438158095734118502724886682238197200761812922431468646258642601920484889351520647824841946560180023022432999808679221849956782299944006041968143626810707776470755074283060034450441921869347636997862740111620863111135551563540634600665839280680470689271753893395897174311942765530694046054065883062920768128672945731665 - - - 13500502932229741658702934991377253231620195881825984126766666926623071998389868050721640517961566193651520019860738224771615330522524988921486621650162948194678829759943655571006655668090895318092552511330676124183286456317474877723450758339254924931180125086293420068018589664907723868046217510246396203731150798870113214367610614587771643365249810216042320501921620329770411008886231328822726920640986758876254262633368102318147264265230447405683923744137265701652847571212733439471528532417209173995895348525266938267200374385778495847546076880861589175323639335253709037917648875758185140763894482289109918803018 - - - 12929687745946771058774890780102761981265021291547652027918124851476162039702656283819477519778599077024377257897269880007849793416275657899248025756656292667366480135529010933635900570236027371288086299309838726723317439183177494584195353882020771213531060571446886065426984265989089526940683700813954077990587139936710970285064206342331975556604010414304024134600447668538441464708612528777005869247209856477472091496181682984086587470152315672266096571072666631837202820596939888048640920031964517740563400486414396304397764864768189406594551697721818769237471634873326680783769715259356596987996885328375852640940 - - - 12436107960433187554726892331012870150898006562226030598109636667430312227701697418617300397285798961993752389001459185777132907686019740134697803223377895270941196774945412752691308225076783379473098540710324405450671039833518212512313649115361452584965703439665207432729178572918726905089645056861797533843955204408438467280105731143232463027552987468801680119678241557990617381971641952952845018483727159206262983283646473960634066851621038403231701654948778119758998906595301066261848867713577960594558945493561571648913564026413251941558644782418660594833034633206588099516312214530564439157394972900016694706798 - - - 19892862848437489897306572796397701338974222971606796139436922335207553808050400458595407794154936415763966486993975687700037219476604795055943904574934795014896321882656052910019187946268859906809577996814063634234191286115505822002151300857139693209635600247402396173738085359860640288500601841753355330169236268677158395040266671809961419729566845904798854822520287589538889300512082718926965112756635941503987242287301017029613556360049973149730701224441348749024505968358118124772431765534282719087980097488155811998899681718677442394341623356012439635304765174462475250604593981747843768786664502182695987478045 - - - 29595101615392099687118015134079665236140819304058263898346959477562536302319939542282253634405732477148682817685826734816189141067319412278112343378575672712770961049468232974510499540226522136805432463192862290507788791607080992524439233865498624765984997212962081144749584678527165819345668279977242459487286474455026987305075882204995257792601026240100326526472632033790263568668583254072375696934536229476535160581586742293247468561846179846965419617596083813361473518279391212672473604358695283723999696359393785144094175888100269438166993773560567869177397668438132934583053641024641429952847374410660516304485 - - - 23323944382026522591616623033696575702783698753681674387995607326511845360013888875886056277763378496048226116379406090759776194436465455796455852636685428813770204106395847005564099121652153635062233895629184184915202489422311479720584709678851729122372615631854290243670174428071028261753029008101452587976532463672712532636810281901796751587869052965161844104047145873550919446074423013440411838814472903681943960017753304690897872233616178754147759852723588117953342047150617970565451588582389902223117211683909567067005759191866503366128639839129797380286740476557778865721174242303217834555230381871462090209560 - - - 23531296129929953475923359875332218039147673313988510979244517025849213385219254804692095720759896138558628433541516981499581657627903158887096984544272063787020613838685751854456087152688404923132852088062334742685534051507679876671394931994213371158391349010781404877752852104824172557718834297872705681329218585096227210921066863314592053401094045035076902724441677690891563572581528129058034019863628241553693055207111130507443294415789339623402679078072222429490677437505184525567010157753357863932981054605060005318841335536539299656095233064717178972096243423296485048408285614769726232559177428176550620160485 - - - 21430227307563419865742490203802971111872513769933877147966426031962943675434605701468067931782213130248855249679109832827450245806249559611197613723981775427021717993095141312379417449536576689778764823055070306687309184490083848110627082482877215210677233570684943037510208779577660036660321444151856896250315573610929044227044907558361475928052868965959861387499751014347473670030530335251042575965560367027746161641562803750133188551709672695206859093174328949180268417366532053932501850953605819278983856671211319947590782192640471899476235984161787731920791787653091399940605811513650766648196876742882528546162 - - - 27931519421864216840458911427700941784085001481008315647805060365865098193068813773283588567817108544319800627924749423747763106451623711619759423553131515262732860199186392086470844684762333259626743826756717208854631300887974415093061978020115496053129826566696270516771200805951160781574061707915104220239999603032600816285974067526994823270241315416651610774371054921335806861971707543873638267102179128478826341693488932221463039745762218357199868938878235931084555341787550990957149018262014590342686859654035484928734095957385693581206573168874118393074085172338943895370710820373786317703108923330768613340995 - - - 4472100940704543503854885693226838987497401416917333635504506341540131018597283586512086324782180836983588837997484694376628096334047836043736622708441746636250130668125018454665117689454943697069681199895305311502435390849551008130123419238067987673581106517598898765890159777618647280735480214278535851993141285174088071586036897648735899638030315025780454771810657355584013760699235384128299114318800209245604892739060223235249087620811421801130898902707126671445489400557551029144226349200932149944461933323499686378046258987422901236359260992099214939095121006560099635425006661354550133518884203338172104645009 - - - 18962559233255513160030612000430557954712743207871484582513084611964567693788215795040963177349158879996264342830994820947089416776792235746886350072468657221844567401157311603369890134428663533877878531191433031545220168432721562851981180607079260385450166822083582211041683180949345217228208202003467408451705156818556829184886205532071478983363968243187156832404373055285320916942685449362067901459545833716078715260227464304017736728789472471427813871308619518161487987051860676667496676386855122046476218495500544915247695454593740107630621133482960988353781091796691356155114393821900127455955386278235148887973 - - - 7172437424714102910565803525710687920770095223974268814869001830781580033583780166116915448716506046074721761993308258586623836338792239253523068598918574049467071516466708154546820778267098060967143356207644240338562122006657877237885669744872123559015970817447811834630131472949304991554643956149308551558049105685769706983073176427566663886854742945221581006676485237015679567148633910877656409222333669036426297833478022781528080804589679435566948504564769704616969884499749612477437445896778477764654862551649628038970820490704267261106871238274871091637481367602133279544826891530194205265040331001887139393466 - - - 6710945280921658084450090005359467883020093524800322727925400792886433462087818966301482469539433522144339613956553846368011657752463656050065262297957681467811589341100436735389596150546973646930870455770502277976542294841342577143415718095844030986511350854122817730970842058348819219615442472956092537400906768277195914261982248201593273255925076704882812112537909688869185641446730937334086370400113367105419023084842719794799456653648291232572816835608496287826061037437055767834229356218333393901645469764732812497453472168677472727117064568492821248467887259855396335148598866051412708457328085211121365506152 - - - 26821120195337408303004361483393229975773418087161789710886799977971485212073613808788465373632097646946885721922568129294424645937483926371918741350115756789051351255374395861627994184975145949161101804135988813155467724503212972184315922990901803751869214902849190255080620414281777942983862885439611953365823398690224482101163716688024278850544197262668210969247978315238463740874796395633931167515395091752443346648683595160984859966816922251822659223608942929120354195354210313782914963800725081059438833060016373530942684176528954062725352998795862990714188434740214012491479336921843636531532735187898873719368 - - - 4582137958671541020580511711378465121588140216987794873273395538910558729894518242377200364162929359973988363827607313621806520731887545651412602335478833117444521973192973370693797538113097800241934493925655949489169952963708180963734378920531408531604417111025681469228119272772341202870497423392351179358283812397853512192661554369357417590501791133796927343882035771888076505373298526771502954682238918644692405437637931316202128057274350403548772733225519822345751119632212199064719303521724427609883491839750945371292628899165497591381376852035989933495888529049242855972512142775583324950071511783339929373844 - - - 2278078309144231851791095009104279225791128224318189015437716758629911570266796052708421233435886536082885330901312547454133141001779115556176390804728988772288777733338656536657115062824322412626363629563157658932418770272371342262048540613771493577187531695894877453221005778371298048494708308610021674182302212407171864516400948330365417512250897815977020539254644036596669929073123322934189308547609874223367927958708837348426902990697959742415235960975865430713131354642832983842476256504312079970213167858683997178984735306840259254908704097356538855597478131546958008315646203156937006405003018939557497588851 - - - 11815763798744125918554185189614007742660499255576683095549289035799611909827049381894041326494325705062446467239296886529171574010260029811158962355601300690322406590192963929629155325977090216356926317902116586812846955203198279220171895031163675920450537502113397674327652671546352804248672901998075981219958176357802310070872937103805022535661060234599399618307864455379733285399346852156980631404765389714788538106602684693283481807983727143651903855312220356223764823097938486424474496904066123531475646066558141996068166006840418836302478303400633880544587916103071056241517550382923980519984278364823992034962 - - - 1735215013010673238503956851878032256632559076532469388959359701813355709379272729529819225894291266956294248013924565230358449086650097898426059862559461408325060764735316432599805017219185230131983793434291331225108701894690417836608617979751679957756007217571137057414531064765319340580428562039665823485525708456544756428601722155280735671365961868312606310878983403508555020923141416004163628291664057745510669216731222485558223807567895413197614714200685673089178263156698681614279320571208611278610223422407142508402841871687628876845116553933581190161067403461471294923732314490722654951273639976306131409827 - - - 7820633747989256977138742880945768134001354613272675869504755182172136946793989381491880821795832024758063936803638595228418173415199446066496512162463860254145001903981053623907529007293038162007597014001957818036978225932136205984727511179521752519164138983874718697272683086293731043242175243510865318712433000843577975142649393751681221897717381956829462490952177057251278966644530506833212304876020148312342104710219134755061682953598349498098223982026147802329474550455219547492076827344101191129058524479494338781004434677706909237774887053790647295691773958585653263056766970902540320591881756756761781390653 - - - 8261083759916941431433637480698063138608874918730231821364115533950045032453057247100728892782882685799791637861480229922627623061172950715807084561691158273095554223081572752251555075235551839514475921739013895362743026410651440057869971315627493088309470936470796592524940148382390538463771171786152344523439954904323344075961607254521607461995580952155099961165900240948126931235153631633437696509723833987623307769410224433514822226732098898522429825454528888504163518456246752900948762535923707813723347057076399775589972900342679630693723450387519201078987086247282861483782390556717958508552549336261033244353 - - - 9269862884349647846130691066938174546232536118278875254621903176711681044789339411511972189140876235676958144698236481066778987551853594936942217455687029660928822644800402784417228221640372213664090034781150198020666237918808812625720282842462365051299782901526897133116834179117851065812301244147093472773663709158199627607042432645540600826770650889626351411393198506292625039426853800784590405210234124617366825615292815700098956488855461755919739399885717632736712830044279083697429089140537791536545788755345614515058676996631557013834231068391442005781498251511561361727935641534188053772639515977220316693220 - - - 13610545113785475861311551343666426147713733869322978701963610406499120487309965148355597794535214368072972667597120608071690074417384395876488147515824434002986784578516219071438568152192878521544405555807856583909861913584974806696232694668356585310328041897887530671798713926966976861830122461761808282112692357781958876261802411488950585600228449146189172831051713695351611374356320084340211869502911406960792348941009927404492190913457083123582183855925525752070865780365688222417458652305910116982068342518555714593882013272979557352053722478169997693487885339342818597931116996399793186962263509658991045459777 - - - 11796762105636688128263709295536975940803669371196627599783868845149218922555384163495815754854958231965245233763197449912746926247203272367816515747227586767666242638726042343758494927102091056053820147480424482783148727135099032768701744374414939403740221309342095936718345437129247841630726637818376241391343313861939168559696714829216791610152631722084347442825787092767699934619077015622510123349277027559140253022141011196091543839994445763794672950214702392159708351564442649225851114191947728134768596492254288093285389435401556484762028256872244178095364612555375662124833199869747710496618403379362231416117 - - - 14940239907376865240449538649422258262530714531204845752648947326614829313603556042244998065377458390871531644480312137554946755493672501672645130847934843132262466296254780770553304634054214817151960962230156398629378615704582626373887629993988816386046474915859926721419766294259493021345296555966496320855258068420820306187630911005939363113963715044655206401958204349671392260863815873679167342844485684286488274556196769154526471893497167791875947469688843104100686540439016420506150317453278193836852811514552984703797367494266074998560999013138961964931221753775574931205138327680115743495609718367188724480015 - - - 21213120955855572790419143294451435033304967086645717391394008815644391045955042011066516262094862358667538487457542698985365962890486769294896482586313125083166473059602773782754364332927328806038045836887382411264034171460117719992014513086922912756669612649802037241640946186070023000906846105082642225150966992368105779156130310201025723801641260317083807884874545013625789708177583960955565788229406073204362327940434392798095285797960915230872833027518235023462429019724689207653045842259779625693493868175956782511508187668682136188081950224845614012577733012488288238092555090088538379318743677285512385789418 - - - 863272918865016514359102278451442414948330810888654528410159253351746446244282157052055774239161213887313994906448854805526184655485308038241921740176215347925166710855053382432021040150953691569984221146978298199243400617782295781550407133049641208737874222373306012339866394387671135060159725881236321598523322668872812878316224075572474247805760422982629826490428234641981908548490941945525872295328531115078499991378339511751531191259535748885611027087497917992358758772686686721538575268020355291147657433890915848692428937264610541730263277074171435717469064514724407237571549339487363718806975172530576223831 - - - 8069849907915860955771357841302482458930912419949623371993193861315747459666987043445060588566959801006061302858246934576587157003170437625438542760769290515337359479144947863135943057412767639984590922689343992873456455873420510186710009127237121563717681887740132890403359462984938067656165873326936665099300243169629525472507342522444774526364879134548511275195809661429862592685463046547035825296444078448208800149990872389335271544432495359489868545884408209140789505749430463231726784940304295024247467911456832703587002792738169793071580513643363882569441860455046250010540047713352354726686403777193072662661 - - - 14975376996872118723339954596388393621676039249671065548787506580869131951040060059855834623594359055093699615489758340545853324669486877194112635042729568016398853327198650433781931567975480750811165989130763167982828432002573155225172545901945031029480883173459800305312471441546611473651544324695349921266438412843201261436599538193259919541786968883114501938221759837713172611479996248861097354695894020822845081363227380807246203049725828552699330298700356861352613534625752747793046414614374397672878087094670872552345602561440532840561840001402602444559872410989933582639086404199380400596612202429294630803286 - - - 1842725578832451824200487834361577942904313848068624561828562209963610351299800788822877211210300510064549216198677478620321258108549929032670535377672974975840963494243448518599087544499596694395397182248583840491379544279535366059913025744748098757163420085126550375761534799141010391169897641218765327975391168697305351203150500140916221933081379878188079394399339920681883621860294847616241947864921441032585262333205670401929451483095779330339786006470529234762788755765054108161494732833645240756836205905957090725288030565215964311632547194557562903898087365015148216698048556855171386156669412094046128806610 - - - 2530043780092628283444035703362137750110341355572661907003427013604549374081435633558849169421592982256311021863053325389186517014198504154153506333870423595062924044664098658445809911102324978754908576372995386885859106652482263143741474814667864789542400211270773186228781723649417556449011359237274183859862935062095263629218492224362304149928339838564117753178922520000480113432999887005641574724802684238851774795481430991503604691974449128809940749606145225046173563200160784789886023400953548823660743076297297478862112502251369177434438173930616525248275167658226015459040258290594822512524174297115882932403 - - - 15900197898479427646761015813508664373431321596580482114911207383879008662470377088147798185156593079293337447437082936921353836257205547022693729834362323646508649041710331252144348192131617830856145380329269507713837202557850148410947123941023617943041975516465283167902417125957564183816310209980334559038569222544149777618506675902478551496894869323489871631880556008270362813669904669160537199672804066140870221576032108980820081119776576972827888207668932557870716635639507082602090397887636097055794937022366464036625733092275072127420816712136723607414327823030297604791122419613141627872165572975929408408877 - - - 2613467183040337779153526381443650856743422919844180655521378481060353203513519028310422091353936762409725743504843931960540885672564068545620646935586257514335034182020340222977417842917170300369790037382717086799653679004379581700308025656541630238308941277782250665755776367246391805063928777959175493431671297965150550853854862615167985549558786962451740023227291053517980065524882490285928590480275988081723119440860472389270815449685637138815265967866328184093198113288760542092075759620188321679501577372444936428237362365709642206520214782708264750336465354163268335041179234679828547756220083445551375733016 - - - 13999131417122432796120816275084489123800283793208471585016667051232164793997259937387593338491644127742768340162061532300400828097724003813531946990176680937172485128586233628594472320189890595407222173615395460250269594974843350343086168728484132822718981099611522452322310062712607521316783806286352907237305804950444628639000427715275428795412993814682887908578424217571413486550762416457268835683557537771525869748231107890023177293381097022604634284841321780971289018590706572084158447202210512259319488214113686620850923827382970777739414792306856159555912175020722058352573373095253179917917242354874810062221 - - - 20904560520486735358086252369937762856815190773953510209992329657602640080162303991025560423324994240786394988186597717297250828214509439031019663044919812869661261157537273437700636401894378348719884527721356621216736975154848809339412462655865951399348007704415147394695036798100867225097266944297588758060413522125920576725183444053985877140011331152917498581580988974937184492814896404165791530499241826805487782127552055499175903747339147697925541768966560482339739967194159585920293793942499765908713498545294288002342487027338321549591548164280474127859345786225158153183433428952451249222526980738281748535169 - - - 26387893739589785491947567261364590829592903833953709638924586630199338316983784305067724446559052076225422250202091329315898657864499754355525254365562752855365754226002050801366800904583063017161317654217767191587277556694310540625775180853006541960509549331782605988797726828651148036969830149405806117904108079600540091318098675628475194376954406500465709014452704042692155917259929269709484335218981985296114856262450577592811349180531764802504812225195489688525426931116478572522391839337966097634738300530463266500754292026260218291902750443266418151335026218088993608110966882690046057612694516201646043976353 - - - 26468815101349678302296863405771593189986425713008782183391866367148795986941859319634929153437533046002586054233283714093904665738157734474652936312593780285294755489011231599979410179925011409551063695472602970554811335649154432529113829014230534786907828508634828924112570719300390272602341428571087362296127358821376977712976315942783243160283196941122880278628031007569587177060224805319000438583934382572708793960238110023290589683087548337253435519237440226967602279428707887787731796934648194175932436214129739546372607982861199285084926384951509722866607185335698052740594895169284012447724225902033259116152 - - - 28033018003973351614803163104137842414885587576386321624883736541240721142000310850097730342091918309785431110798291344794052178370113143138265869150083360970764450573707153579093697336228793700182164515757744589052266813070390170450764519235464976464102870832258689630498441307370760997059786217180496383550090629940655236501946150041322830224007470899589101519207547098364508118038931459013784936741257950327178869657012493463704793959094022724838583707641567905622455982108261146577075198847629924387632733150691902826897145116410269755297448950012412144905690596471030957753351874265882226450576808879165874322271 - - - 18152539362352836196538864789096233377538199800116209322947177431059288232220839067329191325567088460970160541116006740911096214580147881352697539481817831516768612440813722972025043742294603946928896099546666064390548940165730539782103750308536601215845332213763963501673776257878034801756344304833827513756068436816555892186593460413499498873655289558336108814237960904570101569494014926826229349935838251826319362397664589489463670828233292114324798344378866542162003467906012328907328297879658620426014881485317537458159489959885026023983568756205108155726425141802572787748382288984312461695160301095145556270183 - - - 1429076824190596596204990164146314971277054913453975291009366465305205510286850612887514224644576049942032293324727711752254857692578321861562512864925386231905420521927410563497845386321875133699202516712465767658877825339232358681742385081040664220687920602966143810361061643429449976638803096419240203352758215183876478769027993041962164549852015511426871829399183068037143329566128145054686660516717549459291150787441192993224627563405016652963465217133335110352486273440423516242814304872012718399399233820748492417403920679029004274493871891021661832435050237508517163947205546078549787839777084603045135903808 - - - 28655563998636809835013207108739418026855791659468812017363251451976443013992360733102009129764228055207144177723729194008071762486028964660329090016695451803247295525675388177397537138700622609764900376510032566375776478424977800386390071552364764619065778525288520780644801332945076620053591057828832666402544053813877940545353477451908389766882913977763246638834815880267244058413830892785099408179910065746948847599799366380058753937039464299714497298441574738596327184437100700137042374870112647605432577909100665412327926826749192712388342544827542323315926297279037373000481503211796085002040842413960750813403 - - - 25006824351920201815403558550164835390422284990750681776894507470946779572391490732506800589515479736881063247042308240386952069173621174600140499224337563467087228887489736217210197465850055512380913630847319346728790750819379830986364012339110744717136073729972598583396227992068230289641599493519590482446810944454676328203521360140278346278157173937539886690370932233539861878586564248049287237732760471321368040129089431681932364678583525944633556905283166120980175980489272457368252976316245326762921896785023340124329649557339400140850834041485726990633889972864553085295514351573054477812819880547319695586568 - - - 16950954469839497364947751760063039148126526935546999690054391249894379856645151056013365635792918879721895507019770774801467501538850987519421171249534882424456579886909383543121836740116665518995796048645916083900323649613789058086649590187529579341752268176063037187940375749163182849285465798787228569309859804971604022584838417105187565267934353868450917542136659989959054850240014203975889959604631552693310891159341295629693264159788766282945423446293795482456172822874286973822864047353035848977916119601818742551251003000341743817303428164165857671836407429159600354139625740731485059601786719156463067388772 - - - 1550847677266895341220314242806619398657502197129689065004092441041739734407471404096579802514454371533932487376564309226160783611334059803259774791459215007518861539510807476543340299286762466433504250092817067706674873072240043125782165728114687323232956883721606486155401927237214661518001091005012096936203269259860708188026496314680837499286747891312964971833390604148891739813117627401085780735342898828177036853441843027213619440366505740425409494782432565896370182576893347529650093107595867081261418734997708010638882169063806175060872180623736919869469702847697039569939212943209157993008605209602284519872 - - - 28023988652036071912417099269742028236349443645822745270898845600701148527703587057919794953913996759492128175600309732580254649175004142439484610511288864138663349540653709854008128607783908975299220498038347551318556343533303535568456657909807696593105902626667639394979392332544528958359037468132006863708873029089200448744861140365319080615404147279861446514837146283572156617552775989808261368515985504194708500230281941570241424038420812218975117589788312780545837195534968305267709135366128873940729993330804208336495535616798429385180874691273800285208180354997640434771579581158509345571027924908439853056178 - - - 24341591910356129911355467463377615846483043799203598921286443354226154550063656652463282300152523312854383694713635796818265037117668934356176539958658159027705630119751776499728969944647834432222715657963658304629353178435274091663438978651034147396823638706564126332503826658778297967628246701752611659516971493148035184102915816403573236439161874398678414270534298741325890408826244327248260484460963783407797575630772611487967302817195708610126870027389271302597748281953015934886968881406594494710045310815420958572619672760215180026161217149101414392391457468561167001219315403147766790377570192851655348182994 - - - 19128460499228156979677575841085284464039570975436858640371652327667380472531491512220222636559966806994794642155900397039495113622046232538082853049309133714858127241032191554777770759932722070322992577773962967498300052048324354130787967241460274400711001104844476331157187073361749459173521398846899686359364466374559758201267063163634148119579711989432595276553904258874868576801675735732356884471330408694940802800645278577145439586749856866071203628123253345402127203796045389561216627258660022287520766202538907742363263382279831000777927039075862103109156839050556263458729213910756744224827766183069536802969 - - - 9396241927040999677117389905394957340532570351926497321764732203339505049534317579388178022946942096227610666440947907416584776946521901658164075037601006304908310941039571608024782130688929121103116336865151940084486392403918874953020597922823116644878531012421416053154117637868735582251120822816504700088129611859227751518149077104746299111596878443161939524048317686224141871874843562832630446227174880492947446968887368399185355941611706168038244914004215489786528838784376513391749503419080394970655640505563739001812940392713828676103959524643917666751926908840245619546967345933189430481329376732331980179233 - - - 25802743835552531161240039605370072071346753790776474033985064050624636692257735854490007446597765535522591808845972308930961969666855905504183653007842288384460780127004393610899956605561541478715472959987916330183662017354051760975730222793514160386478265785540463129624701020217072325717808602332484567325437087787657336015260358055962698442713517126747275537730342694439944806863801171758612144202741778461635882174484775870829364395466249697904571844856823895675276873282051041008502400697271216887357066632644672943298353665788030979142573292175665766310621781965245518913458547154589195338061778962864379719485 - - - 23521521763526400736756040555522721743152802815431453557690847706554989118176686079597670681407159485535054912325926463106911038110787267001894174369723877819430631412000666689657503003462131184839805945255086504797825889291652937001636221305624215039543447850013448236142177081539920515605716489398239353630242846175910971976519729516673482315722521706450187593761948241696721677945069919857027197891381457641415257108098733238028132332590238741265781725190158105062613905715344640647083752698053178974315545667828758403529864753821544309172847844488125001427307573391516900422659340362611587086787403546007386839429 - - - 13639279465349951030116162964721599769098302799563901141777015759526916102256745527505334161232765812746456899558203483610659896451116448213208291129699657055757784986264038735340260516770127556326040772223934597423759282907466638436183603717091382137965693502273661426500087057044003488320675928832264138111435418294171701123844538826274140926704329714002513638960544600157263597684730697330150204778424574902796956689576604020230791189899350577167784776967649096073785820222110781795599135553176300081995511352312935223524339481803152574529402872093911058308060847759735131729020661739138637684242429078182547782945 - - - 26261873269145183267803134752154386516914287295605747075075833829294638893080394431543016996111915551397490678747605042593332642432315591370969037102853492840725137913807810522966603148906745168860091434222668991749137476635950840182768358506814792703243857032385396947112557884356907907559800834786021077770195353232233707566301496498514236140438072768482964680770931219017497808641456474332744920201983793779852102668320443728816647061556124676368470249441440790692366521629741105495022597401861130469209065177563125118772798751624248944612843444584497597771291478542508343186150019031920808734149629856751077348831 - - - 19133769487237200183363316785522686067217605992734242410534853749594168892511834685529052202522222310354174723457979315316864954413940812043282560934335441582404020818312542651774801008407053142401180408697428161594167890361875536685198540999770976072364387403090382439322272004076902668454157307318581756234581323320268901328238021729243948672197902173084284348050060761207340264958208022061514085295989259886321685955233950572625378856561178937997015098649910512273507014660338018863886156633178786716939288875040061097013642446122079265000674402846478463686640058114650620824411767527135886465199464270771719792814 - - - 25159061975577135675020136932477768230163879698573603007403047310815661539269443376060343718413464224466502058223765732019068174835076040197603364964205579555480524276726837654703499672907940501991859240394770414170453289655157324613627445951081884422312328732731228068145825392958178090720285431165417114807806176473691030398459748745702505850906125389873566093338415335527118531884559015958644254453696016586953947740672819208461158698232882748047817888127018176532510477667535450047469352850279075477155605104079246581804559462825910076737130538570029195771251848838201565213991191110449116773469329192096075379347 - - - 1600148684245849584813189716347071684170378161747252362162043686403479388781275717259664956673706738630061651554810700412671311450631925746065135535706513618343428404081079335320168650225781429314520548761395906337908151905981279513780023877765877475255282559780896069384778260082312899263175148064479441147576190433764474042808932297734921482645820328174250800635256292934299666091658156499260999221760767921051221982279164771788157131468185226760538754120092486990675378803223092375582296872761293669174205058620792129362570181684980999488232603832414252517775132126998670765120103114848413437995900047091767217487 - - - 5378318288415735657288063662242717613857913544155323396021318564115092612005233102988648776061572700397129940073257938670035060286551382286769676760952803821069211598178083096545874389319678345563590509218970834941123247080719351968975937028325181759242372667191208601791389327698578875496759819581516810356600567161822663503300168334679520687917069190555102638231124683306240807436023545122637963484836236914872288396882087638959791080959914647137245999783090582284159227287754759913709856275913435919172593213209965002918651901656356466761431691143820959683080871544413313258085938091188684752181691481326038287902 - - - 8858341706164068006402897873640150724946633644285126836507491366049221159531406519398229063186018120464716469787807266277017920549013221406491230239661025161773006415891154231101076005154635519039869144778013981456218387201079155256079952693095477902333641095663392481754010764890352441687438349586886148245511411834903005196418793938716771413575680989541970411674923063633608649497563515996590984426878318421493967587007304654128852976431616314119366356404176978745574912095554757052335918150607413261669723301736409326273157207652904546508024821839089783262064951627123093170323742335645471634508772965905834947598 - - - 21396295806203243624386586425720217795116047203133993284059088243250278648271723509032285865978022363535913798933072697898862172530444973686865940937646774014730659951769062273852253959236061727655796272287329394129994448203867929262832310966921493949023719989488000168663897565846665196261052886173530490106139939060400569252505420085053016997922177933684999572303226418088339761187768461463728252199442912103055885417969916421747650562948713260564772715027828269131790869898816784360207171570026957415976668206291961205078898362858012211836840461191326037552386530746900743497900692387494578338782734906267260096431 - - - 15082334183611728941409249210066476649615506272535499636336993247732667254333450824746426391344747907218820408102638215541267606059792980203631126498220765822442962268783619408554180248777450361909334717093001382863526026712700884733084067912487398408560787245095383172306415559820245152420011713490080612284499779637589376812836262659524415411029418880635458184751426825556477993989061306721351557303338108034588378704951860967980272165304556522854658129251821727069530398260370302751008100646142280029690473717690497579440906984296677887689317560803756933938110828714437440179504949003315138433081290375273778109209 - - - 16457860584989885772464912908764508625462051454008057387081223719345686618387790280939874990374495188461872376098509202570130750900593900004286506210378725680287956918289723152364082102977309019245804564897359861669378346094838443687581335725320406023511681358860035666361317892305154494658884384646769575690837486828702281964580144673032124144318316196097715953133439282646848967488892625754199756132154696129986176314058753114111277741892720004002608817997394720990960858268717346832718524727058362362734719286671874792444179561283727446738029758153757649440927838546911713280216332973694546346148865375296215698247 - - - 14489855190519407856417233632817270105957866020179405805383263246158275098332277711878630607148733936311721318014889600112814334783716989109940404890348717300393871189069750180949724718692330194857754092361965395112895290861663346714488801055231365129315170485329801492911986694219216826097577537363965985942496635287972087090830487962762820775046676645759089665496777725525862554741973809650335658926879679616267513515907238381327433474451117960164770949850966566336259648915115688644107816326350344862914250553968361280594030851782542549366070068903233040730156925302910844602813832722991245590126725121530414374030 - - - 26333230970942660251415091601063911788801125974160725595720408127516834135221217369752799775098346249908625426524565577095277264845971957391263616197214640405457428515682752544917126754614477480130894412051337477645059091200170218113078876170069765996404549513248546520498383201489247545838499656118596709643728765650210586344543555603917175342774512030750397813099640784293011285908039303241762343535204057862899156466915779168254140059049626429239069240370824152693340799943584401486016497921101340894009718006043302934903454249342055933003378144123616588577415981595415545009479716398372058463329179772181740981382 - - - 16343869996552610968199631825584068115547596076824848732702931898770022213366704967184605870831525061346289494886466656192820841276346078254068817675371124831357061509652842974098713992119152007396519284284388640822212355583908063283897646195056490666936208783484083454416962572109223244255248424122383192038664148349728407319892123408464525663069300529980825369934275749116345548627511694532305625830338233655557005304238598010022499124963975011702152849302600376858729074509476509986616609865894728112588328294085024633812104287574492015204373529573489854487953751366076099575748335841846115023352711124314534738487 - - - 1077894915516641407047632273200478790374445742864987509316411318824350949950101087608316635409913509232718510589031444994072971764397449731555967283982587553885914304208861571902278735058794692276198695726681986751736768538056738889595728228906163922843239038852434630948634959861974162629183646719927420254081114868695484915307009841149948617459764150197693947174708303191781963719655416936508451411614741603131903224805394229306112004232933672203386116119362897869511530125352126660454717608247652878489430395306313973023615413489166396713728511042762588400245864377241850324536209357172575950961794616038965125026 - - - 26577273291075811316448140137291224718451551382232713357046009494406915408324723018017642479773682568600051349129105573752899557605238092444964355254506537106446245840353319728094817457101771238502110230836413092344794401915995580054265351194789140473839039964024568379464403612810522631229884572141525135846155971573866049367003035115848500970477116282726342370021384038216638918038111300270363781476171608665442856249974506387674628035864289880153217435071937466068111833500204938637216566346687799843931013424736892326721157084468713953894263728296182866731001937295908416304274245936724954697780128072870518728641 - - - 25471043019563882303201672371723925382785389496794850968494121868223998680570674126738288576371745928685450030157857874125996449664251089328384670908978485036795037622501137038453614423516208423594912222128401704004312482286028862015949742630978510645605587242036550805003559938034869507115245985106193806473294279382986516786912694922992052999121278325582534335946137117073112528119688707253831625826444515355689267862273770109937137104561478628960454066698764154988082781884642195069681659247229418168092555480169645894448816977440673983355646186569590798911332167705804862759219410046555094053307684825019952484557 - - - 14706188975667696219812492105519968578276866920802645181026885526228317494256093019093802715388245677552721645050730014249283609887382097551742468821503430216229049457414632069047966516321614916097361222075644428886246291975862049571667209039372597826212389017426315976328803754921164805566842117697544789603850903675468494638754312811015675842639670816614861891481930509451170583730983449690411233313460573901240650813444817579695294156239316376554705744408779333338756558081476518840806335932869430290955586396401178329717396611984629918578967786259385460624973238614350266879167258269684052193511738422522308285462 - - - 9990126185170799203107917926923657958038945230833841468503020399789705355393691381243430877987065029032782207494387717999824570529952921957207197882866815623207060320559648674145735171538387560190479261821919745163549809651762698407708323970602411063351315147884085869132370954719545345299986637297659756950975145415034683456541771843431640911266399369818037444664630573603935545403076669150159840059948046214695509602855303433691676006379289648203545961506589325308020428238068623731960000475506665915331927020731334924375482062876317539407410329500718510351362056325543900923702025865016011062393613065548977189074 - - - 2048805488071273146112719034936349682337892167155343680215567927506406040000664161305039173421810256787499246089674525793421892262846096544365951798098248082987717076280864772881878799462510574162151694402845507067044035262780765820840170653638667128102178587789754991662733531648044333202657655536248315728341330608868841483858410590037045146696011545331763841664314697324739194518500975612554008993989476628326477307757211200595202065898271614356139415322163185589108415128960823406128115457089013979436829047694612181412439156657609380530776054895621075416661190804974543946377579076876411624680338472035980688037 - - - 24088862760123226722541726374056004506004274000559071203404364143863212808500838655320619615984704130011400929961933202789242358453922709660834967823977923017278228724594438106741632592019019679993784137870430347386522967035395533105114565387400208269410704372785648247291490588255181255138603315643102564921436703958221461302590897593796413578646959794850483514623574670736198480441254085803290450137698997287410880053205604901148974812647890574506509546218558358639086372309881524272322938009378491571309579868614042695542095190463761215118169802318430651702248487552768193390965718773519424743401591433471220406964 - - - 8890484889925019302398953654167945169083129539357714324292642296843104507977773403046281884587098158714494377051280749353172656463231717681910934151879777239431205587873285539834906210085953272636887450456579409310413747146634452742496763358267722780581951264641417137606519491894112240860017188707902901527954044073628119953866146744583048293125188844132971120436595522890580475032243005883645080129428414106574172314989239464951388048618849038345691265733438103939191500730247863544968769567263725795448362291471683424276203642026121027187274762963739478851007156534134891440309258697487913994370550810965499471081 - - - 384610225194093736033284625175531150072871335734764687680365917616552419276046323590106610434369295572755281510410892933623496698314701440687382352882949452143676511156866619160773803588699964811108331522565040653731437483613916993363818945638111983564991501075607200147915105810066725830201574904131484172499451376545399993317835389475519806642674708834346190963047676776390779294672809467661434142504807381852985311292585932053286612500876962815605872197544890516398194302747750108578361026913474845769364352580499837503303388734676906156620693990305123134005118501790668329154525834885946526826065177356824498571 - - - 18465709558550782078897118453353514860948127094792289467737780410451852918709769069282089660565667303662452894684272416354450346962291414502743397193134833064835925307330376378925880546176050918516588041191449913044478491626079951200727944842066354061585912510935254847509567864601958867599185041538005982210756388426133765918776402916238952947636472882449118650039719778665217385323382138990443672838617676429224782801798109838253459691828064232281304626581202173927570494053080905841470586703217181381612245350493806203469924725683691946807739913716955116662148586200350842533443289423560472061841073403179883200104 - - - 13265725438646878215904340852879870831653588758703962969658090020824244795903401823329175006381276822313284748082458165279091997377144362309644100620470595871145671289303910147918088961136146229963286913716978352978169978711683119829530152761398232247289602561939627083973596034638312897435260005622453163387387574290554531807246220909896115252513152276885754270237597320490946117763297941208750370936160102500227340001282779675344992220086425114903695363472066063659962051243244569717848682637106631067893522793920593667891517159382478989626603547206182926494717606319347167175454482607934272725405972683851743842986 - - - 2299335107450704932542230585654557337456748910103796005188066204890401825614389116903479797105904644499499758239959047531419791184049092662090209033119687556556464313008221099723772587106637978072168357949942643993963527170140473758638081627296218426070583629690753309859993950759944212071648165401498148919195160578136177997859370904044936768401986725619359160907706847749564634644884660194478513546252031144737847387948877838049187881986273549602440608177951757654991706697938775051769434832995896950419900128313662192215976247321039713859008059379270764052403093007915167199870477215954380092643214861528658185437 - - - 26285932422110385234466288750818505584539843039105683128534504372076680531108963634682483135888223205354907623692507112517496117056921227950377453573594375374893601619415515297499078627345227731745870949893059362660560042822019720219869738621182658272768869765588567248955917816800551984021126265377605958306443249072703740043158649912909920315719583953746388944030970135548839845035193293119775637552376199759939489108004027363913589443203611395959680471107253410893402139007966607347676722183514729084373235413258814372540911173377700406103843737461135270194735045909310000568999352693354119020973051223523091400576 - - - 3567987844123108604038097852633406117954970632303852105190476976680534923307218027688432217655579892879864655708418945441233421492018909587244049332231162069093757747775267682227745323527242153394071320618666130691330684849191728061334291184583877996020408496325801756760130619377653944569492787883414260673787668277529448382471242634572909576995282889847156073077912099482997841329022069880278861850577487198356799828556883877554692582282495969577485878306580321111950125858210303727317759794588992083881921405405952209890176106850136160788408668248507265509891730274206073685088108688472537233292364805900955890698 - - - 7645315611434297367483890679008049615034686776503682341917182549099168426933809687141118082261457571784739136524612425497297744501918314090590529449616000378282819523737321166025259415885717549199358739824103006833901191284196160442068035610567544197039646374058412978333296625152614470782225464469181487327706800501127554916091743945058678534724003827604661467711031968647366858422477013480771812811023350842530654873737088661116456557722162523585263699030396878730765816346415654732613900488746492261483568639456758101898511979105416075791094336550104115016199501471659120135433970464079059226441661125424371765597 - - - 20020225297200809844200980465649271830485590216630002976664047277309971017942673180435090139880724103467851277703004283561860324279555797612305964252312976321039510183266696502668178324061719554855245129171686215564142790355000258320005438565549126142653342763270482566381826834965027705250959852394672004389849262299029390548416374563056328448177255935708456141594816186140514084965023488060955364714716538527318239190287215090308075074943113930897183691482325638334815571816568946288550883360104501487619861993673872711716589302742707940820012922003048547610275597280179608539372587548330906873279609078719329372278 - - - 21754619926151545442282712902370641527431241450649992624564899714832058462794992421613861457512844459162925678228041361301021360527748788392204815067873545283103077292047526275173317473381865229864234304894814484840038737576990281024626013333861218592108232216514317640420671393375441167778936981751753965957690767839521746923590693010561236895551362647825523912499218603829705196989796958399627844803177570033423295618441576726785621358089645195451397081295530509877460016903636492766236241378182923174729191406545951665364612087064171316409156473573986440054889374220605367609221880574406130763006008893712244524611 - - - 11994003465662135473957263533136436602378728955158813980812334509460571186688032079428218868550967148673151524789911196332357732239870313983679554276397309248584675885617467142391314390419903575157955468571036816291544536244205796313761471449113201404942055968094694058047180438353493743240529316975444165757054264076585359508941709901979033857547387818447895106334939500183382466961207655843356625043796465203209224669928772497158425798919758465365426798566672409134388110556745236524503890189049520053873562735080643719204234079147358356631670224176238885230619100405536925229020724742268730690875561579643500236402 - - - 3983864456351126498253152744899719790296487085923149182013191902862836572264151704756102482460780547780261060318551165549549513395938118484802961772419276648733395601095491236828732816682601369937129883044080532505416236501935363846437251463546694350266160479726536796895597657714024321048348184053714717616511732923552798340390326853939419649412258513226326845449799656060416675453285662438679170999729912168952473002131145280447981157836959844156153739990490116492361400288478786290011255104879120521958464433996648667305675331209829988587430756147607104016437100566090243284808903080179767821901831961216725877880 - - - 18189310963927624180242536438889186280881174751067531650832465984429064236812952378647065974036187382321761119766352853672518547682522032750066037942440433762531875028577146654616250652272021090796337669568634779458555326491544872195904798845075014435477891813880850443619638715472019007077809202132488730794937505173522987910718925840013347499918717729222899299773856447341615233534788263191716777274958724862894932345593501080448793274584210977134917727135348489452688538230530954996167871162620749551220139084936878143156854761225636924764493360711574342159395687572675692801369527771420315851586618648266868691242 - - - 6701464634720116259694681960377531800311652637727148553187957340014022935212065757059194384495166460335926729347599709078726212018904505699127438818498187364510278209982480902277927606156635097707803728893210569012993541752211882052674370270732838024859669372402842963980347792540872028349477415542875044098135347671987614105125491242724969160017061705711988493434981957119336542735602622868851369601910608449164070250580436141829279536909232420336363715522214178227926986341052314299153070452932872629584311892508528024398283020573073888293707920643716188676537346833232288563983025686460899606042272044672436479924 - - - 28180789709638618270373852449382456908182110144546640617969180330657610465544061877546137728516819644628290745800196649921362871163340648925036706045009596774198402803595934922686648158432121231001749177448968176336940783693744135110552783239029026936818090469366762303055859347843254391006195097929974403463982441779038414129551967398902957559255242073010577443214550932408020031274429047013994713937151415508341662557055329179461409593138519966390472191494632632616628049040749726466309181300546877670076328819105947453598556252672858058474767668893367626579802808350691884721007521335077772162461734835393876986823 - - - 4440140719043847293577823192691574619021441394803365465289826646139051668688540323142524474310714347899926584116219816909634820852203086559246077985587334604973881372338090060358893343110006956229287180758590758745740926711340612391605055781067866067977371386670675211075186877394689385577086615776535598047008559376837323886045733683296019060747443184370114094078627280784180804583577475223323418997753193244737256814351574026103634511652179126007232358242837116254343676788651888339334410432784039524983332340291626438181102608338708718373427547468013049941268941111116194722024999699916035871995473696105705827066 - - - 18151626594270792600346853806551447618579402493798354697579044683317512448804862325726984631501830940832821643327473274929594564166094613795076064988921595574453707648781022844116740195740411714515390131435495952624668042861294922800765348837129583636097990054102371853458083274316694882640260900790074603384151543927714179131888638341394552928443082528279805009939684605195599903583668622304979694808586925278850915522481643842826975998026247569212945391536177440678472826427424728051923176639681141578851958778037065152055841711454342490499745825048613751658967035657795591201897080850343917157305514365935797212463 - - - 13025682054175029389003425071853265331424639862116412909994657217227717333478906596725436311692279072198042441530130868797386011318115031348545762264308895602502368245053613475887095180492567314545240094125679220407052053546231388408926152418601670295056961954759110899241791853515650337150961944334447363598138658387832533756341228680959727347989732589432592099944284644226259670998634868369842742496934179999367486366262529178349203694935608866417443524119734459091526835056209970923993926071684407842364228602131084704223040975576327840872980335017694920266018010133072690227801814147714604830484563567593365332135 - - - 23224130792610858105654250346147055026674213021646731673151322274958182490677008937865135051024734807600609725409623429669659498932894500904580920808225037614008120965417479239952608646952879607455935041777161064324454565544821565849878132224896374862413369785042787558172577781963268173817154616986319604978715372108698907684345097279244759582041425072259913308511206218054044998391166067041787368396084417405530625034169396147505659088208099131713103221088618817940958909044959630408234658003263978350750696733665949380120678120935471987836889021667261806954167320418018934543280337976481121397488883056300237479698 - - - 4893387837056643495644920434368532788157037901152130787306307676181171919855661765624855477617369263761552902018592387372551017381947713221259873426252383679914454968479215917865151191045943546878806441066738557397146544807517431288035259025831871095966651607060132673725291398825428203125095780636324812919938996459093099735956642933842718725018593343253947569147001401948436404507676761072602980091508295453861747920394545326667719962824732155393058395812337282961421386530107602664518398009761060579011422910971886204943715565620301323789060736094386859455964775122327584127910183554204315833234333417082543293824 - - - 19155670980453820377624785685638200814899590809356052342480416857414068477611612038011613725844914902355345087132668767473974003192623683603945744353374286074114037952599665748014049233299046720760550543422821289171490967883122269459705644800887292508952917678616078616247064647292794310812404652665520900151003512258789511385327774896930671945462757229337308502980537297735839773681965042456354247407195375985603767839163595959881094219043541124959835381149879087795069128382057930445325686739570723680323709320768612434516608791394312183734355573107538650456959056767365949768692127848705370821774863266468475581907 - - - 19603340587051095247070058791501282737540668585137882233927370324586148665896763259233693701929787080842242540674992277713437635211987763411621093307801753287406628366362811556705901838345363273092328338122087731547497186088097819190891977982790783642298469732046733789172034091385438809418531301333749591261268589979733415085905237129838181790961011006148361444849190948252130103356965263473389959268176288478898608611359092315413137304196965313622088585167924505586036476578974173300261576006768575019073473337092426917144537850196559548818529837543662563679329756610017272143021866809760481799707289791578879012751 - - - 24180776992947005226930644327013442090442601218931940517818400069973848627289349608413665420220187875370999886259090158109874960355667098650692275722390972724716167621184770506579431743971363985982029900625305155127830967427811852524201327959777724925629266907996070828449307795414756190706727892999298388907159350311945718408802672634889579320143164056158736642357581247092518784571815141912934328616419144728332572401450613853569991379763002026029202638830435182241551265580239099646528203148656435888706626112838349891192575044181818877034806638833432279639573062433036628111618011770632192541745755512792065942531 - - - 20845967460249941411729722331132356742851039351586410516010362216993509342240365451884788519829064759781575157098043232473870395957896714353127750869601171816464425339537805870136160117883092705551187637665560057979647706484447857965293883667155967395515823604077611747599999018486017693552383690244355952705683841475253403186306437357392347349038315332183122951922532408671247460986883164431027434940310251542842388590014093774244470511372324845116437914171645785932488168193242561411362219409874765551554246478896747677330152011057940883439387758929037684000189523670732738755647355072670119809960691746871067409548 - - - 3543111839549071521695773615991577503342301351223599256021304535346995410657846678687158621977082107543501133471759683513097174935923760669417981255940266747714593591637633515907995256053008978344608728839838094398245724169873178635422947719503481126572781996089104442756965806731215758692448051768461964072167484108964954031659930831257596361887819887032636116641311811081007223600129460436981215654778224758102053806991860985261233823951030978415147226530058868933048952905155743980330983286737354591347154753832453252754138955450308694946208498879742977593534542871858536524062760160906428427288423051534859275516 - - - 21647031111967992010853422849730557011664164295019526049441503144999916865812789273058319502896997653441440602958773777341483617250288582377786868050762302835969121252277768901534078893695291337181743996569978694415074924755288128562857107075747503122104855063355480922197365728069156727563273968142730867622449721639688622849782130289973014671286929521660005605817978256545218813250023418239185552935675242466569181704937808852378074495073962579891164136974188687002797153501209232829071595216739606782044519942944122684672114909413506349446817208126621789551655810290709501823050575254201988007917607223991625525167 - - - 18435741548141749891187870674912064177037273538811271353481087283937576648033355928951434908030543851158586177363796852683539363584616551610845911267289116959113254795794161099946288833941455741158740975500082449659728458794241646930741728816304871211715676895774995902565079963755347772666508700408151050013820338136423625928858809661054312367939458406364067481607505306188304500983683274368502987951931523969764912125075581035563624840230184105053163685286295090029692533926845838991366664994837206482413849790981322134141656267533212381855947280804185863887783565274431227622987201790332663289828561265378891055168 - - - 3779331758821174279650144772826131355698219052448168643023277331472975565840829489042886987975021904903708763595240635196366436900749059876580508041332859899988686589622510656668303416303494142904101332247421077983571095630864922085038756751417470899991362455137522322246928098179640941020722427199529004950409717217728461180872217512910720908726497243936266793737367849587853873138670337309354166642624555332482664893207743479790744557859674777284958122648988605713291208628215136165822200952583318009493518507815922796441957726481610444659877587719697043017147311082704959964742423592301012136847793359376515035106 - - - 25614909546844091114841667855708024276049948165768122038664968410568455026159851387567713557883309976707579766484311740285510611139359820657992094992515019072403649652113812394606502017583657932665214998003480118570931208198597186847763311541377505497536132649988309621180470902494377305210635156325979285938369645188588292244285206158950810032844228435571146203912257647170455999675980615077433309398751511651325668439946608191923925274954698545472274423052773030835383624408406115530067482114688679493683573169720261624492817833526544597772918842039519386971960926492663963782611588579072828996942585543117952594453 - - - 27869777089368900088242372733715939694255451900575977327859021692570045562382437822306013101542204695916670866164008694467992276606718262326679964521205640093960771517529175139317872699354728416971440741978867385044593969229946702423444543369880745787239028219360007943521903268056060447468729799305484275575058540181898347626835064393412303933125376452262107946848191556907427000795021214303373224980879611686126471878666305588940655836436218066939156778148017583467120560522418245531595269594557160549755720183109891237380934040373395987888566622872596396081746361715496609765033757122704858783944967243570334216899 - - - 29564297225955044802234176690324067545517791710191570854752935499946325260360120247729187021365132913988734460403891768953916164079559651669320221798412603284237652811510864048314849021550136439876009473010971540454082774127117331032556435124679088476325216395782886714356611326223320135124731868662546025805580728442755387307489444801017384633405377873611551906161448899259761186413660065751707996112842010886455914278041929634777762491534712044393263773204777292274226690451934144151482825211538768102786688806759100643279419467126010232190394134614163676113253934874735383536173550937869974902462241540984233048464 - - - 3984436350640416404974512017370621903843021042531855514801777324922510100131902687967941632471413731569193461793167228857058149504000599586686492956899879195037830359853121101827130789797706788452017241012403962854148242874513617113118234622956878730359391978845800311781599081660875254851881197591898854578032366459925464218571154013428152174221566288138382624472478650877565552477296504398431953801909715639291996082210985399892093935888806970756004266662641606932085676766305775016474421665833778457347231413597588267918091836371086075505055144868714088233538182500518394516551162463926340960744593138565538494268 - - - 7015901104407757284348354861264238259510213309082046792969829343074478951068328010627843589884221549448649031217037406609871357041603506983918087598391863621003052955626712033607443865692938632349385639701802529575324337640943352073529554177021588651839988258717695758508722218862102524762913291367615711011546586318693878268840400743027887100619731078951657247965277483675593042428849841416853940721397843169110414440780718481975056482435234573706480238169994790948852849189123549318699450080457602796879503539437193982716840230448339759401561152734459702587759412150640712916033811393752386016763481766613528241870 - - - 13770638299087366689721420248928565241225151690536066744893325397333561545200112645458571279925815327219495831481306043863906444422672874135926395168394818205948963533043473858430363647754140063801840216819560097559522808973279809100030413657757089204999651017723774717367844985771122017357713598903988000296707736094014620448388862234250179956848125995733899106433933235275352560426821700789770150514004081041023695401587547870189636095011457058941060013325707084439334517833846466489033424335686578837223997956359154006444501193312145640410930237257446663598313186211054932051839637072781247062825304122754905350124 - - - 14754418847136381148152968284276679522519015059049498819767979339493195961379844347209438045738187941536736548987853850742702314414725699808775793677931176924753954560246823365027452293255165214784218363514315977893124163689483788343965670490651736383482323792479470546919605863146020300237779483532991297134780146763809009510203874175853307901183337443803697873846596260445448562147104886576902213039541926928629875138032228299923599017153187968349365788045760074550554792005421852328354582271200459166178752470668069998831934271846706676895916107360928537277595609322730557078644558617639044595129372558716220785038 - - - 13606814567854196419483309029772545844490524834642594011376351542241041812865907959648127506722925288698399101166349273283735263359645163396740771764534278817777869976376549559753316270618217689588751650266838624585219789718537405712435954549985898309641907391455066453164025744125428328291832142974754402345934418303526886964297729657208900243195988849519255276620532421033294098696018442711144481318470381793914785619430174865820738492257735159189293438831707126420346410349187492617187341956129745637563386707753543826708883118862302845423034766000421641760453576437655621162960474226213737282336926416215168991309 - - - 22995895208076534245089430809617597186179789769364039259529527964839853018601026846362297432235034170107291519174448322249231531152378134054061045685942649124430339961719191085264846611943555230427405606674141398350053545634016608577535206266479182170812735400016826245353713707129718858051675987939473076626062235907282485028276649985158261065068012449197381500038776847368541446076724153068868768231284271033542326885750969797179332730143085341206178347235719075330840248438559217076819346360481669187290012479149262233546551450558227558267783783139171792716814397685913369308256331147888267923268271966605719449583 - - - 11125385044678153373228437165270444562954555779461212041610125617226001453761181590911663695641494352512548944293840157044947380198449906793221884786700330914384211210532100851345466520949852471096263841591095834121365595932772815677984769523363498460484909539856895398534291459364856750489028476716818348473942118859443413458028964834672697109199332855013531707254668683360520152639183914206803887259127220284648517427628149162026421533955010676021960068476535708352826883688732631999542516223264385750085685912284816121266073852380974767609879962272717789790885617285463048172795519900053476620268784424572418868892 - - - 12366462276430842253089655258455656717757848645305438993609079264313019198183719552416740389205022370592648675497867903086083215400912533907237704333697058076255379973435226529044717684308137244282184822176299232259931604460632082376010562631077038833127505274965961587882148356946837854716812059530178071879780905694057333391436664333043818609333328176488380783889797173173499471878686889488269205638611089559360837693003774100750306190390782761885326567195600641435429799152639455327802201005007833149287950582095428286892609219912638702549303647694926690282658370570313812899183515148435205558411670759240873960151 - - - 14219399759031344497783651877394321655841698602121117916826493741086078857803492600658983807348923416999494398301833801357899260203977066267973369857814246665440138334987601416075386013662259571744699765590202200455141521600393744685422654567633920189980065014479476678859945718177586331774638067018531495022683796895051901834479123540331419815221496711819855195397674861560340574056153014393248551897186858235342382551531999298935469223967232731755978267760537294957158308999728702263158539279288443624889721764103743019358332944838225589408706323008731156508839076108434072643888618337627554100670064441034183263009 - - - 22143493596900391926777157823170569989962020798281526050833180103975469705621227930842084382651036947563067531673732589816715043946686161087485603744780806132264481686431095163677222664842578015923865382373803852511032765262600088145395578083459735268771180396970448544481380297552987384771612558865493932819092448274534367172504922495884680453377583716246097205037406984785467511871172524648606569123539148639675847477387203054700348601570485628694286297080954724663279320831067040627747597610941328886190941189484970823146773745809964755759338671950324117060108662239523526431504402729848979939454130970881304736850 - - - 7449221346072272081628197273755371383693773230292017475910143879254997199656088182272775566531208409143114508052400583204265038905739796703497931230080908279615534822626675676708841045094416955125384782801157459266357666337419172581529126560033191680343802581127405252617587017968030525311782180651544341147475491388279719561205124493120587520834201517793354522577799883953968179383239575062587039136183263816890710314189635070271886509979180323837226182976237535185759157974776415215545387655387984445088877221467131010408540751422387978962376640007373481874949156858278630125521764772160431544737293714776764484361 - - - 13943112967950563654388439734201897577128797867040246854635841530282919057545124504064225824254493638377140715752580119449533442623180406592782946144935555102574006398526410468775482047295821635942800426189090088798771583914679654129201509772796874831134457046159684812111484720268643109858360208334962959485816113160773341324195777739026753853996552288785608339082724557808770675289257614936148484049616590451608839906512441129225716454609791809961411956241586060514335502529947440067300618988609536193202591908620965141918916786111756260426165716230691187732724456354704629395611494577198725705970095293207297904434 - - - 19285179097962501761265458005611881646693584326324175377301883483314270191261342768744810516869198285011666642392986768768271722042785521272087507901327098253839051788747067256463408546133581831506463955197480909983131192501081788666137890196077415338921501963593059272478255513766841801630396751470119931969331871098159726568338332071662176648503469979532353935400242003884819091603045758322293264431210156395724622269237911629057888574491523331971916433314273118870406220029163766565081517667683180859580832878256803816306887642812640838129058500686762948894920871632405492128071634371148667700027807020244672046662 - - - 16072815925256350510659454304881273253508501399461816477636300539291857539043238355960376269202662921327286924219570694372345762738145912578287302518858163330133497550291963581769776325409419009672473417937844650520652447932664158229588476329371313986973356258103053117158715119623709929956468251646461785041122593290236614950048196068272482698779177644225177045849424499311513228507493514131865119507681372917085395278048793018122185801277607549535171389118863864682659025773069007027679813112780725539326038101021820388415882696547077470113370415195313916513381231306754278415958767554230545238717370039439309537721 - - - 18712621314136176570124968313811103416478033853834258157526794353605744283145422481383907241890588988790958624757674292367264209133934206815325404311376841688960168491210084591129384539456021355195455956523348455902585081634075158219013161011797531509101519074210139369996296183352141727048411310533967293635435134469793357881618437868243347711755239683558705229463494683376960283257382364874225647683533418002335505772973310145507667252289998278577491692048191309699897413040211580992150560766904149594060370159134724849042134152724674191217436249852599343540912511731090268340163070654535456304895704672745826781751 - - - 14279931214654843434293963091009202220444145440183399677344818916427743500223292941607851773436738062476024366507146289225399957252212472125503931638979129848924295091037014489766824095109670948336043011104248636852646932219853841691965859149131147788565368490548582372690029410164355989810783890209328337460860728479760315526723600297576321547356990076186256800427886951369380889627409645219519364688329321930285082454350940079164181890469972811645605134538983881190837378491163647828308934014818873092610940485985787399777016325871364269383364385797694998131246413471670015757503547727966626112172661461238029823556 - - - 21496756986951677975466793736369423990650459579809495336889774188271582241199609929896533144418837786914018159684752261006662174139374795837696648248322983668665663250170937965690473510790696643626045388751388443599317568919430214093173336874699066863861365628734202409173963726338695460975727119682524720941476668809452495879165588380453420287058232583387917065167173333602537060286080100168502135330308736817075338755625188421386952904018130028943369881620736241167155194217231399915994801288224273639298590312701410950905864205703559212028149913438273224351682443595420936663731275307694383163974733630309034677125 - - - 19049809342008255688035377431124101875595236303169440265904323196504199634902729607813320229647840493871879781736441046144482324929985401722755441213601334750854673505243548127716584026670293551003146048778635486029802151849596141177074324876352581651856844786942785400707801961230409562209057879746460670798851453259453872010178839929326451441817386128244804278595872100207466216667861581598827684278242391330609305482578280910596057416968985774535251427475513954284597412184807277905981720345897066786565833897920762622709337527314343082092912670808892270857952310722953835979738054038828240552165957990828069293320 - - - 10044596154785010935886515808144015838739160487589804570344742449535884288019192195860384310760046759817109703908779992644346591481743131834768524708564095287624812427063296550137939714455597681004242545085154166218996425895095003238737448087199943695174541146938802814079314135228432251637021859546021828129173278117984903402636495185970297274766016694107709291215964538903173033505645346113695538849232969897549668989117427521956654210834790700638279473565238586926695280407921051141733453414666330532089111556133142685347782180323338616105935431078575203721059224576922841878857710159055618695005266988683999505736 - - - 10486334077298257283640831747468522777837491993962727974091898315320745355234807203317916957750363083074518245615869744869799674362144870270574575936083344463736077457769771325902574392944371837071662816251268272967112358196332914221324347349040859763691859241918200928286738369670989899555065815890501352174097528690813177489280376550716489491188339655166490720539844839080073987625977866494070913512863591174533943016941420589729284191827280117276035768037396684971831933381732758703924081266116676063678031378815100478034297348520847256790734951921619045661408814455942677495001018373047822873662999741513785336828 - - - 2057712926023363805934118598309015111726890688140359366688981072684442022935939482556667210821886133705499436773138905178785876547733362472755941368683983684040196014431360862525068749541919859265365431778059147983606399933057614352465714006288651263296809147099536984757521528968997264478218503998265166090637784044562207442386209750517158093240785412426652679432137501568524822684750281964332782456232069799755743446466440655787396714205840401969292782035692048563476325993192992056453496338971153786933268323809041077632384407638661547003029211186401485143030848319480915452583211493285544337631071815214913549631 - - - 15611243721804712209134881631881793130061245525580450014894044677697759178827268561920847835708316077436198823447972742375430245629749396476414035148868946619582647918265303651170796664394171519207186127826950044660102054365638540892426085327872938183370698292482578695564286561558038452509341469868587246898602295002537971487045502760333991088316866946541521363137727612706591289335340596488945442438110400961401546880601235219857855475951553000985120959841455774616816918445459973677751843161798875884167457641920559679290106362721464249765653828105697844576245657063272894086852380195272889333426024401920171579596 - - - 16556040475606596190741392246812172395406125059770980119298877621038591618176095674064077889207260339781629949721921678461987449803462497937664057409906709235532930259956441108664512083418798392468774590656171547342684385884103004337627008765215837043098656926726683126711933571794919260744283873521777822366796827868424712114902117942009439847490762986318805552216108754836018814829209084746872917224458802120808398837452714291595178490741561674929036084475085344592008639682217818461126229131406044645286921054892611650350475064429778073876937632413666902614742686514502008121440917109685952476490688346573254261656 - - - 4550120283757140711409436929861151860679115495880217175440076040969111505813779778818471310920071650653110966384860112109464211315695417871483634137486826830687149751961051615987188945601582087919936229581124699121656820369150065278118120936004780540530516854232968729567945319245246810171440589093086765200398755326381740873188754963341997095191241365655743749571015792762048200783038611709729282918419158926537844429691525748884460792498336590662663945719280210701570037922290763617762812510102752307088389801931258551744189814114813315420259041462725121364694412607941209313878909009815069030067300660923443855611 - - - 3080369393346232825307964274499835054986557715041558960935740928444528836270223489017324595565770984941297219117952682890736289547986086115063714200940709247744799495619938184674611146444074570753118944067003514450672686419307971679042555236036503172162670648486739002730244233004648259614585174904905602295346027968017196772612226124009225903633957310121711468384420300317386284375884161091023135119672276224257460796737352614932444437389733558862825662709933520974270078638717851168146516304834580954188827223984441090184619040823877208232491442652694967008960427659562419884896984283027947199383185348209417607636 - - - 1454152487201745542444847206453603742798178001371635190209005858655450311744522803119627074234419337353704758380558157388871010547237808334400310843159006408648947464077115966432614144481883365717879681639535641569421507340743922659521340403374922798938811389771134886532903946510467094421546233497686541300683336125825508012574502691008855182003140204512839915341014282609825019029748771095377493967696433607307448535045262464152111058791493450490443293784778713688462738339003739848540140801608454175590899842454684795683874878488886383890956614251227107230977510678783721739157729734738239925837902545971818258551 - - - 15949466955135990710797427386278092761829084453134674646500136669902679573713260817624422289509240321641615133998871359759897086975808797063137330706856442291941493970055402009679527976439359412689831326570296181374690025527874775582452770338101893827421716697647422234979116863543672517104046429172944965710400935096584661215233227721885058044093840661205695499885070088087596783552973307754087291193864771450294893251880244411227664007430776134648854187910062856232735547657062660781689697903282956715377671774725979777823196262510975467515009493437065611900530902106209432523263145998436919057752582347168906092212 - - - 17780646947288631233539743011066527243677558136488179168265846486936934000819941987874242195696524636967731993322113054002495975744513922632318944217371595815865080807810254200082006185810788678110321569260373975952566801115723036263163966369972146309211744504722445800720235891593132128195921505628589119846564490744345990053630743820590078322817497933709831989899428664786785921011788077716633496097954754563076489409696382017433729469018928508410526874814644980454278574850880947640103686755575508362315166355333169804412699936958464325240788693361976891106172258820803546249093553234642650783491925965809055113102 - - - 20733914462021553726718846704084022175298002865668910717638519252314165454525140340336294697327056859636518237628586062929575336731427641143904859403672322489859535551778484884318670874087535878504906709664613088665599147748335404440645879977047045976857588986360839517430421218114558475931475438871317460019164091459808049218263933012755303750424830779011330355948282512967856633158857285760619340119050027527897200898994608075820347371030656701792134680712193016016256223256772790488455663704262206061084941766763965641727519978371395825659221911048326279707906504607299368639421236225681992807213954096206325520257 - - - 28955837062569055023214487856979965134762279302618550005819493163311059028471380420115517559128565408307612029037314083682945235096720232184000895390728514716783901604658682675621445010847732234573079203823064405142745080765310597686313593234549862844931167837554488432609289383250410019937331213298701669352652018722893418425077225295937189807423620717078080057526240569732988470169672206308725546618249951532889503868622033012742917272191345474565337899661004342059769665859305122717161583318961826978055890473018383328320377774347575414278527676934447515612328104447200531132356567068832452493435750230795879227929 - - - 14655607360688346182457189247375357729780542031114845500231462906125063600442115774364135218423653459135309546801452397394511977811883242802453635485878048598223500263502987691750621300792194564113847322739044477660178864733749897662182220393629418163169480455097075231377231575052520859937790913079299063753908804911381234974570372798080429864212072288673014674696806668457382170986670148246011655152935052939958320496477474023335560471375172689118447721038627720613959884413005628172145722212506659991825113917710724939462458191725604579220793312336232119614749255131702557325945546807836249413583960117494601517532 - - - 12143242719796134075293288096970143004247020143944557923522430310466709397496766254933406705124988487470298978726848256280751625922548021325427145154534899853854527655618702017820693561037827913209817116501998370691098595135884577226866678185151148470119218194189906719320419288825821115049005581542227870201016490372690426356070057196327207655313818873031503474938534863219332793652404867320465045360921055309782838790213716633587104255558113883915180523067102359493788487910417069978912641661232295686312885320979587725879688321584890700367191268160763627116451418578277518810130127190407961334730607527673428328419 - - - 24218638617724576122691422665315048097066847195514340716829979230335630868884536763071217020318976643137610369670831125991013946070586148787997069085197519360866091685752790031959976882432829485198825091542065089319188294765215809678135823824245429256851021473372274546462327601275720667227685695919144118731660090104589413841680019132227751078662265183289772995110297492058359618773750724839709367992029340938874978876293164170324061271647031973057747569114740282820358060307034008470818065237955004905698562099087946040100550248740382011740557598782554380185606193072728466484050154107789937236464024510779598851484 - - - 22729538263840629828299298106730299503974249816571166153857009197697616792765270356983733352138261197260686037870312269485902717691051356465038843728673863601790071055204239898611559641313434096702383570239864316918999450345871260585497977551784242463143279021196444635731874188684838910005405797738181865374535862607359388685305189394277943593656151499258903811410525586246477986529233995509465809189742904049415883985442710554896451339606045675291462718153341760444030773304989910191111729507936508693580361130015647201139026640136764357265996773030405380846989240637346843083736401570545764518288490494279945952726 - - - 7441979450582014523774549897485547653874751242114293248870045730738153228972056480920097241984274655787118710474097234185761570030172837243235703705193632071817016269855275734919082507113139569448260433772040861887143284775717997195742852048481067280319644893055809931723014314625929848054290623750637822674146971206264298138923937597084145834035530327593290369781952108163005895714279247011756589663237530353196730506816475879278700981881705843865955498033149782632092869109416902294378668832002546705080286934497702405538522816833912286195522909059225952926109555996555270761946622201906379043406861083912920537815 - - - 8137433939217118244861675894832055120811132160920082316409988768451873124051686785017809246533981215447914463352299306270312866526871916062550087363367964772725893364749269822345476693714345709633899393646470910607920933630251499950455911873134058691178853008502659887175994215643459102712481802496744867545485583465114187852268196637275778126082400910952311665852914794122985225603731460627553055733364079468347064770966796462304977747373232795064260100637915350627369673854927523457778437942053842246521940619065286777243320256928918069970680057991030268630455458306303500151358250315388464986619729137318567994558 - - - 2429978995326537681645305447552840750521926662713198477341196532922837822515507190842117675847901812012215398428468725411909511619316272150362544143690430772654063755969799135272330450009538287324995318263189701116431786950029106058174613338588434564385516117897099320152843910217106094165725147618386437514696645515748023333170030676323473323896489417317791600248685450039134799256742506101946678769385768172493560550769138011058953032093501330600359981494783027802613285650289463829227378775098664628086219443188981007894727847246163824973624247810937083198940687100760223811015738289845169136509226429966351510098 - - - 19198034874670560824373386990633546790264395675722988406512824657661272710307977471061767785892604142256871600738860913025157834897248329239993925373395004687535562999805463418730840099246172063069351253159876890567103719747962119275463575355220535582604664682742759872477109325494809043141008683281839021910017956394203684156005508121817712660794951223431368893923959587594527438537741110465460464235738281422201631845848823790456690468671575652691773592518023898530134930477037138280698780376970815292349253135285985818841295834277516931707148814431719394063059713816866739298985077955834599115514134642419930919640 - - - 25359923336007634231436678327110273029830491414348421886195350483634499797207784972934086194017666178816758041605087473842050397741870041865156152670109271174774448044742058074666717354898295910849945918320536318252817054842770654500469966900563602814420825663037217016976143788415855008499547784949120076292939104080653904802496960107321559771986609526670872963105200093412903967317066078294737087050408288063306926100033129677277696807542301357702958322496028221749897133800207120910385225933888996657120106971537205782644187063028326687661382176035258590830689576827195303380720507294296334309913381406500719695554 - - - 17015196825669394231846873049767209896841519246813222847351493093025741573322686514659269522047131810581810646510574087624648061796705974083633681014569434679479691313418508997417954185695303827911412857044016480597432079571401599511233761605285878044951627308360340642437822111609908836197446957864598660669553516540502772729440668010178610721179642626054424594520671364339430391626861830341799318999988590624271842378304087011923036242840592335078922797418935027186668871133600255989114596397915681963890035126034146365475725442543009719976028763550290844089142139767393852418960191319542130933576950070886573629947 - - - 2253722388789946374028485327311188114685517078581929040889128776916679429105808658445383030584124380061353630734857930692446191749288058860469378647191781163327403876671522921537094072086834517229687967596009084864184969037228550634777516774981553000861754381256513418796951594934287577308484715864910288878798938528123706171772066926076547097326129235572854870859593130010654221147874252446291450388577088409830037137476088671045744582759819975744254835025237375395254201559423806917851225914252182599072385633615159470854761676780148237758248205312628720976425939739798087185964604003156066143078364979199110430033 - - - 1899582158471286591889425556110711655803764038109762188172656447572754278508261673613159215438332456880856965531711412419218326711635050266542277380390158597575547049827249651644751402204084257487168665909158600240979771265324030334175562524050849708507899417030904438597163772598067359645989826356765501111606580085367100404847579610551099516271949103508666218157566571783774580375595775794427021457835086684027606628558471903101317435789512775238682176539537737229967036150109478765135693252709788618580976928310634035989561929282202624055460306972693035089084725422232493684967065855180768348306554268445369610014 - - - 23983128640105816105931428283100932221624420319236938805639338179866820936145410492811939696800573312179110386148067850879999346235852399010782157196700908291680266113136265957324429602375432198518701829107123713589371615562805939693360135325081796995690643706689377988234870090777782352490154096263359554897700054768957184599367312998217542096900974817565774943718460760840615224498061461442437112238630758497233741704797051784354481445413433461210028958391446285229351133620771234517837429944168006889710943306310274187456491180126753436662776193141025215393373192347213610376007852013063341152519987159363951786128 - - - 10557306210035982154817747674528632983034755594733374609143722931889399407860872208488307183654436775750154874309724744418503047918952178060801294840838838122755510518816713472856184557916907945235204707446737972271257905023433521889466184559233973661410822896399124348690099625740157157911625413740180709650122734078552506971760653608346484576790079740069251498031479184628165370014274734952163467260536222516318542565922090347071268149263291351986018806732619075856588341254424808817561195787744261731547547165605548017177507711993255742542042647380130982063159577554901142957679155456784394443073926790992931280415 - - - 23939625803517157116325739339648010746490530079010432032775676722583640462298510985984454437427104391906436577623814884245568332037890699081238848395576998688689980472552693348904233733893498672468204853701177112986189515682691717739665564416704928349716066884791960630902597983531950602142906302015117077944175097476142053120821497243750441936682119343097709874742968713623219611354381207254754134817686337992132664345570023182289538274024855449066818745095553432252896155168168310879368468793133911202425010375909739991479267342155766147148453377043465361012356497143496818004855610525265115875350088216895486780232 - - - 21390771299625409235656532528297147734798888828459283451787600005468467778699637600461378044325508944961948924686783336623044497656209467089301306264816131285201111411170584631544595388775705703603520938343479336286838430119091006541844482863404362280316886273585581044292840879357062952021896338485852677790418592957776844471216274845059341916767171284365344752952759293024552633409509744921127055821343799737523092325932169937048189258690481273950770269657774408193087415263764666617784229900369108645647394216370986318157743224889536549714953657391374234408442460876686604771019464771800372239777569700525229662383 - - - 10417992854202905677971715680321083838615576071840928163835591485816529348299898637140863900376276396453326476180378419202888458330761014706380219453734128264687629786998930242486297812641012450950261144693308560113722600299021636146896715192951094084330013379210231341429563932371071707418853431420052970979418734484934911665292168549250679225902024904362103225460713750572022855127257648114726814056832436461519702255995842359952115995017699584541973784792275325356379791149853628204221441561131490007585409403788492872317771846160195918547263592925116884230387439962803947954768570928173688384029906790818198611815 - - - 24432987180986043619412589751082938939722089819475398585575509410712504405855717279099353267627564279581119405633937989859450152932342095566793498394662888570521029935398711185187961409288897138678174784700122402921447116822300859694283749256776671454525459099026394221735563504759882303228364920848062272681766209820902496243892858305836571143328736905116792507528171248325389656676577024689248224543229304766372100569492511970403690141982500205078742451293226835108572861046754366217873886859243579946092822359455889859885958176219073573008621245537270904817310065450534801102283889134427108732033945160870384546610 - - - 8611479000577265589840205656108031906235052931950776505993371432281323995480559340063744393021424643357752001444934690338211146310497731578451547346254860874709369596002233554732006925879484132383950734360992728607176023090573151008738403469164861308283093236144363352631998592040849400656932992113781776066496980966047333385568610473027413822312148601635748748276366803161259868484596861672926332528938467941656484923474819147400084702698111062275828810357661095642369614508033396173174874826333430485171683112590261828125377619328555559490750260451741101177382224826309956993613564854292690972196783647061060074306 - - - 26871307828920747950836604445970670628440625337691768843617804047418126510422967565286943769186000836643066997090705227596523129524100210494648342637021982924553261284936156881120715486075708805620674572838340674023774691759068778420687471935579174214667582385822210589202521594275737840238869155130365269642141548793119809504818998711610746011878365900808588692780972999767695046842527843087457872427453218382619615180941133990846802319980246499285500473327560168730432276762534183653678713014713967095453461423190454567090422385989304669764588930381826724883123132045007476206350902090107348807128117274409435387947 - - - 8450826289642454580611400984253871122165061939630706464414322625441564819160309633749963630104742780775265944041160314944557690557680155358038825269879949355648626848153316006197569564767237391393105867128785886445963017035260551433298406427982127860225705719555682004110177942273853763930735700723878354196101477349709666237844584073759370664277359117125258626598947421790664259745509629429625434316347868709591836235095729237125609112365889469332558193505686973460831596843624953891066847724691862757490958371758322562636469489111491262569702528177618412989522821932187181319781089971819132287137086190882961695108 - - - 2508154171641058894774394511715033776319605473418249975137748613556294926643534154942776329913045368969251397609772617357891105999269518552631602719816945801271855364724113107628917292442998436085550640010357650326707088468839568417497852736825367644806865980084059796193615654648942601393704536159275396458049113002853306209519405195991811686266535883548934503898283608511687548569882430788189681808638756497811875801812023082674319138435728485515710789630522314421069341223019257026561076369606654280997519394583761407249474825778487618092320193284636909224518854500891833846450300761725211676650749691937439853248 - - - 6546605667678443873586727559844809928101944709761295890415735404141856899559968604752869513423505109197159849708453523936619189674604983278867371057718154576906391018901030199744118454513442662886439931782461482538181524174910108693790698679473243477669608840506518602279728252469258292462800764221924118037615216159479991438676715330618249876745956997045615616546650166449232306776231416234520534939735465335187022670149305026214038726180704129414399919622414589774773896428022156507311950172216372092470324283191867319485630763230661875880965949044691915940948555610538441495366589406014752011215392112566380540896 - - - 13928103619763603152106831444252759677116305650725469427599893682785184207271611965777107579497267352372781885956057641113787622890928510988881510893213428421495413354621844084601234740105735648471491538598440392862512402179224433178599630226665240331433950507487461606930960405145533696419194019631116845685799438129980403677753392256810792013424122874043980972795481517261637921625015893198415066570593804544429845278099593928059441770888776790026650840337836926304465187496315508540339286810576339388381931536660469281303795720441619234307311073187184982082473424652731051954945664812164468921241233894035771718074 - - - 3982838806632364869861895169783800627230652455976166690615279025427996920207442422088470310010220898724052706888707895816079145526469742172430379801588035058024098938168644329801977530190869585968020238444146575646640359036338354664853147838708999063999763883431636963413363026751624660764957687590260108303409463230028366372263733279291414967299857237147914408774203624792934651458404444554235574579213838419066265170843973584801032928583408003277707588102366164573365402519601280825614970220504940708602635971878807322024166219234740603214555805170351831633741737997339707240212910755840517795162455038443798082596 - - - 875417687480505054286977456242668588711763669864992352681824725066369551681112978130241950286319930270058577719629231625492031252273708843113314118992065801246421713205593592049034555316921140859912474484013044218229200179103009857530206292964102757517827016471668261293894506570468365813110124562328777004635704913377374913006809616828132569317793333744052221731905669838390441152883078612820277451181092727245173178351087257035110884215563729482192602671811580366670824235650357173748866502918419750554116582809157381722429941772264724577589943651065115892104799560129786316955236408020919643359440256189531184418 - - - 24771718474751685644110856002218920174837398303778672528615783322138945245743182110148628829815037380872977242969444465400015606032775589238496700439405272987532462939769369089239958018749499931600299007394100801469536676856532546782963297250390024795660598470771659483854867919229259269754392617302489105624122964445024572598005658867761018545434214510949095217741041319806607500501884052867809202047261778064044820655068113763405777769695380671276899253435510956961547669067546595629444003004035883877929610518245931679649952547138359089266284912226028574490670338440592357175129831174506035461626328412159143540758 - - - 24055708931403598044536560533162104188583986760239188184597430736666669670866432354494623442161294420091785416431232137969070850698917164389685106604595058564993684071209951950392806173278121836532111706218597855943910297298132397164392677180663305174367540602940270434294714823625955669902391716722899839481963904421454377619538238396621335407220264467453018970224352998485469001446757344486894583083075188972608459767827646477219351280406188211477873440497494126952435100872749157849294789777749849244372201765009985085341438697273422564668142537536902207537981122175476608700924235570494221757742687187590206560906 - - - 1364660613697806519280673394010543219170431220953787999202865999757047587979077185371477981311995768215023379508507923259256286623724933724090570777531852614430670116442256811525528893673268299404574823589085786976489699710722602159699229677056526092961570791514694435350143788479782773237816049387723796235222139001164299429437744599714345116673028870930471506793560573845845792821713565302614353699806109513091652402183482285829248441331925213698591690206390923382287516433768952830294804431350492680514277467317919294962905226256683912703280821506697489246228707009388605936482765795961770110405424620374856550055 - - - 11755728727774902557103971652867140997474891496368127354687419878878022020753677759904894052782580951143038987850552911834451902789352317183697736809299617086606033095268660655511049935477829161092757716059425507056900295212979348824355910239277705054735221278045984853758521209592529834442380900298367504463193486267020611236391692643270251108101578985231814888675556303242038437353783565041278281577451742247984086625866044841943635683233344905748990036548808716274264819620206738891112449275673372318133645936160503397849858119108943174963775976718412726806652170862060799539331732266264584922592236618077484103958 - - - 22838272476347407433766438955601805649097887678722321309729290772250967830266680166801690258589583489542554340509694190574503957386181686826423374087336724383163074856576040934536061371793291655590138063847190716649811977074298625361814439433158741538944261882837389853062285005797595319218679657695788433353271761464130854655156786063608496969774340582783825861811877191893647232734385202358095798188872405828002373247676668922927109228414437121592575613844107706794034238572515048201216148603717830230959213745183611090238542304167564547348641712390330365691764730509421797430353096046543570295256326502239792454985 - - - 18170578466781334683436691303707177924865636391850186655070002997923631386625548029210849267363465397274341524340082554326593357357816603425861516205927262247270650960836306804711494703764387843487352310745078047266298223049612599720073404497770737311274478697373749874641517933160130590662108525427313198400082623471465404000510968397619781962872526490083779602201742099191924787640807594427998923566597324215224153251146409261328297316682175469901799856500666408870865811328625928307101883276209813204862430848511561623811594767229105618943956026014884117274336244420341922685924560116959054210665345910764972582304 - - - 4925340329364614464708125820889659253841679992520872941299006271796123371405792090246734062844780972174176669048320455891778445741999239208114154162152311537092448473433498336211931035034667320870256371354404439602194836626817921520856437547254029298143028948547732484832224127900180433358736850326386638008218937674749650803587071397955068048371317924821186300476811845249136974704559053145697408183981880734161695670647428367400166297844792129230822175367371821120960976982213124967330620989662431815736197034281697315614170359825698587061811608546467345274025429943254014754193185070916954449245770918221759738148 - - - 26888198047376013499060175757790860243651647664970960609779215935152900743368462006309273747936404814823536557061303446219237702519776297525871811191744099068632873768208165377653454083707529980501350166195939412013906627876581911183012499411804839132747445394779188121617555496862903952843967243443514902173279558391497436443728903796088978093110768369250923866850584290899843107440391758508820224065401096940739399175654962052465663125897535372195523251553965602081750019074533098560623208783156558741099988644613973094776178604718261051656089335310287479196372807581587483881077218326919144378576159458152454055784 - - - 13610289432487967416006480164760410096236573595317093810156026075367887340455417408627604119855019030690131268564456148457931706578669536329207730245599784585734229814290230311358440792940243719059885868320552853225448888622309204898748647418956008678680461508259266470936075654182402736605301088674276877944970253504253263692634219432431788879869930031880692057634381671935551136831601555018302576051307386862246395242443340698476209089672351023679569504505593491565269357817592096199534690704025438899401740409486206852863521438949287663562744272480434284512435739308264920676181820672177410730937897658625386365970 - - - 12761684814424477999650231379320696849848899424875785645611149407600958959326763452882688450844977709506724200401626038355292987820962246553070890672161388642945587085064421027502611577540233660503667769821487093454369616780417561772234168070998656455778367903831683755651942628850336413556279354260793243041307406803661624421739397810508498228160951642979101363315633123322003792511544569644330143185679732726769377103537729188258288635062830088342420413012461458271780179517329862143267579582798116511510461432701438673161224646144569522288456983451602576318546421883653740494563125586422135987051671647634336080554 - - - 20034318141554713465977700820374942409482991293165987753318248920381512570072995229144225944381158919452593841417523284260252769395810417845448355114854250134262949348479921776355807508154835532246869746329896268798176551929467642172731398280664765848663412386127715669341409422683231445071978730710112337525876887354473309154141292261616052415561697532354686090644595610733694940591229279650040304294911566258832313797850815605486668495407513980481556178135702136870814921383188555591869435449726443880721497280744760989964953147777066155700939253323959292234142478041358207061585716724657922603936295430316156386766 - - - 26319589230816702615364533416659040134358486919164422721179932589319264098387004459761308476945688616101213470198592238038588355353270940469302899885918427681833722216713745426380785036398849448360888230598953064329677739766899834757507376320331980116897620177715605035651070114997308351380619735545273118433922731003979841886843847863741221720596716352629481968226267421784624349928978913460806302481301017595584672016022020737363975645490100507375612538480756035891784984813987316522844850438961141558905701194701646375708121590515955510654734864118051253317083187958840460728302216861515768089281241422783132463564 - - - 24159539163779136603908404920688559453207934301936722219737757091737844588652734170652903895503017824266273501347713277137959898817831951220507845181742128468826779933722614466450650574817305433145434134746820167265106463884939066871242932986146846829256345919445285744845595616878734794378901448758049563735137442336140201497862597409561702388243723551522295320342514211101863065860673885056402882085523115978080175133499232241453683144445956199539480249020745651636345197198192164576007244457763105083767666157749259660428232415302416239887843273216715193840139833830550180921313721071817414994787576500551590974820 - - - 8513539901382385711312347084229302444718573989628485970693624054960946441799915593382788242395438240903464461950737535801924608552428002624103206841303708913341762803961366469524006588999912407668625019765194695908270839353512319061989754934194485086525274784844735718958913522857546330392151484832317172635641244935097384809739715465906928253629798972488168692456401697887655510517128263208173015300224641847177928899622168123664357003490469540719776875188002518216765691443165234039038719639957709361281505833799294921297499384509702069406012306074353066693905324601382617804771659988547332306142519243155042830321 - - - 18788782280901268714600079780722541627600742178198682874121073744824621959549085221187509396038952314499567208068301138986009655247277789866625668805424444392795049707510969647775981961456082246282773406701510142744363002986034805846277315960810638396316563867780006426475920247063868966989043283035395868936664906745096825522241081962617625732341758557985975452823875470596214365189190213603986370452001111829257134821187732596695086214346771601756656261657110963522212036572340952688569944468566144091592432621246483046641784552264921835895212650821092093542959696260655116107748946741322684514031961462490099049624 - - - 27587522502816800477372551448242760332720893057968286297593247932580026185853356656674066029919725029726626038790460422309355565484267928576971480717950393607712084036426578442176429932705621100000688582872236853990373260967886749458576099214870046095382502478448733421894022886068863667043287890368344804099143018184718596887689264084303706656822436822962664870956767778419604064125867737129627455226610111168128390786035019192964472607343150989927473990453009208712866649353579371362586232166771826446047431157756452130614676337157810745288984426087817899950743039208929977096948083792903637586142453279018287340803 - - - 16623956213314609359015398781032533005161170282206735222654736980467429317301209001531082132130726765534604266667390020635699059899448141859245878522029954089605142198951596046342489483976599691288155244868609485747802771842508533846520034299916977615038465626635076933586680769523225430916010643870970338983357130109715651947897380961295027094498906764045650263354233887972061028224246844513897873270298939093071476677403049996150376855072490557618153404575326609110881092037310909033317103188651045807661144717695192708233784154871040040871934985962158069696873716702446251923060813145490215872619586993826336730237 - - - 27949070838778900275415734443594673650394725531209499351436183846010308577645547212374293732853498938944401568401025689797805980378815742143975317796591475058446220883603380684820381799927138219044217743443829816620993820499038478800476418773896623591051703249039957888644468663357238852798857280503317329808303207367906315696463083530014156695748794766993633974299939247398480092949737592006778192862680848806542690286083696110111126002454402032698943020167884747762923903425876072628144452411072933946432431580665229988974473267683199022529876225951880870975474294011026284809888195743714146155578396278439987926435 - - - 26713944844895766402335205020459661574403421067218957611744858532995676385011650287809562381562841699359467881612461136863927432312670467552283532179746217327843284759299572106217732437566182005570153873943432754373871098149715298179727301708244561822534221169321743195415689185399207421738975009072317983832641965190697570747955454660385490904572245143266211971266123310675218020240582473198380905110211383313384436117181003570921761745622787739574938796389464416269923265325432369678159661166374190787886140332255455652839440333461639975046243762871339515087931281927603643827951774028033475150610634082335740814979 - - - 11416219376123735029053249676591790657517913224628474765159759965606389534228193787165181611038300892453513424205502004960862288143065421323031190189973273773583380990644855749047123840454043263789768805085624456749762439220233878198338716902103330870424816956274924182994830008730585987764127360429728672559266817938609709040195843895924437798618487970004040324139444984829807033800016341267847500847460765048668781437153749165441513620699341802812738643302975376361495567736038831387127667161460371213581942406927459644843710208357878878719136458249715971546298303769491369204245260453092348819447614070475281245399 - - - 27189166418228647147192088498101189201440103875405556581431956384317907348539140974546828953553810134884116783409404878074071544404257308119006466318562569610298074306352759083085795269621481891873279111168448066778900525414896326872450103822473345806491584006586756895128825749650569607100115191331660681738760188752527716693490925456953842230026221404392837830980206849464251173899398736889201354710507551362623613391121054558194038819172095823506532658381370951357510686529110218339558854541106858691261277651035604846739623135312225922466733976457737221390010029662190025287930844857410227260577887937759494456641 - - - 5903982095813393381519814257600609861920193357002726061860423616728111276675651936978802214947157289762412040800387662708167981122826648168289361338522358266406594155392912883776123933888593157774250643781805137338060511304722192475635980904973545135165846411120046729137631798942127518651719640101074740461630591755048006470657201616768957438640634587803495261429256092610869236960526747332245211673106590449586131581130735510078547925598310861966871801604698828900163889879347651168387322008040180743851648071929058519658667992654013304519454796558069120174081169235577771146755636536286358944528991081160734114761 - - - 6635443645997896273997249515391400357736723388847778391404210428622101780101873198470251794227159291413342796121030411441086748116709468020269434690846483301801228912717326232637852103272644207975226496788433518509736830352317708191060343424835821065294472106420764402899523331378560335023873105016234593478504087904878767223363890788838263054486033210645333537338576693498584123416317044949767810399279131750196932164194607106499661697729191835498085165606379830928689255556076069008434692321957088227229140692095921710821175518723031327010398758690895098981212809347320428639003391299090018768272479954847902537666 - - - 6662298360644252479432602873217196574966204907892400814795714385268235683926389735151387005071501309894208123668638668136627636493907651546061419992461769684379097049565313097171370665988207539292877476033027983599361594496907309062299708985160459865012567362128006490681277558284506197922851851208729590812859306553839407736528696403631355639036745802162708671720104865788691565525525243709043248109671314192947626799882233087030843158021029893169005816627734855638714094154848226469868037132400333305993857364340119505945263874451443654590810348730350115704497357398267889907380038812415735434379667334920798816250 - - - 18064215707490428950861622943800043668287905644342254416023340634136413409533284359653096705726502945305597389160486878435732243515273173434531162748700661915691679916776640179951923980716687006450583670080948886542899300855024095950204616831524017331480257563437907632013505409860148873506894500111734992507578836575938730683076004347258457016930662768118870076411643866795189356270235140727600222101685593057172852718039213018073186615149580199173746018279027994028213126177417932411808409113352380732235343813830230280693644576460918790593029336213681533664228749203254430613183447968161718394259556072572726799416 - - - 26304139048633555041408256866509111648434164488502683511227186009225023403466895407159677229848749078419027882427339517299223729043916508272385013949373871099905979660756757282795823760540214408403038625752994450499009098554847698001512560640683942869637157321990533547454761966146449877242106125202882800056704593580832293908539617754424939828445720347721078399739309533974661122855508154907831906254736739086248161980229037542465928110566928246983152505754850985410087189039848061002793295691561955561111136361871506776985611500217902945006834176775149100563949454680438017756230088378993882373448110489402070691429 - - - 22628434991611712546892713560826854175888060078450039830434384257329634290601299618711101088980105337148874110837403771011306113195259494348929594723822371839438052173652920423803287565115062703574696208795106948970293291412903378740203677382200525297615650196381780661408625441020831971664933395414710302634260838212875006209715911776457210237438473311767570156577869752806532929146484851401755831911590576128583095318151157189461835416442106710275425197017973962709258283148576119249050930211027927268412139951918496094394498723064494616984740403722015397097452837684237037214214789501981599597403195362776456010685 - - - 8562866774503008406079399736156876976977580211818802302810700824057112784606899191585316769244296132718074125615303996421326469228687735523206421265205983874745296249146368579393030713352254261616310577234058565085504550563346240170780569877545463151713440723176904050898959737413043545463440349220291282803385949144578610608742503425442069318940819510857037539618845635873081430191331878455756458653058937480583428272504617812162000280437296074696820423037798589524615652862505004140727527313746650362853788223052852702797336685795700882268495911782621879562927600693927368440176793314152219172769707112952730359484 - - - 7936434439442192514671486227109569794190367148462855791640378448430295411836735364533689212724740137905251817986084777616876078569165213405171721578346695608614142127794093117596653989521204403195526378735287400562039424531461942660825984258268692850689341201043567672360449154399656914435643691797033004472148251128034843064323344906512109653809107039457905135625244487975163677285874429992519457650296197985137597477945750133246440804969238432505082943420928550708826596798957689465162988951857404670541563600179457098040725677922342808854078122466792506877465399409346718349411115792267855323973176847326339503500 - - - 20339065721149970789966576240489804656966397871897294388124904038936395315130421956675679809530993908996309368476634461021651680031977692980147296736218158136558248733523676999959212774689435008940978143194260439746276435827597802384679423207311512260205106495629833702765287821714175088402264489832157598163744494334160721367650851585695335505521682591086054179755653716893202851099238268785482749546163882638094004851183077235851275489027939888738904193727302897005397843071176955749152194811216748445185538867888931773432601567703271829562196269697640095387754244814512929991222094084696077816810311665018933221225 - - - 26336169965421568972802865989994415125641216673601012916531115264133502641907499828432156051249749166670092640178142034749331943205523209585656535871992305300554747296860036551874695395209324860666409080689524617307433995537508467581511886121616700756720308058999383432031507821472206371945546184623742009356046802112774902240426141848981402327004900327158646361087211933441161176771628821211746939885434606448164069740669554484309798439866010408266312841038596633478020106786346362691172003818839736806886371599953868886408028610183007087711601424466769997499942116896975570461786027967966081779157644294670397656346 - - - 22377310821590640666587525344649683831504538582603116320198903695151458448033827161938767983855756460946988120680247896904839287678080891100031986863220912095484030072263042923791924591185764032240986488770152346239204008060215733752810548766484767983506454645283020806321380912805473494268297839220923628844030123893869671486242974138466119985650700891033985805837093433906460002938679771873401921562612360899714384052638399821665463055421816306985223942868338841758230090165049122955871062508125788330734369436924331350769312168733790942841454128096551760805548599992038873372494133589708140058150808019336252304682 - - - 10438360624686383938437723076377661125780533659022306479922421721189359022850212902564495412915289502641978605014186596451823930145797319341763047308819825797899055164578750030018522822080495534886893111656829755444767962353278458193325853888357133025288625931029940736903506219899504741792175861793860618707062052831017788003387378118704608438370994058915981050249354253371545531205232416579488294108323178279327631841352159116400750976626841049067938748264283272361484337971752929553751420052066665727643187556813352077184098235919055639834911148506802654775430105146135048347669757006980878553840544032302667904840 - - - 22790121101516056478364943061931518425166801233333635139978438857673385303305591688292286331648942175847472995437107919384992463200589131830829010443971203836132520703037507810940357258272908274169458397216520095559498717600474772983442858889615736675723004543067545329343276374085123977889098848333846640791102097430282521720461436058371116860024613597842012391916409620398650084559592342075713395614706154019920852063874271961182730121330125023217137530041856855126901491155379553567971375446600788979940356596205002110022820814803894533848389232499088866835937518227067035691953288017140401513810796656281988979639 - - - 20263856242679567465222346185826434720609712111499694822236831341564419010358530954984733786390486658471991197976981251277738346589823712671142893561985994799077089113637394453399806832168076508206554650982975991037565222491717022989086706207179722874220416721758740200978792837648677800094149215847384521780273821202006173753632540631127538994513655989089869923962297020070788976495717531440905873346213899818824762102017127048863674305837852508754697607490270968550015143516305513675853930277985809463554928617663185960803290983874726715532302794682583847121697938370922591657526463213779189544236282195603698255725 - - - 23968647723080888259436431915524580218504296230974124707731385243190844523690494109246685667493748927892148267859805998176497236454112763558043067424465929623091354234624880288608270188913218671749225996794294747467995448831341318147601068378057966599471650184505275754407488622423876803693391531675029913080239823767966087501495608365760194861064648374003008693937970783513429280859131547122841476271273082027448376738740571830738131663141314626633529503079524679630889941063192570448456811468607503774977686431255849469555403620448633651707244767840180254883591269032506533561472528080744356694956781042865209290958 - - - 29092606565725964439787307155663936720292801330894084592363835363689984299461865184402220827040386350452346575426276946403243463931678666439147234104768414976717494263763797922874294476602239916890486418399892266873444488662998402388903840953433849455128186431022359560780002218957560363263543618327780285994789984152409969210964372500345148623516353561419665327497639162581595352121877012093033818668500433621095226539417342314691565803877760666286323526770527905943282625883997673892656520432133697581563091474497144558163880788722552680000583208816864009551254109755692655783243144684786189923185397455810592405651 - - - 26913736712407389286331557821693052336130829528011988950040542466735466296602807459439692918218174361369314793265029636866050188551021503109174190319607715066616870950848353930090587665494198799400730008094727665430865717519382608732155378202121973503120890011670342345725548306189922094333181758221255344246309610132845067037016337592888783873045411473005397254273519991878402495147661077369659042598045121615119864092465098772519844687624181854036856343833879030310835094847999974469540951272377431535638617491387102375492187927222043483459101452262969449486066156117478606080617756070253308100670943177462276341395 - - - 15335110231035767316331465261583532994121219223346177034390944317567282975739878104376892164053123169339213301617676142798713996240073198498859660870119517207560589790759105462751686526498816639298909199892210408487291212560142219501228133414708766803793639066012637814026279538331392387096310565164489680408680253264561258457852117948954289397324931631961438952161488333964253794333291784230332427662733868808400681302505755584002279647443292832777287208410885373320068039622710374869226907875166788236676463402429018686857435095408379168359405698929383762628138509370928750401587887249654190251293595582253868371013 - - - 25039321285779429353495150258810188557222188273834783925792118151824506107852985450006138607221868225422985295373415637883615878638913362644496145277874354797727889247877013914618424690371743165991174406542765707502142924486462758776790938091517605349167716515290806612149045321790844132216435178553933094772537727579739202718996919307239337324832815085999862001630381408084060862448201492578612492160485084796326339904404060698576167035528180342554503913976742608475330273749209562895697975026298366902606203930310451941026840378800176609991679866356699342486629141164198417140418402509727928789508631751929886331409 - - - 3727276716614548462940637745812733649376332580860583661490520722527571461663202055875225285777294311860747916964154949582027486782864201746530404342779685894412302959808183606737971022073802838981063135230860706791207373824234596930915930849129719314920025513463255050154551767392633639509405409629328480910839306914991831585409245150380006359353979360897103162328179819314672834138347785649909098891016115161065221018414865256801009518961683067070525192456586135008247297918650078064592846688750654951765230028873095438062907453094290770755583226211991435722536574838590962407378922147920986926418543654868385398040 - - - 18329110456966419942307437432454140032913409276866631816421412280053122234627656564555022578590208633343672238697369866869372994376506381644437391021803696220372597204280004882375463081469747382678238751677600341330983215247706935092042459679097463614439374892239683480698492084590029580636397964929159784404413979266013156298039583548228389444344424408360871566075458060539796405050517894878127837061319105208737816154136341970780409955708274697149549710347500304823763450778007010638211978496871569454989029323482549350505663147628396050728562675793802473431071550919802631648688251738474146707082951082345643383526 - - - 20182685219021006557188217074142067250544446614469110617301272785562171463970772030587414404173137569827435656447307663583282016903915015399999141173049508210701050318530730815522034639080986702247510940593392488299692176416049835611623271184933558534265613592501456931187805471786275733080089405054068262254333636319305359687338306213055329600355179264271284713896612775495253559247635417163039010085174065041714956041396060986141399800849741192321863755488541780650541044079701781339120573856199142108291109431563806766336317743991966339120017284606601667187080129496236117193309367363650929281044878419681266687698 - - - 9513974096371054741898580865643306826882668828173549097627371944633625461788963219456006170445214173853500593308632461311830327618639508413188655021002570038152749545563995802674947278525636548260678038730510633454764461898140673541927627107919907959029974695330628555018819787850071328227555647924096957709700606984276331936834654470197350229161577506830894211307226853092153089186964712359907329856827346091443711163170971079933151058614002538680917769437892571772457323642099547085512982809963443255951031171311252359098352473079550996880506591974491225314927967652109629632931530046755391530393445536994632472234 - - - 20911806544972679008771169257318047780399722458761448114600368376693610656765864966911858411488089139954387211909753555723110976260403499563912788828608583197612753567531047223138408739789126363875162769892125913250263468328710352561921276165804563231044897354154970968311698953011245344440730245870283051942030070955836391839505899209267328400408998742623485655071236329902449100444130105394590300934689608593822258931000109005934921197782376067052315994716400245187360137895771478663630607321763799074145881828883650833033138227569662891564250201354088955740247388483746602767216189741148393472188941996937440203892 - - - 23003724110280882744235681976819195057801824259820246822062492329263073614678415600198603124158331276879431974255075160906038495124320793719240436768617168425898614825900626856219510662311424169072708925766403721152167741818760012464900599765304763810520533656873865852642593916353829378635581465432846714466592947355877757778838419469827443128109731416817653075867045238858380138544119787624444793739008920280811687197395703684716720060912535212012702528904564640029649398546237267452517551060807074588692306852941131581902184584678181409611657140487892300846578991927318573736676830628285497953905814567884355724946 - - - 20175704701443891999128514699392707887664981199463712498913705072329686763157387656927996521487780235465746153237387815904395454100834955982589961114611676754132809953776571765672213400008417079284529988704361162757550649820688460742273108093611965698502543433502288855059423008717457653133176804260843763192575496344624462439288913279464653543889206527855900128927871601111413362570455832966007300667618276188521784921701172342257009234463806279810264223200747408725250000242938198728656608304606433608805575837440251256162801944719159628518652225348203675756047710978031551778901424920039804960024699203125922804320 - - - 669469114464131073317599035852239998774356469543779201080878585425386513178847071105728916058419254071770957918323336532314128619884535613161388388621280853732581423021019571614055351812182146689959196476261469345485644371754292581052667868699719229353357899818182273451439049317316373748805255279094912246658773807293639610571386636417785114307411172523235304018096099544948213380260055217464130906301713530561745747145670260183816219108767514253961160136900269081716842747866209819011150236135845581939959691260167559761045558081296911707429182827065725614289847502789537226637598307594044795775898574666366979423 - - - 15334544046933925890299672933002640550590529785312317841137568130519001575664132107038423404338562939535798574756653136483007676366637344371458729686851209874395539166886101642075420281826763499959185914381952627713624978113455930902603719256108339326149945215646700113039294539515488952382217001943810415836418207102902975921895766357958701034183154030332231847723047857729749655232521537546757512211139638174049976830535860585450261509978077708628816391232579600533161647838075247384604915441100674992753976358291713915155548234082892407600811766345917868108294439249716232750071801590313510200647235675469603519272 - - - 14699468889624148871346508373560464092141359374152704042865714626214258996384539524694203631427837715807621420589148365584042770213821036488144667898249651317783050236614603651818339399607480234326883946036426910319290975570617290290599126562766235895854071429866178743784861420780300235670808231500218261161277335074681410193586376317275780494924459471892169155581768343011193723817854348109197405633444826145812733623233094216582679270510135436914300540531434708761604935170705919098166834468189891807239919106402910250826146540062519321097122137106491107744141493914908381799025403832508703540516089948084585329604 - - - 15353240137735792962919246119086316855629488595906687495198515369115425672936958226470679221796319826198195514556093964309858990260154398506391346909693692215384385808344990987813904116868792229899667172092408532220674460270052711427944830054258305298766620275775199431824239855840105271746797782500460751538167286195110038885408484153132505522616584123557652714943157056813669475098491113639729610333060598660480324625691940386287790341593209582689212917490009963513269741928755258820290040381912882597209277991688067319418849564375341247198324428329465902351987338561613770612644549593156321412455005031598733855834 - - - 11690264060665457415563715153762292521667606279332229287687020644447623390264840168277189104133485176682536151091512114291847750244117907394411120646783761370465971853151714310944111352729320974874749845290907612898144731998780383870950655381224899691522634277943192844591999978512226269991800972535500776215313450099445831632918454107153382621604320459035804243907423488875682197049230482529822261228956318586612175445819501279846984344123470564281753075685964748553044522575193507033677795453663472646490084435458808805639386047576148370810697677044078631037773987421771831764033842309894447568649279088163666513219 - - - 9781786854631525491670025224637394031258199878045352394838894248015642575850710269743491900830858075289328334375816230574936669734978072557662680996888429446719310458354873931850067165164840823514070067324986951747324540665089690038396237959157920156890276172914014135760296205932866696207406903746028494107213549033504246184999529878483403763865888459903464698244475751255136989099014180749859518955176815012795521693500475662332738550543548235255332172346905272012936569934491753090799996070827908946650101848638350156558429246804816157093351172083209112908512340980584110652620339719076256354615770167247165558309 - - - 29918297331657867119918340847623601076916404170930965534191339641311203568508124778996707451808452644182401386841367516747642269662404210981655812967368322709373295863151589326512989794395458870378429722579036969250202055072567918255862886924516733554647013996121178144513360132776441932282323496495301769622484075745359225531423147006107439433075021823143900256023901969563462326580552743276860563625824447034957260381494273272130843073265953195016803398938823874299852554333171977327100255920424034254297436292164220181165616338648033150128187837562827146651617753201623174803454700581151582844151699518683943354078 - - - 7531131432606747392079709030638252922661046301957266758118664620444632673586698378549497955210116746445677594090150555958852380757094712352173852064190506396301385119820507859912354217758194672291788380761811041956206768514979738188298566345231061900500308620351717534210000678688596208696838762866773023029969097263242932068556596285263476451972044798105545940641224877966175917723581113577403377112049111530703697239543455610524238833736045823358301424360295974476009773831942352396903062398794536188539407930931955157309361173496560585942573899287293977106688018442359613869628819454064438707767081911219785214794 - - - 1752940288068371041709149741602407997222416337422231445321970668655569956799850238920164795216560090462460725742813744132328239518510283084560582942356863504785165621024197203485447593026207680878984638168722227490715365207418207571639379046094431775185173848312728817826659989675438068964736987400098622819276304579458505991487307147291250836217467553216227817481460531058174768687159788858891761467276691878270489591325319407205302871086450979790628891456052414248878169656343888772266540423577674486453416893538623156291516024301293202907418292636098647302853117165386584137228171683446488248318011863939793548328 - - - 8669443269813452570318804741888857652661862163212112719673101329411063109820323445067034502850301913280610358130845246288457485498017293734797608233292603134973754919225726541978292927166898415047211860831947854880923144082919032500191562138960677282651454418609382949104281175856272242636011229530309499034701605969768788545833489709394164492152313522357453201803187313707412944500796488252870184259330376069947201513393333244808444981217510877933589931941293192869275347090921195056380235687431425133159931083178251770840897017035247612871727578298492039453299781109107522832451856812432326947174982853813924571561 - - - 27375253080154852808760204945483573843830754334191260011768299586316208059641542062281399621760515479678052973587750719847581199801313782305042424828350568182616332426305186224883995605700581259020602549537353726845160958903961145798089923914391073980614170021959507296167178089079918424873626909307593259664710445314361627528346124855848634449931026378061527061845994168682270060620241212147211070491627203988636200735124893134419770444811035398805235679295220375890317027272574497588393420924980248279071059301079350410104703124799825006101070029289317822379936372690826778009533147516756235701244338281402011272427 - - - 25425392654035078862829212442329592538038827233622972705355333556674952488138473656402545569597371599218416602605537007536197703690076767219615408625759718212325944891120610805586212798115711091672732792384610429770888767273122333362300501827904334868549513830662068162249536616375005706819618016341639926098882108479722500201736109677372118572774022931127739976023280462753658836037014758091292407022556439081869984657372372316716558682195949443626266710497918257064021366397166108224934123426030479561865348411728459549147596572331218112405647261641787926646896064332486068738379806809846399565403345025836270726824 - - - 5372650508222995204504118389857311832573206454611814258612366466551142051501108394111774606028901345199025282611021564427494784331826642831481861677533434338336357566641835892879401586068593383975072982554601012393579774354941972414471855295937101153236868682475831111514896596770851286605491086200424932990599691947889140162719529855433286745949595977467274717653764627863646619337064805901996436568651066596792309542683992755726948072519088863919607946547156606245897566379892920356617637752036015752805341410404811167540083390007173662709180994603370354031069811008321059833596445715999040584281263647856016546058 - - - 4605924273228068778912423505419579329396858429477324779314919532853395346043233915658189031875480367998673948204270619723043496337868578505040575857855757757777681383528372681656681395169289011824478948913956242669367945247772884360163392278090747850504001141397414514410352429788881516740036311291962486078088133507976828521031345643330393038900437849076885542706661340531512159486059684676062646339679440698197476130302310928625876141010456098842167072500849510158910208027303898459648748505730603287842894895438936327807667490827481115088295623093787002316294202714004764950886982406002799233067426746357817205398 - - - 24975144042806928021145028376358477317037849446835727694041575386677356400198998664490403158523912568127658337445212969181351711925275474325266082947260158172697791382181736826330460646587716127649030922514763016538366329105287246629465460865790668060500600462312524288050025839182126625464122729213455583321802789473009406311641930904553635499616653514381917133877703101782378459701659766959355335182404831229745491692355207180840987486876630459202599559776600973691147575615822321909829963492304694134844169772312249363974870158920579745612137994973453417847525768876295817477559334211125769346672032348530438421802 - - - 21300891902293008770902475253223791945451577350920456037475671743416179375678211847941718598248519488252993940236379269020678464205654344725988438480391859133082985147906173226756408845839319312752855613036946960110511106820789789745465661431615264631885540074199015272584102358629431866559128523186162811223205632406059741391526193954083290439252045402969555234612499272894039943552213475309613368383300819404201144708225358891145826412153393122825388998706841260789722357250735093176478355699531967625664790773938108734976730147201856910526666352955256512039605332806030092416351417328714476579397384947448225726853 - - - 9286332849178473205248469298598999180810322940133026274972776043266958323410122412903086924021750419541364834016268548878801396886275848994623502670416207755008802740165275543381734013949246778020310477690697330149382269345741197255108719805201292674868402403069205167356021668642001339705924682315340054022802633893747424896605657079102401334161460208275361337155307390985598199281287115636773280279674174264703032806079395134715090854682931061011851864111839152295736787338165258972210980468592679617226586770530352849275687934457090382213211820881660682167270620543005145116950302298219960999757061362684822407047 - - - 9517766186601878593388211232278260487655744408174659083332711329103188000413230725799629345396723681760875697665217897551725122080007153564910919509580007502225260020704413859518886668686386709705877409779707494335834038088854869089549337284699055036510411181282795145618515430588247532834238013216817142750651282266305970264844343254173421726930007635939538569794497263561601801574505059000829472466811876473407325370168730377437564324249549333548627083609374257613904417111100939200943105862185306964013434940561181853144132722954288417045497996936624297386840727739022700159500204597677615649670794028075975972496 - - - 21271631602242451843988908467708678433553357667700866427824528137100723076954658178364638035886670208874414512991542986666857852573291746490713168184411175081396450260357323838124547970642664143416603695503659369476613575423438502278888829031014291692874787365831244410400139886476014762243613364930216872837024259995136491911954750508964886209764619717245750944883302989458645300945077258317674726943083576759874398419339882685582389248694034646546248573355501104585148473985137731236735813854042907253851719319258311426842440395706520110185861847192314589584721731591202476486358978205044545578634060014597341739760 - - - 22350555451516710437949558616094331822981577369940323044403028555872074861669252626980260637686613114127955195392923992510038518473103964999760886460533632961403496627829273013073364832781446443853873821855652500764879446655093220582707670941208948388616977651709510631824487464553276573047320562373842767657689683087592538415211078273340528634048343448899259996408685024220167666399298143965687999744166269303772371659362710785020934140043470464281180535777837133680163305338781148801277233212023489920611042979901612320717970212076163358087686603004896802938189224535306237048436852750587286939874856026699852806395 - - - 21998676199781665384579878240792051847632967523955783982531838864288698042709261175657325684918873406275221710683943038882257200945068758836677084890066685064519488391585160693147281210580126728080287285368559539220851008516396136964909829400376702538605832949076563513733705464729847024810948516792913707206411967934628838840457822008071850899309279465095552218637742748596393767922864982991477859950108647607110007703254069364788057576205642896855046097171541473615588675337794156930726342052213039468736945525975976156172381422674633345434565572912972273941512845400778072217424741041975823241244061484830060711812 - - - 10491453311028855584790728552700530620183787007976992161620510775997803338314953408305616982399871583820604877742504949111949388037920822779128243327290641363382972514439751818360620876942741605698012333149647023416883797495744137191348745176515886595695314834215468205099780122603155315270221006184455274485340154229318781239917443414710648251709291051098923701107579620491151614462597268997338772843485187878912402240523336823428271190860433786118591163027201192437212453021734887147536201834254336927809147041745167123915466851349795300594596609903519896534515916942451004834461179286379231437260595385757857842394 - - - 10277764769915303125943028541989250591680496568134946551967840928939724077939578993079506639270183533892331635274786542499961966512778870242691928480780175331356995552235633668491552751377565702020811787153385955826202183511105901459304486659915966477693257103807547945096770217916195543531460850406172691533135660614654561262912601544244285243514225732520581415531176081267360613622491516476700551814689533301203333608876556245043100648907752045739203169224321878719051706227471265240800189647557048416723082794013604448524779182121023488202643106753905674355286393152253929097275637620030437185648360745774564808392 - - - 25807259789297319037951434391486620449743656165533695261443052917803788135099064229689514162334768546767241349076891867577645930020740938997798972580869471371178658827019150524485082847393413517835653271950662668429094558133535437717478861451770169147940509569455101478872833104171551116429978503627168586743450963211096414560899253121212008308496311782890857772985983032101086231089722282446544637179953676917468172147430487882879863786693797148445339842062072082169135452929611058337831989326399478532634573351132195244862246817482093569423141970562787567435491077956374508226725456031115854520089520685809879658056 - - - 10365339579610727486812246615711941302764246484211616050806351851555449402868292116635459239060970994405376466350397852945054357916133635904872656391673646393126932584679453558034689453173986706055065807250244181149419650716074138794478435669267354077849754970061180437141133166968930782244389946969828469436562440779079273986397793629599080855130215138484903557371350783548002474649388743418297654923494877188410999809353581742343041005573984307438427685229811027374530881418760186079688413213154628700626269037403882096380997809691128695191144741967629371141374035347216924056274142688296164810974102973500059355964 - - - 26285669161301839499851611911997026824467748919463584645741423418951422562938381194142392716000132076767490961507963858483077075116129125116726225434333478304463291994646462562812408974225913197912294697004031776196640669531424558959247201376866118145639046524895052673707187538901691019747447327692632430053975908395462611628784678953409251842904246124007920095014149523370259127037123455466461719957157335374565939469053586912870006233042491051775987798884008861135754004458226479338057750838077770817221873533722383836704511374871663679323603700841524593345288866768987592477727785864905066954692817925964602850625 - - - 28067538535511764443499402956384142172254774440911979493555141375057406885733942217608888647722400664173826695514059964661722047065272141066698547443298416887600831613336489930583193162352239961935294946728829796835456623932070927133584263131217509763570316965677557243593678010795375799385685673926008406723144424831423343786664479165988273771949388372721738188658437313938814497434626152277643089420249507218185115362722622392072713804520849767013819533044964052358797430443401528431600398450747383704223016918757194909814512982092754678910121129629964215788654875340892898836971560875033943703492315718124029385828 - - - 27044852681073587586175402400422519630065529042498037611974895297699379319559717784310024024867839674710776518864416011115148453548409615544392069373516704912657786655825214811331739275216027473543610842271127526594578126261852466687245876465158451730608817307453300820101854843577086520450033140351639939400299509065947069853433427659310161405110680600042278646946413498392069506252763189149202190382433505915541234488440192674471418334268384594523160626826929954797719271596121947666443768709531492264618694829810601680313980054616027528999692403868497428280199136861077154486095773093603470546710312282704890036150 - - - 26900115659597174742517315208026877598248759352410021700380969458745316197703598213612035329559882814882026051215802450263662834738740622739730484123987351174136969324133847892568016859673205042186540389027720407491105361866003237285381626523806562980646817315025801190050567309106419094258970606936002062157954683990972037510386570757441234137496299447265772471478953611879960616493897050884987732579829069427166024885789794047667366921647525750507322546251108956171087121620485736838578656585188481408534713708976052508361441356108990297065772848801935480166576740305644374715968153975103460047680504732682083853872 - - - 23734140559090012527985111526171888607240613815893241484808115819644388009911000688235610548295871298078188138298764815088688484715514034702359261415661512808535475754097679750468900395198298712279169117961065102277055892542782366833567631009105409929959540835083710699178322758624643317386206843542787194927518254898341575547397682796283550036524833623757818131190238638284392708549751728293598866843566299679222389990828969484310730139268873159902335471263573862642536103446585890665913140796006286103185057393787866654349497053621500572103914914655208267149158066160768527161846788035876101286202890774775896012346 - - - 4314203293209827704645205637243639862964167203580461414732986996410810555038946390234284940420972780979394775646033903433212328011675114934526732672492663175250946285998502717107792186314442629554581174601656299632275996054267888617050165551536802748184404439592039452689650027785766777812304779381649537292887304154563439647036733466073711009507577209602372706542986855947994791226751013448582387332704174228422769155946638806861617787714514354634492394290970982933287888598973845825383919831821628344082193267836955420835719232118967542815356351619417313672010299986007176944894656309255917998567208282819278144979 - - - 29300910876977005169435356202566150688306306761289885892775507395127475173364830663458903466689851529571904144533805760197452401627387781031121720260601473951307737237524870500690976025002292217567180796906262693771777307243610143305929360406159350148956469082034698277705571278508880940633296025446085223336758843276076315567608104868960476695702658651017284908178015439600893599816045022882220057738083131908414731363757590971876190026254639045506068146374212308768502864535060215465544196499166121885697648548899503812945780150204639690265345372723020319285764396825403109550270103407985991015310892203440356261977 - - - 22359342329099704076781166193599562770455230743081782642899803025084392288191418143958763335953747637017731952101790761441619427304771449725818032829091422921312927004296582144231816296234568760493607931691756991929285472093673789023659628766527216390355243907384736551069809696962380847566559915924099370577870871345516347115831456801745670899245790406567342884992217307388571235340659087930796172207691028227587368978548060914957435284011183663014617066457356945762738909697268265061334486936035177656073823737218751319026646393792991200177988135394351252825970868486083099903303212717729647063727171620811165894526 - - - 23904244860669394048218024385310139320343143210650375154288895719092889663733444816545020839779921893132499045972805021271026000891970056632421819020482701085728698908958904954189201458706941970174452823047669483194835648699247180627806755139088846043032054817543633374769828529642229919212591325848807503279887809799818406805671590105260597938415259540051550937507630917416897584118265238646643089571295209733619491463630610357251763753247557559387545212201812554270754274773803234427685306017801396393326145489351563675360627470214114429382587673938549097482622393889824738906212485905716099321442083893301492643035 - - - 20915782125254131467742694302895219529907066097816324401706601675580969340434365603304149905023489973590581006846846131929676261005744830053819368711271412262285807952909311648956445706033342035676449785713273248640357425172958906274113997935717677611516802297831471745533584663464846046703206931833273056317054635728284237560580806364408221033945058812861464750653371139420293745781392057528769670280910801285581975280249909760095472558110031977350703986850682341230829529120667270064585159415522704927571203201203887226655504835183618477622800887546531681455658723181368714666033705964324910775837633573921516624051 - - - 27343869532321602156080302562657401916165253417731766938865186719011857819832066981384944933943107047749414882836121753209960993842683431271669899056573339620449576675924662594852992947950308928658137997785219978721396543374412555339068808540741432399204144906377816701671544023526758485328197912700731787338475467964272765795191417458987413463302091261468869590337835998900349615574140940453836436172887662838961784339454024300343153606819448334085206133698856825074442896267826047802676198847211769043580712608723347446741016462296945702939382110921612960867060763824058046668242675616233061985282595013855436003071 - - - 21612917697509328253020716657308819981002997633241251240092959294727897162785703235143799018500194697977965175737708435692232494058417618739517295251385688787446574724869704599544034499223315611020005859924613515116209546598728707534658038479275020433493376776680954781816607741830497069082782036865738699727938940383035289595381492189084561056778316555916911637995949995874282573336102895478928030499880864917322491539411046600238550337520237376221484558218720881075377012201219918560043193706552093279208871353850446053240540611018765809819954436620761386613587730098411773805593517541817807845100293795808247408606 - - - 10196821877406691603990941684105887874339932294593208542848495355700473157195142095279808204359023730092771733491544530601513073330561467506044315478480892280394174241256457599994687054632983018793207259885851514991110098364449052352753786818675618195073044814345378498687278741201610883888601296915945834284611231995762401374684716056050427613291627138633141909526692699820157005402413519790865318175432042340988737313491541835923395463177208121614563027887477695356393975909657129590878913253693817442869415157947937117060354143500937738326000940359580556546121038560103444803370661604396080940388058841335266899135 - - - 20152172042602390333194309364339599920384921651693010717659755359581055115547829581143577745663340584874558157208296214012020141228812012859537792568613817150140722981526621226865024813767010701950732231977021570079879704368506699527125693742399808915473959143518593369243668678263129342109120699916279297376608104067152140262210973753684716564970608037878906658981664133032405603378740472655822305901579955833816499826652223596727138722851579883222235178946612243612757043717017690618318713385135565116624652970793046062263557319848479466560966020395371283861579874966255545210488207310298747432715245643111146682828 - - - 5442394801962677776321132880565033387447102874308033505131116938543703774014965471050698459665398794992640340112184076364623277332867159150195482030920410232513388262384754153653777376637401359746923415918279434989815794689177272839483734735072983025166230065100072558687982680768078707426071931139522227820105016065979795623140318898841305426611375367831649142154544417770974231590339320754685403815709936054989389192697813342850425586170027930724035315478932909939085071168354935561875763147587312287066126865884162827887377056928810426723555511032988179984770686528821410542423566788179380130010150821157646027051 - - - 1176908264497432912693770621101016709880129739943515934799197137700909726831707310196512990802573730940241994712384164656639950947694318755661287942536141377772587396052287713083981346295411214487216217728261879097807184776525533690581445442273523566361826072237550436534469808150518150246613944291619490840342466539666242296344351848575716008050764486544855622595421306454626005537445269225674161856314303288349910252383934115106501219355747700675811689617933934979703053954694286996040806560087563285193276801199691318271250043457542320744765442853635280434998831092189796424135714748501161945517863559907387905066 - - - 29339019561347282603601414888499744618520975709041068835412374445921466362151465834244589547899703560208313064386777467150852711748703163445541116671855852480979908943008802643378213708034462097115330275637985899332059556658671568902708073320097099035939927825954167924765446037329555976655571905176716000153986853455890614879779664126585474395939152224858489825537657643580667018263950827510030404994162354022817135978557918899638871445912338226162189156729315694863498059742000001218236140233039745176416459867416203244842740547869005040723739954225962354328977074187306436098334513874078926744392294241053686847973 - - - 13998357518298416295762717233124880358323247127181715594033032994881408853872999967701699751920170066837836384874170084501307905061618823231379088064253211611578560191985382950106905257921971556068646968780662185152644776592334151773829826092332757278447074063468233507688727230279596629671396020648635744510114977178514724014365831630554508461796891878157101498574340241237846543137735548121341832699572736086268386677986486835447299769053905829619646760425147025932154936519885878481660953230591407423281210527448251182339240066491870939858882585635339648280972864960284780364799976523673210764095549820319971284006 - - - 20242618134788186263955441127012966661653904621714900520781751293062827182945517324846942969759939058686303221395621625365380738219006456601076029888534075520080877965136834509508126239291155687896962131477224267726126187621755104638507088214712142970040545549238943899079898678084085547723573902738744622867625741115562093349838654586650864725507243589656400320901669558378352601916264628946198815437405035117929088373009758256916686393241357878460388122795049190941295362002823703189917527892106477656600138239169941956862589209914941151841145512399008854325611343778454535830122113637699725126890282642496201197264 - - - 16902089510137020961024486460913869994532175747143185918646822299967995756710030404057299575615817881185560053716182442662895979685076729175559186926781894544581940721076435155480171704686621882470593929266232863078247946167219564728623790625261406823239908472685046731849781439037988163641252105857414888866303454114198737568195665377505323559358695161302684384862575256489124959327700526978128587511676636680408862890957417594479440737171214226413929930235665411333142060010425934061211466181602006948531797481905089234791721488906349419330288151767650886373882981982215584261608214330750110286674076521778823330728 - - - 4164856428768412986439853663852962843733960091633896148679492259860576897264059757581279488096742396048136691637460724194315633876820625759529505521667485166617042283135315188826816769233240984331738975522850493678299103494191013542271837875828759812338848901197285217903376439870747578739612016436697343826409690651411699138804070965784412518365814671749437348508863211184297773785737975162693458486494136079309332868981217574413353538425792672449843631417054397690007552239833940382723695482563367344435827281349338273658452964354036242199487004114663981815593973542722031780039043088457146833588831506407030058568 - - - 351091306432428483428641511365351461589983550352819791626401521794360763150276801277055505303327351287957143880042753207268693571930210964323499263915544369812427171282734370938900204364186103693762696061457290652433143088621643122789335763515417943416135734434318167691248054681149904432862435592365213193522478089556358159367981298643941436389956356796487066498691098806595871630447440697599697084182305810775258695357320793864548014033247071353185374788508104752697457841028482361912812540993241118173075852092097875916325596495355917524739359029388225243342421976037117020130954494882068795955274914240459113085 - - - 14108919486085675747947033510537804997566455241844509784959804935088658829642301142238948035668823129888318722727700731068231703707685865266253029318406629234754973600294578274467612035172267811620010220351326465493658292387187769579365792287711727107081175185623464086607479860428981375928714358673773375954334787792774131075634165212886050877688449013033172692055715693486535496424706633418206161248325494719710693714055552695576132340106479159365600721980534140300210304861278409879884024637561283809829959632894237793061776155804722696303641409352816397969759714822659056540436261062105254641431476246093287535492 - - - 22295101535984072152195836269500104273952798958031418991447640188231901321456506596816185701000630797819714880114678253427276855527352741093017775894089613303262143018099118728577119488252637807785152728515916267083246714004793301227611826090951538909730573786064575132145710582597641485919862782321798551977624005871962234123640921346079257245363590729372552238888562577424789927533068486677341110166636683919538009103428200289534716307293208719924510960910618025245359753482735556894858898394290053347406694657190850764343871132052896095336393873743177543530650365192883795349521113288762694341441541696458525323388 - - - 29699883000950138360903342633191243777829803042507635810477041419853442466994354466715472590388275908068738638250725212948972256586686837376308409855026581693389811091144418987153363848333082095094648196163264796277421116402985345073123023142236527196577929045957748572380606291707139466177756703602705427953119750786017952937497364850155983725614249678938646881407658391437081346491183888393687270948767403902108737261446723296991387413855465624992715296331976879336205603337311884396135652180515773090930011370912371819128994030279289337873262103631119405287821232702407953414066129178849425650144447000418323694056 - - - 16825383061503912222796391828466021637714934657775897474055893855693026940251443315489102137722815631689266457412407625294665031077410534831456497426766416286526082722671029840695166020131531891007069738751433095123548492258103806947498840452766077324955381912851546676140162244677940360073602639703164284525960735100438235703797186595197160333858344364282691780641445908193865729099555861795107053641904754024801836283971527299928620950104964757586672940062631129686368713529008416070159028276580258068368387932216468549467894511066998482714190974668495988240152479229362584156116825713936601133944938255842831663215 - - - 23495756703169765411878491452570198049633289551583628189064765497471476645440157111470291655839850131296464729782107838435027218781288519946099380583228129687838519509353200281293621007608983319503739258381014453744495717770962594084471465225851145905238639826359838257157233134847884120481915814860979965792371201891736583805262760939510389687366720981857150765393122268960132993050315897182612152426826084369577300691858617403190461071656792203851898391777089931171573529742187544037188955183147606245240940287068339932021006172287984611987337254215263640671924842402281251878465847479165179800210243412244242148610 - - - 19362391326563996538941923672456376783250303880735008994786744117241322933684065085332605097547572785296063476199284481653391172175808364202460280394560503002727680768329862479769045815105781338040448212528359498700243465303189771058897488851484494570273244370815044841969257444395415595247237515349233987484570159068676904493482152257307753174697463209870989009357467732902626474234100401588590997592701442603745952619205995774710921913398280756087550274642190776626109746735006372293271874997127643478809459018675219639412876565356049142860974681085522392475241956749991927624091208510205636610697537875501086862902 - - - 2564689155955955989108850584626487188791648521059457513791235001726824034702607280450222035320749861502640312512065718865554688155040425344943450877140747398503294170834384296798452274808464915593013695263319682529423896177234779203200656959054822132734480588523615276791860947746945332964465606780678176634130374902391507314719107282972037243115949630337289737140800207244676209955296478700830083063383110353707644097507047041426886632284048110468326020387277112989271145508564064832777753084079701537134342365256176813289928656837650425349133893182709512299964547798881194591630977136973677300074089803624523422112 - - - 19413581375987738162010478361228598753534749679264890603293428504448685639938673718098743108056985704073337356029264165004282377401652933066003965155062104067730334798316372708074873094377952295307908850788366800075288620343509309132073056511234250815498432285685646735003797213687513125351681480751191036083976805873630242251500256377021969746633674437505043550445011170211521581714785189232303949490448788741732736886556654440460784626496133310708060231843367816640823655133841849912751126756782385351322857123374887660180085643826290887363786092078960300907634093523522710528516719871944296557679238226403964927067 - - - 9172967570872510369533982447823090796741860536705055037853967099486313618978039621183074580217333431869546429006737215678278078063032277876868668629680340257152569768038448797324880337430453841198482525529922380638723606302515695800333772500646612554068482123253740040767069098622703430832555281784306094719871865767130375485997398527804030035258071463559549123339380809475170690343160742964404452344089261954593622745052292956920039532329128282741058945099147818410922385770916979972836809184303206185547677470791557784326493946526094736604259805128460862244716838548701212156074687865281227018709043372563261561501 - - - 11790622315483819416413969598957665506396656107251649867304628469410682768609815320190773146947851778675123743415666825348719242763255181646570940873640105378894297822244507009305911358946091056186695612102977690760584314552141877803729384280327691470302950756615756041052040459680303279706737178655202970583159994656435526956772784719259138033297820809303515651603749580569409338969204740656637428200748456136069912978892538257237608735738524117940969384664591839583726039179684111340424473070622549733651493093872435487825388009907227156722701326557514343725818781258147585771298072635836418987091073119144793715799 - - - 25714695439259468531525651493002369717126328601958986004876819445504803495661118577798285167133733953495924311203161705204100559020696145313806907732923030539979848850316139729391177075000097936892693499213046870385152022122424529112971953119515460102007283169183093965322776234218312152085163884122817855233291604173463530543559473096098669009157853050008639160464864782633617882919109644875549155308742543945435801961266597863211366950162720226657693620552599623786535555481892845236396543619295883629732816853734053092078918973981071019840122888283715399923174701948605299149718123509107202346521993981829443139208 - - - 19746589344567210692076962869610427042140495409463177501686139093738769047893908129196088454374979623166974087595900009797177067339064594981947225317597744483289877592677844228135212875841581667995555810131268205624773266311536219688637526567486710532928432581872528276989799554959274935980332815679130227871150478303582637383009992613086749637424091192337564159253236395803784438229596491862757568485234789594835569123330822495241423252917433099810354229306508626499512060313622251208628715936635076350775254497033055978047268857127386541278808444776805583767922635493858405731584807269465369710808875771748756870629 - - - 23167184464844530427270304372182849980070319867439508364709017418765529771754689179894212397621486148079104028385693478058329395412196232190632605521657945017970216567464905360749938913269204032089306677843667579909331962066855781399841297666132167676618664168775923900588232412361969150983829719605613264560736453516624420523099526304949391517810305608530454592012735267316469736837244061306472303285768294332622175613389856460290408893717394394386490051555150781398639496642443452629048526491368124607446392554147287848036575629421314799880371361723877741224615233347704606584845924911935607437930266928247920369608 - - - 888610929956906510736100257443103099175001120130349223968173253243712724699956619238208809606720016408601628022660470149243268219999492013244589779676957799719179731369644733171066041174271750334356149897855753495610428149426120208888019408588837209002338578511813112634293456206981892738145795857308889895552607684158715021710506671192377156100503943058765078751827095243125509955626043305034471789106922196449613378483024768542807212964964442374156087919552728071294982494943835012421358854054718200483408284907541098937932644456636505119069669037298497137753323618799480209103426223045975057727269838863185903524 - - - 8496416901553869965015265408932536797883788265585760363977445059393072057699184849122356627117172480819582637074548117698487219877162454086889465856863079573738210407161731396593557650414436643258508022109501938017631455323281969571415595378727145840885801735064085680860648837197725680810638666315051425646820693679368386613747403185572966466936742346439214450527584825954316655581187569151747834178774606563174248522245517709475013210552812484361250613281350419095502762168117345446622005450143871930394916193984019263257217644249427207004894002328674150770712687000820848670871759897929705309394270067221747152043 - - - 2647599168036415317726099772312419905884496127367823053027441387656400475736825546051610795334835977089972816752808532544398637272251997007279567257146769000473757216057174167192059115513021245530489219466482228330356267179786010942129624194061418798142429562540657488639594970782067390661133463441997022599882523651824568405812106831508504982300459136066936784327540401064102914194100172365812071969402835832749228320940677582484599350631893925450025118871995903793892963597942846902542539202372216091862365563327970909775699419624737302269214535375020774545062568997849949230547680696688651571586127358522195116965 - - - 27190935651141639048793819631207052005774831183508594512012150046906877527192822360345336724777480794030779783409855760827526518278874311877657017043594592855403764349604287885558617430397583504147948327456582947467087421532484392958270655224016778035715726521434254473853957581877334186352487326191193719730883420187699669118975527273640494383215926457398562819515981454490212396247580414566071790047681717416448262721745865895684750667894056790322422179331335413361725759704280283311257358794993619346132517259729723382316175664910135071501120820202833006810294079210067035555632628663135627946530366134215105518301 - - - 431565817798506580068089278941087814198621013584090977375120780853736207780723287222034009242047554743311198403468665903085294406351895264029216991526559355984105147951596099532736349562361493735977761921040845017246721152203374781873183710704232068117912910232286976976025590570201196580449573198108720588770099415026251606848181739669862430685288469141503149807809332411826162841841237359806509164323490637143321305567746077237002330360253557362072491512895836348072204655613267050663411534036989136585287990775436343799766362826036413815482187513774636864448891722699878795527191009283458358217021148853897774654 - - - 22058848653621286297996712466935875075107985184922775746415501526985481522589717502643679192815034363678938188152254246548380754217724900699973164801470460999691756655104316521512401173638205093351261982841705272470774470397279964566015800870679640838588517452323153985526489240540045852500514585200147490476993222106876455847453674789135363783232885950100524206410738393990752507496087628354452418071202036887482252607328077668704783972808890672670244150291265241559006959768475210891862898316355517449747781336343924478153785914932642448874285527181086329678260190310730496465143837375467348344116085503042417521664 - - - 26565534185825558240511117749385204519662002134159431516842372610726165680308762800980078593159311390732179442136542485550639417124906949920306252380031803463404928018487385402152348970006205861837521871574174958618697094366421259588645898460046835036241027346711731238597673648984201644264656230089915276719882191605801299570020363447679693677931417513529046945353401889597767331895827141589328960869104395682054267316314350135295008915690695643745969027744578137356891626522277219181358740383166404397833110447513352041644332560772898806303306647823319363292262458062810271406245679232409786295017107317870851559793 - - - 4292733225535268456274804146254664244995416782090955630727419668893848606899595054295395849907468645800965450512449393614083940350538609059665537474956430263217043666949649260445255671725324354217872399314042609803284841012011671181291284692761792866955780530636099308969306125615074688349123233926467845343937917743373486212821459963982908654905574579194456714797534845543101909411380070752995949059477720819519940351713642955817944085938570916502438204020477508346443496027246975000856072723489589189921675012123388986703746350416337177406753298870668786829152147274671452031766529412248363377991037725753598561716 - - - 5132277807395945227072923051892936844348476115583987569463594787619095704557780990686155548362709291041708242783590579079168378428821286618173366025065584206181179902875544655164568553990435932734110200800487110038340505616072020382087100722351179536616308117434461991577911414642229507097062537295491502630368494699414342552519926484869715125735416005732891243359366380295544895827121418550264386318198250769725978222704135758104335473807847396987775893899386666142324540468174212413696932223309087894653313991715709966409613105242950103985809878121810336161894286203235195799526318342184352452491795811278574019217 - - - 11342582401839373009730852682923294232518087281608402908216217733852128648874109393488780705940620131361936325942438611383542198874525224315392551233185777988139802066689235243506060012469165526507693994242974526858437403672544805888551437148217618348775052539954642674722021262245393269712965489907978844787567040833076277296290399515960132507748460124605221702049347163094756396119916665337838164527114968680965523066072175055922642343711405456608972529427446891363517732964739973112054060817953016848407828132913986328488169397462595411763779123246268867657590727325777109135207234393508353904177563837802648805705 - - - 14091040589091222017342006144846811661507202139006538793133997891119437389911918419330894188893754818788176311992668288437253571890690472656011930879264919260105116857926314547081989481400408733465503281233348194591188033735586966529934154779659082498453381259955246588271668573325772916200179346547889510325355717865321121508817670753461929276272505185223425880786688062137058272310131026306373225972588235577581209504343557964202886868411682093341776540276299525144341659090320061185588967303099109124935421702513223085046517215016181309982792937497336679959793703883304531896476297614863651182428601537754974273462 - - - 22838488276200367709685776530446812162133599608313561269997909804913162214135825816428131882558415068141521808003314579907689685740519564177168795091849066336641763597547062780891878657301963294247344571022507810936671944694043086563567753212686233625954944987270556484273225593418775560163975876407484925776356938346047856899819245818292851108359031271024184431603560473125343303316882476088867777377795629682848900929103606805456692456287409803015021447153080384856485691532761978899670904698131572636362020910337655998509407220561222968311023694624150313527495828218778920472775179345714787729662842961919640241819 - - - 4965166639568909956157214843405524902943297426623043722176392479339787640962252454529714772053364577146659326360257058532941607959137981638998237462772251833681809776990044450495023291855463139654755762486430071703517852368878375421121565726950783250860365794746653992283133379941345807227190818534914857056136377923040964274016999902621948647265450356777408178644254807109718937226830113333892122212172202717679285938790090237086674039612751694880084108968676484658300421709123931023785681824839230241870305608660395078395395809727138937631344534254276731567003750736043430690882134528076803185788036338849902550668 - - - 3713650818846718976565097138840496196942283781954958715081522265702447869549624395221274255180949895240280492783596252571294194238821558501116619311772870589623537083817045367632703346581886809669041119612469904242300651068639994502966847036411772095698829186343141158535599899684200303550307792363590957516617536035546032923782915626400036138393585698194349681978325557969402279483364535814610884011467946873624383868816515686216598388744499099847395290476006400572472708013638161849453015800631171130745312510735979314758620132558013751166710705118059954883992127511954369040553475386473722539467233900295092403980 - - - 27597142685887903942869609793412530561422471553565647483302376359318552807588632677501340346269813510561931607632578211674446241093159250775154995383237024983892209007563498160224989627685849736926801457462948964465947993867074398267684466594195236257988316252041419360339873084178240369607235485594775496084964254539450635967267389840677530854175067921630522922956142450391503480201140520977562299225130184611894191474787587341944636441708445362888746931709517541664740782635211406073238094221258893819894117608849327472151411199358483065128844455169809733326550376981217182182551311292198400715528389704278552659499 - - - 7883126216487191427531801607557151579207750773516099054468325483151471747571672411495665649244018684858188870603027987527624866308337898149112520913468090939082641125279532130801037060983817157826613828810490421246166084595481105713537701609245822776298423566921309533852983680716889034164104821458232257916348161110772750077219544737097161555372896541978470116917947569493972716198193781364514017613374232627828579253846932418519006425070131362175352398877851084363081987096178625822159566294781470069214201616830613032026612178897141539553687670315407755859473568059901056636655491015729255851010162130131595655605 - - - 1897236133370989307082548917125046627551254290011891864911082572310324048704216985745024154490235969113986597717617467424060354292384691068125932267731647565157364838268955114816586698217844677565115295824488420241587687024335193796127644043547274841083237778314024794841571323941001279982011296907862529908563337934164613914248491276840597334793862283407360111978493219582662625992054921091080944532765109346014541762136286440721807303802484180621191361945712501097961573454262984116090352187376645753276659211950227204211863599564361209250697506269495404478267467643800630593407968411985907546413818684414963612259 - - - 19101698323819920935767931238943713431776756485882881262615309595649508856901951552921194493053226144235724714437598361797720168934490315239785311055154620736505935108390825946922715295075957560808098041865440757300882515641924113543397530714670612997067153756326014284395988357691410364372950187837956123528053107015669205553793291042759899613869446060911862752633448092457116394624290716816279326060622876848782614732573303082924604877928905125212171818722218200879446472022603381035731496628477109081505280621299735355893529126232760389608437793018941765614989976475390842455544166238386483986656712165802018974271 - - - 17509603658718937282489385028059344347050720903070674225401215519373238825907948302869356195188777799484382725727972517407115909876801440689708448741601950373795274292301464118278956291082032570330204080834890182552506461197673491048360958064640473283858387960783408210676387835209176235394631685743554344770296837182883278966535349132298723631770217305951331544165605444655784086476263606117166894684420670053146463292251253357043203365494379732246422102349735649246538211207672849526409388525195817742279560076164008895853824271368435224823118497021533484659317430219066310927466643568573187647391861148238823038136 - - - 1739210395534689655268765418307073303543302654600373610949876433798140568475240833436277491299915791340445389943357575093504092306817906748614389182728789653717802107788193875702819588352167484980943369562598173674804757860452359004462845113065805451523838616506857043771544764007372104832690097537503829094688536469444020221196060905222077528636189766737260375454971529444628157485481975959833613584188891123112160503770186087189689764064852744432422775022654339066763404135436114103238658277335552537977967929831545568647295104422068317794977946387362907729961137849525901433527864942134035728496302904221501321980 - - - 24829300517993071016189471386021559653509073609993523312799067258741242839834805220769361745320614467852344955887379156153246115027481324260005751271580925366758278620568453803711224961155759534135837163660108429444964701584395651461558728259830301768434896952379470036211384158253742620342054824202759038820262732856878905703029028244929665077019925546156853150750214749269726649707223356992276292649501280578736487586889900129536373621998128719034669865674542518926716351627807300471521716679504481933924781806749730763345391362043357428813424069335826265453120350426578736987720744375507918424971355419729638208568 - - - 22180410448931494981871628544995388071024175883636458774499911484298298219240556363444820566034686656266510642271784865767316157553661223057563004876080001176142834625506096432915763878932456499752648112806591914580181633843636296821652188299854720889181886648903533314221587370472630105698840639238230948996478088997179962800880525994873908485869426990533344246343503839307906837332560879280589896134659542881232206095942018782926008098769537311296203097655534188072583979185041835431454527404570631480301515551071572105937720394983161293143192208382227591105843843577922322398388474242705889400761417603395326741007 - - - 11869705215631610733995248361538799213600128747391220687886452294285922295142748958631026063396938529952933059687305411385279996695041949236445159698459484645348227018317661710126053818273267267725747453092757301220133292316186036287968780470052621460677614850707317452762599940834370474884057052087760312945115060955911607125710485309462068942674737502410629886096589083521753385675748738901379691077608841462701668613936951583990097148678933121198657882396706420567936589655868324516904997158526200378698323998926928976938820542620113664324119977662054870666693542535189425733634607597128294097703239302980124414867 - - - 18057878037063487166195291727484572314460222205257573217397447680892060127357594718330169328915924346269128544646638787903003396564620420192057643668308585655981913973237688053685827854542716391822142686646977052863348537073226756934043007987621702054826501984276178191426146133576172796744141038682302650555506522974256614088344230296064217875858871450994677331354683230990698268099549341520646513544903494185601931204179469502323479579765929502605335374277900062682833557130120363082838242868947968357604739544663631102873081839312165348847789648998670095014544917827317855370597109545979045251860838878553155384638 - - - 20663255151263917431354525763404687848188601819271918046776623433191872019779268502809890707702661872593080747167820083878129164123000770538970144708631113013120384072154844714985172307055409690384860352467695640513302641962903143925382034162404022027958717211571221246832332983209027957966187265239298246952980243478420517667060681930688921019385131136206435890971322740668339496104631686680489223292199535268734868532730386753078350340040319217705239812516348631999355661592696108312018936250181245204278443450114277605451815882905925137171710450305949898143816828430206672632640285919103201083548682432533701230939 - - - 19412976009323365018408312747585930446858147814752379401246964135778141537499414110481303455023855661791866355312757681437931902099950173554888384714709160869591111878110585733316210383059304610570354208659798199108750669715008158635939900252697093017055796526065895743263909186818780526766492697518102094136092901051654242344922639525717992485331441573316236084475975652844612155974500906981872637256542531596548185326505142745004503886698172643061739840277679278046152490212635964459534641260434131096859061686764535707774323774642990431053337513087304751981450929915247298709936478194183379484451420865245725878846 - - - 18288438296792437827787955660564270514938313186327305053385748440183011056101164110953585141657013248456388385435657773794851699085642479048823188904013467785062336959434472858915467637544525293722699070409901020509333917531282938868684383110413224664393447307219014076322991321520647162326915773215175813728268524060042690762104146894043495938199541568539560753612210870553429869463599390680421368888199899885980828097524700282000396419012290261567214345530079642626047279142519620946521328850520836807421810452292737329425667645592258338641343643301589010072602438283485039537019143553219800175812462944376000317167 - - - 29269999688634510051962453424415889392325237901607781993688336665860051878564373558670440255007007849821392245653813877688511638492130696241637007062321281314662014168858836545927895265339380739967315238846496581447195165556018761026827407984025140668470267697288962535302104602449186309475195526602047151187556575715286573145943632380223441501655824915685868328572822573300480219217971468859448926540470009386604454682212655912356230889051516497810761823636204126219423904768652085154015318138051525287497268651080313175749555514622549441685742419411057057507957624148017085923030761342035205285830105957853826882852 - - - 18273075744149030461154282593404109968794280360306546525434865747937776407428474127899018246671198713042334643559965712890545558284454209961526818426500671734404974909171977043945121661954313381366568402971942056751991594804619088481052459059540437558815904691180727115121584889744810154439601357275937902001940032676778543129953803899900937943148778611157694348341656508429565172929952234049551871542058900579168125168958913744507292146583378162873023795804098507933104817135645323795381505658025631668928261061465400763538360915489592513240472275666507287273031105439838233630008739932283492082075493981928336906832 - - - 26529133367067376753331441497630191453728130649859784045902577884765908577055663683615693475810389207619447375354357282661414713733549423823729839427409583842720889916272722768912273507210276757479121137474512603039382196432475709701662002006235814977255161950248575961197186126323433178122816364561057233411259192357130203612226559640328592496564200853263902136259626935808196717738099089016764975307238089563412356505288442447154026457943823072784621709649152623395279791203395520697922673967993337536006568391382745465693106429618030272548164161480187494133857205815651731891613909795637120093964568682014479932998 - - - 11475865911958080696993718012807207781100665404605207254172546271372178717738855583752453298279851295223284158121059753924864159530369764046674918642461407771102316052792514895353719581507747443847540067002687263590662670948770037342521468199029877000994427839717925481114673020179816187467295538070403589671070168340136324439239756951498754053658183009828849521331945725791733832660005315702229336784490153890359057269201192659507338438571689407050093349808757750859794796153005032747213772418823520645179567066593479429268557752038767962592852923566413294522148713705791011899468091177372037011690091600020875780088 - - - 14795439708579654059801290198651869614027080307110429484749239223930191565413333072828131223662425203755853116913856454111132156121524268528450303444168005412153835607795057782369996139332743662806221947913978306089069830983401975877440942348545779254952998075857537851678812343345770038304274270908693202660924113491055045003751419083239131404076023294019194620146812734441700656641128372463664929013492426910050010017735049163459390689437843810125288516436365993116215993958750747748811776463964910428119461432710365551613151630057089660657701568835788638063393561202297120708350742214912981674591089962020564269422 - - - 16037545538273418302493902589318961938758387660890300039836744333447796272349051128306568500348437201279861210333911474717156111526372580050690812337867272380047757177911004244743825713553575499842465978057669490787138968254987393498800422260483556939888004263550218956198912648335689101184544274520590603219779516211935038813395096426040980665009003583694573642724085158861330812774948343408351264982755020572521317857167285954115041048077772418478842513254806198079342330740061894918525458974656941931386409746961619357812939139185129327643430225196082838896573795953132371238268330536930094664465441224285243173822 - - - 11276903868372813239960568786043264005533576589325469015728744497414616046735886187091143487321447055510920086129744915802765441116973375513292173196107268660718480681667593780335520159482168651177295141516834497832062821428641333735370101161804987517832998523041675403785594712866164802752530086128151670514360806957521326731845134873610565625859016448886108952200466543949094744913201588232745746850602468512913859176729830738024829968284830507322360681438900569626714539979391702419153465406428220813743567929949595185292445022440086471460817126624210996896527324605257800229912460293503544576904078473116935376643 - - - 3342048326899196356328231187098836211588182332654625750974402935264634121471372766101988808587349120368742470837957018227703225575992903084627327619231581861525448670934763190137311983539055940394157083062815677874725573971671794560000643962113294422574518326899101554850938725170565892769378303853557543565218592602476709483648964736534392507813113248302510645912473602300736360803059143287992253810027590872184913414610971440988967431228557412543948761901942751776027064557269969492961037281005927226532047863098972486344246783513960351410664385028036246216196934770634713663150662253045293697067095015629175186591 - - - 28267803606573157504707838206199304553804234921703839837188439301167022393933602585040695521514448372667737128791076547300959411684949841492718400548024312937899786991249995865676630708159526613805061098249498253640340343562454369902766098063818854394853843110561794189425259182200391824384643747963338511528255230761979564601383363433622626598313201305329005483827586022549822259502822856806956029075185243762238708220701920859193511394053310113491813781285731025092145519439672338945969871825349986525326179042579202153927239376185238696827381433034526014277525492590373809250010208228496079692289508547574382562322 - - - 23746969759907864225686660692752036603488367498039649910578758326180817075540565898251861329763385703802914870681426719623071233555219060051230171343765970550558112470967762908541023524680576636623464426937716107478081775295592835418824385395042700144892957969425723602231305938100973875869080511008192310861505642478707421671931847025720441778569801848575945624658537823342213147287124137071908501677172717110433178501598712494458164392894226059485134589861646953549892150256691277792427095300346371479981950563845995140873464932480886552321315909968801863082170537366773724009800232050024991933155729910029112035498 - - - 9589146982827196132945654267861653486846438560263426767250452356594442981120679583506885439444425567639730799914451175986903381488133460642728773953470612702797435460859441653920333976997575051646637595009809828038739263527061981060950834911937071756257042935946787484606504934977214421030300836449999063825477322843997929508954184738978375185961717334268672952664588248262715052498311516079131750998632083456961262296192389994399398561721242018832387318581964785334368037157723268238643076409925170549208949637920832639798691773585117056301839907416942123250286125976443182905904929672448795877346631652977632094043 - - - 8138790944587460294074599742294612753560411735493331909385268667065628543158423332368330932787709062408999509839278700482356737046773015362518135062379846158260125151226631781566581397445936981069202763515993243066603755973525416545292708592566365758886722437578213322737866008014654022207552014425894636306780513687206279688531825212751807828428871340296167192167044668202655776609173619713341987933630647573829160409189098173571319603257933090384107653772676664110700116195898054014015332900729664612381334331413325996753353568101795039760309956567672054204737458278307411097387682857955688304239987828565734115687 - - - 5246682497869561589012440289759354585113118790985671149299739194361881581654136357956815186878721213718744459785610240365765064578397827711355474810797386979045682325008863329052942637824023957132984632210212709133400552480696646519029819920389857134817472496616886566983384724788460750657421393137777944525738321094683777666690412410383128867351400470749446869590944951550452956253686525696542479553065584580902146880886365725549617662764218958466079924548217983685504940688707790582437745682103673497833892903524836426219720392916124338502677132128835767757761611168472149760856393481187531559176378769765338952898 - - - 22734224857972458009635314244389434190051330421596538138536293199609619122334987517700033181624148929248206832173557540865874452275342394473431597928704569822420773511505587555943660440535889846033023417836354734642470440665317108890889946549371955146028519201728707399495935733969800737425531741868374708122438086603148653671160225584444425076503368881640276793866258863925378535337473584044355112384600201624198463792183622445005816470416818183920449163033824465447061651992526818268620329305263247732213502786004989652867979299552616925696365922330492747435664267742655588194652563859517574928864086620387511815566 - - - 19912814062989007948355524676176837592454399736262210902684145696591872302837464223034540562377227126340332517915047992188994205381098169865691127514263814871295312447913273714162682109141238955162158617072207672842202813695152647971851252795941352543324285736172535667465829115610501374731555572366225815319455465107239194990553431812009332504329192810596800575288354243156068270225865037557817368846165595709638730575539007707518268071401503181776497638248063904102021550249225566392161005310144797912846511686518819319408339760367268077817350024089892891386431404976861933338580168226729169397956665581029007505499 - - - 25040281969262533465714200127549514463172080786908554569254697326954773099586242418512454289383388885966732453302341026911672139623406035274854890692723725119196385286851275463530401492681619981744737793484141953641422523479725790992648739731340974650909520098190324998011988224990301037183542127884406729636357712892887394182220120575537007479571161998020349407332242986796423027434929978504659399822213295554930586418391800960680486410372123061923756653413843335060682180091847098870886016103981821421009691698248949362656407775184454848521364534524625690650849272015972790017862720807733618651589034870046001121815 - - - 12512821857852327513686097767723349519893274898021337708136546467108134253615636194897689805182871823208319358339122124318404669575483676988731265823477014390924333843008151480335923569083868350108272789079984098631999507391236428659632309388785983703271311046522250886836415469394680327658845548664541186187703724486974373427688893788776979082809158498331980709711227345930409564136844239558831303220152312211229647015505185079088867788442223327995012414646386301335512485811441348242461719448957738851860984351438729499767859029587690214761771123257908152163779185027528585825922988723033441232426033768986273706102 - - - 743790623828407593331269829139432559349468214092001890240515523707176242594952468109512584946641295617386944134021310423651614247768694226038938678421034865083214522003593245770849024565841574316836038493415204981597990139112469759423278429118631825517327518709699805055300552900261899696181219668723004136658227915316356783614631823096737253032801360103001268743674539330767968810244916599872889202927512348768699456463533317838884430283321131198982495411246334838904382456144195683958592179432696836346076551296411069577802307653552366423443560024936577892418662540761668591687153813376288799867091518484606459906 - - - 5255690475638362257399238457307360285163202541843049353862505007601462600395226380493555762086625184751115928428677488198368244411412713474054849630982110791244369955059587640741014100264514268376615811171556018265064007947170013930636934147384884313813383854075773902428202485825201511109606054270857865762277783276041484093280325759164854350323254507093311242212719505228766990534053554211103356476108619251652862330204245713955754731763971219292947101514308758114325507946352881628032366094169414050064262185431900424897959185059432755855149489535850595286077746961716426706346412499279108785459921171375898781003 - - - 8302348394128803793003344746874267514162837497961938316081209482018673575282236323961447564772473240567701643498178631971533114544699223836588865708105238118848891858228518465076696828738915440309523470323656605171109251226624240213166629114053742070570951926778670998117046837243284026120949815506490880221208187655531413709626188513967739157090604601914249676221575710933716835747627879398561436472079483753345359294967148179667656574786314499506094978642887238519843907989245616019591948798595668086789912328774566413342702241024253738294717136860904180127025968130168052958485714967206423439198962803061004429240 - - - 28044596563940237719934602633596795866272771436469156931169097851451547611043476048189187261944276327759216014773698900604673583283051663253145919434396325471812733608061251202207690831464199325788293195811151670612885359053217177948375447258220141466918335006462875474342644669089355410329239942993255168202567502791702895129152652978255833447528973544575119200278327665698975556953278512477145810293359096126093103864847629145810034721413240939872060444912643479979588654878917043696612567273611303108262910600527243925904379647820488548587985020026372697182715473417117171449087791741870968234661156117138363086560 - - - 16556985511856554887807489054771707525730266284673651791999913941257882090126876412758532446765253779589754922322933892674586964707466178515799230947949856718647643258228247905115015185415548174030182446978946905943265869128882598481633617350584664513158236508570645206220984432308900996100077503869845418576746963878553936307419666421035902685773094940406360455972327020042671220027740415556004143172404399010428430003673792368229496119875156560453118648058724220278173169747344887839737633609221286152179106829490194421446167464506258937736450296352825023527135659560256591923195134948969346728530142958125427745852 - - - 13383492228298223578198320322186421943876042844042349553267301702260689382795965097959723058743277325532730105604378707075437675362028708248698875398170206168866812712641909883370297090352488607429033970923139956263340257339666329088181323272350553834528889832731892101899025659251514045258531441628745964041513732880483479028259220765040865639654483771930236437689265800726662585751562656030584942751829974470099253788555443872190916256331609085302415357712268327686166018160644739402322178387608708251681160812240381215548663228389656570558322890481773412199300233348877567226505234450158460720597449456829320276743 - - - 7835479308639806850197607017408626874248998745760541291829995037986895502727395719652958340935486861841544002503546557964038633007480988814585806482282093996746805929309807303089106397798493431722065766596822728068615658949830337695654535751586111623855865203157671569265343773284371723709674921327890922498306718974333506826627632690419837872364982394037524421290415627147815229577001076712929729274883645816773155127633804837531975772807406309788576748527075006131600552949117582273168649269183685320070374492347159511485784708092359935853849258252688618841028373967902757632549215528704318872129154076067199743664 - - - 24651707983582072717585126126405400164501904890137036924171556424420624582545161417891041515791560422380052540608472755515632268816335913163691347514122357587246150746882823140369145028828415821958109413386774265714729881362638466311949909881077701212855911392554057752562370940659048419536913566156655429761449276232389802704509313256018576149506626658545120889448831891794025377851051921288517693477647283784302663398521612218461460295406257433973449598636595063169447791587321396926517230766058472233006308298899481538214060855172769262763156875230340713819427223819047560907018766372839001998625392923057875000793 - - - 7176814661229490080397504122138770309412594926635582568136112389950590656602391701435655470563817976615804589407837917548184827139570742297724581675163084897271718344729134180972320098116859232672610722372599559634171839319726232993319555070425554869703541101499303825845288056163131815671521624122851683802744095092416044851332239250535114394011983965314726932795394505745414166318499406605745005031939636798584578466123325950575014324103634083171761385374116568152885178487738888138181632082500453986938695778417828410920643857481195637865853847531457405439147690963017424491067359712684638111594335957163194412179 - - - 10659715866703085953169775424117879323674390228465872263438686507383213945213610898439146544454576433416417357097896822360085148268598437195920803270950742670035369255888040145805855117045961101941129756487861222958191869945843925378040349138080555584021432470970969996917359994791770021581883416093633279916500745571961022069256429585205536009401228668906700476616970640607759195388189095588880525500171799706327918730277942177175428300151951372483771072315170966920774715151447567492785456732832934383824592440002413451369136849877570102467819839631903827572889653456624654700015813447302736358676837179516578712475 - - - 25220535218616267366335946887395241072403208404627124344253110423216451058584011224767253591982910424601246687593893019019556227272780358878912966801024618971489364666996486780092372963944675617779970011141507090243180025322052780464711441773683626747828385738229005673996123494850596430525448264514365937915987888818272689070158752352605429229613765383114810268644533919840344487404976034134924012454460585303640155367625304994192444269451661152153398741944703450946311855435996110899536675618707230011318979133384699477670318647731330492135135219796365427712763770496483432910381707034172990370866123699919628828870 - - - 7908794043481032592079325271264542950175928630196158910463896586560587715431255294099287678720270814424689610828251595223948120375529255818060761716415768815166554980928420312187092267144353693431307114172919697933983916254051674701149410886592920653126823580853317261953499869743384139957299507469205659302712605290901674150257181579514376140810421924772090197434994069065813998537570020986742475567559967451413009852723732680529919341872045127389471423071699525114323569420415229742387945333571141482034894979014935880305950670659988290936332933582636986224307043735037391691238220970637163326812996715592144091578 - - - 26296178433486345314232197658147597098290683315052762960141241963591671618101508856768577915437523630103842952022260789602355303570652284748945594359638757086262300182249433575233463025505081745976629265294983197382766780125229917723780634113688533812881616975651877914674531868483712816005510092607137582682421105281932588654693164028186915247696359194824186896336431224303870347589385203719788134401116655110117907375123512745476782436687942725332572102365063933162589256545760370578938448156538076801601225118913222997218855205472569968959891405709479460903501321478972388343033636084448240051486666742266808650045 - - - 25250037540088269664727770120672242038147561910378929140202107754272480529030827030784366583709525800759185883748256481864635258846140714766298939025140565315116672959482561035055101637024182245755331445427339781475415471883293158793426681146876491537237572817831466359370318083356017482411068660474966177932249573054795183065381740665882041012238596330186481776472674502547166511542001207646035644192782698188379308547613543057393034070548376660075094694538618318350445259529196062380865881694867365507335115246357927097095156874785029845962742332843199994192333096929446322803925657330089272782503995077549498898049 - - - 22969641149767801003562599960159302365730342012810939846602572457650482447318366584268264374060261698945945134847218890712503502503979991488055113623457883080440462329045764270182184658553204870161873485053375962474199144782928374363848378112382608890379792239982707378976164617503887509927440011597366454084760189845349079698367521737943256981622817778181483377905320762005971794563454510640426095033340046703702471498477370970175562668896281927095207373216019365101366718340949739762525581536945809099239305285894126885169295736770933200481531252247637808953857891227280018423632694181080646287227515226349409530222 - - - 12183956430100428013079193474903529683640866488432193049157567643055096364340079623162110062098215146778177683343214789414152655304655868708939165685839769763220787950059420011348735405322544406245712569687031678245926866275318565274977816617858535474839188636021796163455465880997980823833150457930065116957203042804274317660287357623120335808013752611575151532677739914964887536864866069564647280862911590677802559163625764787228973077664245953906496476193310775925564311074924579007763420649105552195956911762408329339549199147405752955824247613934240436428259927660593176509170702242239259917997697806193957894861 - - - 21027105998206215483161462128860577348154116947439731711983329321008152460443307192791937248971270266468568775211857896361152773683221824691199377737935117583493944138454108618135747614086832886810398239719617768184549141914526199807785740187562995255298732347531260273343204704463904659722689023690431205853058246673937383766779912000106658089416585062564177088599254500103191448141132198988784429960032357484365703308570332158436736408672028761418523702834346130049692365663526920606354154244402678503217476340691430955556643471882367367365832809172172859091099767892011081038393582027407412152114204531967976786332 - - - 16707226694741692325401134561072064984411291418644153282842174635232055910809870430202901517701099685154965543111229896417535795411112513976488793716982096502104220467646826434208625871397725054939068155801518042127086201161189800656182206178892529600310479992535899147618019867220875522422319647747502761660146099012116044202279882989117212180133875034663434966359288445182262708598769634468584783452458518017985978048630923947540561899715655334694092006030507542832203973705679834074552729060497251691286499425615766587376472055130540657481072097331828012229797658298726397138657398254294076182826535027942514905404 - - - 9472545221858660267381462663916063608958075041568500394882759927085716072196711945045643230349417380083765344754670504945132974976829554625565152275651183646834820394506899313327005339831320230242422106133594534352044872435126051687898941822022792105468688234715112422657685481792364315850730751268192068276265421239445208331081842277227405207099904398800840010570673464333906163913219109372741412158005879932656118102174667393553872988438618306283138859352823000132953990013040550569051551196305963923069123597783161762873323658794021953007630294499765305639083067026369295206224195055043439805488252817254761609164 - - - 12604086326956866171644436396019542981152674137330307456505363545946166158436482560388610815909513185953392156395361008772752790784490760234399750516668655143449049897280188697719189481898868287511960051432651563687344070079139201641581039946353075221201816979339189922459418901874260540699250861440166752850540019027967221847680122008329417120476555434315600078900874694587864436938252967875191321460404609626539543476809942579053015491762536722295089362415942463441749614035213873961221324290056501155184476843954835719707542136503202109993683034966454601610831985902577333272374792768182342856102212019347135070228 - - - 11694670376707875470146376921481886425001730631534014895220796397274029380156917234630051066569576196557525602067028857235026659538990914811343258857819862737131471355875006338972899266769066691824440698589805307356278402187660074290867228514794271429704940816336988080923902278211967276333252813364541950596006294183991903095460766106305064996860846705666794058463753171040208962416113921835664604534545934699279756036398190272834196783067426513459685133103380580001241658910752809172166511670513165408409674811323478240555894443112980818216563802993213577375241204604541265315843118622868839557009942652037103278374 - - - 11765976625888188436406633620467878751937170269711124007949353119160163553214865767721565392076683149462333807701944622437501859491787533352015357990877914688545361512381669698600552419627321596374651494623697984993706527074131667763144381195311107457400637967185797617547480219809567488720452665456111613196468934670162607593949748945995261081016020176127779700137135153547749423427797247846290860276684888174307144892094918278072425860023766510294752599356379915494735749402191067702183695737290632771347402385053881542251069015638691661264572554269641517514241334030848160380382578523226322099747975673786328593327 - - - 10906152871342293282973374333637705074266191451118786107010653096643658064073636783316770373847171469725557763425355322009945485648051899985954839219279231817429410316577715227017207479638974923904909801511293920287014863876313759875156593002001689202894518161646396116705001860828244570953128568342164373798854027814252425775263655420009509506508295744578918764566478019124233448966123434614951363460125967102927110485938550551547931843908850262424670766358630683596560164524860546721742998700961662351064783972369316151203032900226889305555269701110869567060566496829503254358816345058116918977901640110396598533710 - - - 7441661230241437850952196666316391536149543578988887221072429631962006715221224761643746242002081494249366166282270022520660734984810371541863318552609071760617762988063350911105245926866199095802963735854317411317369686935948247289600615173534015397312678380339211468823884190997725993490156921050826876820648977048238228838435795106490614301198012856266520037822665500525662559062832379169313726669215832638611406035262753694334143918711351838452366285044353217386112431002612326133025093463961629294555270513939457995859057441213949678305628162194551913131155824153705285873689453940805284408094477773292368881046 - - - 21238301357264389089176362379860049628352710476752178265398499099400385094320152182894803059575405374505558958440372188684203278005660203481970360585930519752095221695892601449406256180417409019548693127813889075949796073525998765667638571958553027600561734456236492409228459115705730724832807497747925966280129986283863705727265662857581665960415013873804826503852995804385958842173829261765406546690843136097352977494673413827952544657069920669862147088747020636263648554469236834018665112192369831804469959554911489835489756530024503074049158561668798344918381791659619350437824857104346348455100654604748980581297 - - - 16285111015526600814858002992846890673673134630441972537724344195239741128196795083327815206449110174180149248382339362208884187240735282093832758644697827144116870050335022770811089214845671934425135525983949521349105924239323285348200485466489513427490977124754872292092713560795126887666920105883260594874740677226283013218513310218583742872022420411960503005299643134517033149719437218593912209399694614480436032529445016501516897668104773257364670616360521938181843171666686114190682628622961523908670288196582756584429366440342368704497944705829941883178287751159556251797315123455654247021608834394047804584388 - - - 27588968176410385254198339027004643621409801137789881540923640398808504824605259568423277407175031235996180180041002964904505599405970820064959503015791429847298719751971746238344081448915687941493993781825504565896497855078216151532831435552521761623235094887557464993935166000556564125564508033525572365975615276733113781440913240081078764071300659940510327313937106886056103521968437343562365253908848604946891715618111531524564874558517216922553061512198257098233346928065728781371611659747150665611117802399711572721825273621348726104746920254200886939221912023285978333078335476416463803662216649341473956021648 - - - 26808036556260671942323559913079256869680547010090174978782897032784816295446627671398573969110069121766451175760840133406500859820524382141776017713717384267299637249602636572805363269749668540856622235738172751651176804988807563253649899099320324051538202547462321020502043567382855546804362132861878118530837876350413579988010487333748238109615486433807113914625592220624651842040260540824145881819364594722231114696444266039598196805934898135746429883809515228783827629772898612213270835378192119999904940895506585434371514916464151959208816873757825027297804135861788521669892817213380969080868599634263794127564 - - - 16152599530136190506876067573038539114624056692776207540378025823140162004047133624155391226312650098271836969174748913777361127079152758124230206787605357503960353276349292419920361696299858649773159163383705541128142656285831869508337673176163649844032362838101852365216245641336347660391163752446922689076623153261928395205345392233497105034052208954780436878361193301565448698527578597932817951865071009984086534132963628457430149035578277982822345196382344343006871089847397665346158999332725848364155458801557061005376145711565611220219564467017638373898129819727304469396462641021950206615173488801058491782459 - - - 16416577631332024083982340572937128468319340363863381837790192818590585325291691824500770838801965707153411771243751098778648144880642649580929703642599941960155459130947483922400436211361515798974314809456571040278183534415283605376785128095884198713746554316357659107613606901075549078151969517311050727717232901819329678390811059386688680983327494421997295896098459655140468934556902450607915084693816431859194422557082767802849546333361483510618971369339972147646135395160043920138455603912204497897292326870399236725096313454808470794484017050275892469490704505587218684840953567431669388413993205125308132772817 - - - 26024854861922852856454565886240360824079949219316268648795598640744145118142942670825551547796819315522260540726107510446987783586772755174810319642619049423877559733281331570750042845747552521253871041979110374999697790696109130898403334457553135826291895748807360612455357950466764665977579477736279568140665779149617545979043141493495022487961455544894798381665527055137635120433119813757170501378425233486025392883249690254949242418444373010569024536086799986201954077403665525118000114480633634839362069514054301734907401313435464426685960347662725418611751770991487584586268413195963192588323048115682701780508 - - - 19399400506597432640264081618817040222851156441074319604670185197814932814368903638159477551241221914451304072806281987846179982277313703689347139057439788447723945055507865708676955125339028065983122014005702347405504855063362605121070494904882856255433534913178904568945028164956678094168589462601906441448835048057941263806313440880928468856011368897507429212825815044928766632806387195858248120291167126193104625050154505689183030286671619850345206346827803680920890833149334795452669302391785910734877367604289734238300465218241729183626755941208921236994199127372857212648671591828910334903391518808218677426082 - - - 6435671942722223700491191028200510461887037722280835944009197344285957967887685302123158518832614994855584415305588819990310030935513073462322573232562157847012574237223205081268689418007842195246579624379501542359634388124497427085091659336707355365026616297388794623963497143465963504208656267464667984407120480171159381530427159228771667111207578758928673362085074002123628239021892444534072720705706269097099222103852777110503582225767085176293459189336877042736547217059042934783923274490107461217674928307485518097594571066489574215424329995611657819866535402954185314394249427157063726234345217198855135290075 - - - 18477080341104103180386848669769658286191798867099183407908369858466790931926779815095088796745235739109179189911135295854195876092179135391449206112732713611067520173662194341970572640906570572266534984543165293356875618674324168273835371281944545512313916345855048459099246214875813290053597545773339589073559353542996217710483097610751705260020663057719783591004831675989257711084935232649703518851527790266531029950896161708427860941080452780071754145727178268396408164024834052671684438168168862102177883118251280419441015225607792620045656906983826727371285969280459049165258112202390841766977245463275030261527 - - - 14679748353901722646386754470238208965656554078811401068621532595343713823661213925190859018871371976806627833441082984570520785799671328266322091584289852472037606109116628465633970868989465902389202503431714760942708818973271819995129467361321139235982441522298493869147059722375909689160005283883144735798794371396707462632469336341050341622890847100427211002758964174093813045535542930655693104533179173920054051963485454268231236860598325654815090501645750626493398909958801589506946652007529206149955983417651175637773533587869411486866536506498004622730234824512845885725459244176501631108481578221822029561840 - - - 3482474507785400480990915271101163528602614907495191435048553862623575365374123679338164535828266963874125610485288060741027858775515316145338227816586720222181133252606835060609319634620876994542342193900231650661486777411390807442336604185668590663281879297216686412496589477194703682450988590539296972185147659143422368891447110675671243804519442886356986070636161578911182124778979472857846258973040903393419140579526156244782188200754439308197168827111251537107292726086027243125271430870716216591127316865476964774862199111890499588547790776543376478998826143177245959303209712710429692150430718586104529354096 - - - 812500010178665827562845484345450047100203659369475666381450007229417159189740304592904240456962936469613096888726866049062710991671871557213276558598882638107071291534445184105383504349352415765637964435475035267021460263588294107332926985270381503539776541866787186603579564764207468801032082925691351920825844028290526084054415950675348294051606672210146582024203475150630687020722912706730347765581632734077228628434114327779451706701927789084888412352338184174532953207391728643449543608898794704671022144895975187251070947450453071904903754022104103049959378903591801363379860394134468885625191550354046418128 - - - 15713724051541766242543758101377784950349291209220162071602486889614818685140219753354819958332656739853802124705790934248942229803907417923824693532861282073177469146813005356461643335934292241410195188842579105587200985870097283145171968346469497473163791791631508616570134243576796841742079245008617363982878444338733576590328151269450994763915247575875792653796698046206821113277607777603851347621080721290634061329841693166007593184519464496976897516828395483697818282294008457605994197469742623246130234164179944836657167257858187842863973688055485396615378169458111646956678289483165340799302762009027528615530 - - - 13030874909979282635709608369407616797033739571790136905389795876567944133106213531874122613407382235099785809902781328311836383645483679342649649952386972817159849063742594614886851277017622102885237737891561658489247670451683758632537854398698692452927112901810278419172198150522295458618410289831299417516855733250698044660027749805112092271025757456304346954713505551870500520708095280513437618513792049658390604274898493419761907632563301839694723051386475273880860168437120350127707588688277712593507387954804595863167450753805654280016366921672698502389044332287518931003374680677470503069587542486916384057243 - - - 156187331687992593635904184581479801613023169785728260686450718785816745670259120820607254103217196405269665868674668321356613352922689003161960672570036857668079052265830410707949682398937260464578693700716353368731370496006040900570002953834408032800944295630771715019415188802486996252595514516417814858391529770915001156618382158960634388924634190774152497273640813580305814821578693535047987357557644632848104895590262397765164589141972707868250794810219535470424156748287721191876520675516763025645838454232588805854554253520676590922645764166832218964481570481019078482690030246460748533864881056071700668391 - - - 6022920235520664371435680982374477386945084755035376090020299207980275445842777560830054664369474996692748329328995660872799042353389910649336889332990993197954321558019145000674466314949568862847394276908638079965039468765205723675702249879662213313785348421741884196469438276193648181840968689860342156726856200235482479411493303349808439871411648374548915236529808874709793993668519794996964729584663690586023411243000899104233852262688684950080461293343257806235372103682343577852581063383337597314531730665619008102104669066979605363214051897477951949723523910217509245380499913920130962248207524189734799043468 - - - 3366333778415939460355187939648460232770389017396050974675790158467043802916371597463507765243535327741017998108186732648494904384571109837192727521111380828465796047135132984312597323543395422753013666605333521515829378718313041934904284968422876992402059396950087485516859612401982197277524282861244292923893591334979900526606518791125556643821344013941451340472657955831602870281818154826483025461944070870059187645787347473569745189115720504449227298355117535573054472632271341123737701688030292881058053714949652562178619289373943933186559141431353984103607087602531476772347181224324643373591455635390855147650 - - - 19210456430456545559234788326361549060201319483864554313503105293600763944894786021667450796179173625648620429351845669189606467266322356870793137910165741685609035828017566572174820874092774502765807593621021548960547811256798345720870233515343053901636344573035192332978487117227555747771778216063101738429306015582051204449100952174156319758518843903196189141408106607047272293404116471747146042782026857432114203172793952162116281801085838253230561009098569233977978974948399757375833103176713162087453385822689228298726657725875314937542268416512069539888284144096398015937224555507489898778112454520119673645970 - - - 1683019873449270443864625461035780893599290422805545417467125110422446451862019797563018429188335241629943604597524734232082973157542904884037429860805916715724438943938808044701357837806221290837453790185536164313468476664510834514619149613718041730931790105477524001123445751884653088003851614040437235861528497969205587905897552298328382897760414540981703228572534064041537106665723706155780072169184554985454670608341935210373703690489272213192907458344176801513933471412374843968358065923106006850754500521931491379789781135884711054936804086978247761773258313625648692471707993030859832340253036128978176632253 - - - 2512097188310773339344334225113046628006864652417548628213615011255157902755370685154771369730686988877080940877140176832849535485927590970847688625380599373100710433580578475554501751322961708249197858280030226419332498360770123217095269399490885570748381455710453195444065610721943104468279016928356041196584403468012106855869072348608017334285509457571408917353651036292529123905965325361310290398486949743773353129279867298775067743750964487995787748918178734010846764171280922570399808946037961772745328499705266293415921464059380359109984404064701799047868781612485393907208413721114818271188965761640863027066 - - - 3655426323159675899497379235998853025548354625005154388119458548415320038936933153925712446338259750368308001305042975682707188589112108992152925128445411403983933040901153782098665943385969546840634438321012354353202776204298360800101684774470767390984172599346968368578345063964052198626765844126731039701972268897137907033529105424245772160443254603360865820041426277899332967252507139336183594367278516166711126187531013437919733638195281559315548284628937507896699402368303500597433542211389048139124156048190379107503394260517310161739497860362814807938256473885243847149133938792073375035042891364190547573333 - - - 10758465976168965643514443057297630821122566720535376722053069230324773368687520565517471923372508580751886329279250929888978236178178574323465287039237880896199729347868623544243038607795003389214055961728436331688848608439512227656039729519391124388009512708420507427990069449404903962729297950712972910444343200429123252303020144345553786668188604916719405463551965543402924946660418664939649123855676989811739162529144906378070148231693545394301041545816331599791911669518552833138689001336930939110732619955390369893720676899207610425384462780683155263892444444613890621646205238760154501763779583975519166253596 - - - 22157435280329777110082606427712316533745005814177892394366029627477199542859799122804076760570540406170159443665131457757557066839269324660702944610367824192505780513895862137066361820937675281534032288530539377660119139174171980767477893745188895770746667005612302446969384656050371384537105435284849781941053071952659865980628477987195570830220335889082029660822204438482125045360414992719909004435498521172682324057146688418582441414726234059224651499077605189360033555460821128157207159434023848920367550115709102994020010458038434572750084054942132560712879588910697308010023774216435452572954945439832111102246 - - - 27408842938932138645353709460933199512199925361910036072888379305260945123264596560660670173320462088045231256467970211905046894989906455074149864538459250001759133495333321819023030623130047498307543724536751432044867275973602807844180602811607450182803535309679919871345174335437918877264930916328651412104391389271395201609891860674500995683702041263432108018457468346383256573116806405361355875185504846394804347242685443432544013252164454813168099665047840742776207796473126024501755556516945083024074312194042031794879712115137416412157330652098972272474739473187867806235518797139682249515299295443272376164474 - - - 12577847132411011972811263276241226374327026405367494581112231809221412202955378190190481881447547191008172529539472048926899944991859454299465265371159210344383323622185700756424662023684958547343115271980018678209645503894284566884899960855804561151211913861475730155597523127148841093848263865531513879205710083792490060117531909198169337911305566297058528408065333384947760451130467399189124106844089662024913234414573147352785540435331236521688345464533596584271151458789889571780645248269606128882323698232707668997889327716617920933012494873055030782216764799616159506104656519587809605785687751420506725820866 - - - 1742444826422760906679233798426729893200391558314005984435242129504183442740325086703927235606032041750505115836139990785369038874619777336408168516040994815510538960467367480014234007744108972802406691605972376524302234457867936207626222583304281349301574953290230805513087229901702180471570296142422081419638247849615514933976820707794323762542921829749015069421085662247856095849199509214927069077379758438216641247414730805545297875304271619897639744856140437333152984917462087441994850522845906274999208080769687466888433195612188502843063575430404675500794625793686133867847290060754090285234514720146241791070 - - - 22107713532104341296257980070047517161165152142939558285069405258134760101451457289557020753492407364152321326452623709601200491324409033259364196147706211112238258573131072021382932311519292667259124531125802323700302835732187235132876664527640203164769211435791922993766144880171622100342115289268999687171398798541217622989546260175854134113763391800222302150737944566565965759440643886112772857223847425891808091395684389308269941952171998391195874705382330778172415299914767581412450137104259552337427117479683407040411623873819176380529973205591112427876440359247279962753293727901236558727712205610436347228619 - - - 1855999325428195598865030728618076916675802317925856978943792961089944717188706691071081596830652909591220880199210886052072665417590194004469934138893238436701947893791436109717238698195779934165704619291844573696592911945868700941461009823725661960668458036329158833543165243202254883637973080922518722548951601756135132664648157038577053872719156402437111979753123315271073660036228464710237330753831438813960863974704588918767839336215725219643704313780515703196343148962766698460549728553012968456416859856657059564517535377377303258254150908194049428000260397719893360732906333623024885080305009414714225476463 - - - 21409555997224776990878592161849733572304432898048620186685288711675180534836952502302017736321761843812352586432881442413613566969372322828635795161840921384587959077039238392837798341787992315518134174030282622947026951384771344297036120840092222110994352926532689873907442602430041445409178935997615893091438727393472902629271251648778999798093948574149867238306867637677150137458535729261341511189937919552973994449648464526802344339871898950417978278212446498873382463270239618562556679787453323629349270307755422493398832978367285934278346308656767361077495935234895549045650097072031197092189920741353703592738 - - - 5750961209546837324240747401060638776410693746709333788158131450388609333291835024763476854175777016709026859908909161108445848932046737606565311728069437032303919619008097690840577428747571820031121240072939228829284430995512265789243473208696459979645749017998160405451548922102025413120575782276821746762846663220752802126086014535121491933576816356341558083396053451053298979848185738635760543972578624553349846493831472380991575538862391606769904192293847571016384010251629729063939915425453841354970954927989321806624425129318242505089891414335370723700382352642787647551678422099536671073309244059399128638622 - - - 1863688557734960388197391260836000451080103537727946938635151409851633476148722733911799763016601066230089290171782170212508572841067805958086889283602283086803332402772542101973794647468356705140363440301776229939645888311077795987485063653508178858842922884109039550410605410193073958599879179077537000782981971008610305345949500981313582325936121003978694403026435122346860721159194637952013806369803786433010262924397364586456545490548190885119412780008371064578670016732998219111886251454152389480118425231199658841390845777653309032307825107277363159939956402943075715986390821132706155517124969667311323451187 - - - 6457335826658188427962382692005546348795175219781569353187929803689970861956201983022763353469266413339491079641301858419057755695363502362603747426328692717443240703287151102975378157505630066776222136126172768814262748636419958045805586811309513899184424143343898808468222565621640896865497441089682543755775301759395715607892498911399023637013916241470241497119499706036515869566300486763067064356170105511823537526579760256249139569795111304435222167642580051470415785611152452585000379753282085888178983703792851606058278088462091255114667515557576625940887419800486798769072261046455207569688880588376357471469 - - - 27657366903020257889474806759360817146631531137021766422056162697918370243954126603789207205203987542712571039355742973001756223176718768288721407871130946459785175459676141921069481673915127659962833106792461382246880885920625582851615373647876816120077187800757062439978581744864743626827146597029546493675521723959834828292967394756023227021261237412437444841513109499219696662107850842038568842716563449261977198906086567092868213173488802720218902179511852885333792865688864223150513344673011082161288993910017571663510845073110976160323183731507157540079501669829373882826114320096757708910813651401144886002672 - - - 28771083677926773844919182580804972781245046715502703715737503678915087579251373873444275209255064662004097114715802161289039401479401896856499056813019313222826683653654707033174134462586609108826880654416604038774725267402935184639737614512644774272314492485300052486901206698724900011831935474299687822926079695633965605987736213864944392268389439050482303515579593820186907325529251013009356662298845228350057257592413495477271008663135193904641183404471237103369645889213980350634744714755042865421959394027668493287585391525094913124876414836746479914094792760824239744569143720853921017406245367390972218808862 - - - 21181718237349190752791044237268584814335059052938822134133828540683534892563759455050009104036395805697910445231817524225365163551750393435317676322470819736611276498222208014670425197360040323985113968154375642376160613995381083300225552054792829084134206171628449876644458892577833708129175166314610524869597351373963631183857010684469147407299390383199804401087202645637102633697081577659405596287402397927497971166049461662159968989672637665683092392926673611923740225740568353936944909930046427196246761786856317158288712956736442721396335778531538787271653813235443639217370012234967534215536854294642973956080 - - - 22448919246217115585416088051081005749268769076541601387636213055807721004833357815255275851539343929053912350560340045006835360828747348970209069777924348471434794478738172090108164727170803228540015206904602923552825037638922721206462444398621063823408314735986763848871746161807651732764486415468595450207659398030079919017395835242800115345884860757954281091554262562659360947998584143101842018406086231079185285389090269202152612676351935299612485126665179735457123043335722594322833099148758246512981319825916923582287629390353300178232307383764740570078280139243298082701865140163288079641132419443560276371983 - - - 1666280446694564856324266622518443847529618467505701411865544731541288448691242885242833225818631550348253729241345761077852614212554544201961520230543613145240679379700628285915006176954162250807451889516584015010574162771785114805554390865879846170361721705558285646753405610588138176645730231347738572676300234513262099445808767407571201802267749191795571646560514522911836949936104167503573210834084828699491975532019676527057916173577493415409368261560917923202211268760315618215863896655654488496574214369947857558325644274414175934117287174958328932398434118707117715651821153156376094526064860496996205400883 - - - 6637964075915052624466151507982475927016216404474179400177296147671860546077718169672076955318810772424507581187820164426554320384526417202826050575466544029709531406634894473709416928455968845708319463939386587425126925373200701448751789936336242416453175332984029476321614806429447169057929612143205967288739881519337655643494178313913436965253943881714841150182032548729887776118958816871470138537409424198717341323413191668531345601545221642008901839878396576117279186558043571826599003661308812659289100524820234453013801566670125639231475837907519035445383955265811238695574363636410076536485365906348421192540 - - - 14204954141198236668349169307551369368070778338154314615466539482241530433484205191484485748950775906129386867039837615591497053835236555536814114459316958151231860037458864612571498540277152778701260703654190586797167033371335176348892063637410741226315877213222486601524227097449142786136422996722432613397191914329287416865964882811043335333277973800669168610195700432531844458302418178315781491354795545580792230821946256236610982713956565214395413147811733806488629974454790029728162689780848231407884968783678616699104131010273658414943401768667504067633595555991439846990682826545161623137856402418705772786277 - - - 11204860576618422644842204748520401244519508931254713646173460370243383096900736179552320172031992995589612570987573082264550030115419576881747413943517954713939830098154999596336916288442878781721212158450063882013073923511266846769819743428794523606335654109209990344007643334617005163620514663910824630598022160437001310249820653481665443270399731907939754236411376793468813746186297553269254903470126765423424822767572282299511102335051961089370178934428073617175655039979098678773333396298370568377567992577615906249018460713256228321773942434484556873145512004005345377690957509134021772444358164652962022893282 - - - 1438069491419598035736434052816997816011155647230638100008039803970490084982307534041618642771865061032581914237050150527359510320676261520988812368573419388923573030392262933851702945263547464985862845970105801020805719618511380262147547456052246719569737558808924344139600684746668890105883796431639120438624464602704180874830960188071673133335252238441468105176434638331923177088095196100498750604818615333299384116886216867109511383161169670966034371885674266411599539993964056064287760322283103817057891138956768629900166545142872281306269043089300162252875535420187800422850938056063487175077491300897277651441 - - - 23387429318150085272058342284993622595331247900026648202027527760624627583561901992432675748581899154698603675876526876348087665574421749383015430433065144752746777954897074302596265800411690733969190095945690834142663101764589509152517017953332901737139629710356305298591195286381570718156371533851885184723539596818322844596881469119509616797931341891056841289096328538935209594035262865910997761739236409091640601982976766042412957201910350893924619201052262067351758271399816814903082136883107860684375945848582618932406464578055011636059636524939033494188013783445874895426356976384592234257336065716439325941411 - - - 27873405388164091318970554424478512638656171936984254507261827541098327104032599673643992881727225258537083116964071650487652425501355261509270626604144544940019498583864167207600617774477838467879575564060840158392816470709596145703869509854379290078820709594538147786808733403766457846812137193107214749874923198216767847019955800796093879435216675589938926886915464744595070814369245103199686846443021119575446080074727136295964716445163120973726164825598727064333610378871444446838556111913946358043606614483369449612951604454905750561409266821501103806268537401984894965905620477606546113598603724006774549564674 - - - 24748601072350371055271706206445134599781331499344273961403195701614242213777068621910687125529820037863158116776347994075386812041450409773461034154171253965320316189888850435110826159212078813638941565112384443885715043828211057252502428273262793348687460919115389558547655548347895683965182806469383855097196277962807461682589650174125445317402879667882350918415848999335876598232279925200015454773983460243939718221878910374911550602323845006330120677922268135598187285375290838361459332195789403489071419251317054419585769634857929422678643755480074832527054119460478768984566261973607599302193927449146622759630 - - - 14261567225525428042691791449506578623821959955113398730801009071679637558546252783518005690876635645214765273757526511854933630887427007740020212540743926906445056717951867879741779793931870949887424798528555509299543140278915754477021711942452191287339451411378064585661182786422738503694127409815841499247675097158359910876231130526157756721726451919000628589608825315190502488673468070558002630875675762530407240922729812693831970447558277543704094358278872981573544603035699667309497349196931998768181995112926194003971286683472267055041114538029723975359465933028760627102152290334768589824746815144120546527897 - - - 8558682772661765637543170046166390892331929461078735007048618286828863884686528919187596311506029883734724034370674519633849374710122174355283028737994832253776420791338099312346712666823035433057266422596183493706995979660288761546354113384265572837600901278546382974131251888222892048547391765244003548786872463535938355645742537186270156588830857002114879410371051822150984781405574593771880750922664649268701790105442306607206163263175406750927216140800738183827912543329073801402782837491816336923095993062746694949208891118862976419372750547793115320313586165393878918826318608839758349151505229922069105022364 - - - 553376652171149247141119039361722031816387998223925302185955579759378532708044807446832391719288831085408810818845205226893083345855351026246428138892139525758840037553496773443288529501587344532368759629079778259236530148638536198917160322160470047507548026618258755520377793783046289662532338220172148772266768338061045292159582557688067874339282754487167232264192064550728795632157652043572508070668601733476956660414497442976957289818717861818474918636700433873267155190408330341602100508898908898814466859243871301964106669429547688969717393210439825610060934372683241638877924340222825922890661454750100604752 - - - 28053260798134689575840543458221414733984905721340750208805307792728645820098990415818552759141165992083622544013443252790619025077574836470374053490419737408491692087608102082380305652999192207633170647566919427496703646761316718256237524304945804139532433522118270772826627620553601484220584358266735159101149909527838771602660806052665635014504789402358793660683511428060816254319908112429289393601928943813679596865141271047398021761435602568247753166211475268804023985203363434089130309562818050966734708144447754377122076143565707785189418076331128090043579689237397933958795471035632865435910431428636232887760 - - - 25560870067732758024706870711180189980129517835642664365852594725239234453178321513549142748181476007467455861262488900140177315252276387811650329067395749169366233129416882942918329839168634048714899763008191891723073886343392042290195439119996445493144312279150365173966788623038304529843738260814435103679673574030109406877831281461087902572801482681742279561751588530149076078024033201566024465996154945279238083709366297547935007234094348751671706485773533293542607597695274505555413746218897048560177369841287723538205164009924836551400666257617257780961834024934391091344371051406814032790273376974077700568874 - - - 10016555545863502266772836098990974659434491294535276656798412301417801441556492337003264952381153212601829521067100681858779667412590630644090987699677975500424867008801397467569924239692145116545592317481281106363811549041962423861571166055414967244685660686806367209376830976064281058116205145132355870984274582025048018756382716395111979799254953786052747400954585704679822328875451457460808099682741779395153066030401694951008960816770929017725973801673572340745826225504410079587346802875330648652688467676198076853290837708681376356544419461930676264459552505140656058937044720815683421716014825468380702296407 - - - 24439863903168996845399077207024005919549270523414593071584674233930881112516625417547062258781247230009878806435066279370868139635929396078159271384801534194474798074931953164755793930129274674476178629679048103163798788979836769443352349644538337785696124587167515790237495735837213616529393298898631356687181446857062738995292887465219026666397256189878708751258796465162592524565368605808445676289537548357040317079338993093816910226760786138558957333909756763902212471897152268567103529671694012647719892637462601716182445384929094969080521142638453126988150453235977453728791922019288668348197649919330030273577 - - - 16130833390599689643701237046394335684898651577836194860271380360199915959200533306981131052837639518326066102373665255614013444759529503618127521739538011500935653392322690668664129594498553323201861779901585313413599865824756943367811968572911927746613542098231093174578122155809110463892804467775307827062214348680372044229366934609811538303528896270357852254529530767540694962042895645717018180116192037774653847949690746581669723671270659983072589179284332095312814683020771991110942371967519466129461063375552786891325117584109095220549100472956852615769728956421220505583954776177576475623381501440603342361564 - - - 26490565436889297840398604429192937542382959780281748035280290770467781205579256934867998391626671936673270953538481023810659176251615200273222221049880127142918634671009396113071031670554879239381089144192959127983404484129553972439099628343065838371725216630730133650057467981595617385554053952479886642238443722168648940682493824549651386785429582388555965341783824641579801418661205365211799224210269185559537457715465458882714757887087764066359704724939019297971841861351543323344424756486333787356180505663226937254075813708732666050891197680935000046548446386950202028487757526945373473585327247860128391725009 - - - 7451734446731844804400897982294837388079031919698816607233948626171901242618274811884258557987551267678911038846839266760540881316711441884944925557750899554905492154255465426843487403068331385063803378594984446483675176304331077950620858508203273202936905580292914144124523049002949461670315188137695384624218524193951136847603436656869078634856991954169606625673696278335703164463152604367781412501926476852165944441114650316570393719997034770902801938367901027551107294260730387313450864371470422679733432797499071266485468223142790426717253423247907763860701415871784589194350737905338209129168908916075754453801 - - - 9166685427932731249970682885091886689197881861630168151115963852408946893209569115091635442068033243758057462635905000848113600644129733966569216846048688656742623514406982807189937770922180930211211664083517854456182323268526345101930354225871881931200791685244943730156747627224098110208428028421502086613557335058434452445881879892997141043148055111116464154613225839470099524635647560846399568399978902603331294917420091351453972821381557168522673961947172704680921882862874476689091428027477541237034668878450892330979056980701868702746776347533463019662381946284288268119038494257161217420982125408244406704237 - - - 15991841032088284426308574335120088999815863050690672041487128086627709704355662512369404184370603043289657284979170785098883869446790223224257609958404064271242549579067943597344726258422260881468345602778694350774580874835280053980243233874737480239540601497093739905326954143480405452957125139278328170318481069273050508721885951985511556975237648942007479732317375446754982570811312956123889944945727919119973021108924083911211519685950417118950339069226199139441100333090467119239433600189328407079761138963918854719652270888527113710579027110999440403849729320417623275815894108205968147837544377035334694477430 - - - 16058589724923121483081805591380289658053178982062074873153620862098292200255655933830561517551082921695966003079784499211833158555679096490238415960859217245766423779873365512300037240193918006161244264551597341305115247120772588029442041416840302069688381855307847489265581894008164554317402908095718797156433075699692279406786885787466427074758421693417742293953704851283449797314045571603143910884910653166962433152775113143140032902566817185979557103844472848980847448487088397603013955094526405042580440022351847615373913835918627656753648710502465743125798721551001634319604503717863775173951022734250574868457 - - - 29819237491737986620629440214646398149148015416747332650330165341737710218481346556306592695369407030422381398567929476494116324549247312211459881815668657958349349426373291278429562031896041845967182610761676355529974248066979719457217737246828740068585058289570238575276609496676156764245014517164746806265586359662411539817709519725633065677284442655277460183342721479080563538361977139877290153956889769271219027317274153686847715066016522165668162603256676772109064746471885630557472558227457337787808290355389642010880716049971673205352099400496688385477251876896989324325456277080806617369410798714030430596110 - - - 21329665887275051685970088445177668721879270758673839822095153186839502906975042298973249221673305132238662686820070933877137317492836953343545963814467587994442167392716435488833435362795207426213084227956324339189312767357399982567971237272494246502484140879727511457182612792430312412439731791782957464972151719880552147026544840458878361463867616859356927556658118481433676360671282967558285977636510078028810207457204570109084651549795197189601469069169444696864029179155804441517262103826583417032520349376873331370820898641365513027457708928259370467457144821513349825479525354268437933923756904593501675262066 - - - 17963394601435312844170341286041396224082890480000480684020439295409211589873743679946478491848007202096671668501655561009542191181667192771557967400998603210807930187791373782038124460714199275887472070144231062885442629409335836053976606281979098088824391651396891052634771605653605192915894470388425888125909497941466727110296376556147743504495669555205985262022851233719289818547196383994339650433594536511386774877276543169078304484536454974910128283266615347030725453721129113140594784928889290558962599917830041964976766883155491948217307560589223385141965451429753169412759167695238887161119917173214723154925 - - - 18190419396181481576496344201587115708151353580751551694636727565015076875583572570208335779291913071735258012957129744919884342725457502177234285828338207065232149618002154116927948310361231443214940867938835788290427603939070808403502169919959878984078976304499251159155262855356274920981268011687913568635484763974562215503816435958969645526523368285294094428275147079988034999464738173243397149789059662306949071070597477473439492116369652628926326609954696824150983238501654126063536691939767528310415060776521468566045712206784081528623514782390581226536304880204054236432799306066717148206260038072953718767406 - - - 13107699320541118406589675062514144105046400221017347581635541217023413463137336232471743749216780115889224017523962707666496315774865361927126932436155037640170000838560366154414762363369483835309758110771506340401899595829467452188372145521931870805986387203848180451242987341395097240161040287926875457114158631003714584691904987542990953581548945368784227029980480457405987918948091235949678792995941390665891905354085385493803036719902884829304222553500353556847543143819517986799924884211819576977496886492473755945262795231208116301572288077683259598449825123123786241014954079456103769425680009664176872109399 - - - 23470744605620698919200864464024931859624923155800626460568083198421514145249729288418640881850008045209506856361180596693908669802113873768993660121580902609970011959819160855681500609299042916611855363777616628931981518850393962088932209638003831293905468032764892862941319400976482980271292070545472415805790688793216663622601796393531948552999487242026700963688163890684134109608600280840115697848940760984622819159921339731648598151158152313791961467462029840296788679420185911483830489240404561151860238614743821315395629867733530578303851271972429254297505111717535189180033225407405913502799025256291628480676 - - - 25340521187398687490812826717574868699432834258825021827184572895507692111064370920202601388961575581959229749823603736566794523525786999789488100236749950252461943396286856307340749883351937881051751550151892213810446505277406446690469215886101219507895268926354562574664271969097620232707954270093858628619053525744468802844559957872544931324969002011793343130147880664936353520071331432516986910882479002186101743842027851332796351619688559851362660947233861135487611298353608082084969274330796323583719666345714058938467638630113996925235138930780239241126990782094773009561364166801190192041832844157610559796975 - - - 4883879613773248907047110052657982029873224936207223280887635000218259175407894836286948109284734343099155988520645119703053655024377963582200781641555281758702019282049974027635241873825878421579458927123386550403826695154932185579224531533425197058125479856112448211829378915906974978068973402369391434311370229046760479400320589566531661988527693300707367999222910648410971572004957823891691568777690112440416950750508087231673968283082840746461122117981621779302262082434797312744731947242791656921126110550477450688347638615263315058421408189061729817772017408218076542834166028835979623246639204929568312318789 - - - 18679367936674303188345766097806375809700262246970312278349509363624864875849100978200444448361344354742037390913930366484129062893321057025020155668453721981054954120363622770624938353677057011026597613936963127539913071246835550616950703060108386073512200822861817610990172938564290087319191656498676165040235418145968180273429351965556204396816362698997470501128484521869941903203291906026429914843172742051228368611289602982263091311627177201358565441419293458870912336721261120576915069611036268132862915810531052451684245147077395438688175882677069058396919344050964538076035891343104689986851264518243496744040 - - - 18335389558761301126865197305827302135158754136634134670397908970699069496753971001568256275672420314457839671991615034859651299844836458299074281583923488537713838264617232078405332278853231647364766478359267316334790493114051380734527837960281868025131946097267109495880340452749027686260467032208885621216171262628594388551206291131498677426757770901201536409907955159514040950197703603806177304533761808483896730565558406144895699108374780942664083968590751248302295687057753144677940891315550219638986605701656587031118922798449881505599292438865913215728997221449559441945662495898409307511100382034026248418232 - - - 22595094107312122333557306010881974643850975667589648646964970559577191945705025673291576155653406747597717205002243324067297113459763548482361744433533136690471870950768334300103442013070222181403442353175043970900701626112941663590441382515459701774659485831945117033206528389890104853666752044009886021648098581527457400452520837592480646298649661268998927293752329489846523689428006222894257153079461990697897376080347311180766288201005223557658340520098954804770535910561078901295523787055069709516387453618668893679088084710751324829693018695800655871855520427372518065149976301358773140347151992409896010200167 - - - 29699753520766333952911854585098844708288861755128369307932304431651525637865308141102183446999912449229095380052675515497146607858809302353312569813258176737948113567599179213461387274496505824624300566643470094747347403502268369631467479999410558031238107636759477857567081117864519243601313525066129751034758352635135264339047122509616785763481361051301115946367701812433283354127483439230107387369024189036492833927261028378496566614277022766187170298253302175719058232163115182415343913288110503208205483013861808646709777053653780269672885025804886902914455865739177393381919123988670815531696857713857237644241 - - - 21781304915018641305511597953606358772404655973271106378389669481164723444835324556484107381579824093550978025842440515049664126908317716715238799019437400477479882352726433741928447375472780855786398816372220922038777527260669506465224887589668446668013922375281192819547779763927250847743886900332649782116900399388449644233622333566501629992891267777503851043586545689026150619240740731281553604906160789032331174405804118616192285403018633277272072690979298172058650856052574160917238747455738094288665652584326156031693722718924134194546661348943436064084110476453196532778284244377124993004653276742243215832076 - - - 24259275292359784023265168310632734267032027595934156459680490207479853082933787368577403959302485004306533981918058669576683766408623245475580682823243225336021041665262982650975428831445755548799787024751902283740780946372654065560481907508900083052578510216529976361566355953704813732729730175922644921943357781851554215499296636518301428129706048226593889944252792104052183975123721463926060220477842540100856662098943224145640822506551154527872175833859035778074873427172599563737073260526949200141549153285322736330778112709562806543788325320235955980706744674858596399133073322481951049364287246972260621112576 - - - 22860422564983070835402261717145355845200518088259436563160237325616655717795216144154533446709773316092388897727648599890062264165864506116231453648683889010384689350353034852824227596922819057339553333895904846296616070594593485305925236103025173155556093890468342050271676023539207494813132802251027131122364541767571999637176792311404771740820465482447583660716858803735919232521913740606029340956005959606675894078959905786090582829115124020735054855074343001042716966334178198200711393405679080056177752080579409183922331117937377931889492548282887244607783806455829192631852846994041566391743649609763887734680 - - - 19937183980974943229459929188001340916965663760485104834237907559491111765948090634217070871124860058932453458035427154464090746175432805629350854876747311323831824988986493502274264941996578110783193626752103898411012507031321891003262583665649398411330280838597825432996550498347453282905500747903532476983021873608385819116261856100775046745067528506907924900472994763206859683956827869136055860897250948090522167123475531922826583256158543502605807149411653101670469169290116874697752435918657167610273125187578248169157576276601808272115109653813646229495529907448388192560369887302746460907399505104908863913676 - - - 13814985320077964082883500113054547278456647483084382607158414927685303715308329866784511471654886796997271345656913287618042464955666797964910640068364835531783247262562248281808157466257638906543178424842602246348795607295750515044896107690436158036667334372092626931529205885762121457599871870351547466913921397446281917520233117448226583274983243890397890764657746856975853772809305094452778576867173756569811789142818532640900716338072352432163062329121723011957338096047660980827255998745949934435206853046421891663807712319991273046349072955942384440446797917241773734410478375310135990702599915065831745893675 - - - 21488692232712670215954412438180502273207904218275782988214620791951697743441343449962998527005457544436983426381207934222662717155020841162186229592489241845934261377441313468174518755201402864810663165491376460167169689076277870175896035142702675736299180348328500004362619070387610995159130764717682243540783492914972960984453083329500363398822490036327447047313401862994469185981984896163707655479247465341596212294656805894851454650849322063647816366486217071845525689053742526971080289459726212681541022131661927712527110796914458097515668289727225391894337130663065630571572331220555396199595553443505222490842 - - - 13139324699537473067040099548517323608337725546922724587810632223330367744998834100159510428122616722094223594199579630993122396129484783864929334873033265293991815224659198376376745463475100384508503678844595107319841444294618980247672661570550116253315186619978793857947017646154165614820523026983831150366256226167465017251572154459335401232172718856943726556829403651599536944361023174207169655574773021976293472636318854327264306260080932525393100358338709081278627368527218309785838271532083224227530352700058858562554675877252349739862165884265422937852064539744774997994853510534562899658879786584586161875301 - - - 22117878292867835962366670873418519738154840248966781441350871773274477260815243083522664774520688411581715034737901498302442048488867257193217095809757763269397634805998025891094059297250141770358046322094523945993150827662415544306905232062793828209317293344978509521204214511121821286567675029810459462134015484837094386558267782952765287793844932577183021325300650513018359967907560887832282357858213716858745413727110151587346885070632977249629737888921566840722606900300999752429879772255679031262917289771831190829104394173036058183583909118843490617028159158354115481988610314415410545651115720953920247595942 - - - 24476807767077743150638498296422772837783316823970078238992530080822332699096351230352836693840843932206837836689476040300422621535431253548437684758700021641939922189065793384099163434778346153161610689081445269396471390470757422715348602550226808423643925792178050807021581826143632853194106038513511967212853739272108429512040480337596627845061954001250136758764618952662137308846418659519030348760489413721007486773212452716500793311069858773873085935218151509663726480717713081983394494727472528544542978292501398153925616524283459340075001045992633319463102989913274353577044838042350732257895723186561351584252 - - - 16232916428195700192074444394714045120740978401374786980850924609412333539599357795697736627260462092739510566334606870855715657981350880517883320492040674486431978738072802250167060864431597318667183651295655599134463035364198495391614799704570499507510039493813027010539884730658174027312039620382805204843433454523508000807568526148155464380107140536816486040558175289808979332601519562119249766897381283490915575934483509755873854618515036200783526950838284267878738740153055523195005721486949893675206600311854635191093109524675586065089773985532981439575589128263860311657075741207125875904063672564298473177327 - - - 6237762696437976671896204730061644297072143662436120820439563116138472013047594035772702672507433424164721903485753105220262474505553226978746207822191346445620835070722817049132462775143781324332609675831349090372770563827300335413868113542052490827418709967847168952559808919244895386349118971927721945855260370204482036287615476893236843163195872283537981776827458933943033258279145936852061655117004867181172262101527515431645337330490845647140382517573780222397820660988196325870060429370945745749224219359749257784475328760797354622331745018543047097750617268564419063812675820598751860917017793376792359598036 - - - 2874109177149958470336830636117717434132170774936023797116861347865921647606079759928270233385485453355526135537218468788551343872717336616144669377026596471882032444673321315517272789808250020295147939985422379317325925770311207733577712327217478936649834732191305652955592415609525897319929432509762036115023342172453466304156526530356386683061828172636799238064788715225607072913703683323309527754871861629565919750422824419054131182410259161937964703635091022380206496692678769933019258353236708298785171300941063155319429466703220652433048284772313383952959890416765635689318274940320471356984447046926996662218 - - - 19736650339177065347116616927977700537478060775965604549600589521319269096622198913503129468617359475308536547693981219267454698316686527204348588640084427162382295108655937037319329100512189206778635804441745753555495679659091931153609998384090145337937163646932111623902811172808400973101279352412219235870809410521207771557565120834356766648761344090161766543237615984967792653391230496194738039457464259153113180881544692269882267316524959711096791345546244394722933260079983899080881643946156018670255399075209372845976261432592893233750907682322926731299543201066899297370312547004948282332191508818075088658705 - - - 24359011033687435633224699848632039969601093441595001070786345577058616471862617635014337736354179333575677188493693281789966052443872838877898528831399885209081583064575193310297564563021535759308121958847870537065708078878853245983038009542911718681947862296734861092219635272494658480899112693154293979007820374691212879051672895783735369944077320617797805802556953260337909118931254058165999641149948330947772834513826491568237769197025922902403166052978479693600691748739846622337531144677897944006151899834007268984499207221416072855385349469521050709673368340703773254031485201301768693546736542479818162535153 - - - 5500243424350913836780320087593003575725084229194140678807914708070325784038113733588613259501450662097579025234407107014750060741587211431019000293106372113000369688318720988914604973579752802882423416586198273081083657659217878165036676071815998339960964700666089205821752229511444734712531830391284624825398510872220516954056095801141930507921626031084457006187486123873805528754036369301250348950723110561267769306659234695159587246715802601175773445937217579210950686828951911984902739243410411936079177898952482298115410128246760639281483812987297290857623720416013408044269376981520269211184237233981275452485 - - - 20721466014448390967402575343549374519199559648313318880234255531178810514319050546650012984891958817562135187072279202445354646427103625948074834782192114288064699845997414572456297517025782204792115769933732868976684232123853014938429438646168252316221296805069648103214432735227480756171252230956978708019940816946113901953137923611211968362735734574811779326863032683889489241794519539775272684444540802468530547313384794494289255951178455292984933500389161646415708346710922226870468338070186724608515853566235981817139276787667664115482865515431625296445189477102357403335167814145637517954378736570359153827144 - - - 9910299955818480610967714069044803701597243153760776437866928376904638214920392075887720152231163604448615513056486844977572908829522964056560506318456259391335783369164708986602558200207171924382295220471885959532314613382838400852512498337637855373210026096329198312856627493601206695329597322982848535914984076008967777279474050105063513613400591842285063920991092867247781655059888407613459325674334779899690019749512116596896303263204442840594722299557438122613935708967705328549365400081426614261649814726493338289947069810165374017304570332965415375002353634553525839650148093559667981184842899360498423242820 - - - 28061317571898380501465642729086003913253913635510391971657861834078259523796205439396382664737264809870247024485548215053630277717879428568294225480813805194450598382799787155207882897668757980814741913581448990990467749310923120668615798885898471063813455729697510874260664527919489245964407690177951130397905954836602175227012990112424850758735408311822983851485223972845038417070189025034351102142258472276007628998339139272955085296373759996296545306975441889848066911362765425246728375156960062731226377351140231308878558096269196033054921813276809562922759033945504012922508446895447353466024095185308994884449 - - - 24043080844783657825751103616315451154191473339327123293230074466787157145388966568998698424039836421371256806533604261182019207021562413249367543912662628809918712722157767283559654881802324094883840880549475253277412154997559895287713499335953466616854123644583501682069923184460470141835570923996615637339484434781251610318583029378926986759745358941995042243379990364923857127485099739132968790054878705230228238157236631725889134999581946331674314426178710073596302999713875107958366994866278233003296968222754958749531842128169952534972308567411438271925872947250120006439093366096823741067900317441020043016149 - - - 8243964762626213675761553833073495411791604331033338208405774737817471378411730030057828834630649354391066628194790840131406054093854647351414633687357755427879679886542612482617159229834829759375054866536304980537518735739270619951611644649574564122789663025487643448924521886943832398192701910111884889227874570426015570593038324939260408897796841937155140792330846529054213988384491997945448846179436969235895244236321909613235118274897185827318002119454457875343527027791390667430240421347112691583865553030977452602503819491801735184069465440238855320081818999962599165894085448797928964698646934907264715386391 - - - 15403032753365918313561651167921149993630920602846892415244149690604596488720677933466206007970085256512670265518314428754691295366602301871336749873599622706829017316790475722964318632473587554892327265159265458559837547688336959669595343636749271880190319233057661945382379129698616712978060465428659948942375079912931938204238084896533154752940484302431043819974947306286670042924732532902697288381669922666449348316399659747530892231569174661255369280185664520315094715329625587381536015197559796962777656333208565749362750457314887401766116372095843700603203892296585425125285550205267554444159244402659779136596 - - - 19172884986378774197779735882040155055213634593587700892595970182933887310961943093179998327354390260261858369527344303638198724895988617414099874760302136475392529603617272042523303448439577777927911179638472825132793264241452072865331984813755156053733808117882591106706963292259263260397076491840822538907422052355158368459770191137059152588064422600986638765583351226519304904664380364018001107075614751652926030632499774898165239013280546300827469992723405323592470776317575167036298024006550057211124052627077460866687922726571814582334860860394191770448778366197938134838491414572850793140298516562308609680047 - - - 16256496405983363090248242929034108037233691253829598849286375167927425071403853636258163374820785821049225862740122483340841119255363159140437336193666788377870397512363300302957227490746422340709166607567714940283764422529789340265859164984936395825660658402331369409870394049409328330353199795806741188096933507181085409360913652858630670856708976678448141177813868003648255129832447903983962751858699500729445160167166430650637159856273354904802880744979846922995950991101539419304120205930139799069585836038782949738707430718554512736168046423699481346539599045150812527549090062525110628699977780719765424196382 - - - 24051313672842455820907884260961411497065411326242604653866970286505860203464894574951230018723865035668709741309821204698926481974940734821736091693450339295029395483546374855248981830081654154474109769526731392724173256009305012386777421037549528471054814825830760461082912610997706279226597104137651551264146162078059946805467229695945247170917095383230846748560630051670105030871919307646253804439709332847277638944922413931392115918149538457561725814872209347004509352051171668942302728340818439541693771715464634257656587541529939696865097685677770312197240296131402537454348276765733686144603494579083597424398 - - - 15009303400491876118726215096594325227419069300761350762276908605800135965175890651445115765354935550811910301396625764672531483146398564079738838259619207708613996534808166077224171294359726184784768689331236595473875701806235615499653807294715623420646712728466571323124035230816123864894867947008582697918410015350312619675216554103396550500932857267843738602956919674872678524199507633247889712265812531892810873422460612511672629719405591914255989625370587540604544731205886152651417180067581899647717958623150062988730549534919924895835546784566518154566312179745398418877107538424445120699957632880843871712327 - - - 502730988310845089454851722428690562481941824911155678452419591213465771754770271270795983319218138005353629882325256557164224734592198193904683168256025656373422419895779099524676260603285378798034174303709474735481259866641812385229708488811557649956899422158115612544380844429842675500674911868101617059131806101932018233403011771270710716372347904349497193218486128072542826631031902141779153939227117131695021578491216430146416990876528222369845216737005418498951221669665822742473121675189399205221019343179942512515648241791304385576346527306801181468089078846873980092832384959428232317408833028381760982254 - - - 25169680096626549612823334992533868095841841349720215451127685972732782100172366084909668441473823381813698904709358343945630432739899624420892462536179511058305619325121574222669824750752554248120305796498443033007345371600460760139880091644222077142956115651750579418563365245006964859744532003295883050061751264307219512346904555570433951417336484341673628802055857865948564849859988896967961651173348456710673388599525442032515741721490734043476479448990933365800085680739567735721291533879856131973289987001747919294991028088750189478819605906848320211621981800399503041961275798002943168327562627048536746537276 - - - 15147927409381109739022260774502410538984186662369683019762529463268900751830211089407048011674965394678265956352711247972748732337129874345234064641662324257996308155614634951186083432453995163810647171225269635466081085824444820677920631111063558737690513840102470754867929877444808326623392774967210522412329859768666236104742732011664632941306544180818110455938583015380262643921495020565143094701972257181822664804517722824751230752162593495769437531835319924465770264470055785131803949544535004931604507531712292888591053599400339377625641436459267917000001486744487272960514349471659111388838850689914700341902 - - - 18252327381038907049274137411869869596949897758203520463637745507348781669793136741929945338842151996552678875631492495178928308867654591344176234382161586236830601760571388925139995594859062111320076490051114323065790914132643797634762650511034349620781773422512013048512119315703452497462176002002408338928274886655421884630019489172536494311238453911783899209473740267692106348124802089852206961749223413577049580695020474517759213059726618153410135800647521653991629875722486157380973797768569089854735965659541584853174406971168505041789556375158658044789344846254832714409814612362601407657868993086371305845947 - - - 25134672263089389567737132025961139094507029825667482980437369263084370558422370408234759887727269805175553991863973784893815731621378953167123193969748966625714856101844485890432846697297742255710426689131730287879370549465988289733092778970680221611392439125088356002997527300123707174664707594918565219608805823622774422353471177092941125574945067238030059062345941933630311541480409002597027563929445843918111282532629695983034274759458948659427262843530855248438418419728661318306695747660733138436990783668253558725875410783405919419047698070945705192463770824039194742898497087037372301007766489128396259560111 - - - 4775468291074412190219169353384764608762311630126175434194123074303493978289571828005191719338499417805646992243032336092203740762872844213317691498784152149517918895275705127485368323980738281870411927515419085525169752496193131346071176959722711889916574173986831471024424876292261090017646703517652666631721577058380019145887445563028361335236230461589445584624311915207596046469722181814439008588208184146411552331252693107448491047176111067517067749603620774434884184544021364215281850346947557987209519374124210138973068558966447268632015864219077658017601896304669992355349763904384299067466109819862749134119 - - - 19110216158592526637225412429674016598523369285907426629508124218383007800330740584981981135323493152737495821976362652667277488910523971585577136937050118516872752719923440852399634400158757615832989948281043716181143664382612887697844051441851579799829999429118716525401016150390214860348034923062054770175117089125411310925182059565403262716312449205914609177713487084385979833545465964142407411331259334252674524679992280225904883449132277537519328799898698667535615616018086337154097557865532968419533444547283514146569979484420022340860555457865156157610431434194897412653474900516695281796058788524906403501818 - - - 15559589543263256919288079081632340581525766746283767342408937543428412500784671357142628876049964989160761596077588155690499315061016808880945590057064724268496872070377613179509283485491902992084582609689794105565383303188943058711178408752771050305027976402127058551598107555376118450691238019165428934335456283699242623195374074831492000992709061428030384925910853557753017552120659759388167398967430046439458860935564454728682350678067513630440244938433027059983239797243810831458720994703279267901818672563535561294658997279975006170619728422356433758585111728902422996377271094939263973666639359977153228320586 - - - 29285196840489920173221906301204542730109873361654384665675615805594099815982128250677744867490407333821000639117433393330483819809909695519213151189850980661371629451730080420267599357331147436488573326775493223799410777411540898074375824753475234337730422017989328597398776891723970385200317813916944223439776672021449747223534555683946231095605509937548356725492048447059105373430530480203695984049765843316146018055576007021468293414653562031149293983902683274696369465826055314756240003732342270109921726286345479236122146734956376481573452956551189131876178592273755673673409865224383638317038126410660551796624 - - - 25817135602254903455603851685040131250085073103334233447828407964468915368488515168443479324682562162173048140169785483033995564629465158630900438896671949599917345298483246933123981850786471959155945500963504152786779092257564074170814732821759765138065783560820940496250516118526868026053974333600722622806440820820561070729944979427681339986988455719280673558693246652872604533200827249927549254270382434230192843709015546740498763289968038778349761949612244148089479784119287056791167935005882617632302655089910640844521327684734658134585674823676277684014933243585322411567359589383747047675777281280611274814451 - - - 11060822728466285625757240738528690259132738155459452125685110559089874569954540880287159935743339030454876669543554189805030298861480866181764522456521486029833242630070433130781735840257014651785347426082978334014768306992784746121352665265806302405295566999328561642230624605708129255235090536829688567314506339825369578777975400819139940531700675016514726127577096966181263016494380867784350515759403060610825756868144872421915468755272705759584950995231148563788038862457922931838626172765391611547227830895043072188167058695307608163554971081523582486481167523880863929042004310559370114523282797671183855142516 - - - 22517519023214522149007438246620622728100036705794630346448958290242059147085307608763863742532299256632859793737825215949848461937315144263179914755979951025258239562118160556880705944966660956160950063498565357877976932095068704278546993000526302150146455878779925075268923806474036540962307679568577257018901520194583001275446630616338300238744417671060375907675152106676720828818714399539321626016455033702569783865147974401596320837057164082932567497109910080785871156150812867328959803705812627375884638617401090161522542056000480135050587387270498341451975247458676714028122871800769890283959479108660483412788 - - - 29141519666362191332161762592311294246181616939366943173892244637596422456649163315423890941092221191138276193990019717267013123398771180112513935326382451851467017458551274698458335569598084777662248089235726083210524886800851522019507362159571385854332996941229849447575979531680060611983691072979792762559371014533096286473933883301296957032155833938007207888874263827544901769579560946589750897787830559107817908570689888510781419713690601326654657159636254643741750130958095939009942125119196141209947862458888283886863531500238125480972457521441268856386850002887945263181359709362515511827526430345097641591130 - - - 476420979478133131538641011216802908952980916288442988358403186696852569140289668919880963267472796869633175240414490957131883976127499004233716153054961029884973065990103145685130162878538815474581466861943327192571548915374548675572551715270397911431866720300003686829811137134409120464699073465749134211508761530530707042210075203141492588972084309405741117994022911166578705643576730355106441448733454052047194787945061385620155999993419622210964207140699716583846831749162805013859411797574123116212463489718871178753592927876210114558394745151556906608692737585962064817401528279644717658254211918666202910145 - - - 6850835141797799770581142830177035562734882880568034475679897734765851161034880127344006229769498577724403511852323661851007197449680660322700534829091163319421424725351982710887157018542691266273780351845582092885742975656931423225517231244805265587765981390952646942216614900432103504069522923582021731219416455494585245341104712005046550803208884312174394740455904819238401167539897598646677420342225112329361980676050051512439724219805462874120129162514514091237418178648071640730022465397748032256212028172751632807659698178291784683174306634452806984704631644918325205652135962211929537555734542809577566205634 - - - 242688032927821815747980054390258951713003792628967095014335936595204736712017173074086031388192056759371849212075526111294661696757165132070132613716592216402864905584584107385267924574876362846299593260735986494739530804180505729279453685966066727915784547454977325890768649442706150026016832705238891181727104175894604102488957867030764352456996342097129726753928665108615755079758628115382903677577406065528141812050560929948291337496348993258962829967327374511506142506541320322995225399886535040610779786103265990904360488845607582097130153609287454999642730446038381381709616534335713473648001103009787796673 - - - 6581495313526260422258526812730090284330422453329897608262541500457047505348684361508256509625472692416576473764248297219227741464047038725907357303655736334214173949819165776671038168863269432382546619943525857720298040370389865679728858876421712886736606717191128967677927625806348453431483504042998153408859157187072531408897669650001153728906898095216060827373851489017762831052297939021431477242808580797962997180378461030654793485763606327469431206340091915103358489750389206371374853796648759992110802900237932372214514866413356974061978082457981519486835292422580286155997293293081966441746445466113901964353 - - - 16784879726103165791306018521124222167415185971108993375048424934778529908992125225802766718466637668120467638398083391118989542556452191848582608150633418971294126485282497390187618168478805748304489601626721369437692475903931152336977403178656414611238106039563237333332927839461148551317310565869112000666120762136279322952340159902618315759100294652158452367682972584135212576038994425367023479511601839993144439149428672999568064412409982266012486021437910946323080716459590105657337489593453837226322930693355624439620055513062166929380137398505754034046338126941450859045800986542026687108451986521212522700249 - - - 26689192564061713863496062675166152492625504470911631965143474900992132962013890176038086076141786936122710420304493244717890213176082642382557081258102076983820114945479048109653767083917224994017398788013114526831736358566898869647062105024690210778633567087863685913320907473063824855698051686539828328659827097310821189022984285353897382969209880601214654617226698224788368274304530714178832472816638642494370826147446903335956705601930764234878675453170958869967392641161829105807345139557667978829235961538177452245998878623094854578259701747238678111069071078797643977805032029519474151189952590219600374933143 - - - 4437846301490235484636006118727605694470862566504018388898835941560042984157514569329584444842719434258056418585312425751972510497604053424312596275804820065064356422877521824109107593317684081401458524018773803531221654731049966196329995659411347110804182970182099910961257146989985050261280779004721569148729535143630017459921752501504387359397938331151233370751057609287726457734911593598604708870231549407502152449955384330540789475556746114817805522800198664059899817786583485988629336838640316044499591409982281663727103264965475772756953537680813851754788244112069219721608518630926678275000372489030264834519 - - - 16065270199416812859069314737952154121088850515906485363224707249345301745168989852859888128719362282970138447139445004800241392706576095335801382337015865434292560885378635949811199158102367076395909929576466474120977282160857178282687357513291520164326090658378447020173065845212682130061099627436781536223344275874626744015944193974549487917096576881391594252511750434294713461401246204295918521351726438375306563570785804554946754736482627063102857046231618822418230127146829783125613362539293975177441307222118079457569705479587746335926028280312231742503423090536049811262718377687009563118653396256034359280400 - - - 14859440860725247826398524187592605319338114282812839223125080920374371265306010550841942848225267826559713255572453465366491751944464444053482008999706253274723424000619770866568457427352250923761714384204449259865706593686575636106785249985735270794931662945000214334568986567543255413094407260024818182265965184099919105467794231543480923957913466746032180154695628940221729331971552978458282720794843521401393327529320731065354586216473036529116392266842945584573012000020337354589564461915595950415746475882171058955568151443993346801424387188559275187076380005930402602142882567628698221165266113189749877004600 - - - 10009669072698448419359100916713718968166619731685588355110385827195135119931472437257676618337503277583421625952758163220343201405960640460939418348407813967951661486884927926984960358072628161501192284599933344230752258791722394590593478499044995308443946268972153588584222506895528411867699650911645570375898367540214305932090737501572882886077931865059006671359125298746054512264884730076712190078924561074103317053943777448574315404913528791461646008026625985451828598621596451051909280036307147167291654937951225528766926945881821816237898132554989331388408189748281608384206788241611879324619938769221025827383 - - - 5535352150480650697493071184492159227325091239275783872156851285436676395000652399553261289510845394187498413270525588543592771374291074680260280098298000314937426555183973053018764665897556960275263940963360210554211512620847446931660644487395430779549175873016207466538324290966940499298322280679333743476167381316130299345798552227635493687815385558874155006409977343850879581380346071922075110301388669411449833526161112222180435617864393520989832876787733234530637518192077449005704424696725634118652511797782442563161160029212821699843024314207646629710157359906146129810822096650122328651359705176144353772082 - - - 5117295408779374007268789393927141042758696412616351627460039551749650252976500233588417380506053132487112142539470273822090773998921608247643355476575041236068226580878361530426220144115708213187322909598252233449072796281158390999455909562465032706455644441093635441167672268975769298129296596026271791513415688572957176850939722469441922836852228263789368722926072788339533697208490116438318460645657302490839180934555720073086881746212903406899428171651377842088843196264946020110099312188812380170048544397217366316227473963450130617843740375834775051329159718737551639297863096093762620596646882205762807879803 - - - 15274675843442818713997542671858522759032567998043158563292638068118349266415871124912072991448615168698937613509087756303850887540231235373078357044975230028091779056572790707129780213581476374111593839165592059052448901183293357828338283161228101525562562502243978318496088179013520902411563885964877136518908808278059769127388507895757192154118630808200904799440385229699961036786044720477819485155111239146971863517382180619455835427455556262716095879174971667972519473438962295193963606635480386641914740713307212155139392687982863309437143366105168588590307115854779373988571001205695722728358250514498339995088 - - - 5704317741230580109926640563184489332466046122173329329726317581351568931885696317929901000020576201199105129463431141057964337799722262439936214886011506221113941093543720978457981053842303686871378735135604159066568928562001893310564343432544848524667175786921462012694043134389541264744313548745617555354467980176732548438218015004299025773844382191867189288735908286219985922665935936759339403526316685857589372223765988289788444324361259316097772338658407325913885782338336037181134335532537243733054804369466265938118901699284605196730934168764669075580397725694236683873136946321587621092159520441015303966812 - - - 27591016154711097317157551171311043772790862438664036978801445355502558497843133766427745278753976008184899402042947013509020796711277341209263432313630254979857479221220731147692317646768614321828608453575297041687922881626623376277210437996778099835421237872166247991943137664518675794225538367206767643845379490977422949022816967392449696284121996447470290446529909197342770530480674865680229505698544954693206816368724514276950783915870016522284139672413986845353474420411921059754812681794989854885187479182060697001847464886400798522251487907678835944217620726386159204251264526821630953873910478768054150066095 - - - 10190788167041685269425504941180809589432933872888513098319187819693510351926244506719868133223220596908791880476561795586711899998575442976186126727750343613658263412334761415168908762589313821745048220150324986712189678714771541787884863624497294440903723912405148690913918471574626861324563517473758170962822774012962726418563032821081970385846420750200344108296876708435749569914265541441637666835450178210609215954610480307979733098036447978634275529607928860068383411831354143871512500382592794075399714533236331312243976697179612614004718729090831058252668387089343169613534346377924669078755498198765753873988 - - - 25670282278415667550933220877561667601595867669030067275543847904066191925054822360471795555649951122934133670647448622655485744171305529707034874265977727103547489900678679444465747041401601034996514429605470602608206102259371806645932189569826122492293993392892447827651002142785875663044555823859520284540713522631001267541825703814827707715429354877782168678651798969441939583964022858600876046274097774069919269315606149319483254571030882669675537921794884323713959000515078110438521490605035747709271314268872211155215128016721014088979788872639045909822587819918155888721830265800965554667742437046690035633645 - - - 11554119736337524098165097151669304160120408132093011632625935758218630478106428350909200871985690271853381515672920129376113303376000014194207432395957992155519976674466193879047388735190870032618546830504208326851726906971119631190252083175601058063577154889482772764180312476766779454245245713162139555249510177062284818888616382743891116388176510273725813592912240905685072283382783754720196769567469386755311117597110716698725777492415557035180700744669213668569061888972368941048224018085100845127031939418800152047797377043813509283561226509073086811438444055708809731802317558945817212304396290369596898324597 - - - 22780322103910832545679607170799649000244056459162924880687597423406183877686381486820322334993414073338047213828337826025766059353647457706292049913759531950155618363239390318913633459961872495021848171261267641196132052998581595369992445994979317543665821953981926759655253716230390851059458336633100094592711350656831019026340840182808812686725670229180942022654230594986232382793625853532896250854768836622551864248972808045984587365573247382974711742367599304245025711317101792567593733591822134313379963862165454276509732599170895629622016411803393461956291507272215088367435315576247620884670437307653630023315 - - - 15753543864870080156234940834114015365402430408899362520521371347342846922875315952686253124831622584509211662094709709585644371283455721189688539112548838346895585902922130392962096504467976663182708559704818646010869921279695204537856357953792211767838705378443576045460928143665616663821054952801193313989477668350653526415113956728226029257722877712075936977550164730691881775268270633052820585151014423355974727898541749975253154399830791892421771281693882722696778991937813141894315845475645862485904377756185910640001646613671459235022109580448508286903184794396000837997922222102380499056909306136644290243656 - - - 3301155112238766686918541637062214307615444427708449938830928072922306749217922343982177398177383302104588427058761755526449446796403466050244738605686895148565257765810019621341826307882397050215579634440259363897475818321062138058202014857693942133508402466630567874432633923119596140908675991817850308726840719154765937479422503755814454482844545615061623879111204132127045294921143176308417917312875583352744818387391624343132383640356923521959807419470814585290422302627208408528184504412396217126726570656554686986426734942428301325341967345499537680860826692557408677008194700578050993080319656244381096274796 - - - 26734451696121944375364337463500057263713932501446292577561839667485616377077357291360475581674101460159018639384042484603191837652168246775905457251893735352155869928975813348832236196623751540153241093105356165112188133748418475718890034517863304807537250301165731810375621553827776518545881563475685340731094618461383833913102891108334369144219657311344716018070573904271663087598294010332297780220982110281351293028904914119313321036591977113834555977874393845432754158009948130160189241767183020933650518120870617610032805231572450261069383904168655511673063973529136437272404917957417522709398140788218241052200 - - - 28638469156415456447455118012306425925636603984291723876913026696792823617255176481905664341053880034540085229153711920347617129066848388554463239657838432186238559760568400247816898419792439215164637684721668809780764507670093637112203142017448582380575479357044944378921051461529034874213953420625760835025057564757114501285152720048109111567435000639375758924564847963592777686532334911320187900488290154122273733642818861244339974023202078541554858568739011728182057805107676953705099517848441881312920424049901021020331933199445739833397638681773193096251768842271701187062359951683218834286490617800952800928059 - - - 18732811848215738608305368717533545714906645639523375152358347995844424821174547954203192857977991186952642688213936515462164836177761634795441969670031519176258622691972837041005134291821440015653528918901227626585438658654751862683922465712321862531981506728059257526397777290114602009737471292852192374720425745689700021680537391364585274333605005407859224359104292201146781311377963860023481258217488167408092221887997097821229305349880634369929682177680097182190310947717246509400544381336289892364731057244512970179595216493781296858173832290007136467230165473160718713087326868974447951640426619846589115818601 - - - 12108465982419864860151683673444810331229195708009213931747133049171481987730653162682164148374193809048668053852601131927304481708838371837260932173512272499678072038871781169837245038682191831299120690255030874869473504391753273822164012271614127020036970367612984442110320123781732450840643835788094977670598137041534682568832854978005340995575926546250534146181313537164267348434833239824099319478126091008406557198120651990409404940466508468983493802784324363302804916995712006794840727641840573807431473368906073436198336211949969611166924351287779045683986719932219054933707850847703400061984684860067078303311 - - - 16873274586042310763195401063521467421662915898011825802909846213670154059343865664070446842648341935746383327058022898316529968213377498564436798282942473194964186533243069639704454930690610709734666739349613456528054908522842220372172766253231388624517545593141547038798010024754715213740755358126292277027461493387401314581248755903727277199795051732891484615801472054816618906076090443587369402405887997923919976205090536658497727044808128602321729335643696254692227583690344058606565643434689068325517415328961278330939631094340694846030839815446648398035471414523866302268693330399639150052791254785756757980344 - - - 16296584896062493329974594868177224079409710515044163644747529998184127703221843470154494534713256051915454411593442482383779718660645557791062468066551248645609398642489770839290236230735433852539441890952017298283718198998339135182476682195960355097242327300697406316814928938792628951497225013110297124691681066162938530584940294009802759036152347664375575596914097622986933598402381753967550922044949094304739912508190173691778544246397015312690649129546881481141119600140102985895688169252423066800716459417059625246467367429786947459237607826090575192430622746641351273305314752194420643401920151700098537568546 - - - 21116669344547171221266520651420490158485950272865303252029692248544338513672125520592304940179381958853619848220367414732852210419489139345635792887082116500234740350941748128475618460901256365709704593162914908635950912705297177156100145167357346712792109230304706788454283511390959665810346310886933374047797455411127342016975139031111126592075049099817707283705549581069164677502662654730622236110549793267776210481058497157064712863118631911281793927087889770844958408615217858062147318001841939112066299398231218131021544084070685728173096387762784957278436620321780231494433886662358027790207346203904228763873 - - - 18621938686493678864353408901443314323940482294913620023362659686262738496104384727709279609272671312336060066099374567617431003973538253721307889396283329737930132034911271248513496543042235717487789429644549085483917184370287689140357752691549589037864707311735966802734729212471295044339056028027416964542904642399500462722498232514394889206003018606010303961970123575418250839952607001416242127671387999050266467517573129327667889159229288070150833836305918711619693316598284472738690903107624605106799969206979458318886537541794341638759258984168585265175122331904199586089942841679922777786321866484201887811711 - - - 26275715994276776606564034387369403787342403883936635437115272050297554856077178593382822083206798074386930210071140197923199426525299514592827411164349899221431549517325564151219697456311358444465941934647950235933360395004578528789318669119010917520197508714210509988862945869584864073007074992324224239897538431051258292462497871603853957548010070300132073230374913825294235164330412743903880384320960947380031106124593555684996324226612705384465602254205508511836162548740885097767291786527569881890870292594168098012939849278020657805589079019751318637812294493728427212423098327268595060722067343284190801051513 - - - 5471910915483057605341131743502352565931359735765255768965173379645254595445663043066888654034003383634660949957153691804827983594655697037329471361430717333559210975774290613667978823793735103687010056368174504288649418482953756009648670663965372818919774819888540717047170872222851786861417250588222211606818566199833116781010681011672639957457438484088720953585129891761887008688231339234462968775673186288127176215266039954659399947059781537981496491146828350269645543533991707799341293493017647911326301746361781782004596635644883348076063057168004771791377188705476296536592081123074867378278522441052814788136 - - - 7626196921100615606996769236623205923600091283764524044850977590387594721736606626873991400476911999947293396423045795455718430140972622979809506995814214152533001964303860093769545391941271045085857969037173420169358580582086683214780323949391997078059347937056760380588068351874189002822993911725908040752631047456042063815641538724348371847695342976673891833134301224759337451040333689074603386436174205183181724236391260049188346759577871030411220443652322769113314273482264721532569063535447289887704513200482699465991433261837976760810415144665321816400551646538838773501145276477063741981996243502934871574221 - - - 10981640375833878686541431997278028763616783700261552051771782031678012171521045012640476881582923912746153096407034785169651935265677288037743240031093902514579794910168459613325804850437892741058007607802065204656103990783510056304294688484809775454795567054376678727827369888771143033084393089419116574171982841298736644324780586860327639050086329606416363335401431302136598933972381478057334957189389973688673992548140198515103039554054893973180934404792710440026071023863773597128123350999580226386279810767976539846523617475382308722259670394388055601786317043717958287305691337621755663175535793499782121766499 - - - 13556311590399608492621439009885383663941067110846488321849827413468513727749143991916507856262683473037288199047533130897191902175349101094803605095324416217291933031297282264907529229734712060422304745097916061348249983845632494894906779195069643335251317053743628133002653676296406889601778705154452995195620283765468939774506098012987864605629966770548311496811059608729393206371564357887222191094622375201385257559861920256921714840239555507082557903829973875236695529162189544076820348006033279987371449686777394158865462078581998077595404881641962657684188095880855438710118200861670634736669987060264689955111 - - - 11204087306615605295937277178169338309999346816909849687243839221429330189000223617765807237945937074396965077502414906817598420006428590274589463461490787991123599232018834375805843399060750222897824290096812116226512370375679348202672428768467786507884323778678631912581056383599896036768588920777076621534396776508315092719958123659153055071850897913254262627180816238451515788816005215587922655769815388860545230329540461129999183079477835166344136438617482010450940595308539924540109547717925489788301816069965776891334058738091126947575992265561291573838913044173138534935538056167531204721341423023958680874336 - - - 11473184241110748346141672695699110900735628671887670998459430472480436442232358945971240287833743502019572763747563040614354791561843546237509398016012886510405279817912541023212440364108744027748960804963483259710761537821341281591977574050206837600202861567296868238538837293610451003801883065888208010642107317953106390013301980679266343080016210455189960387907919657705721111526766802807778877272743045699903634605467387426103099960056778593926889726657649754104065943487507708366880284993148544705839385331121287806903684614263609375375710584803682872653623985296667241358371952507739978085020703036463923622204 - - - 23433256056666593754146504540694668556655270651205512563720480603150467522054395792677417115842260736362159089501677768625303065366331001165696369588985101550009661208294899159401561581724173951903868341753284118118041412257867450087052635602808555299022468293999135759699160476080417630004233413181417555546769262209493492540853785157859520526577957629328379860905291594822595846875225267439470361107114865367697325497686657325771640674936397972420697242621837857970005604846643729306374598258465570970694550988070949162968812756604568683467441003125917280719467108248855100631768066499258283001302809502493315289938 - - - 20979735512290488117228727967908884896820368141716205829665426551333089537598259531562047724833486043904070531399917578843085458415425500934309935740879367441602156435541512977718163440924648444882173388126365811721169241387103610823187333220186811883290456982190336425416275833967162428684250073010576677580103082730887045296319877947320464773971886061630023415508323705751264589447207838555009813951488403949021630724013346143348823356760424804935656575864886509898439901673505882419988801904342498081560958622549663174608117219394481294027052802679209008865975284502621358318718741431121073646005234001226633870906 - - - 19120668048846782421055461562782622871274515563970707577711081338272278939586060816094194891678685063948969735130986566029216606650251723827317591659703477651360402657635898396605421696485484418443742986969063529964737735242118072903880447930581779009796601458750654134872325680557116891284627119313163496290746005871299054127988722455368453849904939265460091009070526421784401418837466670980058861655921385380359065337822952263162110607919450081783741478758455890567481516494885739384004101756931757924464798150456240989992992815917630154759525358217017846675947433743168350171403215650074085261734179078728650993720 - - - 7040174336094116747106660891115153285889778788148959533376473821801128630898794783252921464262117821299292576915938609079179134771653279673312690202555907951944184653747752767803326667767346928179353430556382661990010109857942978496640690531559678117275397385144622382660534961544447402034955205581767116599806411455296213863251597854580060636239898087600319518344704864982699386638052713137178627262966596059920870800827658876870488499224563357861781139157619180905591080780879747936741761618283114454770614305132352903557245249486157852532362351027913220293380777198650137021385068346758398495320087726853054959169 - - - 11580206926920077819532870207940727970900056963832336638775942293788706840926683601328559324766191273139221017218416245561585733422307995423617641654794973071459507323432935033516995142578926569044933384205733690959681585979582483271411848624146782513885001247049871453297818041779415553816437234604848849048957388810946165564419604976482708583464866083726295110953539891893158621873667498817582869156617380243286699290746318885705839642039829076660320407539289544605649494684677716806292785554583530417632485246770424498960631940677293156620691528311606550754491409106814703768109391828599839378165698394361087234578 - - - 12427381860630060518569571383532420971212789740805967132268097489473038301403342521731079604929278547803948786870023996871617657637728524141856773145549252179101457624164667176238989506525931153528239953813405850266874314742307781320239701652476392750612379330769263556379142385156586834966872890348722139093142888150824767084178057389495058836866525329212789061224382575569293102186619333717251296514974642219251671031323264049857666504021517373441592501657330215620270902004914249156410369349303143060383699659996629892099914737357887412639468331005874271100169792749337771669996540269555870889030910767099508060646 - - - 6621727019719907660374672962046688947832030452388287640454999744933859966702061486888157269364587048776309219107303342621394530163429235944501839244243966031951301162476487420229154406241221999501993196586092299591140683095448988494859080583519778732176607782023548301120163111538457071931466892476681226050900453000442732799604398559247861566154811442571152144891784591800285135603459396657234649366975006139234867646125442383107435711315894343665811941100955224989584019964869511918919444268924414962143179112785059403565773299438042284022085384563250638320270415818232310881626638259702933087418169811253964279480 - - - 25913654221017937138154018023114961378572708796433603607110720487671580288883964760452726211569240444097777511249049456309086640371566029197901160472840304726475692802791898600250941978434445941820187999891495405303506543292793590124231686700773022448892962255358159690740747735091564740314881923106412811946184580753304197906230691048390237973018369006931823708005313190027525302076570820552508096439398444451636590375472519090779962836658638901744472138309614557754517500493224363186264651245074272908046861415559588157488682516503417753323582079245558452796702336031781070755621312649540363222334045756829134972666 - - - 17229457506726925219299011620465214794122950965262228023184209717289097706986257605355987409410472635997668352804330116753988506183719986884943354190835060632835449344105532907556552380632330155871238209601865265908640793118066093875676995043722484244162234204716081227711478429724142041543408547732582264443563580682896764648751570601084886281849768161312492524669923215984315280162103398350585765767643293350316275098549663189859359383590217119403327244863699637896967368342568674234981505187689383029092523739316787317751174110826986716072119129768844781409762556846859195549855754137207307947141214294987620901397 - - - 4460598469251974720960684168590452888001002264764859073141297725838329747215964150596274169184386945653822064913558160545916108647484540814345243935107981289498055837337204849747775020184312293106485733984106168922064977184321922508993310084308475036961472593710934731227522766000245362112108829890217736462663406700742006337847735453739051708629727668606127094593580998980558721499030859718598730401894723755522122202304240753438719341923582488200573523316678504800977524477515883049747276894730858608395885583148011496606732353276235480749088989648420714493763203670979794423196157655037448557110452895118882587694 - - - 27894707154607425434445355151134474643498641273208610303724755844319593053748850953812813456934758301545767197099256544152586363556208222048470056711966725431363025405386365675622200450182857413086852739828148249223845918571659053062272768508834818515016291628875674006111554140163559892695890373480227309580837636591355965085948887059090479689703958303910864527913950251576114967314739058615068080944899742755587632197090495352297101355711162803706695519108029094386023918631172331749910604987368812377118555206141660681225752967236326613018719277383431878335825807656573387569408535061124651654432288051132751105246 - - - 8832109202133163513585441033853208344971789915675792299783310657469784344841241707430317544285581826051025579967748056579611430712216240394595864970186465000189587262882486813097264727437469813207341330132843984646999878794383294818077476328780388563923566218877257291571837808990000177726122816221977846506007786070322413137865187533698041962694455769420765026328903702074565275286847294499283573290136135441677312373948179943738302059598527017580429543249664244772682546857653162490192065280001895878055965018460593198817480981567645913203002291247826897529011946474374564020589239920322996914732560987665626269530 - - - 8941638057555452212901300678084524780974946565884904836391453537939629278983468830401859440450861398119642373963870373682578348760079332789299336837037722386101392575135701851553401690138783396116892826319081214232822748130128642247189876330679800319252711087153451336684975436761154540881721570442499139546544071792951362788048679847067995727620146850120056212174771144842779551454449687520843684422020196360989127735617625685517604621421018745703024403024073130514727292311827015661013862796353706351759553440665135917171550880048687512932218726448590672803133168221811920414466642654249662538595122871510365532235 - - - 23125237971963956968047716352924217417277765146870844224222846833529973821602136770868295163184940522850245951393413472685355878307880889460393231121846005380666741979196146794602834681988264987604041368098283980070099315446525554913164464012048718190942066901103850303245068407956778566966557833265815422517975234836584442746750099520580099792831215073803554170490497638809442285575874291565425096240963400534908403684471752320748756337638129178226562342518241131528173219870335477928549903684877816183569611241503794377340327441604652299166246974253453723149843082205987133520789283339015322843092605110893967809147 - - - 27791885216961989891606796988471115623746022802711700818457553998409947219137250965020756530432170807904450625107615647340822848124886546358149777572139419944175192131597947376180888605104085790822812766370125431708823050061836427037413308744462061051265061168996535908756262931512168125011442939471602075918045799190510829543269840107978558609884604603327823305471161008733227442858798286708284040125829311637694823037443033948923447106418284076854890422166196760036155616457577918822170084468114567109934444115302277389450408895135384401004404656966595374207004320425569871964824789687117166936395237450696557565465 - - - 12404246448563138207977862383225148745753146243827476576281274319563432583624334206108879396175840312780113991777047797615012830646538798966947686082198304091324586577562376900373694380670131821519987519738018914222313991259979301862178146702559543724240509563318663139920945164433715279955632641301421136425515224854086758121100061122363932072610605905086763187249663562082075289005744610961467598661212569473250556977757275992340803510091657022949303676422460598517900155772851065907897719622401962075257114286891449209799796745234335022935831999567216636811078083543917305405792518114338252596742799488991499090113 - - - 29481171205864405870391702067088997299152775130399908255788990825057202428769487891001339688993810785608473087497576263993653583357580845627767693156662934654778415098577087288709811915871407776948711285992325502421419024604917231644166655954072552757209890885537553707402780596826275615161270368881324625706972171305561834543830069092422577845545112349320650780677490019470772974776297571880047531431651203489430407859205659658541437056574459775412979925383983291744450633325554083291473398384591229549371872976108139953404849657217709180339123493697436803372833619986200030824809616169158817775981828554402707678242 - - - 2086058849409307450230288861326481346246672839903049792428442762592472837594833153020999327975320314723143784055947386774192406091841670951659438512580083763858073258894918775520812674377671525258272126206060822272469695771903069090143876024685946660700578310396042003463544061515695083994952730062964825095492381184941949619145829008817364501286781873913270706699219637638436094481562350474163365938253341933605186090270293078451948566500685873096028408760490170385748055026329091650595115019625879318381418897611454606140196457360199705153929293542255611236147642906805575513781051699054559087443331178812878833486 - - - 4926821958889705833410300894957596951467939973668589779394554661818767267460905350928382495550769420437778911174666731296369560974594803874715047999152922865875221756492274963582948742102619711738100907030522800003627262859241904182720482892864872910472964463384205162410498169748904281910234666555599004955997003901291253143008605512759746445212103974972907563140754797521179743521140157403077120902850822618464340428906474165771205678918543107670330974111504622837873576670728944832599427325138737381261793278478067586999272765902747308492251988246245808656354860811981627428222211878842790423696599636310166164817 - - - 738160914435946177801873235106110198708690600792169375571011081232919810891067646923696368369028034253365404181935858242829040585815949144459337189383677151219943764851805976110679901948925635435080956374069918197544073528013983113022884111143842545633044061650323237513121672242043769389508384744116729314978382650550837130415553283923522722438399663618501400736816507207297303089473745462016905326390322297596696314443398398488070893026292328535992137109605458696904273436286179813248778427955281816962549895709778189583983285440586193126527543492391114416051739793519961916167526074478523199310260855063711176625 - - - 21211008721081282242757702477163818580339708380050447784176740218164938412347025675003010684082471925019756801919896596314199761658869682171784125887501532023455646049560129493792190864216012618251728213354185270347428744250591757103266942599859386758962876082960920785122701337980052384487142938095629168464839852523729451365424021485585949066201189059898218682821022500297656518709816873288454144019144814753771823015478580292226368982029259079888149130902513110383862407202575710492084654635197507049002169013371176385513689204894917236294970797191092615717467307283425957406499832657184545590480706206481075993039 - - - 24193084674056283670048036022656381698281059962159757174576191969905880597864773982031511199370083740227950046543087254681150296625221967776499723839887531811270138169120247294028417111394032323327528748013963378141905449157139878498265983763991229911692867673436101639148161288217968462709260719331714695092256223080791754067194900360287666236749266657797139663312801504465812941849945093786211462949534807979423850983518806503653748071897532694129219903358100530359825318535890035197851817151844141652850362675771996172259465928015946528888065157272284908850657294449306669051747609029717684742034917161252214014758 - - - 8647258656076150243935062193085224056360818591272443221272435213687673379755122085766346365277988716289979150229947961724392086012575679016225095468427638631337946362299312825265922828310205623012428128931359849382490827282073494913405122919073274382709307346084259544484665271472235367486758420285230706445429883154496943286016190081668739059689235779103309142623818285021370562530348243281114153681225330153819453394748258201391448766574864266482219641665772145229785419517741265125068581954127591288978613735184583999929139121154501491798219689838029665893534067242901341764498277538702815612266335390622077738653 - - - 28816100207456261802200981864051799699566215913611436360049182412833050761478398062905369506699337851446306121992263760555892104643888708797519261623708881189364141575082087015597698098985622709102724432338676515376401623124840168232412453166960454096952343272196854107482280625663284129039188117977619778967153696010984193998318867754158525594164486147402911154560233370176191670059579007176457917376994793412968353296424700285406170513360980258479185746890531033864531471346352253476834946013829398578606150578124846695382237749427040327123310223392310294812073227459226052310648647257452775054114322225263467908545 - - - 12435532759331030760035079023689692519462735476615459567411069592223522328787437168562989273648097306176488788931863313708528523409752996739394417754903045713198409088913676525090115445954737843508521412768475861798846297418879536513406448291573199030359130107317012071498694234425593266776954294456724314883282667539923737311768122633980456167525645169153640229503917105700020143226523910145945535479504309187576624043299131159896423879607373299809641459231910054429318353215202975377748074598558724224393417078704632801843958146378557814906287729127352957007850154646076981996381968414436067602281026705872462812540 - - - 24847562473825077735435644433063577715579039967078339494230344256158314090578674256215572999100247586807481595076846213466767383036500120637763715877915293514784551269118052756147513997786209934883735484473169802339315012559443532205218760516052690625284628111612073253780739520907680887356479356692973179084154395155938697829817944353356571667422517598474495100873759827444365303301961156227069156169391021299762498903771407360029048773472983614375593518101997065684822655679615663492367030769197893755670626334163217592389257765266638648323119443219366770012194169580724204041923547773468066729466931415746191941078 - - - 8639730790406867991977107683107111503321365667530739720735767081626862213779750385787772845196688107804614865947202268418877580917951055686159575327133657647003705903517639180934038317325928637738790879046415829206251064099795774778269805082646407531021820386996109081664894276801058973687968420927000012409363428523628953190113168433608733926738814339938300861389213024730241110232162137577916612160814172648740903672703620331839717527342964523287341622410013264527201399481045467958799994272343677294664648151006075618088937992830707912179104714114413785702291354750433230195558198280931160178803204184205159569638 - - - 19566481972310725090104877872398316847138518980250695513583999149429609909037809154338884995861378008792373223495724096146901200247957534716352826389584418630292528271053542295690499482316428947582165089390082171860036787561055159184034016315306672289519240184722592361891556419576113608472559964797478498383081295491404451656251343662084832129587125331611755504398360278840746413329761676678671286267226339798498945664678681396313813772753849068044666136401006127519503792424589313429071091262084502302576345103509928370650896748570189929462684084370575395785635549729935495245338084433582428453368088960300973100636 - - - 2165974665067113413531836393059835218990149627513094336672871782129949893549105765277286840309482749865580699230766237874293826286745407382229639614762905872585664913493519849502706715423789805570313713481176340668277247751159807609119892153126969674029129403327775526355934870003209963780432813455802500514115384365135522557698410049610427336016712896518805720165536164254487311369461153536051598207578740664730869934905372487159542966983260261514664582499197219118462153811560646261927767972423519336100300831183701023237735246997318422204554473656909170811034430291777711827899834404455701996796718987029674657191 - - - 27940434184017295702199206161591128346060225982979541586880819904745086613713248150248509772097030423609156348365395618980577360199449113643629189669093327569503685415069165442435926612753210224091778747006126517459187052327092361075575557825215951632395650771744368841133020460308154047169372811460915475244090258524321836467095165689859593743072064655205676932696678293799763311944092221386261328521647824783362738738828707745647844424964558066319906941679893185980487296297183259653938854079940337879300910744586400835195418669219916161537943730211210602526284581056918244475443871628099276626873618539336243096915 - - - 11866918675650754648844751896078395837001317376289016555411488427100049177562629007331176660295156531754379140773225600169342452663850172515969173411780020478169920439015733462270387750620601189297093055515848184726100940775429504402917434996014871685804825411469119817471934917635392032196503375052516863960030186446612914630526817974203589827723691796743980075436954837215923756252016150413690812836224114961446797675356657063851679869690218117913897876390923598245311521932170860304576777863896267825843251916269575895881523013486348669482125761213621114727473468521526865819434894987528636532072314903245276935708 - - - 10348087779234699373701139646118012988946877593748361193856636271077000537115431866091483936156628682517125872703604937546351024062928357032962199593118327926153314257313734870041838786325063546154271829418697980081185459806445870802303328562652581002801014793708198246667615967893864919210457702040107872422735356014914591148154029328777704454119316297401882122036968905248177704075315868636631697870480995548950082628692414573033461188245279856016214169815862654710054916994523328341202144816377927168781470334300462802835942168378548347515934872595092940594812207812299633392411997153120164659840785040094990648874 - - - 10244148460698852573748853116849816035039937328075868707183930131361432077291181114552613003733114008733420191833094122778785588589635365754234129476596030195602205350665695392937377400037530906995035894068243174434842429056363898044980501697747280590430757764479492011108341712968543637192281380517368559670941349542499009880658464409206476921823813957297823025948558241455317013511545478555089978769713526125805044320972102238965182043159281955579271930140032457566361605564819378764353605504715254436507044763352231699860987090037928647842114032527943769116730880602357310670223683201418974211119459326941843560394 - - - 15806199564187260135210686779780485766752057693196809179306364800840100385855998918898709536409254918021533885119895403578563302336057801801383599771705667931327244607470331453969084286622013661807019654226640517131578013529380612124840229272859858984191742903536560810271189452614830081687938279174879587602589397845278946273254524888049343140292499591787060784056138535180698655823574258082681744147489909260103480074322216307698912906134706805909737384396348763796317983999584546533016842839329786495177183119593917491600173624256232482106212234261532303548380626527834336579565223443225056789966905763497322237919 - - - 1500351741605361511073422810753757507181639704806660965881119717201865881084179644923841233772215804621247017456913728931382725878705759781048070820333372977574386313770055726640206103609343027526242601702205357840812793247703414392033703444845887958534476814070925403577323257965794212301075153345098649301420408907231015653163466581100982780599347649126867258114188291744320414383861957512415703826166998244351383692873890789964279557116094563242198430975525053259166298377129138714489379777763127647507749488000542923246471866813673734573293869461034929774084872144233222003379700778022612743996320215905364041266 - - - 19214673344410286348728178498415870236144407057699262193869898925144637588218012794186633437472724056816518529164451376895739676926415758856117380733073841079602619396541943377863277164550967941322787398487591032035001001495973059591116548702794109575166262341365659306968573994141040852935697024656413445531179109052124602877322833248604960427066712570687602726103362738249422882599876970843987126791573067999212463794777944353380628617683044314098941982097837141627391591653782959141935724929476986933752257289798734430523975074682410306424035712587011623662508154709269687961316989447055987766945994322585140728331 - - - 24362977124999983631684673033872344357057410473618414504556456946869791984584857378968377412189130506560996972239698087431388706683531200078662715968740456703152441238612880857524313761496278624364554499791821958554362510879664172716144198752012485185220050023555724651878661817622772590286080150911805382359038966013025921942746249931914503904008773685857605258674328459112070072761708601054234650515191077254438655191364227499962891686966947546201229435311980583605161011228443301784991530812850893442247524334751064301271072782269836927340094450407413431518413244464000775008435721691686450017274414205084307179894 - - - 15358891120597678720610973878109203279967820362328876764792921106460519644827253687239804225331662086677276081362797917823888663796774975112712639850165809939906490211258113927456380694855922371433736061036945034169598027673200129015992045957508460254581364755920582297933281083736372514673928299008775109144178331182035141578082443957055579053506598263677520955404945967365106417877027688764706634902902351505141803817402197165328453408152566216492252294201593655498537752625769794389174006111726686141251504315343445574011652303710766870743753262116303186629686852477280801543004044956120510431918408402305473041607 - - - 28539597642248759914574430453702433896299113153433026458320199017671550740051570733386399268511483528445033749881530245679785018032674911169700990713379892149044444216805819267498869308951791179766728899599038386958204721949751410517088858004474274890529585323199078047996760548867584202217934485734092713532854660336508988099820451830111742017300444584989462622885745836248282170648253171595439667997546216156856967719510896033891923437080082829659834125080023665156896303711476260695559454760916224048766236316055071995523062753930774104401365926521898043573869948673553555766936268042724174764991516761244315644360 - - - 17855004807176849427475519082344136721714597499944753567816549891596547439304922220012730780997370177687909789209029204685368692561734046048077349806719762744168612384758319692349395775529208773724805315596746164064319399975740439030462375280746608938732375746648451134110915348479202439047204647623733271336468617726847095454927756945461678981196930229328812216261309461046693284818906402310877035123548561484681192743741161090641157955944054914166445007986803458844550907002998406479609174287127585556955171805337686883007941045362640050956345552239454330273799668093980475294205577963944431735048114684773996556128 - - - 21168785247816777234860315371728248808296118811460688018857214400433967177652295310088706795056724246742745418846805807728633520076138739726948922095037466877352530869974734710291085152859025617340907628373947620302308139866769031711151944224969231186303670382485921847294561058441458168795210771737838839458847720179611200308759360805240017400447730542210996368918699114818390481228716268238120749214282883956064663593828930759740361557408565352499715313440806537949998082203905784092917599899206256743778761630961939470600226794597304929476630473098056812055592795081145406068985898811238250927983087541480670125487 - - - 2161397094723404416674204021217188974262933470172468898317834741866720061906875665495554856814221715032723618352292529430911438912892393126503949142666819438501379822788707453970440447962905852545802395673199168853116912131453824134051467257072807032381469073412108677384277057608584317431812929861878741320831874498604656315620494470023402912355047110027415983578919393702510629507154216828804916412911026049140332065674247837906651298510010728710250979395493200183231487648889391964817177521493185279361451753913988525808164962933855889038888835908991880436476013085356066228161779760976640669329081769244615702930 - - - 18411013905624567967263391896494869453839958065254443281476901320986153352885154081385161710350038967011272991042593961174881002285265120133789873815413318658615434868567713256316758091751355053270204628901196735750945917645059720182387695389959532683783716170264051305071761506465056401687265843937678514552916741613635057445336133858454231613075257131685032889612413768323379558675345343181297758712529932274081456388716228757962452887796046703606516281953008703180818887639118959714930969955171442061247422378924308877745482841624070238734926514688781977198943567474662552207904704263581394687483341283981378248045 - - - 13028770359315009521698794626752910432239963698099542264236725896485084374286277406834524279658860689609112093419180528905512433249574818060221071407592985435725893570462373443898981913698330691684810989907051058312348804857995667651204190793749151201305294646879803308444505296429077646197281486803197069999131483174787425062036019931684615493221200703608877060884362288757994973600055323415766339075198800447782461926193440152391497714170176609779305840066459892466333642560034283765494669220380565200833837762727544788696723761685699765216202311843705162342186101250413820055288970312539774931461459741476360738039 - - - 16364002137979736248714637938517074840608262727914676535904703937195678622763661658785654204563246314917342575388948655821149350908045652992094893748964233044058928251977335394714037477213655726500895138345663046239598952888745326753717091544077445867849079426399682797749877243858472041841318569544393333950727705460517689778673889730503400933133633056333294903960641545745361320073215309017568140996491566380769376817403812257229817098604039172294090881814453157871723830141095605691634831100254713170448969516155578377633488343052432488150960729036104697577596663275430671142528647828076132244373003688014977579308 - - - 1814783249869957423897681081479465110713317389462198295903310736322355036471657590422895340793644375010385178987019577771633296598014603695691877449939635131629950478377734287168740844023276423948143992190237298968503994476686177733640773084071918193500215856005437302628976032120692600595920798907001108766474101689546323114295929493324495052837410284143211743454404496809423239749461766139798320777578393427141387848253810657079957635461527314249905263789652797773584575438477390640656205449870817412928665236132260101931615286053194652909237830281217582496215386423302736471256210410318499385064064990524436949129 - - - 22798514677160214792504842382074829679350424102988505061799750966864640962585054134002000872984436344139587835241568535164536385540849958313157049453547402535697942685469582226440876689746433712154241912911529661312493272154137276578384528725436347366459361579687738636296904943294341572586592720130603741845066112056384195942625340073531541712564408590176506194578880235070634419793636617672970550752410112036814586224244372094755835519271469431240173079721562978567671576683779383144074198039883737008587345960747878742586273476935431716443321938373232839846751423045646395311191101254472453114343859259386035999907 - - - 14214507139635701928619879103010213584482298552187497432706758808478528626869361545214043433327416900856856989029865115491518383433854421937507601615271036015948565025619801786565538385011685336133116997750583722917553525737535622138906341914720947413800437405354236149373683812006003151380905848988186109015954264816055121498356096976336634442224511010831475461441908527228801001096578541687935873428459697442763010014411774935147540350800002050486092410610722343802423120894183549404250173064949704354776627498697772537041987897113784177455559222709500110813752753187483448461084224876680270829894824312974792275407 - - - 22041337313661361724861924071066906908057617103869549637636432067171690822565133485137349771453270452527827288414584146164497926820998625516549666025584289011936119327422625960182199335525786987525065949304617550218997985480870628703675428808375826166877830863093841258371960090023105198759034852975220154922696376079968649181569264759323515631737706456488809574370780357981570238242572377564022504420681127596322209888136049709367912726667668068787101926118361544679909313074236338009013008373734011771849488481512706763278198937471748516695833682960924354181358482900877100129087893820793150169128040105333457503904 - - - 8778492265162009609731140749064688091210156768663489498905013752070110699881866064551251456080226383583967900091140015674727154622303115208862333291538907126754159146934536373361114513032851340282283900778969200629678354530724163625767881013919343460521379322186933385638457565026794952563640880362139500088601816648488631161300376598009291611202566484036611100633981998141280708152012724590316275366823543822018690666586967596262354715857448601179017495140003698077294846185983168574016092633475283840144721332530354079038226737796969650028283500663801590707180119066391963317264889095546001760169287942082350047690 - - - 11329372915499933017811926382911055821140280789528951422381363251624824508557367584344188565580295553743622908785730933473550684881440467347520578438003218531775848094073120185963113708267732782258967445208204311705366272899578641143306769529282500610584942159086109540336792922707953090593996875496475456298728383286781377299105240229996403061147548137386788942222623959090930110337457587986769342952957334627974585267051357767069566700640496256859882649785751664740068250691532953139439632171789344503816581674421229015501699342972754359194585239609930239849957240964514902382345418919453950354675060258073545287891 - - - 19779620613098973751178137493388908283713871309097531021063731358272001448627301804860208974089903487600047774457932927791239661932853904239672239341961661942485179346408922719102066053993090075442428075253656472362401746734351690025663262069303547437137499531751500044734976921257724550085210500139967644715972669745551865730604410409661102866470497315025105344941945608248989749067160894812041125581440158464373950768289391379891558108050361318638168298421109656979180868151211538518143648315885822130011751416630427311897256089468445048886130735001588226952661331466158691143255302812769285982248056751323494669882 - - - 25857553586112602537416532092767761102472501462318277189908841799148247301322135795948485470978136742724102293557570548945013851445603892859368028792545407479363738528952343164279031697292671392408271532180737610035481738260554365120173493075916447473465157518921504542606257128477242289823857280712187197720366501869130175273117274545479823814121902399049578911648477592975091656906538659679261656626865198153177882044472649854852996792904039494633757728929129694494931676173698658109509849064424686055321904078663499336572741918065924284516124803203389812265072593969325322463564060538814603810833750304427130123392 - - - 22758917918924444919048222445423075944074402849266069717041734721162678545666296507134365989023654532844876226028577149116567315270898448762787972027870919998119465338801273960087704248540451392061566076660237812084408087915739733678251237972588294228091385940111274502018678988627517279605539642703556049486916874027948514765983033561456098801107923027334711450532486060312399541655257374460219835064365669010912790939797235000874691246515656521256581829248872108409584423676745881001687092294715845607354676845640355126999517238976260021880805788713061309675105292038859436842119419376705783940709912283436303810334 - - - 16429641302691695812436308679929296429128960794920903080068539324735825276425886422956055719546697089197842393747812242349420507222782790760387230120490681810204655722942233094129750973540640737395449238842509446112900167583410091043832102068337081498244496840226402858751275451031713065609022764908818192081047898136938364531824943626465879930248984150387333141496534663705835780097740419368115691418673460336500279629379833296122212653955075364809080048929097412542144312889771978138075010950916557485470308158787919200950971510251499135500533239019207898600321314340912453877929889802387785783087544436499050177308 - - - 22114134201474306256770467611005994437657289510411206421866877010666377229648130923951007592346306646169006655850460078032335722703195793469608177964546457683924389871806273128502917210792178443711253964184251034119739558248387094330355286653911318038985938587582301763511316083543324185087473342015043142309015467081430950017090483925006854423070269100813525096826727533961785423698711789398094266472726410475089360716748127993206323158059125854723676089821555237849095103283106130675346417814357586502374091966770761088312443603662770823457091778534182584671888592724461095381406478488584325043317834999208034258524 - - - 5714662545090272650845638274428708628030231709972356205388944191611598556214902342476315063783500895774252385549810149089569073565620629091869010128112816359585896459776146443877660385764135303624296164730716477056104888440816357842095164054553503669111817953598365827380549912735264793943073284003282448795045595711696535607993494307786981083466125456913896126731544853226867172559890785548352801225189765582079155744518789227581580419062071540284897756864493413066624026375874764181015652335773389528688399326811093532594462320973306618694532955702834558520293285035906541818395621529183626456898189825103411662396 - - - 14990365736296773758323319832889273687622580854302161927113379459954868645457353025805369498380725758789999217841921557997944963032212227613772544755169315127637146528437069470781235812515504444082767526359507772835675102264961779897893627640435623820433784233636217345487017099667582483706395440377683443385427840377136986047590394741654956535607545392075647290194555300256926377939027915636048577021507557943045510769553849303168893127468804757906874951567911308791467823302197958724716495975345209215719083678680177700625142224335541366278052621204344613115219247065795905977935621931974107938780149521906755497537 - - - 8051231214547897307854604765632497859346170300837918086945794764979063743382357322894807804989536156699565377251330761277969637755182505562382646402213361188480578913341622334337216122751709247389333415638543698605881860290349970610770659162451698978344937443748265116068866059205626618008362734831356000267745911349655025215365318179014693883169991401692417150539491909107272465933891196584137334748128519722219040511236602819252653445322111309984866909903757600548788995709803943708426436277037372379929408910196411287488004030029078136783926611821822608514562672238066001268744061160978370087251225617619827237402 - - - 27153522199027682779935850868345627969415258688552890008507008622539235149462304321502222741328004321767605750644100172449396602907989651524528892900587006905104586442247781286262240324972253801519610035194321709502526438931455883366758950521464028186483938170840619282596413051889230267920527396018619595274883590156947517716722682769105679230051872797876794344511601524671238080125040162827389163328052208286417501128624557717059958002195728410280000280191374511497683828766341087345380481477518661335174148771236769317620049831771737925891720256544895743586734218668121582919844712201822166434317522323214315460723 - - - 11922147409349782655330881381529030365282278653899842727530562681510917737840961083049225553296946593408006628899966547092622067546571323058720047598129502756005894133361910990432111026764521038978925643656100741962574389414382402570433081184625909995042951340286987731371942829841238535452928293902549732858269390113997119318034243948702463609694456850959042536532592213662830355111749288548729207833326914081754112794805006016963380228990503318550452801943301760142474453355420714731643835725368955831027337406089574291347080597137147482071976226931895040454947312571498245049031024882878148367780780103751589503344 - - - 28853909281940623407937099106451160060899577654676265028550402494380903215741534145749928205058668742940619892228452823126869224615060780706182488448252578987178983574339788414251907472426396988538837296080867389756329829204522806421300481697130367814489790696539645033974823149752302686828670748445889701763518280790171859907939033381064852501418611002271421527220864966407939561268568192449721304463606867825561474866695871626686840249576186369522921113451633626110527439877200392497308834733474843142036324733845079678984730565889405025636732989337039719848808899357541994615436893287933235266326552103330834004006 - - - 26363047684539889922967309423692914150718303672705032946172176212142499272398048493025873883655122653267013873165857657250978908874455992090619922495716121909651071823052534916752928295822570386014184165289999556469300797557209998353550275654696354521927571987437095659659322279362766953979663645198320918330836089287146076152183503280743025671679747766332836543646504281261254730269520517566132208905766750803347797658153139796315627306293018135406488387015887440486693920619585539695237829040349648638554459542733330446361027999778882917486742313237139974771147734244173645600652175722713439356025476725193844443576 - - - 9465692970165771031541045611054036987657177455105813553389598359631819989059014589410334147314140662028860047025506164024729126649997444961799527147455927509528435155973395340312885987805219420050289181615416569962330188794956886289797611946322247190371893326275382993827210809208654266524940060369644325214444448522458059346507599041129466462074274557306563072499504979355681493280721494441367015908742287247715587112222585525908631329616398893989918008718565834919049795278643719275553444988992921990783075532819294713101683073014828055400321109784079534810925132715266175244230315911544895099143287496265194373983 - - - 23582613501126831381075034797904881396558382445441461882440962030656296708411128727086431782066734268842434727484341594870937601837765707838121037411962608730057289763086485439984166877750424534427542613882437522661996442711265612373753643089464956884663287752239021612932462599089371834424589389938697382562687298640405435982210238673413566423169389728670763207597266935491105408248429697700981289591829789249836100502763448969593061662454686411988000053496221843483026405058772166708664554778642494000458806055432594085506583286210703658161970651761318225213375653732089462767015984496666190141152308427028506436416 - - - 12360939709003473496195175684966968986242519482841542915998234844486946818215012248509574736894275983352845214939951015237637998553795244535863310065966017632341200765845478808983291479074415629935626514695913832616129200761213377314530096157109434715134572192748746403277107774671990637408397601148442516021091359956206995435075205699099415957696608841825052244146954864332845457895468104485172292817868975768272085639476533925817886305727690850261855792959800325714425250597866833315305032628137844560611165936352849204713971161028482821924564918649171092645289710066813686594596606172903856498762792685874408385049 - - - 22387504948688673491801129108847275785250807267705397261167860964331165985204295471726302332927523452733735601888950125774664737402123635188023798121051770778213636906390171993773462581371174495386954613790841059835484370504393195672340482660632947881051076476456470518903674751943249548513821692666443132927552246870001806504697083233141267392264693472304896947596234038307230625045015165337720652425361257804392457755094538595681767930777156005163004045066562153403689291602538740376207785748895292772806920909801136408109521021086665604592061930275618042570526134963981102007255832905798594549308558623296052504176 - - - 18990755247491806223062268107413748050211112798345496254421934863488241181818656856864188195877621667327163315967343604761593977476467491683989537607229043342771297621713321599802741400383001830977666472348701010033913328341680620729886459802486226369346626157793319592680682955184184404165525513200255586996060151639662063526227268663191713276737548923962230780826182106894499855593723458573070909511487422354127908075324913331707819297021721535815500612897530047316690499181750180746974536094957384901177155857148001143006493972849986263680871021401525473180270556867311010129883911931453047854645995889348093248544 - - - 23274543195664800205399599733467276248877995594441995478116279538136435724401034390323125474507428395663728349107591986939631796978870489065508756263452345691368224344932880175667354965761718756435574827380901441692438346485565006038285708206821273978542240290649758437521003164564685652413931772856089827717077714380808567184611414221691680526149321505636597685389256459317837997252585397917793927406041179015688759372975527999555350528926082416609837067395241052864783080712787483831394769425166239731144064430479373469862513011130925526041632590451637040142428755792564340767077979688630573660453971169611441283035 - - - 6627560340415634461983035384216427466820815995238020042809102838843461788349198650106233601292693512852093343368844105044608277143263272379109529879186514326002986986864556785630493661343400126352576521984028015101439880418753977251252995755097203786030936845930477700938365601549233109450279834052782749032596502818152402871945337143351898398134973817098735737445645186845381535748137408648089458183462356924508187077895514437097425298874292572566643341124910868559417713291907535657948527812766453621349693969304946019566964244105382767164346578217481315974617906249025428122374997458703848530072369370494164906712 - - - 8510920807360194571839273250601761037193940822044159347345699086455164245781311742052513354316649271865897919018570635046811850981458695688236507621964453242286274639803125553750017240844015629735672388868982053852720419938706948936062441094810659609108217773381109440418258461500911283127921169151607200898600049563931501641695844308069427054312620925390794010778796952050362929649134144952436458920803443947998547788862871451464017653625820459624785900845034080515196816148363936784200308243594829521336915443155970573478961694485613771187383399272510358586949611495566072005237404372859661846828034490662028233644 - - - 23984690069669911993145810893465807462954541808367019721878873693732297281079650031406890603432479649392108369234239391109261840246918110577214802729792207298208424728415662877911897541991328647823577523649582877411385284420834247389590398111453499669165422573079682042772113884068310844212217209579926617567610632453457734744522251220828132428279639797645909011674255415401919001732104957736092155745747619754136931541402324422599258894569084130410852007377091469220722207835384903726466760251983210788549605577399166592462222373603470590385527786504664009578208157881832660769924494787318093125615510338876182518388 - - - 26450699706094750183740499353643919506125698137509642094373923382292816371175468790459186961359779320333306488426129945677217741358012214817106243478376952748815937183899437887795456253835843919762450909357305050295248394675247828461080017426383839686377269355042993014606411528695736039906349438162428130798983345949708094073764388411827405403202938954944290790204406037248356034275887412765966174112011482767844005235026670316527817813221600791501084370241893091559386728227205570263500604326405001563290858978744807503890989661587528415360989682325644081211592568769634390277790612346057658257299091514395695202024 - - - 27553568435953901826922582835876695403954945217953876185765462490572121586837374967794420049344595933937851173560186153854377223657469934643074816114283317733414640788164975148840186201131365346659216353513175470536175417478062909432469185589605595598244752460372812347353770256847839858137212708285865461325121869525008380055528783140891313715967410883867998672825566762155660919606710706779250274005445287884485780313771655042324767839878274819664502155307323019523474490537866153664904370816269164739056890464318955646787282363441328708348236679173681033833384721001664492892555823272369920327510812331075637151843 - - - 13610348418016309486432989166056881540437034511985684325728162109853847605530406162277339037038210866682202263677283695352667899954641392794713593087297100744780536281171928230246983118220263430952094811231103458643234580981615484567518250184193500583969967376998377979508687223560378659847831190653320245294241871044646390504577073511838314604487461024193968270187386912517708455919246026993790092520334037514450663377999619571011848540187849805414101705398997175554616912843953536726708821389408187734884740427418782731823867085788195308097539906832014812908714576377159012841243396159872135437397183486100314285511 - - - 17340638743680533066055697854567209856806202554675600257284348281072015408912865603461501954728984307759139990224308765258110973889591384240811610548763589385514431757631960425426174940681489018671675752625472062547282481041603200360601878563867847140850606398304666139192390330475702528939116489237700658737613761837079546131287673379968693077490153626459284519657763199258440596344945994755355452689425859500190181404901575162975641358355940228518845526167260320147966812058116792814651419355269100123669365459859246032016708706947680740898575836155963356857192410634718829733407037355089352211753147039914917817574 - - - 15041973496643004477805867513771161169461606075242122908030261740687707410641064140005251193643983043837604454284960116536561902502910262057819240737360466434552560741393442557346227124279548828374191213944803551731774789562892731064346022738568516984769122077447690384409570960706183137995296823697198069534972919387905276223222570189157153374232311707997486932094430285047636825721729582963704971294572507057791504285379760036958000251489324259805171810311983579227857732133796468591419374823179890751810838604988250380691174076653704753468749873169167596989103023813915651195571710204163386022894074419041780179614 - - - 14029319524575851786580448798068850555695337373598802294454563047841485995449266042578240954513847446753236307522484137516938596860212485577926554881300007777499376316917322507946826010132616857284735068375931349626316222637370142909806253663241944582384770414668081379179475495262209087577729647697782267483821160859805184860867986778439655136700278917009289757529463026661133363369779017153311948062498463533668866102476074253632618701771800919106854706246179716926766276995982153651693437424674047181985320470373239055724087287327441558947023841726003688021323143070625797324939384703100962347636103170552655170798 - - - 18798007161112547709278302998376112247847424407625776664293960281435350952187952982918183233202057471564462243035924569388157267062126599960180535052542928741808468374891611215771634321263020224247854641500610847984066594978305634288413115918679187590915414260956093141248672293361924506266085290073847854050819553413348672463448220073109247443379437084305628036855621081253441990984247896454867893857017359110224654027287291228832773613985587715490307111085852575487471702277539387390025169677194406253070217905803320284510035513267094007680671846143184250821353232067490826852094926467819243714170937107189100673786 - - - 27214222018849763453839004291072481784504900970895714623797030258608408718447203816948348301006417249211205678568826571422951437069235770464412098644858683886520490787847857665251258366300299254051897866843813368237977784233147429074038816620393203111234332838607134829435911431519725420145654493692978664843135563534645767023800060052756492731298201118170380482728446501164036752041114899562318739910613468065127816325837569794870296352074976354414170068647066212645951833943902337764019571911532482703508622437563143405782961447246422634068593148920308939796052134848511959434237244870290873070543160234000370185921 - - - 7533382796623094945600733967944021214437235555913197636215627059198503331017415560183873508730947250101107095763199143391295856386098639673569344733099543629609543026605940605614710620485943950833414580165163439172117790890723639674728405801807179410753412280893764728489116640677816791212126915148115272434463479017215667886402414136393072463619104512010528105563649450558653847340370635117361681659646549474916026272442160061783386621245666378493377155038620543184257491813307337636570690055077209319106456155212959530392421071627006986665451773658112500690029786468348029184289682226262400994278084797026212617560 - - - 15093414328921777052182857788741172588136901429463111450221111654473104009591633539896647483906876074784391818967918023768782038966955475698234170317401458511301558532804316200299219773664554266183482617662177767485484143237283177940032237989501919378364976375007246119153849092905033778120383310457631559041188665856747176748226506502569123475866771482435693447807891744453485143734348002665108322232069711283820458090543256025150947728744165596581158737125085917289977534222070085319304287269824977222958304577796399101377938096736988981895969570462380214708508319362326277048142770202320198828608121212803135772256 - - - 2933176747610520810839527771301591762541565782409480688537262486311972212100123347232804444753705830069740546633087643048916570890211327525215782981929215782047941056911008470220881671027446085746033836089347653547142692656432440813750654924179370549765366344697125498557048746833052303138141555013548833081168244618954920132739824726953967028004976862975038849381549664179215833197998803351205832283162941299454568820937227025857069976413500608385961109804078821922010087377224803926669886799125261514014259218638918772434611376770035962972372833876727985800279588003666565060864114282154656184194067195160435483201 - - - 3917314023425559042545364232257817007552603363139334713001217614780198237457320965755013284893203899980547605841089781023414402766829425011228845083690792720661591612160977494580995106928471881029263497956921686631113606211155604795927012131786699691264343343140738112537499700794527936340773980764064776025392134434691024592777577952617553527577834763907478081592826893953087058332413644131624103810759793108188718886433754890945232786121369835551042755492941017883420531020934145410379743249094321808983473032023781560243814185868186233537425585381664955331032387046385771236026790399785397928425752629134252513026 - - - 15870905725747409824733824549264885371439915503093831733096561248880861842788899073517336956438879897072308668797727879590406321005233048608608632999129602177698563770317181815124400831024953344218067718480447655722023989063757178803799207547281162230347071690045860162224584953624957837991895169031105985124778281253003374256619195205213029013461717806594970065830499247347915454572671523135810092784557663553830216887407288719007077059258418622054997800670082232338525334170224347172036507377279187497296774176426914440786799823771071817019520694641489940436128125150972772511259568842251700822175112710929919429002 - - - 18660232624476886503673097719483364089870159583675425437275844445274702979271011154316485980852325699613082960270961932368444027828555877488693223798766153292157043728572083784660086956960618764390227352969447725155590834795529329160112178652509613359793052403676285486860772488846414944051323725757007656972436750738015612284072186374654308696894374501823278829118816530689320888721030501454675223308109006103881690504748161613842718080174356653046529196732721312786393396813336011691926900880971867941750511293137830080713548494560206247283817996705704361938986316127852065512168529496903211167920884551049788111851 - - - 9649651827441067505191442928226905245330378212104104801628379808995354495584965923610511460867162165038151910811885704462395661420480208901950123393175242986920820989997178835681378165339865124695945616857723981214556728600618058637894508053363806470435827310567809765367898970214390851358897171027860453091645983395639048686115182480665062737752298719239020522795865364549276730535242846670815508495968796624136249232891445743248994496642517737246916155388194596170711503540116818796179844811247359952767315860157119322008651259133751627559696046268156602634672456417735262000922056954478919297063695399600175906551 - - - 6829745824107098571830330720056683938769215266802489149268784321176266080023394498986474694630224655145283815309211169666564128890152108341726695094351243862722537184056151822709874427680998763455027221428041238756299106576753378109965511076181283549653190935968178756128810070739233855363607040564283382868574156428824612613221776122428619470688822351218096432806535920637914784416814734792915166575051762416362913949773077299947213989143553555013038492658110623668897478118913791060469484784587640908322392063053016557741233313590634591601281267769357720408662954719979875513120881790513605538773488103322511865442 - - - 23054315171181716155387103550380755699768096554358599407489409389116416019165385474032690237669687555894404969274958317896449997589651686339465969783099776317795848515582704710236217537831027472352333735317548369592705525564798998732990261900985025695493781463837586369847717934486376485648108348116845580109403461581243106357311318297640546138406792955477375147786030635493371786610026632918381729482990012389000091580856941139269960164823211369801568652737026624395870545999631040859811757591245162255405830135509670421228141641003837597276119570231336568261342219999001752276624092132559398432269232986839070235244 - - - 1896628274223896099507580015489072638628182049627727990205726107927772618420416106930855775042849732840030803618709749309220691320732910627678164940764798728256169008029490017244270195196003994215216016996537588216546750308396885843756206397536227593828917314643686549331002544024875228527545944722968581163276559621615992196287869673950786132967428505290753155950355742141718353305490275125559391647660731765377045830470410156377870031359556258155378357219788966369009099103458958954630217560846975529220137642802181855205079343325440816604621132634512762608365779000460825186253517502364817010420187185103827835057 - - - 13718231315217329272177063816460330102738856719211133130966362771991741303167188854663765836554061141040858579048582383445768223792058171927332961148568240750068831851711556487366870348544812740080292745695147020888636879877904188097264272145311595107261547856770273723098916864328372635470558627767209149227793613280505820445742050713722557561023168571311499039740466528316507054183035439960990345678605059321998316446714810491772101379496755345163983833886720179972396870366243556640888828130095894251320075096594097332278286687529079395684797364523223267999943468334497369638484143421873709926453094273149731587698 - - - 1358021137643133656248300432798565906296126378527384074987909797250839440485288435300719513931418684555425282879065043156852055223357118092521041509877840331122910783203576101231348054316298853523621323139731852692734363997685234282411628724678677840491336485273326422275387636927014374246828584680627106980379678228484118130306434024926439627611331761556508149492641793211458790163377863293034125600313842705156657365090252590714213541451676535796696622299876438619414100443471650536932049791610204021975246367334019197062731630321275246819797667113502635295107332018597278890239155020127660066478936890385832485731 - - - 22144302135217791834300741173483070460143017277550970404402676251529396178816997730983950270718309973793639582869218842916049072216203139247264032155291807190693573667596346655330543114387149562073063372390656772141015733027005226510940207554903103409913863032750553756327945678520950211139082479456307232447265920964109467475003251458159089411867614311460046492531396947476517008389579743273633408724101042508414654348235020301249115372682209257642433065699085088581999276224956084772232908628446508338650321428607537623843045783666605588835507002403608275301012020721278039259784984371152096755197527165423938061365 - - - 25368492860588075944403004376634749356881576159672587339436057023640818966534059465246297633366595978974798290979846257636261041153703758961574578789951775854770500810761220136841453501617319064378929923311109380092004756007051584973674702184772258600634225986184293624090334443033859481637936884314445582538260466671944794403934527418568647612784389912581731488069828949427119691097979309712974407044049543316268085173973126634797396189654253049994877133500526496855666191977891373628114445915224761297129979241695454355034892824468291005884852243841530797160784382262568854482548674131953689614732455070790607776686 - - - 26155348743110630961965241836921300463325677302812033706099604141252089781085073654610390486535238684579818212194759860149578813708723171809604398187610479818694537379425073025998198541671189571460825300723090407887663931355650805351462151300238402121728963559754568620721380455085450268228291758062824023983261372477780129563867539396353652624211043619817325007005011569826529482776910982282675519715866652591857579534693961517651053292769501450560130645867603849489559076133485641434504463886199369954453129184493062307170717486484812461071586226131707244014298144327974376520562331859815163819307495751304016377695 - - - 2436295941553455639172252681908981839680551757550495449655156042509654360512448694671173659377300555319567278979701830605803045894089911479277676721741989233589764156290524595720467280928816882398692553735090757143806143104463839376940201124949404595418685405966451476355710253796633281851374373912451576768676457158244854203470586767149127986888066906587064610650970806627913540987364067370385311433153763484675293198352093986299142611724521560694154888850801340770103383068713088101731523638303116572565122908295918272939801933234395744877368525626232227835983676264835576693614040549859279640977159924847531058546 - - - 3754782791042276080992325604409327201876515010885894495836319260950136723466372768375655959314669589936222935245984225065615147011196853256195299667994655893660512671516152412839976492718257103324247034620922157541953203276075548126061440150541912710957520353884554723069430057714470824378203516034906205911316199826144989884427034317815137646921385068895056780999839950648176478626338935862481592350126343845560261800055291512433849358952714810971622016757560498757440390118128595027259198599527901155557746351966650823289878651552062152302236251782936378610001178337940711910064657068150158417653653615091241816254 - - - 17226821325081343281712734303766358865769250840007200916714797877588602251028909284638508641529995949640935237995922999394173583225732735785387258075228398295601825191472652871484250751932749962540741719647540638992611117892211559426683632979552998817376498678302977450347738643767617536365030507891963405269830934104991336131927218453581380405698694393187627325568702096680382320476001365659488562415641838362010687960845927594135919188478446479470495576442793892819428006865301313198792819457513422965284944412382206069043639157372689899171246306206802829861415789258863420545451677127841261114529707147397988020608 - - - 4409052611986755385401323085088944884336556892835217458283729803860345372516305023947448735546168500266502402154355082472474693044597039397125479104430868700471170903925106181574674296475736029294860492718428707095457340089986205160216889582596833919789330743078006695779820263716628357131767095613706441295553937739700572842094566662600780019019359714578368532388167920020012873947337039723753383720622075234615151980023681040693788794935091950266312035613126310585151447008058836266874886107873203848145300126517466390760233762007505240098594763359526746732573919408534004803048455590157938408209423628189358457413 - - - 11965461142468830295202554483398179758418486687252561752147840841527955910882626829099349215872216344939916086597707141903862317845577638147419500205937858743355064620142597703860489267798398634357893460228065290877712973046125793069157148718085138376174587291139183534240390068852962908436396219796717603505741554087626882895060950345823337967334959780998068668403599081166286635969164193341372877621332568435226146508441981470849163561191443705863184459677095512213241345619103945214072636063963128203265668559571670427272195516774099827779993308264690675264354134257696936355681219665396629675859010485458448457019 - - - 2863166257014103564263062748944674829997281906564459256966133618042441425118289330370445169818704778551659126742671333744076646859215459042090940769477904978599658169659080912899098457467092452637362103818440963023097445811583584629742193844154438978298569308048941574027047599958063029259017416353192697105570129670591961110546094978054686795817416004550062225354395168275133934745394235655247054612210583294709502228875249504808318462736545843727401029485601072637379814539663253376168087353630200516744486513072349854862474701461554719999619959843889327854655569973579541638486131222943913275127224128990944048148 - - - 13569052517058015127371830700231205322672090537856662064931236788685174330906231821524200779392475998306946422327388828261089327843859458456089166377130918472009315200512227969949559526458923131232489010860129192606718413925279809765714445014118432572279935926845626546962213283592877250927357038613746776526616651693641884269117976816310960445774107876602816123905926141743793012646145571062145131017961511578488007062621594713964578605283086797918196740621643526689970591926150735720705495488610464644165811223435160697847829512538347182348116126447055875565483471688085405784271148594729724618766690469845655138724 - - - 5431875873984378819044772374622636106649171235152724797930276701316544018304227186535048007395579242468598751627223790252322428723872194257174190284177153713037612329068564437784205048301649319810096855503691531494518708852222838575894886382527878392195945364005984738360681011046512148756116579416961028596068296618932360014851397090775156391233584811388219475431619087670365984113484532194149798086601402951742933142417830311757082799294822523786834446031676070099802881017837023894350860553676027727451674749015362508055655164921580725747104340861456987662894388081347977775347317417081063202611197260879614953371 - - - 18581253258803643224496513232668766418471788499904204304448293304740781492825460504877560595125837394676756436093915546904962589310795973703682195360760232376066214262512086484513579262489232407757041963748556037155417106815575934292765510364860248192613407734376018466106755785795983762210491858685483243459571604272387568340527017326970322738601021735773243783556215006769397792962539989508759112694006001026833860083386387919052798775926310383935189495073643883697460595863358421677498001203968367354449101752899129280174438363944420269951319319218876400273678305005875331226091271905204029338186274008772992795568 - - - 15259566634072725998848305028286836977709389078948277632177651062394926129213302155128558101494186476745479073531365832380821613202856132972062250432719603982902344687360329079605653651135428200763481578110506451342200994483712091213447501911089543052777052785114158190186902407557064929149775866176362569599709790264282771191887381146092848361640124566000401184513220271966283402627007183606506595183487626957971528844052735854200038807902671769881801996528077797522417488232719938046210032477933882205368403108824671499949827488427272483054925509091240522308847286693477696657242587696498759633743877957176778079229 - - - 5237075824043498823094881038129559462037580325176060704641648483411661492758389795579247542127418355806825653389603060577331049005594668222904450489409127690200584693168208066540789569007290644635515175207723768364111536641899969534107308918210837149554102803457261677667403002344948350764464886564554922915251873838726516234651591625124175628831571363431093514549508250144493764176184711531216458536094090246168288296930806475753801774140756476508670926642932128281607436118680290210752945112316860577050168264947762033945086781383242837184899290567272706224174124305139290788425210980027350731059610354472621793433 - - - 2460527154515618524990185955174563764842599752183567391862897458951090081488944466038162195822841453377121972650921180959326870696095925818061090546815320333544453904033160337759462561396992124881834330408622948935420441316688764386975162335666992119686072696163333615095552098395320883317324723839688557318430168376183585138685811146635108376436310249394587569812152496609972405332315018578444664844594836328950919480489807396016657422888258486588490756543830323791172130974834946866145713186860707811302920764519341726012140552603889643370658739346502562860008637507131217370822947755728805528120890945552504168959 - - - 11381473206978169564175050766051077443421146088524116247810052806138140134621849340940468336119320769342084684309186774812163048557893190843473940834757146540474120382823999376038339229821127434621675297201635734593418428278534016678568892055318214629606864059673012106977660273508469523267181079988184664913477044156542633861267611608741206909677129495654540209219411940253031243570216626774352080974201185045813321532109862283141476148179972550461254910950004474248586944693415194701909380127298606701560767457184821268247534841708686668035849724045173676338362665184218504911173236710756072766683795620409175143178 - - - 82456677069690107237295242921599832072718359887459924196683201976575755995579574008191373402009822072221503548488988356821432719283961706447990411924183793742525883201397735528982584511228488379107991607073459682818725860781466741833426478014317040054370658583255344809793815305335364699523999817239176364705112191031556753977929170871089408028575945826882816689888081093316190807596377122093753571966571643251858346585674181522834517577274114647747076870403299992808272927510082118389053835598365951193296592488749735036733187519932669988410471739575209180920506448126695050666102646358806821532485787517955597919 - - - 28252694208402748993994611577668183711665261821851300270616262875242638963501196486361487760844524735007920434356776834153307520243954528684145870793073696118187599896505920279874351809488356643852600808253905227889014467216953209426143359466100659122306430147574412709014489624488569127061451331932571912449467302799305903881409168195050633237112477822807282689933318986211179839137154505469286273415250524716267338199235260248685840676242335033415702117301282590898963584783454475456784620528380689239959796282972063142798132172886507126385917659625121449699328096779902233374825659355053057569599967036752906612168 - - - 15931497930862712018103132599831519870301991514785780178281877635806564941220105987042932735833208640512577168743901891310720785296978942200001654892640374254680452684770386905016400526653790474038799128080611931758026060572907222492848582944714794555923674145792551896791445639553318409230750035283519862628207861057213520507504660966264750868763325415752772881441731809408760934165209921704912126929678767414985995113607423574033090067404737557114503950073428743988793498962873301280387456475192947041303280754018103867914690148389965928349681852539218462250968933804129165197449226687020219904450389919173535443396 - - - 16344386268559996602361269521407044514942083608236551047132187355282414191764362036913445741786526971377084286286444640260573799322326916856351065709663418379437858250888619555192315258970628310744390356446340879880120452581060762989730152614758640494936837423541216857508280203152238017701285496043174756209063037832564019326509928724433468956457914744665562849683084801976032753531631435623285474869572878777548608036267916196099128532215574038571376189150440223363530891939809985166900371821570268827568960024262691599199661879297239854383932908472092805013136786549943653108244499493138336351115251361691402793654 - - - 10532783865658167966315222756432984006561374208293961363152748975483692352296831669734771677746319938484857600004058079562370478709882417593700142265154458482634915358442406613966866802003983075852779494707590043967569557831867451421195538631346349539159445293067958411504212973952790807691124211196781722253377406168930712660999565621683155103824513947538107264448406789890214499323725336401986848099456784083631655428412756551372022692292826370835487128475623481422025202110868397886635088320329766197146791716081144592704861821756750555853671948312649211445713522199112891140740759307606250953774401624601488054869 - - - 13660402267200837612494456343602141823915669688337355843989530923478614549467816971005789149739840313988915730298176523431427465733081758155526444002718890954709868145333866037381125342010353005109961119504417028351366861404023945954340978295922426452425398956233167398317202206805928605718414467542749317700462256028085176166524029973894454530938632683280792095594651547942271474732422218911478107539103710595018031351380682582876822785930903457435558769318278461730704131529826013706258177384191758399167335099598975872351122683629864277543253863088506145078178274019283717312100457891333266403106024562524333230094 - - - 20856055627797262044721903460970262826338493259775360241957794939930607772352178360638163560789144984583046269294464000372497274444351635489183367897584208491993866325121034746526623520718107676793761033595205904918465100847756825793300523735696973684874852436609060516922920134017160607169881336353083938480206752171782626893454933572059907291182897442506154542063704045643388143442501269903480303615190748982646203083574928227076456852864716168173925129473306398071507682638265772215219449024394310874689414716317656327666552907357551115633848008723653193237435309330602154677981315949457561299994459395598313712852 - - - 62376285786224409832793178522027150657373381162020857908033633799335743697909780006250656065061640357158621443053642472239874212061588954374267371808063269115177754168914489117893630561775158506975088104075034549393183071014489764865476403571466375471445080427053738394517123434394696198038309348072470813799456635518287979695373543614291011189190022862017951250960125557245512884016507167207084880442868517985708839403975840840199137172495938760387005860081668161998691899366288589494604111784848848670344416352091012564576581201676827422266156917135923873855544061528266886862755051153865949553420392342729254487 - - - 10064531627732777738217088674293784517262285376834935352827609613974314784953884533711791294878386199833660673004673423052701374790538602485334121566744028268165602531892363454288937852800801924345480751480895936413392667648327269997266604726535961521929600289127786003205816012445008168116152653692178421026717784421182277143714252217709383655289547099696006961823617822936002434605329955073824099751603323284654238480324505053835464672979432726777426935043295795460990754612193298841893877051347145846709943398432413620979628138943919768550347414806222819077772653848982237821969844245994213220363306310187244899777 - - - 24515364590181554999053901834687764621969239126743405956399576458608580451507473048078037729486126513958148453274951728673253984044494940652454799552194741923074049434100788909353246185720547229991360588273101909625181942740605480038912402403965834970202489440279945930135297036386008421103500961769373412786103407333879445419453600467812485651891870299735411816980595630979065948047350093708495874459419068154813397120991444930463151143591123977184529860217454513334336909634228564646523633815296599260991687820875495963768058630940143521686328597622099551203544649357136622622858493363410175149794096876618209193098 - - - 25381037760146745261847794492716512662932921377501398111812498881350348383328817145531046508814616335935563659850488743395231245221453291925676338934315445029662472875047372242253646916804248812748168561634549676706772221900290025145494617112742257276282888888183652135309332839381184874585526810335637949297656896282746704704986084267587349570869675491199945542269630514306179226345471699323097970772574988273117500215728516128746619767478413983681011121635719680901047302183337654273938684815586566413938219722339474129649771356332433418856489250793440069775103573854547978305370221681151404496615058127833939613654 - - - 26161084604536949552986139395155753533844482032843444877862281650776957471141968088604657447861421668868258248766433013839238650195929264959922363938348756496595643170906229788829798074815992938778741722144124886490769437486550273336122921857084752062064858400694084247442019867872379324457751493640691332500472540456583686074546757181442121747134717753564052521270480979514147599504279624616987119149300967882221935520095728037084760791022110789878357684702440680466084926203598091454062908122432193599018545822021248438400980686907359763680086841219987841801665695726241560752043681366453232499727725749777583096505 - - - 15736733458342153565212391276512670843481198936690182292188386307832579641867739446185764454690295588687975238379799378427526071710001495646550218299534731533694222695445496952074053486525343062811117663069810315406472527124515000581610687921892952721293240441972027584637035925292380471400625526040186317749013320277714796944680164544306250646982025538973548275482849749186331019244414872902044119513151889255221694535050386846437196495557614190217843156391264380632137355176229369859175981692608925319510717842667425646779344834472449757844679992281059559969449267938045999861671541835093468648131349833018044726549 - - - 5502222135747087049071635422400129677485797105113657000677453956870923734735350488431959888082592234840059335597630857456589469508512482282289957542935247829896111476800423015618573732766572600718348281770445176384608831765947915652970959352154475624009403397276933984640430549261727078055861512308467407640080034350781519949877063725192073968464427482318469981170879530265729503068417291206454334430932007226706524376620580496687111454126783085337564878575870338570483632783491518855164936724138620453781537793169276199671479646143236747824495894915691446242937583111890669054907217121497167630669157710065667224521 - - - 2222981800918621041825379444671126107681267051904045276814884012217666005305770395152828077093748047226866408724549244930298693844722380520127038215169763440094593584778035806989559155274707601492296212762453643495308190704248597143632016790158844415148135169940445534900126795686480417767758305258755532842108659672159254108787016446841671318428462903056149796448416333861823786831369596305059991057702818909317189026565464867848204561403406704546209804934929338775897101350526081713916841902250486923714742065555688381893177494045624668424969238406073749241277031974305848483366617527746851948509349570625945566268 - - - 7551585157307507018804175437704297905945137728585752804305231457940420721856805939726916093652709416486324825400836313229218516114573560205760869821145781010498611404425259887198988312778327551612247739543325486581511766491986167866478599847023041775693062486760622226211839748765598301662819755404589866337660956493197064533312870978987562631808659225718839137592507559811822086543232915721877920115518892662181148758484570056201117894609340212582523740188721217383665844936066743194097838482234796311217060992459806452837493261378815749920399726935863764944326206532606605314184583674997316222040104922672560674722 - - - 3109387991397566843896992429770591947448364017431157124945039422746440334045956963190075459460396976556425904131227397520689207459567321265367517862661575605668457060336910343835626142671327976746869287598044038386616628522446797648432798909732885368917428631687003642958485430939041020781910932628900727777902523715755883069530763667246316820924818307288768750638905285924080251992579153882290676494554006171428022758772235074078409479790537418687935323642072496467330228392442749827521506445177366804001290517040399301625874207677335024583062776921658794326033227300346416662563549416724220173360500888643216242135 - - - 22996692360387173856367585128925722795287994917209865893690627415686719146781417089097505311315576920848253251004384794402152507271412133464962480029213022502354591045032594306664496583149966646594510276074097016279346008301281688741639315756067303457437603641448082952581149464365583155067001924526450599730042719628845741563708291758781172074782979684827020988744380826541539006528484464718085778545838870216835905883870734923644572220438966363001008470530738485954865229887168795741339420226751041752883504607479871666556875480251781612320655784430344037554680874539364835249250184851678141203352915308193351277588 - - - 3918073401507473808891072372518707013500910746668337018851480185669537616455807087999033747227212328622526249851114696222872958357944330668972403860109145450371873949595458611692101556207407856006766068177888454002626784392395225368930862191624595360224044243194508942292664581615332014555566288950069102995260518260599746419188881460819719198604992585233508365958511564420045403715005848012057998637442081462461621394805664747931756162563749571525961302847512996434158212182424192154436411601248701254464686452772718299493347419292176643497749855612909106275998868539178708885590197011226004777470441337945876431324 - - - 26876574789703236671660770819345482284013930351367387627290442683264722438717128797848956465165070471847295110379146465716472189061153875995221910831332210491257847361507442987627427351514683516330353021475076356629837814058447906925896718725779701320686806673225819152358785284983199227970114727404797306583529745709432112714249135220455648746169839455695555075878272182025079415652119348726842024379535862132965776445475903058076557943459263413221118112571259180866082631822226137119615011292328265437365523643121394825181825582875028222319874956400858014620819625078091888360181669323903648878338672964124789403089 - - - 675616922952090248851089368573218674983318933849717902251738417696797850925644477584645714202504686576068333318037722858800984947397945568246011949516739347609317322277499806944178476547427180358306174866288119754007236012062131361205160803721922248580360206805460596620546423241955164428319447838837541687134494859312136275769112820032201320148323314521654152891241665200185006375822651708320405920823444966345497052938496763125297286334515959952052552563065639261053133479558863341400747259060867522829875930262845007474226555128629284735344865775724512801179026291075430458339923596165497538973854655353232078932 - - - 19204271664524545601411634164822837761125502558196784386427662470072231271262891399544698717872461352871491027891763780394994967897633248221036396203298120384041018870003676061110355038702471791318263675231378557105793262431995432558678889050714191035325639093742358710718723171907329189636889658531467884684360709939899988665748866427864505120759946300636371571886664938551345487481043387463356342704875303890696466358463609765572104159137061731289945797139343949421887453311029009782785290497850770228933476764054387696486288398315573739529340845934243631472719977943532534112810372368980369850273468660812728325251 - - - 4863878096079822091150056946671524096061907166182032082884275134337760374177912705044783985429223280655991731426381513710748651408768552140698909886053984495283273584806153914026303370421501164886738325489432862133223172427520915551938402872265660417309373810298658393824692200746466440863821552258554384976862855709515199616032857274452311016261410344976559179004830705621592698122402670477979845232034208890157180216691548793120479665914930215794229292428087859828809534555370481019064431188932152791732628602878976345917028046780255277899867527754896974727073298094604462025039542708658361847972925521915164883225 - - - 24351920111330543106616449852678077289530965405559867620231662607759855074125205469559562310858104790695709252876082234487792651947350598180617691372802428441345497453987465246953681820034783777772038777265022873686213670915885689572372797653263875509026444048354787865918313815693523453087469082095776264460277853156824290430592156636285868740392767673342838482622148949552769032155134731264402274261194060120866795595766296762583703069950860385862720003976551008623755666061266161380594481379876321344842449376045144282015464292137107942391409893141393652233138850424095080843747542473572973076587743615148890742160 - - - 21359679246304872477885996791896504970582391147073398916254808201726942377880650716233608599207519285513836549717874824612150064703759723192680569248345904421147518560791675543443268372119701565932047082883549728980693752761053010085846589476708190319264752853172844925328455205071474361537015307583490288728795788690065842449076798868172023825110561664877239531289084852394401463925740206522202478577174033992229202657106500184271088672899108505329849497130336296025263603465895777904757194972955785225878856265602454689766921800445620312927001988328791424814106932804785231952530408936881906059230940517728697749353 - - - 21465474684818505693751933029915881090541722739564364059007434706135436774002638104262097702144115971951438015832140641699540444841246950092366121131750710563123640100992642214541581471741482641222912768496908895883587889600515703755920514125281848561097335012338626313123637544686260216513484000613994792290091848223753903611194440123386998005870125593250215215479860429909083858393816602639900747868646244122501212881407057981726028021788225032303782999566968793580786840546908220032551579836615841395136205397673819635473100810287669870699600369522910021709530114388001045996097598197594774455614573571840990582689 - - - 2630090042468956543190982134654062746628298522183726606284551925847543490738764986398384682668060944100772333652556105292696241425210768440773118241234969552712619547189997500967177726390975407495956297125772842361300270650349885753886299913192356027002867663342944073666325489768505632883168276475808584421986875983442762538916865041825942291039084019304253170836331977968342590961660199601224161292777310641184332421812637010233519667648071194102779358789861265268512247517654166233333959181808150390270015413899214566003144366612408414526551312312221396310246610737634854605882273372671287465834400350783781751203 - - - 26832059855469877372824296718449908530188217336583828171429567547369082685054889324531329100484450996796914066899895682960940567694645390185791562603453486747617862321167857785069631937562034381062308544047894618627463127192287595128198914434695958682124329495255954875434473211985452296255054374488577685957547698519055428848696536874308716254974534866373308510674608928165163708073800844518828907633209668976822909913946507505658853977191971120882340538375486797230800298765815253831591255521854214374106767496303886671186813991220761272635532801612981320348807234148781815876645347918396456646458988551574973609901 - - - 7549706565339355377833712634180966861931961993159890811163140209302994775512359471113374201841875402803439091331393083123609470658102521854906143827756110520183972973892474955483578921584201930879988317405309984347311246734993881734668345446036415563269936578511657381141942966592012528878359820425467832161074539289951463382030292566143619082525947845103760447153934187139558757648176911612297142206550382231626519454901723211178393131961309896885286969860726168950000059749254306911433928701284323576463657017791625173615796089939142042067023686842889517105865102608167413602890311465913120856359388609341104443964 - - - 22488258603231700662082196620323533129839685558509391209078508237756229317540603380144083520442961218818181097188486809042293415432788497032676698905125914374564785581693777929675850115204947813455488892701822088735608602535247990834075251821561064902488831122312109167558641076635658938060943461391467049648203368720877919523016222854808528810725993278534079933563521589222640013248954649491934479262233355829259224383176103140493692489647338333563607483477246478315638347770268753979364078597279457156850474414253075858240753128351250252613796785467871506199850255609495324433427857053241092527504759509036234082294 - - - 11486984595874938152604927487689816657041588300760040614907969030367857145464068730256335289482470517623412827405093571407053873269424901069480265293843987844797889323744277376611096559484194109544213368778786620239565822547715634189828218382566974693883157307920812681644282613502070204255396580123244935213429928038855678897398948381384191295048951427612759908245030514103957518960411972216905071457352906383675679630851002381098580612731373247886047167555276712750967347874398108943081293988269517375806848848296739333074901846691892807399765641340018378044721130811299451438908838833008739237254834697971650536143 - - - 6139596427826997316854671781126910785165331395267522143420881330087214709687529908868161859395322278501347483218832689003765734602313902281975471498689729956625197601754732526421341698074509781439467615376953891912011604810617858275681681510879925785894362460461325338389854419058731819066993695719874091550276997408127542375173884479074351250715522469031650204645724285847835611341947108300148488345935723739783749653232940688820452971769033098925135610151938391603072096911394181147131972875904031651613454526696443664845121075011711674698516688178025528955491417605642369476210699566983508342327021180241979725563 - - - 26124915689326158958841250927790706204640373170322148058944912443437761660082451787789270082530387145277752503902824852290755280885393027360956117907563124423435709009757364666695457680789923182500348230228474226212410836370064414218427926754125146167542118065059065412750892635639840757671889444766025815553260899278711464496095729544832553031648926315356525372548153328317337228745055636495419819353258093337414454611429780480789522668185193132517875256539538994922213451321769113779581228832804389800569695760838192275341224549969250408300012587472973777786446063998370010739661469161282586094710524877576363519361 - - - 5116236805331544274122058070129412886773115577800004567409855237633050710452324705045208298251309916754550710755779730804359713273312408753189992354806263097696310398530058478004993053148723725531948055471124370061127737143625918572791634193215778947511409300848476147642543639900594197536837468120208979667497333546862315843522138220464418991562352309611495142029176043675408731903986308289401618838998264213714200333948267970104408020271453842734528488424235435179934711622283227382028532389134344034602624924816764123233467512028863059489647389349299446395135487375533264445526941877810065927698531328726419539051 - - - 22120684258026997992354016729013371042513477228686500782475255281210911945100686341695835294112373865253420805761779637809911564495602051659611191581563602357158136288613543118950922383493825817474642315691903007451356816282898136049017407376588397825163951486789786632770788407310046841953922837491311407364801441558629885038939810277395726000346308198405475199058929242953615179307331874811748378068821175534148188409963607145641947563337444421570646152606733900016159905995440862005131976115206822955765184185723058088038167380838798243632948140992372302697559763214396938727410102330851936697483573739575289250175 - - - 11186417964862756252104112047036558030407887615510242432055184002177597984745123122009227853033144663998929258508756406088398389846118669640519419631458933593827471036032922557275912814981652122014840222783354760401230558077366506611978483029260957857133010596689404941020040508866235106514022106289841410900804601280026320032554699408597758427993736248113757140228919417304725009463880019317704211518172511940519105326889238351810291616204845569846552261084392520416072426221745745066065845314689208212885772843124783488945420401969908241139182749454878304000156660761587240791594848123660257204659930766685776180567 - - - 7293262112812119908286751235588770582267491584419908512397699661619122305872031702946128868404536967643263930342007778926232204857442139247735987751512897563652522173010922610215622185322145871050095519909570451995481306533798890089393475813173435852626734181731073776943890649333220123929090651535343623244305120655953274456558963232305011112997619079144193313584716258280035531998078811272475976706139972105895009020040471345713976293828102832559847378605224210036469383710229402594327216937747355791974524624456917756996515802498653036459579855728205321170974507965995264520517075893907358944176096328468088650070 - - - 26520609627726160917127000567300147828039884238833847835557587657406275461940222010114114621735326667440619841804508312406637680275018666201654983276738771526706487638253037879226249997428863162107770010322376388510175558791937398496618785929399976655846948087412129004954768784138228138654612583235433906271407940163431826471463460968437843710881885995753953835810310743374324819898808410355659358788995625413817770592016410267888316077690627021289628904911132868670422054828791146855873988552489621675875516997779137079528130674378731439322030711867827036842871479683722457564762483317443212149201768294089181576884 - - - 26644681761632304751182135789378128673186935837316824346782582037880998955043835215968455950572295425406425390537044368656580467197969144339484227537727155763053443557102109422501176295109115120794323947420179608801769306745183348456960129660705510946904650802880532146908817102569627884947937842985694150354485215448941648600010627249698676067283730300600720653777189506061437507572145314796290833288724312634967565429221102869409033739896370536764280497413775862732465433938318162242206389722910513874932031592958296538269950212025261375110157891988008690668850872616942562683565077108191009686315950034037635888619 - - - 9601472413113476950876481282355725154268883078172857174110025254287059204900273109254634816418861816365708399485663823668153032940272015928531007629985745176239240762282259762517783793204859137208061237510841742869586577764880572537892187749165915357934750889406476834983314252205923586609170778995430125362044822306614303613056196242883387977419972620573532842401491227944399318842774444831176168690189609292130689201246000344107124050034211490447650821322193621330283673498333137794450060346115355589371329011445416723390982157801141357017929116265799496569601226374386931430795142323020255345760314264582227588085 - - - 16868607762974807880233226602314741538850047064516514760850736098515264549550341144540190506811867408706900548302934102934403548984355282372490511507901426147907913786043446744877850962617860442515252121321510123271808157621075359687997668149786624949326474615404358429307395117620745435311919137304004021371197242328704741320430913954526189867185715039257072925051066650113202238907642082781040077413610548379971431121040812319613265539339703025922178866827161328016417449247210331570397578648792400405673459720375230340388998494707597975851970449690978941518538792469481315037958855075504091856767257606284243731216 - - - 25595017586404753952263878376405413006002552915495848523208195239170952259586173098512638441125124709619527757581878378707107130229394245345931738931351082377203919613163562138833852306208547886846893068530959110132238364875769854718908267892543150071391503739740129363819752194240228692187140895409989665745071070052159066032928150437879414149914884554358100676278482383025525282875138526821278688042387511726759853811058489448750919942484196954657745830349054816984164604064122942357381906847404728965106028228384763106763069806699940510630103519608829562930958381030068241329688704081971868446091134688935815590126 - - - 8739396882226749127786766280259880245228598276618621996112503974320334479963932140273225878114667006028873933232126765895197344149581076034187848299313255461659175703598742648184339580475600663263808094042244034677633491733067826346196552670946518035781441620392557000622066927242291355522199836425766038862865015774055190281715922936968583685298239213726322813595826291541629999972151321203343548167871434824937220768992040707018976429988234359635732022224740826835235355757679841331976336063903790133007576485892961199121982253792336801494777648589320389434258650396666608376980854638319556944556404243440219668703 - - - 18735216347270795619782642285162402097558443739119097812198975738869247888261912646169756415222980309865126940759029482653862768956570825469727564519030498079093161832142669630132143338778429224375108271437684146899441347815715555114017656804997299337680949760091763246929016097528626545688168544466435926879169551199933355096348991337952635617827755834069014998470856377308547589663708937899371644742932437404224410502218930582223609063953732370280824166706352746932391926251939199888843345390561989392327822202090279231314980052452673664480131634983714747357114472393551561849149609346298952911156851472004859274582 - - - 4503964933216603743715662980868988014846794702394246191345856475236814627636862891991464548910252972754218409790173706149692791314613227997475815726663081711748539423312564436789203796045397999405714636078122453341967413936361654326578870055119005199370599468072375492268462259986979924809647879468065196171606834457089565313076878573218305425663955163053158596279647908562271615344590499087330144876979519454230015239874926383065883983578719661666909941138353336556899082333133289130696904775629720796630975078615608544934646533636605699660452115984227144231450176593437436966556339696095384199210014137108308479831 - - - 20278361818131488356241195089903081188819755656666584401846612225952874931968181971362733698589818026681188684901208690581667316251770339343747922169816140854652698095254601417299174660552968458353966243961811283388936727442602053396774211154531369038721415719326569343330126349506378922311442282901119977964064900600369176476774396290467098361821566469209695640463427279020560302997346529462331544658200309977186486377926061416819367678443918278708015372221692013988143415866475358878357500336384840282415015879232237759660256824334393662562267919092438189507560897899755085355875041931673928994423893739151723872393 - - - 28905232617649666881671074092027782726318872730891073067763266328435204124947061928901098860531391846497342145807954567588531878509134173379638558951573304091634930194868971828977080333789245382663187423322688329207697606652176572828997105711937100528342409191098709126626740228710929956433434927372855503017208970201277521907304655275198446137942038818174957157612356711378920290575307823684907350699001308872778443999207639773926764048275970859622044249545240390202679277330943867345521264803230592905264934146687719578744004778009526496012073778140156950101474395502971205640762030969056480108261263243416364258052 - - - 26660260548723872817407767069211467285552506482905509294770189048866061093326366857166811407532527656467277555028443310755399082449046677861348733396645169283933480797810833430222994208015989259838740350236808837443300261122339542962256563876514497628819423979441390498524565255040733767053484178913983710060199535904567679217135003381705257481800063956170340427278198571027389778780129072167372267477114785710702612214840179927416300217522738816374895177021642359306656112710295255889585506043578288756474856571780727648105194494346924596253560551867601493808584610184075256502891230757453904839021145993459517423173 - - - 13409191951618909712014044965611612134397011071596933451487785833980531270462613830875959324261307628559362694623708134759036611301431853353165803128319667898454114301842320285523843624020612642166013444602606590915248873521336593647831357006776880094921583182872535752612186324169390743297615191539242579444474350130766193908345066381523883217714956847696428695047207299655748253920157899540192853447814158334293355690570188996168753273187728566630426111740964317460501866576301107161037757086813847324553297032384696180585000417531510396089861355078370719508901290838334699692763557756215822810859457649674165051780 - - - 18338040479140310868787195864359026782291754886129805705119703455311411359120870685738334495790548456757769088151700799298256853526238233223473295050418958134702357583989244167395202160830890740620005205469094765283360520876611841337417279332329183675833349465715688554552682800649853428783331110274637087189416802186541807382761654224201236679194112768161336416639450768755912466930123385157105313647496117745780909219157255439846039413297714339992162491552315701755449154038992347435638167962110048986084872417950202992118148475733255944723887515202432813939381525930813899560999367245425437468731176899854568416183 - - - 16408242388017534621336686591375643687285228764729641480449143056568698613606472323400677606137622780635797595711658341577570142536260051843289435214490273897582565221479153949560112543155032052295513662200902936922416839628040621090869172865962454096601470297351554920860445568174197578535001708835967931653109177016754904505770087103816019017968655930774020145013179163350742903899974581058828941990279906811587288512015584924781729797590923376580583469718356110713007972685528741352277986531106565053999564937487255896572368308167292038638197707392574815947097974038504291162617990407830451688088024712795209199763 - - - 26282485820758282298131687704615793951688834767036548619125450462495249403868497798170859721079090377118636469344086096529101010409423424856503863268645029057657498676934217232816092842286046359980213649433554447155815306007560672359839557276856316560573666190433871757732297426373581891273080327384539606182077187367633056044911109420814539749221326087595471556109608591315491171004306927325154628112754284818704136709761921980576528550007902983376136024440874300444587457799102562155952983864117031229329077445444110035831869051743920437471943482840729174909668506651087489083069939610752383908335749883198472136915 - - - 16604013701707520836449841407322562016762950925379962690509545954892941460603162102105980438342155659872290093678909393183398439472631649392616679762564227627350693353985668226120623360058415948200288153383948200525734666826089782461302582766436759936248182982047730829253015850978310439774291684629229847869765061396914819703403326257532400220687957329615029287602779890573019514118948846852632339759074253469636894776972486038427070676868606271313532644739701451953594349918163106727100444808011266354618709022298533741899219637278484463705813850758071185282386857839061682871434065104797726414209648521937266457936 - - - 20785026270979574894281678261105727422192475209119687710147095214136108880738530955705306238695942584238427384596469897260270553037006790267066399633824840805883756247185617708689881832045540449987260721956247031106058551527134665513270934910479700099981274865372843610182411764022572214154658860008685064582565429447312049321033185952801372449034859051355593220683845122191208240540860428117771453574453286555175313914671922703918548673644527039544525326048691279105684547742533159842019423972154098222320906308659008820467436217299279034416573047705390101665631437741777045223779373009980140755092776634534581484869 - - - 10570400329058166875247257016958475510087719014075342405904055764073733675896698988383172091831688569609756986318044418632304394458888243191243310583073404369501633589798154486391235500594350738950953628388505134852858333490774286255907938910470567894336241862073580726933184578073107052383352935914379826803740931263127567015039010596770157903489800842152293228143216723813597615359956371561896075816807280917941987912234256084931141430104770646031248482516376963725450988406024216588073548128630182895465713826282916718998089813873252029924354067206715498529410060654253910346033624860981062023135671099016757388514 - - - 3041734409426664275973628457873916136916472632396256216811388840430373153422240499089779429715963098477698334372208318622913673449802160998835142997663879376378596457670590520343517736750247665472483167317460098932067312206497891946111608386742902941618875080001758349685782352319937032610405203800716139109215766603852579755228119751895493075052640571079306364562740176272916746121347635550488747240695138046332164920491788822892983045874214168611497643135429753375964521900308993056055691101913686609229558181350416203485826795255911248090589629874140561807169254947419024113089795771478477398303906552685325542890 - - - 3232994540567590618325353107866262537836648787587635371884156414571065256627978592905203180773640691860050367608194665257115419214851516646123948734619126191415634620925339414700429797887610364712871438784370389897754003551844734843651265053565941065778891629338280375441037713710339457938884478087261680136458352679508381005495654740109915268699435146173404406517879190337184721980525211704850523330808039364504904523750910473879710536141131590913849202250984540053199793776862452562452271857206316477057234604101087298800526492746675998070003892735536574884283102465851035615012551256882954625367729763692434483249 - - - 25006543214553016789848706395333771057204228008402982215279007976847536862778219690206686189005991934284641087189020998172623430389316107617311817786391863365273330771895362961275659277016664209346880650247788429736441477613011372448029281782194242171843331753275382336510551513283818817289109328068703172159858617009328216684421307768229702799339331784748799888447120933524853303138486364660118028013483690948355194027815132114055392032708780867355742237802820845238290145550668679400131898878740832554501496131677025273740461078464745214317767646726156194412543868604686342584397563673516642958953217920404112328397 - - - 27161259687233486496144616848151458185532600728197748655681076462661473912370122377200799798062925492816674239953683571956681192460835834390071567927649634475745669946026087913778175704433106253203541292148034791893640647619796422126554454960658577516721973835162392904639222565047029198061904267491573569664489609988957793854832202557249413190427177348422125392241459432125165288955396854567598554105525861955081141308217988267454840479190461700215322127048797919383206897981605288834942899566418335649512577322779603781894587911952753971536994092853045858160818787423230222336212586502440126553989072128199760584779 - - - 20430329686209010157553957479736317037630566954409654527895225664810196900190582573450603570308058932273091080111041709686540613384060996171770257194176827333240995433269648677923435418830777756916812543236379665214472067523390700503518195934701924760748651850153566348115209053519472987577768063836002732771468530357263768547533211562082214043341404009803101176369634758019893617493489322782199328401586824953561292859422808946105875413360715923279455536769757134333399597425414445265434908367912191436232778544101158096164165928830528872455277133897350554147530251004903856100725410544747895585808058594767985953985 - - - 24109224085881903564988262846332623873584515471517129485536988479452995850099265284060934128430974369408687084243104286551496854367840547769103007095902008809509220877513805947057235727474647876683116261728225466126364280730219706477325161038316940684712875828500442967353097729094538910067440870564669233116949240013314785175109519376105471629552446094284255497418479214799836964398892396252045073012998913520634596132452621139168977476283124020119828506374693257459205502627386184113221889168621744995730976076183810954572967049044602879768194918036150154949959926266720936820910605250914892930114491704686612235789 - - - 17891022696147559358530900897331551697704657789687200262453468621723651539002096796651373744276389187201278308795033199219260707330263775322966871910954748869579257623436375821428638942859193013240733185858965559067723523631967052728386665491487385440930472445263316556568378456695931151150414252129816256805664480716825632472694701530220302752349886700953084364008778224720025779152454658974884456491640705813404640353392016004988585867625117881553221057845725035249912643341822653656399360465098675091437462341935781623089068935258419434165186098064304907294523473936541591797328057727171291634251951043705836163534 - - - 18215458002583246329260576636611667222966406115424823972272863389984126654287632120878902171410709124155180289874907070511600676537721435423008539322780144299890276348240912310968625137794857785877413031189096180692831518952870280625998208060130048683338773589487201858072768173304481112166862489173642555810554914219450992267725081259767871848021776262247889656966719288715340382477519184544171297089267816139125903636930120974479298364569927180588674495719425013908478496982714687977434313489369578542611047476830111827199191641308461945530696667810706897675297903124152166361459619277182171453184771241081838769711 - - - 10229427953337021691271275341560670370617865350325056654409246898642644013954194809666827037279571705878670795797991223832906936498482590025608868160915257323568928018708405065733464330972806594640414353257297056496982168209802296562764182994043289520647223233415900956033170344937842290892813418974888614104463283190077386803260416536434002915580155695386072237149153303907597237997475646680937366460149692887528960114542755352997528839180767351080989569177520422349289405437390069475492412263698195316009648536531126024149432837602858249613522360165276514121208698834392631909047669588716583150859098315228235161298 - - - 26918724656110459525524226213972683206367662669993557000346441437787122830084191745905322310738144260858561292736498102690224618423098794648582798280325676269336281801568998384859057624333814676342752773920467789590668565367362486721696808058974129933063525732277450119181930992413843324055378286127142301026903353424922297201848673313093272749792448030124611215311478551080942971866703578491191958037848041220729156042686329439529136582842494842047658246928667246349655563148845889260546016373824093491752748696059764221051944084532042690787600656220726491882910746633095559407732167514941011077569822458423343436995 - - - 20324073450503908524242646461131161434512645136696408679451971370732118148818864628957961171766118127742783915956341852532513007964297061836366111999747783256432466942123638869128654627333693016921181980489622310839856532900733012569516005056194428576044829263476188551446897375615661609199960179163289541373491538807676472473721809044918467130148591310175230315562474598135551324372787792176155993311128879434243070644548543512703571506182605240550800064727468123190355653053038505550177800776519276431510264003227515851819120539515759977629032954252290879644256901620151767302146099407744642635457052568636423669403 - - - 24356373498053880827749525210347341081906584223540053318343787859196520980815739799729583720019559506287976737931913210226330601063148008603386567378020770478503877032283380893451643218797415111627191031969108615827440857514964001550792646352665310390528023022634427783693401637439651770430808916682078440832819947412242732940271569506680440017034866852812924834091311151615168472925603265631724973592455890006277165113636064522736990104280137336645410219946030073825407004704020730317333366319355568771217206285568532183610713582185006832852533778534861896752535028738327958353480595541672216953610663547762640714507 - - - 23537642290781305690874873597865240034742928545772007402195507402203631375721053659343168861898066002557231966806166163003483379518963197167512061046850568710293736270135105003273644016766570326961430199008050797891092710432544754148224699681649824910592435767420326686360173312736250238371301131075490697526817188014808259921518811421090578947477771922329952908486179519476255079163502212196336912377070151229411541765129293084003700850126804161458491987876017163549604104012357077584636456428118517285524884909532170851121382673505756541446885611537060560074552288794968327404180154963645721462530134461713123028442 - - - 26113976478048821416252498673068422475639536273236713008802992676160220789296638845302782314502585220579313131935794487216694678068660599600298425978421085993315894670041633027719598411343682068693469487553286745965248386340729774898848289442930252394356333662146533771441589809808992871143528129375306407342089324842934367261037007330175563277707043674905009847360726124107374331916316823843884345756727289874484131026239471408355182550004831935329632640716860977100537694248050610427985181521598488581603674984523790746965700360584254854896665083146754682462579498933651958305409719285756050664083139085253946051237 - - - 7155433861064600237221264961764122543097511723554191638335584223422494151570217940337973001242469374257113638833522942177648934633460485156407576745575211588801778897275884060616112042423632070234135085086062707341064084294100966956990060207787491437118610984060389498833513901841190872766570983153603078694328887608254502856068918488154354323557472292450153375657297330551952047103052628118845220690953485464692213573122016172384460721648040739594667201308241873758782375028206527485910057667562227553614731653261857593837494785189856902462154215559174643610127513264737449798981699122668804005315154610023111890458 - - - 14679540042328766844356052358497811518481995460099077613272190743494584721634320950696693908511094993930593825345301785973475374324531363900483914532413820214316898450429760618366523247484871251002895332532736231574488131486903698104236458643880700392869293125702523981686410480121488469941279863787049213532065509931166033795590470836841359477851033309534134586234668020258395371638758440211589581442980557662737581753146093333619989345857566969302578115166639617663369531818151397837500229366971574286422003532825777249175668565913513432865192788477537836914887930444694576015495872740809073553039020877556758688415 - - - 29437261986142485236661557668630154819107074143095861444034638854231423095468012320904941130292968772667658505566515517165616803417532698104552819219386537836374162495323517094805682050541781458523043248539448276721520444802702352712943064291491588041619019175245715335038344338866450519369350281036717598153853915917986777617553519535205439919755202613002526469176081790605903213002018523474012835568571888658310985335456527352958003700642155941532873623818927160076835507701732378090835417700702686370839223525895831322468612629542481915323132952087915321419943010794700973665667966893658926614751214151869392756872 - - - 7012783845169353280278674431159375742178974317716672165776713231710918797220878835642686233749038022761414589754512592445528267527168519261712446880013488231910041229851961127340707829629434638591931381876285129194367983340844030854318178211716409660554720390213781456681631819582706871289026894107001330635983633558836646287841671404289732189115578688744256042002232437823462587196703276627326980223003884877452970669548783876725550678665458179802563171354925544213459015292108284143618570090191635783879120444340502531963415861642814780857991861445016846046787081408857527881648988605694616021845903265941409795215 - - - 7839546632856629412320357222980255345702894360344572819860264414457063922664727578660044240888310291273255369110112206073712245771608416927607318046588045568233140046166499231846072505099186381531307436973150201936096917947024639736239301627206268923222607150235937626766244780574150728183225908732319439629057780837309009731064435289199286553043135330155161603102671944773762047939824485077244933515477755385642507565497566873777667928710240619312192053179622659042217865465753214842989250386531828654526789802848818429825558276749722698392032489281316827295685932207183906964353433433893982431741387027325173966911 - - - 29854025232789188827171785918743133263733972259514556886900539023922026966867902182330796898177992637768329532177221122964243703103366842975230799760815433061623587535643796283035327049544862305875674927545642090813187582216322225790157622721002922513932510862671438533536151486681203402838558064684935665560302632872130266612050637118691982525034774672793998301155507336854056298555211285591077225721577671987325030840100870376477503177038383301751064729175445251322825475651726109597835750729555508181319253168457792004947336793950144139248239934357770997773001140757516249696286551323195185211651439373299164209701 - - - 15676243332956596237664151421883548329134168661414842140037679657666131615705036532196033236864358945724176914711840088715429972157169854377595147046253663509799812885283952595384842560527923360583747912493548266690218191033269901735948131015226189400063427172176789741129958142147524023420420483303708315127679394226803790487456165031254350621903274092506397928742221924560043719176237740072670872929333988822164245244153599993898430754975792861029612258514440248766010109736570455114386911038781627885191126297640369377647523216646743027020317844297494720851591086787021309504243459841513410766023790937866037034076 - - - 21313473845001062808974943055090230964858328490894642488185617155977452464279490787374877429916192456632501488454741723754151532891099594703078807855345477125500169215284603965624366184696755533829545567337055064355611744892666967003911833583621072009981130134042574751399472609094971766242034044581239483918361881459275183083115499186086772361794458518853545399292151934401315077768845820895519840679462219168706208075319010044914156007465126277705971701694490746517260823710958621267111633779186832869869638593230048558833224054182834686389597613712189552733271227617304132668808109034145327402986977610494961444803 - - - 1100299264185237856601763176542701060908528829360061863477376191526012397801399835748439083199594482234395846569842834790022008263528973679564527971966741906023379494005083411261091017882224028298341363906568349257565410094620757791499029066611371736426174537989057807532967755337640808109109075345314968274276168306481585788767935912975579304457323939756983966641943071507838548794692626809114719889241998072801125957858785105138037201556681582723341249533443800985198744172979027996508698909542543876495980395517425649875336917452316232742378852284407635047900940841191290106871919414811063962571309739522404983328 - - - 23922089075939648600263929461804502372722672804064328206974240205786561843348603659677709738212030629433840968386040824279456475132646739384081602224496054244695727690818956056847674646476060866877502055655474285497652145291063117333588222104201646415324494498544270914977582125200282226772524155756145353287907069696668337198950441386136966807213755630815922255521632682315192639137045162555865133832347777617258284812022502300255027496387137271944764266149172653678581058313367869992528805977524619467245281855125979721711364803379860987576451373239982226491985039177068836239332423071907659805852515388059037458818 - - - 20234859622767565381040492022133825454995330410306839123085227750300294918947983047370148967382113133244723575098657626188865521009806704454196864866219458254026489595824653954955268640899486541004255635349739611152976062078141287489709962684970886935839810660994611231039361820329148165688042446560909895893083532896315317582684298034141699453216119871774072089425337068202256283397950839128539407556100440180529150041725811055659856265922464761626055517797685618881605415526607853694973618453424150786416773975419545991747484589895942480698590204365935821825721348744429061882192124864102295858330998907966203905728 - - - 19061455997295641039242994886263943685475726134339521400653719125952668132758769521547446986542574576986336888202233463343525308837362752678697080905037273145058664980921242268998510210478100715787154696082606000397575260308124404269256799541878810544618989637358764151004531505630056330390313104892275218983885360781459474498335879130936952757437773109521209107707496197275388374674138688751361314200296167606526600925737421111711459420866922207688166300787522656153051042743782390456522501532534576443245234000390804712455429086768696140770415865700269821777222341384266182092180550489442394058207316588273996035856 - - - 6050185037589504130488953872101321119709320840236148089707679648261646008874248792493286086672801745111580456559984237511735260295709085516511253631847976639639533095129627079341783147710930554299134259416745272208125405207658693550336033574941418635181568251146608020430210461628167714302683210693183297518126400895001253579691423735974242977458920392632596170967372826803080652927200833839821892155002899275617711924835084433303778544862855547552500868086810981237628987842054244350929291848417881162050629765941298286558878915755298968710531159489877544185915539413395720542490177597047202455773470627037543610080 - - - 3203634324779982246338062278497544305178948870176397203955975560678563903602207614126073995395248405391809821918337560112271781302704724824582560795132191991258750448258203448079794442903710981489952390162167497282497712400347040342504681215856350826328883571668310725452881756533437828150544438398502447758054347517109550735790775351948741286757993417597571853636562567897026736160612048626309211579720820828804614345549766670377145850848693388455380191963950881398280738638127507158859709561684484783932410932869324270663993723772239353202904089363786839248512660414963211463332526291852553828021188590295194514228 - - - 26323613701148947465732377819553757692736294169975276630952736236324895005276147080017913192441511443227303645271786303782321851587968609759125129351377567122205645960151735084929531782983918277792397261100422737191527466466819884322452153594126602014311507539809725007912299693925438189031749151805460236329566852126016520324683003150836844007887317089179581463466520507169715901664079386882136275120610470382900150826538137547370245011183503710660998489798806521647366008278818313795967127266023779360604486807309122576208423758948016345374137898338284585278195385939960234067140167025307613695109798405990930726136 - - - 21425657280350696998375921992755725816024353977005910454601965824043496641219512437046938738517221427975221396674958843196847462006236936915414231699480910714174626475309965521050919780575593911044632325917863765963187994859625841470404465675525126540767011580330319373698001378425638100244107778485965875728629125618645512279923634220361017797847720942191534910898380900219145581826871256528709687204638482233859549356665653436664729065483833594254806799031990238845437431340078495912588817946243158604616030133324787758496365742134711895200053262543098429785558610137193197115981875713197799849416520850890245759897 - - - 29702485765746458582219234134783973610437621088084051766152830729113150840217845854616183273624822179764337477188890271513309991162112310936292147573294490836229012987864315536694164378748858419970454237362592314400671480638649594472688913322118717102244589055797355642794582143446321623147312950925063227636416605841697808120633364090303021629690892409912746168779451336779919863843409443580356339560996390849896903708405186313610657936209637340641325688649733378186336611166334631707330029628862456585175548190611082012637540590621254034674378556112370242268424338447073426369776702730489041832632972364832724924893 - - - 1423964793416708179049296790488106999908615738999482138912828257606782933068071310004629287858589386075435906268899355905000377069062850625885778542296741563283644478450559257480200516919122381320352363752031920411336832229908501313800509902490213913021752102717878713293655423259689076095909932701570947792057932272599707333477439856903772824748621128285025057102458765354798709165592080426019044566471952774808888248878800699119680993040888520873276724797497348842014688640150266553696604826142239100791053064914355360722610494861365934782103311796742217136886163621378286720064224576076259524538801526602837825937 - - - 16460155527831798212019061448290340368064862963731530002730410380513999097516824460618964080322057457782118274641044929154644118444703832745100636370126811388172775521864504586047037694344284029706649531316654781677972698467410358428994739689796544947743868643337828222429578543383058804564430118903489328794422381279431406547411757611796829896672953692956027834689136695739848263327022448442527230673626943230139204631293968290293620982984225525487982881944992360244360282582376462688826379730801520908025572669647495462316162553142938018367320824465726985118051063897793935872302672469985699726984070892533744083641 - - - 766030647565954995527892196806762251951960610227727380070936835228324485842616265389194424742570514620792172779165924730284837340018584194976631475828237695347762993063736885275010205573963512290637173803636167279717340413645174155012847347204440728261868237020682687281593000717907018342768920714844084413845987183086154853501651955101168905515921672923565761270582575149382637299551357728194543352242769674604728530604313990676711360332021576929594273380189797584964701495345974281739976199360740713099343714061343725418015664047052220737469211059515255925205113715188916227870841839803547878806905741165807757418 - - - 8356460658123379337266642100308017689947469272911883429079821331362113070543780373241656370043571642175508712438440646926475536729740713181658417948783142922815278789886410968718151686028026905846418955451995845714399282081951180438048903622860394583996384728385740643628425342995056840072120515830664633655709216591412822982921467845132372679277366299281052904717018703612940299256827571571675796018973719739337416640938833882994247254011003400633281364501221785921248085315071168284705790130223438992053497565525492555120862351695192421858093274262001195252340147627504610077211148506318555171527405763546119358945 - - - 9975085980953799279844933291280902936678548630801181025000420542187569189174856113944754141989170134155846280815577649471584146785214018441393756081956191289066495239296580823032602185781615238574927080672989347706124035737656341497062232170974463503888564188573822114534142146546444983544540619678179223983817121970435829051349187889952503891759321464117138693660900325187198195075229691047199330818311269329568416015779684612793369162394078891657426819576651101858050478753410608299847411286317017090978586599241493282050267617423528204483996622286155572275858158436191299323382212046865584474297466475631386213489 - - - 17385353424614427467537165981347090168026623092428431949635125597688689659842097504689954025606266750619769441321761160551225413123608575943464745632577363474833510429077427350684044252942441869565398941407226037805524822848023569401846319969740329469712052014824660315614741185870624130758816348685163240160191890898571565735906871886790094839695032543949629922703930618086324769010854160949421043014437236198989765626859638258518725123046094314710455014743030574995887901673310158211139447885352225829906468986741078596896606410234442640983613769163436404855862270349817004107186913932396138760299781102619765883275 - - - 15939273471020355910041366072443118114737464845987431273499726078224251916278102246374386858641178961181497280877437258338864750449390473665666769435817414267671437281785416998257770445177425958611905385612811999826055169417380519006775256245464265602818597821231972606990507810517098813893444736254688157369814400891913142859405923747237748342841706128762660962952182757897578210522778687630756240537801808827742415653871393428147110532216919842383178376142211802461071911457326879581972059263379605925076366942593297443474955782638302717276967956540211299261573933072992254527817139028789824203641229190735037676983 - - - 4961123881556966772284567880073219180851940125311365187820233684587403252161214261995917447491208780592816294257542443247667751901215606974911490245167633543627602110677279868658322018775930181076990608891773294701630837135808422155236811239913438518800584061038014733894335103172340207254729015498994988320902733497372602426703309283346102913526953810563119781245387466169224833996670448054645824401312219591839921895965867892801463183584142874263601590106959742884786282962471514432090594432979254605459959812313377056364349463678391080499908525742092286227441223740516152674068506757422667911248191831698731613673 - - - 24027253687102737028970679924052432357969250349851695046061200183768129299900251156740897359591605937437808421819320135972532603535773085170457393060918445405745200709668724146076037567019669834811810213788783762823783712796996198751821963000125279415017434770215527197738225750325910347547616716195220546600843105871282696023320067955917287961986938914939804450241334274730445006170518236413864302244496778850082824619090082827185785046765246767898729705117895178740099401058330953027844694896229921049106126961149084755609451325213774032204059148135471789177992110844770389282052053618227006716660481016556895708934 - - - 25395582327115048980127138685335604975920976180116786870023486184205125716651429110916499203269672327843052794762163594569512868280247977941951550197499085532971736316289222824680146925459625891132969663182136705359001857769053057396460706874680492817940975327505628417873316798039855834009188063757385832454964712742140520247607187317416918654245913021305358743166912386501950051126005459527281198828480269118085865473791942540075672852791458813776951366169374099596054323702905873549627108059154272304407568683592996223935347125000114468363735988241320363033804483173944750323000550894491897069043875001051887105505 - - - 11359090223534273067336343474959154167817989861412178333921290947742715616100075938935483287338829991575362075273123565391155177468055035498087159095387278367030016411818334913283632334363980251993459359783387393836493825680175185417706026548512543693729493193537634538372506153621994877836961404474721882871422248204551109844554299841582287158653194380936767394545515397585630660740310547984291074218620650595883539057361741425528844622361206672011044351737614374296818990949609715230580621397016315265130312896660709586211325860403080166316132985825905570635095922414826203283110888304416150021764548944638669439087 - - - 5972337909523373634818980319172123194182221398367537091133196425217300685928904552109325919834016282057597491048295684818709463126314571033705652187413809008507639316438467572235347023219993107338542682453643989314119702375922457159350970754796554157529792052264935109328796836402359203530981942969948394009942339848109354035374981943987152170779782354642377030584150936932469990678619196444473581631147197235695367183979022763244745497878818158482780871461684919021927353175621329387407991514137930641512670990661177579566037492350948055080687887558328335821561136695243540628912035603674703491406014887529166602736 - - - 17747368986468865369664939161435738104251711270588330198603636127930071059846288582986016632984481153350123977004190280027424177485482167735067303550796840683757378311992146685103149377893881328296783796825028120114916041799305911338691424749273191324158856228276005956552150027202446844948735716407999996693098953224534676458965074613067475507478326008752001885394378056034978024472762264398274205424593292901354476198194160854549057508131252089429467647530318321142257634110291263637226324952708534481013361702527986705482820250886041864893082800889223071504956965813239712023163527759611480856902878690553079169149 - - - 6684299281143507751268461653500634073366744161470977966314831790871199157266033291786207253794872340767345709667476264741005871509384185480210300552961791228358123180939559187794943501857923276839174904931638139385303850561508129886944835733693413474667420982909417989040740775343452807261200856151923052244800405275708977533180859773322145083287048067049503078519987983128556230592227563844432678684497926277876330257884066962811626550200973889909305075991325032613875281444462132791812247176430990944399737708357711159263362261876605797781591974766228184247472153217258858846925726898137427678289208090095987596152 - - - 20589757049393553407808613971129585833155437105707552796352871150351210349318014008035472635042434796428245661198528687941611052142530890493640993258770815159642807059930770567707080054671792677115313180147942406396315271943347846870519307947622947885234602502888604800064729371816123880674683838151049348709538032796970643221811745873749777528229714248864312252011904453365658035954811951644614066005649397495186569537107083468352803016020677992810931433111779957106760872487450790932293799141471839066670174754259608200959157535323400202112130890193121275826687397632471386642133152594617688605896210909427044615582 - - - 24675202382269645849570191871311156952589342202030639595576132506447952394361547613851449723676968985415110057164406636194553289846399748648330462785405955705707252496063242223612342188421220241450392835458814973102268970888339389302746821851928767837023961695891801178829736872457640473994575174575093305913019388498697360778888089114728471183904758007715813571239615787263506939360067536989730825558226670362717412021393596848452621479452279576161883046739440930382325557903308331340903265776411742869542344853123438590920773155950185737472859555089751130881660057682040645920293689712707672594734509591848599473626 - - - 13414221146290942653508578867967909024049648121443831399778058734339852294675854776442863728920870247954249496677517486536920737457968435138197579486962556243320814212126860542455448501739515754653543545692787169623816673290421058979478484106821930290418373900187868927227046985832347537176121610084666395683779903600253499581063178864742203625231146670697178497563751542589291029257216846036398893582338079690858294257240205367733651073794774769645138811665295708831761184090525783128188407089487005245740616600727379592957027170558554560517002482225654216527055657533314968184519117198256762066988718731902103923270 - - - 22850949657475161727215097990371051226492926856286507430728973776411969329191242268326632470318749416085784775437620160253725717260855678710106931247900703660261507275079648415807970703644264207583335093427565042867865557456457114385144182168533231027615959029143258619733723012597658047959438805576520292271633261222659240751515364057372428962238605368407644939904802635277452543700565722856109376837067647716054139982026832634024953797162914608306550206587766300527637411062365959753157471956804816976712811522516111649059670861475780640013136876518854282620776892416432961438594422382773347654665049243024568629006 - - - 26982477353710535537273188428467595905163050623041266863155616959739832667043275531418574015646182698886554236533053601420622754930941657783004422312719622714218069399691627340929289597748816476779323453740647644280646068134934570850795878420252066396330546056937115944258194839375317118910714707597444661891583182633890938261307876523410693564912491425714685616058463590792836479845877131030940746275661003908597144740334413536629237408588462884655220066806418905405371864089738557837021646740282237315487630579239581927106966016784564510963761538302330280211424111425065295512213646688722133866819216941380781634896 - - - 5558263784168676038880401732629986366051045990456764080035083677820372993205301382490979926069812632796057575102148693705325913074880007085504268135893547395180199805292121716294666961972818678992373740153952630863579100576590211900183807378040387865282669835216271616708388634223335660334263213171766893837955744561527859983074260467636321399547159121811844193034134650245052295345941222353170091449052227900672991339926352951646867828638000125321307252958803949239604736476986830695402090841518588562734707226439429236952184253454676589520992240154056761235686889066724796196387553228534228510924023078147553645166 - - - 16315182193992991578206750705206462889576433693971205226893896406392026812060466068379129867456639556976886183568872412143263672018294065535006809281414791848572597696764206314722537351107348405443235374701562324381230323320196514480366670809316306820653157827672587552963165488337266957095443315760686254604491972599311847601031724257125855229978626559115158308932801862886469055456223240892699740021120884076751033590131323072322260765667888112134628011251638632915080935068623928174554566889048508524413451006011062402153952489896416871738326596257436410090378567696208715382772626904213843173706943449943379804772 - - - 15681612840962835324813451417315371355569359040266012780745568752569484714225820557861983779253542558141130227520708549415961511959059453496374698352395305691937162489852419390920394654352139281706915558414155784726416448960245328587609684530404043381706064906752761572101100423551564365800654300719168912842363038230351077886992565207201040618103822269337003981738226839843213531407684177123662113611180271271366634726663303393503047634529241630056913973465924614463510113682406220435698074064150992845266657500218331696018157882991645373252300712923860222921439310424617919279809843515953330837646081303906141974305 - - - 14141148638777838864543002768328411229322981118204269200555794772671790221056415995222552160450334662854476584098099493819715254102861445736095398544746213344556954494329348999711664811520594240161415004178823118177108821966250583307498512519505518573414984340954368455671646863205975214678812765689468791389723362968618966098777645723479479081414451701886991733335762877663597980915756758067821119979126722639939563834656201236490594216499970905048024934339488895318545740478354113583752513285818907963736002044406120553625789103303788679033429828986547963147456822862062134076871576641128351862104922519858449501434 - - - 2564351235128813984738327238202870540656047781434964315003969310621344615898431207922820355381783420312149535295700514442353382731788553601756105329432792655602266787256613765971272036929810707525366393361692594959939311608618550244367197173354139481247178346093384048185628592737613512650090660897119426695403149696019064372981207373761492132636759691608580331055845507615501729424380549053485405878663651633624636909727888604013321928611893931434391512417984754445304372809846474183423634333774653424061118199793599842805795633362571141747293385026241181028205161783333587944791924265349500205888376741074030211827 - - - 19537493293878688207169160111386323370950306710032568211142986759784238910869038804403439615612013991206808977746946827858566023797992172184631624263317631801267306617861100647704184664705655078466662525577571049632523783153764702732814587117620206877321022366653914369422907168976072695798747361973582602458569020430276551345984244233232439136656162643948186369018620187816493703144576280659283516824648991071920457526545514217802098447640189543513134877097580302070344535687003174472085687729878457657459048640435195945937259033906749111644831716864079781699415010462164982407525029356590022277248484009440721088719 - - - 8909610008036274722421055176777000080650540350173904165081063145830857048287926339859583096511465611629561078856290338199248902448393666191226981554292436607411792021321072285120397745773839701517685979524230751066940583879752833186322581276054285816710590176237230993904806632374436868493500453667013332756738427620455127358647570184708420339723800287994452643329010257006622479129509866453828846052417192813317875183709421319106550092226170298380268162676578308282595970686966214058501815269106993329683939211601623788670189279742004386017066510537377500502986039745492242698987753883879538677179463414957226881139 - - - 16399046896166366733855677681180588328924184303081081909379882413746934035156234535974703283530180171162188904745952275832048011337230260074005401715885051559394361987712747386188490128175869554971192691202445870093016416248253114555647792718312147422332061006252139945790981840900299596581718503414457867332238988622822254420500679175765281911687914233534711169997343239484663802619743255528770919575168055266824344928995842370201005813829184274567414828022487669442693788271429752312654754770116698561104709892783907218117096990013464268783431182567536548011897084355610951108379438882689090155516211040799153073914 - - - 27851951715848398855352475805414116002031484824413661797257957501422968161377953173164305839544872436036535398317945133944075789107299840827153908101957240030655409550461698343206380704760634085916522356661298952441966851492746093084232588815365180715630476760323449344197925568958621600358096725171291050302664372868276611876550321239116725084494599690197723442469394223972493678958125754986858722730791492243119886726196808407218656252398526707815387692102682313722402321882325337730516345370760588934792393416443088519930816663225974014199300997236152994345133178177372358538444642899637617224505857006079205600423 - - - 25307331951506563370724562337846955022146393379638095900159656015918474498712095674421309680224174548505248194587752755587346706582709085578256761835521995332546990980473654027169708204597974164458950780474566024320328987961147050991241105998939611662151553496054264156836242042754789859139012828416398988895025968808367729242015794638372100980073852547072064948163065904579975914902165674178994029148066031552599110732788338384620721797762179621794243663921384557614923807636480905831342878593266662411555979999754776353984090962857195022233554916628347091361444984533479852765916379943003482813856004872941560319908 - - - 18486510946420041038213065193348552833789932134400780192589980540515634258075327989362040339372220997298509186744340637305481060472627473258555977942624572021896685034882686675613542906405113816640148607423420511731099007901313034446122864687565429180367208921803473263801665389228589933536841618503474680705670196675412473099679894183855883753092161414630062244223582642573116139905225502404954658738816967795324234429828169766347646751134965395776171719020516882234586840775300098054866220591290069368486638409441269920820920791935354537927357392042728301936210117341205404795954713095816197693808204142597592577357 - - - 20058299958974061689024548094271546751618771711951902096618079478286488977740657656250659350102191973518312339732518947396283743425769350047733005120085159964871156586911244954887420118683649428871489419852144854887617627592253993021161309193288963919848662531202822540012651232948840114704745638533386610638738652205237289739372720271344843476801091988450112664255441896079911646299809776503533196874853161552143905953240362075140794798300775962450665442678357438228122126684056284348993450181514009471876971863544337376484018318999483103770146119717503199532252271432880245114566068931383704273762925762746057037629 - - - 4799036805705941575475514565010050563463873950105804472578936579697720890253547139950814311700283506793010251396535418969109942868299869761102708618999457714129028986997090431236733924038534579998269918427145966685982524055176808943982115027727075934028884927964888438863711412253286598736506835076252256538823968208818511050248207313475976846208762703614080327091069890210807999459543710650464277659905943322947558900553856647442194744856881713439389949211202299491682186140914424431938536818941991349623450402635482044735924677620651048473073877805979329708935930842176928561408289581682190925736343374045730141902 - - - 28783182377097840814519034982753259389872936092591719748328344890290380611095278300528222664673738660228350673543975187744724466933852393875078812498519064868058844958729265377806222477999939043288574745998509361748010877580329871098523347647660177430581913071432152879336909117901260459726234074051625973845714326272254907016125224415152244757863280873734820393302288439809171071467951627458481066771080230356726856432019512815149874648752120524556428588380954338505190139207105670100823804467372842542908345506039640022426025843560634484132430051141510743067567794478762756173081105627040234072035946962900908901534 - - - 8033193870345549255717318104261186176304005570506837272072134554360163864771041408653987586290314516921962226030002739315514173534388350877868201012288015604767422498851509409202020089064755407810195263448415058764652621916922198422005628866951229257956030967177368223185566669508490323499762725294708182735574548133633550997733790873451904535574033236777037387362152722449268500043461591629265003091631034575837973128576495821572816344375209976826834101431899184334902458599256043732908122524199100629579230236878264380232796600738425909089612233770471484846820146350627406643305218438392206768911865852076473008611 - - - 20176668760692847295425756934056626582963980133255433345055190116324002241161110161559694539590929130543848328214484109456573235342170402776794728657501589246033278782052556462619609454480531740849749762638528038792982509058854890213672035673804573520242414667597505275135536791111535955541670751709556946072058057275448969291460282878235018679936410294969400413380136897233540894754190716967329225973774990403042101123703286079006326028711292153675668513775777414422981414839633504978393235564312271831726792298546807184079803588721711824624496399456595243769111817941162319714474807061999806718669787022271006903689 - - - 3353183376272911266601585934301084065084608772649947121726130219898840142408314871101357962802108613444821394229270435765965438873446887789504599231174133334792012964214420831293127305994273995679402609708678515282331555456000586848531673805652320088847114262727324320765380195690629585088667306174509211430572230343769456438075526583682031947544929807938350396694679291854931365506121144730969723522825624826427459206241709022407987696213211874165322174194436022850264317308686146020922174505518931316805385722072693546413525860516470248260208043033919227372643639258619314561064237877534210656074348391086977795639 - - - 19985876742850017638618370188530387937321616020248825348530476519212634814242909019845087446129177007766698651264601716094141659575259203830561813919913801128059489200983901192578125436815810533399764589308069075640673288529195831240375706164368320138147688433946231030445303345975671669605335008143227123140379781802007289186786363692941282691983921844529809217619091513487026835356380450344957225114259336692099201975152402974728548143378350613577269388876975342458723348235526593839734747125778131434975303892692011619712110478902644242806133358780808039195904445641940055493737926548771756436884671846652945891879 - - - 16506820254296057549208913230344804152940454540846278588167693184721933533351216064485813593142657386291328293395427178433569634109603162544368082600657602101777377600594203870751844256640727782094589303172820068200593742698602825434688857166174451546095770228949048865248211389806738735534226942889142876761315601620739109778938437358655548905918870203173033686602444524040243776277448833115581036373968709841302490541165030564272102757405123173150140509016737082356456971746522215190227314584861873726261533410063623393984625791919270920300933679719385200098912635625492290210102957283650207353974714943844363868818 - - - 14629123476132101316372450761103473674365278397314695049179631530859632216553744342682186747916893033716338370670009072150720555867383471017412738159826034328549123527753925255803904014826632053838340910454225539798227805149678680014157966402974934635765354775631738972142755029115058151290643993312262686677869270464831150410987364407300111598529490828764713253437615065270996489082497464453818027135425865571684424346113879364963679061347844750506909617212230962258408129928157927454441405591379943000050863374841523793197753699317606633413662757738835732502414727836841151583076324599640512411371699035403425153248 - - - 584618332522661103617009060793520648455846969892865196112884502066901354764279858737020822031163292158264078038232122024898744341071248887500541950838585852522024049803020944049120453455523293028910919245807161397219619174650348865506141662959249753285765074962966977653812401481572405480940093005444060032994930529530099388316295173298159308327970241155042085643526926028668607393518701689999931690127238718505054008532405647360053877730252476032109758149061550611229447087199901522570887906183257125038424766204924944591870729403236620414022012698159123561567500860752594842553320250458792856781962596466349082265 - - - 22218042304939175223552152733596861772972394449174443804833900171738226249246593723146319902137212921852278395798301620445044405275360996790775731718185762863996446939872516078085577153088298883508866776293959034880658202439470447120791934186292604362227269881930118345932197307383890999091888245541783661935561743455341081851041183243195935303847474085129521997345864338015325955139264811405082885171066835706904939624871310275873062357706803926997597146068484126140615723272381147613172089343140187497267043710800547422430107011753979427366426677592235879687190883527549026624744723392885306372205073323903570462253 - - - 9210178671967920726066932046988532261303395020813177106986841027487225366979654731135516265889197042648116306605508835590395741444952050345012698234218006290057643799932226400070707012684646530169368353850626360315442661951819756520888867127892374831248136345877367797556744667471909717343299207008925394310481733210437151238844404829172101683653779118871501931753256889115966279374057903396264735551537472200942496653035888508912399875532988505444315500565290923472977970395601750129045406928501420464937576131498079812816422903459854675927953380342596684124448830958247730865382701013814682108212313732688133048242 - - - 29687199709875586231970467124477950196828120837429577982610347507645690212980118086554436014399003443912578442684015342511017131053087566175521076573506890779806899007921831001292050501595432457545885713342511719211420454814617916226876610023141129107165572338904850051736717659655973199438422536342574526826427338766950977232272745154068009278958422329546101132889399959176124258680607562631212839542745400539330431442103069645560275666498413895072047917023976875673669828818928792374109354780810586965056194494620480388714777950840489050489808238251177360571355193331251220827151920004663114062831723810298032438384 - - - 1278389662234774260292413669987891835479491480238447927996058340678558527674313428560368058930174482364179062354286637788961984939807703492230922449305230070376768641823794873666852907811321355479945034300199509486910219440722595679138992784306676152653677238584782853303185172541877386552261407613024885959100531089746537277597223242430057473034316352745037864317592478667288962523623699760736049312800945238631697006533718726555302491754614786086827151150479885259832798996930468645674739996421206575471552961541262603760888735474232402359066094862514694228461500651794279328996168251357870480428538670172528162724 - - - 28645657832107325716562187774506289272007165556245189540090810029855788854054618180070473247183051452400821561563128015833063547856685930087940044270658089899329644420180301191892033688863548535914257257836160433145300644989389550469273153674737608301063024451748117392334230591424046113964956405446650521751051933770735648549906310515828736348258817050215902465815288257161872869984023964140742634822056673367040836942455851497196242258716895470536922675521484540420657623744809704219056872090030452964343376440872717838559143430929117774147065536364918636382908579134572360912927892352865334814650354683212865519036 - - - 11431113774140187135718632854239811965174887444597516241971568729653111267066485526318592493729763987781207093656407135276477088056406107675433208800454956570884091324062963549583276868529450084408284395225748715393148676982101711376530091007106913212474045283533624865936861486061926361504157556900463192600764944977122110034564921504409310723119693916876914805885234185754320983603862001447311217715293760834407921785495844848759477406604834002140363512074409532149158019892579392554903320542548235611374574149468571140977596729882139136364528395109192041756046806569420244661486491615797232164804454726060234131545 - - - 6170892672243888444960042302176642196478575431153448559861384252546161308376701048776488929250269986087191917701886305678133554536663316006011642387850202828575809762698825774512784943664182513656631329410830080225239964003189145637447437934539268625103474342387962717403750131274677972054563038363657261561123626015489419352274035182948066624308019372192122974252933788411480319204261284639256213024728640230000341086415569895680716290534944268499893841675980811603274573253131815678055884586754592077905309408204676753015750862067934105093101794845825050366231399474275702423472685405046958852614508981030580523399 - - - 16775931272527833661697930583964377787565008069284022031374174433892923213537470592367031466952989653728581380806675371687002362635657966325998981503064519327930843566891056154349285328972838331061861172032563133304233065673313143210679983245395748510131774588571472126619624704116933592931141266448581005417586052237786785931462057081871073184351334920856111236248914792609992795040364368202821426190645076198003208746612097787104549331570936206047431883222054488014584389726539643335877194441070134254476199961315875392279839585727671850939589943603923341095238727261945005220230785524658968789363047463565580862768 - - - 12545445564705018492917550822924486368763768662133113355527063186212632661821248750065380650091970344059425809065262277615717331064895842482753817613162807236643760170263301511204219732205911140865654026682824643124813456713129103999998827889041933034610519691511015754355750293209747302709559536801074085878222511911594412922625029680094526606208706812895049839444991776915895315989433286972982426860675271012356194032875910248082687674582630259761957889135087265169845704689628127957053544181072205443323003490645485714658824090367485259422240571397727467365613788667494487439544055674760166294052656266289718361127 - - - 26325043935008941253304787091397193178429301129136916504359897972505394453948563699374100278679506277537813267573502108296623278657359873847929952053324612535454167949303162172791494360322054862371998791460816582322981018281803156669751213913849509271460698275096197881342001971715094717568098358715765445669673261352254931551965705769822450365046491724724627486389631877470859036628966131662814736111382123402873677692368649564000444939559585486270592602902083427175108476376028916488000174116234186512202397962372502231759209947627384016781770790195907107142463333252604339352932887040366153977193265732630273927387 - - - 10165488714898100827295486791386647362599907124359496186303831418427429955304384699471974102150917499320334322534348541934636331124968417751264179490485649877491199734374007846156400297918694555930425584758121823217533275257498173633102745470683277655986520990153256889648781323431678131260096012446647119137937556917468168153072866076260620626166921967830322553130406873088091730341733241424484924705860573983803389502130623515751213728425921927212853048120831997896299351609076101890293374501684520603690604575211148911049318457897107422417047621792430545191940412145411653394015145858735695168601835486643723235599 - - - 4072183037844579586017218463314322096459993302219726723234518298095985656037600020844451767828915484836965482363930992273922380239706153103061616807273703868670593412462032564561877741438645413714252325543424397478607403336472053853440352152000285364086778469199404191866201279762801424124841440736131960228345279152188619159500239691015183188846769908175434214450062864390511429684506204182789324138972201369451993138064354465356270378612243016554536637901290207036983267100323103288765338084855216464258637306419245980756820777121063175918162633598225354405993514589273798787226777220698978369110046691787581993512 - - - 13007407300740692139205478453426650186942068402217956808400810291448749046028471659812573682360315040551203494878712120408980105604665978861444556309790489234672875718366117123075300996394561801164279064537856627653445949008717700696609164768040516773748027191002286484225884922925104686422333992571851396850359882282006686051394717550275292267388162485842709205739309801463285826106495947659648889434411049597699763139845131447028188513157479097073952551238669817081723405676897987990519408022073696964970920181236818354373309078624897172197170817645869111591955412075605907651778023098339580300462072388265554229662 - - - 5580352742913390574718676800487742629931116439711628990696295094386058217565974064754753069725067773532337756578141034499273039767122165334863704382561752885090389880920662393522200929920236244207298270354835060884503341509124911748239973111742234969407130726488931347645853702119369440936796168307304087566780484487437664184860949017168471183479219386059308062415974348513433013902124728345021725863703548691842717386504601164076343430364795125367124542378536553453330619018551661851427720748417796410430867991049794209113975370032472865111666477818664132973744182941087950438367278622684476802301193121870902545293 - - - 17449680159964029070662597730361063571962592083138495850144599689413751127723653909181815698996512614009803106181003128263648911866595842771759450851096722246380639686483053167656770631895090342056082394260625250594237925457992753005934161128990721170472856677137261072066893721885399719510595688424001256668204302221218077524373070540804729806132603553564483265821037459725917466288082663275741493465606302189827808720256622410898641312920424480388450021711701480194923072842299265152758903733175162916247284855050926426441525832468711119333596242707876541748010974103650619353994306284450451476581213260080697478047 - - - 15814936235314432660615741881609757765959547459981699127602622516429950840482819800867027030432130178072072092634360858994496855513952300288785537426484276257176680719042884429447964904334635377355849244050562673606299145714127414848565507031066107388241131771229560823660571861911287569150007079753477838248405369846043084055067498695543826086413088499512524849813772239757576912347224402036034605212861813111019778010140243994333526478958041597023138857001330448894464751436302921420694534596071524875942903325962423554335763387972253415603482031687674822225590288282299827192129010275572440365805886671551848770208 - - - 14708614309591033968576148447667097628764571793109969235317927060497694198947170897232178019209488898102389170871133524777175304911907245382553898610962829876916704840379579712071620450314523913731244834335984343167036473964955107637357823087021323263536910490083900512863665884213382535279581622798655190258442262462215274087542464032648583191213607258412327594826894392468183936983537449958356654826745503214042345222486992518763266317682585032602178414737519564097785204505254516767414002519154096714200029789158335209169796634614870203348117594169661746467151504390144802938015370601565589854392959014238244582566 - - - 1597083919619626958925014176373661641491723800092859554071393639726364550480795976097599844681480697601429013184078792363726895233501945821119902522774942615955025836578781921399960805986274493955335499351666671831908007357142740493933488089955485929065032825004784137542232284766645572598818706710663752849504704479757043626241777390161406347218562308915155704847878211984639915387289827674065266398181568400589751562362277702857238571658202718624769143825012423733555552783946461888800503591760104526760155001007720226426089449706495834863745448591357951110269152040631598636435766519289611663241020181295072671743 - - - 29797298708916414977232862019685173943514768039256511881440867275760253249854515491721359719544621191784414839535047554227155707984635733995589128371702095847640059909769192004551904470901533570093735581722143992567853279675865800512256623496583702258932912612909707614236050909408962496085709550032508414548371288761579808915233608602351235266543296269340064371367227697144975289305051688550096497306302240112096021076177829498659411654776779465284300548391861203734449839689592124580511618807274316930639289486734386261798900034759825064177227762466538603422480510977701574463434822356756655650548897835539548053618 - - - 16950140678241511741257729105336854467649962668446095758803347004104803252226900497347315977718499970287640771649220885770140464767469565260413731713038218716121204384284033292449522934398480535081886882255841419089548333374802367092930924705971678412799063674040821644974862744456445218460055707429081182193300004133631892359449893741412003293377100815781219384765615399152381499034150639329412279996651743602552388586667305282630037972322886836665083678075962806203120071168858346913570202667226096410120426630523718756427410590030515428278577234010675707451330034456910753989284251124764861693472234119288460703089 - - - 29288625746083008251476368477682373659587080606863871435368489644320226589323084296541496951656965392940443020679323971657006611559287890083211259143399889075572916061442654070368312134102027526539760522343357712923986068774048255108596981955216764692533587018378441424963119753059452932245473896547410831504134051991854598448055127179936575557595450975295516768782176327378637668467528772036041802056858902251200019569276615141976118233629990593711300833719681184009027099700267202620252957423889466741953291604163934879471126134795186846488491256065088412714986803741109110065044115090446286447471679497963172072668 - - - 15239605635740411150638206422815445394582779940741416861122497204678255140406405421906236783349527926522562315677036978430581623083889685175853913706161506816114492191487587420493323746442247017803540568614698114835016295800767269088705454560077187439667152432648380577974192226994302145987282662586754556346024141188344526790384985762028969407809080898838399137982020891699745753527101452898841436994336727954685534926551856634810900868473272862286957539898940294677072803019555058436200678492093080299464387094027547806439833832841001511654873929647506840079250125283490175870364073524415147266303272576603373659606 - - - 28115290785764439308380646148969306065405013749889994812812527071416781041824424025608360312925060887237255472971417689835311343387794464899339748783474913240304530677641011528565456546117708544811085982888161311811856345597922611341196968660200249018914516830949566268408535791770836652769021079457367512121049997624071846571169797616275139918814489290386824012803933107111348908274976279929713682262511112783063009148982938768052112335742211465320408180626920138026233159974324846686298399337500559084261130725066988263600838692333375474884379050915611306689527684032630839481253935875183686944524829927079068479867 - - - 6656963808112079000254462569085534948364189704996062338672057338937042057301496221498915051427847875620407603536363176680024048463636520159702463326133270401762645066151734002097469500435752516299681743081905738761375324967752724903156943917053911887422393136301793253402473538311805988313720448716100801487625146963799259308954050749424088614439140554114957193472551567061249483120353564743459811861792572101628847780626616342435662440421730736702846916191888787837248805445991212993350790793204572501290061012817428915347267698214283756619043182312173538298337309091350295431579219779028412283734644395884202321214 - - - 10749648026281162704600448113835565272399633022938741858570959790798014672891986620127525544160342732078167826215359585191675917287190312736268168506431162817373162374334821158047626531366040362930264096716499960727789698141635261959469214786480241098950498655517481908852162331258104286172787271284583644261520523848096957165956617135133837558336512121680725122750847385216715377855049115410319225138264051568725455349504816783659249506890622471145033081664909363227817347029438118772263690110372212346188092049539725006584991790377857012973980905311797487208929894231676229225408324159916434238915436079433219103972 - - - 21478666439664805440634056424017810393459774026378889733981295413610832761804142061282957605342280740381037787147973138909069150508932228159782221225648851410955736424368424956070905739583024883088838523074912407356575855740005917704299994761927719893886168141131082006389102379726291201811496032653920122069009428032814906730671127249696383105531453955153358118002021172091204301379886523015686131160298746241992906716027143179425079272085088042500089113581325998184703963515817080482414972407201849430334351341044366246847045741352193265957127835431659550778779143572653556931611219802273424865750440939128239991875 - - - 12850714443481436513315009304039741613047897885121051818550492550282876599339227034637261201546701704129789031912908289370690662143370681405363941107051662434486772339481812511494059943322774774138262580234573422567580453018313443479024490198784522718371868136066395881115906426526899159853765808253672506433247880592142114571736288630342683603436689028165107758387723838087025057381433610344363192349609891972934019093933590110819391822221664116098012643923512413752569012466947860930710381556832494201041056288065354966311717812616723492474790261181633738784124845102727365512475901677429331009722442303247546226198 - - - 1155205340916310868516905783749020378078892087582431320063443391729914391877472067211114627328257804283849920114710576647463439051521793668456424299825647795799462367562937160878329740802037379574222427112525580613018297728496074750019643723562038549650952699042816287743360834028535184502028236770420566677435423199584922090717815647715312216227726861578687519493843046925889820152312325710321344721142900048209703976092486708750480832274686100353247091476521201921444215020734635913437697726226469346621450525885588420433551756615741157142827449973378097197240316685986378597367076960985164204958616556166199730676 - - - 20385048622204877850499100354730897097826345303199929931330644797723801796629155616389395733308905696150019414184238785331474984514834754555384328662206776475598697546865345790569512937688430777687681000469717462446177432076967759090904272890262256417286474698743939982358179002651232178874145081439374421875044778257605084809227004054501659088029991537924183292646106624403549681812548794620575386340626760810045067962105747718864027217177710603233582949090445458571685321353387876884993677192902099459561434745566693057671442924490437541541113546157976383919466945333078022265076577638146577885207748717430228144423 - - - 29872327784880328785982250812003301299988181971025371987392065446449206754207914023781588952968283312450507938127120728769867084932470223685588318952586483388781101173318630986652760760290153343364710359610125314837578013817846528965855058715662383847861125406882912681056668684211534270759587903694621024387233293838624599365956050042647155883064964545444514466368903866053443677392932120236102840571203868614692655325502407907190684807919618472821729247155712643681079118373310735801034163400723240735005503207093528507561609671091122511557198174154645141284137861143533976473797178658497709138772989053880492593497 - - - 21100793109282348897573406126222799523687215360331191312457097769017897421793850634654406785159739841397689409908730933918961976973882283247649366759409121946217950132148602957471450897291655793956863759038274945056339159390695215956982740396459119245751347232416562134241989121791948359624362280824253871121033827261501344141958213755932676237150885107765538169175725721132745025449300004519708568091252086504051475505606473626478568642570944935564523373610667676806813059005802519369054362586733929031865613132706825250960620655190601771508998560584084493852446108101745048373307646492147723638382279038404287579467 - - - 609410067495733348979107891408878468636586103523141066293350451669807084479431018345821887039778774476623191117601537953617612967585243867693110613002306510555224540506128191357378459566430594769015890005165941133174852544387371032814722001698754522649943042228600550795046576595452967283603344377313943161228615766223422387419384425341524473675225260054652627666986212296129960877369637247826748590870805429040917482437587252329030724178532558745468443437077187313050529282813836533898014010621294424046729324415398902557050442672883998370840020639002928618662580150593397589413415311905215647101563518540004172678 - - - 9002079258494262017968417215795921053827087946535949868314010499154977176438744694738626117446521355859777504712437845245309238118441191863253390568978859556933980392552230191451669288591978259152127195703640002884870420217694638172457669921673642953646343084802548273394712856629325029168515792570350503085837955473415384084523549580304964854823718580964203477901669503023445244184964465366634197375576534499687836636041774854469850266106613656093261988097684588113820452337028228442113504181266063855737248674314623452144998879626468598490727960115947544289593794545753074331730084589388759841018858838433240405777 - - - 16007101143845130254594705907024471446010740330974951239832272472390474338497982089704343216512107067547565122711040438118204995804170445005942758439589200451854496978566641813108319801795181568532066333598620603447792486820900591390195650712988017880381431083495551347809663555838009158685313143625706758391231337553006189247674614026689572971125934136612870349952858934006813637660012308610229027689651381702401407222455016922581826762576991175296210543909222488672407557283971126586348994679995963727625279381648978900365051442343075381455589885280046969635474415892353551962686010850361965890645840681796855793089 - - - 373519030286559589819121736206534427090979333196892068052486373549184646674328639367065437339754537490051826947951355621134274623316581577894963122670652208161383658253332696047945631701685075645262707548705157898985036461949750183371631785307899781481417376511707864259228812892239708862703119218171898453556071247623951457417933585974108617973433092696343101896625856324513480516505049473075552051121346567038950470778607502667325038406026802357471320890177361668462838575160267773178824121971622042497025663703792491079575399850091771206194921968190696814262544619526446689792603839310655662863752846392250524459 - - - 23179368329287350562809600582266032587646672784307296817862079728798133485087327114482475893029817054978931798445093407999005213718902003451795966094802814611567012557479559518504155652837147059156878438162052433226148950711346099155848421978637236364670491806483061824481308978971109454897073560787639734691246456580468097691447311105427166890357342677657634676498221742186645076173423331063246206868831406449835445441465551619664346363575901110100196898408063186554706512160549462068385169450762449865123767917144222889682408601167739864836024953752270535789307266387828095311803109118067937525246205402222142258531 - - - 9387333948920098528822037102551542056067166819987325322891854416782410522758880844495583039495855581049422755034941831291387102857847804624832703398496498292649876480645763853467431641858716018787938600374330305736644697942177108382217458388796844532141513227465051915731320920132976278998510336659028696272436937009828277048031687649102476670345685350997095000838836579121705668492416703454702325404087863156380346743972307267258117067303198106106078396691842265719558213387196843263485912523898289653816556031815750863159931626307717941447984887228518880916394991426411716737710096290133163127679952589792326093521 - - - 18151149909881817174541904327039877161524962791024367163362256086002040239138288310478689832920219467688736900061605480369796057911811163478340862498887758182201244455315714317423073435603659196745988698142520065296643564930684411880511821136336652129697422059666276218816458371891377832526164969332357670566468027910103480774363707981477206391453544256771918444006964269941451905291003957515924425922627138941268581877442046499942092095618585504379764866149720151256009950252675373633582570830091516255062933600146996983929414122995941576498843020293919414495134289168243287899453975116019022780590572402660343661646 - - - 7617559783027453687906283432666671560731108373189957382125625190915107920200359566240953958072516442565412298026838653356013620395390047104614319592052859594540751609799625270548530200010803882594594645735353835156494391631044071599063790790014191799976022780650457768900762223404625286503525767449988411370455084347921535179108652922951924976580045517321795584910063923103159090188158854250035728393524964177134929318011769851036544054136216183225887522938114715382984297720517957363622773550471517784770938511373445687196518037821646023717964681636325448256056985573210084663559428176077352167840450387866154962156 - - - 13489311975903803740026710827735797239370758094105695389473431786197760868640252679440007158614147736349212313517676366191907143545256129973940978661865218568342373501809286619120355913379844090253246624013108586898798598681392262363195432294656318078231944314786769102203713111865159664966000025726881659800986880170682023182814034010888237605374544472464969575310596466379115751704077891037767782147504308091968425167244780456553173000615654169824027174024740377337126876876640201649990321858161461380255368606660171584283384394789776762661114578807956112382894337881883509211442256565497300104713364105229652765470 - - - 14882706784474118844055804198338967499265319766004223880700348457544196601541356830962978361687526845888515005385815265046485417949456156423901942119061967413648856366039970330007253835055699622937568430363121901785479867973347844008801342165051842807826789437494090480171331821172609936044607861529557891153517794230264647317566528692994153035656595018924334852597781264782746407944187992810216754022260962501680610074687411080087286245872064715499723368463467179157833005211569990932864038689743326041070502528539598099425358248287395096689113493782218350022050482101992610363311845754727952245543791384820856790839 - - - 22582471270236407459831284277769872604431376914636755939225396970826587849528874716248135695510909689896142939670193264218545502000972213159486938547495715165252367096105578274180775909555437934274142773574369942397906770940464773600855385101244279521751269443923273860052216559146443832364689020635822180638727975159784901760083985742314084882931615149919322460601457960386603312940054910213056561952398135026070074864301341403706575426768398363894828210670916775359246934565377575621445991501963898249144554736812833879245924761549994667194373940274833682698850618802726335032052566602505960629242792703165302638729 - - - 25092123581580771493789291640418053694246188740742787818436759709871602093379595380252188603686597848232360247201429251801686243768954603970069221013461774013002962295642186344181975616557154851979625858239276658536304282141107848264112080242658430697242983961505361843998550735366117177485553321569806954630835136715465287654819709243318474177650229862886082198297165173864673223475289940191925222682627850226224027258423418935446013191064235291668373849999138097435683440641962981457779543852411642860024854807080088333222186867545617530427483398261914168670436331309583631490389893289418649118959388659424087339943 - - - 6397771280526907937049664908858109397619692689854963318150075917365504308776141113600304983706070290980469738857718833072458196838519765546579193436759802922527904824125673547965846626069848073889658957652350350232305992916650665201458366908782600714968616453518455454367680700587248903396712461797082067781895262005648592001620392601804397090319216297458462429257503888013369503446672251348695657383419934884655734725762912737315084133332100552726415565470754347220907507670619220003296816250216944619612019154557075242029425148544866880933417435525347934229667733779944605749425464353292338267718708002006513290958 - - - 11144964229515767269795770313404196670123626998567851616916012954154232894952703931235409097163541685888671087241399467595905107724296154751925980110478568496537849991088163105675252794753119717032124872813089860144811021839282018938673830652353308393759617382768049570882219952478521795466152971304531810521774435976810336656390583834413111431912002729066284328629264479912473611748223071156437527703060522060714210541787951213304708449166641767071638755145798415994874312163927727500027994184348403023305068701713295430553570704670172892539103061749051554087643328761806731572248749556907388724285584690331370628147 - - - 24791874359117198402939162569161029428761937677830514640897475654455112051795855750591322979074565161905637566797551777980907386550225729679554490243625892506396216734202819764151418541769122567209984547115617067893820670461680587450089488691629613671826698931241683819775033418387552345698080083473427453475390627317371937103050043889480177742307345096096009086462489928876574968240545991785292768804675265488950567500406254408684142745145624342126053371051833257715908158097604157233156345644800530772841963345136513877476545548234600496898270187900417235599031941817281765792709443227972730454860063098546121003700 - - - 19295781052937561938168524915727615784955034423794445744621350593833295588968093906121158508404251684302791595488652432097937579313291284643306417639537851427748756195475377658856395526299066064607461124383424078511062270632328072920204640385942524357207999547741175928528155462947215590311205429374392309465155432436460112585766346570716541757877838665692419305021759774112843969537967169691607316315266526897970246436173558543992891611322430124303546401043814227320440631973768374901944458749150998425184725121556387667921366810026047994291935533807824476965151998134789947278774019643351958618747556412927879258715 - - - 27190772931398094420623166468166050595997751396051962931324042946969450228790356984205689967690224120050541979231860969329294163134793259859302867749271877606782161782464945990656785055416186503027909310145683433362929479727281455076186094912845100900868422628018616417197782295389830495399215799204727288101174921025871194666240037219161493498836023070189523963326569074669156649542455591148091751340859141112175892410630884594136490954885014173095192929133736229475431813893796398174489683242402316255646055680021854340136828268605435072865248926608849765714007682519334185897860314471228996976884585092125012900987 - - - 21490973986898491241747307018061031612051112034067529457776290034192811202686268561212355143030660804189082177264699718950386161690017116922830278049940180706389821957874875516708435688078877206545234452344699653252701416873694684286396642912802365149302051198556258865826262986494389675147096958232089427828190741314769623387195824144946572468029504160348654935389695345598879311989268851925761536859802782756342055550245051027129443756589705368212704426136698538099294223915578144124427432863835315687649527253373636163204781093712776882838265074814021000355015375674056292458145389509081837476070862545126821364060 - - - 13081407979290323295166486521410847703502877748140863220988267209285255014076072869067055964351375795467804565811349286891400964594721091064861134183268270994458075663062620153824322386625529238005359487016484986315866603327605601144456360336491700874665588745946099425729847710932885228555186223132171214210793686989103141289856560478899135693012921562854943861439061455659740605919254066297842903976137356558252960797522596987562539891189539737654129136881759363657761325881851944353830607030083501854251079777979122390542098286023051662724171597784929100058747904051386287752463237786529483961711242799835768751538 - - - 15527929088016661360023099516267036497950996871069062074279722950085621337749778950989823182460631273444556941634158800349214804571279083952639868632028418712683883279800014190565519006922318628992029162621342393584157980178477479451603911817330026799807020999807464980965944568217805219851972375563115133427873129392506858908128761576339640332925797795222859170755021798178600949438810381267440008018027451984877855392255557519521745869834679535355716701658391939885741599054997885453242061710458936975837180803030730884476282236363793777770228432724413718470298176970907463609157470257052748341980307890618966882270 - - - 23394822776363104195702233093098625335330416975588600213439040316885003939176877965490319906757866779259111224772614908220653239280307923103137689776369837519299804003127316682814168070843312069055924425460341324018657792282051012858312469833387507325825582748158676596353289217662447486106327225200693289528433152097097493673075602727456156309426359869494158137935945532118278648593887933974709335825227640823163014924310776205334126339525796291527792347778485484781650089043587775886541724841382464160655452563648827410212928934509794039511147962810386102579878934840913537517373681841873303263884517587778101307853 - - - 2947249283044688587749185255020557605876976637604747983459173036316521157243131297511083955459251650421498411973847611770369922583228791787527489871062526645151738359206151301957618570905261825256869360556742443986664937190585385826049533197420222126998946980644194159092391421462898865568120467308006548035581211605591685574384059736023575723442880413365475014169451479463110938439107855461608337445500478595034850895776624421350064670807673092124384083614861124611012140257143342446215588899602943472691318429859136355923084508783749013620111981520216563350940598313272229724929583050203307677537832509149003322464 - - - 16122649476872803918900076425160903223335806795701969693819997757688122015533638354927735869055347107291009168463931736396701053139053147879849332406386573268569658958397495628767334271425194851235219686042899062297448012720397366542855070690057738055017434810574788337569573658623552653718702422910630114083809633401414001140890703973606687437679190638064774786090624698189165087849433590037691134081615603534821014209651560313838907437083709988713154075659694188405647141507978351533481227784348406963788961041867558652888447798385688219509990749936489917943363181555440922832831852217088564612724784048251509084489 - - - 9498192088780165175563346604766888420026088439338166231761810225819855227247997641278315707722080403297962330587405970982042457432426621301366358862008223196930332376046404817447873931115510243923598214334305110760765143897059174037294514342818001672828720293741628817895605267046034176929638827762534922003936225143413175190421282278920704968416449197047988874308848345170586875698050485382549533127299751084086209940140545050454114961199870948043944430109480957227070700565460144398051802438436599785813972693108058670845237494395809170301604786320233048051563103397577684360483621787031574989111403945807860043813 - - - 18928972706402522640015173268362068576924607852522770522008006132478704176267425484885060480717624941910109102155992932276551428809308027014561558562148735244772549442583059911052390278075176525912911436720431691646197608814577248925767086441440136409288685396556139982459934329840006548117859147438015497727870761598338657025179454735622413077666631642804439701544147893019384334872489621041621485134584779604471495589307373976676715621684014726856379968979640001991252496166213776920740596003048026278884354210461898541474444029164801944414856740518436308547273000667151880931260431424260426137871227003755979486546 - - - 7704822355402679977927656659642273949588982817097090091736307244816366300187145161339489061866069070574081817371619599767591138521360453277292313620344124356963712608079232190162696982440520433646741568482146492816853295152883459982243703394734536623109741094698983383190055146582357479270587454779533733169719707440199733038077624447730642509533338900415954605090024055710919668107012070647209204506986230490847974571533190418212459131476645971394457789726860185674345563646022764766934453993709193386436886434497691544794960428989657501554632515541186104256236872628679750007700514176122039689128171881592886271613 - - - 4701943893481219632431458308495046710120469331434598938129780834502402174317829020813034967319926171037581256694047683445090355585406729985342635367986632894885193192832499111362302859874799269255772617179657025984048568347817158846327610334185770972293303314057062318473527402225457016018971429074344476834582358324564980337025716492637732863930042515790095530131243799941016067355359506895817690450500323064934351723475106355646369364405209759609946407458790061925064238961405118695708937806585616399030631197196995049494312643210323319867287084780700092550645309840222063102096013437225752629287770808632746265908 - - - 24235183461565173249390977784165579966829047000961893529005863812129627937177911697508287414430184146948089743246684579199698305409785612951571472278431567949939379689024829297333638951731295873913924017947101168787040971134478866481812822915574492078157098037342545361791160680979484617913572057343863076695848216022468327729707736338897206727727241764021423734650517448359440785541293654704452641435312847230298609880407302203727299847138692746796262860690358850524525457762587497986784413402680388907904506885421920243592583738816745214380769541498221232201102333890042274341125248332875309539868263272912548852854 - - - 25054864860821235004662117284061899585192028385695092322064672765308180870357100369440269291492549667318694786743917834980127724495115131338925679342854598796607589812992305353298045306467797966856967081577836300473583779590178671411030600993041574231324830894639022911115807214573917602003328545242881368523427626144468599405697445046358298293232508271522360003323220299925195441222435107255464481935183690555916048819680832125699993291344918900023394582034509928198499216355038497756696002835178929805686339475194737587719493015952547198003250734625086794554737345238918388512903378791207967151089255495660189301573 - - - 18323035644561877202720035488447878328249159174378349068523276563858762132147449060998402230893340379230529187966601922841955366529084702738147468573209158472210078229237981219544418938659710500377982145049362873580557806237041195789586836029632915688041945769897148356085317742362278703830226403283628339225568636583744000647504510217821839685276525305692110937015970998499099172956202786826589954605484536332261262162487174264817393023164218116130384174399150331492229312725645857297429865461158075070101477675760315052835930004927358571550852041251581959939597118829639232084320799610435976055547805283377041798480 - - - 15451983073447274456736170627603428244216563574167163880511725481971445036482940343994683742912703935977811264432027878496560991339135071315869195985645561617971935442875764013761203600816187915955145326599912399236277512132415627495522708196976222141425434983758129466604332357592107487841469772312478750741045402776374049685554541641413321409804530915001787953865598776267296933392503463795447505327280416596750672038462406791084472080442663411209109143101241945833057356685503925404354966596414352188768577924261257442412872937732603880998079107872462479037952097682971195513000654925061826984116809375780286263983 - - - 19953480047056571330907147008936683985775058959064375926629026042357359044238292342919668067924090540912303407430354605630699177691526885609355141986426714544010063112166568418686871782764057152066536415539471462170921473906693336702788660447680486827722448942116540797299295554158637377190681233473432629567565477552976851138554733876909908021297368137317732489972606086290187545526129670467683698758682431728148789938565433408242903600965624910908606770266106265433674327781413832032373685257116830935686771594118774996758042865678469093616865909938180621014378252468260961491501524168570730866400142421120605372120 - - - 15839788385885966533458176616371033179560366113121455313300811480435130471452634299427017287110859057517006327818210877882643677345454111339509597570676617369164633736224699943160253162066062659295255396009307749085608542787716554182976988962147795689756588899322258754202104539310354821188516271862410271342448591736682035892969790663017391095732456983271751436038691932060525409245397026930612099659255427177733264692751293380684984139715927274251991203735129958113591522820376368531272228415328853119225195993895031796187311041805108636410065547313788676965166902293546815651134993772204786491821890319655312447405 - - - 9170664711381238473794959113555196223192081587922431657034832489422421111137263568301323108970609785217537328240795334683720682645417458257893563820296315479161228377511591595827982882248973056810351720068299925309514458502185430255093641623508729938072476386976661345737574103704217701544840490807680181726272596713997687933409060530921980784670501972550674177733030682498688456911950279928409216008787340996704220054039009865139972323382461120405958677197176412729048815965776861039344724238932366005881771468750961871120879904684829179703154371702809157398390900118959085464243198789916679011897593992785719749909 - - - 5799606274669704517317656717188438701323316953743900867689055608524381563226051063017437176291757822887725004387981244915754588557406698502161253985002778953871240645023651797307381792006688074785344123456247340814829725704866822086396074488218463086050055967218904546852071848298566207203873297494479761729319051816304277785309341509310290004934872573303900507770548232302095094942066331580701565820125312278071388805549991742212940405230281556555851473662978384330454814430047271551733981972050420561368608589972898693316925333788798781492643441075737876588299899536184204297524377062674556866861255732326480115020 - - - 28061668463144944833938937029687038588058510396491209052311800484393887388931464151996307326969947923291939592472425738239165763203855541506591672383501935575908711929637578894589100879169083677306589011752700177747492190735575201032883299735205605299842664341877903988925691003404505275855949945506715166268425697591904632466782712359664856166052334606320834740998191023213798072337741352474188820443727656489063688124721386403174259387995559285922899568906185211203267874787611890244703801751065559393075018458491703019870795826650047503692035250913731500026777706700102706677375312154152919180202727307941308666728 - - - 15781367716996359309946978510805304891881928180262354092482867817574307445176923379313405469801785774560196825020032511062605652163619914712369025532537905642916889695989930557126959378296194369435884692997905884477345538521172521202771340359567441641004156866735651255247286669147169180718668790590372718981913407512367183849259900449729642989398959786300189963779210279792533825420068639142432150766290439086115152899643960308202430286594147658107953399779839449728785730761209041342326280355304392191935214336115085925001144017078252449410755563978282913310263295143903142706991874655266365563186829329523428332475 - - - 17983308553262630114856625013728501615546473473800347339219839263845559121254324222546400988067570776763915029046414864979272942613951128325032039306916232674771758888967125324757808432560208399146010587870564525281545295439280593829368513747842673160822631268469775072698799828727274020659894684290337936865340131068372028681464298976718683137856705044271872917401477120557573853538725638722927344644675934685364045925603850911574369775473836828654091055766875112363689946929315767554935343382657894629781144547819967733990592497681573098185849571726450891014723394615783492809273619956907684517385932353715649063914 - - - 22651669811084181437909616067779338218056219866474507573670404684904056077287871159764950139051652240230148644997095705615104668081569702374769175537121920738452195422432206040866674303272104125233399901158898434598491645274746090247054455318153324594709296865141053306925068147231057726194872259245358014169429414594506706907928271836223203461973391251732369107338399697931378332529660394920847560165638015227681543792391798564256565126851439635846238395293046179462688024470482602889960565881076365902018139521253498953157110547225580043200569133725720509087249116157032863785208524803092714338636252857174642021905 - - - 28285959584812251329465015630473688404524842089872996338415860136278052795529112708240442862978456920985600590376218739750161562271871466560887416707018370960234266621207432129171041020176179352444179555149992607368500380779301564720063801863754626789842486886788789750551346258179404949963706536367033483566737128179175823397985640477893337006599326606950420809322258598480087407598436199638899117066731580075448568864779213888384494733362145045568121500747642881389255833537346953803517500763436616319012164012510237125769383645120486252729334910451698605395666915239468390682895602277145961282674066640446844789348 - - - 13034262801521551735421951375574374317562779372656674983246830019787127312805235982340896222628701005815731011920304069279540895112059143024877816520278454421902845086831317450016451857022878185989037529732341556087022865630847385813187867229089285393531793790746742027739553887745811779778496205447101512476764858463151274331179335379780698827684967118769893357794569687669049181304723830043477699167015913575892722312298676005021403754729994120456778448168379470596986399286094793678848028704986738892232169185314127029809528982969912608184248807059307215710533670841661170317331001075321219720257701007715546026360 - - - 21238922328112826782882323499762260494186558379162549502928100308179287922071212886899340645731032303185137932757549505289528228560834477129700857968740228769291121647243357203932241709721985167982676186309245567095680850389561344810769299556666280532507037828229690196502584531259394409559377836076906685122478740623781744694123365224548673359838210036536309580380807872304001445642225494201379448032960017162359032087189551131324960365830784195779597979408854300958010861536495242554262121158107761558825596658188086527601978026989835608369714752697294505784326872920880463839053832539480366703933503781835619754066 - - - 20454952889343966482062314390911252905764074928787832203917525905597424723404077818581998921874194176062010763999360446010057942898960226612522951832697134497691145614237916197748905104121054481071181983297816294532721904244915349613258356747657019531751365744609035418851589277045719002206480888273019627944730155350505544689316223650674990362545846351512155002345874143014357195838378021145313447821483689159454812651032000618972588372198029412712543845221118396119594110404687773441736474966816300343692645247829561752932113956807516339319076770464090689454340680862279437066099879192388692474469630311464618087241 - - - 19326926113754737305879728852255869466937369529991532209421486718946888648123384871296621173862652336099216179277687689447095222252583633196259027698512697403135093038465364488071620627623617467744187492871394712346675656797402245145474631429686902273504502483543874228351363816753495598936159629301685441481485275703997412403223919445129020155400809524512800964198569954712919350084579788667704588236047852965745656826079238339893705060889355433112040734702530269795864224438432560531138100506461837059709665143144324211936027854918988642663505266580092419534791284875755010348969339686714830953374489540028797682827 - - - 28325704780718650012352882857146815805797807844888813706322197885908348818158860944891174725513653005098110836252345306581826479484130865434971231290462432225092357118065229903873539907019020570914162096832735025538471028213126581772882775343388020626812671264972711593980903712987761548571642542904912750496138351389288112179473836801953777795436465790143099887306476689260541456199155165028062732927594391276948670081245479378531445022874736281717703990560074035639729973666308513190664344892102450955864798212031173474735522023070594187021426908008623419858405543569146272631872372008013283649222029098320041733189 - - - 16530687176568589415238031717372366333776017454200193593821645764948879297265721123234474966199992761233806716302369662957908508223274577228565352489169371225393981986340673482944091996015268567694767068260233953960979989333798450986496533429221945440793819385508454772413669284582587377622324211507721923178363582691322042563706221122393034582764239658809609968390313852281354701075234495030570600060893220938131964789267250596305495898615980819409146071121605344461661793249886042140250140891062677772578473816335391954468955951249866713491405837769320907639728639869239244348984159407628339174267815341239513111057 - - - 25825219346616002300983157178194840865172008700938445490580412712435202478792967445947720769637865324737278029010274048135317147995209307233504534720211339200081317293128743590210333596529772062197136589293906211107935183728908763464565236313330201597014403322398007846923062726864171813256840604494499226265864843953578076599181606990478530077757043637486619934363000567870565965427436538216482044266099019079211483629308239519853662108812200554291288563342455614854028027408925060055998969820053974723837670030951082952508122554336562005449593296491193891881204277335418799577195117469726905210715480268533060757642 - - - 14336342315581469144722678559186121669027412972040332761133047137691544019078719661201866375956758741775965695107404509135132206944332176001503860676211453847558810426796339977882300441213685405053306505548769426928940622534816322837418038945688120322825219828919640823065322176372475923340620307214685337217600867289988287839961410299767015734736956462720582193137772860060941633189489687411611891105915525278957430600973869629392978185337416688041390649807835171382982717982231623186724572758818266265188892851354381063509364756429532459662057064263803398038740676196002750268026304626048617628413682330123451061349 - - - 17210393089817056349317767157846688454906085985731798694351510141129141107584369015312789474921363271535515789614483955671743952101613742004215676468221490923806148241630058704028521876373661174651912605110132565711269717898739385116358753712277847617697590702526133193692217690419266315365448770471459210756496730830972377616314256773863238043872532332302231467928412473211682069409428823319970830545028411715197021278826696442545769641515645774739728472817932938473767768135911270070136188533839540856220795103317583423886652287563205304077289908218976875752005932048401430262386117762031069821411707720305544031525 - - - 29560952814272106703295456057695359719510810179989429762204756314922829289022830192305688119842820028411904232941989093483535794604465906809168976483367422878624200216470023564333211896846283482552583574922919262830161654006288467174998038176849858098922281541370582106512250740253138275311599779526633616569286565032804939277309319834477182777702187825073646717258425130875504327984483668182270435048321818578938312740464625346908394342355444664486257627620922211892083557408860184477514341420896068133636366958902834801940505842435300603829088332875693541306007105800870805533816943108008455495522391241015037453046 - - - 7290686583994792566640831590340875424392277211383639887951672835549403307445713719940089528462531085422423350552997602738078714527324147864669695867527740597206218513107661194342503629488657984592427521080886070357731381476198157504802058159217782745643446662807339088466292867095698845696080078354173513792016310780599658146811959116503890706988769394781837527949003986280916124356041077304547299856431617681373837053554299396792441198844955333361368954797305657958963933069942850042362620996854784354952466760772560730766951176245592498005391655655805374473928656546842570661843872020193892474155406330065637965852 - - - 2557690072980004385661749614785502084124719176250919300130426942186779517534701122497302922379452662286381540776749636794601852471165832921621551687948453985311807712531368907582374424716878227479173461690953872071719359415044527061173224317166152061914470590623298568944897003815222984062963694041947305876341612922861296708956244346512446989057102335074694157062854040137179301064748517084924276553947149400600753838900363061266058421682422832729049953848288876050439560935748234205439112195205284647763892529607201307718692141138468113211093830033136805870420110397896058594497847968085553927334779151432178144540 - - - 19696628200471453405458424793441263578943484747784205344036589237995543532375647741415989827042701614837510766275817865226173158644938992616147452015732096074523395388502986785655285213837491096101965103775442863813357819844966755169012921348409504091153687522484093574431095464964497412947796074408382086090098649847744858578763767823980043992649459068251133163134915535356791496634352478034016277918694199355736139335754275695664578408910516278579247765403912761263252960374448966926652824595058890933591357505420736038375636884456929051913062040759953852651552788096190637056881601897443328559735043787216942250147 - - - 18032015927292167567816234667904830201525387202257978849880088287759081088408746162062054470277233064748143951105899368927273476102098456585172441810040747414310095756038646687057140413186537339286515603306207310210717937168296090366614172707960205157932193016544363058720087971016210100255397270260798960253199143115766281646610819501051261727529533024932451223601167474379345570676864444994073240251153273662191531823545714424896996016801571507597149730460591333189222277182502907535384632662495614187119334885018443424872080379621155969539917895312386890254835789200645826454860149523324160339551274608353590019171 - - - 12356529823143197352972055936160832001915691570080847651107064405121795559138757170780816051914904764313979610041187175847809326149554435539967967877672610148451299732026709348759099612407089976721006086856020319309488291620978914266752563340058487490171652495870883757640403155046946778629520247999640843847409104054036352642103228669308977116969030143679814262586248192387987229294742976216849184055650615875124217138115679819337294155080701169142873268567731237429201899637371434070668193204583434456651592181456232069521408728878112946503282579593831236918499239150985250026206783641084723289285161834909672546963 - - - 4920357969543145056233521173118334010302551113354002091935464639503882161425559220202253534506990692267696220773575199816403058646456307520324278811965229819514520552406201730499179302229958615099147644093382861503783892843975334981619581536516134035521369352153118526921551053653509637533399409195279149112266821826253148977802817576925849336927355629441113153067655485302788137464071173201868936451306022601453272163605294439802213757379126722428319926437862659709810803622037781123561870401244772443910638043472577001827615794831163769332783167943628172886305511241965976897409396159253465862856057964495536078357 - - - 10307966481414877689732284067831995879176135447336548226888206937323967145942880249607860610585154369232226467406453239657817583773958886836762951079052770967541143365994967555735326195847090698738056401810845917169282552063067746376659395188945235798366869553085769255276672425108270895815540170424998849899204467834476396075146118004492598889451018783478029369476958097589052012162256950146129779509683977050096433949382543415030229813340330305701518139324423118026136834443959520135157240693268561681694161513467629511760955207043205364008560697261727960469749355175989019873832484556417154464035198151411886653980 - - - 26132609427847780566035956422676695282041759191149882288862309990154028679690872996973179417679587374319665046828462981552758978292784544800322381393921253179262019487975339859635548094820549956931670751081762090575862644646447025602178667572417083904627900591463797297634006104446779506503294356673004240182913620454509023849939865609659110919427344561812390438028000933021484822367557686353206794479501927645722199008016470606275274765961280220584001047553949761508175698368773371602518358032169957635085264238039678081127418714532723200884982947323911742343428597152093592637318160809560922209621577977811583667410 - - - 14849714101521929825411049396766058296561367913061605798688235783358701179328163326979759126310736896133084717509057883196446856977005995115616413891206676780414303095894652266980756876879649872637508580350544678358439668186844773270886667436423444428578876207587215016886607985674311017624413317149100983299228821929998407734698044793386151880909200818463092728836883524506704878206482120885182124908000081651953942171035645208008165573496893870809713960719966891408905660813171222290451756891541482045961033116516297292364051877710236689618341258649285955972969288247624402489151489316872008231989952805942440601455 - - - 19809697944135418782803789185423734299770520676931340506451543061159603431008981074151189979413616291627053806591210694736034084034255344334466848049825174272496227305876561048382192214043283271272928573118004093419715402958798316100562691647907105393318316487198555806139040981047465515768192250449975696157636199305488390318133965358142011620093678698260706094695808322100687062622330885724238232667639758961061610416684244017036377967798880592822278394538039133214791113227198789521035311099189950233291230303457991473011371743974713786739398751285605656721950639724366600062025904005532730434780771460077766549276 - - - 3955336255278584045522866728661730748103209463260032252147899461298485589329867482622415700017513823072113115553520222336490153412269376060664286396293926291691373997871297808554811596505806096287474267088114528865193525100318690020109047850673568624818484731320944968207291083251201535425214445468137700399727125668072481918610350801249157529633586528680517468717120894600016970971078371809788477062574317915887590022343736523036562115612508369475950864826924423317614828132070605875468084342889044648178515722654191720198058160560891681268913743343586650074638982799118751230216046729060961454053976901362496854253 - - - 5860623172579119366005228991500451123624928146794887526699059487955298606713881964326610602463732479853174316704357918124020201833543064125565722174604129041401723017852778554006210220902389251776562983147613321461497222959418935941552382691855813903871232724447419375104102263517362732914397830892440231412180218896784952613371091566225173323075590312796863219782860361058514059413615912947761686581477640645064954829046720285464713864094454237697503271625560256894497577831383001893623156503537195330156704996718359844716800435141072273512400781988367569346072456603545852796831551280228007342648236375674109083638 - - - 4005559684742655237183240700864756027642777549057020756153010230677457805149558056329515746226432925090016218174661381368019313276293257484399174227247517796492925643641686962591262292850083796966661229590840026691282959415063830978352914585157155709753639075572628508824430899906698136053465717038007692363684862236776955949806381010063373705903616191151259434223005103157672628476713190853541663705963458592376469532119490705639107336315943614841845465657675384221759886610744978735685079396359768094482420425808116848906333598006739352299227103578202500164433157415252866432394703959929373583528525034482746092506 - - - 12148838378956639635723260225448507755639621398304109282367664088703575851034317960189791676067776799088545681600459341600267160610273148545197201220426336018586957283232040317900410686812948407279012159443988961680180610748930144124420683217738338627853577682349394405542269524541442347706170884508137507998715706332110190758867458863370451195220226737797670611441362609886108392530172974403993672483082459681491874053647348455308013541309907617206616347566694118031871013814895629603151329037219862800332300894853724535952380472168303174052529815152876410292175318231550486267433458314984710877802012380350603052728 - - - 25228600000825971478328435778906582780065011734625473212778781104598919103697571706011347020243415743666269525785584578042131652032956387027558792235535395330190261529510893346040036411637965988039702492640163042539322768245160981757797183323306922947212283596360077457749545093714660510740390979398259129229728390105808776975977651982907970884610083610207155808820403448797934342412563499321642702406593113890551693911013857076111922263647773850570579974038397663398928637603324296286744565249413209817077774122567967749382444858596606482111573866986814271126273174229916964064226831832917847090206423498022579996696 - - - 19924351749614854328244723456154271857781868585484001403409488644340407177154000487546749851056545004016128988791596243043780201434368775711935404744408450739572296105059672072523667162036786158772339800443412477508280305373751314981420918107612141382724833176183227347396269065662789042351238714756706208905995609775925681160775439451775176528647098606150841853940384798355018232266996248474822874844797709698100056234753739250415448350136430516570060419040348487467905084035507677694813911762708851440890590652138579708746913090440099739171564256955157547477544262915760014650276263427925424143728894713369944985063 - - - 19716912924350841955132135974962594500436304946715958389580299520970317901757556388000203620653821383394237493550556018955152908903636676071523337503508543125116600520558533256983715387566132880606556299650869590146338896068395735124932134905854004097039652566516906978663112181789943012160382732237326390228942545194086127017630460726974773762791992060505788791840328424349117575006821435307980847118696085710229659767501743789131184938878975838157284257530488344583215585740915599820850345644013323253096562354080071002141778756900330992637989396082245775352959965594276037524851161887475837651322967530436783066633 - - - 23856490583683410737073217060087411144360034001058838288696467358303367450379440927737595819831937792957592510858913259280267782913342213136552871863180429651455525426584252157000180438330271128329443958228131837677139256807115266175406096881776527483194431070753086962017196826718130880093577303327404213016210916907683666181965953796218906536908987245006032080874758153963098467567000427025991962232770415992728858330434563867640218740271857833749942114985625151110375506447978170008241971594149058460722682887465135840149317275112284280276668062153312131337805090574208450082632793918507640910912598028414732425072 - - - 280799356422385251495224567279492896550903133147558076805321074566067362455779563167139655660536826880112664751456400767191359620662540553972965825640004766140283935321951930849654397977472974348838777879118406995760020939839505598747286374202687062751341688078345730201451176088559507169849454005163316842517515491684262191588447293862313233643331472800055637891257340204517473520229188531956429291605008937518556831650728897486378284893862890161335960776465072329065911851951599819534358159749384061844282698683251912459475092354186040371892629928229330229677983807725605477113609403459095861148372112664206436315 - - - 17620419138464954122915841501162293737553009947517670187529554474477982051068402387436342196322174560794593450411108119445733329543312153831457400403529984567825853102624004458716033744238384925690737203825424560492645612567571671406861089207067662345129839921299496538229093854269131849064167089664457005627051052520559214765179360049857430592972632003628602655646883563023783799350989644016386042717501559960929310179359872494092289200871955570457993670134102284551286511502097390015112309630880084876001240870764568242533975160622816737325059974258535946619634102220151524321328717467431257374477975748110949167752 - - - 6208298552166372421997055660737487630715012213861514314019234143397323350405911788428556013203707194185807842126269237468466157168942436579129520678398227729664303498135731380105283493154837103132572190053665020062556785537923956590244476543090390553264230654629719313547182869598380091057797152452725254840914216922379952365317011933084185963656748336197355724376452025495847727067388471823011732587771473488737667595509165630426826134254395037605815232887085655225077904829875770752126414449862382984847871743416037232154552654013314119891526481451895166256392621274672542871476734665055875048084728395852916183736 - - - 10684091324717858075126479567437100729043588228147275341535125027385232566274489114489893420938619003577862154878965433981964042167457901025766165078435342822159754052650383427833165967087719779060543600209921039139942184761336134238266750832455922207316176561072008801418378206690206727197684674698019006741119555418185525843399120787522084579832078025229499470837245432821857482655508831403728490810775564741124621102170943505744616547609965636490406230552865174199097452761588241523518506627576809317616064107998139748325184456771379452495031270725373182818253284990119223982527834169801604086414661159519271554834 - - - 15683962625870348043272757857886721641477890728830229032984854777367839991435220335582804083714673267119283598943337898304868256045062564963903339439399217298163473477271272704104228410110005845864528768868119304126820550423286179367111013055706963227329753380331497429966842406924381889547000788792624872897336644849041812846411485131664892865768207123942256511713951559324807758449139977967761326043319362662599318813180715212609248945115300883931673025000266061577786624125765502999846977945956423776124921137380839130021952876303358614137260788589866270120041598452397406842392744978347803360339624160466486061301 - - - 22438600322851014382690150702526557061778733423979510608561878048338261187663499718207598134230485713794768064524631589577524180044564616009309419353622373726531814542783756977694842130528719785552736227672048372260718621263745234260134481302291978674205978265579090099973646800231085042419966117597979974412650737673816914685753976474700541752389745134318079310430743110904302580154184694619744486358175132596026576012360869958085497927020615626180751634089566706493471735178606677198881400587061357081940649221905432713548673666518084113762253991859162243939224621516224581440658646442816130810125703478523895376360 - - - 1468443822355778688499137590113952209325623525490970945760954881884398087521490466071545689588621228953652400547673490184444539490626290319590856690687373690650958468687859849001075011662521208790044899845566060001138166893328249531799624254450663224265318663765686786991585488663071547728251037916821944697430890175118539287403080118833556381496994972626333009085689166603788565269553831221755213895106300479045585920480350769624896430396785837153557642022429584856445599295041683087426248979444818393724388360505416158561927952206240522008536902559237354046985337264210974409382562833815180038219331226594080075434 - - - 5759833177447137370878627234970749355092166033613032849033044262156764448671076840542703804968900240062877055691951619627553482409726653786695167888843936342944127051394676157648355435009124631245542769417642057706521745301726129744267773009513218368067127740184858693107631028374228787130832715613726083524453327526604196045147943906313686734304497199488875125075859981325751929293340290464928319663230218273821422856827111442784707254506362512601529837837957225193757764891073658460261436358745155375088832917233027513206983874657965597327405254368338404830011730881175719752042068789957803835029555895054617254838 - - - 7720938536659800399654175191620799879114699377325040852697265348703600059826740449169590121141682637055691326710120202277187874253249473293865083156611065229493798311440323740248242375383640947407279474300648008724751362302787269553117214881705463915942895869618023689625105654766097240960557067175654893648854643158335374161811145112155334042232618982831718861500080198483346895265335368844833298044808014508113833535685259890064343790125406562231630589056463804653840537683046819594380731078578609010052642460087647442380262609111978955928738370648433297215623201705805899488862626299643451349806827169578824146005 - - - 6380663343576377206188231470962282115231119819048874385812681969838808365005667034626893472566178479137307928861143726811801328945223616838170757795729355862766372063485552041180974852063163285433544446821629906825926616112178313402926400765914534746779603548437359664864411874112036437005460953397183435974990657574161651515812690827428985166154780150124576151153846845569335548807860586962163664564075134380989962213904460718224893137181127342284940647903058371526171273854738575822627297902027995251603013300187504357916478860462906264683847805950899003570287252572843625403078225611346991800611259459154208612320 - - - 12587900606520810171223495126125949180540715151714755588079122398953468072553916938081328568505251994496437252373662655075372185011121462949377114566302591675260080552067175402868133862558610476794289277655957554593350757701509534123880852883944173711496087161805935403182395864567370830284438875150610768361920674891745086996926043110783050591987736732927080957939312076133287332358962759928068865586307930015134744708555034431851134280865376407462803298217715159422293715352582229336428641816868564580069572557646239794642558949199498573408839600439654332634005053908531843193073146841964794019600809314696110191227 - - - 2102142025614296683716798161783699221064597974583337253265560613655418646103866280360125165547476585200624284270524505576476935938435416779301506101406178940530267387770071070805418501432539688792277385936731917796804358010228047464944601108086172115045229462810739759264223624500031627459308841073002587651093943580194416958679850785211175959969735312383229452175818582448081791634456727969029247622772701844589916718328040426164182819321666752886703044823787834137542644965119907562996783546945893693353866700180948572885792773829996757046612608542920917655245698959105518662433786351961970562756123088300386481464 - - - 26963859836167674625307690880260672542765565283691281537813454280016498210313150535080760464047421390487094784475338296566868110821478489732377193452156042935773735426409272179359569448891001024047977298376548612614321580150940628255322587035880160896118365109580214615747326778456965877867542882943124975739022383130904939998633809855719051172780727589848649348863658854522457693278044445616060414824453549609810198947356442718443966974896378405274133345138296570450764357872155304326193917638973643023505388124069333620015252543369038852549129333423303050510104222019046961273966521546195475711663875271273531519059 - - - 974799461596144342040027938467633876565000639361195968083096586547112760676670878254309760422726464180325460232146152456626845657152641738838905590148819088373761569996690053082653600883732347986842066027346821140628949019963840144160115202217285262043950768981502657676444666620247335532475447850733361787470116941531531215221886403824638659184714740391636983956153479439638915496084701247620892750419727424399695186514304205466813406973957303072937044555429194896029412342038717101552295183704298815450652645371836532595601028907372038285540614651642957004845817742714976745451841853964693677804142404056083946012 - - - 13786779878919259950595650164530622358031903334986539183400433395182519631348189691853958010059905743463898850127935990543930289836449238661672831380149381288073176350075532858537154745059140221737225765247353168517441207957947002260117301022453403289152623373192012479625436410275329528693088149129902487129764855666947808896129056538961214773847062732147052374668377690227517285538904537332641682992141247130613848991503619063283779041900254529579492575348403796469139100237967451960174878017845743919410554756733168503393040505744301734533805348171952892755759852872423229057076420976989533407337953328199190847712 - - - 5915510910064922887566024248088814905053610671661471841527338128795490604451828961818867018483263792782697775245005848694877578599683081669125321826246574781498443591983536197205090786559098993859198769315578743334475571476783455097194135797085792573357927347362361166215960019840127288762306707988207598183760050014888953995312598057580580673076170629354830938688607807898165090992506713782486992719071062002206934901596069614770654378406583696039529479811477547060976713947251781217184383286520463959598195737081513637582729119654317011149475511633541360345771062276021076348335158345759918516693446469380393921682 - - - 13209676197440013339758137591012845237544499847480032744941653550903534992098784090353778631485570392050173902968937702806600702061070208152743499631781381465884706876959349891876119486614142404311090227263962294456493702812097486818484187350285003241648576352120540408050200588983191487208778771918960664933273050676064180536480677523402380847233899259771674118404180013387033227654449986705974006568811500926768442711080422584312912541970633503572614734610342281943416054221432761417723894178865400839789855188094885809454039311912270924433783058107181510228358873234415593665286778770382469459937386280059571434134 - - - 7959596806169796119241187981939695655653613195061211376076341252404785297573941147433364083270846256810493468434407186804122936986123358875280980453486747961549263858953218039962120615545869915908608002004542668798137417627456170689746323595946462968849886930743542663180550363734197941236854269626472412703926036534962277800308271536593147034897305597845991868755245983296329963247629313817884827922906816732272149998571211132973253975522164042364817546968387912404976721569189733502882386343542304140922254695718501377213727544230229015614631406597426085130762083394083578008516818700745416358919854265373199622191 - - - 6162624772038971628187583721000196357504705890080641706563944562818333669772147419256376666886346279712739405388890576635866482804767960343301184930468003571113527916499944554992193752912379564758130544706057645799577010928111685067427472094634291558863071905764865005144752399367321464804545367436113687528093975175880766052302624044389767850928223004462708542818357107080302478505972926837175595289812652888405309017096068710531014402974957489518171071618483101588944917241148996725037636316646161355792136819096948155610681475542890009372420172226312630625358358973463059923835230608584545590973050450616411742722 - - - 11503618423309380566470594793808246243736282208847573211195469697872553477029366309470760835104036164000083770820007335955221156166525782615815957894980570446056234674417269056667756921676873971963246977476209325591723789702040254457242674296762563516910381690385852629130918302515497196017441188163774869642914148171028469592173552957016509268051963982181884957695141045289294533901040485035488772065977579511591031223861508062042707696269422493776566397562258789141902745469064624800582146701173036150109414667320421442445308091083319413638322945572007229072092806455742797214374716947258526172660795739817740454959 - - - 14321032046409253392319651978476384009370533500726671962411963949332913748825599207940556210058629231103531227301943767332440392667030549119583031961468735908753458055640738982352953651015825559742681202443551561982562246634102276293148148187476737841408911826911945175260948663128009478509745600495791526127238543430152718192542803886415990374284788217278110533410828985471830134902615997192410728557430097731095532995103266435646655028530054494079929756649796841876068877992534540416084012468804004410722521250015765550925883444876163114098822799883751478214553953369730828535470803531845984317424004013567732605791 - - - 19025137790277546416867906503513499395069845123009102425866501695093050168001612530983303078097191896390743111439740288259749991326227271737055545959489110904810061249643499518032511021782231156603004464169218957561091849229679532577209445900288482820546748035571113503824041031830805668632718072755572356392060823138932203098940586715500534734270089962318794322136265346454879006759748273582081484143600906261585516621372173041882522183630179882783928848139416543604545393494695397705388827188771081916502783283539053124682906200087083144997520771135613119236778452064340567460893887948610779828105761294371882670681 - - - 26388137319209997037093465666655490644490268243654768427203435030176087648911255882345107804641073435832615126028655481423752533161721289353061037682602825625253035326211765245882452418823933840654941401197372962564031858017165570171139028429404795794134637434466281567434447168461875929687007365977900500710577470034243204688659264379968561685149346597128899256621512967000648887943600083730692244402041214197666612561652127164812241308855034138582493814868437386927715663598806594553731254028643338581720703712017168965285917503680500797483901080867328435137727955941015061867638238373553698580721742118337311494869 - - - 5942596353361338243074953164658361561489352580529855276595686269322610542458522929753531165998782955223489585270958584166120204943200151078216876395910846421358809558250818126065268250932312054165185659133687796020018838440481264227750226203291657090650141167597610448028985898441000336774734340212646030220593469425544529537527191323958361484998919023595425982676437353068844116639836396568367997721317413132186309417034290789479657837960594198821552717586906838794479199632215212796067650897303458381991845353132609133089057414263860874085585131802495234106426811021668877117290277747344129379040046715567582855219 - - - 4931583496101504899583017191004355840723057968009697367891756311478602796401131217463738146075250115339913730976943916782895064781956786576127136267300450916746468389157741627498718606845878907714089113759117262625368821425303352658036233889664026601586971306817430535061528241096218765609454873807867559471547444919319045692238717719215501827817054890336370430099315651641876700552428710170301379078219297770184919716001610107682740969087333432380862966130888999894400059382783972114877126744928549018262742365070850379787894470640360558703269177265463141475287407550763976540206218989954298280647077186921839869672 - - - 1 - 0 - -

- 0 -

- - 0 - - 128 -
- - 21302180381905815694737888087023863943891768894532626927483105775835746969657543855114407602458856322478709663128205181651497762075675029514119538795074357253114296567270959064732387721953062658887317004888919562997796325178601247504253620190089507430259662192316292363489664376223179630897301243361160018331927853988301925289801722571838752299987944780410769199507472008237250417856076548046152338230035184117644360228944300181300241138329785241373443875434706395416508148845404210282530804539091468695763459973922504233339057550663953611801270877806706261554374152888130693144280131181435930446642900166810153798673 - - - 1024 - 0 - - 372005077933276649041099223376330097576325931650069053883881103540295623177520305256399423023217653232223647377901655061316556245944087707962780101518209810773110635569897008105670319838227386050812008347178782394952080219330569489252772469237732407096587402874392594847269007412838811442590508714830628192749102576439483330698498238914328986899876579070059932331076006916772129879163055383572160621417981399379629690217717283426822640957197394498595890704632084952298623001647745785567622798022792057597812436954748724143084359448718292915641109767245402076160460864846430486790138075156365282425315176822577102164780821384755329368494870777497469911708473110366716265952138991262895904240717229482393941566822562202673492694140784241749631785350490457768265971261922698506124379964310644010618908510144191026266193493066800022766692586087444108145562352529156212488339960840314382956715154598275529452122124378253801562348364560972984244606319353661380027773261724444126689119221399928499801769987695231006153321914716886656379282810512297695769972610225014446845473586429674643602889249559508039802582637733629689998447988401759599154903939697129496231765103612542331450664618060127139121846571549673351917017890087371694354403936 - - - 300136808233009477906849424779026192004618220514984910955111281915220850472358497833575448751108467522495651152562153927442139978005281710848361317834795068746572757121221802195441107452099872671211860310860628805063348197541975580484416488948461539042808278216688450951363151426653699366215846664712643578309201957765835310802765923295195346114241207313583746706170197364444732333123018667551908718168907917109048135659069802078872975464868695690915793716339761108025422287336834585762622172953077750630620787919601211437323466655708312057976118360449680197455391805026993299432466630928831440319425332144942308818974582637952893951950343010733092745746352673012517334584593399072014391661369234271011277337014990859473617782658494525813774670860640371951470944601905663029070083526232773398707927852657741472775738530455444985335010803619584316025769998188669170818816489424608950365484776106023218950405677171914682616663943891736437035560452847647015588052088446880309927630089026742022013732406178800315792356709478387528937906718892535098661516431338760365112641987665321924635625428839636080206934966737860658430468217517098360399941351031210215292201000129180037563976217124112479335116285338783046126413144817837229510475338 - - - 284011400718059408908686789164182927492853914358044644275973022459163933506887758674276051376526903645379321494851682961481833080303162810604879055381546036214143701961504946171562989594738658629804279130783957028532344547027803435053121697248632431593335349447365835728022460002614236470151509178481538944075998125984353620007409528528076562462532283674412373812637146719198107142173621605501916199817323589080762261600192651937230138599541031965011185208957579130815168893613350968843511659019527689264995938804526353961497262389787692859559065044844154826137922998840521021387326824228038030375640943362037527290475048831769202961451501520836556222221310711982891889286783331675522479195636897641292326911117622194429634512847727629468908447150727493129319295454066292241015444552604927508304890176681525745737547494101291563081111281680640016883648920949482701153251767425453392120483825911942303726095551765560507761313055684987044056214355601712445579643397770097287962821954110866422836786520222737291553158667997171199684998746563430182905537635503459045693649574503437245496892951815019490852193190082823065194369298708010154041308131679335038381709614909295482741419076780700888249102681705982339218035163490882709935193490 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - - 21302180381905815694737888087023863943891768894532626927483105775835746969657543855114407602458856322478709663128205181651497762075675029514119538795074357253114296567270959064732387721953062658887317004888919562997796325178601247504253620190089507430259662192316292363489664376223179630897301243361160018331927853988301925289801722571838752299987944780410769199507472008237250417856076548046152338230035184117644360228944300181300241138329785241373443875434706395416508148845404210282530804539091468695763459973922504233339057550663953611801270877806706261554374152888130693144280131181435930446642900166810153798674 - - - 126531112165878109890699092732738288965498117704028234137450587504983093076403700987200359651060721182104054573802599869111020766871336450702624014633497737254502317617186407879019389219990684397620082933274239004799493539608352865159159610053169203138378342125536067377613522201187046713118261508719010498316917793427860348614920935926976040258337696470895552009245092279005832715781775096974490823571839676083867433851931003699240083566743474007759307749199008107472232713537571736875417260187892302883422369610199414066626811562870693477234403435305570673730407588849848794390241112270541197907313150595039681116070926506934136150936484904950911845888242249794996127113885308329207647193604527230546280349139163103658166896970301446549994026170451869649714565322805364084388568807467039167992242494521515522073965704922493965747550286150476010057429769042789427697644697156596475836071656639548436295755471314447013471933011384742682668040466526661981933168379462013212283731896991997022089658799052236007087097054441923625603164935759975915522516076295435106016148311132901523212417844655647700270158640540515499369621186841685067653324229767816038845506699183000445459493872339515733767569778571521917810684415618304123152651688 - - - 361143730458611824657177540766684439058051437212129172324022213118690907918330983532553353057447143889110591886326297269630709338537810217539207561140498198065936422809669022067836623542031894469340474554591971940423968115738087077613915446099226026543320242234905585483621363682492451876802427534039177907690193030006282228649566000111480783030153329966382735844955681697738553061626829779642354378932724477674366290271107509372684957972130683941396833107171932030316365611344729958341237675075289412817554199879808553278265068135938130024945405787800868500737658486006387834253843276932307981500705201088192991310735734222810476359638180008281179464898065266719739910993474051978982433972797808708375428139943419124299551708396969579074726288123043824348145525113000797608146436267528084696850215404456092127544425292953337554495741067552721629036409066086234108432041212498764142854293143999637328679108267267300869685121849115345544172558040632684092856260953788016956993480575261006464025648291830839155712419443355280105495845331591812675190922387378583898002306045071522566503466449139527874269109049579436306032036069331095969490347827199545156656797051416032545613200344335503873011039565871436808842688842044336078720103905 - - - 335460921583790804997286049588082408340253053796458915003254470901954745055175000905585264095829123678111505468997278822425044959509265524075727833577779720798945962511930833388295749677930902895487928650950878442555597225433107499560526416424994253562923951421259693727550200679971975197623565390857332689954651627785572648876547900153213440283575890012291579650475499258913405170732802024190031085445745416554624999115152081022150052810899810526974261300724481040359234708586695912864426138877724834732671591277809148440669423580303712089103090149558217051668130882085413296754095256248164063764770876053644574188862609721936083748519595536186650570168974805066222250388925912532817192348795826552329019824965807197596817457092455061633487850657651617456115039965878566278309410039681538042223990277822844097473063880524230701174982212092379872872693399539140667228353500825789912316724525300985110600710446465791321539086527301505452462569985787867276310111650699125490480854967713901195470741868512811805461520070203334600945196546383652039613305643909398811876516155580082236758383174270162059851909049405884443688170743162304910614597775009710026847280078110411868291642104452663041785911961588128977759477204724696130379869587 - - 0 - -
-
- diff --git a/src/public.regular.80.arbiter b/src/public.regular.80.arbiter index 7ef0125..1a7464a 100644 --- a/src/public.regular.80.arbiter +++ b/src/public.regular.80.arbiter @@ -6,3086 +6,3086 @@ 1024 - 105640570737201057902331884997095241457724691114154926162201099282947501191348954190198021293977595938762887298770443727734877848744309115297888650533251772753954910571680864647466746682311189210669903695354539764988792993683501504351252228271848710934377802080658853554092571597422816160694809218341512603157 + 94836384803892638824117995789132634482195952270868994215826748984908869153793901088860747241224696418115703108674302399630637671188782893273657113184864662690443068160796842996671189834880158003941516805722263619284432858611075971537413772136662438909421338578041148782336924983435268250343719081886964959801 1024 1025 0 - 254426393409213119812500080511218073488986683156618698902308264601064164233673837231902891670730645100948727708659354996757750953015435928946160971775262479069071516939075974729412911512775016046205632751600580466641001876741841946332307681191626228854161005610722185368896552030155203153794792910467687213 + 28628690555576767636749697774290185491940279513676706241306422890293703923061800503953138037347144087401922827665221638014945985342847864551153541925981426256309942606336716126401392680335920838438810065126576356377975697801204103582696059784982593810421090414224431668947405969548050595750335080989525167984 - 48521419293842112448734124627737984724863191651349372852022063433687616568421517617928258687243990352907119849201033785201231192284972310335759349964751635578165476166224350817717654057112694329326187426317362723656106215681670144177055801840616463280884798344508255091034412963992654856352328482485211649872 + 12704571413260033462061464754451074580382114173014224139014431276115694168827187805293997125113272343311324278099547730111636857343918161732729826829503095721079360301154347778598146984393353743303710301736898535862952817982088561340251050785007953162129111657805716500514120319695870467007573825409063699688 - 1651285117035417772636797753723277628117911777219478040524650886625187925095514004411187940444762486346061316374827707270299769165684631625850021452878742510816037385177327372074076740986189752721319164032791373321991181965477471769246616028768661751536934390430547010559771346412598126071548379017229841227 + 45227515007551577556218807394554795639782554114786566240816377599870659820546368006941208474813254386199493094911687799734757970217693820511125139219183723465993685585973309515639497431094006986068540552860410906344200121814156940685114842748826666215388232186681874215905068908372768496150840584696553675722 - 68516326384484314696085400420023800662605057089682204786111265799504314312237962052234510618465524660823716515925745214382484892244590708783838186295368694042296364894351001376760614183643425858674334764214312089122694960922054591735886485518417046913967303706181746762922872477432281423770362246580372767160 + 86492925491879434163914498450911657748150417249957478758084086162563205664026800151265448125596380943442372439272136227989925642200754633983103587916679081758035690802079500865977773110094907466835700423213457655121075772534776196297203229657104751498578084275940964029360375798869141451210851988376278109718 - 35150343601174555052961235318856065783740471792330220049022589104795569815396346545223399378125940349573789003333749448471722148775499221289094215634293064144037818696201611757141392581830659666995841452613202129606524126110431906029667792623584023388362242461639627582070829577261442357245233016640301261939 + 34169033322761192018370276424948631996199772331518271559243992239356341910132742770283049384839569694666972361644863718702825173681793296884351860361980094070307601790674146336993970437100512350349702810418222458602675266977562851793778848360775113646088196648287899814441069730802356606940617848817039500637 - 73309768842163546425924867891941275643814975082059713640073120829501179720291490474018921734938562944300851439220091495438377984447889066594640964053625615914686215476457590249989251473181004261668016309426491775204246860957460077362083918134051711405704754457666588938834146341304632902330306085001166751691 + 23617033310059654252479867777809752627544228003099634204116368399648674949222872702184711948816864198585783888739684164688625995476136090851512108845578157641229762272914787372776781293843183599428892883531459766238361726217665263839978835741638943885270164923600171930484244266394605033117999707136140523924 - 86476530202897747244232771254803130688692576179504707781739780898695935298466954706296353743578036896681023434482859637834432319880243920288378181091525452814167187352254512784539486697506945196608091043544141198733699441443352587423630438639307699059022563343249496435482781074271049564374103114206095476817 + 76178823264498322872026689457428571290276029860221063151039075897883830520156452493341335999154306366898316956903981992758809289493898717701729765994959254737106638982631012562834649725117228827909757771040101702706971237450667764212367417208733132928866149829798703383858416218714316107959063435139647797474 - 64172555071911824408437210373106592315014097665495548591652263714901095733290344608783894979303391372762820891348965086726173254130261462112738448925447105669420722981384303722563837542519507976300813587409954045379801598101462776289930648440683995474409901582347807931858496552922868246016411985322899997605 + 5638557982272521525189167512579455915021874798158896342885355199621907065483735899043984276974386970485059384872870484358944507706508882965643581920025879129518569034602972023621135730019835192511245731231515787424568467104605292785348797328103204493245834783555930592238776822953619374400709002986414501829 - 21174550943622060685607131892686662797366382180287143197149451882026837788126029069281247455536397794341366053905702174075810520193091862675121034581868692668779660361271975039501636213542334639221457346471197535463473979476935840352536090505787857085002356847150545001471941467382115862230332912030191858878 + 27480357729131502436767756665644955679853077993052325031138498519526165314625672915710347010850690518666383024609720232474399583066580200962081230950834133097595539593474609988589630560662293551254129039981028709780868682077806473609246482917392276176403914626605057356963162132690807940191107107726099548856 - 3683634110737494828823888126520624673092690423984553950221462157980062656017071704251821315333296324580902349320057474490799177065615276050699825668677864266249667427914185802851675570306135735713764949531620300750412048969129356224222779731243936697543580444021711502950154767200807993244965750441208700626 + 81806262851964456317711834014755776755356920296696004611648966526162434237725491703327615945855511507408095073269288498873361391540724755443913316968029706162380509788381394222544068022801297063909482203133029231461606026525117582407807023968949029541939572335382341656940489991762359806363948292889697571910 - 82142474323708625081236220805075609052756581999812842655779778811030452284057431416920069620177611111334275468239935382299485382867651525179218924699070594131011659398348568645938151258191650503718402152796449954401685436584468001651446258118491555865540396870977417687763555398081732356459401464855623225926 + 21355512868834606251992797328324414480054758010899398627061213705993340685290586987473873677178850523791712379743214662323580443534520266725491966348236567037202326214584423131366143717888276408085715981466588760396791984486952540781326827628144001879710643124410128036812807721668622219667809364696705210826 - 19594534642389287971004010423034036373398433517852478747776756934605569074131129994961186349584079971124873398400106024375616990549829100139100539082963351352372172018763505554826097401476453824766947866263620425849338823064047354028011946115201690527420505616884386583997501409355373908092238647491226888927 + 81660394535628823503892435093479102450629283684673527514364826992550962747113264059243386352290773413740471240591142165398754169138444103081865843549746034865234385392073641186701977361775527784839594001512361756410820717835615670847734053472945975428823636672357334192351065772823196105914902710856491933306 - 58602321479943079394184652293503542136026513981391516968720064934664497141217474505639730659473789710589649497636203165685301262992452984012533270283603681223888111106227226087047973683392749369076655370940236513706258846320899297442129666993345704790407497577078308702707212005656059486607653903115872661721 + 93443232343594221280116228685334986547320053798028799833920740940115107372631529652567009057048540447064087482464786372999140967311472891288811816116675694019255857206445130981965995851326320292615637190280200552347680131930564198239840424735085657760574337415826881269773051246406482015670407479427971247627 - 93118251234131149802755501836196784548426694517446694156574361592689074271040998908604347769916980559400103251313305590198585883365610644490753864667599327068958215280150392391204163048896391929544834012752395870259006100921425719603031416122586256722795382788900656034417944350232589995705893108439426585228 + 665457753462978321958066826133699345746877456158588620987637303190348021782228758129424552337789919840915809196362559635925074949969247448712224096416225490789807892698469361515538348896789400348306427502466976131467900408842165776492299599591866647501587145010110759124967847959274247283855576734021311255 - 89629662397318968055466697738599000231900379240770963105568600659983882668149491831152763936504470683156650751182340087909546183795022664483814751763901493392850003074603857213920620729497528737957849199624088452351537127709446795579604359737738914671215064616488663074159776061394267882415835856304493904229 + 87529552450044278171665673267168074518421775113755070076521444611934885487531844560650922788448839723986150001942529112077708402321635785197160575103073847689711454353305862439342464700271469704892185123982614298336173720945839998932284887028635203441153300114916201733371937265080280298178707023929366577144 - 96982439454992818530031821418691139010926507833616990470843119433340935999542257645692081933258030972563943110382857119705064216876045999531772836620423069731100960670496398393567411362772437392341835136015574784422728228723952753561922026092264497567669617311385622693353641519911133561339998485882553559666 + 46733134918332451822552461854768825469343265193931530101433280709527275715312590197162014516313880636995837687605499173972701076546820711699154326458999534818187481927255346245276546799162148010363338346620923542716944756976539233240344520945377392843314813462014157492564247997153200806905918815307212595200 - 56113811556103193045968891294564017533789468444805556041736016386303698359247225879163911290356445535873134651122479509738282722880723158290551429590683251537013605875437311822220703149877309593624245811941470640446882845190235036969544591076666750351654892142029139808388043036589783142088273428339234599913 + 12013709506346771852456177841053755601665741539562110091026384367294360537639778209075406205367160747736832561115008651566012049235766050442587021489952341183905561440090994775681745848616571811926564632064730679821253191531882600101381383971345689823272231552532266937458794232494271070442345355001359312572 - 64940016078234183582447429648057324061119225780196626431192422444313009972432954203363629162779935293343145535962152508733962399037395510438341473403204317987081514941518842686777711504170930105896736119025504555953858624474827761294252643824749933821311822886582639456125160131846149530501582188296736413027 + 34238996215210005673344992798622722522666913078442948193692709132286641592176947669015425539971581021871048377514923213443736740730506734786714747186703971537962660411201620756192890401314069347973609755132641866318018348179059884667992269253371972872850660369921415186688033221185169189546660422117754594687 - 102967960578576034586034551493375696583170453684447409506455781692946542099361309328719581812412461189420556621458763050277640854264561641781831309001806648725637740874017924201312193203763539579047858430000809041152929297459027799861172040855146481120328052040817314517411748730336864405431063265117999678231 + 70701289571536034505801552101766551157603637727319266012843079614112040967312277536130829722546500858617347890055441421374083266267321224231143599611417475916435970971049236340049754006261198694129562167759298477179694324773038550281271729056432913160625017605344086304416115979734180077456811896749721596052 - 16862538458729227109252921137003151946619988571849550117421766027512509727462563365475142402221334010629443195227565870564519605875539737869266708997899234710773117232173047980304826256055405976343687968491705375735751720860544250463440111258258487930716127614511858086044543075753494836578674654933642355065 + 50863697030073298733047607127396119023981100928545980598284157265072623857852289488246574201586953453820278646511521621037397743649271728577924818919827320673688332267392767860934572270631871355899663858316347956042312720476642459693883050648195789347630752166209094573931739290220063151503122252538382724849 - 43725699099984266864147606217777488440378990843970572040090404882211127886438834861719924713540605100971306092066689816625002161256545241334228244418916241886471267398676484375226082310723167722381278807311497524996686880224489072322851942627865105267514984942532200763885991743950814601876560518302621974476 + 88233092790171925307800819173305883091086435485076482146451117747744223815427840845940230430532749085835875160052759856167595057651183816668457030318440853329655350638199367531525005544390688410665409004643070687049953762146060828686525312598479691959856022057136638298642742832263775364257770929572822722286 - 18081059254969736445934592099251017467049033120115564496943612421894188130438528663970235664549363018494522397949455896721241726938453805484072021533692075648535117625794137613508610347626059768952351507540813020269047817215543274347303932782528624842265040246543783275166101470286267481481853098301894351931 + 20184259913213495031798491142252332760244638612666711744243868210182512105548371052223551606590888964166483590503734468457528381586171417923793589503442357186901875654743449889269167246060124761202000215963980853684312316212537419636288268480351261161273258098032552093928821051705628969362153071398853906503 - 85239274704488613931259917419100701326368160150324488647168085161768191665920888184011832448843177293842436436748764768300023633895429908277847102133114520075278637048219874164140080985981730730151944927268888063709377453869426572977689095053591655224189508339862937924923104048239679258290835105764863110904 + 69672732770109565573907729447446493763627189163481302906102808544915612747650358807583059347235092783897369685509361069535378710152591806590797562906591778983830882737505423973278003706867627240778518331523150949098959828365891152390572317437528382751121397890032903718698336991709522586569399861629652549297 - 6378967576633716158049460834148986373198193743470978715895419508759063815987560784277975450659135417947387714844792291346775319414648353947139135525317984979698349158996436288470133174573731793642792327405681038537081982009949465048699993875583883167629840831425635038420878071266313972774501080561261116428 + 23670196265160624947999169825087657430137286570066023620883321217793936983380889801784331346265490280975373355471713777299395352380314855078665225902611706323824457313746661412271695660211488909083821397447176882861454357619826883302184275598218846797861075888380811309625616207819088428276520369615853266868 - 36097961991655320496017641787555164165253047249437786617962697329387715216244370900180517708100212685209276545692977452938286408873667487753497380483965844866220977127309883698495392875776774823630383951377005402983997465544106357359054626037914065301877938099745142964736463558425744036492343174648696862042 + 85303266658324976455164516022007243890303808654748830878294469179152517345883905298310033221106800519384158052623054029043059135101638448825116730258282728096918672540655914196206764311914948589233530462829380642912189878285275672050910955052321564802571009338932064789362977800672849035696485787851386554083 - 85069200524798884886417213682075796910816509643903271275270093387498332629178672318859062270688743599819389812062594983885880479012513589752736890062095808700750512911202011070415672853067715762898299420526442223180434264202148409839997173605132686813612089135575499753593209871824839266648461350911869299757 + 84796394576424542413729348436703721036214167053071723433322831222039957379970758058518269556965319319986007987462741279902064888673827118002154927844697639139055212481814632825855504924282415544390162223409402504016492398974578883550814121912672790432260121978324424788619352683919259950804998646876782479352 - 46392179576774785631229375128419054761548631289243028338207253110060716286067502572290636958590170398350452521020921949662523358416877505007852563398084574119579121675609874177233049167352858604871285713761931784349029772639186081214809516271199185314063627866836988916909366574091815388687127030823044828743 + 23616774294167275764647430758317451023245466185550945532784149905259093867930231522181654116468800134882517133931250881081763606833152562122728354373859869768336188692596226580742005487449590032024257601488560665647183935366249364771345129751818726774896463595116882382130706081828810416481815656801293850540 - 70726717132395546016767745040682340472505649447906269132948214825526731940199919374392569800864700150465695003670822185471997222382551589935702985256549474555561325644944287879602200228047726990900874836976607129341279282436377337403629550000702865146877685489047980481279413344925471497412162703952952114006 + 43916849052270350847038558919951665010406087736387840118622629011434610934374611562680888662269831255905902472055380953693253871521960168728180960237456558725526686756933229331418554444582502143902921635825500623301591219251482239350287164952172384621226293304748605598460439681928237109494818626826251176427 - 90227347489583883485083579356348120021186542940018178627276513004689806193110074469789762523669052298281233107725017086345778387518404595588829127470897252499697899621792967227079625939557887531784398622742985393677707253997145146229106025261695693515766280700457407019842100753809601022256940610664310594350 + 9368999096796726498691530612091162854589713740628130275556581685818761383699189842084457551228306229454470306942790235115381212721607106877934541876468844996182948597186993703289358865781340455993925286966759266480650025333894168086829276400328352051488226716716157118927177866124656000487550684188153880902 - 71598647089124615580309283967966772274164277157785482808893027613820421203212307964003071802494416191815438278384348879343848299260007399425591907194793274380860272209485513210632072010612585930236051391765728214122400586803171117523440544818237536622012834710614855042968266177476207522257831307830664401790 + 6887526574030259126024913722215263145181631713489492377309359198805113616788189017758145837849774368159782668364727902571107907014225408099708503370076876697954430801538554765497788966242422677254927413622423228872864441747656081361055581228658275166501065107591279257187204970172958178725990268230995305286 - 86539393324106772652594946960699250776384303007675725416948572900854778245400742646407733875523826056823000009072213438989781947234628220599208637218452473981346380319153825124525728628028030784281353915092852594260668007100424882764551155172399456047036296381860021952174025274425690521467627479134767539205 + 90786202798865243325192491837884422679654157508048309818545353502817898646503562575644564593092963759174158824974539981797729061139363158661506644136669725222274521375756670943678074697345462386175206873247638506057935773747921854282423480951307379388031376891828987660423748900399518762097339027587666985111 - 388492228710893782256868836847192464526389191828336057702036058003783644421841915372288663012958291090478817147228091392463031278946933874528863515988269959005951410495996022620904673246080685597737353990838973836014015092367069938121189536000529616319671574265084938620369154106402273351832371212930467613 + 45907139005242770658750347453123540315324737298330603271730335734026559487308352947819768850942557673095363050701053454589466768996885521746954560882387817819371815745859770014909633165847187067736081253828862185388670040800213330572544828859023342030905801149155194083141245549834491234436191364856725800870 - 26941848501011939290232872125801799787659890388319136220429095226276157917544231473652953926395599923179003345469282469321624232032484043843121324689815738945304198175679145968788321426034425345414491321701829507035913699497667410159565285284607692850062937844525334760443549799540876307875907373385644083228 + 74862712438940341391062729169880372804073347434493020180387962928647067240812503202681503807901122363679632999315638690723715585121233876375989780699457185065014490823087070666473443171181910904467014473131553818977406868855491854537919927217363492783591772636012535278070523727565658912903473019463167021437 - 3003951720737908841442075690779071712411269568780146761089047449158690462062941630177112222657486894680869588924633009075875150105463767898285686896884702932948860536864425009649047719275246295073277735283233831690839959131106026261766694905695253961151483777840211447769018249278360344731390416593650999902 + 16861494762481731393576446363981015666956561065806396907041576810801692286312403186519979527021520232294250044311394513768181186205923109392629139818447558289687304746884145313174923486680778884344892807086973051578344337317279233924903381040670112416065857953450094647077985029159484220645240446816515323275 - 54758626839291975004800011692040450155295264053665525608322675515102690161505087174920463723930298681894436865696743737589116400847538447229922678089103126006140883698325014191025024093466081683570719747162624732808150483679165402433525923184853123581448249970184515941341547478814221759814962555120459682321 + 71718097705939183936173398020212141859209059182303458921163158788703281151652713816325797184227108927136592324935489544131261965248699318570977917413228085466668556959512162096761051537933806230797518863633060807472690998667737874939282238057581159644193739651472476027965797158233817810024248472736412487030 - 35724920143603129931016991492015024434876920847327877719255299411519628005706746404227239759078129189772262330514182165125782555442112541466496188019467186372049675242465453973111925813525712529455067346379585979691454489293346033303194117929272466756134686689042903603722315465739383312290341346845599547605 + 78514820501846800750141281153173892001011587692826714038000932858772778559170458289003961777247337179937462362926604914978202105659759768215574865501241990106320926438625978213740963914252662267302946307528987652608915361848107054570879605801218191178622756707182567328840248692539433038977399875382493506845 - 76544849582326147419465452607121045807184393339232617670207573015106756963721674915121537005443519277529586101015278791258533456523095917783253953011415068203055904088724946568331039624732567356124849769717204064729035891683583536367399093655490367394272502295905484930848023541801941041066191731143591373834 + 9276186047531389200565502752558090046462596134925557171151054393867960770500802490459574125030504680254696384146608658619218084369561636744051821982501422935216642611828879333641958106811441908074572229022049638499972014170828490876530956719235149863392906235629286693817590893325449241972140345489514700746 - 30555756021959012453724870844323388402943090992934272063712000590690480384308980819132132634660639348799470098351250687554055520325381824438239859611384029519114416972754981553130529401781812847553754205684599684233479194873687982493813771528644447063627472210745345802175091587045040458302313266361839651551 + 62114054418180345888654853511453628038127632394870753592190341861211478716585601691498167407149865811421854785665780497191835381779014379326633643281782948330423801335658266298919492833413033682201824075076002356260353039812744041751828371619428669909244959299991653758413584848277263042991939957476333623838 - 24898554876814457350032605158918459035455533625947185422191304976251702092897274665194790905751817462166813685922521195676837324448156410787171909674874096984586176746811435229079669557835296746987834357075675846913702704390954572114961743808015199331717920663433998095733879331832155534968910276365782321282 + 36996356366933261471757474458454642576013535147695333450538934129447837353348159516148911077864083876943696079126236600757851741370021315076104549330572850487835194618880857596552874325421062537328152928603012714595527711422163823708132521434858022750882990617144882095357647453873601218156526078200885440576 - 15126561701464885049251025799585001496748861786155927896469291763839411205526585026167374450316586064209719795335056253567506172547026194941003709428817611887194237987216092722634995854580238055315632282598391300547751746556377344215945871191423662008207664701665008384711419363858280348126066480368248611161 + 35474667562374970636469338483949819381598248687726889659705371349617535414039688381803457379089659936970505055555159558911289566024033336092845863072370408653808751103139188427793624910572550558696442789490586641095584705633021126216623563995996179668619445675657885397327498388938901544013637149921015319994 - 16024907506752571858067652642006504587810855912628044659941039607832785991704214136962284894159906871682777146034777522818352659634618833681373421465575803606625313849246325743676649209247525779170043998824979300078435959001174974318940372712323538161692258362045271353517768265385102866673245399160084136701 + 40205604502211155622177776415604168845092345265363311670684684365042995270203368190838555994825332648531663345137097139055118594505801105832781254549012597161895703402494046128362291748205526840441976837379234248647321955582313618343709302146158701756426501799569792609338466973396572121639456732381602125391 - 22947856908670950811039530332161256958957956596984629186521392909779848022500353617631639088981515094551139582814530850418138434431719643789280257642809777464706353760935519199354518269549260178604242702449601601706772269795187788468072422510493046006779323705248872474232346394712900617211404143803937242045 + 39470190120430232879097805958271657168996971614017856055399722186278832153094912215441140540580818620127299103282846565034506888843771296500548199366110610689539562119001611140909295138521797909080383507911795843590860442792467575624677101515574356398911117611529312741134763244077770042684575386177793213440 - 37763231519170070655542033493775315019503856355651894718581043396915356899160486034291075193110282367451522383114188273308741159857148179296087313875361552267400231649439126644641001931642478705466853034341490271766733175971977476980118249485648714044462359363367332629956097885749819816835536559164512131307 + 67294791522037614298777628495706890884055876288715513943252770451668862536271420414843206990843257381394218473983279484523164281574098825154408697230540769856119237573988350985971720771244102679940167927852443032413891286376861570535970074635349386134207083793622732232848627027136461106581470503119728111060 - 46386717993318912372818177917628729357136803844820173775555249900579312540427855495029769457544461779668856133333149578656014398539104515853191890945596593798293030312655475890397148153507287614468948723522904603648217132548112942179745612438236227275259107539841758170121247341853292228904133338670011271537 + 65112856409705376447879589016418324386222508615208976196623771834819345605644940998162927906152958245018985555005003333956014119394638108669323200877656400623802397871568700895951386101114169823432370753434713213600462382913862245820375418803676020007771297946594332356459302486520260588047557680354333856124 - 95128772985742374303835460186446765510377554900795504149382000877433806565240111829165735166872921547961989753913859853648183913777362513530359387786654918028362916889998255065014144206517573376010594535086172495223422645929111004813339016689756720939369805556486888487345106895319117707449016073995890310996 + 22225621149469427167143522590441907638451161812079202129823552203973004877283814029163060922373004232923846312683647690645254655380005162914952968515420093772429940352675551083936142566929770714699874764766786788246969509155338212980171531176064437959973390827142448487122482959396448317385938881498134612697 - 92341977053194117614498888373293360654906437025733174539784096454680287997283860899731831073865294996631743770665473055018073841035717078152685118986781299596695949704498352048791034499850643079710371096736028628071005004906339465588465721033093718389202711575982474762915958338531486242275749687047324192280 + 42936425140928274141630691796462930917499300729065315255228396763291531226802651156304296638705959969783478212051762953465445664470589418887836846032005717017304800217780592931156154164374799545125261471751145122164850656638213095907957471859957455289481959992710100105808588362092812305819734578549612957130 - 825245184391894407307235047596804103046899199260624301663922527923939338923710949446101262411487547259908935290783428261524069572483637332042984594374107386350481147486429569557319001154932819887963740854461106636415981103897660473458066585926876871924946631794936642277104716681890349996182256380898289024 + 3789873568162012345137664722249935366121726491751407090473319964311034209919349184606705830687292893325666450313078654783875661127123773601094637689966968399689943869882601758523070782123301224103173756517514633211877191445278619824987183081431792984326465357004957321093729556389788539757857292387167767527 - 63317715531124769156959984351231603586491895565920504466109816648023321505588784580317473153931313969911377142039976985994716641234838015110498256670479093055234511625125423354173231138442739379164326817260212288257738983289250539362099068664734316595455113399492670362010641130328824524603408251221864775439 + 18181162042165840859358544068083384139490654811872416119173177906130130492299230719930999765204784932847107541778741910967119982779061453589176048342103131595428587724771284384320784256827664517797775265818500955903871650142617662396112195758731073698437952003199186801128911818311564903152910530320703706068 - 43217033513122506926670520548546706486869509408062416746311142874927563702040516627783589920498711077749607204122569805752139436600166177963786919658319789003025015686835072531658039619661507286982425075648385916615382035691418607081811369671734285218933971754482489592211586063400255473681931670110121056545 + 40309060869128243458783473796447229484372078442203848514395048391112265393595954505765016952825874859855051157873330354005290949256367539656739141773371107334758762625082105590550743944275577662296509552999433331156777018635812428572525918615424485367573673225731548239814075953647568936029864224037858823689 - 38554771132227559287335618309963478284339732919726641938487177370196459086692143149829333967619400503570471906467507612009901897129584627184143370153477999232733148430605641361372006909998155700083492228524856084176590649147759508297125985669849585159668967144552386631058783800482697541800805700228223113276 + 73289404862745886286447172893442243102793327449558037167172703318501322208375440306863533041408777951144111687108821112008378158449892288017925377743605933235996600365219660246908352877873056410168946422535974723771051977168412647548510428603719781305338067217113423533587949810357459813026122008895188696152 - 94360883047370832626222497088176928126752845563967422904731807536766663422106317669154072900957142717706682498550637582839793118562450487941392259785236835239981328919737804054382259709256478406539744844648891623076639058479401642047212782069932110056870207320090833004305467781209243131657899724713954992508 + 80235971462673911301545685057667105926129492405417849229758466298978811639586641255774574962611745623306163289159330653081849211520116231959418524604695567607023044339619290999722996505742790402227154686209157737905389278278573549158210044348603031961532048800791654975078820843934672746239257981604847205391 - 96866775381366829100911848858055002784829301302946271448247440123961533685797773033087357639436860810382064147602387425884717985516286948564244879505385137872746071980521702794711564348543543539154027065750909547469570565792323561650984259631819852915615804143778834220125517978985039813803333425345902726057 + 42295188574234621979563799610494192587680661104600398088716313122178205413805343353431700845143543443586169738917236527958046087938314773562788570188023884517427675621834215174920701257798202976003582644320312958005631541589194335692516113708755464952532539616429244391057471767614567680928922233961246762082 - 100395943386958246032940293917505993911658896264545238801887512961259434362642976187342979214985427642155111538856022009995714862711545465783748408164509654908376809442572260429527943549773038843190908278279821220197045577095473238141763514257374124193109294152660145525172516096378720833574627799419633693511 + 23183812362991593058756422708016576275872360796423086806962787257478787949934630818847548304385127060800728082291010805480650350458225291838717730825276439730942613562416560516255532207929022306394774471542099651244780625663565962164628748159012770176568212525282826936636214700139100439899443783108568523066 - 33064234917663779641399750279380654969642848777149100136314486805535299106530220651306179781772274303591741441471580188237648049418456682523485683450983209932714147674461901371820897150163776374618408387257336360869373074441335326213089889718227631773914094309957122745883879429988499344917139939110954091315 + 4520487780712146224034198137360767232316658190678356833543363165481055594664896460683497892694013315075284724690053757347161898791306257597442442476992376910642725561109759594468046919148369590500984828765550082594038800050460761379194625492085519219989410548173153674548434794305940028053501548008394455531 - 24521799386018634550501083482042951948044348275259213154952799307308463506879754838543059105009751193555934091883242936466382353788301824919784166494012383116208547457769183603711530708563459158081216263730050089802906959374034074513132084819408979863159891657725637175415932179315302563110817289090848989330 + 41437625178975638994817188070666873871076166772909690432771276069430050934766966765840058401538773581072952115188263785807417475407620243472721593524544329587148199980311705761955499178358243991872149079047137929594470278884140234236448103884933093863707810382951676490197040377177871139973038628091378618855 - 36725204105992776967331151774847216513664185707622629757393817049181092270097639114078214846172244416902945296540193468227753654676015556734062294979449775954393631369693743339529069699737390940571756078293852185629224074997912520555935000384376907057548825144930999980280281808009325020491804923202091227269 + 73905427275118980061241189205045485337795830038376087184832578163473528687831127995628877306043562576510541487244576408442581838331911998776598657709353126126732495895244913168202941356033192385506515949918912437740253726410434083850595216984397618745764314214020924159895894945098961719455208109115069647229 - 69687236923496780324187493063959552189679256579391807986583871454404555242108047464545096727683665721670421522171661075588244122263637360178496189729205155124173920501907502149870299700099306770268155915352294182750061841235424149210033701428102837720737885464520009708925955314251893063509235942662906695168 + 41702098463282329190927382687279560107717794527958597433601924964094726479207379279349661578685901904992889411963095646026097230087668448325381220762248914332747865522634970546262400776052310529542872026875804520120838877476803734347636103681851941710027800255999208501110011820486749337132628711448491233463 - 18492416861239211800761916676831920486638906848434031179056170857782560715458538661090560441279629741221044991382959375457318280419311441902125117796870144872547673793852371761859608483282203063750463004919132674068827149386310107513770916491119135400938450824996285709283913596699120372010800225180841121354 + 41744323840040391609879486662267268518450701685162883674701760663494212645392370102444595091058220928770380019784262295668396498430606433238996977885086054573232403584609143274037849466832112016730748076152756320112372990283732166066961328446204999362610478917840336234674989707239455740507987409114899292572 - 43710681395003956110759060419845711579468199634100406577560579781757618538767765251273835674585116578560249300016995935267324784102580394678970050720669090202487230444148761452752444840206437711551869974349794671647598063322771611103435595726220997616907159594812943590135009727848934444991838599398234073900 + 65273463246824186047841498819348002378422341004577826960693540334516589182332746579568412153396016675543019033148329619142740064171897130271698783719287249823500526961895914754782900027795220936935953682420074921398563404003514724132632228276607091779714611810025691523768774215299875727726897290080565687964 - 9468951402399327448069960497774986381470874026885619713738766514996391082966868538456320139095466913239654034163398932419287847436754627709777767193434650470093363426616441504225235458319764305635353462620396221945401599064417701379575501217528032359839648170228798159237615936428618585143612897729576754518 + 63970861601905990469228888594605758772509799815307577533058543620630733765479870010849517699792861097166390317890696114966661468942186296749489295742740179587244143749941785834443423979321618578076964554383117407326539591696433996602004639894337499453393340492390003923387413075385694567041679035750533050987 - 16790503473803815871359469256640521086320642732179597064887858912657033714432671049587562774715883511830894217740239695737995390222703339893907777650190266788376281179959847634008527178761242926365018936132343909908728285414457884044110044348403441510734816303384834379204020177465637019825459021482088162563 + 20589921674333082911024075377507634344739161868616109382546398781085067483278545810549669943734896717843860285362428464899928967159057918962127476976908184736062628525359840677701848729974534297205341183893496000975680236265437196536638253437630062853764795140432484518464686331323335743533518400897442785367 - 34136540019039507434816070840722009281382956038117916169979705995697530819700257819578356339394334243710474963876812655130447369623839521147375384057072403397906405614522280351200359484952809459224227147176646365263295784383319749378566799779103342692609746416365460942151646350332391110192568507901861558377 + 21479620527508850685050048675053757265333297248883899719723344315473360278769954867714258778127582934276189721844725220231988955935788855901429436306451374244624353352573919961769148115227767801490818425078230735050266256303515172596098061235489996188502200551944566851609268434460947964590394249489297338383 - 29010329512115505751722718936419426009476181532854322668155842451841030131669207970262798540814306780876994816155917526667590886323099847592657709652885967536107916556572949710427656126923628206120714089209733051238112298881730423960693285633418608335711404833722648161104473000429729304796086662726103420458 + 22305198624427608038773343978273503501058453922509577519145454721230619559024604362611540549835556727207244127969376560996743920559323624017053731657447509319132159914005483464219636040139414856179602722240086471905650995713525667010927663109874963831344342185815443800328562966670325097985317890901105582807 - 45129599921621917683180494816009439547745852826252439305201398777571379500834598079652112137774509602528914811966492768858270407845340027058397517181045460079862132885918028023611538454233985621994953540367124600790926103248882128158465305837741985686694061727028278836324114666993192992494880384179316685690 + 60348084862683674946933550810824379535805327850433930485027075519981836343775050427589693786513392910228882049590917684059464700172518452052202644345518716727475043810483629957668575056966356679840182944618813659745999079411893733278789628547372980839551595021266822108238528459247504188440331831887194712986 - 33652927535055183931363015218421777727902978425154869601880024740028748302225354269824599955905951213478611971904140130771807696922442391459000236868385056832639153775086780476416352545274576769899172402468318927117192813862684197527439739381609573701928024458434611727659735878063892492140939185484786041714 + 14935333725823795521791735252810625272217402719359913358702922008468300311320263007094135279598170168766494362878548893762504099910087047244262150617288836395167231608582611197105639360388460947512721759699190919137557946859880436315557797239893249379151461302531193104245702115442044633264180294736419983151 - 102844872605317232015821653644579270179096077470986173935428610305145590984681693922760821090550725560227602034800932259872840242291960182040314429732805639010965286974387059017368020030055222726886136318889035876903923893233940602012561327772556136846350938333931557134879425792500635021570957605561928871186 + 82268640343611946532455392407585906418885115934751932554481502918658247754669351048645800743163123144190374586649068979598180777265336811935263660976866264771097977721779790504304300649041133657192122423830729824517174953926498550252568418249157309830636585958216231891718915720836711460959270362264356721793 - 33728839317095850921045882953736779584671238488564991208686250245751893671651819950592662506241002177455705179399164325448353116425942830001313980889636058757835795376625585118353157401063199212274781337039260547778228255554798273682439312370755749973206940555607680536721627226800749658802831740054990395866 + 66990883153710736647035574099315653808246505338903713348900297364771329857308641057186850702809510200186423783872953358776816958112467247052635498307953362458995511390682650301019732253903323351269146892207189871401626513671131008624367733124487754644468941803685288170359831038405468932652332413382949210596 - 33881263743391211136443251315880181700592750809627258291183639464118386780280918158942912921054730897033654713449694980917278869455604337432536088862705334383103910283171755929649301266092213267682068344896366117673681464548259131410967896112186924744373263776870985402421152345841123352628039211973069365152 + 80711151728202721457061246725853177780029238676825785661586765293615891096184265845723736430936688221417814995126070215214958741996224609976015193921652204076710013038828061898389281985024459695713272921761051119961674363934086701012789358593592004396497525667218901835280320275250105946541388255105319933819 - 1136474031675791189214254011134090985973501623352092645127619777089792215529391230752348265976540540148715902782219697735314766016054842100978060185963508527629494285471774149914414342167783191898066828636347743337419662820998230977246872581278294209229473464649463776004150966973233343560185086772174024056 + 24460024382193543921958635250450992920416924243178725146374081150108791257309010258809226423872896677829583944174534999810936718523010267049871600939266083817696800657106173906431774785650545009716742002932396154725498441397293944676566802110593471755400209504440128244084752501894974126226412732139194402871 - 28124759214030040472710824345807832166326969803951622476902317532580016707109310722156388050333135813142083548302501644294492412234850402108659617362093882320845406707214476913506923199598842108783952247331131088192268832495189940667852605212966091834446882436108474504687631232492848993444193951230918970272 + 61388793202732571805680312221229788420869772247189839896601292407973837835400345064294018736485114203756318522323336841258422712598998869817230963887733693558451475637960432121166544284177234089633533905820834742005248445151566620571441950440888107063575473465117559007655290348089102012195016619440692278519 - 27520017897137198472265490569277444928515656526610419230728906248623146820458232030081420186922407456757113563011412005991233200275259731841921194485461188776367411111122911121758272399264332253329422514461927835346644904190675878635388432625030775587614961383151222806398063500057754442244079107570990125293 + 30299463845484729003565219948448865634126457905300730521563529713498985291599796476855795413662493456751554984199647085165998705457399816216372540487750165891811055728536747992438664673496957435206270884631492312384606935796178432972810646899230042385507568621761124064297435180256032336472805422416348841630 - 69601135416024055035360297358344157184303976731333101429124253643257752197589023852683053854993636913598213916498801386328119457702052877273336284263812300378915124841313542760694104229510549110093923064521202828298522311367876351131682119613151185267859105662949924093775160477893707306723413858894858241259 + 86081826666035350091324082380880303667099160385154714458334324208406113521517616385428694394483324308303392571693512494915026799952286035760288267857233048864987011535930564884355380845363305550241706771888340398307540584451188836146718724364091476428079932333220015181219229795778467112852616089664216148480 - 47211818012708378089812583573336670310156305008672290940406329275843234225884972677266062205537657813550486686105163515360488201498009868527706199011317218826361725306585592745669389645291956009153551480230450973295787874756019011612787273787337382736578409719639676948568759090213477149158212730674103698561 + 79155609060509208722946020570024747228680640821125926888984184858068809818443486174473664805999167054296281010873624547313092582425195186339525056947392318256166739755625013651537361671837356617239340502407497136734800672922779433070568293860612189781239999457663876719772438967778174855503645553729928884499 - 76422630697458212461394561355246389612364224949019514290477281303325867320137053099109946262770799288225147747018086919947464489871154409649373362233526255040942541171646594005500729473265076874258737224849748699029279610001056408195754631802083865068287274317010555475393223840020110394171073658935684779943 + 31606651145401895163077652272353513312569794658659116973524847526174006775167651078649075626563804995905999526330714695977923522114454560421316385999954969495962052581499127896993360816368258614981590828289408661133840509427819350817735630105762020112027941680317635824870106718919632563057802114018764921295 - 89802528782151645201588823300840593609734735910842108379038779319825836873302057341958047219857535876844571823528709260549563375092498595883426268206522690471287355438976889544463361856533951066964268723402941245403048389353230936832051998543917428470023538874667618017572919759982387599955008192728174309636 + 33521841058097367141241833469331149086914030007411221129120585888059022268167845120757872294531412820665567260864892199150027242608694873926478672373902639707679345044525260152511165819143872993974959859753612629474469793962526272780484163682118908739534825697221219440039676031917333396786220966800593563988 - 993654596289377680010283988208761329539223199122466738593178469778456824964558081831094883244665123775106030646118703935967280655835542027596576205369611283781296196387559109875505677345226182289548308861053128656605783045681763681497648054201476254096051270175058081700400873002387488884868851562690652271 + 12476392491830016603847794631805485444579535827613972065798585645729099504637450663065971361827241277522824612309115493352843550484163948536377160254965643029277636840536484427962498978267973824080760920116024856722858052221699354408629807747750858097835509631226188996203525446050467173237608527903247582639 - 25799903567327622110676726496589004730221022597336626442902093182280792356150698709953203705835660913411506204871738253677204175891340932904542199552287458879458312594101123562324975852046029934913584533559877576280804568887208904468792469306473496637354725571407166498090359932457752533777447114819100571334 + 6342278374410790888698181013861884973771840209806475374561601569412154533297660723453466895384193985714926759988023744089935108430795936344161688545052014208757937824486013440677954424143747619112079278657589644047793895709274371087771756013782782160091580347519095988446120246719500262878931222793376936703 - 58986409809380409715263731422308061899847093807862018624931114873993445744355577301694165250774725619163513659704273026816561341465894471143002838415258288376682454973113250444415008202715922770742287769533929017561367651680375765433830598250969058457777441057457243596365671914957172375267752259427383942588 + 61230617172379066503842536975123948944572992865424357824134830509573924367023147840774958235957272234730658838916619782406606010901128616082997584276153132968272565332115343591066016306164166819294873320693232540468289677323567570031189658110123481087679631556528092057737744380544255450280912885487829875329 - 19440401213604285305548519486630680313177175463925007573693834085053560653989377150304317395793255143390420075662255556755342579144340604813761926519652051803463134299379520878246481231518636296682396523040070513649516795072244647078447712124530634898972172448263967246824258193808819665423177004264654054828 + 36690399337630720580390806423535811195101537596491768534382559527753129466839050344345893205579177742425130693207405363790805241637746501401243073891173670192148863894873870258037495990082271106274226879597143765867205971046877970920642854451133882097747486361542282149026970956902281677206579777278733214242 - 65094591613063749803856087470532240238354050893548154448776072306287161416258377791095235128642176909906426092151656004678555960921654092545558088556757599910356774519261285535653834335791484862566805400111589395589974946661237757176607170412985692476778218952618101189088302402677369052856720835454023911661 + 74732234795876365086459418036167119775920118065951310846221739149167985110925434815138558953306772554660798709750331818869704915367715572344998663228694910170434833893947513132242521795773999102450175405583060783477290467683392685589915211551121628792193200394659296602505171219510635368752253543415481161309 - 71761301788501054898505548757466549567934571904531922445365093890245715199433658408930919136879814750163527436374215701785085859041473616280589452316281370628531237447870822655311739972383906047061948391386747083626363011250696145475821565972171840103286118429665246042331750947902795997860852348480467152821 + 78923844363050913046094853527930844717943242049416845053461415648138520019399284866146046020691193938466350194491511805325228992419762780562994816982659032987688371586730800491424341063901705278214641726010792125995407284639796951899189683525872504660395363823138406389575829834422311227788989584743654351203 - 41594649530071381731006272774149637553689672146449887760794217720451894428659426901928991269352806534703521054466366518903981697593330995256710120564393692872364007429860754858949385060055713132376473597092824748827052857240989827760437527168439200489321366207607224138781227649232833327083128973182806492893 + 81108706355671191372244538635313067818765299079572560576876609504792221491837336292156100617003624692427917746685336672793183226852293972668411370350547229379737817549040891729247500076040037688097044014978940776691448633283909432061222312968103934769500885402320199064460966235266669800348972995195776538857 - 74292682068802932773373041382471281926886558252828612805796327990420143097703293939483614971104754552240587412285797637145895933068998388868264137136541450629350681350958943852006859580968250322121385811339920027096300710239222453918823917114714165153033545106245975116757106104447949303385118665117741756380 + 68241545436168845669035637423666851470519919449185590076928878981988202960433829835769222601414196770763810863461679075698715076478428326601962585992256959439578582214198990661171888904353424425983674980531896211935680718801858633086354097674772248908398773381267491021006249441315511898094387843724636701547 - 78786032446122038758386830234092994474141413972150948788019429634555313967119884960584124335024402107677348866826547332976630539985910134484707332270376697780379068225520296566008091663752197892708214034510197395487134953715879446675402649496895705017558203985629818465001307108410564156121003391334254684910 + 27107317781554603714601458657064737851139301260023056769699028183609512014952555670607698337956587375918465156218172588672770963446398445276978065691478998182476134198825442116961118403210269960257908463169959321019382931676623565391738202735091583250960924204339254036187635404361608430982646728437118934515 - 18274229333933026206559956752852942477466583071458447653806601660998309274588477503108791725967833212785086018618815901994192589441282155520068524940832010463694610300933806666978665267689309061739120837500148181838635086916105831451411528131032795858553836828106492326403854094687283558903670004453723892 + 82061430676977449397509618688228957283210782489479445577445061417942428707775839274148068564041617289098059490573178140684525706669109949385670323183344697574727537985658179243587136474250392823733351078872172399883690841943646593222234732775620748552712464091267594907874760889632594558469619768422719393095 - 45899097943292292246296447885998433415448211337706794596927854456571601026723580895501093389650102011213302850629044565692194180071342142495951997403981204953946815605614531721151753297494079626633408130495560353410025563855774329872866777448200300926583228195735373927643582887132610727067568119074206763968 + 39980315422569478092998763341860572206333819948724438319418919411000622726432367031261884689166903812311765079062444169820473236939279431927440622185761421999096556208324786372822663816226443053424392121498985957354496909532487597517900840140757202853668977833434493367510892298430806307115676220868345618839 - 49997732628325590826719430164859056509044709397861707628813754639547478471285540764788240656854893494640932025073385464139765780868561380777793705697713817909044035514840566776867403151184780041928023552554191579089496584237188279562403645895716187508206486542301166061937591908462494496224945056247956468411 + 58915338796417672089303619481246392165623662447699479079227293351918342153374069111948758103880110909947749497290101470897780161680606389449200816796567867094433172936340808735204966982831403153187989192553308876440312982156967870428064609561647697411486913737416230826884973545054861724041255181403945156151 - 45942060824567269257716787870937291335511866923133765047798078986131344161571296609936313222307824696628529199758586852879694822169690184119391006172227448185806929017513801563603900686735753217148025656221637066334370326366940875158003437988754772786234953803644401262652622564429398669830822088951109963916 + 59213913470705052150273110684413895819164254944535707879307181130481716024381585928650150283329878518354189321422652694063080088083714106972273295760534863381436329860091905407378275235739729522050230338420852744770327028936955668525214851394545997343402075890665737729886434715665828983673432756931135289025 - 34083752072462611275515426362515652076832983243816601753156756390875370019045566007303777697207931418731444814317510392585157397783503353680906154308244321219555496762694724916068391196004273681917778640720691138644760374469966943600406095564233640638690272406789878794354953027233755258835901601729385326445 + 28829363002351673802387505342998209558295752985290164203442705081817145985607588417310395105363303816035640734348332615458621592714646388620656744878899403723534351040098661027997469659678205077660554922263772363552781869978865365330431155055568557208170332039313738533663483825588903793104593773723450099586 - 42617272406615721570971954556173992574507653207671963525353304183389692468971302255760500183345555576256133491045263041567041994292606916196555052959862271539415921840851634449991572388123395268022096107337977414909635922271425025235717439648318507051341978146302607669262786928768692863225047555349169483263 + 38292207546184963763355498149852626119524275409872574876419208216383295318028455528084801079415025978422591550377315602356189351009927427713673761775482938472938154996163183534040848629819457625957084109534683248765540936086552526601462441306287128451226361769165992824573071663313201771835711089133032939549 - 104310253799621987190281973524080008760167869198885438036412743531433726875723622386060374540794398894325643056872872266788593077231448334295202050041265089723217041500069941696649905412901329337861624790710618206674214153148105802606815911569372339097106024704151384454435244644616980937783635152937134220911 + 13255123594119975159489955260476008707116194851777416308519310223093121207956252671512495759471028439877969434929846020801692081530253129090006444069563628891591550796441429087389504233046839872342417382037448013385528574149064555050371518555210302267426838146495252970579709932821637188987546038502193234022 - 28345448306437914243627788425860825712768994812194822389203791902710930394686959328895532478162493041633703448836109675358207259282477030242849841912249077331098771991761303348789751272276237638930267721708508010803937360766942905208472022445932869511816121426613070063538150651549203105617171797710847757587 + 84786604443798035327269381251838565365546901038022125572297980303952395962608242314772251943528140387798238732257274009868529805879279796184428362850297043075084189333551609015418916730313413718861178809265565509264000374970242493243531942113590362986589655347182008935726596679968654941730988841849281898001 - 67409168179093820224071121545100779686471900295951843079460013062483670537903529192504353613342443698363935720867461925961437732120757253170524483041951032058432251415561941758569642184070593335144996675305759862466698239241248638031129720948901176050071709380156156330604726482480422656149117309809846532301 + 44366978928663146892704223482165234526004691051739567065642669815314558274474920074203822303483453957240269201671072278858370667855921705697204191535103441974270496581384711051842727361946720151664882503515645035159161310513944943792785260769790540596551977849567184595989784209557384166289895905622822131452 - 102681618773589338171804856832512351036511646748683357605413165161887520293679900871778679735141334783094296003646701157653567565625406837649274508068661374147921423143699494919455945593924683949972219315127627169660828709736943373504731763864538236125595730209897345485644626599328312011869728227913821631708 + 69240036233814009965004938318469073937603352614202987493920332597441423983192660633584857443740006916789652901539515087484117185937671156519988859921287245234896744679230165687654546224906362260891385155041484414383800093373465515376063646347694765212745389098158523275895562524923091609979423256472082362319 - 40821383661222907692229785336231929866149170744840070931612161138963367856219305183066536290474388889981424065534676159885486116549346945413439408398969414915031760069475631670317980464236604682305043005845174671733464858525373033502433056860645560405213227988285222241835231561264734308809707823917128816620 + 71040234183182089984481762597620903132486343751113924645294863928391481600507772557716145970990663724469330319628127940553027008828682240755363495179156200269677937837852968462057240313575779907877648733027594158083962701597381365644103904357028956849518354084327326700052232490711331782802678257688673080002 - 6937522447966816818396012132016945619808239647880646778482680962956389417040716107862686043559193715262587357172788251773566438782340946713751895949105334189455757168943436552670738806659388075870483678932901008229528467963107741152856719460871119450983309137755847175207373256611036974776028495510708722336 + 66443991340518719221201910143886104948253558469788461555685539832193706179445173519325432629827506830225801154652811735769658438647700223087223727833446008124196838270346719061411984646627950278230574931529032743402029947234506234080525163279882223572604006098094713696399089323265605179962251070997334272951 - 27765872685528338396864284261233147386767937583701413876256001388863280276018812654404355238607198951247436748157039569079542063080366466905190178382767369055729567184309211914643056044235740183461614541919989251558780560748336663703870079651952014178571285739742812653235911236136076602128111748170783403106 + 16398048369876836128931403099323085186599631953504881442305542606731903231582578171257440043977893027571822537012016106046856102943713293031225919493907569370196734938876367726587946181982950734745549792291701981473194990599841045336687295671809782301685162300342293430916482526913869891021477413851934212035 - 1598434983609240443655116647937433092265740871157825214582538040699918896112913316375900197730006838839871109703804686189802300325291940122442423699622943024186587144387032170128978541648999141806383714407917545366239896128342465151348276342890112285104089654721482908546666856486834927813864802845151751344 + 61948715309022469313510292119649547852354304789231985551487181260270174869202559696070387281221409084949761424536544119990009828904772333691483766575627234557442862727259856497486348766083194839252429311619758094052663399005139215130714887968854527534222992285953486721983051333688494986334395251155322495335 - 35861466842508275653074568367389534045183024186951944950964461408648927797575785654187065768732063539304187169504930570954498925721215123261164443553971497913728058053580384213966920667888063756785525104140220558559608620501886556018550365864670327453721253049332308522364917527565348785885929620146538634286 + 52908225374872307594290100180149782989364285919983306843028090986453041997525464736843134597667414831268151561461019371895542195059452702851944778681923846136737965648131978706619449900110169879152507636304766522937032818790010125874146706769626086570558409338146126593521016259457979155755994058201592714816 - 56303558904677130947475150305226533630882442614971818221927432861335051073292410839355682605810598807518421687801520943084037953494541846769447122478429753869453205620060392753641557928268769765511828366604202417771150103424193946571018634682330021279779412021232566924924050085947541429263630550389536241802 + 1432815735138128457451417740456676736636984976853513563543502403966876408815565494104263781289444321491527984459305603163320147576440066898500630760758601687990209876788247657389875941866364144672127343762992493584320589969615861631916710109691569502955650591707353839324767315914721074711002270261604344734 - 19807538864257364270653041305219335468118956607168629176771415208621838130663714104703876007015031139533226419859407056189954817076250395520581939647254138067068558007428773632319453674859520563714813892138137563811760055070581273666692897423419199160024255163258397441245654330370516100989711454660829213498 + 31072394813931732840083028052230440579172525398083456166857257644819470412448623014900081680205835010940728828293282168623009256694808794669090662477025869371978882924120368089056868959656331942778621764758274689487733247598971172791072791779840172160120504520233367262341633668960444167207612743976732241351 - 93611570967331296409373358050397655033086542318639158053477763760789073561526407497168742880234608928582953523329280272623386149134909367862089068604160211170806026883954749751613661576653584037936709498967218398546644689058339145054992270836285446671412645873312835923468958997617641430522145856344091710255 + 15261810346858654595578228962231115528194667174703770176529936771343719771005875345887911260657871935676670087178533403450209741888185939030130180411900892571565403353009076967490831840052442657731886252249821186842263132772401986911050235801267971281150602132518918066355512722067496806903460036708680857353 - 72137628796038554177736561112198165191301014133026022453534490273076495031741263625010590705929970842827586293255485469304959456840491650367180987248643218838305284996563927016150152944809167707721044637629430905836797433529861856579389651196645277421053187388440106836245011130451249235494759504996142229305 + 73133311657393667355430029150664632397906681727984867728313472622257033368404714500772513011374048109755505376137042841802361736145781064190838543229793924268668859322325227244102899458818740310452592315141300628159819301184358888891923082899885056126735327860966362366140294928835837083155543086053293156399 - 23076166810854398355774207354365491569513030264434922327755967202567628495298407459296744126947321324027539718167965881178303529299791385596872765018435425801278336491732415062462096247993849990943280061740676958253450102620836186015135689876557392027280405606981865382342667642069158148867356403978452080313 + 58636507738197750692510990913952200426370443265945809921321688096276269510824835222905973382372381421727248286806047843627625802102654042535523302813913650553864837258374575481400612489352181835676012705062304449323168135685322683446429697583921542241443194632065686657901235169524945118943331611835542126469 - 8512454865001360731293555450050718014732630290556741810731993535905169388899053508765570107585891462382831502211775009196922864762195949467098873358473858132143417521343560579934232551471974509451898566642426206339192003707010603393587594736073952951471191967391834719193116341036994812402554821344510827463 + 45324435296620060826561171306531872966372905398503611567061313005410594543589776117799807191688868633602280032760243849324341786399417646008446958924047237664461308334017442827688958523295679790500847010390710344653894094720596883607808904039916103780662129693055909104597540312237777612961458935609785496912 - 34578557610218336601756522814891257576506350084340201695847110575807813729113448692632496247296185391400413659397030484131516322686400933789186678279905014547299872954728825788905709393171292321848626443658630804050551166863766079196094014212422564783485369619946478933002434283939100614529538296404919829841 + 1124993673920257340156032143561836934100257905730820287340660949370838326530810692418450767035842589008338222030239879752490864038936803977617687296298438385676595140097937048818852018947870484168791981854668277813161137771848303542892583871524493762132501407362849945409634499370533056056180716838676500239 - 51468640880793531598204845642613609161530112771095227040220971562277499868181583895916683711783273901508348283960232544104175232871313568388216813371372477839684045370289309878117930039102114728150192841655972653856042845785936407568290555212463115786626898424110971478802012837627029999234385709400003071875 + 32721811575324073474689467274591953899337514489826493077353767906572909956301210065572858806930599024402572058462786188042880822198039635350569898757364228379082599309399636354682311052082556213883629864501466530635944405892000999388340927315181266599967798564379840635227980756620474608029079627640182657136 - 38540810386635686575257416023268201501180808863513544222439532127908776690908882206599730633794731365466658886692740395396092932323630936217798854359146834809625651015605283446619313974386787573514911170752796660392343018914610163705306818194026183029151998487291229344687600373984218925565394725971592118129 + 60524988380247205160591848547341024472052540108811808203869710912192344798007764838008070580249450736646859999782620502083366779243586325743447414866726773868614489659968508209491346165116962591157320698130129085420722768067437568363509441318349930817426169458455366799297371373363975456817884942871988293525 - 42308748612242412617113905591359256958742529528745106911683204220203748154264728170784604878387405535619888055295791902590791209139233886017225132080072381174972387388308650858584817893279669610983421117879657260844948205880109144971079594789769151512289917766553171181389509676716421485408356417369976461664 + 47914865297902126092970000193212731763168804736997456213447179688947611769991304816399850525039001886404947731501172869756444918001877519853934264230131705332185804378793115099752902325350492725097920955037345203742368289847994850969857832906183829547510868957970308968334920279393129173454448761610841501053 - 30640918205878286865339790282400211968155942600811936596291892241194383199023331131613287896793282608061248734826444595495138594910011642534670207318419210861405302841251350495773706373199596005362415324527318291419240605879534223886878683760319907312246859811129515183953779456757285530263466974105929951519 + 2582588756541517775251377137162785967552702044712297447870768274589055565219263490461604430454318894651698716483011628323680241330214138072206027801346188788567052280600034742425307357034958483384152433480617370924408607603880448069993100177279837862770331696151838026879883046371662181510656615198696166586 - 29089357051734811081707049015846855779034440454895933345605241440778712705085229811967279567785405829679157017729747871947237317380844831191202282886281336871130023782322914462277394865378357714457439885497020283398030997014978300445675321863874094654181109798244416843865552914749825434860741666726610613396 + 26402751970843946198826414427600596452062939731662073118961917226041329349459999434374052119032579874547222522253903323356548774871560320785772570163127791956889246236267956358253477578319707801512855911461646720935673286741900635059510308300080790591242080603278132926247860998656562668400223904154133301057 - 103216770588434351773119186710938734990962693994308863136124962115533480185506409061911658657379310245942539318040786487660474137569332114880365560415890155166849299096496872963595866048539969946162454786673336383837036609462456605708542327686146507608714494925488534640860055952985743958653784306691097015972 + 82460358654789950880830824273439428244472194972702823493970498713383116224227636369693193593315338787733800948414637388374658235570390014740324250138937638386035934573192636335845192074954573186933356176504120220842147274431777029075578219445207175921379663357364818999096332248755841469572151389219159345989 - 54752648712058545787121114687471119271302055397392793839318072422727467093781527919680961074258426178607212784635707822145727935699578060867500886071672740175770881057700573327966211037066168959577109009999487530872132794822481850637510083655362911824019874291849383374322593328404629824989865371358454835974 + 63820550927757789571718442438473133664068026750310507501034231612335006913751452510332121834021672212052220152728227879820980865701017904416703769044265625634030354382867608584355461341280886596288520095865975264533776652032642020011240652288262738029704669743656779202210188268571237092513466415801140322855 - 42851828805541195009883786775109260802306696149131902087857588149745765840046461349240839369130466640137263101319374180193611430497716316928846437347117729727936785709294334307227608765940364433207351610316665397938610942341932127797072049704790688133139438868836088972708829894699777634588611432443679030894 + 20338566389586008283863277834591595288137913999283306547030317546081741963988306736552570597874385842637338016880901919470956429343703274134496918494706103815988201233782652965337333825393251095346941564134881199974301612928664994966003251671713987851982257886918194898598181669546431263669657591445200040770 - 56195948982382135489246393347521048140624275393541916274165546036909967702036606569534896938096007489017694895914457928665126382648300212291697343441552844707356657206901192073790480796954102414396388112303722470448793951840874697614998316137516277595020406793551934311509552017541325674705050386033905379830 + 24193698716504379197251960586172762741914444741375365269242567099479141373908432173565138035932620402155109652764796533296532747118129720120348828011766053358492458431638444442033741243983909734213346519640126078875080129421051441097940667243057690617034138724383803262356458967306196589383934562046094623055 - 24107847461793422854350239381604338971545010597250562087122149968472033140065304659416840504887846644963608990411757906992918320205701816377096006843966566279183446208120220824084970124713195478198068956313375053966208115332219063071431622615702779961520710873297025440377383637866274937207930071195136830311 + 69491731018856181420309595518753711580540960615704830003753573483918988972729084682732649426516364423243233259576752708641215669847207204197155659393957835079575981289652343359148249417738965140033176444334203132629442262009609571496350428678443664073989225914989042769712999546280527933419334473188852958107 - 61177537574225679163760404921520844904096295590435840519533673376000895986389573246429351055223862922251391333580891213784889033694468711063859126661878527989906270349196877041139123978536336157420147200607215959983266410846355207403650013481074650248509686885588611445786021297060505988802241098043406086481 + 7127627652861325422336080475597923023205520899979725263262343612606998343015061635089458685056979284865382077776073796343255543698806218055435767913304607935166129703418243983302011895185089637036986913970566841747677429062211819793339364716654376610414703402798641935660632742156696430581127905660489013811 - 84887671816395455312911451591939628719722131937007990590867868264533320465010799329746619589011520279041144221750132700234612536672613931212680925031363552306030797981249018172167168400515306638224258278090106854387916569896472733137621790692525804220630321287465634607313733053304497613702872959860825268460 + 17698062121321767315336850796547821064898614793996025794973901207050378634601402664642952534550654187600900044170522743626346905728651402036226326744905259078901589641539624933088231478516393602516006640688876250418198784684380021652289160049798511615064328156072162312434172929162882814863619302226498986642 - 2556677969626706089523665068616933348625590304938558830787982792666519241220623346521368665654001354887123962029498048271955545442662165492152622898089040365304330537542276669047129463136171650732975267514896887301094809447690044424669874885312491858384924008940254957793965000051373658132395236244174538870 + 87620594525997878015454083196970727216562916393785474935217541231350845059355063224810051113755869260918781882392731724982435805034282605907889556053013564692309789168494452737400722935497745518061934058895280223427200638152764439569326740665201699394038414577146763764010850199789878737916539513700142248274 - 40792921696517525093954776102175295935829521175260612019646620433767236057608574877338861869631074343854146162999411495325700572104840274343033489002530236433438807129254779553420933471629997343890909298329094609986756351805323534042305707669006826437251726976701637704166050881218296936395754199750796261194 + 38850374867619746863562963731297082932827459518124969716799289307162512005554679907551909998628521689121561615312112574842693439789528514367949841499297396544319543029564987103441807408686497902095708110612072252679700953139580339371719527605675735731553919063767529352742145678776433254793441236670261332935 - 78240913392373641808133296987747735358744919581359739898094705442082258773073499970536740612902580405561034734835094855332287721743628995570666335975604732292402116666929488882763951584161406590945404743673546515343095592922896253258318917244431257003930328795109263521510879158819385846130649610071246252201 + 2216801435771536450460392347538064994111908347041393607609726435004315414340398262162789645456031578056692488778230094916447692972668165927711153053159886071130469518179815430887775854636188647958820972497545386020674218739129439414292979219998048801629658604234953799110644045719753258059177801516345255804 - 16966068935123367267493997101200967126926280246181197408513523654518495791773352381181081739934327993390435313862378332185026383696769666443776262333886661977780117371238319003705481616985612818456365779085255056641308651555284827595068449121157859281358546066468141318687104232963003371891304214523949774215 + 40245524590817476388355390991904205640570393871351262682924719611920864948077824628666254791722679436596277972381344492532725523644007317350017955654825051496287712008087754114436930099028796980717434713646011997494422145309651407733849986110096826026782641388842722577336097896267760076010199501168052910324 - 67630764663303176059817693032465655560294150915923872702017477230482909129522707630636489790834272838675287347918901802726464737286070116754023538652519224753835628407055475816194619661586096951013616985567842907633036401401947606091336092156456453810417362462924360192253412408964922191352605958054392454636 + 13415359441333813109996585211954457380267229524891317855964314300888995191284994428505324651855967091709208057281022044381490881437373767305406270958261347840791794841855419821028184429300480256308844864690743692825722500549920610439191771122602886448083708659984884363490699600531817324080665470027121382557 - 72327820052053724241948652382833853916593453529671161205368800332125629703787249688331558784684099744775514108204526530283737284141403040637538338957058359367986003060391306049699156822508943621495828893876268671675280424177564987369450986613990013264043761216338960981927382087605867614276175808442283400220 + 36487937231618946440581662996511882733321744283175315061904594280874361952228344750621996173354362620130243490750428975579507805503174150656999484931763288225631061354135564391847321211337054839286943205126552581548787035124778612039226061406439345959332801856734356682506207869433770871030257627292362986425 - 42347633045880415203828346567467666190624866897182226635420202096391843573115082474513515233086170962886459674327774506969533587344654403187847038352743448429074035041998993287196778331748044887846692444980637697822289174080433281895985225591024494419624299046207437254266193777260390144227171293333764700830 + 10428926283172141456372404563325302991813897349605006902076932825388880596923101392846794068039036365160719251697065435927595147957655041880999886868432802234336427947325365404479679134739804313953982000575016224158364891976063170527898016021797046753341288953042899920904972379495692166347587474195974435643 - 81526841552168447090040828799125755994190680301005136009426867565112257857119243958904788158631948014966275337166758496491757718707010384179266900940245410603165916293314157919241022216826817807513477423582131812659654942214554549868426128286096025562414651783591717627572771241351241774742965115359730117301 + 89013431087608151233382751708157812354341365545834880180877606193180740004910938413440490392972768559821064723063360824397157665081949436787476034585302218073663796390579545391496219828497860900527894910242731688902839535079701761018414954017546876954261996220780619507784464736331512715856487326003445117305 - 81914115318204613910569952106441645860726576730482493424728979921052241445757176364736779124124888061015868994841915563556553690038034971748008911617520418257949033513946149855577977047551052430888880782741021141282962961980514438193727760999936088861047283215117004527930056300801255359771168751596670337506 + 56657861798739262888148758750832208685699872502247360213405945790141859907747482887814177555883032942454097327054014167532033812090452316605313804589543463875147055723033674183321242632820444150882326981189170718169485511573753987117084765088460248043136690594951632999572030064125088857081024425313658280856 - 65996852430159820194707116035240689404795240996052916268651332132112242342242969423086766453601872039254618125390111506299862383840875258666338127360018630757613180730422092259480980068754455294082082378103777823455249415695698624860491449210443667342379187290782491966614683378533969531404860550980962910004 + 26640257049195891514373729100606625923152330043152501470129238935236290874620444115309995833543654174648041046907951647833265080668924858625566205368874749029062262862949918720877133803292627837960922045086995912855777349728039946348863998558533915601136538183706218606769752343801658088712493115598711688108 - 29175900971087828776987321784815461819743464437757611938089545266953816466247781331706603396025167623019693878732309527620059082902680194679784934699620427012866110570196039663231759232426611809473051677401004439331671982843683609612367911351771619060680756668755025277355132701983005918422669697582413090010 + 89315485915756721812720904516790301398916176167321068932570021394345975872413352694178320929826053334220125471270779441245414955948228797267150574764792610446407506275352982263215770242687066489986502348787098723860844635398007134289275847313502681869295373956930038653616847875660965820725707575384769321603 - 94044598607695949829234257227296617743728587131177088729534102941022672175820849795033288277846906179283064001268842779139323325800409042012567133762123153359227630240528491067268446341268240819725073099873258375591930881229897851769811541522941725447333063357196491219288701935345935644398048313500286056347 + 85788983024651375330412425236117256750265726496667620029587149704117319086113599076551769144675917549362177967648298914260877061045422921800050350934346480841265781151685483346491303637260478069174946718457243436189211794248772722015250826482664402502487602090567878932178610029049208519050452119800798590095 - 22436735077309375081433597811582660352427864605232324664177775193729857904443704338155550327406584250487112080524414953928846970203170506999019233856421427620891044980746456725110485082826435017422543095698014763604861435160818858306743850013249545798364656661247479843725139667616193973217157001557718320242 + 72558441806729709159531880600222108306652398787952226348316184551382481431764209245385528602477952232106634438070610545466008388176262062617331498206457443279791819583198953712551299372051870420518867020475059673622504705917575214797292674581517236222388615233377176605699584781594985516736042377231750347103 - 94166947061342815550179317022260417144249713169414993932344735165228827976374624809867416598341339415643699261712531795770501348354645488066112274131661701167498676723129679140531504806737952585523737572198804014450137954384727965925590162884315742640609308255305505209473629196699411928209035676015857711319 + 82066353905179774576826663035615202893157098455153879484683477179224541814192413700028155090258256429721421437440200630717597232318978071315058635325554680093207621096692565501303092895473596516964017573029126219905028164332631343720011660362366117163809539281720992521965164194684874012707450519157392863834 - 28233395575897013872335023839985015261300816314035468843249266520453089104185429391442203451724030137361892175518514898681103120848537180351689557457055099317416328882217575579391166912481772595730301391952824728247925013015340365153771909773688382232472778766114517876902553789490443115670387019607324016348 + 26390406316621784994183711610697291186244370038352488989059964145088549875661111619245442938400762022569001281717548131236032422034848393063934837704803394012423185824627961731620039086296504475678162662679679870907710889722942174081815292159029768003071257529735341577556777256583969706358648387996045920000 - 22048149968259778779575830896847579355676379975803612742324574473655819241258657338592033919879080880416565723235880196735942058955102593822561539608845001169489672206105537961784502789868523946763117174516322218575008296021823766863302499892280840572318241294322252067971720364606393354409105687909954374481 + 80371057000266525375525500202728917959314635378787029142800198194478091209904440925225787131115697021759668692773498131876317814601235866697869967017076806919234238714167788415726924552847057118467045227163014473200180490818970150451467327144714399542238353619001562879311123589010660345475815350865324634005 - 78026927094793514794900962865070322886745554392313792060656111405567935406570676923883160437065440457770435624911439314262289182944860092434185792861765566056052281975387377307469193817400949849647251440246087835292769967643416167719201329438765150138564105408325968255173848185525615232499319727300209794392 + 23043443991327142453263452806063740250430665592385905072100667246517993680316442907115637214163463654535912996258877883881976590714914818126057801564089392157530490569316401525537371433595738484056504668930445604861304550164768793851695620663206040087039790672463657172622542003420786107510881905094402209133 - 86923849704005992077958977802826232376733039441623302550302354340331551690409192828788816578990022673486322994026739589586363542768177012164745464667490113307224367240801270078092805588210850832404778122940135735065520646855378365730736667909680075732165371487163317316429403494833518333991579916893878578602 + 60100765384470328170393502763376738711150248605956946860454075166043397939308664518059784472773037564441153045955339457674421595857118123537225080994759659143947221581018812867023591741302594594109341859575479458169867399344917539952696561800642319103438705394196956850706095518835195760241517908815697763607 - 13981622225463009152234162538939989826374278625672352332625907957287804918694569753076594200043347691273287989591131358352872670708641476454194593752892190500897309602007259679638664554707467372434680194683662766156074631576743645760096308361667307169641402380676575471442381114204002265352018781730796631102 + 21875792644444037547999096302336617003572471984935193334898511088529408875612950395684101615558542453605808892275140384852909604375135631139016854013738087090929666212279071017282606170080694717969555993523452833403775551480948067000417914492012104611173191920666632048199482669746090010250902316083272179919 - 21921593322021025324359783320583693186986856723918067135354306975463601306877170291312837282077843579259623686146713513118910312645680781223929529007908283368372529884951847628968573293666696984599408982317273562859054254925345574517720382665804449944401478487838225790527695883285815629598065009883327825458 + 69221580374817508823834010261393693725905768407719442275279221309270429261502483486209575232162447361848251292729896321417428681300898843854426851076647731221241965021672195226902065810246076006489897263261605825894536509574901066985296566758927266956348938126558882574201163034833933505453932150263671501194 - 81859614766941502894701682387485921437242657770022158756768884532861008943272285048649029722102416072234439209538275290994472349815641645557470729930907882171258674861044817427259454097915234200670658372207586018125698912430053276170775341787261021721667993626766741298811555869391487292265934369786406719192 + 56149108947151870724679239533463063486805175892509858344893726182817359285051538346124908121940736943759079828763311281499249839853565443309984356366816734977856676627750801493020693156323632257369457853852642671764129598322983602020085045625947767905055652314907726009946319248442721871439586734987053410711 - 29590214723349059668868978966964826673900483861976171211060048742460288251041628490892090116496886963838950697009898342865984598952814240238508265886676334386219650294279713901104828872014694144395625385850251703373087546139763995544405003600691008031641269587621279079496549977510407577884129982558735423450 + 55380125268263733891146722496502232061823772703416575190764711033163844741308287762920330918705834431766831064271878747860614415418938101997532543139169727383389035387056852674466828330277784196257070796972930443693535974803213160318821930190955827278802529116098552556317197286108743567075244263831431513341 - 11342393722320895185206049205283566907493141389050981376518331252877528646835166298936352715418993031194161529064939459007707910592397944228054421178958401798691300463672117771275187004746176546374123101181723877142516064637442036666437459720681154962568136817094374238263354895083106032311831496918489638083 + 40725100506085721940511334054415960913419449808756547846495037748044517660824898421514889820194468045945867349524783635291741327883482319765694523715160283216473753351897243111942987360716602761311354894974528180231999762093817172513742706898612399493651127211291341918193030895169460362992213918374917187373 - 40793356195419011348343492087834789386368304761890515014511247995592689264148596837100222480492978881766768922772352666249005265107976014845966305684804857961167591734461146256359234951229115047413231872334774815416576568591473969005580648890420755563997278084551355112705302144002147435537560311323151702762 + 29629645493928548093165808517398690833885220081753851962634719576151155012479273452103024104435369432011425012411523223568216696666289833008613571199299240002724454654344257669396057094398117398765951728121292682836374667108770102464145066229391102433051496358623373218030504926273986017040603923127731650811 - 27152803074885891975771071109611284384942985201830652320785093036455771365820844570459618295891130129930506428498383697566815642833046167114428356361513309024364139126637609987405537915982063543723913867205441313752209209707062456656754110814107029265078836114620370373946549552936731435833029601098945440547 + 31189054850147300385131742598346544919453991032534321590936283233955891934534445454793205859172809599496278452587107959806875225314674117777266838172308569472224520930579102383299184288721960373634454788552128619894326289949062212956838620503891962068601247979007938925333090962451709106403318563479202809373 - 66958153742259320262405082925435018964153850086335069166459869497369687820911308084134650202568445353989070799095264984468961619099226804945026952696313533448405581290933742504156095836656174245906703056437153974583757478708469787246059529153474864542962920047966222691395151284375354485820284477453368072471 + 13151291071199339090695741518270753225186910407326714405573839315403396406333032242719388957429440818209676632796111404934678987688339557413352820486908680509032853997410770051942653008608597874787355862366731677212141766081357441645196008406827394979683496386018029928330821455879715586289428926511023666581 - 96316781646112496944965789731750017029445894567605629505891521011270884988546314081458309123301053683797550078084535024919393719245950653739599692555059965568764270796519200649329263319334567240462225195161989121386758097628515056536615897138187008677062589388192140280090416572216766456873968652401782574839 + 82103874557165605885709122142183192866418280845306319540525900699414432323902549204102155265804344097662274195776701032296181638581845491549004440399793719947753855586988998818321825268352136312118000766861604555462864445598654720069826238177252266547988497105667445824000602098131531508561219067635876203721 - 60122609056779969376841112451956447938173785356238167694746966309726351480396370645297640082629868373139936743815792123220416193137203612990808386798496795329252131084650185977402708573738472433601173705000060774482395844715047436969551467261350903085771750733391754077773867430791143319536885326778197605347 + 80244066089045578678607679578917934608128624310272690439884876783257665890848445955280029197058721659398522491484136298839440944937258191909140416959296000505524765451363236359370301918055965831843946912980495316331889591766662884301781514447014538650045681062463717559147502049859240607455141325959426525081 - 40987614578875255196440629324596752148848639730844981898313664196813068733709185589550005357871352262566822918850113666622949477832137112037336871062814461362160808839160059689529262836023659272938898444784654912332476324961588986271770735783279827691750179735689391285750194655439738277895936296775333258158 + 37646707771143617441225205447307991841408821043350242678929189086832282556365627591050712427002828813220863929702804273119778175405633702771628411514019495175531836740386000315692791181248327384372621359832240583426235494862553037876112606408441991869034017483114715033901683235226045036375463090046725344641 - 50672891629585207436559340943506040384532020557557257167770253247862819420174258825729781829138537436324710232039633846450302184742551824065855273441077335342941228253007155817673821741654197473909772263703668958701534459794835002923044217701793536430295612374322671683697917945441051385088392211674758909929 + 36827195527179085275503013915392082646352850927167949237757216035752639561111172587907888853401558707169362259398341129414044500801097306078530141079372399055088425823402770211757203292548752171862702063228085655273936190489083632501347302554478049912564978025137496252113362763832915954502493503545088503308 - 83954676281809856532102532699086658443425045098346300392616705071807238058733735310640130294137139394851910545606753741898767818355907946895557865086083304803085471198643760039031692412547878291961166713829957424405253346816029247563827651678575411036575327389357923120548173274986920542505808866274253770179 + 28017477570152836018102032367250301647055890703829391940185969090867160127241221261278353764026373059313045525391385323705870376023320152542098095911255192317447757242708368230279787445413963751724877198044991885824142515994547070977050822918895139306979785195451824761772693005840375418044933131979599273577 - 11087118751267158597051445920333087984560174671956731885939372588154705767799121789423615748493631034543117667984596565814629554682717499394180651465580436440689753248435295293955988039732906484352635385416687842252302769535103305311417979256189306052148925404079000805613641523342502240021282589590886131649 + 51476886764477291646170862584856674679972700707904905882304406645315795424498867057633713776336883988216495793546926040372691925073744098269858968257036504429126569931704905407635411734794969248662340103176150456555835159176288264467389706760723830742402652226474074899070677464115540238302493083348877433340 - 62257700739563692181731565399888981012744009999868876656950806623365106337430066095830607885654718626963132394474213217977141719645505813260908570543986219596043744626307305292796768623523180120876076105478826373793937567194721311519985821839360994132518973668091128609909380384517413380586970990513546697306 + 37523275146310993949878183191756364194362828595099673441531043178299090396350826088324451349223008779570080150092246181177729671073730441500810765705848562425299503405140007190530082296455875407207377551835284333159611626106740565297255421961353706988289525972590582318363916064469272224326918023126607660099 - 58699762410884063835837925010728765148544378031955669147478787233628269037598976769489594967267413633226305661841560339284669746230063061626994970977840638175856324642896262053326049482080790792508727632677580929643121759991848813887722284034288203382718290943720600946494683599694173570744015550737443330549 + 76747842175089064057815931921333903797424937853533709987121678050384014837514910414240080011238593976275520009506761376043037542991469836610628382582740552455220324142940721551509358249940124774632109419407791223264379397119670120233966815293645440044334655462733421014495054399298993155325267007028367837533 - 13762185116774666620835417169157217397568524585173577236206567341691442230312754453288230720969436054848462560615616838653772403414749575426312596242353724852541818061985894506359647370043931595920573531769374982786562620645961063932884892479122266048841690306137886113640484019659492673337604017033106470600 + 88773001772032623751511622152995446885753082870594526011423477091516998382827834451327548819803882516749698938069700432447868803149038190246171070779847538443209396765087930820808801762481297916651633667116816898401823863787491239515010379723787533909841393770580304401144612430307881366923159729772858025956 - 88697113631897510997346962186068611695133209616699883457200498043261833419893756608466554894576245404594432344477121905355377726881688510076881487053707011637253134937768923116483977139542819640403837779217543584966243152484369981480825691055569190954178394623024679292513776399611845223776427918109418905214 + 94402428353389281971609741621824217035162281138272012209734421822872748757006990318086683477038761148976702738004618011296412220782724348640829487777503820952080585580890860610106377104018524646396810838081456514640851352265150718700856075198372754920037366984327958385435485897694097892837268846562499144287 - 43617160662234781018769852107799740950317488617741226724206889544616000037771961806437057362837792658629708956999592206330903789032777913004766827971662248325939619972223691701750819316648091907744618170878556354028219305523371530820116944614840134386304535467703243714528801719166688934889283177249165850553 + 65640239668708698702583953785658566170015967096257661508661209527730006107613214046146504513725091673350107698700181561231975310632259186045874359779092131841963340499906506811557396520059895346121858731795782638601519127318452405210330561664506302239090664964510892577861850330666419284122172916101453689967 - 36283685231680713399148650496691229292904462263697336489985063526373785501998249712253129831383020440613234623574870789028406563540486697941861656042047727136988869543218997320020149837156761940146124884427515984850152270099304355646005353173514077966463112887279738472921862660818835182134218028630453241018 + 57935512332376439857924773070817972343800587219421759275916051413362674526549137184678163653758642058640659417146510277505436763030578246643443167926151533560791415005892748090710580728174549962141461794062766046287608022743734526299601759249210873148214149031924294883720824061870523712152457432417510607661 - 51120155114093243479949284771594864611540882665325311165708692939689639333386876826137463895687155980601594443128789079728999291961756132829177201433435305600080345911158486920343116146034203484876873788246859805767777061790367343738742835432279207284466041133816502177216877981318022287248728992313744076860 + 28608894992927828437597662277776359320674661193674092256154628287827861478012752975533166923945659742173384219471283408992643034399813147741852844232665853619558056009563789442845744451036991042305647660584680204657084181164531009326423105089185393391211670178271105416028906903144624251159819063739954948858 - 70088598228271678262120559154985097438846482344207841070740813150712255220758725607953988891358152708865158198787674843440618860743022662287499603876707010531365332821899206104558756642215766324426587972202179015850720373116759320830405142057408186866442462403391610714239247467873309941355047343827204764005 + 22416674759077391541502469617182140121621521020236851628366198609929688482689141975836330885770279247373130833175321943716688915705139742659194215278636319401916678045729931968331793779004119813118570346224779375684014357232533677053863927520053406461551679568780236685310749806913281704387219695340249994703 - 82487683690862064542428839242551099832757202687698701898174434749403953018728810214414577535667517472664081925190696711863507186852336584081222075839497195575559756637440991650605860916251655768206123711260689435922505693443483376615524862449062603728345923330077250288632753929693795978218265589151574967067 + 16766373882297762755355466054440358684125114908131791498924629084619128726399205351967784304771086736877948728451037535660540892839057000051059672376898880918857947343759411426812450476325099107612741656821646687529676907661640207578363820913315305713375981348454350484605807667278927458202840655129235746334 - 68877665088105071500678872080774332596399221179166248817709873088887966514365504401464355092670455218937829776516880118009502232345469509054019945695728720141426695060121102456209859001709888146219745490956595488812227240533545252146383669283094943568929168914651308001451910999149486024473522567975895867116 + 88593942846707470725131269832338308683641219354769811978580124803550910982662013803948933165857710078600665579306120099739486028850268903039665943072117055989076815897636844853534271338217438427178915189811875027052517611167123993061922184955764759498719916900914903587230868393928450519319843660313009449765 - 94588902129294085412156483973479029201388022157611762760773610058855759277448980200490175779964553493652130588770365914089788434057659519596791958919280010606326372575875853319531298342353551277923305179701431374333575649848697803611291730106244721476066795647879840481476273847481646434306271779664930948001 + 23026199313101917764071589526453415443239307951724031941779687585446570684627227606430588092104852571139628885272917718455504627708882817047308185042828017936698106487050173510675012250317909492821011529530232449452502964417228265661624103283664329245543181414637905737358513635181787272930286023367932254843 - 16736599585283245080117484075626415692345672770413417979638506041183489176195288348360599438468967555579284212528178029080088678831320799871444998713736633769790746082990058221505833378025284324026283346759469441723554742575971461114625792487689937671252154033740391180145173616653367804654865516040499149627 + 65394285083018952200956959608927429105807141523438896051419662400168872847814838460017889981990642808174892186581275192178828835836684433286028065410457378057904711729208043858170056388579110835836590828382552230115632337375312442141425187671576860761141743169393472728351899625359889199225111275300325130894 - 18347671112586045890548491075271122666527933440004141998430309677014421677747065973344587995125008284543984012793465174348127445164516525837963517777765701548741931460970788245914494724449761987724550401276417980849335639804213918756765605993908583777777506126955636826126841372233393409147978617527703398547 + 88540591212205686106270602834314361825151166937243996068287313915707407544529883412569136622780001045816650506244930233660589049374824607867238346701680500830484845365845955829243364036941254979702081404089680596092950817353695699466874949748576026826390019263738162209765431176373259319067477943540231832878 - 25246464593925011754560839639037459690221570154460810400265765293924812940819462401435152616169838330472612443352453957146882004311620450644309052783337549155248732165716348510268672306257977387832947804473465607428236607302190597048863628965502873621639365260479353236256221999166905036330170317478345202622 + 60716925354480761984668113947366268505954012461881685723870953452260537293340192741250347901459706209325281605352902128747713845124809640042870302916547677786510481458070548789723937979094328520700306817428015672163507513341555109049367716210359688843542894513344589375402160490088876721941888511198847077053 - 62521597222268772794314490856824784431279439478685088315889407245641958353804914399142886474330797741846201770381094227537099569882066811416001966054029228525803794711526151753946373846454902865904437920119018748128331163609174535826825480387734566395319672224075748425144076992202416581444411755679203109915 + 39966195588595712663706591708914970055292781649240598413587989080742693036577116441136985171474886306714341190873094211702145168648135575019911735160176916381577630501764918297421896727282251089816895682158039653054422878368755490243909748350156398184634484023934374989366704253920176920694723627144947571351 - 105118870210080589033869693269974657522761185957403711792895790017876179752028829607755932889246712325042713938977436740928615265286244690677831928191747174584783252781007923184263836950835789165390760058060699803355475215431950836618416205482444470964131461516167031044000169717192278086664518485364762663389 + 61732884339146495785710466099668267080543711024526511031686747018549645451266399633267990480577161368541382043578785647345530278866189761340068391215647462430686597232748761565622029536681707681768964814293755744283954344159005543605048217981674058359363800690889916478551413453024939302829571278727379999549 - 85437739839745120062507083433809874352342536019169543544459165800527702505599210984540245663591040548907583276427561596814464028167317551891043142021865684508450527754647940951663200667861639520976518289807504719004079130836206867620991539384608241119789612137738037315800425822549603686012859795538286735486 + 57818676989680228177780317101861327914349972331818120267294129331559063637024043977264976611224771719685751854053514836628809137173849092448308598705781382086833844314714304290356818103865112266462827640313728277688519414093244528149185164128383832706764988885705506313658179600644712916819702892292453338129 - 50341637688749340546760408813237495973825175379590891452577618276271407563836721376131781475808783030738977700454035837642900883277491776115810566310587461846010542072474744147405096681446035130932904683465255612254790121867930785333263552109368859923828788082641273827391148694288690785868048034804836817058 + 69562791104654108367093211357328066234953204805372309896539947903011957093344573057234859978551379792195983219884393709500841396628871471955678490742216103292578517361593055854539186743847302370461258495554231191930496497939853527635173641626664584031783145730992375174744970105873057937756904344648107475216 - 31458580220189779672500041727024200185373713699150670733353979296711839989217851250904812890094475252935952498367016623479009014263971484027702859717343434805935679777268528320975487942001984825693556705048449265880008949393923534042743395765639081309124173017943359128929436600847260585579545489962563031675 + 88778316088328687779646559486450782501795911375914861897112233346583547807135570329519114478618542297387215351769782996772598659617568974856068452121394446594382416737443950366568480723014247292808832658150157151966742288780886961092341304900275521800976882061055547783691996332142653668469582298574526735319 - 38875983409265541019559187298022748648926919575132740437543990239224924849199187805627504277354382828877700774987579054890824021297304643893873899763974265241337110872247890958538725882401616131437121672656581552749110343124522679582908975063042221813483240265406600318899766209481276514604481456003755474052 + 77447621610133639990411370648947617993697914754382934606446837295794636793702560849043624575817385154884018616549969875806173713873993163896625669209096930451250200567207576182737117614143961518068910519113962618920552783319004516587478665606413926546447972936313485134980381125546626054168465788887252926169 - 95626116064288586745314086239597970173312773266310060590219003605674605450202586226939512654713966280142848704707239029054405815114219385335057937654971341168831186199450904106300077371931865860263473392418838112661369715719693203344830332351847481520382003440456885706972863406543544165332159109927855827655 + 48026064666960347249530904461979418573451490890902659735345509972851540854668029012439782291019783850382659053612890676657106948259238341936913006842697770337819431821712854885430559829303393514876125585213619293901100890257030514880193241750275803605170537567404696134983203240568758637060783651600720826920 - 84730957001734217916619518479634504994960746986794470912811008691731969550670406044657325895449032320667123558918638199734753032389362280270017723481884692430513679108815341831028280566956023066639720419610493663905846980339707876094059930051487475111406110613473860940609810525547808165895996079832961476615 + 3755156195134516615444014270629774753930070456123963076992109232616275549374999532999341981453813246977124900602833590914705913542502549203102460222969252130839168914718482224309904743015955415525366548220490605192113652161243332483360332754230945438702064437705329013202006460330048083010346770091922950213 - 12278787154006099093222425022602496507032101480955052645423461377485396816082386918303789370418145356584872439973844000937563662317160709556967148709188000062551045836217986166037278291794328737689088686455699519193741889506702603502849138629903927909603917191462530881718098683240263389502983367666284193937 + 41296827888776783636276163737070005288042186168863740522048008592984735106886407113130958190548977970577095776704420650697756689495246498855823317185240280487096626854636042194278955385632023193617003375452398935819724085921244216528158775292181828289969825147945318555288354759510059719867290318504726063749 - 26066606709794495509834450481405346916052858709452948260329732561291892199362183167870148776820212875896304567213078585113618413635629478585210666806356280441494500141577789838238083897587195819514774817385092829087341088068761447145803346816870532863332534298758333209172365684877831227537749970156123146576 + 91054201932021582179835659880295201872374922128677892101414909173169286404558153467287983355049457264222424711013266315220951807337863105391483449949059068913001616162506253660197517537044902090301980490950962869428186795704854707442734774386600320368201634807918595063046976313768944092709560055935951304206 - 52692640061910149122741610917396198520967247827912135768325619994989357778422009750006650001909903472524672795541064381392884790107530081033854848912826496262657434614591727681134952541994661503228283370609568789015661317562988191516013637238888519993923728361508153656818072315259848129253447503074276036928 + 22081282422094915139513681061092624942637657296405187551446476698043205792747840053638914962696063527262734711621522778972907001274227902018528848614752878692187459575918263685192639568941451592971399810577022923173651493691614319798331083653600230513050632027125618174112189636690164177881957286201501886112 - 104736225770817240132725445281783441527917352830089321870513077522245006236761938945277220305988851383796743093563292823365123118675399064789571469294900284726411558940675165923070707420889950350429588538191600704258269410056882041647100047284900361935651965959921332160695232696592365829191128967162740204475 + 31010551979628177573029458686284193813063546478526562314959040372964426058046477842477646711358050516049248718449291251419474125529285924100664375344610380167647111346707521193390613960738718207101046100878441788966013855399729223865321539863866551536916979371765463421886990643576796004362355661345492240292 - 62714898313358615799747689666378258721371177183817660270425681248445524473872183567322856284491421544587431777509059952727506923779660870540102462292644620789612471682710631213395808472887700002673485434548758662935804693375176493332853635690911987518967898336388017405185006802439331330711409150234782736084 + 67079534017535970595842352502939397785371375899006257928089722017665352520071445394313450779574449699318237580935874735975498986240627423709145540941537545052057200403401064378279584945391555726167026067444201187717316284605123249628181057585360711065311183044659500922029358985237038349176187736258521751098 - 90047586174590340372932174153761462746980016274590735161135863210436975864113648674821648623977141737526752367207174105819120141489475694309245064256081135073231155780528051515633048126041659323625616603412326911703712714260862209325644965803696322204834728804912864097118636625943500060188039674052066957978 + 57714578114794529296629169891575250127717126610626382480740270510054129042890728974497798365385081584276154148631892864612884033499938568496797861085692700942560308986586984875564462431132781275934533198891761530328357277317233589831008113435031106938145605382913745324823380441443221419046116752628356724254 - 82123385156789857269168421688131803016194486859159085173788397372068534727946993044603168862744881754986049202145779336892541828420613758334461690743303120480315326499271763397716876059892519375820206612950117595208639391200114189770292290411360419400074501551586378729131190619753891951065871501561909533367 + 2540405647369625682757267377038723364906635366175841511460876222420035057561822254762969890004077559329330729899208550054327057583703975931510915294360367593682028017879521278469591823163492291974677245999235719415946683233653373310684919973105690322149128126221622026586344138463035827030574080909649496085 - 105284603378345871764607003389024436203327959338800249819529336359142326882066084118420365236435244596699690985810693419275252455368978574949658600138647970849736154708031592888327710390668590133982749409795866085732105519524538168496788969358881305873400289609449472808326184782442753465689487200151284487700 + 49802708769267438758962881883102721408716241450067892120255789579370613124340644668619326515187223220284921336226935237236536878999292046449698656495436430465016021925841688215919790661506275697334284241435562868614100111609985856644316813073457819194122778144903037129942889905044739838735073696913586870969 - 61904477865735275595596811647973140106931113105427732547466139271941187857220807626978102509930627901811444302385138622958694950170826510323343885877484925204604777693168517261241222872086608925861846511701286392394189155130846266128401324533245089727197834190539530286922557338265234661437702955893547364579 + 62609028913821918197854568698297664708721575733047296981155706837516305897945112229126645846398094338385935189316892604246012430671687465237207063408256376458618860599672116170256841083641819058317519925982949752240115057113258744463704670165947831795340247114803729858874334626428097040488989320276514719951 - 52784714118592418201489481626309272681772296640922836934777045132064818098555708681936084137375506849950921963542946331115058765040305546108906518426777005734698736027247748378861892151634805066744549449456159335713564370601456405593419854952697231239480202038881362085835312353859832978964476333657328048640 + 59850942282025464943720809651981202068427491556007896134580154274340456730589416977351444005401734765627818068385734976650546157097300208681158487824411571577253948281152986570521632977341290962244287969468401151085574482480064408709660511625557113785537831718957243040943880487304822349268632355883130665624 - 55650126137618943571851708376419442084734764894861627665923019291696896911462436625980742330478967969447338996340975091463617010794267675815142581644892868805683571524590511598204104126071143107827552250109663384238585752198872349821470521846838844295368799778031421646311122716346245560462771583096297893036 + 15235844073123843644189440501004435729007287838423762537976017479501261069736981258868146953196603806838796632340254902940211603527615800779302926485139435624956596279670538833877342208142715070323362552423269870112829821684159295088709584866515360268432776920200629928200656753191484796136524723805764086829 - 48089914502754882211444926992771182365047615553954585818533007819808568028620691220394012302416968521927145518348279764255630504004732999851016660194304192228689808739254084321800819866180874323753462355757303210295679710850687352107951522254933660756441839988425608118053370101363211651334302760373261817550 + 92615465833703907395172029799779124533171714869161239142507611390195790843250324296043855240402287213798805347347591961365458238707597390314171331618961128501608779982946900489871630162145232321499350869037278637701233503547244727629988308625343046522718478909646725411299458704116443958575594000816042549839 - 2827276458722936747633624814888468616527915210956242714655650524238234330670479801462093851892678682741212817513024153615183520722644661583724626038494307538311735224699247498156409744309292478238276044279563218100503757321521764317465748797398599150846889943483315455652433035615869025183329024756095408533 + 89911015375225434386420720316747663807978647129870282735209299854303366618618313164909266900088926896237993292435652687237383748612071182577632072088388772765627844437580034494594252717786882465660058862359984752028353914357794081677285583718745782895976599591016093627753735687989096370959183668981616252033 - 7006869646633487747905297763034007797134272054477002286347985896896358425522305124409177482095490583334116273295612426255922548422100427696523335402663770189427896058530397377063917458186757960891157217558918844955449876248072569400969245279442957904277192751786952243157598678144112984143178372580928142763 + 52434059409248781980180483448085756116012610079849624039157948131881977802540180881592907048858764139211254530568616690226491761190291454733242010560540952685905149153389780512524248801835836672944117199039597342056806843717884385417919624154872764010577135697340722978713545367387763208942555137519747028524 - 25110853613135716838172373556592059377041538277286490323796121454564733773545520762328909395461298219577157201632368437879867724607423941156821973405049269964895320390156926421066119107769280629481986037720581523503922485431757213601355064379817956640941167557206284898128854438779158710292874640374362633112 + 61020356471426442602461542664114752213698844623447676156295816583097903825787670924948892895486157500641696731111119637064515399233471169416580504103735913490341268448951257460805591872218343543319936761061472173925918344589602104360989590999681253703148665529170949763335197776548461018033295555182252132340 - 73746758638632641492094922877614009637147721095593275943403887223925098864509380091790643245056430942248984234225782085999941841152021643857950292422635922538013851444573512986370653414685743655064550528900647186080143601436357919641515772370270131729921361325754643330245298843183367598031655296425704246329 + 70911292203634081123627339907008179954945353960106711730604294952007619759186171401240092721768401948540852747699168495043351479938810937240270813760502437596693182982425235446446712981683522891223914571643728239344877516198820928271538087416776079730677746823745459531101530514993057260627892465553502159111 - 13558253164803670897846793366831008991301176254287222662222784239873704997231490210896261596011397716800277373419305315430467020444145481097805525630271665060601573796893036673599124259808896624308888214940750105128249540113512726078243473212912991753312449873736108007177775425071994577675777229863454762686 + 40116967953020664319341043434761974592188439683288744102206622684842364103866746699635383392913693710023686136090108420140056863453979882577195895323616435474942165859069091665852746146144596225676884809051006223033610142179402576723458181449026411994411883586928835178002378243729695967265738810319152169034 - 23237507166897260733557130622278908278382698955506061475808369216936104988802662419676340252186530349899629367265810934533848321469056541029662563619730440560013658295795518840048467090233216843743365688975034417512994414081394502473950135850366366473186453161609439329733170534110773230993749349000973485082 + 82525091411636843174184647539693521689123798145693295478737539961955306060361170772408217546668894967642742106281518212543048033657471611263908177887862727460784981590481248850722315715806483401799063816700748894665414557559409775776167985924706219831290001764946338623211247140431839122054667779017550726715 - 79093924035000596291910427547728471448368110748800961952277999855999120938593997280827558093791501380778993277681328275639968180315053936499399691831968878722161928522530093798045525265166226416290038429258391191064578675594425050272242576547351535981036919150221146437762229123839026890319711810609689520461 + 78646187733217441386914806192097256620164699169306873343850712595089863452909662837591699855179100072510276445526801620114089059237392227293517083185084605772889221292382648889866362096647978553834412561671366856928379817661628921718968910988524738327087769895610126021100373328414834988538256172693619163232 - 9628457237227842892174976070428334784523600795868143406931751800004704667609899024585671688471242354764110185032013421106737414584192989143924195371528180099074054771723191640143372127583759776841819159325957360775268463628349261941544146652445509245925633389013055341511423592572955877937511289059440499375 + 32524820262536325472999105799640842651031046507937586989361236635442114328813925284439458172106071334732821336927025023464723453783968390820386014552849590214851020215282582075796025847083854556378982623197667091190633680443284544758316092606293903464532259161378905363261114219720409901637316126307306762770 - 46622054024595535056021730295642985921950757706173594683033042980441594981207200280364336495844828795705481349010597029762626783915520433606275108003105597173014700676431311369982051005453230648473255546714172035517868111774302649669055693262474854077977658504386223301188009760694184846377061697447380178970 + 23833886442124538309867825188597660757090514080900471045401929903045275321605265407542550470370213826531862724500567542141613018181531923107943899461404776247305251151617397040218976038807708256252603928691993897130437013519731757562075271938112115471822761317205149232665365039224561084966854782163020320141 - 7613514875904134655156285610988682006136146525931435026567879796999378268781506025051647854893917733948422592357760323805282251641865255035278755111127651267868852317535626045854693285757321105049059842413099715366689545553214768469546056744384463040465137420197080453098396016269041772490653299050120701768 + 51771152707305586397556107753550837184522243896745151286967724685884135331577468245309999793861338962322781385809200780502443974220604098450395386981315931591489695546782898805040097382872990474735988975088507058202690818633380359002081634222056289505822736130291239011438079551844983778287307018635917675824 - 54841971405030277965759143680763108765363216172625965388610190223757717006883128002495248516281680641386275335807528275332693028941198578727309321936342380955639636068010110794631354798998610069223854133231793547664814444378271025437818047362050267273302041803859933200998735016635665546091267606367880119027 + 74551839470287934070330911461118447569492381109717098173687808338564989755789713813254444778096624688102658002395705936214843429251873432568126612081071796956645110071348760348487213062825825147534842514325193264417698973586443975965444726043491740562882864006402128727362026218358707924075337278782241295615 - 36145098873208465778257772675237691963506105319648869688052975353985765086046977247151556549453803360618862048943348881970722836567460157297936755991527074843255889356123679854119532853649062416321729008074334193288342666280501874887365008502612958482759303885608298725075609181604088017349890539480571918050 + 89948421007989562417165267048356100468399200250256479883273011550970703196907172668421496560121252626833011190493486123637948858174547226080010645109580883049583039340832928104237261127291186502170740176861441053110700206466302403895846849297718945721020859340142392736278219205270152061942484188675321724355 - 42700190865777152197396950628698080518251374599916166044779296927167653112725351863365770916467452609591606440264309043033987400555953860098055474716001054680172098745709047491106777507508640242155148105850627706649628169762095883961963045022213651551416259182915095818020023264684551817506619861603324455757 + 12449796973193067504957369207872097854621930722229599942526804262407400221340110264628640856679873941979010332654652299133770669902953162858241357162473981092741408951838303378066595732757024713224206657282786664661400487164244825784726070401858813752025258956630630528989060514353545665526327804484527602132 - 80099861223656468666870421853213786766172570232131938870484777800412969176865884015680377253800928252879864794755230407955862766296386434911788541168102058980016235920997773304023249830734790351999401176111815700401777896538130201234631960042741831554882496786150114910868368445988771280084887658120214209674 + 81150963548487351473879268417972900586778470179076335770951262010325602191327303977578520465731435406516342480397787466173511682173253618338834142637396346324046755871356138308520223949462603368224330562300070135600817621445123158338526001798271483587392342698854770720639003663429551430169694624018397817734 - 1536109895664025517823027875211027735789984280467251641157046707933850727087434211485450997781225167068811640343811267724859055390738552804212448081649340600469558781562877167629169772242089791479638871570645290068655749056463327698935495924122760204694147843243406437162214924309596058497861329605448995890 + 25765654759714161861456650822848058369455766635346535788736458576413184073426323852456805655472920381975073187212633635694645408455832090488760205486020233181572545742191825690645121082585775775958030313301042815681973958677132313665915973494502928675662828713359204950955521680552143233703318277166354356574 - 59511286993830726432745377284274948811967339391113264394497780951651229071128667851258256650790377163353128868753952289993628578043094077265173791250160867326578352921197337073136651457232168592116444599916425043668006157147135409081676019868302652699657615556329143052326754929055361440599347731008003632946 + 68159252411121443106658373108079473828487605786049995280165837701247587355351621453430736317362853399666063855831751306293867765741964431591145421316337749882671732327656210086212742771592540769417350197800722853922086328766604512614211512434656332735538913667299489603026066984280484866501938028940881687332 - 20066583756048338249346576643989148584406116661919849346017155268723147856243823111933379361969923513633963168287742266054704866038149855810615753527628780213842738155244771969916125839640801610218964798872311444491068690539525011231748748571060669890942347790324750830676062950091236147788503581081369053618 + 55590010338077859483648450202541245060812942717766413152403022638214487592464298547312979945966722880696391131142602865457701825814774004904075075757253254566493932889652184903168464699382419871512658070508160388867507709756010924098879882192438157728046617044765853270102306949273396574922324571118101689436 - 74062123510872955584825789771628862754751035512504335931150130154646139588403991168623589819745035119276603584618528466919660669805187794494431164546039470918831138165946998363298424040103709817864268465515038547630061060145684394289605649520780906280726522104690846492059941607901144770871321174243505821291 + 17672700637961486457352760611712293613752049984555640123938012237710559513828927684563898805065397912238576615672335709516700949788085547017200529807388806553764240347959855828052901224816523317897922565126939538476319474910570249134720891753495834265095401099491915324297030516232165310572536619165237354675 - 52252905446011943656539852703411163091847220700728391905789060395934988537720151808707072236800879569165525217163483258522878657582668333079771551684877268430909454540045678608034179436740545734546479069609590213488642667607194408935760366299871063415896409412300521966317962585570041005381252752985105666459 + 27727213449979998208202685185704493392245280753632376406867617090092539048900263885763179055490684709024257047462448831812031428077269378345645772090690224068110883089161902329257753035498325708417149199207045699069371098538704427318266824271685799380441141756906415581666226965712789373201251795517818993621 - 83952035423909579136383526684565258946833358735752367478366223582979306567231891892204182029939152978954768358152401061841144143659716024025895414722413298637101430429946000404518009381094078248135579360553838978244132145887907892864002886458029944782359113859895194707181142144117564869560964233482730707571 + 3462420777539156015487337011978615101937122268919066540928614560354943255303124709223978560698070750703386896440139496078893626083068738437237689490965587963112700162539828667872050191438993434419840232396351698761012220463707072283194483760723122906777098690582500688037442623092536988188391955250265687916 - 84923365122573404916462086718126353561940144764517403397572070082586570324589171410262596853265174698082564905646000725523620928634261761840579345976237361600554143202931071803174763958607090200894522418762687288576829521997453914136026349509659075295769849972494471867827404884117618822911728033945564409063 + 92971622671774225451743092887537806591882305508073384897437453692815973916658838339272106959545130550854009244982561456160361847794090300909911268803982441771223951241775689336582586105261243616100924348213998699210809295485141924906819403934234501585422589161454693257383170447000002909979574863066979477879 - 5457843017854653411792231494513752341624125199584047375648658323204788070869447650821040961400127763296532313303073804528338576112297751066579189994625667450652006957366985340459535356955857278531282406261992844001081549862011254291531799043392952801052578239114838812239553902169631845288145208635935072887 + 40206873115630397758232408517710891223982100443768270354792469255121629359093248496272232943416128020978743639099335465323884333878833992631760016870756526710135172693877866272915841240510996757917731234077470107980285432201325116408685794011441974545103537065766719924059822799408232930990368567148915282109 - 61673383279591288806656610448901793864145919282884317133349214401665386161792130788678978690917185164560488854030365562588502301905750034211189962798568110403519606404442900467536509101732170138082415123412449278283314915559604196437678852886516062723070622923717718421074870677181269281348482781316726800254 + 86021129123100982324892213430143273226958539139680498274771605361364382850382343481433791803419331940063139306843727410658657937978393095812357035458246221035530637103709429374979739834511625054211942740102304921551227125300413909125754335208887402570224447779494254512279882274825179824376335900392612869327 - 10219875505949038059592524360000702470870650958225264441279557488397941339891864802180538893570355955979048321706786710373891353430564467948924634646158115454115284355928709926161138469962237303161069446819082091285925200831566875032632163879539931576037037038573456130917229097868851668994661776931167404113 + 30629499088707154548371379438857007203483641826800359181525368130221358702150084711185895844466860622026660995352724393949486450344127533718676261392759568549985539789377968427573731393080635607206023727128069169553300944153195149947478811671216025422303191543678188420155443126691302307767102837067530523505 - 57471116683011393802252322386896369165257113273653842802508523393455022877328469688822676631974001740357769837694651388727017654199141135104272290694164935445671642233464573410157507420842228775929606835890029392415044235396627335260657893731095720026069778430275980018683074126645429151789269757574870281249 + 54277125195505621388752975728826340887997720773469969407989648983786852693139685560034447800267048286549954477221606398160551188749873914783420459212527526178645837858670920038849094997453656906711970333777487992737865481570723931937316155889672911286983266135115552320279438920409614085413083309658030262332 - 35346493402182770652767277748789444200571756632030632138629685626237571759286516924620650895094575091853102467908281523802113491554286884464499234134118848960605388110899532163039647753903233670685243530783639418750735592440662152250670440595304088679824307780492730019741286517439870770881204916702062774754 + 23310314954331484926851225105514591664138829983598215185333286532336881578504070820654792388668441527869807023759746690276681312363299592215205158151080570307236717287179462761678812911723339305579524652177796018537654875016417898096294794226425360339840801595912062632724815936388403459049236328954240225854 - 88331548702714402491320775389924180598135191284990296013701909983513485642715803217804581249009182868079473458223021812931534199390414135619525531159660868592028125257647512280971726126721236069432702381347219706388535580447999205644578173090992320585007819831222847045793815561483766355943057280298901665178 + 17989293080125209865468415322295988242730244577631642150919389224367241714879928197595099325759372868119630819437351991895592444894657817900117149344063787052528381171440383793843453802930295037506928892819214622088103121163998475043661453249731057308767772870790347469165761441676509561455712947360504520475 - 69875932847349647436913607435598931893175516334035818161460158676239768936215749573669365713563926564195246526598850942902448016419205417684019768666714099411485650336869959972262783847591344004019151275274020814165943421388805152476244535497552167584180757236922506365121317463882382997004692160419302883772 + 8787235743183616094636099160299879830934015582112048592236257211697203046326013200132114834360810677674965792395283056480532451864200282555036907893598302396309138861437136821152772420259909415497246589659333792383116256708863660996235037659991843402475311732948797571825017189025863798319151132565500820558 - 66734454588617080580593027474576331656385682224599433431603105224249793911626018976357773874626929271744719535541595848615969945483365963460133412705040096049645903108895444014133036938414780995417121186103433922034522257257453430968470196343325203189483367012498949084039187543998760878460355163760302738211 + 33110462923626600931738487114169066760038785953740371223071041053150056708087761631389733712606824192614976488042859780369778169521414109532750491273242894339282788538855230297221861344639871780981514492635773426209460450837690005588099098932090553204992550404284359442901518116694005133142557805175240003319 - 84498761187509310334982644315299417422216443446604910660559566490516176677683406704591371861307928866507452314574612818959355687523113474583231677418310285581904057100487259772924286306271970618140360199035099785791675988452333579123166939777483726158345624806274267460429042861171048263839608393948162001699 + 18981749031283484306693067988106309321368985393658563650447318642887245771460404826126233268387723249105057065796655001107342912731867975366266558006915836777818247947160482880820984795792551699965069937347867865819047382564943646972006940332554553453192380607780734972887089226723465344680838993389692835338 - 37699852341082406838747755469888311581496032541821280318027565764496146828964794061444453867615808803297625518016649607383336890769087402727308110331321318553361497546767841111792745209652745815007264325519226380826412049430956370134781317395803941489520228884721384752282794385357814243034540484022346778792 + 13785139449013325174097578169547001518753235677973526525755823833642048616848029443671559575875515291081255260162915863792417945589115620797555393043936095673925388075814432971529724957585021416303769361295504487906045822720033194480253254078700742482871629495568412331793194087719288829122764223336902595768 - 49645498174894430340654353221141060860130561831481408112411626688406666244489626648818798154255595517240265532434307291608289126498675033878789708361307716568321628258981268769972450998545050620473108894464539007419943658005830575506817940988557985671407188868527971058864957963231817460445085021336597397141 + 1295622942595184269083509751729297244191474738634027735825210836320384497097013413048799542100610944068063065703848981016945923049863742084088969748112842966594535851437108691451279265210539534566253334887241670901529579268290469052902554081953382096901721138516528961078863250092781508092078951629855010441 - 41366998193703862428053647431518853893248503662742646660635171344794591333592569663056545234028187641235489623121039324988522193902646566748236292547592448092148217614903820684452298697758019838527282636118488690600413076448452169824930593430047448347037273901696511988654816163473783213754762424949128599883 + 2320144322845215910790986271462070005391989257481843729949951881297946737536074962448382019429826265304722675459560192864076804710352740898004386925213740252182373414792299174898915254241476142807307223412338894791564378967930437658298291166923928330955582858136792752629707225483887889726267173700435153198 - 32783663356901842051465935692473520806710692060651008119377339333790805074913631471849155467103973055704534706725744115541495663817415677409776247438357443012000850799890038175201360031195903577538276329565853007250962915015954001886966628664159090067812712805434053210150045415881311022658341771168266354025 + 64608323508910087871658098427959665117792136064242362101632056138748764140039076928505187237522872597128646831952255979000643367811578605377952638451615510481415080227992245132888206106141168137089642467402907673001555926530107028346646635409666467823985251967629120284322315718935433167896293919729250301541 - 12084300415555267356413989887572671580979792235025604173681900230081753600380204774287095969865322595886264031191853258886570347203542695453766720073601206261648526808356905884488827814091180584815499076571232202922234478251369033947390990023028720226491925764816251397194468464473046553361731020858714915905 + 4259686864111518841333764642271093463770613402483128551587668318832271770897019099148722023510595541575225496857916088303790761346242926511435253367418162532397555670286529618946601025796956785883404853619192145254176852432087492957343957706027658609111213264076193336357552815423963155750751567924236284427 - 69342282145038930415872843278154145421308527208062368395922723851122521250567172245401323546953645332213823253847937093601210401325018241091141654586737320123875355354035441439087783952521025377082061494191500998070600303875492402411208493827322070879343998131677846226954111058785349543525683488272195154082 + 73666999916079758059564745239259401325210888817478347637329284430233756847046053117159910334173949823900983458490854092886464115222165788399878245721704364072878522971340255776029752870370829074260721358629460985079615390993472523741719342257052073092392161449043840805917297229957538408073912615306116589543 - 28231465475985200089481418883005713210630614319136684339115190160589168872704923126719836936147992130848177437706689691326367323069049162490056637765179003998585758764157028606397307573562667525904731626309351710725704450996066360501767277526533902204661841067225604820352291476565423101510433050262030139190 + 52273797688126387708938359030293977880809864541333037699382488411661534387423078734902438123034812454115603767158764343277548141600119351015444934455435294133163002024608045389816145074448774080800493176308345546779629623117918506321234597885240361271323223748218470222507898044442142462808040498052885092144 - 5322988766677205874136274371801013089431309058788823526893541720333246934235418270881551195740700758373735401702347222916286102010583332095307077967320797627850951595688769447860381749032555964294545357707004400440059499019741899367211742946271343362725617720133526244105139891672486263554144225931767840446 + 38165852501438940843423917229012175987902379386692972046031565694884498576394195850372351369159442645662514387464127023583398385935986851768132182974223032187387077371535299246744089301082590018066222136110059974302461117669985132799597497473229879529754785455580522073296755097627409073521269007682743592852 - 104812177437055318636247191075553124634967248625537504880361666797756343337543698451023758535021480384327866365169962619522599098509753880359368522763324072011646161585548669517290033788088167485390903183392023658008322241172235365757498509266254090545485983144995240120330249800440188814607829679678527762070 + 25287943372272007312274284816666896930381511086649345100675328092803051507836491740439559974098902326790180799757917864032492540071066898428629981905995492027815452078561606320418814469873439610623804781754009144618115279691820759987884929040760637166154933589946289073085460527593275775171180127803145288916 - 32919873749134643921992923803551496357119599728101851080201542869256031548635519788605356694694537995055770558524106726660258757871035900362775972859222174773053777551581002697993848900238922177637348214068941872346634322419517558910628451092840484677094977824130439718043368026286417208923027060253736237320 + 58758217518307603633500546607417839914515111595680596118301008624278554582869774638611199090939662961465243159060410183151003135185078903845459775439051482994995628910361482518459036281213165560137138348682838659750402466702683508788166803254769533422274814586602147597582046852327535863334879744606062576815 - 51928446970245981362982211041419568002095202392551180129011668405557546591913925784238442211599996944580748014624854601368033154191752025841544535661510850355405077686308676901569193671502392806610021119758456504916887986349606876377443517198049002603188402569856482551315906773591658258936142197698073220543 + 80102594781486480507353602397232544504319177544070940258116271508067587959367193586759737356862117569192852730155044854867230740396591020003013294826590754037031696475599272452501319460702859663685900774428782269167959065521220886344597838125179465283072984546393889331279776094615974937454506599604822847879 - 56264650073291870180958800670028071205525854927434435876214025158635373290595764131210814864500910390168942328412291712066509795942180894526268262503501655589657462622955616463426355399533816800430426388905220097207870637062562624510137394121145370980769958807692469727281394621878032782924272045435405010238 + 32949614997982179072993810934089293383224288780273769101234709530132558033363451890107451264890118378360680515591420538750351645681219986975879706495756907159244804519019349165549880322890189047359462435246444173771193711431751368262221428910843257840247623194623019474909864108046637157333468990899165995374 - 66627284226381889392737771691476946484894055042640686603661077040257749140126126562444822231865603538659297429685954155399850288910527696065123802008318372128267009453993323845046789748655856809080748999086582781802160014210409119051004123597143485484811986599212603225169320697874574776418604621629104845392 + 94725540649082262121958209814551084630567819130440806087048886417460790204900468738466167168540902465688218167201062452886685139166121275159739039918588254360902532281507539555961400246292101993356589992674550411085878125180985300807570180574865383315833931736606620162835114986251333567834506752523043449180 - 55521016864352876814031838784865895186344217647478649414347206632896117459155797456396676172021991552775296830997834243870241552421628010136901902178908712859831584150780983491661032183665844738411781505514033549253426708942167768596704594869901566156195514611502588349486885730741453064748742689707406251059 + 92930304077939281857312355796621891265343960928256823528357628670040460140150105744029980468070547506411740435641263809844090326715810135089989065220781226319476169168823943705553701231639144050053914641406488706598491816262346576332112673959770597659200711273570602587352223997760050650668358835654368125110 - 31553075284440854555074712758198990525655710209530803920976115345863641014100501765350069318805902733522487323186185078068807738901645318690777800477459691026266410272513601420446693865519284581250780965223853444989058325410344922252999975758069062504011922291996068382319464790152147343499995131737205275385 + 63179936909330251127161814782119477653922731507365936293439014089563525909234812322853715526299670621261353082997951356799116623820728099427581722120976805285789315919610221028843155666992088462440701887414972931270230694032690895937588606413191153698922860674536957927107917372170895128713222683391212162424 - 11512051300012872583107077198950292462486526698876379583924793601057481818520941141286077269000547302703416955551272407683009580863776614169253201651392368364404935661021855375028817974625880720583109880897518984839505136995452220437165566395703070584008198087827323190580450256246873691537415956974095371417 + 27958028388417517923531031020545455025108524428454762614670893231225059051049989153788316426506586975657602286668711083746290610851368932615943765392541930229992714005344518055692876646899458093158002843794130586658034413743088255232343634031152741015649004907039787838364967520443327450948035166850927368353 - 64994167752972715072127444350458648860793958969316357586485891907054145900090191068931732010496663359024169355707513488748254291720590150505627988621032167418244212291682233278323125462133242449756832655028600257792549483563686063675062893977034407521390628636117833344353219642077732139272332407071173326715 + 62890479836510057564648180776795579698962495615107094118812347481615356475916365061028062777866819589515712783082389639018980598546053837391921802089118893767017659926420512589093076261139574614799598760388791475637824942087667883815224980651929740098325099384457940427216079642753757684714597309895425322002 - 17994007346019023957765894249081876643258881234723815393959996161183481736640493176875419972335151248390214276057968492882776441297216411465112467992759992022459988642535860995546529673607267556182496123591250645860124230190775620461967407675975370912147133343042416918226426926127217265642208303618440114539 + 35994553990493108103982245652832268373864532207578954702116882101373505399263975444755270547918829229034092302482375728258573460566271478649572901752983166548948157187802786992707774912074044340861087945541960690844299717009046410158618476230133852511515213872463564825521554909323800064004521094935168748264 - 77849246268985361631444328440736255742230736120125390554758833066019123761339545409269989018975030199138254965007940155772325023192228821568627994293749844100842894873536611572521159554572718727220437950997976370175248053407056442199042631113980241841206302775727234978108104286497524311912087201537362568541 + 62059694344751843788562319602606585300215494035037145541623605939209880490038632346322773976252371462599384841723525916928441241981525374093121632694889541109865748465936996594513775139020713528411648938269303172108231073966147572305629829424757202616847244444868353243717595239834197019035494164468749860931 - 34220376847902136953230152179244203329989736855419842159376790715705608944361373839155801574326485703328565248281957107561807062598178546281647161622076711591678211049125750726613988945342347357700326443120550902793291900293148257215196909580918847954627165064296126943199793797414997318545235906206817859989 + 20350945229899262837492845498219622780374197654575284482638994536653715513268358768795337606736528584383804440179407391804821745707854547313240806628001890755997419558434713891069723829252360841925668932021718975747941125000853165945106390322212237948793177603400595162352793145832798752500071301348099057482 - 44110898425182377426480157519929404490575864572232011958056080656621525847544277305669196546989299730884490854699089931496856375716992784745460068421314832422199563816204699483897758997329212479186419758639839114038258274490599100347420448597134808943743944034002273237857414410041336516508981245006443318005 + 25010101030125323572132471544940370607691419958769826500803126665513025913038659443464846293770287299228205942433356682334658528465213269597422573637114645636187318537347120026263650738188179639051772483886907596035649240898517247607289971514364250407445320944174959447258408277913663290626780513646740197686 - 97123220744416915989475526125217556528975260584823011331544000731409631127876578973673516424403244556638087285404598474223466792400908508602098713580418876445858639018037835729958720184713649179868280008586493033832035133670988264268721877881074452220815825341312831324541044686549819162009492023287063535807 + 24872877361807859268467930008855532426402880462176709452352264110631878151209632355437414603558006619452023491311354865149397392864377227221142637500032860842903272478654574139842403663820790073510393196206506783892408617658612420610074756685380082468420428688779866008215107845426084964281021610360286309952 - 40302557221192252226724813167468654131303241377712146967053769673346970745763306927072237975958573012238949102747562099770702594569090463828109639065068536657450757508218011039335694676831788518465505963771666449898807792182302582910674675834432306503879595677639233868036992193204447582273115367581993139750 + 91808233460125179992324555623776233445099543236172112668029173367320092659900296788790538821574480275518805562368290136379898719428315565692556318328512636239176782650592725656024991293617327951046115102837518450864283108888015075719452070211843986102416613654236210049175708880600997024992437732944718122637 - 46896499178706630043895058320414921514939971476794008486480261314351538646545418580414919576732257786498365366188058407088210459073544056449259738092505959946357904593378079969072323498089624292668187337540047173315847831653584742072266644717860169605310316881809321147927640533452244340885192541111525301363 + 68909059960152632110116721058064146268794785819522157928052161410965865790067115008773167958705592971045030828469178976671838584119289179481901877697161389986098603105893339258593084785314752674685366508536195049567923926572462226498648260615354575555462430640604858031099533132281251253435660105037898171394 - 90647007833927974940879292980875043914821332326873101925118752516738676237218567062442098514918551925989577319106810864267821833249110430628334349175247746375190888137218916313811866884611485641679856199154711955799854445471836301657501415382775695820181330518298704227846138332712973181050967291817317088035 + 29890505913957751907132842405618979854283574602640732894036490638090243146253550189345447179054475646564836533380567437622398621484260024972831863629690060033168375532450903322273996716384836090657669415823967283291773438338088475566494412898169569982638475702823249578715206063862651434352302964697105640618 - 12638773022706588510758460585393364236708786612174515702185779874025973817194743389275279791560732727002266055628383957605295220027461740995470242609506272506216317038517940630813111451057858688386685460070671962947164400417580246456269253667425087693875574082833907163415705302908087675899355743136097029584 + 29345911718851136302495671420021172701425314718486979678071595367858244334433445848826990251412973034499653958316674668484536521100420520082691566286290891349052231042288593343879678162255392488938778818033069970214873038921456644317723908928310272194859921494698990793001982977246644539940338884737869273624 - 85602199775302652409463993006207976965876973905866346311837649663481673931436218594819933814146286049527568320896772930261688919359014970427064700607958520398671330663625370682076007036666381000700774999893589722791116752028473873059257210958504209430778734720115238304138750198458781627063543795129282573285 + 37257977592298620128800785325069293761048180791532356505704991569674890253759346307555278860950832118234047254535971169959320268729996896582465334083553748545334794762526748105917818118456681640374842689077980842482760830089015793153958269080551996503363799178700030075676253837103009581087341944219262888461 - 76246240510627000298405476774639301067714986412660808112257835775621233268216362222117283367694564236531908676626052983335931938423942530656191957013016024795907859626426480218185694258146548415290962155936559943354272909574800359902238396996186612058980017061777605712745885430032389712198644414793216401505 + 38118536570648949490949237140652966800867041803283578161124533678829207656052499103663460569134862073013669090607592685566119395232561634777359227843200885453575666528284125912918452323153227900614404878491433229152674203256678918530171157444569115272324812451691505714829096083647880152846330371789099276454 - 12351538181369523736568914128626126154490896845710383747560999935149422158271248333447183291130113557802888361079189632383610588345466860029709834428306396117820795824932582037502688506021637138962934723805224451823490360270548029182029197125151008305336463670985785511106539694584785177408379668975415235586 + 79690015774009574113761277359405908286102274075139800668990431692718398215328085284268802265615621913069565787397454935231226587022571646734056580508484409216591269426195391182124232189533945317465839898545932472579071435402701880742545311889245084134113188934021261743249843640653823892446472851930535482587 - 103570942796574531910555310821140044280278513585649597743853188101144352701597540287113704693867264659998192170022830371517183982436825662981745689224368291577764550268146163838065274821053355124521794225368730518021839805241093725363040338218300569869788317261646685300478013436174669592482207007923373946886 + 56579572947094592535808528554654429303208460221080048409126362363063110899803758531747292664163317776726424293653392371579091456980660118448123271283324077775114060640793175652213187679916363999193689052437302872529504642779798458926305293679491150120977477851823063019976562320564537970556732083865326015841 - 13032329987447109920735764708323785940091594348505620667222177539241936979469462171825094020186750805192253387515203817620773192770276999100993844664836848921589744588512863495369162845708086831282152112986644078254306961050035695083236456606073124783627218744174520193333903757858041042244727899040278113760 + 60959157804029762199386484971573196180455405497226247752368470674344922734607185971599112767079092428396542169876236214317282003182226534370969227888865475165396635457833684190509066380867133660128397927764076324037948130548327200592147169999542143303058169666339242923595227943165991370402877136282021431733 - 88193729832036228393396565825748297536142226628538220983597930227790651324308903030801418134560832174980445907302526282242442486082199062935599612774853394784871870966690156802614658471170662275615345678038274693296356588967489770790493450745491140200295548485359177649711635841855035115290423613067305282084 + 30386402215918794733169970308283778272740409638846948731775070139351464809749206683917715807223540096081114192048344185849821954693977008256619036844022536821196393141283801971840403744460114017460155514650873791473596262489313076544822142730288324885704456605012439585409920946511114572001442700329432234243 - 24084376906599368414362435894842188323475579650669394607824272838390129912420033848292245116581246236849637725523633481168763351056064088628807658713234397215037486592018124622641526520358728564223829266404285756145939524572647975497526647754666649607685692591019641057011728879507829193806852364399214551283 + 77939194066691042002572406970640835527519680914942925652346717666551291763538641954601773455023640893776551708553610295891081619989102585748588220398087756733618209994312792821359393135810449984212361976303056653207402093494626986344394094846587529654860358327586546405903214865739099162938491758868702547755 - 69348875721908262826422513490462958872680299842373032298205259410561080620868611880604342267636942109310223687921837194473610339922576479413989553025239963142117104425873668906470253378156774866393051320557584396920409836048070945414095287910811623615175577088105286978707899382449936905987156022380861451890 + 58653409841934328718983197995116387285782801231210258309045969092900601924198156211642330161178295961094855500124801971772901898820326939904500439939231850229967158851479977632646461545413800751453972684409827926000218815881903901645252192197956313561862498858136051347699574850253093199646960100013610851278 - 3481805656933070395643643758808775444201094849029218379307934912940717059399902534145499160959055654546212633448100849993930637835031461243989567436552621980265580288004525378290230381756115547568086815274935555793387921460363131770305568350283810270974342563277322739247158655240694515612112220631719892714 + 71781219289786532349364200708005378526343865677185157252507686092173179880273475020779292365911138018596735965313105690767018239294879078386004606059944599034404758877139535134239155183656461772893337313288367509045955706978661320082714502861263957651547768425175404945872190891135172812953678733005812295424 - 67035015080361246933412870233806642196137989446093423647316487433138010273497997578459769825483235711792993264772582703171886744817736704934801149911610622407303386928491387346167987250038886939407834959922373814400312634495962849951675463042048397018836702309756384035956767253804545117951863300421963325890 + 60553053145767853554802612236485996683011524472947727291251814167884473818059433101547720499155265911716590756054853551737786690552601106566239364098226315941213605091692325333298973103716580902896793474931063539534403736921377950962508102443853705548877555818156898485135592104904475064427334564073888276606 - 59171201627428860054784063005984144365015902299314279563187729910402993747384921684705546421628100209129809163795213958904218661802467920339260917073201809678497305151461152711261977577699678777290661656810793769406394349423700484005528397245388221536137138107112407725386718471682669724204064394250459548645 + 62670964658929702818415270781042131686035476710693035613346673942339338744428040989539539835751057990504459773159386409188969761187019314636675547119866820866435605330246615350336836539374846630003274556852951968247866786250694012076691171217159625403552176704424909785286159968471267163019128658172612131317 - 5525261406445338144753295617050936746330561809440813502440204295031208748949881449444134444901697810092949702897307561085567488161830786999238380474386097897206347065715993022267347909910168659872552378793731260098928427394812513427696790410474538182209563586245786765927859207450172692928905053609326461694 + 93067415559960188456665187566674161630188428302572053383791744815482497132210740448105523026350445317574554956594812428326148343339722097337834570816441162083507982372315425532253076371297206091082586224816336910715673201544081936479355186478041696034562894028420289514533646910360072209760618021589307545333 - 49750482139568783872787518657552653483177756402345153244887730787227316697383305721387720073854761901126435996224262840913213499107082907980401253206589869243199474890995491086640786439289673294277161340167490902030059956210000742401060566165896154435463535909979334424033484580911731493554124541746696917054 + 81484780782245767981509165809861309600068151527283492136075245392225723145604946799001200580222504250062430388376399311229645390703295475907176296999303972098272069651920347720085290233901941958880703935003166402784900105458598497802163596917690963276401924413291247976421001641480128594413516127306317668476 - 27993574032161943339964076917371337114498084522054018944355077910313947458197607454623368895458620623964830843941534772948519535245951061236987465214926768398498898503129730245159404561033810427482304917293837807617188979693256426068782792756550197177948350783243590848022423768808194124138927328943333634015 + 6780685354472841875846988817253963533428534889185434277506819204247094735566105358031837944343575624848414747309958425021572342509142861021892004290402536223003883554621337421180165581168040094492547053723337255242872425900561814541330018346806295821669408584208311191125545252080620930950525181704449787601 - 74504473667564417330257206928316837675929563537685488991105727338347751407872670028859977242842275484221626202074329586969583590384945381155004769610421315082577424899301516241786510134108089058075661100740560273627736565543713501605417501611032476296115207143530662068811971611640491813758163923103123564933 + 66339742824877819916036821437181797916554565663266653493416163241747171307650351016076729299768394063662043957727767213276002046424240345718522404468938798494268999449676923583959060689167383987445077540823551894581488916892009774759797769242483851658886828362826320975976798722961213106354925446549964919997 - 102448183849410023676440610846479556263237096672295875313097744142785952787731554599815180657163760661505212701671335684885744912686566671521103800880512200617116832990591612758065010800203347971648890736101789241073335801991594800438809097612860846833050508057482229528161543639644565189471592754589630771992 + 56128336581820256169270808810576837804372405550721009335138622471339970633989972396195787012103837252215463333851233587418537639670217125952277021097178821168943924734020991521146114146266317765487140402737150882650473223067927951323308989017826968305900766060775331117183465406987835210786433634285495299236 - 29331914435487537901154469216316807033317080734103887205186656758107654117200761803777027082011278053917294442352306200195631586092531261890699703934428468703493532419897421291628817967665370339829654361311823978324077672446291105131581186724508187861999899455040056997543478991098561409861606234807910284905 + 7680884592759509530602929629489209022046537012344822070709986772384438244262813076652481004610224156356449923097940695233018099586315565666889460107543940009416298099089089956941557664385653654599643937280862484348197491384263225489252115080087029843695774052230482712661333949607967163341425376934368241101 - 72499883789520050041756135013175657897533352053245634480741063552520137668175972372371280371141576989987095080672664816505475687928331587853861279413093099690766480623251896758057065104703499160398255248519193911405571491316819799241163568716786482843988910077615811588054087129506139799552397161473192333044 + 63500528023019741208343054429674504317414890259699298912326420887224277257484209654674741267031589361435693110622621558423375057509043440552137867757174899712543330635986925195800369858743196862187733877367018722919222676596524306297273655720721992212429379792289903313205148354537051818011478037325976014704 - 4967476665302303709071909550443760259075813894992446383513421641812158424502626282108524347875124819972984192182003867382309190409527754372165878941976268369824902972999445452919796647463255289781096006712593049075733730624677113726353940883969054962438250453492837555975129484638762671120367577521359771570 + 93840869161494417661859404247945393080465483430870324348683598750215404104404211057476723294863283540226629333375969359022296898720190281131731546105227763111776046259715000666382708795984806146599562223742142077477377739551482403127571996048256454140066791519571253424923211132063444595707192954216763161896 - 25581100567221033963833401725939165071999189347068265170962678590659586662081569098435152911533422219293593027099924860296193356431645983048706354795990311676727248311252332683239227915295400970924252887773671732918998986206951123323910395537180476502535115158517223136235947614275228676640288485190513006683 + 28972484088393245734758575389789726276836541562348371895269805377395772769334501133777945538012359180442155472521078459474006198957545854289641718850954979367474186454994039502759485222967420870878843107929381049886001075489522581527336040067843751260877172292064477226135404637877414671933781598580923136771 - 95639425760548382085537341456391875249787982516092591032117305136387905425702646185131383285116935756647775672795983328225597268116708181938807632865687845958505213010243041814623409679757159780822171112225555881806075293457037737544553057956318693131381666532273033772861396543416622626869705998734974155278 + 38396387040922244892235710299090199709704484458634544697936302960119441121103352260283093078384318668366085706736430171768722771233689798886912923939845175826039316623585794993949096827695420687121008232159732031439846037698935567790689317533953030497025634681691991206806030522113570871429102073820480443945 - 9984868940071774931211389179231469535893632732829960610151159173154086124705195541482540307330591560031750276510766040780204427876423035265398091865677017921629965230943302284072083059544243845679940599863666957094242239817378911810873531358846870006695455603468728010768062594872352272184485406625540172739 + 18568980123229192556832092048644210853115903475003886252628724079194882681169577081415110785431475787746129018252760109027355813075576562234031398834928543337950227126228657075368144677624623505377286720871645789345840909126233783071529897327150420443228695599714054273238985390329222796604013180147540059760 - 86011916973850396322468502740653532540230397525068481071072352775548572703843750610983044523391454963274801057068783925390419687081790317485468474877536719648738987381926304883304787158621748747968598424009736706744342004906881243755146691506991379133802446040362665034199983949717778422625552768934434741321 + 92431976839323109193606798074885128354245307542509369458165354937166874483507027877880306301472391897233142521102317269355778476486763795934298163849283073739146708177841098935246963642792541061930159997965113954689385574245352959555533045596624370854879605240266623890540780892391674610128788990483576370308 - 95873982226521736940241719261431074926771601580266524073520121338202040254873483480112661465425030630332775765971337711378310951393344576454789485890488177582814455260299814919618076409558507786537860197425498504785363027584695731344202520279417296411645950753451090716538151013247664617119124133378067790152 + 4379881052397803085449279395487237539433333167385257536988491495110323972896177201620348230116639975898114628434087594365598884704010057767365158488083801177234181335216995142957234380709253245283499621036432111641029216141961785479320454282736726491142490239375630437067013646352245005244502420047464660620 - 41093688087940664276993431877085552219583854116536456142151732883311496531465954861830313568964481067582212977003098260492705160257000941390972349066183438165921288262536017904732743462461846625615353175299636942527824325086031842007485391049504771000195507333759633798001748523475111735372929167385318351469 + 91922330397490958790890483173412098721085967404258327244005886809709545318043949204579028787593735911100941975314647583477825729643746751693327881356596352191649780458014810889178957009484857143025102040137448502063061117960810303585723615154671726917242800184604568535045582422123093185975127801958904934947 - 9783152030735164359793354699620747958323149287634163201709945749661100044033952149816307304463209969314208634452406275666757634095062076556665232764558318548960485262635230317804992759902737286056827935935930047830804021632343046882006529793704226936673087273848921725414866094708383709666296856951353645837 + 43404109378723709832604037303701705915747107301331210950537790007402607930443327677416872358634484283586276826711599089610281673284766032857438242400073448319015477622391805872941369870444491222575946482266857219675574748439821305647392150750870090688005683376101400860396320767391684565523262971056066391793 - 26707395742572414296714158294619430246697492552190326879087510714806378820464407704336939161527601687298386394261851692431832475282959039046677545976803318264213797999209011889173243304908597062833938498680712206284997579943583506622270592377579791982810041848336444922787886223303793849993256191046731590516 + 75344575359644259570244624116971796292288442352964224989693162097230760623510626681843473676451144789584867054102434008627124737348917357674544948325978216662831657795842873553941297062957794880895254397761760375305138531148059886550217194700312329304422574697677091120798273480058925779941065706505839076613 - 8396000806520244472288866463074553447776171840747866449689483624094699581370467232327142510137686663771410267241605757844060940436678363547609388136064210192150512132204451547476591397146282024915605750629687441061629292937826254968835999564292588149854227556381221776801181584323977288887864216694249679010 + 37938537248211579066014873923588039106173929162675387994955754734699854807720696568564501955968250515400564498630255469193134873518689629554159722646526612432701694623307303312443263660674072090579213316470105799001911269218484949797875790816705822633042709546819757324448967727638109975532571157925403674284 - 52684711529159163801255761147764284614850560185134497559106850649140383916853553030383457977777963940537883413151941699503613729160232903826920724765645498611205914976716828733374911267236231111093716914446877114194269615247392788773259200476707375534806438206963072403461449821305036750977398340928534869877 + 91783158209760065641550972689561160594137950316863441979723745088183230014782703942306662219913824625043152092393767115632386260834397139364817179698712931470273649253838876870930855015690412226629370963270773416276242068020403684678825362512957536396484786754227689991379605685708559633388344607662573921390 - 77971947510580227137948835461221530304910508862528885434714670381116473721387328924106530463224962437888091330578190131277073542125345840183214214622292309205388270942127444637362491701429018653851496749198984084926792760367357756524536406530253242630571381182101469115815409635835996975668057748845293996515 + 56052820536517623550046811297008395650590365483280612294189320282813622107247105061207542479271344730473157938580291405432943594395186432693056199123779062877726398479475109141482931986812681007766626965842161652551594840809014602528372126271608063262144714899968128314152447187565974889498740842764631676091 - 89114992230691190174185590159688669964595158683660755608457583841591717479025174040652138191801718382605594002610675321484572868125489115944700897530589575307185349607606284259745680947989304301897253933344139552919328461226376150245182612786490628811858750781322942604998087914664630226906784868584422773263 + 22388339167905430483085249742592282048440681015330696243077834037767144789109591616584418052140814094568823080961884914151802863705615508795296248764941035063831923302324940248843635953690775836594704828609651016758371712985431641827526504484644561673618210249787189926765800712457233223507816000391407802897 - 51061211677829391926212495061406024879911952329312720304590507351561900553268372484535936199492787661778869794103786559274107904739579541642354805901904849404316521951464906676644841057079845250166098570488862326042729707096444230814818311810659946546526345362339335197488171215711786228465097493461916002142 + 45879007145653026899646790024947973870325856993533877287895715333012280155765053060156562771985680318911034590425674121690068223706749259805090685838344996337455755673601967660536347662570393434573273539159020403050422038044360550881702118555505136512903380892186306833607004971052855816742337645919621655455 - 90300148636455375448568484739661256492357823379149697113954504931600521380381323623706089847114110850558219827029731425861989852498442861487672182705693165928942588954748303462994821269906459684931266876512832194306316465016684561203275824192460945404302205871010626336969392612334725047229284080346028651469 + 61819453850338239238241059679359509001452955425096277897191774104657127244871830046097603306070360973141089157281736722824217819089993890547963301199269114620668070622078272652425771859362891476463529712572621186754273277791110445174710939527721327681812981023752066793690019655559435626354140872007090661151 - 87455251405595756065905922583163716168946290483808888905389585666188391716952034538739698103091684459403557188969226789545453483530784788961613655759479654575420370420007278467933675244776315697293621363549800026801091019607663347842421445739553807519114846711439501829036432905521935149690801735903356225797 + 63973785640578087603672493252437607868370313223201519718411361086593897481619868792054257918180845368902353817831669883489214472154268212042529640936353206431737346083201001593943029444312089479331677166772397854266587943289964196689754992645672328059171654576036332777745439673505160146636679521795789424323 - 57444517538436376395524460010149340825949149402298920530452264404825408860973724440487591039252329555651042659413624887610144992539479733455971915311463610630474389866462350842639788844173006640002344043644092656580032029548085239303098707464543057935739272831400789885084128755915780122570649331541221930906 + 72593258294128703654686209931014531949236579693284274329881362291896689562579086664085011840616372824470344088233506590232303578833603871352657229344170117259395769238926602390352582313479556224403556244567686425404533686537534557247591550978064936090751571490603099598733252502230189490273658630492724928302 - 700966999795404633721155755510611223316419253287488959097289564738189039181208852847613336915031587480873364382963498788166206517888259116602171515386918412118435586773300954073832586584226624036622606097712794254389478210846934507521250820021697406723197230712644821271796105938668721660530851251458145874 + 62809956951548016289062981700633929135411300135202381881733337603146497552018726179455561924230625060815319516675428290749456591536947244101265187859845213718512963508819345661948322917846132177606980242830403943186695162489040219701841349059561462814756535100111479806305837886881558088070690454514062869260 - 27329885366114432660134677351705494153549819070342288936625718279299383964785696929662909625657141594767604508596344381212397292552143746707434706483588920569236800177042989947023107977461343824541344856479183318858418900213854793007240409753649399324430813676232861984835946961219590214587292979202843266490 + 14177202335140429872479448752219555121317544277476425528406712587996339264103413855882383315134800257125521968531209807482399980741002841548722290635542208564874246718712912376235682722198538976883745683976821897805257618358812594697224150811861489682888066014191699243912466280142953938249599873277199474970 - 40388479081761049129432571760212231735750635594816259314935308616244192013296057939799995701831574296248308645814830525314814294215616553157395673728572599808152397395805966342154644935616341781329934314515909848549633581352529345702446783743085127986206202174191894595490506574953733561014164694727107473023 + 20568852275610186478503774907838459342874837960891684366640488238391705454824928887056132684644533444668367465747676968492024529294466635519524959351529125506068927258359801719951818253747685508068976786531510862202449809302189992106998417980707206353909956466842029941107913159900025097798848123273143429892 - 5550122509780523625683767699265787798690728088553840790058676952148736892031879478952904580428718956355906054993769071267625211041756829913675448202528981533814742284995297185981236251689828328553461436914658033193538995657221485476625227444394874613872475556722119952874104767204385187965439953780933944573 + 36139863578910284026725915724952188348030544825341408646888804873881698074078122732671974935700347803226376935361247567155403767046458616852111252807173945415192079378822264779485578441434294912976099779392344885427230833718618457252873349877991084909632514076381264174786997908205126259322778226916228210030 - 6291339158081469739158840267508917813942807916711835041307645845294615973619350261375963743925152850893714734310788790960273263358420232419381476110235847195650603732741350651530326554831234017182060210076133403092563806784462365569386126882761687444911682688732088939328659535533038392657305950305741021386 + 3768353098946078220394160822531990901172551124518413787866628577108407412954911420423105734474698026320353522654126877460988011341765622068025631340056839433980728071181377944298963335441021211078755692144565387484030916050141842532661221493185232119705623056594976744309592537984340956057121691962831601936 - 35127109216968518482887362526096855011052095690735935119640571726753358768715323421528741310624446794726986450590229406763243026373034435174609868938382238266852102758617069449005900491106230221980316193480557874861471516929232323966480477652866336780381218884435052854578478637457177371615320541204862967162 + 94547850602571092900433592099054794941946474841464542866463215093214364776110982023439677246704422616228954819609965552386064878642058051002880927333819751785199908992334134452448605543664355889337446311059876784045798366219954957686456483905099633215479107191727516393749745116864840474710545102885260611480 - 65632203524073719301513867034086831047722564444888294060547706881219572809055506842051193758595589114179161239979182322060592857662819826916560278495451427736384805640446312894298161686676377874234894320872827717514713858105395738008731441241476288757474417390808720563318128609364926542140520445195455658552 + 23182790883031749005333031843977868468378613078367238644852090620745657498261578318165781585399572106244572191715955857855150548583958829295969100134496975362580285825989488384533293961915455314205350636723041628288515478358633095924008491947189762228402732582605925768573295555098061973280816681148225170607 - 17690195293942687691997536598567191541390595003720845936112939301950381199130271312562094854501035639784590972599131545634447144637308405958001540085606677801535361797981069464511664873908296782649642020908566476301868024199779405832689630333067605834841145882509584892975446864433847405562712525600481997705 + 82067869670391547359618783931755426622078318083204892762605667026519846040256057849341829287655564324204102383798412755640007654458171670287046936798138616663751354904499964279811562782348418684717696480095780260356469759927145834355792852007344387946544291712818600652221522309796383112146614905230739087032 - 232545010317667029052541662114815077107892996841706037674753818198190907738347240609105034916681903798061558211567093957632434541331257943789092301185158456403119002921733169101357844356844606519530956913776558206752105335451275302711079884399560807489321099635534169983420600654498587244968605600405095949 + 94665053152876035693771729470678859609944470792575957508514498146673534580652142218885418755904861292363529277737379344768827820582484657936904676442755461591178259437977374963332097892779437076761036937399573896266864062654753973272363893539323897716812589017535254093601241108956029146246369193406136508658 - 69257457060598221129093437252578635310075571132513093152868605417652509310763837415840346182833575251428928507365514973598877372375966852514445604250328005491912717833643397814940146261620332923745894714957187551839922185449272083257014376337322204433812061217462769441203033291867412278461384581127712539357 + 58817502425828958406394945196546258211094509187150967650764086735044073913082938391777834708254647750100232737825703322685895209405108257043343439885585344866623318251654541997117125531527884464765838633182541999332008252211666925786431610908430633892395149664446835726048044806526202245736241037939113275278 - 59545947735742869055282937774112590623203937460436799747564719372952375305304385895143345859481940593782808819406856552563557627092962024174734661292840890415012782413731064492888870163001492337187289952270169596975396549080438697674058508176788789354145735930148488871789197952375061535324868918719071061164 + 37745047291170159939481470077435906653192523788363408909941823496659368298941862460632702752178953441885942688717353544141345331235694073582518425445494278550999566840900929527111501650968782705645591288053204586132182776070614656776672778087272099772937023827617633864329816772977247256412200051554475660730 - 72849621930643634540776567360781250449578883557460987300276953102358856370650245303590131222344091844068230420387866644395370399796309689519494843923430889061401708577014628754832313081330208376584749868536259437096105363503251765706230523454292551707709751041683397522670272169675328826690491140651272637780 + 19846016312797738731211136140981693594311089126868873619032237858369813184700562117256006292984983687306963053312177122080670879760649925215434762368825651478832523449539762281457627405707270975360850636783612341023465212119967049049626030577222694953939069076173826695980041212230758350566732200327820113265 - 13286326846129721436211941768016450519794241605000414500008071821093823802937559905302776560062084076060404186759131765754462709649337381094620727009092457009665457644613082536375692091116799860680069719404081000704710772146250280154532365881010262279974501123060175530881664894389583415221438972249821080819 + 2783690563248958312571265315106235583095580776979334485725916847320177872992744719728986534366224657431907891583207108564903794434987883774779492633759159354114418029616221712733825828896235540552978569759738267951641186607261660704975243339820618546434886377140625751450379507666924407671630677935655869872 - 80089318740270446325083003934613079543369840337364155537752710881722615057845514274892712292651966948281269300012401510187597632512141594017829078668054519197885602648572592310548897733521448403682798573325643515851320379265192473420569998640676132177168365291688843976389007551278166758823552479351284133144 + 67068918214002977558815050973866242448059308332824455898252268459696010810905615036310056379596903803514529431881065023711193327212190606167810306149718525468600580683745229978183321074988548966005653689780905742511143100649115160397902870524356284600829604605061500800118410358027515681319225376002422493683 - 83250465672840726570002147879933839335978997691047803901424437176955292801247631335088771607987450037617684014717203823869607821930597804968250180649403852123522218085416312733392973590005256201921861362519283913670933832415881954951392603255700430354596527404171944114299985208961510905343563815409078779137 + 84771511224883070161547283107760584334664039333665578721123725724037231769616832559273662405089828528348902685355228809519072271976319690074059523935158266781825933027921681666426853405916651795507944358108082643942524415320548394059830534923297722781421186056081174838998744775444102746127020548684876331407 - 92183259010263431214971695135387792894029299522420013861496712953229412848511647555509510042545381928205458034729761094118784329755929274833021016481407486680504117664171884749382195988685940562520722547361578453718668416302823046041866046347918179665539829779479770348208706902152683876420113406717068877895 + 69561949677329563991978846295773763871461814331346542958393346158756268692733023318018207438776579203009553569974488896053349496746121608193258597892028401092867450514090124855767364765357492997001220877877664272740154292669069704260652792750047399990547798377191901777528722207673214692191858921579313356470 - 34719472576945560209404596277734194056422193470581012193921206113153462517907074347482367231820760244757979632486164608627460951049728820203191786788166170071163784742827524815043574147676944379276980192298868525436290782065778018902995410292426174857539194962641953019455829706060494327105516562434222255279 + 84701936082090735694047690301295850903053250944708308185929424273427998289226119996888016146920383679847229889074091152610147143791955237376531176432222571669258828111680412852462473380658396671154184942040568777770036357681719177745702989843812573920884442162752406912125403170876752194660520760352348570290 - 35406983899114037516721951137877619134368256618777416624111684485976095167443448908005851789880673177926372317109842310032383549703859731905843054625201133743024254115638833377103288884475149364887668042122700029798341471903052647347859090441424773641812489100611569357854878258879244443907649798352365262943 + 2312230876198278139553587277237449583496926646874730069566577616872447463689680939799856651882979079291260842762291834688460807419207617887873153907764000811409813033277935924669494037253953371945437818292225822137378526856574299014613604333026413847759301222491805880690494464114151013429779999484430124983 - 15073229642774490897083925078071122878112701080955031080105651763339580629856710695270782216004281603636187994734170699043937521793949813394303014158134588185674885486089132095200742772230525690550932265897245532112029866181510119609572922265856424308024870035946135586336573296111892732961890469318731640249 + 70371979293890841536749410515340561444883518014589570113860624494182003173909553336412475270148479505325650185431490229050674924015304830073661718506559321070497618931869526391861891794091136521194997068124855336916772808735302587827791142342532519204473345169001881954306019843510179989636986529246234334280 - 45312655404517580293949898234705137719869422360036397307054441470994715087921932336220452520764840234099018197669958987556586078674767514245575652176225601161653811302372542010910604150738658685206504193693881028710782018981053933361279213063062746063203101488454215245915841657200324244552735554716944391735 + 82605229903148128580586814679798853107977480966745419306842995355376844334570348936171901956799609152518278291428898452802966882995858380471145125327199654958715048896404463878077856460574771100316202366189923086594093895797227104245482014828992181908891346432366951766234379117512023391983804354740636815582 - 85582173608000685600369595964944720087480946854761299758283955354368115407497400365726987862360982944042572300708948758761151755414532910519826312633693792419257682875013888800303593122602828000602660316247717488644443565098541578992226947681287730254874745687194366451676578372697813504233127904765527712091 + 38020522091845885545916238610430714338026712548213296838698114195552800203811407221774576750908882744559344263702166428559656141680708524732752800754480913325681550326741298379001341173374756146805998188517092288514660537770620097230309520847839690138238494100910791095129848598284951877247628469245092353926 - 32777830599939060958697147091072497558439342644293864450880903998162142499653394388578697846733866139266727402463026329185583791524993251661664528283072703948642650156867462749235637394294939832136124400763001172187952978460075815700812724219273582130499008699958053354018074931572090640801545948373165722112 + 77977304484877525342053273740556783776260443457677011598087070714227203831631305049542799377120204137470061344731660738135427559130053253505162999571504204648110377548526623311764860031746131573886429123863029963082655701390273029507629281731678692185467729424226785203844926244644678278890162991357743683834 - 28065375600445760519731289499406154426614854413061507055756473936415863405786512738364170103940368449792347095562487750077751133678235837913021443168980615125427702843374077872351744975276403882563473853640542728356393955256972647714621496053063163974227631540155970186558240197003841801899009162780057815414 + 54259479197985590522935319816120357998026009986608723714699095453023555677588563791526427529788474421561093194817028424802666475847067374184732059438163285947017098947212441698950714263724534381365727955009444760733290599650546294679635804438758851619247144677389393834458971049857636704486268786590869255510 - 99199624817611775423765147124319667232422514711373423085073663393914821802829247918838893942062174601958898192689770378274134567704179714594230418444677555556198595552990056296226363975995314676568763813066517881063208908607900225925789532796875115331725673524308369451559546056487920553215314957298075503445 + 51487464672004219167397380159203764885670657972767167491536445317442486109221833275797869102932198744387522057049731861864413501190353661431134539881799980531196652361711222832516699163324355208865573731977383673956478779793235680869087650920024793874322322897261634486404260402666259327242844734475839246777 - 86853261294192183322046773327253761023777599778875688559712196542929671051591298285548968125007594980586177930615713859640524798517953017929877887552771092542323424205659371260742824115055800081065407649313238340319467838942950374263566359247635664044620298316576034537025079744611973695612819277671062528034 + 23891652283987568260979600708514562405654164077542422842465552355728671217919896537044805672196470750021346969207401642223017852855402070092317892803430466133949407915381475078472569488582279613040745295021285115366798891886629778846395595788735291347192912172379600980898405668091214372020909974279058166759 - 29536097733908735840121632557341211603850852306440313205067415848450805596542610215580009953240178998805625115840699268340411025043959100234278423904884401146804694112711398873939200298334743666634581253432256305843072844068434768013104918521081221643599965937592370088656153951303335968569230448909053049823 + 52110546933329236705773894456570141991541908856520325128915814026717822969965438085992140659855757897093796201453983608470080538130609302770192702811327060111972194923512754145396731482687932121059809725390783560403585809316797016532233152483665804547202864982641440009812987642222581160068230243956136424470 - 68715936012809364510950999882543663416679097159128965153867711216739600996392208550898166707763658901531511632798397972553921261549450465832914493101961957024783575831022185384284172889654538916023029501498753897178985530123209738993613090022531424077175618044424317260226369521904242953217477053109660643564 + 44622100117435802892653716080735092851641239410243658383506231986344388692061909130299453808279329943503675941890664533405605865431067444034104978885649804714090407621655449028777049839649966757947337270524073640481403245815237119074320375333798082866450524745816140329871105384080079725755836690957731049576 - 52355518347684034820679583465754282866598276896958155698924839329910721620148793842569737931911271982593560198464139305825476457872957189776882158591163123636916180505848307816356442304816648822807744583024096842041236079312835219443763760197577489473956111788770122310165125640733270993478166002256271769049 + 82558822848573300470724696410791205946112476867365037951660070046641882753592477687549394203610785672262662384382725033246905066204547465418879066650432416293938683069538711261770216966107189710318131558996495646905608202349636214008048156926149674402260919051646637718031228397317178938178923690653774307481 - 103844480611520454426070844701055326609084780767386774737664286403257136498548396833924655580619346016935745912829154672025888185243679683101631102279559626381830851289727483589001022732754015650033885443730344315377305616979597063062908690974486211961550863280361159699452660958078269342323395006711165981867 + 73897632420417481304393157698910842467232232693472064393563046224094693240343911735397699015533976989558388804722225470961297340752120871781536913760689451543260172527904763187874977393661016106694625892333307693434682332135100544980234797753290465492241903725089975419670744141296371376414925953672375379081 - 13748881510666108804016869440478788107119845411046749709382562362353402035027245823348996980866559842788865118173104813492029193865897851757488427810805213782335800207023948908766060903365220434127389166795020318590860556417060835515314103165191529656542459927030106724353867073253437410585173255866670222978 + 61464114868871124599786950025859868162871637726212811157551840348963635763534004247680694662167253193334911039757022064012473074399018668466073122594299136075216430478121185423785842392849057381965641245824478037510846018059045395404958009668458240159712270419396829997597707201343497393807177817315941745233 - 53055557927972852583744495843389552806504306166806610818929536354605516656450709131246347465863114148633400188513727566043999149554661315856772749993466314962895736003140061756393498374307648998817147694786433746801296524584452211231409978476466175312886875464047593511182723410020178672643329694144765601267 + 82987254729900465883906796538103939015387748736770331946472650123168061996862638355512950072164538380760959712200552671912629545435124099372763956055471336399025502973363565554281115078633269063952051405592896406747001059701784558993978004898434438169580212672338445055245344324072691724366450695194992598693 - 49987258668945965319054848851783598736115074970637917451913334599663348709889658939353428428697667989156907385418214422716296816322356646605017912455047446032771403623155639526896633472178148479761023651441905369378913702505767678888289953351640276767508686171959325021281194897644140405108279308558535990669 + 29948829865539118963410172506684811479459672185613159209418908732929219043628427249790742468071937634770967541111612570315540199410290058252452519997156676156385004080593331942569738450805617600994904207802395195200101707436517656099511129913312283507841496946252517472085211191864170199632238051545804026048 - 27462081941738993903732065899911803600994929646194851709326949851351510815846189825084334598036902296524242714009233178575391998562042853548917863866567644727006796483159397368028512598230987652310930826025084448640890119106063027433474314996502974897759881210561695493807213330433528462566301857504647397098 + 12124870479154312772353436301890081025651988035529747864338620334293513100796001860146858133191801943081295319877792084426306668537520477275539723925587423270146656622742859391946632743093834061266602214899824871260380066444857886792751566590343297657694157195754787013843577450039503290253739282996688026638 - 40669343047082620912972928875841708456691813827188276211319499936459166251158325179880660044685538552467272328237270129723753982190279971081537253458122719653539880792815616523845297980754203917707372656001586667026428193836891675956055203106917160064345833215953490122919355794569372389128223528404300363171 + 92434681152430848671671236238621488729438799226223923040300592669863869170801267406827058115782062746500850988824350102606773493807222992148668580025710564757981642316889830190234085144945096284305241177143877289431245692938623094831369428568856239716275501290595990040949507985021811838671912697641806546689 - 86627879942185409831242800319710349861034375799063445215832804868996823808194449352425391504008987763502220820809399938015204065930187659428695206143223438013464023178141552638259978221501216315383998618607932361746787573929692638059620972134928602117707478786875215414685725931660814482175246182753924996135 + 75540881807425088097198579093361123953171722054384633412655389824641728550394208657976011149529520888805723198391002191158514181607453438779867796623821469218200844378808333037920560824668560366602199527957669046921033823395785754796274187952145245821503055893714865085015506585780034046897602472859794134384 - 54834058865003460389354012546505376859324318525436989007607307670467597308536133429093307123445402065268168915092116255667842521545682979595393185958333227251369786291912515944249569537416960540979920476876420061413482922338531345300266314778271139803671136787969534546015363365609544177150577324360408163124 + 5129342463401582783159341280339403180665661367157028112526066743774809930258427908184974224567114837648772711789304468211027727781076826363207529941703901433719650612113142480840313152050067787820381712567977542957301840481259652410910623707639868123028060340722851250138504397839143931799241210776136184504 - 48269749012107061244137353495354984568142353892205731085849206805874777799635573613999134806166609429459005069383936865011497970521193848375618337272077974857321862001161898757244086132739945248147471910642263330964141309171637814753039916625981874786818966191765913214534931232352561482396774125031066589454 + 18939759269823365690379401855689990905861363473377363232092949767065798547695842643171683502314494197376954751231241619396698976144713240846872256526027488219593060283607788051776705813924748097332150604832130099067883064111978832717029623032585441317567028708162674590956829105171448333344467781227583020533 - 18673501953348854562715007182525698025864337038162913349000903170542669237567373598124029107811363086135556888790237042308076212087291888387366583936898731288479115311035354686001251753615856792721450839154366380139780950535828839207803668477639854453464322500734413553093445055116640935484010906827629510808 + 58293709024263061937199493519852315382779342954379989702094570528539238261400682802736007025614835466621799377920418650668726936222894309200616030784901069631013904923932692101671519609808692217859246763845000931740872214152633486229699291272324678426747940552289374971347603144925949178310482080617745567271 - 53039116779812425468526503128681839054197766094083204746351369895447042090238361784642779022699374997641930759266714091047637574691179223473464013704650067558195783145343140706910357712672225233148559221614211030593354244493062728397149493676311895571602341516843274374186936486470949277354005863736200858091 + 76915086027679700408777330412500518769298947803187363022514029127782100015894067980969903089011513398448140405051057575280060790722941993202706155747972588482746827218246024600139306396667954611454729813127148896395730765992228824633279960377667498091661510340134988993718476016401256458232083854457724594703 - 6760528442030156388912352126500685017508879983187645476519734242035118711564582745655914806304165218542706837005558791719794196435109075493204043726496254190332434802061757946486827449459938069419825257099048787199469367414729392279644113910791198181832654837336049880462593054595845486807896570115487376284 + 58088856560436875526469206424441398148413179492624223546370040175524111771410849883777962952963654255671041549041344887271723887535719648237062587801392310190635901381436965047333357802789276649742901124891149750059812905221121564019744725319586006988059151505560048270755138039094229209343997264904655954845 - 75665702076034713658557593820909617055424878489240394448108561545928441191448687621252620543323326935319562242803479609439129300648215720159450225389669256867292011786474791009317587420508622465142826854980292006750780165320015332703053417965150230800899382824632466069114226842300690970758832870733575877925 + 56716021252420646209983821445512215640561841410984442091035894159849934068338386371262582497522730555723182231090539472204808726789635767070544610652470859979479826974880734201112427699948550629382297424059255895479643039722015324357437510232769972077978216636556834046313809989043782998240568786084013065678 - 78068623839084901835048966851097597292025404326419265794702739257745147977236881624825468451988848549308844148448418412138558349945901642076435885637860140891375888865936506147895780394167052761144968265726255104313761407833570774175193714420181241249233762348251542886505746533559663447600484233497181823296 + 4540186635519475774794317225271010411072752052252193650839681377660718651402012717645562291415602437733057008950086527729511861449460645408602156406761793719320956564883342872626536480597094466623690158909090792394762918454444380859694303025938917945654317792521667180962715338136896100559930127856395348146 - 79705996256052522394534641675328616801057776030485365110726146237774776609665437743627769696848602553439108036264780069742088067393709565455934684726894631154879429855787104835829974820277408027968861913333706521019603647025417075805109422190217864878353404992392737365263517704012625217463988978730474136166 + 54115649270092464787357255339342907995124374393480176331545883558571581064996366747668592872306074169667073720845971869740423502598157720902667715899822156521971888707545997809389564587376917503341732692443586955071374125868178759177812858054620114938250762589905252883853421197974509139034583368318412566432 - 91774825999136116873764507696798835414862973981728089801968823850234421235608977656201294056422386656956531070151345295914962649306610315093105938439900026449393156857178133309199123217968342271774653533570497056641510758903278516710994056718871539724890493794140953264037654080016505098876879622220514002282 + 4181108905556690331624582562817879161988364716821467658731945926799950714093431169742457649794163627813333201530539849916793295801580156092691589179490434488247049005264110165285331081606448264654901725479032283154080817358749919402675095080774597088398373423398570114138396879531371642409213866255404596565 - 94135728435612872582477346905974305063182944046511185282791976784067954618018396996836535484727808895969067252739735184795523349080684029137499847890816392941897634578829979644171256431959605287730353371508183380265227360335396160269629525284714280168638826427717358246599992291570302254141897102612276426275 + 45631081626302531307168652868374267347765981778243475210789911362425093938229321798984319625053479931372267718517934716630086789938611336216989012159808659797581354946461982352760942732825256962813427996001121693266157603023840797455792570326300584309919590206591239627918517142922887531129331324603496683171 - 32082772075528993584226466982349154340214405130992680938430144828780870581372358803160182072438597533174213405483837405021825762659011737637050617661347059351843591363739446369530557954245638584408937074309906069965951080250533211043226154564822960509124806413180876593596939603909698804437362894360298059775 + 40936471243068624461735318393865650309459061803916364079583555982229736852197214176727116093950414759030814885601364589453596996391550113374496015303863934885276482291536939388582031924030517401889086611354938680360997067469382067034893378853954601433044931180510538333543907010325554199042153290952762949927 - 76755112099888432964709357702267806300944971377072202520656588665686009170787176021920225450618583455738467483275068845515088835678957751286951640241236779062223019860151025074315202515212362428951936916853879773662272393801464770655764829671161979930700069876750985760980040153830555990974915246038159083186 + 89778205305954837308093101331258781876759407143705961086612013373455480100289875405667063485568345262891328877594764108163054229999717425186337082023077059620110122441881137782004001477715835150541941718312007367234865671571370488494045684471602487505870280117058572319305627913950971529586598787753129536822 - 47852315911398677684734564513414800709232825713035223794997739741177652324464838636324222071301961846162856706048218013207035782660967283071389633952324639730234615197541601351900571221764999902410323825313185440397006481844154022560385441756066822243960181079078616015027818338602516319581059620262068448587 + 1295161226513504167867643681131543192872306135825010759857856197180218740348590677566310107602662315248859540491212164595051195095175294389336316967561353746305152386508569649653313730374414834062491532077177754788629483859130972049117106833121601183579631906344247920546590814722384842981504144117519885930 - 61688584555770644680384087584583429987986760088236514303268169469789487040458940320444860553449108020960319952052105961215482311823115777576530701164068840038526218476735549279953263401896651414541641386201200017037728270898705697344067413746535378932186530820858175148198059571715606080515302142133214046058 + 34752675208523410864212501706295011490234935728835133925514119139791495324749420085676212272498133382529765888688333346385516136615338242288113273789780701477640153182919661032448484771564381345121126239441392580395059900119754919034267098523798620864712078023062872277321463926902462427397895708904225042928 - 21481434184536717885678312973454823073555418713848171631093132442279586257483006524898841407504825611840939650019034592585510558004963753256518002418371556548333689544124434498333400167654545110746567129808096214288698486256493321823376197851414642122129146885507929415378509198751875000651383149999379693873 + 65638280954216880332998839339252498240344751941626202620659246099839945762624659088692178634338271721541041579401205168148462014214403772704581703231153957241053469513355053328789029738704753314242349068682059488594284121888694331532652526737460872161109520092712341526512909532689056861448171619433888795627 - 105156899557316355864070136545566978283422141426422966383163442597880665942262511638463331980246652617150982400282388287964371081623042052506694497993570964511289545201271371159292484065404737322364971836315160334534611562333733276846570726697560635346130818435440596824671653191775720428300108368184130688438 + 25546326887869416196305571397436496954112306204679487707048013317650977940305017095401817796951485874125485185489979718646093344610768651998594773454469228933700774673786195454397961200632097112442736090291567219739392946602823204572522082408172908958207757947824647399279622893963406407541660265363506196591 - 98959898721214494495828919472659555932012321129732453736121505001224519873563715348306374385527739636298325511227312714425700372671565400927286511614498093437039501707693833894880757300901819134595598871814973607745655093002192061709601161280265341030374611810270418515177807211697521799214454606315690267511 + 30422803383970205758377987417218462089461583337863453824840575641453067612611842548141963200326309833846820113891902135240624289950265433593972625979580916576801108253132355009636696971228899048297095029355052692965710016352000386427528741721082316447177822962571637721138723569936216621043134038875753574382 - 68381186013014706228178679833382996223491695085680594186065385357026784018748376522929092191717642865580906943634046901975310202411058035121520049309627323561778195538447043149085034822523966254182486431428463599442899861888074804092654266802953736923724056954580688679890697231463474120241623621326920794514 + 68588774418846824026075347074701520165177807217642669445383888222185702764812385739972132856502842926525866902531526512381859508484027983555727244796607946708334007846660418718718902488052816278672382346124129777753620336520285362609303072557343054616215122712449573523551828858709889989221393164026568690397 - 6341055597850121877185496442853140871031500239359397817498635890836172698375327708251156093770837115965096992481986308304317047498543671562420187478490890118668124085080122704985115835581464255627376485107199321618571304574993242873986691266879986998418041512624131987049081795002579735816952404860011582229 + 14583012578230579919212651098878718289185414426839270534677253856992089558448004913221113780032489389336404104060497449483455661568835260780472145848780437525107760742686850621585273515673116908760009199985762345649409075826088927289872260507897314658887553597047156556807237866457737561706803083313717105914 - 95749881395084895889215892638057740255608217623282887276670305134242386361268113459443434164663293641912793485166209342184594255545421861322585085035223918933383485829943262763997812619141583939537648117921488168878808269706829995841375716484191535662059488156769299913422930871550956514952973030160638121534 + 87072789976862077590260629123343008996647517325518842779241265200284308557372191510097929798002478161718869369587507584738631193924696337227149745988547271098801114579845872672146461536736946960181312036433053890558478780114941158921137697998339399824390361388041699235417154835263047174659835463720710831616 - 100250378140254516949327783190536939282312409600044675872747165249515507584079436742287130566029481058179443167015741441847989549576899964285580187231793343093460681383676382851708813699345714670289499966640145405138917198652854607189078021170403079631709636181860962536659231087262884663097094817728655720331 + 74592401327237348205132503246590270557551499937523811457398159299621433073061836945092364178303351291606709287884184680532272868939784285008148920359873235456166966958897835906977455951169993249934270433478995852846853365483858006698512515330522783264019614382564059660659067434270575101239224953994859173356 - 49683689846447310465294035950979089212485922709850291376255373269840294372713943315923141611068174772512158395444823682774227362953067863939736148246300733612196705469378167953528261099375115056802246992989047159848834229597344194711420265456514596402938334906531237250093475926925659794206289891182812618128 + 2258051368382920966139781937640995075390142010181207901689696701855976965997508313055657062261606845071990697112536367765269166257264697176361820143407781847830855279948778082022405663702564425631919180038467726813235460488581113048639399368112079533469721122352983709293621313284795302250914487561872306501 - 76329901143914374347026056397345388757845856802786548824703160952842839882264288994547840867050803378637689517149819610714208641247261250953986720620781242186277511191654168321661198622994902246093147583886422648423948412392743845537461614819153547037617469127739024585244439750441037091760171870815936655282 + 47294427191262196213508589588915163397902040021560114982313477584554595115511591712501144985436982821479742945471129356788597110939028650902314805674397463104080758790745734205786162405115220925337771253688900219995781867222178937495182923511247958583576454292008763434571765213812941607539913201436717469871 - 8821352179752315363520416648491309176041979261291498837203682349103439541771309041003515916937575567640613687343285717855803857372432992160233802668704356516246767090810529813539545439670407324258566243882679736149326362174377971939555008549356111194390016500143051397475538997131208087346332672101333748486 + 87576073209609613397431769565376117076174321294168323091691140834422391524663875554138805501985638317750284398829768203941231082128360738063763435223369818422301971098952471816536405779650920322184455577733247923447571874511794894304383969341403744049474703033251609334913790114459090187503442986021139228104 - 9559554989898240151446260865684342446941791375053497260559440107622951214429559748503552971281260755772848740922106508111657365664342153237185320517235315570340884558949797475806515095609052785804105452615775230120347538397369634906821464692688794002684887119292087142703562846535724485291610831524289700850 + 53532972276394338052944028132892839903236060114682364640857973612992368138655227811085737458006971801390382834695833581634781907549555828978362904903420846737058469090640673375895488284368353258933201014829664710614302258574877334477194164869704816211959981682871005565309849734569362667542567218727040020223 - 6131845871953405403836559583160006773264360406612250149132262804514403151110285128827959603683716591348361507287350859858881531506325861283326461621731334792350230672344748491638296797520778111788926011313341089516251225126987733278013694671344915724343243553738544310927151357098999938054780115464510834110 + 65588478325995530726906881381076036056309800992689552347224093108156791620749013924832861095173729140059501755184544863447335555862130904626003015647435114844830320805104309051461360690056659399097990227576615411253200431564410784087351315242243183177325303776402373716798906596887057433836113532792818980492 - 820494673661603895786019139162651606450741167308361504039858028892063423464825269922554380000391240559705735227439384666995416713310308540138583436985436797471482549221828420973995331564993200555588019217072172915444814010079111593703418447098818677355219744410265071805537796385366012338275462128880498965 + 33498552547994991046629946974263835733696882413935740043616859115857157044315031089814063139363292495759659813396174724984399951009451295571123676124599092209055409250585658128347445096394579358423709692532651828262352464810980849133962556965427757221370606569728650670881819833496720455107115660145403791286 - 47388283262451072908768604716227231398458544231313416905759812830642199487114435426788152441767933214127120608504254184910787319606246063873832969559627206124418528081096796274491601838218962208631590581440212762702340653397305602533976960413259336354740158048960317546581126384275449664371082709723859032707 + 7238306595712503789470327794049507816665807341124616917695511670748136720725483287741446477305317001432110508917469529994977574047452252573709920524790473657730691046085793093247586768962798951220291813133061883459049177766247193213667357936145175533818161804252846484505668657451702113538009970673606628011 - 50605316585689993493182292582285093297579277499444271114991019425467074434447132352815860786448637982179457714435506128005454045773242216379221249947063192293806592719282019345770802883461488813048171306434366628747805149462570036975598787964271320191015145769111054238958243095298138525592064975909217042221 + 65007593333037846153319952181301230292937445839079704461326983993141210480458594257544922890167804495702299649692446303125955359368403296225475400933832378236512981912858526593101080718758512549355559511986154901323662342388966534817680690089679746263161183231020912589243271034981129943180584117551671014689 - 75445549791296377368982759690709619321688378363928714799553709673079123516091101103508961912616857493593192049132998755914412979684029876757467500099340605620460200874072311904597498091062691409334686179743208950435271488835910198982513187295069656507740828454782486099872527196816010476303504134782627332358 + 91438752332522240353149026054003137955992504531297608620075439584159528344634636777153154074886368388812929983317598577312720989971864917295716581425471392100515641438552944823560523075903164643886475042563632525999757715063613293720704210696278445235189134274229310393595892381771006667293074903042411643042 - 27510053753460204161674633694695839956016606311812135947896553536911700020020169282387853046665003847923083613668911284499764023593656738902352255817978239900365176962510177565338478191106879766660635739662762162218437637065709309824309272751240276291153861256429139045476905353844487676193056361465344595699 + 36025174577980922530781780396743216630727929407399389228894590875349388028157526302251043427904711108049263388253481052959659871623550534494333854479413156130122407244438984198694875220505448345281708953651265152601009347917011621412119732176872507387242819945384645319296448512998156522508589121438115918127 - 79031475317546129515975763706976080375170708930788611209795228758383728306155300814323561538575005708801722933107651313208140940204292297064660053088495896068042003885063876615869560258934215276065816000295382387512257734337439045647694263766629210044305124635811041456796027805177734153980830784649564916824 + 74166709318762873271863256266713147715760822024093896900477255997615149633022474068855376185237871755627516816027340277669283935144639464851573582505258380095030625559151201195142453809756446961289750243791271558509814279553260418092996414505480596651776946877469356137891894724341551031898996985635676396484 - 47759559362586203003608045165870966958510618551268871163840653242163914997653621671020696719311173130316084485198437670890583230054268154549160939835042336962187479724005398222274645609694787469622220374254395680742894758597415675199322470292001654402152763132225969979499474746218519128393394493789541872262 + 69695032529161810012109932928916558814370574767557113911623302492000900258538771749758152912760453581449855068235401788899797025271712580467524531857487106750024444895369766947162335305901624424068969608492122396355851190827360973815472014276255107797278902834519087847065445429643687873248024406916735085404 - 48983571012098417444512977341477616555480155743491413029630124028685929876805002911407072376905756762823443771336269106052945616804750981562153664223547570258199837273283061893054162772380886580720452310175847877487548626850063170745088392685454440171611833763952429566237779528611618587061064040135716298228 + 7916072094984906847639775164491947163029583393452997815169476477264976670166952764377394755709054254685211849196852277437812825346148783856049109816020620645155001442015467801908376310992323825279881082097957356644543394332266818772710561519457340921839132880909511116505667225871094621570792437090487579223 - 6165154223132662452048588531879173100735017647871755178304410214021772347675143072428124115242190145754082070922249547179899990691968989456253911407856693218066393509221102374917828585219478147604176627094965859185049810038402338431288531939232635886410783859824683983253205237829767309442251767801307143915 + 27109872432244750806398799745245359325388098723143686126349557374422328918645735588676377353571705855191789680709216803282049592248395958919574168887040893097405715939709124080728471208884237315856987520437250140267577570424833093831784405506447858163742137352756225179572783199233139690364840886251522606328 - 11294489479560449488209255021119477705401808742040265807030583660199210138449522851357514946897286073199909892015051656213702367271829913616437596050650447214814158802047159436980917365346993524893574992042719285636663382859013945629296737396993709384122602221193378470575553266166097481749334659971633852211 + 74833350827704654354599377281948751499720468578197082285671889298981598328106655010037485961256707381342366462415723508650229310438246491711033721976999051919363182398553688151447366503589574814675994987639389916090320692615833927375496771316379646169800947521649225611920544648172558448475511918861917823675 - 66045581602453690220873587781853022879733838179592564362116435467888125577174250158358684909859381106660225589379187878182581614262268244659031082188071251676197057293860398259512796295643896206051932263857184771856135144175326764742136843589190901832257064233304927875364055138825702620917278604352739538747 + 34566441076190455997568327495011378468480972085724655678675485675511611967987263742463787959086546718827749423084731931759155100792416849502405472746703397936089153541334343499649031151169090234545382393529636252727280583254002898518274268840831708306299709593996129705022323802298832216411338492015818686492 - 48249836981913960166559487127551286796723188938016769784468929545596300340281978983946578575136607957198335602273663057016466685514298971653973133455435728280396176706997504350478737758778567339099677771358816158353092778181215763173890736906371460551489943376008888588345732966708991514513430352519708139452 + 62152725425367653742845721706553152474035057137924682139341382879955754382243374362969262798369778987368103520176237520820865966267523167351237919895601007132783085680209101171625110867200937027966289346659010275258659689571267665819143831632927011743588126908028848435115965914435248319302869054036981289014 - 94404755641524619948238059702592333890701121394001011377105649408685759462498613980810762582279774501400021327733201174662826891386467837860364313464011330364710026896718602053624268971591652641033669883565141179361776643173076048233390129145140427054964210509194567692129670640619984111599383803108561401723 + 34418121628023466613666366556177508541118243582609790990449109301563307768012969858298355832810629606651308120676300449301419431190759540962708879029943839408476554882923887535462334917282827768484692688313360151571563677194565779204827004407690427258587120499932270901605840476035275626257033480440098281566 - 97964214450189904819411748712310096639967039508905869977794091566760929740215106550442276715746260309028435149025307366507948313482057063120402964882371619120815202512409374893546176247491503668267930329796286493592513179585738280359167687621771380386765360200712410974707936495746354635883197897966710016132 + 85682676785526507552519589916479800144115195762506104141730383409108359914137864764362551515857416095347987286449265105888437469143409352013238348569953185186598677497917384467899189099925712732271550808162490694035023650560520492197271709874940181738576103460642910246245045931690630603888911549136516617646 - 33446526179630624282253913966980316614982285338629519613173407683912347088691832266185680020515319402997022601184631987036880703463022168934131161432293746295220431323800262620251754093593025641550209103910386818150500170245127823154199138516253956190141007611402290456004593964642546849283257899882936839779 + 2050990117429515027682929230489674861617650270927413536748786201272463130280186538623512612979180210898995565234940214498764315510705568349682324826127580528998485329885046890357461782105323936408846148748226843170000967042626461046526171217109791762070234203351230081574990934608399534249473710308040701537 - 79074528875385856769015388192496379041910096290064787980475990782548196733165709536202516765801898906777564101461903549977492766789964718321926291077204092445915712494355601186504687790075637509774904474180989276676162588691744439059361552001524311751346777168317303953431121814083123565481831543116281872367 + 33093535271994325216103803676401607638233204738973636895592832292839620879410140808309829247074563419000659581369920586460424272713236455339454979881038705607946660139811304149293439023738770737039765948449495244796796936520401063403889406203127321789862715496204795763097485203413794319722811398557454729245 - 101505087203260664628831976237475063953739165533551267987366682005167598370845343250698894866530885720716783660201025517865206209214451196786308799789263198454714602208577005012976631182528319254780082259564429985929531920912517874832181444471185493625694568647103509738515721213140055401047848781171046013832 + 6040110782940977154794674617333401370376324032997658763318770208423025676921716324522723025107180165424035958120558248999444603992581384513849095100581204957114585365355336317880984134162882685009594422969831043675596746749204997204646954648239837027356807891777838064920002061954438875675043630329379686281 - 30078320051810105905424917996131054414760367584442416950428356174491719667008294670139248437491535852144007253872912060929268343781403306882924206543620604721261934151684245840333453366119327302025548494247654755332460166318506195583574094738544987409591546391114853236676473675403544672216583225748340267376 + 45118058848538899539514831520787092197472894647762932502320313410123298184872236691739115721636170522900404344278225606357632798989526224062106336576036772491284668359316650283530408597415531733756607758640544554061095997722501994827240492509821119700827256323424759850801841230929913517999579531290919347661 - 17062801034427235722525941607461362492880252822137120171012104404522740979874671946270373072933190041016334429513352399498313191083754480931070580181585846278953593262184858574522514241281880212793448664561962987746102477057804514892063378841205035930231391028317597225326639079326197474887576425428463522388 + 81487344073213948844190900042381627112789161612926255699306051387625069924845450921551828054778879783703262478100504319187717633204690639413249647752558160056288692616996610725853027105042878302394660721051148481025370033625866315806308077537164504721289646045302269108273422064664948478317175244183970209357 - 82542814763433025466980353041906141606372573842968618180399090325063414648066337596980781997572923813473588355302676367456672756925935533772588244877938269023738147223486875804457952923573251416710383866752413262979282355187797109244746813235629664335066516080768327637589561671557073597512369839035126792142 + 57037764864069767413406458071743494336957859049090940277651661686255511368666733116049436343694538963767467835753860647815985252627675614772244183123313687567691964903330863257915716409089739295210557520022537926153321464598277512866195119614727662752310306260220142566922516017960540889400118008610856600634 - 16856652872224739373603962369504287684212066202172467430022456212946746926254223744927404482053982315408600667214476119614638976471819521557513189706374501685873187346031604011255032691418192646225661073407609685521095162805959229371971345575993038308458924460253264733349155216623899099669037794896706280097 + 39056664908292191442682533131261062485292980392450051260376079352047402893066955065905811181695655253810765676975452262753628905460265669105854040204828455552274045521972953961883858830396908372125035304439847689543841994076212898591568346766875537031830621068365066016815915457439462511398378802717827163930 - 67948700880684312842428185134812497109229656494346247543887264918933506715940027660105049717198309699442676710307179766939776670202732268315497585635804793695574106819668245849333009316384024637290778870275624466350263650580089499588533408437419238784677105133926008008796476194422292742229823166870571225686 + 90503030597905445445674308856040898487061161203013943782248483411758458018557693462211450832369595291925804527385956238749949732368335692725530165710731931150029407803426208911317132574502680456018032926188807438066447205889326497201358209209966048900047794242347734941455778288799899378557037038496350017434 - 17944604713413754383887108087270520426262207624353874277157271373648012515314331115479490160330665076723065983969530643281829015303706427638323050584571644495553530356810914402620474042396630542168672372278439432063975613748128169654942446904059710160091814228830151617543621280164772065419848467931633565301 + 2572775843215978868116531658288761079394205198039722591243687440021840432761184081707677500189970633238343189283791100011428916321827120822442025568992159260366398656588080927342816321180059622150692654143504011600920084836731977321577951197121695462208949699433586880500806083035261424705056715145571630979 - 21754577356790502478754633542497371907798943154611227133691381355652644535250496203026214053307704407570948256697374954623720140570351831886222960668276560497413090332254729518670892843921175565590883326323458494815683934844917376327567843227730862205027826295960468613377903838176723993618004739485844952486 + 48059213836354425781916967577606157901690862274174406276736875374040506963423911194719282865770662262116778308430984128780392068259832147264251085196833907781723097163776089742911388842648833204069618752790615152281349081220597379970121418600312064346212560834138487981060407097822558802956653108834159773603 - 43844505295158170737794306553807754889470057167669452186495722919985780861463996054402144775583810612656987468400270187424488964156482982740185923368306140040696366542830306258224780271731132844786500473694527859879956788557702704968133679562883533849472079860926916148104095107380769472743667004539748588106 + 79590294479535497582160087445872588538858994968343709037390904709015488435860011751732352100621000431054184286776384213028424680120710179763421260648636848447094963209608240954346575459229522299573854449138194905408336546710329803183364957012965561578216380974669844906497640491411109834314778103962822568119 - 68232247305849569909362563985070086671640984037242260267793718583186903608419063199251992902032719170671217754427485397379187977640599115565526858518038198233058069987993101423793781122927839922676638608953125746749019682192589612100323298293385349665089826615745645723704315619270932934284395940101373370185 + 5580928087748377109592052170957061000297523380274443493382233524157209147916488847418498185795266529063725604788255820741994627008731988603640506865198762589684232236543311457163958476828794597126382696890115870407842261714197471099737815120052721429710073868612707643366162680446811562884028540125989534721 - 84663523929845091781437588247256508184810591192145402100797988823694481502683151422506065591227626332582573404824797746141621359983692941152314928570833980473662805131351839071495324334392053176500054044692631552405979350558111841896203777412788187530862236538746044598214179304290713943277209169685647490641 + 38729596840827068864626305358505968594606962714369340519218103281765292727289552811861391468106692838273330785068388104555128235026121488168426958062081784975637304538976469084186425096779994171966838622731435064406555820149179220623520592904350264815573186057977696269598773009347682993630132851543869498924 - 24102434544699895558778261445224535502364762612151496454825886856478064863745794101602375772172352404684906905353636874727565858936924467742001557450155300637932659837361060986197083538921664044547129041723381386855105098431127723630932745933872465337457283198743967763278848346218653984137836247763184191171 + 73140890969050195895127675865893668336233182712320138420813670166004644820535818688183152296005432888936241943023314756549181711591525626740252190203668627992715389038923388347982406659419523164446623509054763930386099428361397812851463504219217061608545494649983391468930153104634317599255954602726746740222 - 94649799142407920909253678517967828469526747827063886806545180969220324678388978566125872277114947828473669796984493090184738820707731277994440930060655226732552713398196880262935390440532634787592613464742957838000444938453801633421118893430315063425374981601237674118231851960630478394479647077191551733446 + 57552413766771738983539716273207054096119792139604188623121840789130953151634759434518727049814769356648711892589557266090642972724648376166699477215737404715055023573060467090917067128362001432520519161659872811847549552813636342053118727041693689739355193131522416492441925668407317611051985751109621497408 - 94161938648125130127924484056328378082116328779700746200847992182657915878444211726565417597186764443505341674456848117991080252531145765007985174685562983306636016527792203116283860781982044475325107159750479153268877601090362752889158393652422733446712212204225818756623429827055722480794375419660696306073 + 23154187139219802567072210595828810001303178702504618130578515848820245657567929320364780755718616309954997537435482533608511839502510143662592759385186393831300887108660649530848255278850532036967965649879012825957161220318267866991048170998947459505358114435514496080485910815470029794698185248332391087990 - 2455392143672229042666742870883284099000746896359169069589406556100365976717900481354662493819408271949786289215528672731180261000234183586024905341181675632208606984428454194035391079159218030586694032652474905667356949169419795131507416375436780033385466009939931030766772442018697331643436507458378723634 + 81898602515005203619649127626034871073369862007540253079038591594060555181404393365902890868615782823524026803435041302531522195978414637001437206146006597947245168082989145052529436778546795206973004575307190141185485223064200989851555141589988426951715202088184844403111504626781011508453126066059226188141 - 62738664257777961797567254177529400389097798620585490302058551702656952136124001253903459535275164641811992772707742269631315840011796391314760936029303361712010676136735223948555555339708529818754369326551288370620587143573357375858736045893293010121410769902416973960844183501572941521513142453398286568539 + 33117630075189782807087051115967037092452180132389542486741435183763098175627785947329470225570844445862252902836568646429741573139592734604028389168292169485602422243947217539341875475339743279434828125229981707580012503741140172012177152703499010155581130483585875966188981607346221295916053684750228136332 - 59984506920692995794716955117740197849204971913464583572066346295048587038499483091048072983186953114660362275672218848422350114809229922684958245379386094448619561821331235853136756487548738463704102931263619459047579575163629465552426953203487169541531654751392384134417435332604059388872736720971300736319 + 36786989091614124874477160957203310671418664893738195999790669199135537996375000600125645966625917494427536366086344649547638536156371582688104680635450820798303124785973546341160039792208506920349942730120284814130717096145070099171622406126924416112393748290554878509661498007820834292303482269683424534424 - 10868360426889936664875877056011050925502779295424685666433171533933049376641416512567584860338150733893222941347475194321685507985324832172538243264315096090650174289594191794587079273180117954713361395138768866768803479301036747951623781410160471235610027825523278666807682761651926618489267871580449814882 + 28438204697765299010512766956461104233424639457002587267574242975136104350083275136685780640054224372382583699776891050728553018348686927803977988943016817736211404703740897754272111072221511587189579173637883479845597806272116717925538947124357580537598793585269438494731955977767705661463108180592737066908 - 29121418831387385935443214514709917944718486050881281802325683569288792200007660204361664657152708419759162325451705858076154015341325445028299173826703767172567333536445715574023776684224858525694976415819135235084396636195630633332377604965585225395867401261229466823392760216450482135305895319555971361427 + 30180185130069543104127474147805003155626593365470178636298021672368206964823118034190268512184306387990315981485281883465356534457007780704270482427666652740138216799714751556772926657894607541700862426810957370699922883561186849918053610888372501304704529935760785171293737260293489780878112608105462593138 - 13191533656769773403029849750359811751391141914704534502540763811101288446645199088955554895586086092388350730985453561104118504313670097717379936127900816901388524587723497485975915385412587840055635276191811540346233202102367123146282802201848085389530926959916212949593913594855667457140356170540120020405 + 60986317875660574162030605849456513099359320236691339352682150374676749261441580744020628308495626851226954615287753897269328548643155861533676267564127677552945410632403046077867780086552489184847570610185456445371762179364968395532058943299877097800265037142132309016002265166135245039866533188566111210203 - 68681303227648146178950706535693792135952069585227231845394414652053330127171735017471932641680190119019733874433265753044630591187434780476187024149973894128346281149454084737934871043782410017865731532813140650173932185419429984440127474018430632480728372808446493105121019305389765822498504404543466101169 + 42548816541693090381081951529753422006131648804352543682647691495534714407428799483388808101303896599820785440284018589812367173740238180098682153082448798537413280164911575867992607517407234191283905424827594592430213071278572923146299569959042686653083394986828522045126585968408401981293779615807358921953 - 55803209563181562019391597146381886351420103130444203891924928674601055769056653615322327496544253036746188072435849937957822479306566801317210120600233428339283382024668239546975130335302151467123848647263022408385663671102199864929601949961896899832840563009160816041190343225229424323061075322282458228591 + 73203367310719329709422296355746714429710184464075874865262860580015191021378864234916578290763434602511573684961904930694388357669423574644572945951889217089798847720619499820421555429145167183949505110110046626079324361992323235801594421657577112671972569073965855297430428024373883586897687193911275541390 - 98647183844984663617182701268560144098565288547424613155875284209365614438154682161815778308935326988991893868990249893237615745417175990964760328561040815715467753439753190113071514527477907901831292566542334157503003918292783271034398470800189293496505758872597068369455745318513956411638060576704702437244 + 11057980914519421682751317895864397431469007047749825470470538169439169679636121850048258791803267097446215614301514513420886783553743382426021467517045004483597291007376534528942767313520647905331600106614617719152672224641281262416298194085141905458116091752741292447546044866118781390619488597740647768205 - 100388559273803647088529540496130303480168334675374693990663380562096332314811162199227524253253417433159801879121301485712839774307151435342572720104117031037570730250094225895201000407017917600468557871559909411653828353287931580890700983339929612730749823078925456735732516144339641438346672127523908614799 + 3654735115672741713912386129375561904157952076712922598338000487942059990365234910798424197946948369587928689126844429534084119247108134049625917415789630828307042072200676956927421659765951327959154874229810032282678444610781736128588599061580511231012176736566137004335867149719767192188599868592918496841 - 83244362322645235348470871697795973765587800866515972740229285040269237750408914953095361251906550546680236374440866298785146455230487189680196147668805512195030456433553514358407340230543261733005005994637875282574610910102131005803956519218975991245571476446378762158988336239026301005957947306693840869943 + 4850237685677481043740857913951453497496011564644052857990511403448134812765227446780406883502349555243795195798782869265237226520226959070901615474825260872777368456355430717427672756620923472578414861231012919762012179394209235060669126172908972010215137778955855923735082790670054257367383410280452268363 - 95720072141533549674997627771397941561253424241175482831085586229956391503410803834897941250196591386720206366404903453230551019922040736881922157617477756458623360942631814116068530269285828015107574774288096886520428979914582664955566478544139635852910397955473469620983250812016015232480552083911536774217 + 8281287639579301315467182179030120303009476407881549601870888717342368316795093785610701510974405903959602699470937735569377836732165796322108337575822135216734170962638931471908650027761407683913065190254042320270422415975674295815454282517702111970594337754015121108164502210172145287211531888037240594694 - 24620618566352151015337804318270457198237860666840384436142353222870651208707560038161784474004170901129943748207413826329094843288875622734318886253949457250340820997900500621850770956206107318129139024825908767954653010371079386569872452691445843818790791126795530383877408040411991453857153357466983872128 + 45983701394974003457931123189576545244393080539813950870294750642495136866928044420197583133383552436712734612583029170895995888562524440150270668512238216848710825317929597646248811358541587576884551688710632144178721829486824255020748870992012772111467258152638622053719310667742353701327905201740456736763 - 36994095869456518229882758712961861860034940789937430854901661717601374494340634488499396085648233230632249869263905726043318039380722956316192236054460458927214349709315115626018185641650173971751450397023520819920029260769192239007601821360028392446615372771870743394837252621416811427735352626019084065768 + 24630833937846861349428766580116730149554459755033834583599080643874311785465177111739716976219246727073825670033746575523635096700044427506238469902521750391822521580966793190213214329638957861865564673105980001702871203152708482941293017195025899767423950107754027945640001741207838750152509255284619452993 - 57023556533144929140820020268617422830661432475820436427826586836424776760863946297345254039456125215519365209105061321788749276884349935860954244871545452040755786837877354291189138780994590146757399557064358724486425446257251506770580108549511972659989339888398224599325990676808086147485522899216293675956 + 15439934051680094313325546606699020116046198177550011986522491544856021903378968378155155555364041892499847140333742718757365165210422968884441227972068348168838949191505949869569209743286235973755650900425167284367986615010176013842720901652760134931954210690550308532751343657822488595924707429515683382149 - 90018093159508334859116367557582956894641326554726034411511889819858763685479774292827288403910606609799430430487416130093953151967564371584227152723731980086554871897139682770983636072216227089871399809646544852794404647887532081493277399484409930209007589354044538294404769106935167181186473496418295763313 + 32146990916804471274665530785818129466990992866477221770060727480076003875707831879268011152571804579515832023538728790497313147480073985476436146824325002767099562877654409246499378327373762992536128608259156357715829995017076693680334756335507536397071210566351477095043978201156074639945922915452253352769 - 17250195585120211678033230222900836208848342918894174296421585437552715662245570517860507370150177833853537381109156983570926101215976841588829840242535947698120432622715121117129111045462515788426301429006033718916098635129053411484677435325580094942262615131932927136709188513276333918276006758299096081585 + 29364374316862869118323980876212879966434947004819191020191527173293789323658293742542592798751417087661920290749282674495447369715674674654992043084533610462563891457231943065781272644741884544964971733532236429423436897230811076296617961345408587569151670418052551107262704014166880812943042064035585458267 - 9945583957444278788508948340052512633877462800247622860703590404357260401825278899680550094417624215151358529613532478336202134751221928060671888390048939530962997468904676091401598941322268874931919343830607326769553483790006778205119930482015091074415001913703292179094736766547138151352078336483940214215 + 74732180157556758916669400163826622177544615158030427929749079717966852577841038087674737203393464254316499756821506193951285515346710772764306905412476959912805364017828229928184277441543775701945466544692299772735859769675806209371366640427700415178471349803311562703818327682777877495836497107525263034035 - 51053075213432675359026977800645643610381388641865560838402724831439638148755846962987188732540668032035599677780973433179586896917751540025714882309339103665485626213661449780368997421291450841738657994796358093497701798238096582338430227233476498703111605632017654265295343270111392359290325078236410186624 + 24619443726052325544136855846057682898073314033282198360775752510846577889770042734335294794836978337099666686430255547519131708725694780501601468251338143550309772879363160394662386693168935896525594078325443344103472456504823950070666599998039928995761616424111708225614938216565073961454235284203430617105 - 93155737468876166519915074804236600001246456211259506374507263218193834111294283875106645667618390712484994248126373294460909994265705525445666248485875958402917026700310234935884647329935314959521715549956505976881010959177855241049856735166251799048878076407273379719547336296218934867525091330458760326805 + 11226334949627016347109864381824875004431617748456787692432137671347532593630785494901800184710743310934295170825967447191237792187939608151177896225409300464250146258735042170733827172851174796784900067817966916420086698643813226248960292133081532872004323420921756241395731071838214294573758045659570503531 - 99056643119834810894588543555957944313460564820665992182397338223789943645088945864196123814487904555480759661784253962955422069240242345712141078246704663789823549780730922300181847304184538705700599043124488180043065295967725002238187254471309037908590500015553169558213357398341093676534248848857059755255 + 41151672148001452051689252994086048457315358996596198171050210527217053980309605820755695465270501140415663249145197979639732642325020349234848000387195860437586763201234811559109789545718300765361372063294504383058788305168809435070186244472593972467199853990050622344041220828269268645696725535850142774179 - 19212375544228826095610809498739456245208565481824887224118829610138476593194022939284622141039646742439100243562698663355806570969036595384511130534237843341395817793874776249271678712082996152987538504026374767523456032981636962348849167028744798667566116149319428207646992255233167622025900260356751740579 + 406001281493352899013830299588215363430680515876959081968430815865080858473064619934350338431326239321537550103242415888261318716046577946037513151634829748608780163392822300022018924063162180115050872359470119120740366460730416829334110670556474300702959386553030392092658288659857371209194648136884826207 - 88495307574656478633222197674630761879919923852801990876316784058632795648285434170156670642242878892824122186360325822420469298240495486873088869843764951235362069905040040750996389472321294533552963835492720552324218392035705593287647594369610544505512977201164126949698889284218073443588682657889304407162 + 78192834355567090189553285743843982291682149843351541832615939718627538164690406399137564857019666646106658902379961279534987197127710915959259684033305694683385833912104612680260309137129857238569128835295523604345710718255775073857829923254776545116712685139101355839270083062122291645330208913339721114028 - 39604283092995105733692934846183247512841993009706018842576336084912439894381377929609020788871864283698245708902560462859436192257123540755984893786865486213894813168018279763079913208845804009706253024737931773621236200428652762361193205398449464862734889674601830115301186406735709539168836201402743854177 + 38941240975625137672651999806690305613293849971293024350341735206101930199546493947733095041050706744054229364250599516009864950551957408068455213976059058429435168611994392305123871563767173534248424231079697056799201921489717146680693186177432389720723600597127584972585402399094320799817042901201474320069 - 89663025022907218173017267879140220282858068750610604709856545920274451172865075232505148689854966387585888576039068613664245623936118496851982557459784733427545477232904715594457544394305163273161267293115105104067986443213651337802617590538046217467793147109941925632934910257215193289518226111320524568811 + 62317474821345599735846844399317050677546684083503082867117544672975282933106582906519962761836277157557383706274672644712712084162312097794791854797280300696851896303097655106464300180215272755688183114466737094008454593045146169819884353604049741454828051114740987813860210540436978409688432876902194366954 - 13921005351066237278635354604134234044197737458919604120336490346479304964174589431104743204844297793474360506226297101970317899058345696943330031985623173966087594027005199978773678073069555659623353009470992349013858186221647069129881878288939073103032875364455391379664883706842170346376763311138815149466 + 28258715645018084214419386863135177147780186063657165745398510216007008213245399417187527736615924523609586394368093363266321472825356548281640944621459123825503526521430754608942069405279455584547039872279579565570655986120667785753397185075538647714386767215422868627648673996193197813607056771144270145664 - 49461960040786170400954950213562969338784028051714004453126591681463885466604177331514690113686933140401937883369374895156534471853843861268063184682305322673104098570937161559654924929348128296251002258355047861646451208821558475555454109334105415868763757816971947147850081013149256612120197416004011327164 + 77038589441318496863778840233926415393787087675088733946976845041929331641042289384338682082333215350599294064228864510864134194369677267141919132763422750395483442661434897761386452270232349045649385891606879269935956613023396155075555106421040639486519414517378517361254013765748119633984550666987135043434 - 42284900453449767360912983479552679326302034970673653669704526451161924912815434337975390809078078204178960503988317097768473833611415444637489843921808071198232197467275850265525401801732042714208514409935426150551618854756021029133346874320764721395643364867864452788158771342116696983885459277247819571641 + 7981145171045268973428886914002297721334167254094071433513960909830425715823830498747561349524797547388352186710090004575339328567443542705322533600650833798738553995584721018907701608860706902391738324337930291483908007502934089611198115277173202387124087508786839149735935015689262245917186387359619226839 - 20121119703731673999330451124420007247042886339541306741760307344429834660822312394253937342277510904310951366143614977581393593589400381432528624599230527970757776312727877309961320807584577353506613574444885671101132057487461548952899386185022691669602327179163782485239955510142521065872709215537517924213 + 8826958580710969409571526057995335626546438558875320835678193987976004645325728722360719664144767961319930302671813619834982816595692769922919475899267025484668408070190783908421488117001303703863985687414482166998401325531620536696264916222274239264787559315981183839610437198178475761574492382454263699086 - 70847836615032106904531441938524113465496423821859997281928918473468519334158641659030252625828282027875067237358210761158816928936902759859350529197902282117507312002819836232168889880904252019810306327286058683480968086521052920410362859930524819151990110520306854440906849956354707866321617395869144904411 + 43443661044010770752723015920663656179364108371562619862318159739262047700915757053217982568796934934084667791689445604222135938175293010217950100864180054539470914578221657227617812082634679781321107516068795682510218218558639984823776381096980936903262456979349710087286681322798287121364193888350362026014 - 48587216568363387847939304613437622178765641111176393354398200478379503846688687122456169251254651037222658367300105275155393635912154116114288410700142048470446392007667803274858525311057042416118809387935742136544830213234232578795112166244576861311054791596699751410864270400719936932624608566750746975194 + 82039830811312043114038534043282400126365995337242720606253449677465999841155825029425299882260378064722566654189478796491216048848561119367464048205846831321681633445348640815062492751711741790317039014727409626025998759489983292180422214312904253680640404679747317853641937372805837461671687207945646350150 - 32144846927481067627589093633115931024269862601647161823126415665859779221251327476039733854246455450774502485322953575981229625490929078503110994801928781063490629387351471474175805840520175653722648653782576596428179281553886986776508427854304587374768446888376347365105455304429839540215647270433642531259 + 76225686103491014243437240833699337874367082043836500572899503111699329308988320255986302861677423489790251197572753864469234257270546587104488194483732444366966920436062141425431909566508054894609302200292664986043430419875858072809638917963594501272884054306370414718958162144933503086284502433191019961495 - 63833361619350556373374431243986733073005911240109508133527722179974495833020601813017371201042055670514589180015259352183273089854290352559969368027617504878738934204203371355601101349954572884649653638160865309503142123507278154003248048069476341185399019168760175101660242156525025578991973022982516805220 + 91937010648210026611177901529318692953821525986843419677943541677466790031341311352837505651500109099860423102529209058782461054963030627296480548759715812085986895585455446326755939690758140501528676863467600043503352651114150597989775026486316400860049357306167508789444825168300696732743263896872074866215 - 67875961762773275213468373712728904621330736502330710656502938705976834202016734406776935477832100440610221588645879489887901820018083524030126283165712056496377255360451276524888210292527552095821082720969913257022945798789845571701906970194446685782406761643020371867427502422740348566809198713819076591984 + 44796027644629983670252995626168665132574901118429267717492068761633052500311510091210773351794475133893302020887666595076005618044464040069552996467887351197596145331623138356639540552411313967566245845372145306227668296042592186053533914037665198180843904600644884515413174385588993272618112684351154314210 - 25456094241824814445525941298240980019412572883114332796548745949502881162915698462456487354377096876938670193328601064147224569183030968606918674748559609238297288957427748267375747913118270268996112789328980963350657704884134605910492194736611302699365786489678320653132239167159437149443742144057067636312 + 67299923817157528273262171248091740981916110619597121905741353537820285389572837494978583862825425323044880511408705308445581950035173958644740882753195478219040088416668841358700213355465574792871180069415575628064309040329649553925195889296881147975453397221919585366934043363761794420198043721805708272582 - 49206545976818375072706239937787209609884198737872744228657865511642478614206229158126828532311333778685765090193097368182673733816215013266201356821762549150830019997568602648021406058858756191255109331916079421777118413989811181816090018966310628576211615598398815779166181294871738566643278189930041626829 + 956041908142377511836860714108984747188515966741698193762764866724670727187689187145594801832789534900833073991039600279078331327436954087451953679561299272259612238565764635484463701653507643965276029371033072473702940318414722095170216250822784234059947879797424833878834881075199502733591916100753503928 - 86056630443131470380997225931383189151923916817785247923103535778603847849224249435392901035088175862906335825582628558859208125482982868729534686438587257814804885158512159696909241763296038451314843636033162366032987878811334949879920624901181012716639529579305636642985228854134490123603143950948267784835 + 89278350703547179621199686646713855742414843580733841177048650313651707969026486277559415921947950884914944266159974951913321275819977405578579239128710289303610876900044139759238300061460213764547798607265603381456892707734456160150409238340442719264679371101019239145932619402809009468575773101632085881285 - 32471374224289938998137371806187681855972845916257552347814132993050056434489653569557866180693729395287404174471816177353931926011634429600476087824284923947642151005515200045940459310956398199209555621521618271012746057731151487592906544992105513759758367040260692750805299197235514439975354572864880201194 + 6931097358615680062050182587095022047624681619008010321654111906095538315472079989550025986450330696755752846815056391748913704444600817752431151019065434229874566919384308031150863089845775798500828351120995255853163540165402606096910618441584925835990144842497273189367478489943872341100871176761880888864 - 74381840816855151001787416150545957158544488393935384127388023537773249821766856427124646095635077867732292509475884406798348207213352978220412592239292588026805857953623395269869056979622830312505474999721441345191411705195550167269267293614120400828313056293804575997867366134951685328518754821377734642470 + 38510590796507314323544894686267528987119173549403085865574488258729111522587696685557314404548279543978805987216331509621176750623825935740751079731347475860584912282335379631532823424859794069111939906080871541462302555198182758048353733617018422572113885114613049303225627269082486301842773052919295385359 - 76926301299341882967669292117216684188187929813100511569909203085398773086894335475690007651939154834028699021066602093244515608303192859499814251257867191341062957895964111899135458946460426962891717635159228769746836912224961996019161670114610162763933641156082195621071569712102411416390753884541104801851 + 17589922629593351053995923108659555807152617581942346387789885957628704212854197332329447429477824883535898597234792492948107547938470117294796624632440652236954960430580372546184441046119891307738378340847301080888499111857048700934953665535071940229091542931867405768477361630186854349034061222393769683869 - 104448566830806444242760544551037814643973168933257011858918882095906374256223830689966384561237321861184944178945026395744422476088374533759969049374076941602010222366036413609829770718042695131867156614367855702531793109474539296528388059037359784355241581564176300312162343140787295632459170071833784224144 + 42106352592641707790864098657813835934835952389586203229118756563889136564989985606435371543925666804883038642906850238710718119371899985182860547231318346931524352876992349804556698983015713954124145993647284385715946052940388084254231782066745488074562523373235079376537265733072697654611330522992085861538 - 103376847067029018774645268313922972396908527461251578391123422107472556430035595330289251925308633199508960175817122802491048731574389779738933018971909858134299067254927730836732098012004722849032218556314861679710366695717340248693322982341842086409742302242500899997508924582486901076600111973695573045842 + 24576874630568840824243575587010019718219869288460757820205160849946992466449737334768290070397003736103936216152245345364529810545356916223612020044168883741360936186163814101923803079223748339363382787831985704151941641449219363507272238785000198124842786717564962845679487361524055136360151258791472366484 - 44160124125080903397984890254333632974670653613910796554024849964446647023691287118636448683029693544114098419970240659785990445650155398245101463094844832395739580521370985176478399435830912022499245763514784211162005004751578107737940566250560677343103557735709382003757693661474513039901654018915869753289 + 8938410734935308711366704825150385078772702789959702008412364487737692892507358292381247185470814393900786673687898489472585838633334799056690320723516076941012183452401375602999962294754465424276052692732874397591001501021137142800055035213213880065865540632156263257941813616100527344637033896721209507682 - 37425350963942499267249482347925590581924587983455016937213000855742994723198257302138924050549702365154806361821412861879868325931473151552685178674837684321108925655098237530923607410823450195784101135563840591111717465599477330486815528200768316817849912370666282903189688142504998669666234139798536887519 + 20545498474894153934195887064940927002316999767712619119458713936030162707189764188598885698036680289378011064133634121398061889721269817320056583619916030721426718301821387126916868264997561819757974141700242018507626968307922388731470451366740856124341597478690484861920785507953876507341737558840014828248 - 22061717369148921556739057001475881636761847106734107019131417738464161258891425632004326427044630704332917296481532577424730968272097166205838750178001165792372726727558223678865452027490297938500057506425263957557575851421189874539690436487574955640656076464179177194483785070249233229344080982028382914376 + 28954558562183246673547459056524894342786814333766054847868848461212333176734111283154470739563823930518354518025025699731343756816511617085721578526100808031064425766783144925648549331616580657406648426030899452818530410120273316421198648321504179969991704970029682387894480540264445105657908453650158954109 - 11736254031482920799439873641423502500116219436154010359018638987374989401627208076976364443412751775736884430631616757847724036574003906938080466395692394089668240169647201895663407988720777592317112197816288375482831531584047384297717060214737037472291727622475529264224517102637231043187103713924803522749 + 40108852345262112044865037643205160713930459058512906289206810794597899567367282953135486429600151329846701004923375000524885034939001970908098450829326697257289014370624201936960446402340539588722380206667862005989136282419916842698075611342018891707095302220945495551026635609807464709910497629183795924159 - 5426184403698225099776704837354494021368390126414484857481941071333172513048945592989309848979845113557267384697657450908961517231987929148853729149472058267676048811817427728573193245172096605101251991079952120516628886483036141621478726362374505927640590182488013543725032975164142888814591254817510261930 + 92154255077124138019523415830891969499017624241819812982944990440136997243977467620056430563838739523083674791658267524001291410563408294362018945474622726396121873654795461940798900774156824503972115115532556750509620327867334214989188740942697519265865104017930585168742921815939706334256628969695038646570 - 8132603343037296901358726107979997323916591274887957250806891622357909350212200325559833240078180399413933431384873507732556333858718396470423494913074667681309089283941338738117406832624543673856714762347547363237668846389491109705225856653948339980982386783095965506577869936934608773530054645314920418006 + 25418194448041914317114034410068878767496038314388396445156663877478048303481991826899893383836551620119022684958924543870682891403861371442760482790855607055574984883717098560155929248869066982177301313809823096792037059694364590316414934627135217391603253124382622590426538032293543696645344169424634977576 - 104285096088075574472799292709662783193123539676208840681024284210297782222168673194805984708408179707306874585409128870516457272160823007419009011898622668142855243413244409950243340386564499003035551650628576068856880503670011207051573551115886261825520527805754686945119383170988657287960327920132203455905 + 6220958945894018765682369436588369604913345072037058572655892162573161880509650071120835187623177569800056848029844849171148331228443496398065482530552032702135953429042034727010205900051194137848477059359056093067783444983202504455832522618765356959926413874014898313741293959850003905233298225966528535772 - 50672637623210737756493405116778564949179914560112640812289371572239133403727506640650878710939063298706457653545026886315824282585832608748876750320255475023509682691448923147431991533165022118496807439696103579964366993533378560222718818343797840839477308447215903764044378686654113993734684281985405890272 + 13768575571670830843975043623393132708013474273521307423815470686668370828185783586296258403796985275060790114612276791648137798002555217219635787038188850410255078140485978505768072252097645423282225318976559280009390278804387670941893522757869953109377238597013683892893176413497278076098892163502362423358 - 3865097373706472262855113204447699586542801452318526710071439014534134440836562569430708427881282898423705571986978121063731651517137007499545983167010761678632839731675595955065012682266673569863475180957822606077169276532081864958105962633019233576929750407858946647319995317243067267331824945587832720799 + 13124826531070454522854555611512478262405502388762977158492770477056349448653649876615801916551935791090786135258772418385986523033479717970348120665352763847022781453112561196504056508837339624992655923437083211214823637876474252760188173674270113359047643154385357278299801226505009347143926852826255100042 - 77371855875921656274829022813373066299686348997455487538555907904867591751417262277166402674781905260126856988730091873273264091859966444475910298283174685986586167657104944754942587516956866816500886568818026253245027964145713596264795916229646533916364110279550740845235747970545928331810724106956018206376 + 37069201038583791856310178248775388058115867077851183656165334281709623653726584674031902911827582112289934150923975011843236558930568285494450537688523553653377637806109046010646925830174957223485844287050146415211263323889253962335835245519221485209616243884733136916431883381940730767668886229062021651089 - 24290749748974249681171699161241519736333707955539504137323239985304475187758813162442042138643176622204654935680044585628529392669956320909324584969640516336147980694868124155581350556165793308632073273228728405606613978608442790910243589297505529487278541592545164067591053197942668111233068543264718520343 + 38069736402459247173549796015441160059914267598346823652077573791185569751347359054033757513884150030267836900729020847811849250802729455126585962895973854819543501698396372940393830662166536910088456349513592277716397565511270561227497079188719150851843414161859803192662983377679222908110931319501913258883 - 81309264804928732840061402482960276957655170831003188026163214893430547460404987013766058064784728746874639200956437206624077178275481962724019494635968817837388327461811455936741300808103810087490817710514061722477860544565041466187694127706763746560227300677701212380253382503628765438707354406753945180864 + 57844591178332064561901137940354242628876767832060085082435293189287536169746601211961805685935505236377470265417171204677182211253077807194434862957836218235659376128339278334848567211699426490495114195733228558252305491938823939507689743096997421512107154507184031258105796602235223202592557139180340744506 - 2382069834143098472943401536545566559358934292245147388159057528160853091370424509259306024079815302553193401398874839351611992037781773877033496617534754467688880776999309852224092002751167185576874964136996442082378946340243908054167854379107124097039210006820272423974690554233927225644827578465681767164 + 42847147489513944805618907070768337524744952754709879020118573223687221879533587382528880650039160609073893146697459507879036184783196385786857457471559375342162035339205195451126984907810364013906051220761529087911371617657855878203096306240142981259713338687111109643261324850831626925533342832970732216889 - 63445108022740226586582724207532790019875657626929430115558981602164042746333545272164800908351526585032836871809742448218146947799269143386390160936068560856754865405162633388514414543324348992223764780934919202857448466015698656990151957737862907223743275521452735445135517036452085865019143408584060031171 + 79067627351248114631657933794530036129462363023608152807868151357250866096895513479876516613631553847878244046062581987114234236135028665552956931443928964088778138554941691142410792899237478516824567594401779462952671479592919258602515567656748213553900073187935644009054386439491651922236752829133377422961 - 21498109300474563599850864932494139332342286031005931392160606211271981409758001578586177366596655493263888205146967210001591733485377361040682850477619098813571359118939738839560045819542573864811369628986466853749102510402336284353130888008518969792826916604930713054362999149083377149945489705224734113665 + 39292026464787052480493333202837840439501335075811664722044918935638445186924450778798433413849347316625402813977539407963780820923619307305327793252191412144824428879788421973688422862086709153960137744508327348304942670916309304971724319716116678474955957889143353234405675130293393218075961661209907560816 - 61085304892048324372740010454887258572640660433351805044236281587338890429193413337047489584355074741923324213128777622715816516571654629556036516446057126125740742667208730471085554193463146432168964360717627977652238880211704805303703342050239738948439890609995074085680753220522500703622996608965206702071 + 72500340109902378531262234171394841845018552627777833327591769287280684782918949978679513726726132555368344524929359594338840398070032353224915550700666900057014230467050186299945864000627125186381320675825913809116246491198056974763736276195783674072178123316481050142879924717733725479001196434062467960668 - 19916518165986454350012244193143932252006100799576326305438381633777526103349498398351507693468862556451226335967375937550718872095904406258395014959226064676504211264010757524962121774991009293268877298359735475222276002409114807297101899880302009529787273032179923080628124929420153708630291609330800989264 + 268606780992020495942300895237784108698679978983832633052861357863769176838615710930830789384653772349275060638832209556286158656983028649722345399219749764304100708432674855336177124236523812989509358674090358837149739842251957654361286598371791507977599685162031831028839321122905960151254989596166925444 - 82510659088608360171620323345345997414912915906667254330763903456445912766219735567153247847715899658167444885100454687648722818495962703255937166343673326271959706555896653087126245048530516123196136937174848804793452713314522437778889210487229927632488363234935071471853657387914049751509787187745984057237 + 65373375734215346537478086839937025847169079036025790918490674907310107192564176025776533250138766127291939841631389124477655982688808189181285410637715431984871573046497384868825725668758722791800476966812705616043201918091608264632213159543718157312249192480346198226157134389413182487227244181240441166322 - 54832133246941214432436045935870640761811887105282698175117173876369542558508952836536527131983992439870681513271826686894928490889338101149707439312363371958356752558917704562105284524130044059607686752459326950194526101033018395655699361066417444240052377785069915619267404843670481093586756257795362519188 + 24743956540865999470790566102291470527199690459106706794280915844838423753120797927963503524882445397664994860594226451504121123538072746189632052356103998223723400409487953002186649471159930796202103897740846418188731255739466998101254612599039661261380553641766939854687112227655792688997149356390735807990 - 4447563298987026427985823424743469147013405408127488873284966996453600575450224902712914784115521180716345723268519567756290511449255541344963882101074687657454249146406593962132936417200440862106661430052363070034612483597213113893754478145954006526073073132887844678597382138085004445040159691496418832965 + 6300504978385376686627098643954614221970781564000953358510758009592550732835266669586669528505637938868759275242826219568264160208287515959001873377158538224935466809182684231052762212495215999893526510051639020709770363294607968803530365446082157706893129536863091003742598901805777983614241355217901638838 - 13009037975942280921166553234993358037770498975223485178290445866575885007255064538648518840993380673707909857740105846170360298767007472949879484215764159246956507677041226675849530745775391408429740845882731834339403855081619020035192948144091195674924584350868432402915795825903595305558114733029268863158 + 43529831464068775461181134931050781281582750932628303594336617687889579702871969510501922307871074020214903399079258265468865934874717620399799610758587813914227787987941312724023447367956963337951747096307480965405159644778072019361973745204877788150171347919320908363216849723697326181143382111015976683062 - 13203772222783900537880944674194332468557037580387337241818156103722349998941698567092863823279806922514714197258828994622006912491287050518161504616590315418453128477397013881653414553269547132052091501400770509451422910037521816855338566823568737180225470522029568737620424170995388344432740208303774161909 + 80666519466592513667106518668619801086277012957685084427821147109302179534394467644124333202963443829567803327490852736644067354315299910460918596791211451215487946668133039446261914845657834398082037141022191345080559740805429349098729152940655636615057547594237945988409408939468084176995767317955549630005 - 1874145944484617410987000195582031374334582262804235946889253223896462214909200818035671035241594183977208610099308585608410456735959866211215367861440335357719075195250578773494911137586988256474282701588324903171969571291397350821704196073779827046426002881146506867258709818133093943885051392982028854261 + 42345934495020746338345969720738244608673658288060887295920723527496783413615788288976099939649399682928390251798403444195539553401647619826161489984703135123935122515734786842096161051861055218884846220019681925567838462925970537163890756339158537259548089329056269527106687093448909982194302023158443998228 - 54489467598072553556982379196574137679559185581461373704966974732624430403122474898347472916945568190235531855769483174364307652802781044515481829865124574045513027702561799441995181721864598336038597458977964115605052193211317954203861334597668820694339077234259058909765953365285838983305063297165399989672 + 25326506854652866860647054039062144728568322365598678190495616897390371644216956023001868219961090451484338731296238416366810425555554245523323203146314236078626733538114212319505107894020087514993748977723631370426054483382046427740321087374635210659444939902434720345051276008553462351338543956028377652001 - 1246172454430993767774937182229142928223082888004224973687417974696852346148830284305947781170342900670281319764699284262938196974915958629184344259920954899611799262432850747587353086677537852443701566303156634412224125551460684768637728077321321109717364882563574415607225071210990506254891474202153331761 + 24377426778530488540753061226395172258092668082252918813543780847557083568663821378117249174719787963322522027133714752226618611944120171800538914084256226260011646987086562665853103991021197290462771130439944039284601458420532267171085553765671953794922797297585263977752008226450893531914175390259553691017 - 42458343038062633593366228576229965177122404227166214023638183434089245846957284931485156373183769135165580080654770000222364703998556712163630886912718119757103633716051701237871900431203247598643293606277983644321198504307923960312791407004894854549458422785817543203292178606389514798383929277061649356228 + 69730658216686608002284122143937735901431928659131777457841075832864988410022866898433875378108924559230845507307718080824347239383940072695379022945049385399089282826583479950675189789705909616484522748199830968290721744082193162778543254987830707382286193288957561983562556730163564427682700785102085560960 - 9444896904885561982025947612386130798744622281119371788144030100828409874211644486680483152910533656363382788096061978547834706247521126680139014363851712690423329845279485295849537695844051340093938986451135211258612060296721404431890300238934875603437218071004283460991188501346878664102912419836768623576 + 22307093185885482694794118694719014739280053635464234649598736080795032606323730183356590786179621402625243663964439508244507602649760898691762671956630169518351857943270741119965531510831320660835672786865600827826503359400267087280853803434005416084991332713066687018356076432098907863384235703221251453054 - 84843529992271193074196011376112867921836916455211164396134929739061575420417797267107787904893851310037180698365953930919094422894280948682560351504652206172053402047589167042507865514582190935250342446757496512207616185677579957276064553306228784714930327637932542215076977179326845488190105558089358053257 + 63878361339054898317279422561220497358118243863385809369722234212925948027902383706244788818190584696689684597649219540399449537299360251475241502106031488430771815383374824965863192652573370166579130174905803743700535527568908598391890838972384244850770073804730185454015414864950437094840213368504360500243 - 38799581488725660451806558257845420867859424131255145717200320938714489273838466159527968632507391253535218524731453641899937314485238747802593956650801485933529831419457415287414706644309842405066460240634570488091043761528910897814788853280741153881159879680394930162981771206836645602136351983123454315101 + 94250067832550916889344733466812473179131149377656268769516282228289121104774983649432005047520256214474069262873296930890874383256101192089525904113396687691828327951622642056151552631792858639407059111283557067953103897272277194769973039920736040707204424874729197042851919822641739711381253034553828026472 - 37785031226727942551617271591207157151055099748180676879454967559683428664595822144277081414886639987114657972294804597077230180340994285660838634977912425996794427828266834714365465967430032311555608447416671175314430136641015153986872672053548574968612422171086455869568253544172661166959050124387874402995 + 13536500927146485488942121854450963604898540530514917592657618214540337670271112531721746067723325427878352163679546415783885128163112909779779096498013723308586062206657004520173361874467767086082996786146931557256658350159684206007380686697729465445283865140654134659754599554478712824020573789159008625801 - 97016719790506907322558800721537617790640962592528318447146996720090621641976992367387661605152381513037778944468159749039118452419346691849312772394587866293874817380125140467809123295768988604806450042694777865148606549022088188446328871180208155715913996920486566311272383324834558435613358315972777665734 + 8498409932798183665024405669175792568790259904897849198428066459559883234050043793820327803110013636017304018507595807019837268806942791328826793335917296981627978837949178706884976132800416381373623657621711219711411337541631175966702231892347643231906677137706099296356957950491250059658502883067089672315 - 85216622329377826824847190197102109892153838763851100852967987263325951712872688762328761047488304187919494894750622091384298894496407943498115562631612042584203937136287724941569214405553588913088641487321503435462019253294514403677533972985336065170903495639889524244089617986507948740171330023202295507683 + 16499428440697010147803485636853616407034420061912645750604884207461516711872462949055784499716241855682749933420579308136368218845565471978471177538456152576550528114922163765846777314248059748388109730466491827088983175897998298213364308134810776654726630371033524530703679285109991513398862519919425405753 - 90074599860352597392135778182946550987279051852100961087672015346964495148537332628689291881312695629473743299733379248574527239521967279323333524871897574419565244605107593254944185511577967874903662989093466958033046023278907521859058529353534962433594117391870040247157979515217596071479895827569639176344 + 46758806336274850848507965560881592881952328031661847471450802622000941247762811244368378985287326314924197604876350230377702615489586301726478173099488307668614118750508029872665865971680042571273494629021635464100051869097845846655589945181009131648448749533894655561518209650511644669236459873960761310051 - 9809140943877798228197291971000569379753813796878418756648713254298587550978397520770364766598330992586591871326900951578376011811475796368693535212864669347506900509473826334151671699503110266325965825497635848067097670847027043365729211222465120587079459952937356402340511074680378002710616783981087711516 + 62031409344738661369908116188412402719501195104489442238607336920369768235500692203706120176397071894204913411330180041554880041241407504824122430871689579009302652783028088749979575356342682776218738793419567024022567841404145088684568532820869795344672437626787223015033907742554128216603617952099068143036 - 56397316296698016544626693636638542853836711014233418884110773134490010348472403124232143344958553138225594068829291171256494848879199910527003189227235437562209730860235566389833629201567040155155728195419794880791509796225973606819835089221443438547371186969555855856150267664968942200754427806000761603879 + 1037398863648368743647396526855103687166683863055684130653755697992727845475919368803122950673542755510216067889188403838172933433772641393817114551509925465790797410405481707110310670355211475941093825769069230119547719022847877386606963400229237014124160904885480993198856421102945815092062390580530011571 - 97197756751268652639684711438203331035541465771827334822905953397193480140385731428742265479819430669198554757000567793459384373963975753685434182585695605490229723203342299353821180495369892116820526418781192482736339484444167418614355521395303695916575782334893026626789016534843075878984967792794941956848 + 71857533396754796341687783556342814978018694207596643307046526573898751623657220612500661860480881335023260530020207041247463058481584745449891412590048261836324287366159267722851692658436579936788339250261157905584306555730708726492785869879620441232666819275209334329311075831060738722842186661475498165416 - 101669859012464622065154351885410575082236204314631944055099656889211152507761913873811637844887559474558047571121891366646716084095024431653453077491487512369502238623888250210848629484183984657933400369639426589641383070391167457080415035886040507865648002206669683168427236780782592602856409993640457171639 + 34712738542293901317211900304159333344899618239614713702001181917496497374644675246315358749842855301423670093713590757729672452265278531102261036435838938227282468766528040172360720382304408339991391844314683322357283652635886956263354084630244898798255162567326369972092809435762916480906713555438013520047 - 8860495451826232328373412045661631510653401848104141481007391414685215877501299835514562995146483630533304595725986352197637383483703125434774836266130149196555004297731492363710381623770478259490841103407588778300953177257764411562368166579743047116651916171286306443111260524059137552265541323754708772716 + 17190083267588146349507043999754604654794612083132809947032835165766580456354209221298929675260859258134346405331706514381010381487076045495673193871125438365411659848352414737357541268752816717351235186291070424081228020073039736150146339902231359026562051470542748164094838508798639025772515302572586002436 - 18984119658091770033951802454717984302543923400080026800384222360584390716400392596977727661725527182067551390491798852823381834955089395082818961680111617719373619708587590299387397316032746053366057416137033620763360913107279219568918901515565434874166880409043848787489348929966780567024306022443138069591 + 80539511768194322784650718363908571893529561124027868685078162116679520141675063212839154556614788726425863667327208215268241632288774682001088559321454745140378048082671337610638941805884287615142801611717254008842995770588299015207480944180097298388280098386379829591665824584840513584162955731765475362414 - 2750365089479178714990391099703299823403693621391212862577682453845585010029055035003574801734762703796590292837956727407538903969360975594907685030443432527489111594544684661744989216022075404371862992910614804121213520461382914960081550585795377803836711621483188023574703492199596096938437105885084120242 + 6408518610355417698161397938948591077312591003504017032565171408978182647816714077659951457322738415288536233809366195218998886649437923223074120286017873895749104573542721609736313765170004948941131381833040032316616149405289459480593582418708857608511563288747300468855154924864841229575243620442409287938 - 26426675543401028051804174651287186570898227668277425497993140011345452584151022584014746120819591057900151856977415345608452465777973905033645615083384979380191457742059816569655417089963094416771349780447160031653844542668673633920855572666341081301606269361962842250729586483553499899508947041592895468619 + 28480561070843517391979097765750990445183995081596011906242662598691317114990842113127557730398442262497724305950987909766980591650321420365083952380443915384773644640571454292607950516984407010390226380415133256330691709282065344886544111023546114035431702316026582900154221417519340706609413606434537150100 - 33541405604941788468186964015120194780037775946174072083037031273157550640618906557565207969575921025707247975215694743013392187404174476642636175978816158525680584277618970095751150979515359325429542370631197029097344926199477521464184816839206474089725929630264841774360450895372965928939953556317580113638 + 69530700547799267463248262370838122361228441903516564148417462439051068911764350575556095698610844521459863902730697559162797233753232387832299727803711910593046693898617532234523102349830682983420702794991127808527661158075154731496086873027941340919416855924553747177796069906113859686531606390135092667600 - 11278375410240627786870265126548043128374804776283055757335808161830918299722255162128885184255404627579663522764445605320915717701513426397281308338275317449872826526667868770611021603356499862404014320060323957718929512954328619785956668961264370573078073097744983697568984974059950686146536344567734601362 + 73591106574717740966291750116901348841222117283411007126908965503224770566007026428427002644856337374895239982064705301802110447341304823376818011537368698865100761520941835166807941654399218116125312738589921461740142096734536858931237085543710635790591204042683743913739581943573383125121540638102145451472 - 81164646297541509049619618623315714782562452411371013588209787952295443613981505517062094910954891699790049628080634521114595223587743405656460554642907427641621858435528081561011614239998205067669410940302863811507047695242526375612049452624812646376906534683507994582104290563060249991983150771965604289281 + 35423060069012236191511443176307084530902626058131473022553628148654324149802994145991067070213211946280070352304668667631137259208853907422540359109091283053282519650055052456871847388819824738705761122259388761418491261725069407890926434171573133110650760647291172623691209652306073836039471573447237365599 - 63479632058286044195323031468675991821232823205988137953894248626423251582331247786205136101705469238250250459436712478451158096236034965530234335978974132825194093887142679055573837313874722591485933357416446174812014781169320443206192377112794374279118565549357077472846513673583979603298991264168200674107 + 41355634080303433952323358159339961338101335033649441540538110433255456660884210746504072627141858975515715835928655361959326163258078158567667250611367432742011084825327748484665409164169872181845906041846312537097351930619908204568634162247601366857021737439841263860821326065829131517021589096461477558798 - 99280826479560088059315946652260034705724180187737769626548556491480031561424510407056856286553885595380804194201576242707251938792051989994353320940388082127055450856931516850340602007645630123849270162723858189404732163086799447575612320845184874618895556946458652566331270437676964026822750681179204573442 + 62783351700496028071971430961298480057357868845135546940407225907686118299865192327801578276307673212311951746065710304333438708983466363149918026879590983988664824400935747070413175460355182323109500240886091628332591175490192325993583250525050802627693973383814415770316926028803788769807239131272027002279 - 58854356550027186594322133545112801425475512058423596112929918205951397767893613312628557831181406698272338751622182642587931554038911588991627999820307120879691868728903373209310062327118058625367832514078673626893511127588821698463570371268878532281025395608776363816685591540858396566233198412967022167895 + 48532645031046831619822034867373612007129663540994152949238922711890936512706223416420321215706064670654025007203342728753628737460339798214328255765107223532769753212225960890190148508643672868702106799207392120342604204162439335799938179782885495664203862853667750798317009451065682064722254422102528028011 - 38597045348895127726480930780398081331357129209799719301823530808837233742167307200218643371341978763205511422209161558097669154682903091776277208699842813593184521972870413570298512135311990656202046738955903529219565124087456340019665354416114085374783130942306583567511403818005015256862469515621734109363 + 73974697342759307432421737539588948142653279776515587953240346011511832149851921096775847156456598783807872810345677686232745791002968250834482399151306305674494136568588211081723351585630882506750584570539078892226247381141543759868611797458171334996794545380850332621996103994678837873595887198355438517684 - 24349542087499066043376555862342359169876901647279568622843921138300155492282333850556610347347809644706904414640508870729127058943188728780725370838348681731089112569030325483839176745204204285991990610063492791833624603532783752616758375204898099961165592189484852848654956951082655296935613324413556216686 + 69752571928965435549285328752609526345045203555808306356143749877336428881893527186509196519134840800650109932838063828210854746230299107185850760164793844443290481361722859982603326214719511835969694479246423209392413331390363917218372148665329816035652374668434942196358112174019720162594580072480546143945 - 21348935733217445884574123872264243961034847249100830887115067535759507974850767047558367504238354857523920343997333015775167857708023993900576417783233004696556133742370935222016256314061152710417981638890034270767593519843617031554141173816104757968500860195598924211813056053512647386951586639845578293685 + 93866045786067114157145419968989678140622481834448338246090943764283422061961583866478371582603637165555413531167713407308735004280481151743093179425395343140668371634928692852532096192659352303671027619492255242520605896333587475900687631456461497762937675231894825844259737690934902827660258631043102057658 - 37926243041645298806429127935340263243133738292284463287976591331261323538892205701158851287436924076843922380532552842297747007981124545980563070437939351610575086858804741565041459647547951101917267998951960334828913043683480364230854871163957164572713710794355633700834256903322883351352541209256636845977 + 72220188790806141199478625623098619892425695063767778790658172269330308421902940002962867053231106806236961065584725733574350277236502478954386174928915399469718287516128554340895462254226233651375901221908384369372530881059445395759553930575088976788494473657507526565615096981035287206469064363611387679390 - 69706425776149368272609786552092240662116242513211871344115833809115580240048900827784989964109360146153869699954528172998037770164440760307306740953003723552808169655412664634362086740761571898501070863977428381753534528651318555303064376183958390894794625764424478088660709334320684127307284409595264874678 + 20946704095305540973435470941855952605998339972797875752477603945797993804608922451111666168400138753509003094508816852268168498221420557393625776787301005671516860717809872751268444210572416264186965293469645824768001802270312856539554184285352746599846385653723127327700272062388452242615127906658203992794 - 51583264701511498554962879618130541722049966748467665506561684940436610471663099697200330997144245331411385506012663963995710164155963290159092113838231775420660805253002481432472646887291440615490837073249187432783000810224088151942393014433377968558093839305769658913041332830893216531085303407924588371330 + 77125268902553173138504643409579295226400434849095636488327606195138652774680656171443229281546341803238676960339159890919068698153160948887616040083191139105819703594938577433422632392583516097262767350861225910594316611561758495435674811191647684653146751347377701876348062262814044967910934222052274961914 - 70173421188753935300406102102533752943573642864506820151996590421686026400162744554680401195664400072673525077008011830959194089583368607781562809746466137626194755272286057008033559820292431237489603157489193647098057339197231996633962587530684012198742187504453036261375614337103217765404649477436973847482 + 15086317383556199463243593287762157355613723781687114969201631636443115576516348781012035010465356338961856964395169199265668248456755502012086271428721597362163977726221004846010756198467776810091922380267409235617244003359754434032081644296292288468321535208077961361626283445860179432981931771094218197174 - 56058405937976351205869148561515672942505340691025838624731882740924649614233113296224983657458551489164395187176958848878136643766207745378295225221488233095623160758172503367896263589520835397207856801752883792214285922387846986353923090622715895810509968441570566111550234943849270368697741222912154641490 + 6277705936296912679869275315334933033775659559968596626259933048187087146500708452335092886630152743484184967602611582744263703971860945746845241642755880974246806260283684331487915054854834323365308840895992973499384584488773696842007667920344383160992280399851963362804869622901722804374643468173341754595 - 14089302587449862416793291307734224356353586870507116082130986754565660202292498726638133502645963694193836901068518482561242393332828000731549482556303378226887150890105224520338199449663339373428360687231653224001522350928734968269431228979779924470576984418962817501927635188486935540583125546733873199264 + 10912710732713598926306052551820252808655344337229143413198858836282650813397688543432287504827007687129837317484356847873974390504921912153504447414589279245949665947578119445320395901561272568462636284361169377172916101200611413887887650992740149394148631565473794928471456427149477829103552185234161036785 - 81192327715688692129855331259412086568162436015041528617290464289910029217890159334419217464866262146290423001203386244724925321069942728471571195158927214686482581738963442629916538478028893782886220997268811954171070435742701494122175801181237775567168799158991149330464355931618448527470937649555100178290 + 81011327902217368365291562858927216563858630696702699374279378756269521366723287379018085125724607243247585887402753795353085771509447997848246066480258926629354424352199712607191758464166541154969858003195013753045814390915108939271909830842521805909874881896809141551091085275004920348536458813196793711295 - 56652450496164062902559415099911385127114501389330896423075181580018028009049365595108990776694708093344235302587697906767436883991446026370869368139678014258224720679041721560696418380245148062920791857435675284733434832308100036752399345395945453354177616928212239143530283901146388408716892326572288752093 + 58441242130092566017841669089243352611220978650747192490853033153753169910067335734535378504138037385696700672019410402591972410907494180109098288105385620389416948666273220289852387169268941264952905757518391748782134424615336147381587140490035720510901703857889136518424156953582480460861472104330318296503 - 34153259419085051424606132975024189285009481176330576551130295384361200887004161238669469987455581083720521981765144273788956633463116858810095387975071593825884965987927159226249458633460681297314774883860632375294603370825109838057966129127438371264496821473178170807441344100474017682204907807885154097534 + 94315320208242381329917578325971629893959106514386439394908727833833255315012114783354790524806811442196875870394536171433408090475555540053062418547142048833756662410393485226018311201021009167489378477103935376135952603557664441497547483398969250492760405728553182735200684684132981234139848580689307544445 - 74424375036265830606796771466824398692718071806872847357574339969548500970007667866896951156430545274229903220361833426832426515785528013346798754276894065187257064061002510212116423442201701860707978074779290390202626966731878933379721235049756845160108734394730365554077519114593682812101633937342918401071 + 1366357445755651836624781840598697263888142767861876494140101675416338671256050697264497028889309041155792293494904254122782992036253195149023347523637444742455495705209855519114445660095326126440375346988848925368831946528809854522938097112962857655210599182568251146800693635758917925175936122183590847638 - 26660672164524195741175186362928716383343518267527700154830233185218454290500927361605143410949321467982638910549124089723368333087082268795271059100776066912773534357231420236584089614644880888640771313851300568237125147217840837430975562081880958549675413715722108214852389319559219943172723320926079234428 + 89503594000945212340706440438526344066503675430253353663390658117304945041581822599799368062299800689987403226939628898657672282401344243622006726539450677346987912727677110081683583755585611184578763711987087894822466854055724284001891405116305655797693615618262677246947112365350131533424110626632368520962 - 80278138060106313365347287924104487503990465525221382935840823235015893423815095431480439921008137586808631561511183094355101059495172700658944546109095225853008568103465190752901169161484951876057426156481840317283443311836718831158242216526756551426947035341091117032584763527928003388425419781386827549374 + 46682101065173181456183551267599787544096167942605687106990777313969170668220875149749626412384335869677007251110928680953633150038381618173084544432193257056739864425932127484963925524527891529580331431790458146463962022821182142942276921535682595573954695443739440138307766454333343582520481524524661314933 - 60561875758249064102704356105721114125020320110203646292432973574545078234729650825246172117271879719935308073143283778883222143539807656015663137677227827652073361310171328867963344423225514834434039795313974406921572541770260845556962726818462391222140023543637139296642818804506297946023361100219047871970 + 17601480565872246900079872863398475944849798082755191344239949720051568231817992039043338522362744499534156572651251636843545868178237949030577291773616994581384285679473510400092787607063756030320450888477827605434056254718811065597555012619702999343541305452700340177806564161865449041156086843251752300545 - 6131365515256412467050762992651001555392747968410962875006611345053682226919959983465267819486887701672654113579612047564085810607535298149197558356211736257574245013185917581219785036408230615519444262555250029573378065849427805554560563390569396905534181166481971524198942493961798635809594339615903941973 + 13631490988510225424889007746942499684976088012835429798743913309304539712486622918506531785946525832268358943163525174467299507791177529344780284117603141556593757957444931130375913726920589771739528732846510289588442006431979557925946854723710062957634997988706606997643734493041716443653748431247667998003 - 93118786301348583557275645036445380963375841294297827447576945427759897907465562456602172435602810609734223634202497664677116773422075095492517647578477244217837306313999841584430465013825688369957514179431966960068133748233456365666264552374073720500466253712128875413880650836077320097061805767591933317742 + 61311495155398515119548451603794989562996411711071337383646530377885219157062947856965121225099005329056001179029603507499574949600556446953357094743502322558548460546469802672017294616340090781860381201814146193024724881892712679271112507881673785159920718327138777484452611623654011157916829868990556189712 - 73493314507861285371825675923718912813936508245173479113491229405607244225755066164449075643221017720356769822954634728628530486184697528085192811370684112709572879844211959925121782149867611244235230686105625033542338089280231425465794795554820179443148616816101256165570506581430106285410031183830299369203 + 139572319287690075198221148700823975493618877207369590665087870618655022696926519438286371975269356408951055262941863986127356785800870868930543091432364078202650535642461679691384582204587741004913329943364163412395539597557132690048225947672159650545903116302078459602674018000232836738578930079263672743 - 78637675376856018547263278063675805678901312034466279037839316550869085589430885278172315589535027780426173291662454863354543721339909419923601787694501619222509314557322759468247191122447859018640213905327295596794427555162931649348700218543591474872415504724325774010072282047144534585382340194318517993021 + 73675528657684733961404066457977096612493027369168061931372366895964318578377092255016253976476696755494888263326292576133692239776246392642772363364502840225307944396321802230672100504854118208262331995083390503486213662859164067750456130161824714734786987349392802730013243449359620309627690783684103441197 - 80928508454524024049225159389540174381258010135627472190898188559358736715429017039269185686407662721408306835995746394200692569479322713465197293896684500425070887620318520734922626326076208108178290184065509743601838054060060845362342744008555667826965671900067314277994153299941889667801983830905506421966 + 28617270889835635517517806866703593694406349786870351359305429453847974650555581545287926211358616565343738889124902419574312788118093858474000040100293564987271965582247358996525613763898387565399811896811497546675732344100729362839880661053501298319175594781502220085807828524800743657940484578837703783601 - 70131502934628659151757395172396535479701100633928704865549734148708233026911785849536891142548624880927537283405811599825227866467329840842052523510589437537322746948694073093439016201975417020496230571251808435431589831914167490162358845370202829628427601361851012068810474576632217420282628993922301463542 + 14597049986458379784628629144819361191954473630698843776218125328413792743280642371612126173134054103589630330250696064004424775988417713732584739777264715763425832056307347368003103731924266713383516982863710789413997082566197545013091499940466396988937286192600213106361795235873841565976395304719164782660 - 76991076350411646596184978560783833454172989478048007208246382807676625425263103722310162003547804391228380294792549618836370166340763495087043546961309686992202534781273528064598114671148865406564972317400905278390693205421012224411855834883020821810433287819665878577997940026905401814319076111907876182421 + 8286137006903391366417332983658159001987613674453418824779061643247224343144251784284209856930478203381909507334299514169931907875736691605477328353373607966124621761561403489212308076125859533139234375381816795471095944103748835608999111074858108001665318762643751921519644129912619661787245183929315406744 - 77168134586393236763284876456130005165951352199121013562390508488765025560039348993867783589836042450301822242129212219229603419140924638626175958981741117339744477507436380566677827530116291773645797996367912047361569125690508378911980481409373248587652494280145596428340891239362071529067756928717309123420 + 54942790266454033971220170667387291096463663436366624196454229512773515903043448861648418038271211934042433639559928844120327054504809106109077875963062229416885812554678554697394118681455100717503416120980978581548376312862923496455677962021076020378189774418609765397625783960350219740993753900774707118122 - 46588347912990945700332291477867664430036048722373290122806196732797385802987868025148389506029458862062572522412345581228444778430633053953037420841630900467626760265158500258979497502689455888422387517973821918191767777793275322153990845283097494673578152123966125618589195293817927367690572794612159835470 + 13740455029944911629252053846082042511465538348924719097591364046560687886784635071674508103269456429351799119173442855933188343898113622754264829545725585141454128727630684844679246255720413281630609432707108773935021685297924970370821387455516914110036318358315894111538386771122419907807560621985806652008 - 79123875976684680349960220354674632594507275703321447252218881366916980393561861464651552236009245636201921153333387931768327636099560070769181728918793738398665252682697986980199057918476223394451722105661283129312087802807244095435827169106206925608371702207725181935034159002064691204864698391818112535626 + 8141442923651996509806032970157813969357289468582972759899415325098951143579424651495471870306219234580286608707050261096273918400450203643645429712934371130562686258448616979870649102370139882359854273445318702173836791451695790835019790288236636841254341352144484703213715546566078164372431187827776679220 - 15952867317788332545655927381324950008561530442160739091710971239826811798023211773478215061003877911441480123079105992401315962474729641601144663859632373679144538730293983150900018002163737304001131435312660525922784698195868794443498606605397524433716324535539834116133874211412297534446018624581992951022 + 40603145758338945553166068713623639847797133877510553372355531144712237496018191143318944758161119234480837543907076391345204163488514205980982917790587367257477029447744552706184826549483552825393901235534919409167710296744467786206039911076227707984359644254677334607296480091484780280203745744912976014907 - 76208377068565927550963480599163790434202057168865138901413807415631818083992069707878465319499579637814436712994298408461955242253092465655690853373999276045635487638893049080878121595443919434339390726138931024079318964441083651687435326639332481759035320380146356104890223856621451212488222088639864439442 + 90548927610898945424358433578424924162172588178405735577681817635679690391826584177996283546311389669989348292418823906505658409667225512394456057458935065476904723652099626216877485402988560577870962621366123689355451559982231571457045776940299164513159892955354597547825497864931998008358490498048766541881 - 86240225932345286111094036936183122733700867942881093938594257557762637751464023524888206664240775222868829826775562068943135300883976075297173065603338609020987182345043037066596329533447555489278604721462754044066865828349367982126876107570892796345870016547033847514063931416085391714377873154056090998022 + 80309588728185282313286027674238906214354811553310842645253373899097419600825481392437252674738572996943265594174181838737343142604073095709388887635253705610551755909077165629893160604796864083526695307523796994914428248511770656751838248477035323063442925095811767526566687848698348234550416502630765919276 - 12373909220822273379966706331245286176273482971274607029442376393513151575894361445211393881640369147575779220950050664845332586471495804547925733314924934192961192206235556472287840464737624564581478294204416398608983915377773925018236319589635322340182498957942105244821800515954913595374533127592400121014 + 53153242948027376792395497743792899554191381423433522062090497133687093325517613094285058757266506938326718273394438494858036018132314376235286613529207409274211560694992626287721299942883995812613175170369175154910026372836366752582754269286569638234997867726623284398207322889061923372570853099076857215553 - 92626585270049497610237682843064012409145972211427084222118861546271198322686033518645356108357880936945604758989910746171108632851092678290399968134992234144271544380658787833644193232624711969234975076050455574246751147065621876063600685705312030120053725654028664868917096409424815440204628363210866451885 + 61147204809926210065883392306795787144201138985849908716703636511309981914413780243666466590302967911032368984137611672054411272402062396000775647210806974266455335022338525056892474539324845806760439292177610860848514767572967202716068155819587281527597844421909108336794074092510599672951120413887248208395 - 94978290093718587781061883936667081299211136092415655995433567520344456612655660841531135764247971728442882366267119408844577239471151389446099197622643096967336178985696028801811647538795676003899251621241761444494647890124399435719744748770192884124591190149960570399778414110228295706428952000601047848776 + 56475603349011316852935135883079843337638101665675225139313982230098392210314477570808174714310252832876349823202376456346397232449795543626222901238481575683884818663457576869008023303961851398681775731752694030830703029045961871719934706134672487552245092420558968976179797962032001795174556625940526388735 - 68910126226983425128638056257489227321867892495403740633257449203669138169729911561159025721096703563410582593539963820077241862743245890946357294699821279379434086504850824940923983193595572037461990531322712362091712542637207510705632270701545338555721611223875871696748256400822247040716881993051064316713 + 74321064321741264661667868781505393429727122912761075457532177507550389276391293158530350865755599730751765174306414435223724198482173488443472089574704313931012714008518061082877516404106721282382635937478162356380876868381642472084523349617333196584828165277273936295578638438558570981199882839191672811061 - 24546660073741630411178032830807662175615278555003240586208670977994045986593357368612984152361416954970694655765736906114782877951173917337741567788893638118182508820982706589187547669059597729590598460465664719560440060477461641922888875222281959858997535908220942495986335878624305404108926983467655148164 + 6772056490951017718597033099386797283649390019431730600768014626521450004314725980777543518574891445852456521930807967732039848324384691999374160009288284166630951154375937035217333196989929319228407886808320824714627428639720144874858844867277587949347167524510834386165931370620428782011054268092786760078 - 53072059180666715241704093181697053594748812599258255447543144696837515474031062807734710075385379055134803032468793115675340681551844920459697318438727650296106411633208086747608637371082343827243961381919902206835728534807359957097252701147065583573728783393777955032404886140526668822190264701921269031928 + 22797779627723986743400193163802793114810424268816373907760051999839387224499119607054621509446955019847365916396357880917415089493092485088387817093897863001624575618960055662042523868876603685779388808828680568738010243928380728125947479062401265327671316461435860801230691045026730254094979189354050548865 - 51593099079334797325876348073005029372248819412852419037275004131205431746997098227269345676089668325318287045061589224786262139521862971729107005202515189770530316609389988838286259158549785771608940716622273938992143046700411849909613148254258031389244694812636447169117920423106510854066205835490516558280 + 6255303532810880593721255506368743045146060234968862228849343438049558340010077379152463620103654895019495358609196857823035167566532112124223048359181023109488245387400715273451974691676481942050656746143354055831698212713436451887500480763592778555845288872955416321200645331262749174916422613576144868912 - 47804787420101284749718076551179025844452950146819324456331953201952785958271058874718628634051396516347812998910454137343176732879841513488169048409563088904896297159172866268663945284793035533526164440680060368027752242442566005856555498156456755000338010633444939624677938639214448117407151122788642470445 + 76261415517739115948818589247063606830248751321266208052582795213425694670653585079929016686928888467775558109380004228492290884782512333740935724078313478004554966799218119794270780886769172980018410036457288481935502802734990104803147972491769955521194836897614302686116150256576573048149780095863690819318 - 57638197618896148495732657388969246920508125244302251760567033804502557727845073305248319210858605450033371207974827395438837085335377800975404672152326038618380662889174427288180987833045380071676906752178145447713608758699952134498513056892426118657084977200205346722092924646182764273517881354530660218336 + 91252695437251005803668582782331206009247005675673084758581272114443635663342368584599917743983850238146344681036885704998744594455816094065940098575459890222859478710950066499787587377740220251018379473968509718151587371816050198190798773976644797637044482179665385759436375410411452631984346009708869058403 - 36004488544742565626677251663547076395308975365490295879528145208686378454945401278598173316509894078910363192671167300972615108329337148706167124281309835008812871383386015742203045106637164608238928101364932602666039307222340654071749985319012403743400546448729130539899150501532960002386854171085151309169 + 42427031876935977333178576551249963275764905406904453983008732785835544921416997240268023584067342734414246135249989632389723962220225288527876677250286390804053197637781960915640018021455164238614381858312851935500248662343722522195356752861508883966765402862290291071906486788962918849470729544555779848933 - 52829123877884671206794683367749248206793672408817260903786007358326470426397009559084407379573787348310667915328452626200847539424125327045499800995907832719290990445252204962133919095616469051025861598017719393778090462211778098623569988601819179414828291341200048939736429515125311726339699071261278911594 + 68691558978714843640171070347507010300175376312136258011859628980975461897314144875642293201853741595984138067021813766850919198003475611430864047272725180318654447179807909858228047588117567172304883789616565188946787613856746458010179601883212589636872555748355362548773256393139974031868890394997400427330 - 90610301805084206054734344561591292351359941770859777542712643298121752122947933753326979461865770577874968075111315471949182692998500754277675930378314815931831946518038641138322667397612512938584934894276761664744060478108865934011951617868266607929215955988312608361949434962635696505338420206988258876758 + 92408918702503992974729142602528890352869495653918567213319544782141626210194431137175452803996308774171534708325460854921497007736562620331900607251321765286858339153831518005824488755526728654678745159585350938825980865987347954350151092855036405474335206806699282986799025279520355598396487109001754069191 - 54825442381869628115561928209418376623633850546839150102030888419300431110541939866777914400471869715051057696936277414872042600019933847120010409116364945290763686688981634260400204260575774107232830997314157451655265046524722186788586883076162384485655552888655183416910020527942500319763226153154290083552 + 31552761013143234503605274798348514909395954858727591780741751626353812981517805737735009211802063628607287391353804467726351868828294511937088359539021799561234977556780213343723030879343537413798030675183108810050773030415383974137733840702265405293237819922569535840982001494474213468885498073735966355321 - 48440146932519621146873370600462667298440251565459042664849170144995551493303749997810509505893169610097824589532129617839428036240528646492179204984453594054361958731058277266309072407636814042353403187846039783398363444050763408982875744781702129042918917937060521757373273799239255433748146553276095091815 + 21068373519955248559964412211441098935365143778867000985232968600182585886494833173599334697203638487029288704635591249715579134618152342321150966934438114865606794352492936935267062115847880875770046448524098189951544497223991200227306339175522881760486928620667915764225950126101223676498359055777475620595 - 71246762790311118067646988477801502345782020344215643443471440044769401700571806892843316635231397704067473574819436356468010659667935695042016390869075241946512528866850086952720221582167256453708624902507855288347506916748084566163608260365289025889260701108450193771239423223981155898614958503108069399310 + 26863923371374482940791431170124012066007128572360474957642603084589142791557782201326544741310555082406157115587403998705995188087366513553597343851612333079764765832239954093870457182406248816533092646986210689129249051511239978029511176094510328307701117619903119941176063448172090112310420160548434202478 - 85422513568761656053970159037699783363666001582987887365140927914950776312399854638265408384756596918227470280827670114616287786508399127331135779055281993225921541522350911452435213333069348211601194476205527057072516010721279163847535337483301190180474864348838675006032313219812470413766327839723450623379 + 35139201356027905505910438006887875198593016953058386326790550897146579643335517835330494262764139714170313783921100356252733247655122583269796673064323915862290184146663734279101684198246652828645395777580602757673140626642656795447349628782475139724687075642750963662918873312145830963046059824990830193698 - 48534662580636277949259672378361648849115128199318772505971847484580468572096426691787402164452854396261842913583675386298262914476797959489045266765210602734733778821061631855934043616505947610244864437916604430753447861144572691155784664141610154873331137892202608100168213025170024019037136435599300663010 + 16910207859280815144050741567795477159876276068820175617916162760722464707778686022948216238066563585522198312369794763514322011267274184151392911907733675215944744743420458035722753074989697382192799667139751237001159135459597775765634562336279389760836312218096628683304501947451990617682068840638469839668 - 57650335870090695283447769584966345722034237306844979299711153003539001439492439035297210956121499119116029245946820906783033850737266776502000280837184518719268407833715531478409212887535216169742924496606269383892892800339195639921210099378441075805883447389610018064510330137336112704615188085958313322484 + 77126980519068303420507890880796175950950394723160284091163514971998602956716949287716703928993813880068375441928010580111425406266914729888361435989323036482646874809512424851657992332399082113703821616048766828704289000437741057245190900559357556363148259433302050876403391374556119761479330455096343004953 - 4259056613473140203020757879208278860428308259960406545651612136195230581892174250556319056366394984526063891897308339186750838090651257025589434953975465478435464819689292742234747962056602396179372650047225355782611207074061740475991295777023127456590255646292290019660927184996171374528347420487262138207 + 51964341811268989079298551812602420599497444568792520630377964292081351775821570829485815014978960404978218251842731555582567673381592702568868922309030710257795670350579501445202020069147062547229157344127184466123949586179827253080979317575521955459694095194670985752339563367983419271088951936543692858794 - 23515746118279492277746237802377332258074490098643175755418187534491101507158111735522228816262212503270936114182670219830477715900665205442120550918376822961075016204539486529102572106040964384207609909800874724485631863324305597503700274311674944964260099855777900850414411148668745891803013012080578988355 + 66899783641545701537348748934245528676634420643732557959566515598685602629081140423290931178706771355074423934339352448028755408606849036590861215763403443583651419017870768632796972080867231185995580944424690534918282823770228255230048913131964210115218340716779750347226095358056243131054584914925786191694 - 22552662204700625331601203298838873827659028854150907657865925924190841722059691299656259469662681206323656529729329500391447562813249947235676071612275221850557289921954963039252500892789165021527594072596514737410484050950342084844779579872405804324038786310459244123268809017293239137977451670920611284426 + 43396367688307396644095771661346950776133214657734456199803898729649141267162926145792718427033598943545726101281794725960853767365973046307258232872835288121128045818458190091755460954109647578379977159912644700601332038404355905636886440669050774311741104166577789127376114052614877778885473864616469571581 - 41272666840963369922204811216978445734096900122917415014609407226888940039440065662356759947825297208044665988714389045729183912811116728825551621622771527205445868625079383552564746441651404808234966878973265508647793951916296086386651010086809703668627512096351976858419161363804800723889262053133677542841 + 34468718364962979210657106067743005249305242605869224219678696443769257243607314926713142768987608802787125684021250773153148084974704532797335834328352254691250386516445762592983036052817106834079081153449212820335081833752401686196263685125359155905398217425090556960076230832964826438925175276251368678772 - 88204033478712013712758718214542137651451436672743098923595209227874943215027388948829281460352354067693698975418096855656104770933201761845358389232449051447266316882720412835780732719018046184735086217996954138861310961052158725469435685047912229534091486340254615249208613202334710811056285177643118410233 + 2706617968196876816903469734035539518044357534601027752769966230312049811661913788240885642530861454554136027469131111090076173663933058964592883958969346027214961556421564153976230993526281115335731817672585299796625628691448525848452977100786545823466712948763986882719710708277110703799645470622004436221 - 80735835462427817032911065560315923562351665332174772901281564270489680073453991314460790666785489282713227466491296220178114961454675775293182775870114374086811233791188564058720578609328618140936212252967969162112524050310082891375253153007511624437353979686636618876635581810733933310291657585603372776037 + 8319970813792189637882883805365796784246393591985355633120513206833521270961158381518816099920769548189213751358738230764984947762900832261290306231905746186706639234549299446726697985421440925695752944546678674601541103265334506235354622079095943328533230728401441224642008037177667696691134685442723731391 - 62059224585731078012620191707486785902517689676280890560921593863737499839538848776309529090806710622972388640502356865097984419372546168318530805445868335537813410069238645003402965761857580018111953585397541537012633450848668390478465634928263024897163329912498163797876475136863853531097720746138099542756 + 68958131084245424923095654766255717351019082242957400653393193169834902780076155134615879300018758961628591028271459735792613430730355886678875990908099338522052523378623837310285727680253521929477652995160671262970164187077253782688464150409523487035088280877111665307038586168815884304541891157572286086304 - 64441854697018808319835317859841732878800278567470221140415803380121517352958687751691018748909776602304684672535775498775118243293909418326457470785142628701758802727846540130013380252500434735640826521559874657179396924761368670916735746461775133007857814169584080809741704133174832312924047911074543004929 + 29421956307589128125679981622833050029884333762737607965819381305953795746505262085398414437496967794264635971691498818087195527068163977140773882426422553444480305303142731666985068795709136510985355045442469343217559024156739646718730307278594433400700312958195320417540789130304310220478078321943689804023 - 63462924474840562943871961641976045405290022451810304237567370167141984493246188397813944536523440417664444593122707641924784825692920374103560106758252051508550181542707177638071458505277306314149581821135779285668437088661296383688823606345547397893316537562625385533257676590755493455692895766094761773323 + 9633143018036631208425217604217349710676455751266198110239138297318445791620294154652702799824963274055768231361898798247827305687914741105174750247553489239248081293949709787561787615025231436512460915253180294962192003059293647902110050855099455890072022798422684618469622623107432873383018474078492972287 - 64555776978534535402524992336099737364532491608923752832795011258215145174453930481644836964889393852561667776808660427000352277071745040043069296191982895418335627940109327085944794789936998836105476875269862467614438178488511378418711050512083317820580782342035127315672936935987855112139368531569111145252 + 24662378243588875106170195151176286356586277089365020471991273459156794340017916029615586776810905352800129336317791481260989018036794730631078962146735581735888760293437043598863907694587888288230966735907811330911350120504835781902200186482490587228692680271596254329343049670821032778524698872002935151570 - 77506702069524589565218696245755839282793750858391212625923149832384222098298976434470427714266481199699654192443307864120582842757614762371432321607064724384228086204632698967328750045625219184560720782393866221635655757079096626637069643908410320253892229292241193846918006623681384833102381672114199573165 + 123191571096687328302437733387433515209152290308384996043061964298607595191869322500889849148097832256376091278813074360408168408139155586240891340197053623614432481924332775729539581907012471884735586782704500932994620476591829609317576250963757461555535660416912113555745982315862060436390739553477943375 - 49669218291459869452678494236782658074649597280327412077666704749017261114971150777386491925227806323447713753562562707297242051119833062565867373542575557144281623216586029703993226126666132389606638667609773110500218415250676099587979534384941092535262132504386173403852551668545499160628626152369186627411 + 75468899443779638731628890258120258531586230147228943861037252059470366971009106771074137599511385950892393117881605743417334385862873443281521976291653111575217287992987970207878241737612776831111624948956763649171301013339759409353271653535432911577801300400121039361062821804318654115291495191397109289091 - 75504814556740424694410225280962989266889896132277914489695717763745807375659614754922678410902305061083053768855666753033488098338943930897798975851100496823970360206371781358577091240024992601354754250338141347096894025406079422377438207571308831838381737889372121788946049816103016694181745539433128346595 + 37546463630938841531902717946466527922000165685082890037393584843351205346652758845079137133494309002305572190356433553088442553961527940659942323706431555610040939955922606415280247446998314681537679305113891773374281887697853787943365476094203073597172843778396648968370974854022700186152964974312530898080 - 100963343583013156009018402726491119441986767124697954941353118932500139680510940272040403962244323571265237376263074308297234009436921425802575893239758927327082776134695010164368957515944232338991866346619024888170284174847203783082306368973648410118841352620023553684937130162583232250607307386526299534553 + 22563627428962192165595424026540695323005443196051377526619846999674088011870689205911912453021620981757136802245478286265466589637775722334015743375071458537003215987309859016860531095053891990433881408978949199958698209827390831647411712380436261732128843353558522413985345424376602092607202553311185831746 - 45184477636010629858498588349655618743004019230934996843330469730782498576503886460592700845297101013726696066552626574371894642028178014038666974620050575107670149448422971818020315351517680757330069433619736670439955565587002829678451663527988140103007924034454303398786465296132594253167441372467428049463 + 45048586219430677179073429643421097448171323857298142511278912161373831850780343417082249308174402154016659074959753639995990617984301849224682424939782391181900533033899938028649556575899408942845019248865967595236317277443804488109123130057732719037497130951472323947857615728671005071184337350900420014477 - 23880944962510431888949228615472817658687532305757638563183366263154791540045512278385938219665731776114539177575169641312079612042408725638232673084852876785139674779430162139360585095507517569341182657334502262445601512337118628157591250827864194325479912185115491443546800350753197286097976924914266803238 + 8482510597810083375603793526276326659011286686568832712490608559073817992410166566744561059194862262561671928407044880106498138424675336014935560743655734043387695851248847432473141012033453053944077132319821161204559575572428349300981624114048906140503383901667996454762108077525676814819389489134957866014 - 58915247293719314691810588299571560138155427587115121095834440252752017395088138366581032639168819217259022605944989689284757096040372383095824349211802990395202745118305736305650018682633578442808598217088968734556195327487842390885157208969339318944933662127860904884521822432482145508875672849920779648646 + 92874965654627527625683559470855845638686783200234892869009634303894327080707029037041548242762667536594548411850992408240075710273279047102106658824721510174854881420532478901364083386340156399804366944929974140689493500754551541151364883042673260166340507903413471866739868655640362563907124797710846781253 - 2303838647387865546877306063484981625508799495493603858147217889097308246238049600955717343622176608285959861123640417855553958556977488068269478549424714292333907060130773022231526758938168180492849137690672242545926974640356097181752119707454638947343157145232447382380947605572281313508196400449165472578 + 34245510096563907773434404002990018934781580041567472668067843009539093700886381485911663480264587530868534600648492718291059288809244382146447229352942900395456436757419067427646964770218285441264067108877433984110261803466817108310077299707905482912669782270362249155183469865574266986137489998084759617548 - 70311500298737953483023947322535885569563681031000432040931525179479857901393765842248266678881288390670537421938244471134544867413322218078100160397521351873704195708641369220221262936712212211922711494877487524280522847991345231375661690643044168282182523296916168433369946830641908536390208628000153720088 + 40978370805524189823234559610092536126557858132164084633731732270132204888780227294389129022177644016061958439940477535315031874146320902780176545238046660614695022988945742831127552548593029928894108648555021660759890659012371073711742616171023196424466823006081292624690752759077297736693636457606804685851 - 1809978731548003316938342320591711985586874226021553632934409251059128585744729195750352502227742724479351115105256021454106563194032485316647748016505942811443235086389754755980876865091281428848133542890290023609261968522074401864426429167206541092817531517713204735471370502590159442474651121678224619407 + 64813875500260853124858379377038212338472012147709788042362193203005022479061912106602525946840359660357597407743104365224535043335976000865539732930923720333855805583015662208249266471712043666675063809371719711903638084881027525662653931750996696968648780839001958074515843659929353246258108889965797911523 - 86884141719871591738617151018137596191397008539240817823178595993567934268848550012614944276177020404901131653027895051002137066724852666667382192491760217550140586853839541712655541808659182629115035542317584019212989496183083013920039791886864293646067230378408469640379136383248993959029894964573033532925 + 6602008530285954907065050918481291162569954616754309266051329394840896820584389770070447422843237953603568605321782660265008745228791432930062688788217709743828362709323462976023052195994933191086419999965254248001197957966697932044715221485990782912442681453253131424685082857099897514056642209062736211829 - 61648984437188980099627408870298003211722853653807023751201202975729366897916580805784218259933950236651201935716068294435383667049381686848558013417100571953857837810586006654320961376403519893371029629118015430328298646886872715865775663629030465800403806017776697397679200529103083243503371001256869485688 + 37588338592012433793645390959514206563523884699301763153776656279036822886681296510570967515296540228306712031282823646706789241928473358348764259657178858834796358428874943022565008860010869270484779788472162159070370938540443999331244183808153111036678418771740350363133345097594821499426256492987430104049 - 21880861119427549366656468665584193932996456564185608730181881606675170308870386017705074536696773100649238549372255236560648656455361876955225253933736745285779542015956985328663794191835558413070289559152409395749965230609658218144089465929683697792564176280324785861757976377331541720101013368101955211181 + 23875092705711405607679623258094002282247882848884679171908017331396184334881541226039008157699392725910376338514884702555163275694933920849228536860502303735224029816756016454495733006649137181690478052186118737544014839016396910609992000654606225875559196311529325549105822869343106820658437327019007910511 - 90117882388497921492785887659411099676451762288635833189332520627200543919217757135937409953123466805830920801395678243297913077148038058022620084981274829363426589948200456079919067972732587350253349455903174156393240370791312312310467992618097741251958107175840806871272659513130460954529105555739243420021 + 78822801699170239888529712108527628851571334891061532233822803306729929416564579895651198242059123674592562421853747895966020329733376535340633745300204447652337119565744848944992250053146957032469695862990271301102493364745481665311510531906379493587959009050364667892241891090145892745379983075952781669106 - 41701045726210017561457946114863073587295907539455785035264901430975642979850812105751662060721252438559196102023049150312812701134414758984022480465316771042145393068779020793802312220371719926617590106177444976778662620786238091028196247126339142152673982793032566583823795109549856668006274319437502146998 + 45108221616316340093113650138383340443794331108894896493277130137622984905437159686445672704468444531785444147267810562965518507434602709831125065588986018843742050137736963023961857855788766666359453809139611512676704972897647128590863410572991306762916253002264354887968539835020039006773643868816604284437 - 100557201652681287974854882698035008465310420486018707382958763115444060533624572505427759309509562400432796628928474429962192917229008434378627598729885112011283708135084347811608007146480977546537806338383277356990186379447773300010922100694584337238674507913171151509543113621227033447691432298051238336511 + 40890961788101846588661049010633971361338934240093638047895833351775456840969628327083296893016061476557379573431258827604674192577950661123352883081152385669154695577876117968846324553742046115903647064178366557665583241513435669995165410740695491461448049454589596902941566978761432444173579955693394397931 - 85901903434589935961833861378599306909663689254770971859216831287891022695646764235000311009374158605067441067109593217207462956540619353669986131298879549715034035358801792390075262934138579693118364871126799709504220264601166306781207710612951829018144690881927229801534088431017580125091054870787521910734 + 84907889767304013924018171014775168067295512308466969585330816201688761176757940216770810860899537346929793457410994844869286146259814476975622817594489977430035633672299695264757861184146723397453355618082546748401116530210516059505923926297734479785243266914380092847029590823224920632391084520941339741946 - 102561723863666250940614820573598511609498424999067081990708073919922969576413858156661425634660846927822193419095433503448079318353549480213765506230113105292920599272778227762584680813535534957362123455656562856505355611221113714453508709378936547721650071626457225339887041823919396181378586465282897063565 + 70922074010810330483626698984320197278798989360753724078124984861642131528838419308001242424870266418489226288405512663924910861139212744547919419981467648505528390290224409643703477639465433156605164199614359573502017731039565248727787842815424515435560243417509488133325216911802238467040819482336461028109 - 16224401981382823634147834550074613060179755429265451736131128751325652349151777713869799468237606418196894726807566947329236685880870496895361791570979389062602774800188250757940786986187899201228597832550245131896476179118908150575040496457676835792598913537451329859712809737439567123662847147425634938570 + 43853692518303299117570838252270591355961362477874538310506582340134291153039974760386430324526789991527609845317914997818390052680806785142109424805324891090383145217253283639705603275632323935695595115460529858013060843387419829966691636121137269642697729681861854076081499609296778475211400298674606058115 - 95956795338567826676604819883837311712575441511126120071908525456879307742704359029622209423840453944202798444829985174661455202601178730798022297802594995245182896425876713222951636934632658668178193093471956916071039890533124350851712327598922963556300441599356087385444277513432303440372798636674105842493 + 80481737107092392601986009159758391354874116621950672503739982241659402920273781350059807187242852793148058114140525100805276506182142135285855044539263292862571336865667362002702143795286765187045551861075867695101173742332264165262654926617276017239728371457168568956607460326813322432122427231919064882510 - 88201494836319906634149952916625984924149898270601818252160140626053899307501150981319648158141123239202694589079841842912761672447543008880442245629457837736964294057005480620239330614128306040184773904750575115384014754251753295608141339399266910436577216768767377729829081561056309250326281684860596702580 + 15713358107547866334219384086943006902673194121308887342198381819766584585460360441154566643262514615605989308328752528035962548163722376564778557312315225532595678200423566712251680070204265292345724697377968536770280545009428590412607504614926230260870780987662150679821725290551515069387403318756373607684 - 15283076069653301784774016967428169904046299848457751711484600848111035976799528153569900839537397683080709091376672179951905031000438394896214137025208767466228792091361682615590136618800349550762401968282085018495694704975055000642066893426403850568693706845687638576586505206831780992512951062203061278480 + 22926198274632567000610580166932156742122123996892549208694531739738603816948821524005324100584291350190035334830417138755320365983053312757479149061520076162057615766520458069958751564607037060528092498800509160916888203504243081973981179584654050653480167885800186888927862800361888880180825903195429254621 - 89325590688158188540005633216316984415778272273764401653192770441998279725221892652763702159692110166284599093306471542719736586068453074317418623519245902025701648924212383574372979098306140753850723506643938739892770681799508406267195811278179147856925873071572055011322933676045741965210415039982736902101 + 80153124406588881694522155026789225527082628657350435318251246476042276679809483368844134216302279216199320761582563549740126847192986419379171515404208303686947906530258617048282433126270900422427761381299652314921636409074095630026845278989298534893535435219845077739742982452067776515260783218858136568059 - 98559923477135902705634486782728345257820704783546923821761267209565254901863430415814721815363168873229174662771382436719565523476921252209459663986562007842789344362793668578640408942646260646816724925827524252763698036006315051301207675246553916157527718396567762972776968082163178270593739854562031309540 + 89898722240757048087739994434212189855000788322502641204606541214747045864415587667338420712773726569522473573515212385731173571005778586760374794975689505737434591591832291621107283350195100628229280529383058117345893440748496075173185837057978556312033987838071254046162347808070513031169254721304592472340 - 66380479545354075709419804418422215613641532549207955431063813139408072963706939254089038750038020236170865500385318557883907466737180382023944619670170314946156655222269476284502734972756603633112122093456694149901818442917339674334621378181955804477289321812449895129639731339047345536045466934512385062719 + 79668706198632521419183214510237328094511735898813629739252119989737933905611791812667919786128621890326606783413180136027061540212823671572357343664055741624110432021497990183002329195010073964113444674417686826849886739773177267841431327251963108153982847465719273176037415383228139697159198414601906429272 - 27363000451431841520196317372409554249683058810297829197266234387955220770785069117995189665990398457324996406277030532932145413257778324188450843556263869422461943246979498883688101190063720791321562325790349514643652128223951776389054096772254554571620974815686371094579648785241159847267230659400607338764 + 72513300080738593572102530356371346940180314526630529212571091160114875015161853360658929897015248816459029240024780034818066531488298344566756210929253227754493883638956371920888278168052474314726113312110669215882515712088432088669878794940839395869561270078666210662101675300285027028714385511661108981715 - 53280888075994323228610215652512875513017863691462789044873730166245625040323097964795082144964701541706196896259573817192265295292661985688991112244848399110597570105925659702180670483667569431809591954104547870851317432440207581230998968891394334543636971749596789518625281935084909153253476142224353027583 + 10940928037764381164448101232691898340647155166909305118329530931140608891606863489743984453149263234060266418777397881088992917020364348045480688914170017086335508537243177586898216779264324016094544904901019679128979676420962707223462401917146408671715368554527611508144724090811510848850811303941646799472 - 80915390523388467661772066383419914668924144374440330723032913974790992934379760611591659860347881424201087209698602312669010334884659915609992058173167154080486999229678841878078463764269398599054361857886556046816271761755038630598520527164158800965020821629699414156569376993585302634185757559011335318482 + 42243325540285565276666729193604325948845983921893963739016788837218949518075791225553480077134874188922268060216014797245082442804843762207654597503474039672275131923234272236169843629503703723376980639630906268617129107747464558533683224267643469272553980944734702480210416594188324525781883122375165402180 - 10962827562112160963474218773365622531941438833580162173466259803028077798428723611714207773092097973761164313461326150396502781050435249423096438421097690202402014179663596472324380963741417568726660377659341789780323586853548801960937425741357180307518137189358372653879686390780606631886175710930681686770 + 27347426897496787510339953048974219869195383124009394136754210738461648755109344244053256552758104929958336434913332632404115193505914609637111765370629755485978504466393582530633722549827013314517751280278991515091042478641601405935707520150239882023151684076733797035205185437443861819100390970167487678752 - 28461815955281498743218825325110955273548033857489191952454179437152549349774966901131495763321770187742302045349003411150392926308496777730208737172449104480779052475987558139695655969208038438719883268745878449685037612069358048731606605380456118616775482857331568128119623480649011891232991265831386197697 + 55540728648160336314340873322487421670122955808324179282460802158807951122276435100400151284282175123720602606578740140004721021463568522869957994157653597730045540483190341368795249174607619098795064263477378481810519326816317983212808316523427422189525213364823377207238018644282329546145398909862676557342 - 100921713936241551930892267675147852335174519729676071699817515852085614467424559437487323142198728691049346317017772192154793843457694289169866151197205303799352304280389229186334954084711142967614017765828067387497113436537105389228553530214209782577929352646829052548265711353629470034707174443601161608785 + 54694052833061177982401595360526956001231549978223405696013628417477744660371616064989813862668763124311761836910032879356015724374330843517258646380376315576766486093875951998036696197970888392744013406002426546955368607577535753168264345059291174126355587670028087840459767083901633205949446165411224007106 - 43587572621059571325868952279591757039982755620438417513773850332897125203224919602428275145281220777096460043000631060333157414701519361452132622330702817064483155524660934495052697453252369112980647886211304441756496970913943481920342946166011932747363656192803043069408225193778570421098196041636388573527 + 62553797710794643978170056251173887897470393770824646587606484622746392261293916589464041788864548194481190342760912005922455017159466421037685750128604481587540852408006045917127268853646746008273542873795706330044261175253637360247865925417438740644805242749942020749019168819690804649056700597506930462990 - 32030627603528606180116615437450078819127958732611155642680851144542899728000261899050428490727723554932443559773562099257905335597836684232905427710796794246304687577175878848958261127747123882148129141454850698344327383542981390396201139676529633902846334222115356608459825201975447880925600700181489043000 + 25000680487372559757985069395751144996742236213077923396100896535821314945387296050231900685059493500909045763390056224544326547591309292031400564078210128362792354634840776691482732549958124539545821670655969676880093630682919983921792297608587198078331108240030288340697466898318710148096099266009981262477 - 76012504278124747652748417888739114718511848202315542755368078078143985707373047022882465213276505874967038451787877502738801296609007408604375295830056228148116617510320891947041418455607525249264852054759296281510630732382466172265160416349443918839621872600715510099631113667424825591286352347324281105653 + 16196827066645111356261328806577165494246848381916232731862235199834247595219154122427271725916133184173036403591004151982678699558375470535924893326019226916232495314155643458271195827050415548735282561461539839057348412631890316489119582908162784710525845259136253200429471177455578021080199301319149563023 - 23649445792532050923364279282672032394818237733073047421703416797966477451562245388715038534027857280716567535366412788171891728501473711308310658022966070881311951754678562111600078890320477523334959181334252222281460868534150813394157933054851126825263868013891301010398341659202200463094739760691639424037 + 12109220625305474879460127282721183631220376088064375334470436544498465738734107138264287452673803754857116911187434610699765223064898802706814930626944423683501923255397692416010142635936333047622119769938619689409313968247797661448050441093900160664546214289318420628272625846871364883025218123715881228525 - 72621140529843633640626290770900648884854519768782375148880838515507293228621161639539007603724573804057685592223371616076446268986825285922189919568352175379928496235736621558360089814389495959602441632011241902335036398588546603078032098571025461005094806421292807576750263939064262485210327242767578983406 + 52856864095263082816677687507245399123160649699547077409827747172836325677991804262575272481421251758471505581934558505400950068934738779092941826820791087615686537640376404831837179470462016901028097854761586195301424101043939730580154712021856846937256430151211914546993593132479457160251145675164622844434 - 72072288381404409791502135940351988837326121811094511769953163089295975737974474710779762436942558978445975587046515159743201182493575615213561056492715011149108983569848539964511244582408323582030795830433382841236544119008665818136297639649677911477910147056407104516064911398440354105309878123534969489521 + 58400484111211746350213309061390073587387699424558743208728844151927467619711214438649500942906125526361278865864123935758731807817772900106145925677637840821303069704749591530326693931534816870929752551862416014980799374448723737116305712572265956114291710668509663138986902791640488512797788268863431636056 - 2448383696052985069888178726642085224174172661629867101109693195843503599112533302131860008218660606937763080678805525000526725863236959441758260414603836081030848795413178306571505981588624566823540884178131125354997942651341199859500603301537784431346287368974411174873005799313851539303083000721992379800 + 83147970818289622974576156129608842964872280673835868446270287403857176167044028393110569625060114816697870184552044639397187070566905130837434423754238563716770850523792503317658398801194333562279033658429514456431739714318185571571557847472536139588958846828108286916971234448870805058369452935546420120386 - 64843401110422182674018580620690271940001275175475698796912328411749399965959962677714559732499804750003471500239033673715455581668056561318905050338008933259686360146924686047178175696646295496683580169208976838791018292890292183381797156476072900531603650837102343619245798205478364211055769463863155445568 + 22817884487555480141937274912994024942420955503630803769074966385266925114378260648416143175502381730474619475610837469870528707846692777879120001470098396133490204307159103078468808271899600824009287351143413982335765028101570035324235173112899775213896824334058450172893582075665831968111688798124668997122 - 62427030914691326440234737508486961598345602985080137474188406542693989914547631792692044117664716142062730085013696331990401203831923497499196820320516062373409613682481571987517673426662349997676748726909469038056336657764373310281020498539038474116264450926744739719178125785835781809306932877624312166556 + 33446050044747370075798193002456289687875134871830584490115764909939131261764993684098634326784491450198896692109051093217801299494094721332546720762031368213278361982797369517042792021858497839307630079129471445395712502700287013001422961171878702821570578903271598432409064807159119235304153652494556103482 - 104449937390239905041956248385082879953619728551782042804475014981227030884573904152564869118012164542759235215592697431300876460544941626281557394423074648641827887126053189481823836620211545596089725795469927840222916177709523243573750849382404447313429144878761925479117787728460276083315263369583785943398 + 17399871470507777563312504838117153938524639629198697216828311364624229919975804487241820940421064086104028226779471434608257517404515282490701894695452625338755004461046325637812917212806095883879665702489541554818933100662578309176086136971320700607213826212498338830565221960551746239664063397698811876746 - 22172945319711421566831509513573645183025712084506945230685345462355648023414342834712709711184626997451038157184792865214356959708430464649774973161717401668987503653627216295802431429377933429702648712217954866912889664827333264310435935733687708493500192978616991880005677731485521216103228300002043629869 + 75994442165105073364906236500655513111225831682304109591641277012383914565502524853724923690161884372002301025739880694281789428298521357874345710219785216904455965114938248780273356356713464189756975425397185396915933780373890613653412189495873251810378329662943121211869964445025817160531036387680796081045 - 74716096684250795254416531180605853721199814107027493261692711709574287278813992118874008746100313479895042214517910473189288698550644303408165486876185474758562679484078416830473388397511273995508034753996724551431999512966708451913516798221704483540149545759545640644159068713580904782580815807541509692912 + 70832548747131395852163931009989373681111031161647940992636673464355229172997126966909634034877621407037576217293510986941331015573391949118685642133054823005360004362688147664206808309549106519479293445102937239623436800380109905579071213682850171915696137027990486417828054936714983106787223342633141287982 - 82476638528884756046016974297038791770871082474318349769619897035749406552972540222350929509999755755442072829139354971253679120497478628274481331632103983805963426097162386658056414347391638994272348546192576710579133780442168629718979334883591158348937363770790220445008466480207221837708867844088250137916 + 59831959943105630085367428812248346753467605442316692157676045956774990274651533982791425671858577391487857660790794703022907255844401450446113468244727143174179302848308471628294371085501678859274472657325898821102617785419541744905428642369011974421932461303447741703442292631677232770012629381587861458027 - 35774832936477951631993573616964116285745837845810347423507740252541408834794652752475456490387500386327506208019819903138473377812302748283622501946622494440024586228147963861588092568816303091703468508066949043592229451534498241089962612527474280471269437406247021063265736127430124665777889729248066810478 + 83997658556826434569207862292869522104591204008098700499396408045857711951622448106462727494334685535601950773161964519472851366044971568605483704978997381799793054438849292975775434001461343740523215885803235114765631902665380385618763275862007926771887738936779748350588852466940004862247978939660856565275 - 34207124743401385141972682986672600060362199148640123790086852447003473764384759490114444393443203235094233232612980108431912040333656900528519049181979198056221931583915507615764729429870278763743149336243286746945293932570992357082276353676896454676695235919538754165914788905719834136403332615074960540354 + 33813811292927582166361023457019740209495864706577234402456453783804159554550301722783417170139273138094384318828281741980630340740808037394878771480626644246188568716248706478896060278106177395397560793963208598803177164007500209426353498421390264994961914734692721835028333285354096282196939436391430359895 - 8189542646547440556705795257020559197961033057560251945273002257163812202430167941154406183411765377048978496984409920728739411494364124184492579868011958953464288757342990996733996585617609600526222537351359618937289835106968515835701459204102557693816722595550693156459518254422790885062493860506173848167 + 16085302182363717143677056693582950208590592683824138244204793215091260338548567407732672825358314828351891136323810541454718647856617201153666991976070882956506708763619594440184711410739764952704426991101492789856975244300867031073761598811663321047662637495133739892957778821008829149265572344064160645237 - 82647839311221976244630122366738040512600972485695822985282271991342251295037736107697833146773247411336270942617338740024640081101377629864249662494956196272271714592138772735472710214732662386496097688507653445623609608861675595563376337480770937763695461433271116603796239799647965141797385666672052095887 + 60545065121645771749500231628631454054343157523465728634063855463109174453553225671529888801658651959923429339638098884658799612277959821087424843961964937705365985365555260009237950854625146727837725764206332993450838879202273184677291391147920879712222968287755952482955090717906448759329429914236160297934 - 43752382685911339405306324010421631712118540281260153155004050531231664026651902798899172569221379237166614630995608158881468562569257583552240414543844403128825844498283958571948942654807709103824301438223253127666090961062337031863890091535950470833063573099347673728961727908409269987980556287180364825585 + 43157722024943799522985579567732106493333274234485726087958110025747173115580757162810740446135799907731621968578072460822438075931802492387697043034859840257357820076512124043322142306450610562286519430303392387925901452113657997962325548342810483019523009712908353911119683083836068022000464655385415572246 - 31058117179367603194306350409854729694270906675673060923927497187383950510123194149506931136756446561741472934508626433371342273639509157077593186756879021549158362125255394621239355795393632775361102160828308365424808436501359502114434257120911814618210622644082970332605943998419184578690430677964892109001 + 21958872329643944470989520826901797595395020035319437811819605045654554928127682595485291379915592718177141588294675219038612807267574606574469120985115550816791824917581871315683463885902428784426024084335597272995645020289563121781849539254247561329463406240654336761915322679927561697572567042716979308311 - 86651410315341953743783340170610048446453464292646708604827028968908731337189037228595344630606198271125984525416296438870283410578996453072759978290179036912488140223001397416404096504294354077350367893267756028596758971206884230687932641869699229347906276208398886713721159774736091122577671230818727468808 + 59056165954943254792992935611663886544903787860610326686409428242745398536084094918683543152223340727802574614239976369602107709756019995523227170223762957650998514149044577626302151647059395294512223064652775826816435779231031645397416043139744679832691012515123844910529716562938458282729373024979093423415 - 80359548911660979924529243901957348492670140001574204412296311189176701398109377926401599230513999877202677056611747772130832055341203985370721576562878040363891143311711994655181085738416719902727909850605960037575426176339441124033623122570610923190191568007505753201639993351313334467275375059366653493303 + 15575014778425352563546386214447233224952078602592134396172448731846017286687199780894282345216318019962113327819228443129390076392451694401534448519877525032554526353625826091350169058947359930306610240330614509653962446260791392233650691944969681698499235045700521542508108709023782773037170507023292061613 - 72227061066929838272419507193784245715004748553187712852683469862061377245151511144808095916935743676992270061187054625971023590040869977128885226058919700158765759417921617139881769852316569758752731449217501101772654276108654871698333098789001852872746765017415414045779273650468139706263237111529554739776 + 12077907963330326129695852235405487482432763676975423256864063143968218051739204834890613584781122903802844800273648757850020366748642169897652815595491804608200976617254750148873333139030082881295316862624549514612331675787248888001209487090574659427852897703825492485881776081802765388046781853559516658576 - 6126476309686184999663984654281359503977949890855392446283254651349474924873392992022108949956496913688414478120883598739272419078091576440305966607639853276892131861956905893590177148997151098611442148394413017774342030040722086506874951958859353574503763281392210942510532953236849824516744793641014276450 + 20384954196315309347982257969624095238156103562888488263938575665713990322185992433933034971652064257653539475688092860706496279105487625079693709422711271645594951848450803213687252810090141622797329636527505364137808833747493540295371455320317241587691740867646642574130704068091353545192480248666143382039 - 71417986885118608010224949994892523190799461009087862176172740435976244278543084214426595554210893737918810351005627780902212424124140745559267444834771635359028584675950449513909654369038718788314587989246528496568763207767705935178414201658820187300018017794510458098244010824808802534151270968205680389757 + 31244481052134034050044931951325698959500382325191147022787687607432432310820192884951550133132656945728229969103092387639133472842668871962424098958007065781860346279734297993565096599078293078001348321103626974221290167968970000021448854207568001768946445019738372563941759086395984547272051740172111519473 - 72001549037617196224151581031886015165025744223078136647202054780481278381507839306371169744780237480538878016707512970656214548568170854430630822868508267750571663379204172232836924444930081076332184687173471323007547593340407582721166699210246737317295245757942792700826067296893096381482731932686729782266 + 48369237230461208378111290246959762050319598369701481878564591938667686163679656295709391620718088090704874098881339708241186048639924396620927299014868624543817382876809231087297328225345344036488562336760283441979357670021922846010612619991078644716204118032460905725778383782911841438665407236911963074074 - 16617150228000093393615144314043577127385224213230309095374535040100632913576118170115088869370836621822848247121630109650521438303238489979826051354786595308389241089155428575394597239833151712837061251071190662892996404099564771864490565819197929815251398352498105015847100533296671925712373989723714722101 + 33489191579513625108801232132015868118954341209076010257139268392270416487705908784388561402734341968922168986463489887578906427093007957166977762955433975235396183276117754773637488058983964521515462277512636005757901370679961678351527625905535512475955566977408289886839371734689797624069947995988621557174 - 77337615440112122146613507998928075862410375520799825132665356272800344532664507992940210564526196150728066185935476960096609353921972576599563622007783103268693585602970618609837188489113732627309258683167343941633273625688137113756231184681728319122588588684282358042152447200213993929289819279511226894047 + 64823477925749965376372984469875338155539342917668762745002277737807822464771279157284313578036488568685727887839208495779542987975667420237842212833527439865388815039480835851793703144112093192741737092869606442937373232871983759492150545358240175105713124804245503121683408593659526389518604324867839923274 - 88360651602798461664451823264451502584161224952150517646910622765375572667325612130522966425352872200293972296341887444920614299939192663926730560833921657447485747114569723508411863257195742802944445250223577939146275152889880011522447064433150102589217294828941692316373481221129238358321135905072487360182 + 79934207235136734067857754306220573822029449826707039060783592206881059167950690254091999852096231820782847154279809716997772302761602668382957828900396788716441640772298732465678396396750586249442428035653724464754339314574347403541180042083193028915939158359220988556534932186703982240975862206888426319680 - 60141987071306562593378480776400825645789595344080200867001998232388392708141555767713996501141303623054111905043121232622865246425599388230706321536755578302167538641840629641841302673886699982304922721635055234082281051679313996000736215284980382210353057063750066916423707527276444777981744341402148660186 + 56783020141800563050625520055518621735130301658841863546749848445689929080185030198183899436011569438720715902655010961581663565087292590753086935866572639212912963385158843291512481731772848843497693857242645637428994373948122399193344094631821395412792633090552748200572819675500755660854989173246852718172 - 37589850525050062121961727750479937666227401293916016543954271208722772690509955880646792576410200066570788921713889677066777512213771067138711875638896847124566790994256943329336585864628902468570736921423098381360911828483715263544493043583718787136155404566352910293450826205884205065211745034397779993662 + 13248900762657152048006535455280019155915254891346156855695505844397145129070264905901917279759469443387549199626041523035289173434379192884482034697964127368530362606856384551192939805508994907173383539916256005464386115897405467729413482396445201579089192386953428541701184171681551813351881034414785820448 - 25053508284170197628182501543585516308219319729073852283156162620186944095846083372918463104510162459916857326772777365174304537460696552108874012904132809529118176361432869722311281685466586662696820504085161152965631782991570483605657166699509369638391236877200520587842337705451321656377598658335721597736 + 41675218218341940222406378233284273445117798263847904944458910295301668853374554828541853791017952868119954995089444792695388502833734813794007528535555072133134059363569190707578344452298047369451583390939738318196988989224362198521256608375697870311615009511307946022267190503547465860368489662423722444367 - 68404308888717242030271960034238016866411373371662845271431285172863212716976272985250308361056593459529702057605516629115512847218360268494781707243769618671868507475415553759578662047725878987687180306274193194412144276172362095192323945248066366648948502770595868134841934918172125364793679785115568617998 + 29419121828024712006951666964941880378315738924463516104582162451149779739374037447914707339831626050472368230093893338171430074865399767545548046661882100241076816607485764344682620014663387945084319603153090882420695161796682509919230179772894200383151806478592240028077918540236072406229692821885571221294 - 68187386144095532573516912487401960416479612744867308756602514065013705312494616628018522854713845046466075512878601769721236770764510786070666483909634324717453153901054543240053342237056579654306897279256767854598173949102411917590196750133731955128091331925442336166114281104515774421634219384587322635513 + 32445200608597512541625822542561607749298405960599415964731503666823125348147700549901034166088724464826157148323441232252562970247371624320716811316365527789666568695746122045235022229170506597755390811453316716912090506405933927923359851119654924342369280254012145895438301052097034498086011112377442778610 - 59727074180178449690320950808074473585647346654820166828534604226550422608698213372023645795313987100354890899952932915034991051558256860816867064633610719066594765171749962237683430008676357039708215960903058529540124905969455416611581120513980106393768878286533703559178033478761900880533645879371916888669 + 20864968555291294310464334938981760380475336725985423598057411881613072562298676849239819869423056006426399637529306857586938458997112543115118689919267981906916817703830702409159100409525739653428432418616395789034681153078768601909247826758470392173520979563780891965306143193797278724533819859687489258293 - 47347936492407274438408159784122736305656255782743560229488354565451260694551853307997944912976257016014570523310078369424404874374776843628877897406985685662611430050823658419820608903588567356666183893114434863702214565015863789649954991341269313431118759420898337724759186115709956761305076367549378786978 + 63597988482370912341678828158499211217941223575515020818178911830370711718892957261234222140058387440698798184332455123146645217945699514213691152307792238522064475183582421825591357852450539464165501811692708494982697603284879879714421876759313554845595966077098092226134671314864945996931765128158345482329 - 40517855350974573183537700752711671781402816349552857401926886206804661607160429279821161282309449433887130776671740441021526482554776544783903335236897930388431560347398274780855549318050085214735010969285798812145975603992798012129099339796546771090758842839739477067501635420296219892892271657016528808078 + 31779679509404648265160067781148114886311931657219414381724335850209078394669711518689413469835153961217482359680477142835297188267863204371945361144459323869484893929614998571944962106990415459709930207333472101084985883849535625758382904338436256140320350558537444908416919181132927898174770674174792941150 - 57989927146584031630708503943214946475152152272966943419902700478950633002846762044012710781429688959510917301590799125490819463598353976716991568604893781320010736123689614378664947319005423121164619066487243519639981036097835824401509716829143626937907326025378387001041417848201419150733553224550867927011 + 67184034295804727324689307543825470384779319834470595962504138672462945216279788934309700217349709103271296918267785576297259310544083006687587923229848010716931640927408355239121148994045390437989127575387845379883694729698758029469131690199821978046498853191743286366196073875471718528574841756164887528948 - 9762388368689813981050796144792980889206426465495158396021922564476678469415058731363136922536261636106357448580334874329182335088176981576202013422049790064522427785959790875812208459862894279113527815920790321915685350722511346107366857640427623830832465080262281389676317363320348755800907755083408200574 + 7605763691859382147529552750691515725025442294097874898268656995475791940522797563281215162468988911433984859563122138280971138227761930254335097057833411220600259341980242235683556081069043099370802880673627022770217073852457613203449910963417560210896091089752648075880705473264769671055256159830679059043 - 11816104274130696682959798609024462702761762270813551095920831334537242080759617707682398954341834787890603448619399037291487380296733564029662740102188850752762541451952939286488472144957374578404010862718651173363610287236627439904016788551901244385240913747302974429449890346537835257729832190678424062020 + 82589838129638462171265837143978775132587416079396596369762003901791321578147509040102580360240986979181421656069249770557630843646852354016869275837887231733857385024240464127957533033328454414689763813021512771662454607803083476912152830376448450164182829469940860840395852723728991369583347528679372196815 - 70290022776875694201220666017107023369027986611827857302448213010034071015586170090816082569625178368007373312952537282267351897962774614884910062972821809000238439492186678120187144450549562700350572875203942562959079971163135475470631159224674889704261174356249476639601550641860213251642590309061032068418 + 43019489624517506600209763395565636905897524515863995279584893585332302500430800834653240009011260925977836606905818879177979496111661064321830144253493088424058829867167175329202347579506412919616744818423774992789321138667788565598844065528133292389698613441135772869650864164366440489285074640473108699296 - 77426616216856589594324990243513357837195063837282053899191832375260950489920396062216823808633453215926286082640248516681928943726333806861782594239767919388118179848246385540098001690518095804381338390020485063389243219902112595648447128256072871451061948301472386212522713454026327498282134492646028821428 + 33022215193339415953040447805384227234149799921854667592738519549339149097685404500073743584043458198796648636928793456579447992873202337925497069350623042538595260189459621439866918702080766732374754377649292910157391226695614141618283606797285522155918227901168797607019925175523412568761408449155170556288 - 74445347825637637389037424412618888556313489369396535742606104944339931989484439694492868869072186015699774750129267875111027507768317495282127985541876915199983337885127802075331521161167117421853966711647134952796715377756620257395044440199800859365638199468887952599237958363206552641455588976010358463321 + 30415062082001326881913861142791866423452798341515864183441599983577327812322894493594396288449397528145913494217772442810203815252506588527472909663121934782764850002388563634894171521054262305767412419763203645486657968590897673177255786273284523042412651071696406608024199522468177712708075235205376891665 - 23223422422255257469121077590120120873532879212952850980467654122572234744882183385042012211547154142570890766822630619065936197548937932355742711560024592875767767464861142438054678521118583927280090952863099469625297243117008813459741405210986443308005350117000023146685855595353130083499403279516778832038 + 94423065392854181613307528880155017734482482524854307738599947724573791679851769975029449005789546590893587146625638434453028955999884596492005777418357865364176106965683586943661773153925519493189693450787159869396736353530255913476919181305943433394506649094093787755766312229554400436807479908026234212666 - 44459547764886357410052104648842451214841576244402216958601503379150547220069775009821093311589977174318005886222723678843492044854479176560614540649086645476599307895790702261690059785133199530861035527875294594950586457273465092927937362190800359367491985169536555966953959310324445063614481960658681569413 + 20974185296534059484304084724697007568998964166903951606913640323673502795643269053072463819725092146979255694036179875147785113465044573015589769190455422448640373192342616163561143998286811958421392380060236772467613042666393489097869136049248417557814475428331739938553182878379497800432598144092382874715 - 68727478628557767500972883459339525144321412388655117979364542191330810116552582863588095296029655132646040198810676040463985276550228426078661085554199016056802220891739365441612189482476824859328278808101805858580007658893210425322101594368675397171278104004746307060640715453117087487400809827511055084583 + 40003546318218467082596406501437066140661053373063169699584091563029818587125367062553934140602361575882220982614131659434918705070012063676406791812482638513745369211971774032658564186213344272780209355312804828805017389023510566582130614072503998377019579294271804595991733549453595346643445802053268972972 - 2222579515358408592260524541816248788477143690333750183978928368707383178342022154700445083730530295697023895369171282117421530210568761025884866523413806380339927743185746226817766247099835086394232253794109358383181849745262774830551995137926196205117606445799245323114371445475232552363014354723952480818 + 53370126917509652574310985015309370273560213784453920877320971564301429668764486755128727308654575613384623739691017808993816773099495214568936842018123781278527345733138859569511641014734968280835500599347168351450037730349596169552844391370361989731302775616818296950942240410987698052763148007998331158035 - 103986934234967873416236176641719034197386382033190763872781539741296353440974202877131968666880166297327634596565487850115153174845225815520643851271306044700116278556794461313566608402995845424407289028894958290416189426073379198950859198558800076083267022305576086341291884016740209907964871796468562968587 + 53982513846121527173884165379714145124930573892405573648448488659457853128974779206702799300040917959826206112035530482918606812373323220381521105121072444441865134801783134180174822799228612477140497634353235949416886003533519681177384900182982306911718848359558459456465417752313218605580463855900054628155 - 41196483639948512885091430956766950157363509174513817432417070440145966871739473605801347324413663385363150643332507647284249320915189048412474203393646104302995892142588505203489414858168453737510329553974662427272159559453112629806247149886304090552847117767127502354558377995525284200920614185038627898865 + 76315760310792609630053866873354683148460181705928138590962003855080769144871885829615091053657115193822608250163334110824494868647406803116184596302825786390167588661007056877304012787427919058376299813458194925359514624625283690968471969473728312028137686063488373110827581344190632080579401613334745377884 - 17175835168087480968138527864126623017069576366220562874099199474389360787895590632481925130923588385904822966610661452614275945351545607801718728614798802140964317824891473112161490444800476693819774684140165739781924614035008964832151159632290223756410407217698225332259039958643645913940894005906604696125 + 77797489313413062454944879607373173196629742338032584841207788830982255821292113840294073913775863923904704645959422130990776241773698586515793659827839908482169209787215729582545808754979523361119965991907052071916505690857290949834221611188364386372250867644790920696477787400077700644209348030160696276728 - 19040106358694195358507022262120414518232932242187653053259848574849452357941923092583254295205593643097743229825370357979361241325374382698384290703326119163148294188278658361174233904717604147857719669835345021345389307140233586569341929874116656063480794895608244151707415092384889974084058726338673425674 + 8488673186677444499679139090916579127491401714751373224370878915805812210516409378094624116129127592772579888022251034806207804133359654421904780759673265326665730399217752634802373175023899272510114789806978329317596517169116099639001559322504901310095590452506604190257802415466844592735400687420566814865 - 60386558254454699741579996919456247241424589284993319131860875591729644660614318044884827869054332662322248149325089979731116140653080885439331866039909539918673191750356396150260776436036494367439323879370972943932286211226610864423006898879850361416035138826946705490240611280428329840587085057182389522156 + 3764865971335754845697711017056213687778570067612135279115945661501174010735048247529307974552462534473735918541601443983680527628383295032915155783936225201032807325819920835025012752381797077203020527553140266500583848270620414224546844517021873342624370042962508423180976909954933658349794039605385444079 - 32865497814370101842223496448366651159792255053465797735073523004903053744898291594222306788650886338314137417243855671574764312103766599256706834976972589280596451392592038122685829222213595072118998385942281919626074834788604355835013137643465037107774755425556443917442298615435467648050239135025750272430 + 19884264903790082767881475052266806086392098251397315653384530698861680546748257038089938267044408588487998325858021221378219457500889510027427622214978377198116763798118066318212497514385542784707412838912207904564412690977556884320780452094532538727400396470697629954164579095548003647480332259432140582559 - 61565731493684314767729954903539242423645274986074803878278297112446189404391839433031718610084767354754474260774660558621384909611352397524699653790044247514673194657098158709295899375761094740447896194641763336571676718616409730431923248253958809695837409104052469943498153221774427660840011125015699006789 + 91434509428525734743681154744274419715400340994038412176633715695319815315131564930324358099047375610047192200047248588543072142895055921156261289468322469354716216875438904303786156641792276589396654081634737515337928965155547394969922045950794323130401246411920465834256282346947978938464606382625704583651 - 32043466181180907162902088001742733724785052851705369933527395098946387896327931218357383350821933940005969982773063469882610865465175518584046774358431900486731121154668504402620470602543261451405001676187417339472389926982238835941648375601355978925846385675817173625841633584902798443329699518289402031061 + 69214666080189108428417482729139653422253342701876036961088886350499942618017862435924275699226322586794926998481646608990413664546368805617002591035891308511677058688716760571378871646556133256684422056129057724580678751726961680259571516786196882507230052531134542483938359521387678941270529227066570787820 - 92888446140198267769906402095678086848063400740869293924325552009686155958086981126945482742252440798229071070262992136904193866662819695781251798970543236410808435490171898853753641613840296656134038064463557785912850874469602306728302343110918630978740739410289897448968653871286980609858749275926060595354 + 73534345245038096201147512210111760953975797615544775647007605643615797317841513147753113139720688768943026581390712432859929646427105442915129708192940436339004394826612607089830145658388283820018617794518473248684359065540160909540885159443301714531722167185315953700704119333247410008951516914478179729450 - 2617222465855904392390879600917010397463816020654395483447287213259561030631555304443551928671295872171082287118750007379951494830643044409807885337541547719523546740686260364649403873075375366498090638916420540037119545901630535750703638746751139414692228255447706471046886834398866489304640723141805751513 + 78516670075791096328690157975111848261502634377514802645685956456643177276000694888694216760084272916134866592167310311879803810298790019442190096832519730084026073562371796661014895985048505280882179694248862121491851282698708321617655299145507254100815894395332158066943918900999929740208372940659955629515 - 40471744654500900404369724916901869160245141273240758078397951115906232453331481565221077234212076572012100544944716611577634101922469673058372317911495975724281891201678897772166167615522513993383857622648563927244253607131125845161153474350941306087249742249765451000383939568587601332009063129946160278055 + 54522060221646067910321642741884554112358702652937414121086269675281068497771863019784460478334039115436784119592175824008736939112900738090350342615736032111474382195211641036296879568960775993409314190742334516908322729321874611905510589977123928479459130775628079577928795893698143340225796349567312103958 - 105008054984787030040523532844546553173813991734345231801894709640481489503020519984342808431888064399888513042079021934555563274305364779109002128184374879477007435882126156880512852165053806243482454998775413891463677994479171552306022022570321764913613930389986169257720925540984788382964171267100668007902 + 92205674274975012098419869064643232770538047035881361679145806465400407912000688600415299672176089150484178703595449260325143895479632940931474178597669374330886322254426232739302909066252037219269672327752464890259390090453397248092519916708870120291401577012348012369863334324357992475061041451990459072921 - 9418358652300445929271668131393580716683692078073596052504395016827743482756270096691691564348367295557680349729151435054578981168872290973266464199503880616940935004441370749695822650449341061537163343279574128091004678116563572427145316828533968222170077050945573010421692356821282065979121702884448511253 + 57655754976845789896973098763401915416916819450081506007966655738097667621703461027947502088531762344923974706109655563620950907509341010940096570568441406539246163312053294473005406148803759688411462814229337163466685377916405570826930162894146833233924023096519131604576668352729392984629502925767797994364 - 15735697500309250052064972401459617903800748810254366979363194920651635348642740743103217791211968976338568090462470064002826362420385059804476790534176768631443901024214750102430801231012427954981954172935176145785304346090085726377070055089406206589493459244459577969012988592243036979823409219416435781149 + 30736938676441148279967400982417766787296827666016663948398422299413688725583774250655819974524303121452738990280000737525005444618066246385664579209417816097659680313057714671025281364099227755336544844395347925399779382504709885049961879041947397326993401895831742516584805472313302655069845383538023802585 - 3301243293241065549533125347289643944462451422133834998285471821243905225563519019857599111048380628320756164596418584065591527848815676690388281975522231690596447579208153286520442287605944693756753636336292784344965758707246784143464719160757693695622567215977410947411029870290770605707701027774021892854 + 72838715557927278911523518291257342869243833664340207916127368681670153293449973791358776012194979730561235776072405109615421258427620527523481657318737879932768566994976954048764291288135341779984992293965126174963733792576219146512410662630464264457446869970451992589834784890954561591480008947156162941793 - 56356527322412359460774602378633786164840710408012310216497693059755575364512958670915654125519692942956713081565108021102692186545447366925135707936548190523346743822333508701219918955559465493651221587339880392487970171426085380899712364637039552015806957766754487319035859441956778158532693001137189400551 + 49257393260520773044899586946604838051629572146729572421546023844660797991028690505527112388818529052054367884796117000615494031500194443639408826085664760614964969773503713410176514966390498086407962774108347267154669543596499964389846727706644633682530913797417090002509341092637217613907079073134677416931 - 1171283411055684926939492659473400788424656994970050570083304687625431152892166521266456341268307870300148160026735731680002739545481334296895789333047344866756740412656112918589430701910929156739455279420225372807188420162924990837630447831700303067512149135062728394509405974982699381714318122796926445584 + 51042583466180353937851298194490638154780497214214953890955148849554725582894437344095515357258317567748508559192622136284042450402236293439236887272107949344382061070301320209026724265976356541712621410751352415859422396094024621195019181962947311033706449047342500291450042120027234618672938523810181520961 - 4644520156031387543471907125914151689618848567267929178666029283119713772447127881322902413425016432487034705782561779721123414943104107894352846603374882040524364270398707923711100853407199658396385153991499720832071629072797778341781108410264185124952827413324131333931102920309749668752416844239450145547 + 22662205291442206857501442006391768671949650622156625201981637064982995187425564979892045413619930537553411732467746860123967576711629849234879032625872274278134220903633077238038719506115601289865532092647990528689042008435743568374811562316188614874269949454816578384504561824420883763027636511495497622517 - 90687760073488213685287282698657366126061964244946322594014249580474407794587934525046476004386103636923107150233318048071860360438420790254013875293811203112396118220607665421739037056142896769710408189857888393666265701482000234772460517982023401202913325824917349584113039138115000512516142460895551831393 + 52710716752883998185465671092301881591669140246139105141308575672154218391756323414446212538823081422374806870505735849373554018538779144133844817023029668900113869350602950196890825124213328367776452180532219937542520472182592509806512273246638222767988485372920671133742520571224962314000974831873399413989 - 13534102126248564160211568315925465767510278764135277433997090306331691614740990519837919735473797673687824927796673949460781774272821676533685336278192053665409526639597648717680740910667852241329028215764004797561896032669317273133831307799677966612202816587745275166196222633392949799948499249184745992833 + 28340638879274170076160681468215053777989923274642965806830359670458226018632970197988213071142282286374509335952773199463383397747074308958743187937002298996411051678311153291833252074001673196336694829045524685979065444662883170117618174849096743160621079379623992447976389074678405429042331965284563368111 - 35576242706143180371265601304473534405830225638912514967716957603981592858091535349792913415647055913664207518623790843656800092310695641896463172973930970880162703671638533853038838577216716237694039454409228193726656229500043229584075443496185941847736087302294576795670702578454993359478296126207091673153 + 37059379326247411916391332406072371400715423335333861201180086790502780865447018799806140766706462821150028042291838842002368998943457397595063251665843093337735324235430094794197097166245052201615537819625381131750710738085384728712100062664524546664110021110923645562011031401887794996111648703832754800686 - 10696550996347525337710301111678643854940175040760631926483188477017545949776871356829742681483450235765961352833420616782586428938732340759369516573100002302790310083758045589035197190780218073681833657659820543630536829347780811160631482304997879432699049216818328550998673183805337020023589728315924499160 + 75898235832178031150598505323058710679208727178894767443459782474711651357137682173116045637504237713263338634837523098961528129554827834145260062607112293804525850952089727999443385861777322458911136831081979491447920158132536082744072525202763043739607583747671848958600190802449631020737068780459268620672 - 2593679013712896326050902425735480269021845132230832196365941802122152438670028136082757371661972592891463808115027489100579545068904327329361395994085964502263486515655761141334178868224999494915985063314558604040123841793004965527670877866889168907074219528204174552937232881786766896592722135958211128296 + 78132519321266695739472793669040626210544564802625362358170168088172990780607749377430792695371741900951775133639139639250255831145803890293968080133554821623768064784461462878161185920749083569363523932233264633197911368112817528804784223252624054755169739059407461518668015796100982339837987901024094730185 - 101909191775475363023373815223068373414377476916388589496778573325534897948514126270047464118578068725925334971220189578541922306497677591788873739067106693868282093715163762313171594332423283843615596969045394796971212036955065806745071131947660287688426413993876890999385072170312639201740925634715988813879 + 80651843119103707906689412686835082419427472369033227119071206354342913518507925525466512135010602491329167055079282645351856666279243410712238933999848724134737041629922913537436725137245043845839781583979275938342702841598567773031384755467772127215197303155279483601988790857896940322431403138235518980950 - 91608713977376515852905093545423682331927672951952614101859512048791173697027303096493423061884266074834984377600169682818071078580717170132066364770232830128167251968385104402891477462569640236134517684847217108260599296172409649958632347698308712787372201356977512924840819040984598511110849078174689559520 + 24388194232867989144476802686056271620867363645033742780602031426475691332001904451808105050614220527495468117685561322030955418774297300543608459964488975545870306717777406522265405642905796229295315303553714611260494836230008240632558701714082972603137082483392701185996080405198171192687551257137045097646 - 83845261897667521398091703998761888045884625619106909169135557960291299571233125538448902096996581210010483088790531559554640989246044383859309027593143100184542081065691714295045804625340107844302524792567247672054007662343368410901120031761185303992046470274661738090011821995679084349513140751593052177978 + 25653269506897119822903120239839038929433725413880761335836670697204296096409119835634322663841049415155768428176914600425300798005283854028023391947115705930796874144996875210990584004627942867631534645409841666639565835450809717973927575583266280203137565183465657418332574924494549373121703253780769652784 - 97548379895225339184601035498201553033068827314887072044163147908684564567428444975863511254583597748768684116754929769914264046891036718740819270283990866107735663496366804075406888186042694782043111199563424707192374900991247820505647583404329496219929149135973572252824810740434023308395511161697152430073 + 31904516142547884937642780479061607647084113254620756283181035666002565311413463540084124613910697891625874866565149080760855480344256135819379777218675507539572950062459139465900492384806165773950303664157206017816459129670405456950335069599080189953841421639174375256505024250201189364958306026532990886279 - 86681401525594900819172622013319112009367470388669804665160917179008060117586962490036482069984359404695495968273075615823785902346110527727820433444678002718087700012757185703930556597582019391070772329405164743677792559075884994742676177998752692838782452628050573808036410646181555471833023905954380888363 + 34341956827709230700431990400561547315453964602586528250366193873218722632882603141749666058214608104295146348986909046457902156468835931548712707257126365344872764034357571525111567800727846597491299346776515322579053868694079759795946356971166541187720002874382966770159490298107774112345758735347775675266 - 68640240014991182108303578511448167622049143550528331106533369816020942150519252301311782946577356998448719751431458855426370937201232947344711731917045063802222861968289104456497822056387197247096757595414572245953361443464152586446216105106056055683076102295361524929263303248145801944444952271268203708337 + 2681173939047571624027179407917481111086737922348205540757474656696911071778197368134013157339068997523264857580458813942277889818227902759819348171655199063201214007778035250512709870246468662013638153246108041012178967130978578425046684662476936546041133553176758821040627698974646187405980335924688395585 - 36128328837901599269656016949845931440518039216432579150022317342816157561949432059510760674560848904276546110172691802086758389320333013756411144002890865756179947058459050094717585259500595377167247066005094350740430582470351111596673114889530724330965295014568497801598160316368829736342343122829419473144 + 59879455852539151246592842130965676712376300660972378132890142164806299984798984820116709665379878800524184984108461341247458119493536912934032895305900973565478487895747519044807667182160450359923383275725582436686259029090633391498279727902832583319653190446457350003580023328018263609344566312802511819531 - 66056647585097799774353194571690742651856381794234387545097196803825673555862540971512764259928582204649232918146167293945199016571855445066842110704987553640225363109752002443377185502951096035398201099826010563191669016219988786333667650717022099276279200890126311022648903916122087475877853826432585750943 + 56654084112573417020346292957231324429042275926184968894607411753671140944550098601682241215165289193650470398070548183287888475320016778469456014303225716161406815733203718827119162637679874806369427010408489675479320604326050476550086381903368099941202047627918053120356650291240430643914227623178854575987 - 16385579289262136436346706908961803479974196540271120125380206523208556940055580084442285731672187771521504597017948948773572726621970776424029255558753775018681356853227028517440675800963680229640315963143194304140094063109831633319604219453702722503243462641448673342284217917900747761113819997048595850049 + 8892019968034185277738936287178619173748107355785631421210441776746483943460041812072616086664023737770140996151986192392485409402389001660893699790447416221134625406044747104800123228677562761533946884845659084525801788061878171102077313420930688809573261099578941731119875040093934721737053599786119357214 - 53619303887813601800332531701520529950656870360359762514353953698373427063567532882752966824123962761531460152534990316172454921626381626075396292542077861112658597087668194686578213267479964140990827049521270035331479981815461534560777235056715776162238015765196609212202111158497426967813283494944932347549 + 32406033762838089102764031293533729241214621857358335491113474535154231061883772252198362047788864438371159122112697342158178925533680986019986073478654783051084494035451660067374899746661547021864859806275986709466746494793434349869925380243321562554098995824186805597577355130639048529513397299146453182016 - 96967368391923090421883115423315575583053397626997076376527281904007748426938695417132755786091807592470407578629573539470882198932989881857774780012363699361284868160821868843163074577252773882354628623875090683056545260329297248855450418354259370856027559572658679115892919486844260911239407631028643591938 + 57627518460183402412653996403396770904700062434506466847730502031703017712051018031574542711529840480954249822230440570421630017919165155330999753932311847608082451953225780803462035908309083191846279277790792193825033984218011556365224083476681288410556077854026355074981765273497703187034122565735545736624 - 34099214366447713598836327405703205139458611985321787316291680026842242037881247954197764001991335852710164380945338379563477686299841892420797035171944213125184706673658728477715669926306382245885126382506245191584129935938107176919889208202324752647276185745771337031841586078767021277879381240470742041286 + 73442237581307386305380264442444257934574255859180423743174861177945273626294008644982479129697489362331816404753641754734469528558603879667775962388766435058570158361156278452396334134133354429322821996302948836045892079684836612502931189976769308099016632140527610861160776563966755245790733912967808331840 - 91847160309275997971687185366985797241019523290251136412925614420548462760306293876657391761254893812007875042694988382989356120217838474952541391017647131742810855433104877142473960610813653514794413643060325309420717117395217362802322721541545021885095330288271636272214229246098961643712245361693219533624 + 46297846647428547455334466239513877908307239454854837887204554313706411538168820376719417781756808895069750481134097566824180202889920615621910906230603284873528432389533198471361502200982604218894235571351424873377711601583205289892055499071316225013455178650438351476734606158099757771075881239300351134311 - 77464612537752265525732489642834502213038121987775491021208756969678336938226503517383688288640237928866475404812932436084143316844318045747624382080744314967902665006640973975640748707941869625894140790920961108598104156477364452702474372475409649804535611942662813110924889577685687930638862057599961056762 + 53407342754893210309574819707001648801888640077008098098331315619727385618563819027991345316569740574874438563838251586243583829256160166630274270976969764041190546496118488620729711535553698075307097319465705769995663264013560160381585691949235083517110662447050749122598545866085958589088376291031744532494 - 89564285553770577422525987336340291637963671532559132604357122011169371556076240057356589329100977579062756809780597282998330397905716817489000811254992140643716994583484268456715105099631236802480921848603660050248990327282356967155129439360665022352825032915997105146338733537036717288808974069860939575148 + 37574446275206938621706328700156034483010795331357414033074917613812910729994669263542630853255719014790733168632233026545668784682303213488173323966655934067733326820863892820699733043080986957586175823567166337048273994897702373167630449236863560164862689352082416946142811156687480694385099795650650339255 - 23208556843765206194949770661813886908472095698490218942813448298021970393669816792950957839173656989931006285750625407531575837353496030702606423480639615074716028348702406104080505770403127845921119105164948072938807519517505473649879208165894426722208858667839982485761889528672357929730558695470219594572 + 77605080278681907103214276380000998693373464947327599503936548062338700804576889089917698107441115193537040394084792362617374540650110263076367867094335606749707526992910319664909105533363940981531139625706714494637349167324156782442482068213030054111634457952474889753720298363628109991053692794919898192249 - 72151714149991172261925031026991356516246156340448895446936462130827146073034127865540977706783019305363767696117894803215163117343286655133375536484992467667564110683359591780903861075022250293522061601497200679056076822042079931431152131204197253896765501545694449223126125195926543995596500122190276820148 + 27610111722835394937841960687706476278212591000386038778832659623803189324171522861580060509742804533693538308849278259140758080137259286941792342014647851613035432402888653883118025307907644602627967154079679887637936043689465815043294035003245006034658943400013684287095582235239620761567787133972424379458 - 52189799788848970208409762750857255199100500925508891292854170885624457489452144700429066243643101839931002812926006143192649940716018820348766994980244011321454422488627190646328736928632858688915129186621368038313383494761357776648495832001759374924446502783692179179631341658954877031970096664076723162506 + 124542007191783429774626564155316862699028715781424452396708336407157022337846290283975960870783476122428168148265579540650971416907541459990913278451727489332911548865799696385093716917184003066283707407020739306247798411150873883122619293711138582276018084163111306905220460950370296584909965804185822717 - 6936835204753119490216589920387890113869774119554341852002596700000972860704890526999165867421053827786981225166192204996704047434325163315554865486693881442834149901369349696525045440937651589952834280328172284306217711898345453006775758644852235936187566996969048845750370108610378225454759375786636133387 + 94077242702905440172652598471177622173519903484129389366228766947630134416054585205319063670544899574406697312143274453031373313010299692672417504472021386334352559249378479840730433930177188642141788696465837244901881491977093099688284897201201024197802179367727968105735367530493831620267998171747289140903 - 99294342669763373955503638861166149368823513333948134483766612170366261579213949876277757349376560036186586811051401866563767554512474730557275093465776661320471059843309934354450144382824282298929490422030667795103572784939165227641244231429932855820542227818272539934988165537541249480181815499966022393661 + 53879646861695633009153111150993902598337502784722070425671775540954905280991582050410418552375522604267494073675433878518332607056568849485606981042789542431334374593148174382695047993771708350195378485037161286657013328070873725321301622959839134477881015857727391631327205392285247916580125739408541295170 - 75603864401796164471170666829054776509412262020869816361068532421388820226793120447882513376884151145789598496828938162646581420996789299093672600127473759941587674021454223717831576132755001912922759500301856528202335825059026827955721409232810449278498918489693504518217184119077659631472841074102833900633 + 53403629039848107895199890896022320895050999021045398692420685390385243633993620788136066575092741312075383924855350368087043765163447427668357153503813251639043293670072339541308798604891524917348948191820580253329760889019359879332141870127587394185848517483322459829944264231079973735918617306247080708758 - 30176327360290271548413171690890376486136570948457415008703842331303545675846099327155273400757091194979556970934010840070038304888737692029596827410138324538735513044159131358616731634550858779328758690985160624020443697920651465881707426195309256998436082422908542724015985003627134610232314232023103668551 + 28318673531819163489442121656497851404506770262807812685115516052098737394548144922850851847744821385857477260791421520996779920816596997206078580318447646616596650329214871293041104886332381595871197041403975396276652261267774068149822904555196718486671931216445693773591032839613018638603697172897575243083 - 28871583748297339992408867641772635460804982341674133696838770441065416330908350344350303920802709327156121033341404763222246847685180075230611877221448079554451548578174177182552311960086495144069467581218697042363713976076672777401450968385321700463479797608913837330160837326673639190864623517430008636234 + 89048184466038834873351581999548977571429400875010221909748338572438000096838141345168737077553256438551157331005836389895587894079939327083148023696439127547176952419919273169931461662978041723149226533200377660099762418422669414236501017815737000939067693320958396795216450623543150183658668055647411633584 - 77165952903904220267257619603788988674445398750034110010698901300707870781524967823288496267671588661222841454683855023556152982869605103315778311295882142218544783117014566769594281567134060849048574146298679142944573291362503309425100958535683962002363738597606095099011921764434932794325028734999520999386 + 78911936041780885052407396454250988198192544206186883840596632138462041591386475402926866860048709550727270148788408368779649554648572675300975245663448325190718166575350997254520051050939468261987203113543682331871275825485794397238864585049793472799691121438302237036828857077705259254888949160274142217168 - 103031636906483201752245193237845204746313161610641271108312495421791020996703570420124997061509092422379136616031679024110931295131798529801009475818913351025566077321904288383432139212955300786886407269244980867696393001589409449844943492924400108314699480956956233669211509133441750965806734461801241551490 + 6067450842380073140283155078964452600243905637166452931883338443257440503899055668123308228196275879542244602535344319171572381240508464973907972270754755164992906388388643548345525942715288042444133039614562226900503782916123308449016292762894343447057252344905467706202078111459015266330435009082066478663 - 2224417728357790406855947683854957973420875774419866599673460358413967748025175063103329694351420713998903661512306125772973150240142418828673186128899858703563972019543138951344343278045314277559919144226956301394596071485061964825552149628896230766393686275477015839588581301282057020211356996098182415758 + 22452711672719778178550120349216786804305477020922915564307802386954655370165593832479882499467553691742304540216710885497853049875662807981380009369468281538879663402861794643204374581033740646090696734134404592121832948483013604142303101878095013707408450837143297193798796104132697803091934885480647085202 - 14765451912346971474988415155388373064267656696630342261026544895331291539565269256816178220215460796498808436518545196854335985052575794378574847491051669311925779980338970314601896749991551214733382172339593635700047915226540806322582935068840935958296232508392807395104854627563262820434250161629815458365 + 34404204576980763695714815405613489713290843159290204990509760058532073073189547959528680523921299126269776329637335260126850820589670546511635535255613195729991474408926711093887737706795802452479862062089560479577878732455000892673478133077065158599481883697831053463776980508570960820672436359591741259505 - 32845555823217395729227504206954151168327531556751081526010888123119336997173416840867919563720936084166142458285854733901217792451834532780415817910836430905853335682489247707494368592118736645362011406828603619643973391298425801391621209583386165195317281779545929959822282973517261494004666527064020778670 + 76475943189117631326972548246236156633701086843426596007525233955225445402432124193937687079973972512886458606063540280573551123190876253504344899342896150830852799851731824929768217397755528338652573918919720048962447601132292219472149315808871573519784765386243380726591796717804001456125999386181979002241 - 6682886682554496499512109395780851042253900698937739519222618633998853814368305813308677265390375884857813383586251478891592492312817696008759496980467805266968317481607129357959630395707237061054113664442452882302526597721944414161033245805917322052531599874964455737906045805095597748287666144617868738262 + 17995634593471994520444109918161630604569474023299144430104570974910265891147675258806453732147958484176282878328337246693519374823137621144406425447546298691999206961172857760708828392061842338498379864453716102617799654017773670457250752679415694164788912771526432135248397819055545582376605616842588753198 - 28854789441271265301148393882394183881677584331449257021967997517332748867301891593528483831569007617775563347340071318058610649798757771935587554222855734207077518639887824408671131444563394282193804429493864940654952439125145619836745613055648991254967131405297545701586128443725521897494094380960085331337 + 23930287341953673685225319747520711983776543207965685598094286236202623972063104912825759552473011853028496861479193333597213710985876491785505437282127702003017556078579192897481825273046763029445653069280829221993826362978058933266521140653584950822221058760336654199240130089166896631200916687587716146138 - 47162361732346514330331168809343985185785394300957343401925221657857272230201949217812404027246468066994559919299597057234253358033050657558557886927198954999471575838921727064075743817981418305550299068351229477136276903856639972715002413383439282648390105770326042557093232053297435404149635008635948896089 + 42369743251592110526097625950572803882825056372273150724168112448410439807978120479321478338705614703782058488091618616081810014229620570886189732785758807917012302585506492247030129960663416029979427756741117187240158348238413900553681922556606773053818073917913801395393816877544240129307510149394577023337 - 98584464546868621391686922527594958999163003080563511827691261364382351226606099173821066034832907042361816660348862957153786461409933754742933794337251321093097482336661837692304290049625271154264389607218372334932225051369667410472654705924466485350255048849551814454945137890245898185191910018330994283694 + 6745165718277949736910134886011957767420829502130829324446905007977470314834629308899605968723024095877055816492512032882691353151883407155171368461094113558094877739933048571095885843802158780567079506293621904848121245012016207735618408009158113089234220409985443473562956570552120250685505004852246437047 - 58942977616054769033095951040228817321643992310372954482840931668721689243062532303039448756115136841917370416014608045752867162579292101309284462723698408597665213722270493302905265279506079810997196437539641762164986860924486200463252827791224605943189377855100475123002357070797359110432117119571956559608 + 79674362236495930739088252263898228779359229149644602049941468355537068470700897020776473691881355648025469055074824278847451865744446129054947377350219092464198953878870973207983253667460481067612778153463332561552147753736406628192949318068763913191812307299979579967380006447161387355995023097113161953785 - 66003558958807039728211079818070685168103787798975232107836680018711532553545683065951947168990746390320329564366708861577603149580849900376326039380411075983562752665830462075872194969221632511753199896414710973670114600232845171644696691215896709123269283322517215960647145408482597146378754226596236695382 + 79350972131624538384817384753644213531770174556547762312573255329325780329656776533345132405389953674932702100121809128154131492110992694458869333766736867860463543282299235787608467914708841149550963330060824866917787253631573521999880868594894860987977540699490759665402548764875663192761990509282698899821 - 94405166675312836588087560317010381659819227149902690981054520498563901817632336766235775549993899015257427002159334110763006449185861522650802791148158806907141859300330747946152126352209378582954013154033788429166416535593479385026456395920377289315918194415915027141621528551155820980400406399733412119614 + 92273877394520843231917918799580405323929121374131785700804542679213004517473626256030821368848756738666044588527923052574702666564684532730599673894652353124575513650415130163945252775188539598039419627178082070399771957890992641607638236934036784132526392750552536025580283298825771813444572392248293288756 - 71637783078080011339634994074246701865189401136346647672551729562290061345649051138887186563578946904979709866003202062656005534729519884792864345690797865902339925809376738677819098911602776532499851583555303176449387012000392914696790632937375006859891947818689750224717095008639887172082680188704590803200 + 92240284461203313377531832127351134149584645228397354658945526765084295664646336119684927163232998638215088736835189546140142840617152696119534335000554451434557551854670360173766912944398118569204165933199393178136308119319729993638711812858448696702073771827736698814016952885167330078540810107134809787476 - 95051106927260202575113177338036509404125040800696357350888158974466350933005418554241674356084951534785204459556035802537097020676559341656576978822841764872878173203918524216030233286891580325746197020571841792734650447687919478830708465951521275974692240763449211915632386847972819158838102686098655850785 + 25997147402557995496814495964338728023337868543818815801330942244251141903345310259966683699355179986428570798766100556913277585716967363540643589903825220549189443668721619241367690573123931600340953659155249875930408044420095456889540028662197246770188802662505919857913635077055126761251075191386645900547 - 6399323049593949947968887694649906860971598881456820375127256986958469858986115956021977534080281215997818437844242710279038312418363745553147532332902557050814664400557892993473674233688065542353044612234379253178451185055726266987788268620647464563931072189223069405472909768118906962551743021792086659193 + 50433359482668499506365161654083961627397181496232989844833032712297141399084357991781943759574965188255790383567822688786496597417432803326428933383965087118098678650433167970801029320938261697649147966666962784439430197729676593454332228048202449244013428051356594193840581094873055163229225405147057907929 - 74300246779397673115646256083400497254006129673344350288706203317151232538699876666979244274731574701604391437261481236211875435825233858681896374451886718818758429428282281982130101092291885919210299595314828429007560621828392409820626814770118552437905031992736885468960956889681654094896132922183787698364 + 15583299479321342079017310397196160876546200707195037866717959039036027066308013527343899268274811420790953862617585485441951744701001454559951224879152263585346762702287518623461807680781832683405975207074901100137466336225538497550257986006734397534579119835787814233777793757320522520964858248419527417479 - 8006779575834013661784873042455519933915765805119421255666443282050788304274188101987038827009456897475213345709694227219178381773677380917604907838970041265617530556452698102655171061318284581060855213199635736600964183325364740560166004245684133704041058657744981967795814544183144791828259407370542629684 + 86581336854045884994223855222399955494853899885077393739184652790322689784387227688499256839954483779701982069810123440242992736272912323504470824058701162592026067463665650929507214730388109239617308662579643359339294487363741563799194137390914103788762973127701614865824420266443447123339477923927049029629 - 53311886655285422565891779496587781427146678076197368357955390819220974928431094670609706812229352073522730185486041448948536092960517433605456105116396117597465897718812859944846148583181773101781513309683473609724208558537325277353116055867062738263824340702505538537665672331959452657544130829456780827205 + 94059760839974719962462063658480722364776517551968642711628708287500902298646582325832346909711286906065922739560673573610796431395093248744118277106379500255616851708662823096899351610103774559080902570823944804799264015878261501919595715951520312203058122600581761060991852449604195742320790200132528468697 - 89925568044312146815075090871441322364389527589982876641110135965784636531151812540510206866240983140718420295691453143071612555011041685066825357734589313821644862484356591617825251741431891461264729545536416322603202983480287740501874796831850923907348232615061915812602997656335957033245081369682006026129 + 55649219294716240880577031453869356987402762921984025091264103203907350438827748644852680458649830553651655243821716094856352678407997786543804747291909173538227338005408424395719215996432701277037344919798036172672800411518156468885475715226983872920556174319759452859007450842504384024361699215598518138605 - 85493006240482404526703770803956527168640894255309937500625485201373771404452303610893519926845413750601253047443637207632192601419129549713078790388476993271190230375945887724585076935417639447723701097263734631855370136624341745041541131244415222045092057795226586432859340528358062548973284897631715086078 + 1238376337788796953147498765205287937188722996917250507533407669402768127645615888501628977845673728412833956000298934226744766965769902197996270726484435831492233431061493189766978949792620348437994048558371857087857862584043385434494551595268170155171761116608671872493625006234114598766824401565707277054 - 62615422711221780020289342766397971933028316020117361066773813225733268200543547693403094531015556419583193764623167387208336895907482205692751458944683545739965142151944517487813417488882550709073377274548611454293139893438752995965526550584182697717707645564934534331598568066406720780780139784369503899717 + 59873227743391003801002734415396801833521743799513728790147698765556082031977818414097215254844420390587866705381343240370013033899802531040323203981507898261783670107681874954867811875617894356528745665154726656679082989046632531720496532272234223965145345241580159249032698068642349181028519375120295574516 - 35168801753329605117531700430963877621608552296269682740012330552428270882797030691486606647679501972749552731661702604106581286768103384535565090736291919294634673462459238306675832799891982156487025893851295610444388081307280526560137674462048053937582276003022971465305073889637984605863531513401527842621 + 53253901348655581180120838256486479621594799404050990357985535571086966194716263286948799098007829073106061365126465260104851440423111656361247387967964978256218115968796024500767380988602183835771292503391107687838047825676770508030346384780458936819614980287731081291940099620612592293934119849590979527327 - 67788841297061212540404823671966662224032508176020922141987726868779925543650967254264769315042770357354940686903640784703246116315657977839483056155221557022618551826587687351439882630338212950484172961334897075710096416494534655434541356521111062381564999267296781291765217325976013834848240687704753746081 + 24586745738290830333222330349204119195559937236114530619461937981438783406452769059705065496069562008553438745954865895979840032174095688984229702382440366706141458345145437802236593625871005277243690681286840714869266577536131452506238419360033486482902662961057788460003811220707742196135155658653026830862 - 68846984105196320686483917434527918665775294063585575864943996943562288289491499493298395575583602932182337724627297561099043496339532163268543431754948582460250368808078826744447231823327022597319403442227681481385764053043645461529546567811090310588368381071262796745919869546045687686101061565959016294116 + 77682937193936808720966112935070110575483345287729623816825274329195942335560104016098666476685666335715055440690808940814092042072446137563852587858840632401756235197989212522657083421800940559863849159557756910967746338115179312769237718202744746950205188056983541468457263826666068612068557762109840477101 - 105092259134542886230267128084584167893385930025561183870492654019150753518910534370395279087114802905597468153197634607616811591599550217076497896868115596679495096384337527290417190664975724419000561560244815823849014100716799178469739718478802868711520052697051157757424051505894521339992270559493705700118 + 47245997654562232181921478354915832108723465754510177995095628778111894102271455579548404797198971322213619229694249882489214809057301727656615372094638743808437897937034752667318734979200830889937369228470894264949945174745623719447282438776376284972071186068391287964605813894659197140337670601442075110874 - 25106406349620133603267236010236531252251666849585523666726272193535066328663800745640811143571483700651969995320195601183297415308143972390504583234421562370558194078317011890718804269805175641889826287093647601669189423704406424823253370164820524115226470591944633468514780236644070204940818713957590097277 + 18369575120146745534240111278023894464253098237468996970923562777169415311482763290640420016743088176922120725703870811588881083489372879548782689544217454999374009860574573179301778390320581937397647884557702389613589017018910491889260121215022350958877097956898323981084042254909816579613309819774782650951 - 95717231552165992733919230388485924669934271187518994497363294302640336648406144519671483189129887772438144977010419394360139314541118188791744378445747828719102728519063038680097891289517558533903181228995395852208776701692520723075426042431090300558634971377478095876859983755098508550804643226448841947801 + 42287316824261159892021153391060578577059988106872938412358798058451730981245976682179341313823822142931534963589601400526482576216798094380423992426705776819249237602033891660967790551737310220189330354387355029337921533333642518333151229949747513454440297556262406230927768693892987958715434458861114125901 - 8853952191888931439186821795797416995415622854013758916032994767483847020559612697185408053823718442218036065756974943208047817833825263703647281043198067297537481699604170057468284744611746241045342166216404966441916260192562356324016691993626246649461261060006556217406694428551350561015835717957268917248 + 61348893069895079361158059361002820656921144616089338936800545811487736615948967849541350170006376779483883844354287587675824690277918870490919551820001756338612377321628955187690665951956010997355240482553261431948171154794832447890000793761756810328628413574298213367076283894467785921230865131193573499185 - 56375767973854670979108790473515911350727369923078244809048635848928159323756798719852485316885137896901114376106369233507669957878773560706676302404018340799563156244126938812600682838966593181819363511192628047658925250794957016881248370109718450114820518227979849218473044278122922079071194614339091542426 + 28323815483648687508987696778130213147507814019327611236806955157707439941808891622628863057113098350056025203085751217970012558067581399645889853754840752139574958408850421374749882839441603815087087296197528269918971160986158268659839443436823414070024426368133887378784278930521297175187600010584378350756 - 39677538207441490236105221376899237056712416879277532853472738305263393935926838970810025232186913073347914189101879905778146347563269988804699094854570271456257215788796570691449143197140941179729998593056007620932023296133414691996186409915943742583684402303371402837304418604373130654112296227455778967232 + 55118689684894428221706111949358325892648548106475714696906761251389360725540022189098640415980464515444447690734462867838588840677582152286323653120610546929696732890300786954730867771868414477362354534980371137960900260907470515817060382491172606650385064616224966170514119615007907261543468778255686681539 - 12513216027776023863667001289034218822491452250767692512502137724774660266656016248512082982391512715086693074676329567324826755225811650464167757055460114846284434198359886052507069821555663023516510196789604180083708917016485199526437286307528822163497253467554918631181093598979933268896217214908612135204 + 26952091020831903770504245704055074596347640926474213272834672544371215546842443097978479207933272418054106150626595988991903784986075165816447134585251009511075952361557531940395034726080601401687277232902358501989981036786238987599821394185394019480791632699330964240973925834046264917082886136666486431421 - 82386824323932819423598346062197202421245768061457605707968304921435058331016212207668247371513334489404148719101397541758495656110130493030157873563847723772403042160753842555192086169235464985964957191283373855233292192456651609309991145262693838546878025274833654359523454560975007224484705086368842321854 + 80255469933742397070251469706321183003819269248162923068302019223603222402080080532951424680192836147907073442165177400363996391685197058071647817960042459161181847525076376663630661647308791422547846357424880970032294376826838969447512607715575728626344238476635456064578001397499264334237994643421951098851 - 23134880892402481997559710163825217612577210853403340817483237596255076102720483083537324745192787789408018984436724516654491906574693886424953798993398472425553969532932387698896830851610342764998063380167119479519852680962705213824231976279618619373948555184809113438079166738204310028566187140551034329714 + 53997422916388816154447725845573700332662509532607665838295613609882712833028031518278976401228276601933129459902516174883434507356701417857054110887772737534588450067102570879386121313738171619421826503179266899135620695040109332426776359412793456042791994037974899454951540105777993896423563027635034975919 - 67431903715485224214747373430938747290088992819531029180940297876007980648248835077400415034662187370769873805850944164223144569393345211699132880885418565875045099049874746784867423477378323003709126377688420537474487956891319815114497968783030716539431604850710824913536651178906172341782092997960559949755 + 91444367944275938128157388591878125582697800227509645246195448050633774492399474284220187311145880361641328148193476743958989958577806784109576693468119454601369619137900741120736128017054057668683193613407059848309843216493197542735302502534257658878015818529051593555924720652037198196689900119093361936927 - 3962494133368370068310122086301798019801792334066010837753903239270702132893997663188409420910155310780850819466991589584067274501731407572617826593105515442898774560219469442785352771296845706639629282687435975568022086784190966548967806468983644848342110530359110627997665688669614908114812835723090372829 + 35063301049815227433657492151610934676144784165424075062642627918803593314369217716643514541222798799170526357800211738228107972088196515612820019502477550259320142262084955519319699825350088275834875304607509908854949462125578162369261963307618483094503999050089510472413848231279648536429376048714930875593 - 45785684135409837282789562859462535413658752198188824165663128331913978012536375224072290668882857564428390193063470843080463234729590871190644255726842777660068596712130139676905743255343471018076280624601733561984611153306160557165872554117224473570593282007425567915519181970452006961397933053316337824127 + 15001837370043676566637847760443337412803994323526032411369323913401251178970877074974752875973869383209637733679409426207823716908902973152613919253015570200376784309906656370896024912783126466057427790204923975249873916708867107554369011766965524738950036956751473353947599128467663847738650265387719793382 - 81619823975203147431364708080660543190887723162017883989106910835284620616200345986527920605659073269734419507702500244534349139764276373044684625378619839901521336041952833649637806294400258043528837679269723071689723873397795463728364038907655155822164915929738743794766218827753484916718160735743743747553 + 71401303854684979607248849908624787579193992507426704148329767074244609248021537728100777313409370842132089522421731647204588943585444184924414324971071585613027607696658263441170985223033463076293536455834462677484920440126049010049406191175576572929686278069138060334689707793045914386553677385306266299606 - 85214092329739808738084476154358292465157944262880478528263404258382639132167621532820159808364334771731224616636421046936849508392427052908420021558992070562751234611309664285252892769812383156076847005418547326358794101902971543918728455584045580734980380222798976819334703207367886682955392887715275408425 + 55006245356789124163402602837928830048281923333920745174549902838376565480319406926694503204260843151919769733617416973115796078933327261038267629366349624501953746973429508679611524696007247826266112653397925076385534692086186958544351149205361927959923255987936134935211207774003173526853845238940634721341 - 53904239595247830795800104796274137170008400341037846473026110496311019598943780853818439892954953331403167108536721414956520931744676875008779368076694615002468471348062480116353084436889559455516414931282011126144105080281478641105218929075890564047063686050929064224610960533418879592432391473458606620399 + 68308866603593543023292090124952154436783011473664571211905341277879542318338855824584369978925843506921735925557805861600909905205309141213553443667675921571364702723297289123328557493176063099201688758862147701188273344618635856483599859685755777540227394270297305378016715008383145701124713712096292532834 - 97547329563816792548177197746208875739748772475427139081027600222561923084182172442508903897017672176780758358603243592492080121416741599879738999489397310501898981267105467784832546747074753551229106747529307742184024458919226520783922347292494340512573545637922287535662234989829860952979747739614333534676 + 66169244807741001544902200229807745647506824362848008109118641444008631641839572524463328401603804844324944277574499222611718416214640845049600064742720420763824809090989077363254935392913960594474063634651756241241586169302422058075156352989518110383448054822932076167190585090617668975122730554892836095400 - 46778942953593559118913030617020015317957701877931016127052477017886099914379719906287566956392841678593938154605862927297170939871683873598346575179496325303285074081670608167557723480625534601127742489072736903624355364280297304335764326282499465025337586627843956251545533133077652845681490281778282305077 + 79914029162765570577196425027362569598639888119557056178383043304895855808978099656546440711554362316742835517366574832063020923939054670480762287491607643317989157633019543045973053242846399772608857517932431973525594512140755559586541476278948671347191076481690491291632208274169237955139267142796993985098 - 77050012968040425059873766300850852248703743952265001634903143047010956924650346666603053124205782016563103849039217672304341297564450298706301149883581877472413633249240824387869480339419183003191304245347381679501894540988169188482486742587637256227316207163031518837050565955591892491079261570508126327913 + 53484496901167451695848473454190607420588476489094119345982749053708627428293533322962771654855019469908355610829372143062196712836982926079788455504047024544961854239504883114690948892726923233955954636272813112803793305463252263311774924615973729231980860022862242423760204754620179842090033345185560436865 - 70791962760691610048789742832233367114277746512399236699990304579620657558249842897182599369253226686231183443585245115199810683597103933426694799347224428905962597773974232149744196806194576557992515007815283639115816300292274319257469024893093389300841468423459858130118326026872902821166202482901088798300 + 74009883240158280938771294619541823115424985298862230091551058988622847475145405864327704948712361313133996558780015269539228010999618315083523798192338148213042383205245547710055071080708185870627158916556574118588564565574900965820201097809814642033633669783423361380602952546010472773976236305928667595674 - 594879614735435388717881907098874894847770893343431850636693699861554272881270743192509777593436826624378923905848088038084052924753093351031405954587459062523922409095686757003762958096917125173488076260632936457053246717271301379111046419669572670538234832801488528637543630543936096506666174440807902316 + 34496442663850579388217176318713147246756120210830783638301465448730181223158108387989794012307921152022046832055714310669788858360042786626143575270500309332140682389020539660820135333021698331046636879280142530454524626425767961963875657791064679116264052251226873397455570313845806512949372566521308665334 - 36526041111730289167145961837085479497870120475968396811733451417203350453547982704514284169732072529857187188129499084665373671183547440611935775930086831217299829675696180144289026215441799526656388454871724188239320419062650046580434454548859633931943821346124101895625202310344046215214107593758516351926 + 92374762245237709517936185961794788687853368011392309322927839766427147850866330101708504211061044963207997052240194081457741366741367506692286548757728243159436826588293803843775946105322962054686286945877659038833637424575609525821717857054247313409035530345435945758297007589346465536514237722110198698868 - 74310717272830320365042248334376582911272767678589733917941472443843725126951877099865857360248426688981587148321033797859264091826308936404317778800165615835963641607260082660594283427466812035035333850677689491552677610219971840860686979885175853951146227211215148704578125301220697400137256210366017433473 + 1996143004129506449682879727858751262041928727127923707255865937617760422157296687057674409032556530421592321006146340716212208390859677829928303949252016410757528560579060965417045033464482478616634319768249744854743677166072042292919229211892872190412967723918492580586604695648968437427435183063220083489 - 30052640088397256005424460064598926950089060983776480923183132905051458607150238660045795937519731100157420630206761493275780126539614632513473332693666020204547356487357218365134913560923513370454211038878892596958536348488472741670297447109068062942369850806851758424536056603063878744009860995559950016723 + 31778029863039921729940173030193276090863081710438091204711741328281683963991257929975274310730123702873225778997149366398155870626561011443828018836920592037434088154335060146420216211159606493169322867076604642642284463009283006987337649645096356692238040887850139893701568213378887514874948354168346213239 - 69790937823622175561675349650681118185151886442194311853228224979033769775639588765946040553175952718261688237124621928186889403536891550396443592316564511877923205804696873343994570466660408416872680730818532310200903272650032887225991501742620447609112551143458471540291086977808152243731965251428530072589 + 50385697164572611960716829787837006393220362250732007279920706137938779616603582748341627605481133938169463659238130229428859771952380702821118517207039936858190305821994995097484382185234102633953671173656233322183478330342915188294633454264325737018035748854054932871386638743681343205569837285748242190381 - 20366323235462102690336083445659810239266894350979371122184532415866675009133984293736907934994630417066016611775169091217716589072974438422338484378192539394223154647058763453788840052480562502558546251315446720856565168339523683471154657941911841554123770451027076000724361527484889968696047699475269244530 + 4686878594144988402214046843568670781842282541888493905639963840174777530356581241953943614506259775919722707385225620956778853955145886528510045468982101038149322164126602826455212721731053221287017466053723841186016420651558906645309446294444001109529244397322865269952222420385023342500909299294842841164 - 25503506564332230795422082435979205214529779706792229948074345810958010330084465101910578026108382845409599358769142396108590939609701516256885581416220178051235849706164020194499766773319224140219997276655767551976566628071038463308715481849076954692722814212095871721060258918200722789201361082633548858966 + 87197635499961892603276593094940997526116426341991323618696996370464746074270161029942965066587493341149148139010170086393480536058042910798983093518591553968665096914756034207893191518848945125934165745685117805702411169836204265633935205544150879132907938453792363859373187137912821738000357973515122077843 - 13702862052735228822492598067913840778906853944223938892325267191488123965103220888083443240080193187995193158321085207726500207750002956247058699432386099151825467632145442617494851917451254191747980800712195559508185272478879537312532751023922044535540138324437512629182539425195713551025813455343016765275 + 40445819054327358573600232475507935432363163535844527750003889781663311162744162768295615379981832305166154201500533205645688005717030891103457730276526120030864983261570969156260535196856542961719584143559031268624844451227902592904210551810156760432377874894841037974752870362262000703110208973826556481564 - 36213734696079366565208277952904842937067749183675776559441658281549200795085335981671104013692260707330886797800643070574465688101845644329532062228653499412254106726982643668852716509454931827399706713969261347821725630038633636438016868392495838223271522071036792277233138824486807451172750656711106946248 + 12493791196607082987325697544176633565535165498129082362184455817544628018705152736537619831441899687219213084430151089968006611307673941509679365617038890639274960188933483327087531503456953804901340071484841687210589200404391920994920921696836973541290032079786322447723272199766747363152629572899169384721 - 52591995705951603655436464212825793411096111527466393902853934040426845557105410023588392898120031971402875497993907669170667963690304380605395311126454912152351478963670602720837739810072572571136920927862318877200378386606870890733201206647758271873286885090507797794196536266364685090730003465280279849014 + 30116360348374074084751074813733053108218455794427082859378878872632600763837437464984828539021620684090328655253388115982256173701798476964293879570218779538074517178269569055746234821593867339411201898687550590890812985102959120597643912311254069895016750841709579639114375642076945119912284689670383432526 - 55989761436274835631424232299205998456448061086802830848346351149994778789575085149304903056712705249949088868493988164809348079680528889411892311785323575872808371895600912880327054748456660547274654299758244787437749279922941428563652131053514291769905486597722863069333863775430808630116211187453104723254 + 33758064568299582923880841577584148186752499969724764078764220460696966275406629077707046747881498001846034123252627238003076708688454877019298255735188488910232077391385703573154067802405582020508174407558392274449675639592574786657181910585959429411091232539939178374083841166525017389200706895793763457265 - 70252637670953755016336701151007374403804589281304461457285154743904600647938293602271130297722958823783380718974021119602897842564599915577239604545025212186920881757839713932152254595422186779420867627180843117286215528863990964539638183617574518881159963362711010569170306787567116026679282747453864221853 + 25003157018086513119362016929485672028324594088489483852366962067337591073267387483932824611411289982228673278626224657439854806102609086587083524637420926203514372122953877281889712896101325904674486555922961416364253663845416719583328807962982118554550119536194237873890300985324943604256061658131376318719 - 11064262779793604865813438312658558201249514216624211416214433401212401405588947204798319267376515512505991203180261862181484554889974822136487126689770890841346537806549669052597109327026158858683998904694829643630102240859149822314570039914018135562393270502494997061640831966751679776885917276499043452068 + 72046363884909551295948056970745024536488442610126415841208650542013214226711125737374726378826915132769501006125180931081832463211071626668530605568086264250432763755969346109736080863217161457708624355814152723956223001063208377181089613098619362408043353926877017694425759609065941936755610810012864148248 - 62967458427771791091039133635389455950852663120380577906748824620191507147059700194997908779288678301948782353166346770182322637004550224783455574476330955971043122481913474278453080493865741337879315422887375140828764187799460531424315776861189827283528730460669831936062870601802575751305073540918044493071 + 14788640789998637897108124391277007289564484824516573826401213926227416108546615060247688920491010646660702209564330389675791672200089351011832685270355682516429003448604138115646496135233447479119759181197460770489939712043776442892633344637818047277465573515239704656013465597392032168568469327056746717230 - 14012556104664768159734738391935255714137652953306572178866688642659744174014019759956984552664622149443833567574849024257622743334352830982228471310648369579296106928199877285489396506705157787950176030375083931936642051150191074750757270646822216601257662856574534440147450249662989796666475181514613030521 + 91512275769496626159291271965825570590226198747124438675866301016257130401529670439182158372269724694577440904773324771825823360163935070998669176501962304736165930625770676905572280252641991374663670281503429483743236955097701288052525969594307945142153094409994021016463579794180295299295546202534365274386 - 5980526212830279986686061367719185249047256090005694154681722596892070802477191085379116259552659059811489329553492176646344235107049504722624128026004963978689517369487098510624942952524824767425738291325956017404019521299899460939109900923540196549198528672115073018308896787662755571209952136451600709670 + 60980672084576192628511644967001357041383673415313201934182934190080144651741647569784949693451177561743598533155341864493123041261462482974884893224285127668901911442332128249097682587357461505195532946074015242004599184836578466267369491382722815339211203623490233858751876806417440026409823987288440601043 - 11599231100786325870928733507068185644848610502823244213522184914036292683044350412080410023643685287598960792004344541577241466061792044462119904759031223930183367254494640308297806627330271962356045543702403258589288879287674180734815243550746061606360760115038443854690029816167964244192416072548940505038 + 29940464906277479324853088926183012855325295499971992029441257566603608969413456518361653623170216765386867698373165768756424514104242841200665244607098496624900158578589432010920436164918008194478103275515240227502135372620535288056985864723385426774216752001630254034761144233743337303970661973242628493749 - 102004879360735337762678181372602602130713341554268565343170043431512939966621182551376662059280006975026213254303772844269540418098950367729119911315295174566087640195471975376454554857682464592320345443733304037775259073405526264114998934928575488576768614824474018143046973863498828439970605353363386634331 + 91050677575867876733738461632268477445766546115858004036948594127305052624521927448751837054109923616857088274263462807577637261942016702893053786585263794725005170871821920696922271069405233244795740455449924127006816129016944284141287988612665710104600451558416325024612995169634499376331736378817009425090 - 64081761249164167552672268871916175441719175705396697714102333601333838178284245127720312265034778243353884333113455260781322010723654744412868776104939829657677769476007184388548107536261600390039562373370109214790499121917191217207040230360768736057149613705750142278511863029881373140310365148978246152503 + 15458481251793268080269101861437438478546438501996695561808068735698208611444144154584591716224535910371102718390291830294733322189400525878933747751764715103494378368333466880616289818644041318917562025404747922170569931059852108277986900936493746135717614338518796585028894787178747045836080785550298855103 - 124486382958716021257200192709586270242755677438626518668445765673482004466646797475778758739344561911414016333665371707105456650277800450782329708163858696452074375432027969030650843202067627921575809164211894914117435141747336852941663409427998785793854805216345443761386008222652973430115113926657806181 + 43752105241979940744435266661847166914813008426839634165514069686304656711063774907887306838616538907131325695756725156429480814994159854613057059755719958307000775012582705314725278000241555876334093507339643406658912278757290817879268707043428112279467327211395595482520624084072633879907507003040025669948 - 44087314346057036128332554398416806484031998254338922502875815727160681913580182526700980750453619047396747193651105444033150067827945723807255040240233799458953314476167469343607209482358768313185927360888255977996194424097473018685475298829133328259382339273903894443505908065114221291165868435615200073457 + 53094670354988930190078167619746528519783812352443382578709028525570654709289937977967852274006651114549716981676874388656027128931159760471072905958930372886729237465859499223723422122848148087007201586377644892352522762412571896450953696671334893564293248590364879289491602726022958769134752473132751042143 - 69444689796447406175401193345608638279054859722737295979550328605592936881230070182834477070449309850114062803308662025821718316471735416864157954584568474148155044605103186476754505589566511655300788822161500877246225053679406154535363185253491511201836508729152763885898437299320987356038974310905948479766 + 36703154577454982882218654911401914279480505509627347493770599704676667342003247427421578506302492179898359211933857479180439092822622090459011927291396031417838904694440738990822732922454191736835629331504158356839737882504629674598862094381794135279327702776139584664233836697115781944449980421915741114485 - 83466986109296555112095206878148807959478694218777713144862758245070003200950771125117136080396209947000618076398729063110476212958423792796968002392265902130910937934216758301267340326268562258545177575053395240307713340298333055976159868730233509278683986698586021674641635840782323097792879609431171131404 + 77625816871134309297788840624360411214503630348416802188471829704216696629899412819280971191123504582660261848142640464582463422294834886191718165161610243176348042909391426863399840913049104431590122507848377750732459928035134374113521770090235697594444197018815713061058861522250887714223079392686030615006 - 79845179387921267501218273627875153728847370645074265523425510741660354002084482617768611626082953925536722202839085137833402960996471476239822786195312102512740791697247331508256455773076076484042740693056754023986659295404610821325101419924170703074687150185011621195196397921341634396427324415932669447519 + 14319997295794758083646521024987308220438301813654239220508684117702625495946084958005995689431435238620968149991548166507554983552284793288837549892383667264167079289868969312736676044870877207512468744528258588539003943303400743648617368382779120740281727317124670552556664302395994790944640923257580783874 - 57538345339566984880501863256468618632399184330084929643158409503270074953355653584111715242782645757216236133602860800439510470557853123008982782718954107277034779713328138452549268387491964650035289116794018176635185166870330862841931529849887248505922304956964786431776513951659244100776064162485616843047 + 30445459440984131505381295973991795446365895148741964066644024521979904760853001241161890036388705147746903999297000832498821147956493139756276928749492433488047719330564636851832674816025235365761581216114576518978464807194226829988449438308995337610355727660795924347580167476160288265968804833748181222521 - 8915769201603049589570806532285661477107546585619090988006867839575297043138527560793006760649345646190554858620959605144888154906646708865524568378338885837052847978050785414645206315959434229662666660346018971848796659952833111756503105205761814745601283746332742764376897913417158868703593029284198234619 + 51522578982810130175332305137655817598895213623276308642384323566641451978498221157580681322708944653998368946549162499819650650563440571355048447189374108087980059029544465822025881073918532399692577543282468829593019471645980097770436170310500681672456943033454311451832603815916449974289081644188588549954 - 37603559931126380779412005942324736814149747935091551420598105900887401403547750446212540038096035722620769417480379225784250961578683796466135860657945604063597994664666658353992585317118741575934517294432586683782920791859154866257655219466628904464981734370013784077798425248220829824847803561036812949236 + 88506053729696137603491670913693337926753553614960728227116523113749302740836268513768287714700263778708932278226256411582003073906884087620908996132505438142834538993156548308212129621567307934363626864022305214067515945814541790723491971555218341893183818446185777529119513993359041754714516273676325927332 - 34569921415729661093989828426756549301533745008621586796251235011628713863141615828149447272030131640300610016747227021101342832473737021678434567992117485296403576917206840429048992652060878736335491660528243013886361143287558034425555451704336201735944276559656791080390343408918953700949732976140879688172 + 36043463635152271865950544072267087139028043681798270147102936853839708674339871318973076135836612719241405133137186046186412727891965511481364861519666621397992293174816773860984635789065285529090125084589748356063489812484851516902003070117196491791261024526044157690791613136813804111624956429854587045542 - 17212482713614883984968759430648901022714286516175634705723086944262071020673897655583689241084993719020806245990397881387740996231840671325351923605691008877662168726627459662374449137560685155487924555422492058053926150124425771881261076370548176607351279659718831967519046585480480259001618188750185627843 + 10707884958485376687440877711788021586603765439405534362940081945223677974977958704676987491406025894911071480427248239250162018742659782235589910332074826197055225549730547608776953554560501446791942761366207336152755509121893427804709259728542245084282327663165508215266764882788555249987353952061150286735 - 72486519029177470547624093917219376607893548547706939009758642375736730611363115076319689410687639004786851499931363375990995885671057871509985748687816009508479526811250951405278888584170491364799675375042588137989409644295964924469578828574627777431357589457252513833844606034040913419751258186937472799281 + 61912745129968124093670488654681926629364340111352575130508130899445851014055599598160880872169423685269783749188718604010590961318222770575214137301180364918642437638234432320337262353155054265901674204645177040102834072894024092503778932881094095457373892936967168601766977657508451812298673963295206092950 - 3208262822996706976592261523427591838012946696812439961409165106552597767191949572312786998717323801509552559577069267859186276834546494277353903871353712989230405041293725399070564709927087972044562400466733661071510695606000813299414209828571033893581280809005603274051264372774887183689358118454623554098 + 68672931664560081162058111420739936361234764718745505712419704147153194636256858011887538142749176911992139320605069014432040374429811700571100945627545770783180806716745012471013922456611258729903780850231876440596030091358800467693358143034479689995830681646385072997335678193825070177866899869073850950933 - 32715378247805653957842918457066066077687844640600702204679267211293919951852227907618158421638687495959459057950553445169179247899967589176184089999879431620032920449619672866975826161845409651049198102256807814685873227138736187759184515420393919859825664515421992003789421658306815025714844035801058341912 + 58716606881737333963291219285848400346523447340428358576993068506435308985796670337479501463336959061832975977218393571522808220336977302494528366658283885454479456423871175286338052617487902680579872533840433593171131690803590339149129367106516850118432052327021007252326873951578740129656636907752802660288 - 71860655226571123111409221498369485428343416327458402110267737393556497176084762570599462027816926357435954052890884298421286728398707144355090729042471065255042894110925783368661200546163085202619830139682334823696052520123820875624886997089730815116511993856042733467270769205009933248210922503093002302983 + 58929178872981281046586827919303600629809671105877281669907576261877388617748377653144135608679620456687044682806963490868230524509621808338868900445000783214666281228246469835921001580281109462826789356890302721300434341866058730351499147192965898495501910577770549499835265782389751387666542232328783931152 - 67952898403910078377440281388257488353141109496606359382712842385610150127290918282086737164867506198797088064123064023994441030783801069813709508662883719234922822815257598647000988194947778920581482322355157213493519048330703062066310396185614183094327228781544265487846826351993983551017239611618633490414 + 80575131492071101216718839855504217544553977199219860934283874030750005466840206062314692676007912379599192002016331203630129061669588218065629649154039392998500340912234202187151307549217554455367883676929562902828804002620359250675693186579060476455913376407900500431358316495944583674487961063604885043687 - 178602672457026214069110453123700880989628351161616950348872062858859791728013246863779282369227108208377403062775195078284708681770995066639256199589298760798246529749144437657173981869093696609174581522760018207482853774532381336968321496900202871576173535450664259865017973829599590985902515563997110033 + 29817377894490068998340600145339161966034539428372621979843467911338622366522467569863872412068657255543566213591599203522986315672005545768464975247427309439923856338313021754425804717888286476523319427339724185948286727990984536947837449309031912483991151683560430818316469619636744849119707044829827169325 - 6749165975386505598187089268303878217698178674215582574552180792616267454796957538849612479829145013365354634552819741228486095598263607955647690409313328532521507710603536674595402592274173063434598818866880895460987030796899749498483739352976564199157270926528221265035790640640410260135334273130637018748 + 65070480242056853159693379748197473584513882606525163982838725985275106567376077670156830249089233151118670714811330020902202174944318808235219855191099719058435535734789442524916887446791893489615503361732410226431703978271889848858220062167142266241887740443994179746859617440843433478155392992907429912605 - 34074156142393252872281140413594886012074715779484392872154036344111088041085077115531154550675939793624704100392137337098575461220203508334712138348551922600347455240171993102285685840843802593290618313714197295902698537277223369397820618662528109221575993490587186969912695738916557439184645176235762561429 + 17325207366473400399182842480532144403125737011523371469150337069550264269153597513538485681552646326980976500710983580291909389018417917217563254807955649660213646404524285499555748253172733611669474098141315273613265748450616783112592611593745306921863865511659746530009999339628154502449731692826053070696 - 49444233878247114031268389958376408155644780943990850709246241216644713502634498981869673429723494961605663645562200798862218424155669182803029141348200497742998885355075540989597089095382507289791069468148153314365089105985633388667382130133044727016881742077394390077686767652485286452899205918221630006629 + 42684392841162406448291305301522618447015015573237651580468933000645284258791361375024046750134262044699335675803598077730568703336397129146536792066635815586354889250073875839778614343268626900464564787779254363316362933159598083864742189162867227373070854525855665643656243550044623588844556529538529080324 - 912155907912469898124371746001364527074363399177156436119081319019169412406924796894825035884220074821179812429133896919079297427494255044901015983444689238842301479515411716808835838285440864648623126765077955301912641351132112101234216867990656043384351355222204912791709945065012065718652565420901631061 + 91005772286375990317592144489413712058598111147202612571875722993400254444176727263257751801663742556914603244103813618333174300778800455656116211787181856876682697884118087628471099587476671481071351524073356868797360009753388377502191547603626963147857664272599017309165997760584592516925375549266362063665 - 76112590492940234323783215172932817212287549682881440458621815517340212413826758602470191888877041725493846986206409732691941077674524810708948157289236659888026818255019668547475050753430181683547332132849541623828660952527236467380919775223387496325666770728298457124067424059747721900328220096034396500490 + 92232532318477928728763901583599639564580666331880742322212510260435257082584012869508110881785535802052018704842668555664522853155563251767835802002127771665532317802445427659118345403624510773411286318200849926090801688367238629886388840941891256040495598222085485029007684263121342683702069972501343117999 - 68088210630902104194227008895255102243089600554818030178812118447993740971791912202059809327996193613338474813522421643335689221572904519414951760012581441216170995071894878720650920326642860696744976581579519071119646032007836426072582571489773493031027871754168689014361269894784030765507992285299776443993 + 84122269146786451605870952112682344738184642163923498837763805075183421603505808528874324108304179441280833623516670232550945078000882678677849188426678676655148717925002939646760518026025074833914806067742144073039113497656800010615374865312462670176960037350214195329367416920591574111077120860837536706896 - 47532817771076261917641095067948997881350066391673710563519384433025035408206941636839332755699023359886224420704710806813482045031396322911464870626780209891095826405524989231854212041482300788055320781803115476976953588333596083986284358156982251451264239768691029882118304002045351710437769011054795534636 + 2590572152853772438834775906657728553512394679333958875653814108870172091038081397080831356137228227987179885904806396760204820903675622261937434843739220374220768001302443002202728409272790870447570136466375609992991451246291174478614848012679967984625557019332916052777999595490467453049021639553935844410 - 33190015109920899162193887184266850877509658628100764495763478022640650493515851860764802152924248917416892190579152065168702597977402421735553077440410119291695608334215959306007106996414185566843559036875354497449259289462631194322165995274554283281090824100288243452348610678291679054347874114750083751306 + 41416903769497232863319083057206894509450179015053897020400465255967768433499212093965124458994546326225742152182068899603973565677682737208433609667954533332596878536978199674786847423331778628488474244737796709935948040664832640953698953737328999405214494968252170917547589623909119544569045445898903541008 - 26279824405316942448945707117044352107426860987412556821933938264205975422012722808390122460243525567957036421783116603275923973123524688137276330342244340600406818652997326665304894491606881818339540472885915991856597676378110840911304702398102062023737540615866241795167839298236900345907115931819480564908 + 92332659561420745304184249168218534281964118052974214351890257632734699599205756752521092151455998066683018845857691588487956109444006454969034754188731800329289216250862610800073664646587536979400872395479980175609323879603236837147865130926197668031960999561400861706406182020775286972386507737063616713577 - 65574142489569680127256806884979669041403132615005050138627913875252084408913838235692490909435310048318928878225709248153350099957734472026561068198589088925355502304755109673564117443535079998463111828831561740147900456844678705535799002506816588434305025350710443958153152777432246319966609945978631244192 + 5860065414874221645347003726202425232745608516315534424823692614532777432724515010304121147307335014752348657370282725501950286816020126238391032324113425333518732798983147548398259020975592025544775284896731857291542448060399080112741188399152322991101527586341929126617562006707565045329278132851237397588 - 73771760332812609565497311216282131514295922023007368919807291943247637834778766099292717863204999193290887765751545498867436641222488708324271758003138528629070750683729475850471658343710762565657647605683665604284648908921690518351158891080330924744970988534708544000136848984776964616113358605801131952624 + 39706612449689286177846972325854676836251029674869597078963938951743644604861274467558468841237669267000008837782328462379328128170955295781220139850006433438188461504097895295975797202257584962057145953670115310700433816193083528857513535910358654211869394862397767992119016231155744922989119549086550729974 - 86298766026769619340022551552532158484826567311480219464966599008305423484637717621953479403467278508677393896589828849260914553648080492169074231266921121400885180430559323931284334480614631454493066939043364757793693606175575424705522832406321891767009528387480242925472251611793516476461615744774795956345 + 12296329121571460186537397103024223524973164450599877411075120753481785347011889377670070705504729559180075609054432779739311126398232883198502663298907842230267505419280558000528463936512581605103943345097471515957447356760782991828624632597824490698195819694154990148161108835566429111170076359553097448858 - 29630860508163537032694800460739835259812663076740068028186120268031137634723188783840387061678419880400625823475471946169066607655386963627765270665643663512195918016024372626963222642273619494506787109525597564081152211394881263117437244196087108841736190579148145611234019982892897981215027026353389733776 + 80563229235955997019050860455945356774785905529600049373373270381072714294669544377315562653714035892544148533437862881460121125115655779618725342678357206538828857499039493870133743891548517422640874449225528987514028265231026636943125564852834796981733091247817112333775887003976460265982707002090840712190 - 50473447526949025304969118039240418645136220901562443358275609948592243563621417304112301815232210638728430169539501949226930477931003222660917404102820735574946855317775150664458482587059812617081736764622015498477152344789083804324546923018773772323644570476675554314846372531714310299492676109009930199792 + 33647427175250429370810322713384893444786204065277441730503265180200739031022320693179575182319723336456569852708186423133068786743373282345333117975652578583755497600605063483267746392824975665963734761531609346954725631975056435822237836946165266811016814636996712036468149940952472980776021576370926235437 - 54443930684247991846423444603362778025497236295564448748360699069938410664218695573625018947834790173772683133435308764945172144732926337763854001708578491366838785941019205010981448401315059618955510728402131597630396605180978510787694557976963652854252258913315580412169190226259808461165992147286750644428 + 27504322609505199921865439774705710832115336873247562974097492969912325453361189382378690713906709193320255642408039490626573023068563941124644215370254588770626552087600801517396116212732789035649195496371694867811243890864602252691365338936055155402867524175849581232261315715595588300452226391422449735116 - 100632894688452102976669764606236591150475911317614396967980645646317068510879292954747555112416635265266051794425192829638706550711300465891504695321207898092216787425344695905936664575154260990685874082712269176288057156441691977048034750555174540292180694138663795363557651559858447062203844056037646696891 + 59584956076943809688491769141152598000118192587265608475613515028271923768605599086631424562449587071264550213158789273409225734223080338254711755393160419851798409416263204192781602563212281510078769124268393998589993621532500610066185778414541282584641889271309917253011939468391867677529557328439183188266 - 62946441681550682950753896523724587222480215869632094010427741543430390884704987431046988247681940753412074034688805573025942827570750401499592555416806754993735506108725822712939222185426647186490761460018054501902923003169267785073743563701116421681462873094006996644741976811649609285149894741510349759007 + 24327879121116101131569137500735329030797273235043287657081938355252770199828840472913220345497872649652992704934104356601653253960456798400940508148166692548672651904491240782911800769882121832224238389535333743379561050388845214062337250402047988267169945273434569943300968979773241093322117059829875691602 - 105419694173334286536207158558050352371350353779888473346356261345775941681225288058707293370536062951587407081502928912899825167755916965242402342175327752538792196196537523046390890454458464974861808425928083728041615457181847742274720673652629666273669295236261720414613322756606575845511458607361430920547 + 3410462344353081284079381065232270720159013783824056979047479322748624076963242100229827899686630492210844574767143570966744065481012207656987983982488028657356596087065034027160947109795523320104412770466552781648188568069251678541007833220813371492648638081612697569810534021958188897084955138031043092050 - 70681508987528980612813868427596806787728350035359551216961240541873835920733133656466428590464853373399624682777084886378928273436305627689787730155525879420030894490355243153340152118744848257540758886651629323581506626020042057363978124735580882596381825308717884098625390249790598054781999118443717126612 + 67471637242609192227511124905444880162264789459426027200480296192330712715937260337323579017134345636159914122779080904343311061406312936596537431887400988416420791945699808480969953647104719093033610635766892303431625760524878711229536310230054535465030363106937178885055383375991929700090599364825645379875 - 77513245915173556258578162924957801785981520496325388268022894128860918994321700581793180994144842826641294023247388032042712748711711098699868763055630441652797113006598525583563835752449431782693458086071821417437059343213746350021438252643956559656208870280573446861731406452723612501276815693442499526571 + 80421163486307066861677358773082587515093609967686450780616866798930708981355292980725254725425352954248846380169219307287778266900135977375067512554487748191656548419733731283979799175971850929325706231070711433571689293974832236997449160968332016545276756859947288311548036037388616688981239116422182492539 - 5888251673920634347870542405969031897011866593705466499036871103489992664057329178848995145377160547045644458561249369245642343537976519081900593930179757318972699243949766870281634555855551473496159727826183666325797298843754485278371386875667251963312709409283415169820698315273358743686037716829155060540 + 87396304863053784695320764538252180355543302519862120045686523777908165665391977155417293762948441106781346199170373376871942871702294264733335113941598521387660929076163798559494977833444112794067063991062501276491244687574578744557141440068747812406407600932338632516803356602493608581971468079193688524800 - 22299888145103412421954623252215251757779638582389484977238599739919030631360757929752669478040628552886761127435022714972764514786288073859919600578385728701405293343555154573835740688965885985380328659901005272414114375551663031247088980682932995090930697279591394328323365773432674542156649507082440311174 + 42734519896902931869315766158972719776464368369234228394811844581637074762773965665053038454247265994166734068030433826915293245748970870323993096403592575110257699898684888826345670067149196079508069670337999586218552847054764428582997692622255474583397459396994813131094751385320560655087166526588376674604 - 74887137478276178803140103147314826195695280641875824593435103064334579502177710913829371474098976497230188168348803387725711987283390734785244572230716807808488724402455257308104158327022266725855597133239593428492260448777218561310767891826273990722339236330369445674782144524593719364726355440250200472277 + 25500785878799354103092044755052035208556564701438303873917048839678424750209427526742555391442328438093284731338947806050487179690669652114591863054669040586695343430469286478917851891509033333474411252181012029463589923322404142909636917917784059404409580908279051921510012018511287436244071381531021084757 - 89882182948548218714424119627898618106980394658826380777992370573452778711133126177262704306429426883664603410004988392196156031188653450127478788991502996618822710725451744234385621041411521615099145196624361297893486722753683661520362262587796957374623851413005768733510041466021300844695146748568100500352 + 64716897089950655051294002935332705035697696009299352011971402260410584464483304712832856197494682414236070763456445215400547876055238723781137300200017564354363892360838905161276085548632680586830278941360348481243672102530299702390768343488558623904430559723167334676312558303703199607625032311840897475303 - 2523029616887084104790754801339758336565581077319402202734951929869576475974589234624943001678294664666189653527078350802600387147218207479343733745992962292536558369335752118682707163057799162281984305572786105603192966636684771695212146001149306893552686497066502359631753520402465686435203540992801766835 + 11661821983467927391463792432866807960388584399677991866512787033083901537061067394131011188113793005731906829937483370738606378970018591176054688384542767694770651965398946121765984572753514641440436459018436880795180848258154213005073727139065756544451333749167441376904801431017885739929073985047148362606 - 15968400329240373591862355656529867405000967597307810367303846847973778156815936176314838972381454446262503189254933732251683420272437689916478241749195425057637985078178320293040994961182442087687187173950227176058691908620154947070651022184718458319702033355247579795681055832012985259367948957662719357327 + 94691764582257983839923644007155383694174217518936148143909395670706401320245347669235618582877720133295078875786414917859881976900167886573476835019545961252473163141712566422908036959587522982189390106587252004730686066202567463366257856859314447106068656024623374805772065686454258218676067741499969424729 - 74119554951010725576165220763711394271985224129117255113875171847620345354982827077115491352913183209821440628015927829375622029054149429932859723089605093418605246492328971733243163340129583095483368203617468826852907543891957505513471626422449380688731976250364706867633423182803993870038534296297068418075 + 60131588698087055020499660125609944433985589624376226666507487083092352125601950661577407292431429576051815203238415497762401259858229767272287404187620872557202133381377274678262451422792015953083458154653652303174415089433652090592292357058043178861059076529856188949570914223428225971240246824034250789522 - 57933804029046272802706533614587984974815312086444520630689176813570952815061649999823597015021619139072589314698842553027452523737171691485501552526402542980636978453593945263257945006621106747704120975168277243571829729634818737118486691760272421323365850432646528257084475728423314973594816629267657732477 + 72062137011388767555925954670102618334301366080882098928820506044895795194550295408069515316719866905358273390683472238910342363825866872344633314805543031957038943372230869951163590330637443643367135756956532569984405701346905794615391410197289751928623655591347677563687000149369369480072670040059005570207 - 51075175380880472061925502546172693835819833303747081263355929254117910817057589832962793910821570326249171213485105046116997278697707398594051850807051978246627080319364371759225305768500538350384006060582133398337185670304346240644825869162693397491322758931130373181080797058229219376006619665974727523604 + 75814983625630500852576699533366871637838766512595298786970203148886727146847317109425148045659665062805554696964571285522679504145294050321101671219543639422762608831794009548364154000730356585978539977270946870120674458019844761804679923216196688196646450366668963612096147732079608469908497448483590372200 - 18486231629006649159905543516421189901978953130857865872949646363702556804019193556578947560150887018888138955319701087523568122202243949500174476551485726088701454191636921277132492104851449325972043638346096909039577822554914626989717272915521783564372227669499801368734099846093622077561384931511126725355 + 26496903718893623051010066479194123472801314345910806381070883108042556718089481634394941411696390445473365985023837477217435740246198109596809274832965069681362704664162364360585812007662632044935510735937099852458324975996560500178313345811823783662133915186156420099133690047560275918260008863110499725736 - 26728494342268120651894528673561894585599601266901463377936525101142881258692322407294620567767396034578305179184515619208018450091625540125500998157654258089151397976900475336948798720081526889359157937593924939105027058693466375652066973341456841446928740681273448465364491732987269553290900137713735513778 + 32672047070366985928791198661444755141392465744777057904542505581929445885618277949671762976530239627478401620798976392572403377213712103630298992412990507639215785370669735557663681694981259543543914014346661716450001457963236071497806450456712468695731015504802622188211343633520520806142967491685403697475 - 94185013127019956205698779357714472603757480431149594584738148569992003700826307874859184330227770389266957883813841587383026083843159582813443129145393178976192521814712778864689861424478044425342612668069662832089987222266373310689590883939472486547908344839551698497991344251699353355518128783805809957388 + 15810451674526045909739019898276058024403068740315802326566525638840465244539755840932704412500316970625047036796549190860534716107009964939320857896100956771462880647602144895029817848445567110532514633425460723486992641767127515803981723980990189727774778083767280575880149890753548828965934217864464090070 - 55909291808701087800602267712452049515784676858049737352648543447381897725666384333654108150427562675931554376892513724804628548579548143848713618072029065270492185328837444145643527675543078455384007690440297103055085456618890807858654338716022492839933490649353812846892432349333880956903997441679383915572 + 146148585524251724400220224806046013103412101875142120399428982332226131597549397312981911060022303976718519019804654037243992542838079984288764735854449896608760255122627362075723006953859689222961779042111566086744353405885698780179084655275859924227253212690587997565475151624895132707429242542317971955 - 93149596006967960246783797519437354381500039730443630304137704032437488922548827796813608772744693392850424800445759090304864791915863379079704238707811072840109135867414575190697326442626305001683716880619717276747059933047222614921897072268746833303789352713275689531862541247786422618758231783454278822830 + 56248001788243110299858573420666823408421506551162853192240352546899010917898287399870279943742020346737755886440841383115409788959709603357846396886018950800339788310654822558560134178440787579295087131085670708355096446016269302346087364500869543669962457356640338363512116487379552990738731490830669512177 - 9169931143978929645488197338260401618969089415143393892168289854345067883235068611653593563584936350591217575965668499693992612547862936858593605269727600634099416038632902448175047109166418260697498034411327293637474226209336551188934241208937799980993062848355158148024770804823789458261446462929133222511 + 50244908385552333458036264534431416305586888009828370096179365169977156456152301080915938805706634941256385180424025450300133792956677620707680864794656502045466468886169794522324546207713759874024049860640269313051590787552800410787159268297174296198951320334688427747668273697492462929406794688394708999448 - 62099342619763547705132455299945493515225250348152796124753214765399585160181489754096572859002457060661311035846164756955090355115175854662033113910890386877269851182945952106435155849189865980280394602320630833369098130786301457340581104602633935621190939623060466627892458703892987530726721802564578562746 + 19985394147107664362465036751122966260814081028077033300453894218296525608599813743680919874802198898343177391685638313343037254877496070325706522693057817569532511630582410315927497398244810619245365791297983265676801474034208245097619978517116533742096132124985896946173536942900899245389650498806633323162 - 66021251832124023138795448062386204113238734647238081150127326510673822888403795141895296111727321575229825550098355154720990531703518300571710442463828479891770614443796851513056509395079016283422230097538068732951958334272788761295777372074353329899710705788063071706889477051149153177411822432069310120197 + 41689918728271725469314352136066112098232474785222905750530882100392962085510657705865207798631217718341294146296500373988331362892669122910903121097611422637466947742528706185630394797151948868314197435328039081822223553408726136350730920972811644754653980230725859454286365364356241796740007578398279549901 - 104464358765850896697187174957001648529493338054720477942023611079107763211532023800707700931442878324570831379441211346762058271016085939275951447212434195657922824892196797009843044004223062498857334412353013822678570626099317139816383547784730454439007078430754564501861940806943433917342351991422131914767 + 65823582279088226222157165836147573267810949252047986523009637132472259268280625821849248569218147068985715758390481563255807983702633134657645136159825560845126791665518257208865151458289494010642363254782472056601653060503349972937216804589290334800033389762330008721931560267944530722467501672433314459647 - 84944211429406305631565709836988327619727526960260530889063114217576597496595719061328500823221612315582014924929914848707895378538102654282610614291194157306836219952059034679110944790992971626478187560525574115771210677338464044034746345805523121809772296623253568897791380262926514924339033671719139842755 + 71723493536912758504779803093187682291615513021205329329582093419159308380477091141564206568467973480578433534019635248940933489791888278705666354237951087126224595991249920933244004554889081631879904126813286608166328412965946883255967238256458259417944004913825021190764631501841201029412133533414485349267 - 7446440280272028115707500330054951504448004745472903851354146673441746234007516950304980480567044822692453137963751538551991869711389194835089239069445650966356897901943923309244500130446818760373210734699292510318716914856887155207815138859438462866297368208682280820945269147610537700334702594782007752202 + 88491008559242039072821919619077307934553589362265680749296483686150708609308559212246278024575496692920276382714258402338765494742393513980119990020967063484059975265088229600954320026813647302269641159546095969610819566165586555981580653367550493180049549824629761319032367966322310154249898058446932099030 - 104462391924099293100571641899586435859518508514614977758092724193483652880464025156229683633424723492739269364374122845774307430848085586307406104094012831223341502915400032837163929928675780849165213500480778640028126715637563880368160546079705961242191489104196231124527527798132426746738408246727318849092 + 3143227541893145331511140439650802429595415859746923778464532167628424168651052141009275529645429234264080094991993726154884625243231744822773414654893228535449473690348669294124152648640671308041443574765908816949353717242234761506132471569007494343528865404007323996434308903865382935372379979106240199920 - 40325342223261101642821209025339591753237878783557730233517749500266910325004608812929171372283463267024151769079909792734719013439646460465977353469751251337933786076182599830561904518444947826074022484327950960665031007582391752523213298463885945251403166279118014650020955323247758429999346876073516505015 + 3719051998406234976812389048415851365041438573181819218746544422001650782871627523106633359255734976636320989956295170783805246586625096479667879039294367097824951870981423583513484805455690557471267121104254116479276733396924183066813402003040010309706109719785086793725627909353332435878413055380747355148 - 7683646430105696357993747823612222764295496667821632039919519673734890544497506677600086190835577650275905259323967571755727600422248140542727230352810653860205463731195777866115328296461778219238547094250221168447159470284151052268276213184040146031004691813469452372859278795419788694923825166067101168055 + 21445189399165113757859743582383840733715158921291316556619803410473638500569988221545237527226015689232322569612356325573889665933643430681632220550877525331485908639548933948196068216214063283075599114821182581514419108520469179451130056022378553340526756369392100602679984024810868446320570472122976283899 - 81058858823309986306450622145574028015560038408158262174388714961688045900724737563543172225176654101418275517473144222392694147791064522914732283313301546865380005310957577229502683412701066618611300853597666455358224271518683531435990124153658950613302344415827515550007564785330761058317108813758431279454 + 16494010742405683513470417799808346656439259360500512036568698177199381245006195042636827781496986078894681557004499666493207688040860367048244462450411700986492672496700947124217067503440300986512728310438169751483723791080561894908773892229100806089568679157237846883140648822853182690188606835528747114 - 42706534463358188248249321339169030880753514879701715348531028041725835208860469955039325425383436232651606998312813049935019582854728198773742381052239831177571597004002362579107803094616271414787608231221313825962727391961765574004059695740069065992715438879997195111070243125094938907283931454726356386063 + 42048961145875899005039298804351554489756827707873216945428815956702170197503856413955839943360010368415129180648253729873283722881535478873160859242686224700415008034068823463774722650923167479072700033946700415251159439563451438133191841717027452151265687044945194049353132141979165222025554502986517877105 - 74963988827941307042168382254439751376824422652221003595539046644457228095025267869341205497778605972050840129780060389460403477631783992125832375572144816458309191468532926505955899928368609205744834677389809718919933057317655419679661412223124132456242700334772024950550021449935079571154620835266884462756 + 68253835766576631537205516172297918269010241694120181560864664326686790130245776972719832669519443904816126071073892332296487120774815250507456042943565097770318393535473024001279506341727440869540872596525203020112308607098561563693266718918127148659839600576809846211001618472075817619735617932966760190672 - 67043985211021435877014129664130252453905551622211724877051017742783905647792669046708849270370816265405487562753640624228119017244636633614174352683363822805893450716313209878012685401161759880390197745954073529575670490012339398586023764832513398000165460983268714035366790624264413118726246000900267798722 + 24453100228355734098159111408588556675968247814702489970568955663686235887672994382537074395672457985366685849702205923926688718292088046215336620254598375367148610122311831222734123698873606143212908378324970702243200572204383258493613905651626923502781884443169523890571826319631539844872409593233373033790 - 23729167731104920369417525292533477318875290209533222263307857444414199017100579387090453779561422286025196453568600741671918198220427081599008537950713647934226949337782033142104812343137511694838905743113506280112701901628205388225899532517045209500558269643458522529758578495741440043928331525357093517939 + 10472751506767403408870507886655692369639950940012314255263905610810321037384313959529694999568925691651110139280284752979225379831704553140590849134327843418314127860643497945561608362820564090593908889851543873860611141539898804389101867941478417236231726467485232821086090880007804879733443563483749710815 - 6461258449972168292203939162642686374072126180674813115801607215293678531223805464506973056728931990595892516676902210829865015083484486815389306109786390250005138417263424467006359850897221044645513013089025263660006394008223717787201994359827949998090960996272899608506557676034282666063030138777228408157 + 59131951354333904701206520877371432275418831365658597903321307732584756480984466274000197468027292206736815542333078049957424341439280425320530720596617000422454670555874760544723681650139564512257876835260186232591546145083006176254656543517619120958273684161564177672267905885853052210347197933571958093463 - 63796462594872231836129635217185206368588069826117708493889418876102270628366255033489242388927713798802899726211630590755233233855027959801492564882105058272688323106091495322122941535949003667501746342295520229206015087646062814766533951768889546518578405214573872566381140452562182729900684356653353685000 + 24472662212730325739445423157117823080451516544900956586911105642297745503837170451564740594367529450197056878711232561494205675746099080405604491965422164005296001208993043958221370605719952917573617593310820201251387344752373333601580734440579385832137805738695564713538337741207226334755548438641596383886 - 63085081543004511287629994433258154503150707198371036272975192108973758176407984666726167076646472350131843631077641287215935065712152563292189059778440270187829633802593895649828372377470052274851899523964679603248022940482349891602774703489190195523920399211303733991325617733496076739766727748179044596660 + 79134119915954340298148039307343467594632430888598467126732966575133246670842433296607213723127922524352408028168319845628332723415134678374482990926042402810183304856273578949269096233621559442995714547436462954744641270479148480698283501141497298632046355517077793649719321542448539800576656091306822945679 - 33923212724316813945660665190871675543968518261383076202283135532786870722734411142501009248140047375120089303703378848668323498979118229294348544051763921934461623562047082841890187413202417577484423934605517896218443946769960125491405309641698924703208674135913634925190214009508124942077066188697468168363 + 82389145879804255590242111987400536459142803839593136248448202057544725718349723879876656774492590536047973555869355212659571936420132696150816618172776569995977508141618624688257300166271564359474199269348042796062818989639892129952418392378426326855988237622033937233561632510218651073961879768198106729679 - 12143112291893603125691162073822164147334360293743771080461954244172998914985138670068186424958435300218762541693063170213544852310913101725224068560019643074696966136926764311411328540002610373841756465037037323392185892403977307832499899064421986631644623998020281417915138091524889271759890511544758888274 + 65861019438271792329006057129015578319361125975183533068680372519917556823900742722511507471693454767600582792167161421459379224107020171163540109461481404154578593136975165016159677151176535550469655376131577107689031570081019149497837075178118063884749646200898466912195089915451983897600190262926964312692 - 85409187308263702133121949277428892686165996551897663588890579157012347626907274956399304105142699696721595437773459692182897719715551234204965861069336727959066853443586256881763525488935737016260399304200124343940554601359584807700389758338362892140356554483144703494582929819131521744497170537081648211305 + 91694889001914615136114738023504658630609044778005243096992739666058469833481931851063314079188803554784485204042793834308181837018659094859375679168669740325363352329239925822954582762585335479137289441181348925462199754505528791162240976876359814687858836895214402943471912260919073915126390258634527662716 - 8551569909868598718460643239535905905539660027957764305864470485367728100406713266163235933179755328693444386383850781157888972259893545511475472477759724552070363296014208122467931429129945843574971323299515933055559270208931983444881318163207847075989035708774567077187454214301703669151272626640693079193 + 61581011702276453743563004189363641321540067149923348585002869467259924488128205367738316160940586124342327080895593033375233946781717518787760871257173057618483569162144197107967408860739360507905831535545984116308681055134018503048859558463274343186124686275553656913456323009489210982636335546065761596496 - 76878828348783657183709603732538780115108375954844597370199261798754810080173477435036263219991768438980393457805143449358820996621673423556309361788924821554169494890815458183598574195160164655037081246476790549330768901482830054046438467530901661631861344317782609192266702048993158677596957017204417156472 + 66252898475608344407417414051801207668893879174800605944194777889233886322338695219143687500368279822338880712761455785119808850016739222089933877018283659389997075192306987298517362828459239784607789934491511381583650705276572986044838901797138220878699470877197355152507732118997280715828739996109536660209 - 14023980699901472674895664791880404870395491973631810051778611321422072823869188263813883806355287178286470298339348502173352049202097671389575920000777975930578078472237402052432697098811103039693126517118362444862967398665552281384580197176291264778199862703540677852987494001120048868980975528885161954896 + 30721638906247405315797871148844997982086406544151119579606406832330788977350098741785999909404679032965285330938235162269769463725147376371024004754539053726655233719093087883000118143506929047432001038626397427578688620772775846723605079104087447569131129055547637976698410373362318203371459530136278476812 - 96095292278116859979137634486195025417490935265712415895970088604860714409282639894447280783522960266282314624235004648225191728601858272597984511431718111074502156640102656739367468356094318455518665295782183046023436524170023274737822906891895951752374166769502537966657527937388845380415002959122210354748 + 88821295825113727873065335535290376381132978259864061061163964603775468037352087367469481222726449639092880179440877049975267536579353801499882347145280106125657424754454985887469011256002038147915562909986457032955999576150186467436269377712581518011715870834483747760520580721258421621211300471267441121947 - 26361626014192451537226975565757839469243340016125387420860635555774383843760004189632060112933134455295891178143165697645277991037048388877294501272034489138280302089010419617731962786720333382600255099980260841024395026406845564807592000218741209586692965472660849420734023843531565927658224057523013841327 + 35310514003873703436692395670081709958208958805107686448735266754213412214283043870367069866993142536691060256777413824078315681333912669372381005389738820841128720911788634468127129064369325112072586775460008391505633706581168439448951811756066871796825229005632755596660591249716814342507279506442110410202 - 50190577120664917781399044939610538239084919748976699332787582928628030136973662867371171909065634056007953910062157261544871299866205829972518645741965598668077035085996381432137850015374455072762647301400092380149014146269052746237747458758410996707928941682446997700062310078401786458017088425344879331912 + 79409778082508924842841670511572601738619756109518021896951748242307115255778670677000239229808800082527788748909711731676026662077636012903300452541806607055750077672681793571845503011200286772702048892500717987453393959424633193606213531417907247925204509591226154645662377790217787526879391625756734729 - 45914263664379120410304572225773533077949192665239879787956340362689219215791573686409858985758365192815273690855480343935453986883468038674353601419030918332147531960311845952138806091705276760424750462714336979173449061123124495520131055713380300115459919001203546532454144609989654542589170127341737739188 + 67104828737920783803486881479291144953325837936301299804499868152320629988249133301672140185506600993140310564838622486983355951609456344546237978710251338126951231488888070046508370026215053998259783638015654434924600953083108029650916151999153143003747096529179888628377389664322625664472660507469168175440 - 89387199971433664788480613726665304851251482210132323370303730471433298108809826111525449996967722998270785709834633328777251627207025890081151599925754582439178714165964589942516453878790641031600511707676478525948340266665638299292974308081133526178550722259737104633341206369296628546151112453118272047589 + 15547966079903138563122124161090004610868294978514537277982547260968175157072681801991352724527086683773570896050007519983621173637705104084413905968462333619052105217824227985499377301815901657313232226204846642523760067825718824066080847929980196104989794787138988423974497485739114667417433575246653731039 - 102174186031069209120382928699759464299709038439695444865922600362554861906213952782415111841417169590270739338910335423721985667016519869184696945539196817978690168003362320915987465884829717125079299756584662560852927743505842559907397303232892684512473606173995193124114737960286891611939115850545290384004 + 34925584303003361784917150369204722628717406632035371241728414302240674629617574486351581896689900902217412608080108347471324660584404503218347272184040280017550666600479914446552579723054729749040163841106127040856324030308144979847367763227629907445550215713693931682510697646578211791757295372799886077640 - 74086036830902167743885051410091416726251046593098407488648535633123159744192773073720172539790467925360314135990519194625677617779071970300178546854703544834598292689259216284524104366117073969126044940537375552864091986751570305328369953826779811940753238679230407958435229878059050686319905274092408735287 + 10212478139957280522743402352182017086009011704733942556097994200407977298498886261815154093085747359827497377885959708275117717718097260190259246759930747906230375924644751729433831001467313331737448974422329896948229520108011382136770999385928045382724892057288488786002878752724790725338569520356521001375 - 48440076700502806938467332922510926236748990736037783951972513151514573369508316351978409653163686783781174075553706647346351457735753556439558114539055746340500110487936435055628556662289281492695441971107715083566628688021025374313333054755355360897618030959893528787900839437622222102038042243654036320041 + 64454936884266722759001382828458127765027405877800320413173628384635525783570342826179766604389347130175077095275364073429045918787802425495047757696273636815826199770061994671976058136400322528050194847918946955498837619887493627447008668065748969374260043072965148795078372433240573632727721761933558506808 - 73615119295919704570463247769436973838741246464083499838531001438802265453834426739772393435381169876446744605985686449673294263840596224231564994165049616292296724000356358759273689293846392352744787554132663996789120885813972735875303157998108291160063099217483483059517841819884383251578802855831506035342 + 68647405460548968981257204756983848710437676455421519834469324616276215189060911233802039388890495075314023505781153675242539099719458501691692998408458685530376158707310911974276157672709988256318174526017009035627170482448454443303882805030085174421984812090768971335412226066903664947384028632284235422245 - 81670322922104622554867920426299574217461625686404193289904015965467214922732583600925993934056826022406152497534811957485776203168114657257010734040773829910378883779111221195459012218408698044545661852634817417391210359513943692008671624151828418436389505336455908489126175367401840103216642898446603869887 + 9150233076599206474613707029081873027296425530825275948435575138139031478859541266632567921092553957801829985620464178804013172267035896576669462967271414879908925417573243648959456351105560053027033509655484475686922775152192292944724931971587050364440182549946146935951491763022830850566497174551190651942 - 66452235459570927528930080777057256346441044600080116465244278782321145291759533901020376338665352938120955347797122824112846461871099277079712469451350495937475048516748456205761142968057644090446951834431475638425595736651562511377583280373215730634663255579889451564385827275610503642049605823671878699436 + 41453466086690907344914047328973186297868494241443550517650186374870686714451226851148188793026866313246192978643551730080484904413748450713136476204794113105187187915834938299154126244706598669793840741063638383575268359328785757403016316995769279880835554872743126663617112689880672510918185198772702246741 - 97894557268447915300884576864772409660342422323321469280482263091410032185393192723176055022638551916340218757680404147059447167503321232236335872575279207973418523137388258308898342116744737876328677425019688958173713248815673833665114283228153877204331829098747645313513164275589128496424995455563810748448 + 13117680333682071271438667046191166187811717049159103211733979420228704628882809990242291178870236095207521012283534416292002845860291280671140454829438208845007827813456478990016245621638827664466338389316432941254736448699516456359875832178580790799341717002854105552867805263374070335651624836393350753142 - 49645174674199799710689494936486203651289129427869555532396526759230921358770267909239018656300490137784750975080229417906675920671125641599040733033594227942049779280181242067993920992230765641579172271330872568269480814541016248506416503484796965117772139379093226245089164300110567758532814751763852273075 + 53563758606107570867095109245168092762125892020156275111815227200823949373383313393094743771150244077922893944441062716737590917437681055164063517146076858830749030663913168785897230500035148318018258792997332117571854272508640212459875923883382307825810678291902818308050817097097556226457919399692307696015 - 79894283317399881696104261355208139706071728142264328046633443904348852895679014592553525814260074146317980126687822518703383730769405586454240664883332815203034744460951377692964785813119494309339836067540557331729763000292075449558104132801465498074549419693174413126158153068207986633680730048639633565388 + 45381865539281714907956555839888900756204992984276778786939911018753447432440211006894120821825567931276302082109501982497169264482984887295882341007538157684859420382087150174441872086660994886404742582648383605293576883539526882115606025428339997571583229503769916745646428292854889538587332535159621252431 - 58136809383204051828072754053727165688854622661553027623585686433712297971074373267336919888873423821044789119511753702270994581004602275061408894129348725550037672604061646678217760029461449495290643441119208973297449829883859581131041927124179600077856669790424250166579290727540544810791381102864589351674 + 80155500830656666214680709660411174803208145797001607379854800303223648213133030432830517125836564446639945913380063673018346700438835327022445494628079734603924763629002199347107401685745089240043334642484851062317555165126432337255026284950794839259207739459918324762057246540253566887375900958840196445979 - 93522809121999062193762947746028007613070887042790778343476281546632867345972278204073839414861049623600488319957369343086285955195918288472864938216239901785391491428120434758126982086332769631122137158192543916697899452485580718351709263665925984659555267200102410805679560963995889735351651060668041649387 + 47184464227381908135963839180960670142613958501369814431244651405824991647375684488384017583254584134583182521853163379110583975345138414171602230857198557870293690596352395144313882557635265997222754352311398595460580891654880595100196476171753277280264500473951696711708198419849820208393210830935763608199 - 28031419717825094878308523933885202403982726173416573127208413116454553929552011783924158715921965818438720378415880547641301886397142523466631729127788759793369517220279773713596487062207123774604480860140647868944289879736692090968276966415650461781766190854431523631185386147765804069940621887381928853468 + 69402131287898715535191702908763025254414380288053729201001089939153335010864891233773761537742023935203704567908477275730315878769392560628528242905164497141084496064049898040655462442967016203985650936856310554232787300869012910591609106295453278425779729198339244946763806645230198966622332106644878104425 - 71535458842306286408997727170456224558817904499491477155886704447190584479898530441314814570331872470751057332826923472929167397118390755311187690937202554381694329477640946425547755517028721018134547947705946021008085020106659118330860136736625665580555797702941202111600324367344597879868539986234747070875 + 5584590139380558584062485459042111826852567751296964889200466521673315193877413726265397305169526089226485615397081080464416179556086695621456082502717503404804729218953234347090157888731188648858110054340213196233451992914754363360141406455192644438980741671636902163639439380258840137424909858564357751550 - 80401688758540093063508115829611391793946840350596583028235568615974985427838285830678774686095079361464147455913018031419843553884624062086255809899096234558956175597916406074186392160940850862592286139238257434428973716670735753648975843573980962487179963599737418750973033343374344843419321091494023509733 + 1377519924039468356755904648443680567963953868378535225061179532141545101035009276152814727302313313110004272431292317058131696291663953649902382022747561186761309078556022884027976047226952496261959597291846360737927720872082426258902443020433840481444313248581172789797945905081669724364649257767141245703 - 104878252122306388763990193008267532863050973718465055561249621500868980157236446920269065359580484441363081209338358891178323647600252657791835437125798990264281643354353499463960538571527354085535662495731466513477470675642215955962692656933868739929758173737701937315999271700887054857363214074629485930233 + 62512753772470595507216284188456877587200976537565162110159370894818362081815977310591864732075081848793092069580476296709548780922264450858407047615569135360268771468464345349106369835116037347468079365120281625512428817616773355884440403935218357579918981788090788487950209807338478187193190663409484871159 - 7561800411712679250511970846866022623781600495693351727074328432250441845153672697130934023202139080838643188404421722654734221570853303509681501194505651056213137089388591948637235261078001343325445600560630836202997069831924953221247482223480159543138183518734774922069729653733769108953194613371122725661 + 8161108308496634861068883696969300854196405472270198997098153707206863947574973429727015793170342445847706139115713319809167545820209710508271804876000513020774962123296429282296195454144440596327672631553152569261808518217995855081264612125199071795839885592448644021589729800855493277567417306558460113863 - 40171748587302213326292987410579088436023768158181983128550581509695314868974615555918730783405137891904335252368659843978035832069545741216113427575153144811692755167346852219888138982243394588941494338776988496973569179891689354150956183915434984303643724646575090243859295946462341905961728069416363596584 + 73533204111791113727743664402816577282619640370140189143335783412907597145103634067116657786963745880778691896249403144029090277551061364124601248286201132029687043013803599990669393750661508209366751430634654887009447197788001651886279055206169664055163294638615357416534989933022015035891609060440100799574 - 57139503775204612904879023122384348093368820511488138158722337817237890120224726126528714665176383721499346834944937565261743427021914031548128507507530847972335926742418337581852314321566026575752155411226751710241470170188826757092549369577721796797608139440058717139811113408168469425646042011951299392012 + 88899529755181789931583009344928006592009619150111448566231096439902406065260923988017457632265084710786307711696185920292305244832990731189393349540640698996725714064716654066882175366225652267753266975434168984914897141986062622986144357620236537385355846158410238820783272939077281770585521276302761496157 - 60443128492138642343519725189524043677778288060635480141706991516758566327181876843800761020527310363116663781419637958735320531504092586489330773081277837699809179854067970378077717583418693563109052246108370794194577466391030304892192260101919707053689256222413920053725984394444352018549270408035102425274 + 15414001810442848447215390826258318918443834984866697100381819011025797722807147696379365050636761227440320759340014345098266942389045853825102034121851638407974229873554711852740896582394157227958948836729379874338162221520315998801193574565950557399153257884893365253999794662328034452905786123125784638709 - 96709707806295738211546272764899919160160297212386840805669928844711906796083916335589270122103201566644623858389976749742103463181837949820473272203489363594659569365126113598780626182301967875355176385841988826564728574074019824146625250639837074911054822342127565071018072305408863485858662999377636642819 + 4072161206445909102493018463594103312489230955753835238692378272133234373258190753945173397962712679943608608851440119562441075483212488176132745918051453419218181291225259725889999786377458082475648837536690023892688513946020487143124678104206591175706998672133540564528339124417997561820442472748165776356 - 2451555819662839902792829632709328107826638640935314689788366615322639556547273517672775450294290995403161705363479222258856731221577486167029202858160166804578467306682827893056010993703239069225387831597678784243662903184288182732358382975926545620012906416310862666978369507774369267371744484269029186646 + 34554948002837451735914979770114393878947690254741846019803891778194170044441733361995501705561894655134497458587870777377576410272788768757210945741305198588673167647831508349269852399757820650336673015052969128402492988201316994491923545120112950399280955824698621495204370540906248309871908941372550582122 - 51998693584666569740357947854358066535459216972927570384036980903105267616164800230094338581530489638918733648573616607635747699821085243120098465847606159106368758810031658001108127933695250018917958489857189961838699296308742627591877959746727985562655892503434353632821421997022351092148691344069698107473 + 81514005296719049208117704638950645180921487745108447802745641002503305901538683453248913673223693123210042713869207917502491899448693597166608023013805719720640779558188066972644470669772753481832535506104344676982561116839968227252249818872586902751872605429937842469883303956294111706062944965134961121523 - 58568432411043258414766032846158733777319937971575417165053704544307398140653690982807408180504392086020347048936020193266051802015933470325261532309456518692599474333004820499065485171744159438108586596404172247795726070535509200906017292039612448816974527154361260697315826169197540155078028329801402441370 + 87124154945901787928845186499862326363368665241332834591734488573411814879400026792102860099075694928713616547941291300661157570115673740565225656453608906902483837985261773859955036181828005527239961951732898390575209763982211528628540030425901033555680324708093508087739954791982698695062451122602878981936 - 80423637474472147244795438869366482449285031733043532368817143543295579460394062020038474395520748465967557888983457785969548252206416212701648171858210671961679353658418329000973569694373142143359960354753538919729904243654807558954932171092665875037371429078206038904596690352683841260283160504559562826480 + 71646712163655717610376104781863867031666798837156271152651704554987747374920863714625940034076213339655644128931648373813246897245836506979157355129048063355138120486721137066678010324202879125597012066967837046679108924302446603184570928082886551429404057332635369683596788723072872472548797790473211031522 - 59428274245737466835890896368818625605996738419795460429021747526902241771803413788689333671732534316119196503514294090969320179061907553192474566846702217257903600284176728184227909776355021845861095487722559237959051049288255279619137762197800079440898672607999412899200726619075420403516709159686750497819 + 69844570597494439760948967352121078634821676845030661841212872653295022292051057066761511789271743527470314225573037788496457691276143254810523207199979824999020831638228003912940276201649177867868755383634851260262201463167994760430968080672507370729286739543915282010716274778402449684576458379544380647593 - 87141249380458983048974299086870388127888789237383443209065961173894422612718493949932169554072470148128459474234035008710026310976371957874064691950368289598927592788895440512766216164758179035359783382683304698482930075215087691865978767821866716011342884273316925649518433339217543377801171810571106339266 + 75079378352750967782792166549971210168755016465752351316059989766864201298216187448335625155213287718592422754028268303530286454715558325474089164744044239363699281812370522549054573924977374349611262386569603652156606672143072831700586924228671451599168830763202039297789995728881563670697061762830454805800 - 54809313097174985564918323941915788065280328695887796753714641548806842855667196176514099154877440315660741213111212597337653734584658555737402017472838850510573897984482051712327811790924451945124688274774914833084878528343725896950259895066549004083023506334612971226958531656218038795196105077392323883320 + 8291439385013858162503870853024154115418050666310698669179752876414260554437864411146076309836403211039138265390812478958235900928547324328809107194953855674979532937884662443833872435377872414732525041425859344804933669804431424665594178162036733264537373428767460446311077970793905206650099034041940787916 - 82284463045767099019219906957013143831406528715836497470309200101654056213614787317184288484314132360886919714850373774781710897924618061994761127742355741451571745667303606304884398836829883841568493592726148311246932982732539974383280082650221428903951590954529201971935505327875551115399663408502177964326 + 7295391765470142617998949638936530619757669982455537635539622745699191342507670177709296485620675168139453020394419233540209570755139443880534944920012653955467406701751449519727067882792858747392689112015176645729454068564931439319724243443598069708145070010347550020623395933633411212736214017770354355910 - 28043357931467423177121480191716698938401204681598319036498808127707965379856398041863603188304617607995663864690952349927498388180666291715944941580664986789587871212558336915557685811872112312912910039441691277112077222423358756083935939521802857105578378051390140480557778512514008857653536184615005905157 + 89923850192321855838429344386071809672950079291172252692143053190730442206008563518684202485909688687613717307108661994697641960176545440224964578243092571101424528775325632027404191401371409059936321722659344735505346006093503023941690990760062821869284358710832033525637615079525514978338274302219283190760 - 94604034370189179560458065474563918381506761653933445727904735034565407722831191531545210605346386105148605262888896905617010301199633287157786637114045084979182307497488011051239215843524416417432350674984488992413676135973352263444834945055437769961732522128938054227446380162325992905153454115823628289324 + 35507400569635559210492493876237144208635340774302121356005230831487141250061222608916882327463146905521577563121576573383912999790976857972839301952040592039805088915880632474569868694383954734076273472518104078207482355053422512232765875757339253027984657345192981993096866427262219699003952983987488171148 - 87136439870946770141972667693447504249129945778970578705982228311598419714909687226275927648741887584645480759225958324161142959330337859895924756029511917593865366365256127622100103816379348495202410922297510436382187103984047603689951399257812902105546143068666566834934452991908329792364759202207128242416 + 64785987229618141934818584518685010302256220984708782326112754386369484894767581912664896239899592926841141042421797195122244006673033848529111144551830520991213558859094506665492068976821038051754427079375840461503433986732404217587393300717885953401465441771102476392853093295169669604053673932086077925528 - 11150964803006812268086272344876371877808667681856002260102081917276164825959231760798517068471739710384708408073842810317012694860778401513572277173780861869045722293511515139765177117196062915072733758767689744548563397796019481645701189261652384722245444379524559022940940315740252117301154046709195690139 + 61784807567267931323535033490416367269750163134290341584720546234862606589140680389604972765771586891925025894235518514922490343225037538706886209110337286168594943500055518971061917209344909018618254168737657104953795668138748579781611858884962436351045555426254125131898885520038469967249562284312800601243 - 81463363531184473221108254326174391180556241355614224085643012333407063617579973733046991646745406789834945613912385656121580335159087762335313866396115614966248185165838982623715847044265279661272188828061755223991076522830929429004113833246953172701882741599762571361506578637165352208511223397126975021666 + 67218447368309673056060115368103765981250534983702743428518352991537968309173441392701279934126134769343836701721095806356651675636479562974898955578181980439614654647929610820777864151905824728547885771853783166182653763197782465122184092688702657336592034495058158286623101508067743577926809494283693396967 - 37019192680807748929846513131972558947457400857838295053814227331222283528578441226031524376934593815564260366065607892982673187197929105681305271620315925223177507980003677104247603499038348517246137708111429918354691928425291801053867182896969815576869800800127105159432653579366440487568599451553329441856 + 32994000878597500668263604403997272101271882303329913145290218723887709006321189699923117918663358561423138529101543788650462552212732043077211343088287188629192141130729465982246585496654267154582574364578751891866587329682030337692368859442108793155585867321561422114251975647781332851438686515561667434264 - 102034252713196776296744746044033458654832462715897249918575317353491970687176845266608703753217572426106404774278279212713569238810461331329894424691193596884266998706682052167561931981705276870216155634759949948160072723822026645474420031011340997188902129897161044305506237617963324089087120348920632797511 + 61784323597235906572027918206402976702602982070652248832758848770691018958038040162018143542815769542077335502329746716589038569724069759338971850308206007993709860832527634560276675313383158975419134408277275311842453106782937274628535809645180984998629909489190437745751300379564317310173564907611298763264 - 80452940486779413399884929246641347993453321238881368366797171339316140989280511268792547665969927869537937338261105219901452888587330576446031518994454806252067148567864883272950959773373156840216138814588597144038901222517948443929698757977502482932470692273849867905915448571852069195669430592925354671663 + 31035931626897502732677867822574042729170199392579640199879130274515648939798751542017044765522452020212638124713815081384562572612194006954260922084856776889251728403502725815104867336428884897046013481923573494895690046059861810806825315865671941592316295854541444912160093468126897637779874548546137295011 - 82949359329927928856215632214053406071144758098496116314756920500069946147131096520278999163196102113674882337820748180607011977665374880133369109906913476362931857929764701530639397928056909475883099756022575077540306407286593061577110238947787374784331321016751979399187476811200977791878797633602765264160 + 78855170255039479722514431176481849415142334599229586100002620790394536290667346526716716492643537557754173868413886637484616115466543394386688934369696613249905916346162426480136848101484626770776848246840493292843033174533964491833024526613606255617106637142782432256511504612385051180626803487387879229296 - 3577723108303456763613532274269738326883454609166283924968388825671753437900300585531325313065596345728737368961118172632964424168861626010830128812527392836550952937893837562589453607805582272552215584233554692523186868033801794822544377657020354487817202908390246828572843123553743792143304963124867491287 + 1094553578392737692087087042435324071777336214163865988154514114338743663734703544839956434809470066933674895332429541889226873260722639595638740152827995355655348878599713742287192639458939633073438166688024491770373038536321390635608625078995303529481269219471189572491351582012692262693963774435492521597 - 66166254454347585453700111841512050029092315139589097790687982085430148156762879469005397479097545833623268042020723984960465944966179510367575698182592511830100043608189459889979931845661995353944607235342425593834629597073321251854702554050680299268370515670779169357617734009133017992589839693924992714384 + 21296256354695281180206712381595732230961571082445285556508184740611414913563822951943928226656032457816350110447465035971649734341707682500889453609261671569505444451161696647641232097214928152488676698587991383932049183467810673318285988847968231548163645735360856116798013727601373074610038153361750511050 - 92208803832957180339346170666545820839147406145239618163086155901777131450796996838823756453581689168023379495228210437666125225147161127767500986754922725504250325310641075120292136900977306123163250199923792238607827631468601972759606322370826043166083942813539811230417413847402611518877033500526849381677 + 83995292233580521322091375534715951700498945616299214631659832177210054897500940207612555344302846371285176263023521446919277395289823180070923464361114835914660014256041746979453204508815754857694114555203255881693926198018993070497303690374287485704525877226950610080967363291249252861384438296506599809022 - 31621225154184284809619161006230189348042803578331418277356469682957703104132300568410457342750759824454325990252135175289678112256410291548973012939872084056196053672681570581209105496418324189969057541129277243827953293463071652995963645825325146931738989480523865732766926726883687819045123542664160992475 + 59480583482824201519907866167147239361106754040280020111941292863307532059416778470483114758192677325026522184318616876343665777422502150705666933870869288865587215989914308695126746153323147209844902467302231828821081724119642641893820801609038402150571956478310861972251741204936634933675841316957401460160 - 98741599063969500827989931340255245025078027162647699062029756732128382703420220635388892993506777771203655650994559068416486201871585619082808742158385488238421013517877885255565991583436853884005079151834723770658393154775073765070898291854387025117028816932078522675477679695620425296660859524085553087387 + 48209072423040627485738863188132400540945310623012315317501289148826431761991844261671527966406656421699541833169163201391126430970908796880213400874396826620182387397544761226094306867270661534715381445108401608799347661744257174121641876345233603189313731884103324328484418256004323821554097463182713578704 - 67449991668514740137484884939289357866796036602503161732983209487746538984646752904392185299289890943564876467778247499576226538542561226764404218638307471236463399103228454553370267216698948472326665369215940725088675928203059632270313367764931633132072075306913156806462631218240890249449755888560771355979 + 8565183107115731598032230727073345160971512031774590381156682758072565192178295013833858006580690797592383315281634668223765579706081323524674618283694389265761527176143768462819668468443302368038885109829019845331488417077188269253389898660974885331238701565182208632180965973372173221831496498077627696959 - 45574177066200369872224382981605351445544019730966969448968557755970707630674578207980076504704361852581366725247234677649681639377900522219385063112953245674603167135536417081809492962531610639486382987794501609430193384268328816576789141645989989082389007096088543128645211286131980287110374019862714146577 + 10891398423682967358901523449637056216776986465960959570959061263625084067637545267111783627419823905934664523850149533858304301387624940750996349594007814448539510020953548380315622522706367809350251615612017037512886117056594554413544082764719992613915576695674279053530795817818489758106061336129986334708 - 55605233117806182904282253968167140655477943797084118235980347685047266790062590735557430780207546595602086330954574821362354720290026904671277592123700876384614961413317635532945200544772543853935043450956354954899954890708305015475706066778367094930666207853085236489408352352235476870613221693949087078451 + 155843137775878204219473802779135244767666941582469717859935320665104984540403153216670480845751731699610584383341473635777479445800366744430382039866155512274608041899674746938656510139992196695259595259852634903617944339208390804241124696042275729862663601111694534070528369171155769843878350537318931404 - 75968854430468569308951356243886649396694744463861816639467240145839901834356446409172341122375270364247650295171855549191718913195432632617494415831699291279570811934812011824901036799131380505626590875930299533912019649672107081450823921600547677623038694316474611923769144233888815282019155857508466990360 + 28797247767051426796204645770510865141680564482390787042723575511529293034716474032583445164891496713302713230973873734330923377803750189940838892988945883788351520724818109997073651292625741927149027077701226309943428757829970622264847923360671076719609002995905820322199639991352372513986718346381015201341 - 13538423234359441253850748040034370968098593620048330272068828447626327274174837671429715178667215950468798370131958566919603226442355313484938412850820755794102417516093482851024964833792241602813838880411979355150021935803989811364438200277878177619883457209162006792253184092091849663768322762117930837161 + 42966017530659301213757696521273487362333144190920538524702203398006559053031339280175319457286315079457452526629147965800288433338548766210361015756243416377336798026518124659671081511560198765948375052214527263502078440523958388857133183824921979977217940792365385904884327197109176466166972856593895864793 - 21941445743487971196015418538506055172707680919782096306174016922940213482758835413754870385673050913561069288175819056753361299189393634124412021367981182292660279540615455336915760578309354216123837624317588944518966130134465621677973821145624312991232384706420588108720738611166956109036142692071756071008 + 53431214595986719264497189218375818742506584999300015384826169402310936556275325041092749514596733043398380828614495172430371572574880710095578166793706037336063913334945549947491759770692452927168516563877921719743716430901508620402458197678008052638208287159474192550402939849586363567572826566794210905632 - 49613967734235766325771366923187061557255120048791663699682847645093697497764462162423056043448346852425767409097064332411534402532840386534209924653765916773513616147742868073621475984503082646917553967195928923440366453592006694206825292233865258827612296431549616552923149022864141814240463479158136815537 + 29693100144744072540666842239822639077907227246068810985332932792670228809141290137098694195412487573461220681972672244602475802258773875916749524722091224218381081912876641903235976067665836769661727353981179416285124090343649749069233534759106132528420150778860509274142997498389714871281701977191764068931 - 48324425621144914859688333319583042634179479594196581326524923017040616614335682251558508906255797909737147352369649879651802855071383457678143850493863660525419840485664840787474252743122426092522930604883463144997434060359226989533507146177034240380264698234002082196528087183450572819265796629803767051637 + 58426796157485789981068517760629862365053735894280723564510180387380095482308653303016670720064960293647818178186271217736225095239000960645530831022518633385870128773765778348094879961347180722720929111582999407940912873442610324795166682399707655812936827357471776651947998509374431985495759908691585685819 - 43647299249038270140958658910197153158535531481018342068855049049385102650601238609485627687012095449927782637491045574608010505354146235377906369331216160165834591307275668384137265620501808523328844421348406027217892078752447636956330857034212868343593241982997199681396586871788017684636202889359765745454 + 81379112509021162593056032288909799925690648426838030442792030925353976661685841146688052820162661854010789970572247478211107038401480507523800312397123252614048013048169291896885554930014798783022919076899516399999177495188956092662348691397885261182193642181070325194441960885894272899007541838675993952599 - 84721016114790846030178965994443003179774389243258594627824608055706704314152964064021893305432966280631642157098003426387024480979908807179803627055194592731123310355713605399107800502654334435915590027347905834215748200399504256273214106468321798007644114307837565162525966378856639138993794936249435284483 + 49611367422194513115035150551734582520298521030077584370031183308653547976181791903740898913282571064446151144695149690322615718047801521092351604722221930389131307470356870858984258278626056207259568815084343283366925379672888098203272194930480415832783713459616219587931803154543020247113475776647418904660 - 73249147838822084326782860227652231028377669073191899341431127794449651646437940822260976655193195839982195553831877162861906812238982173697120095442834581597841962993492294567525306764164719419607941350772090830515377730907503522237668448491084009882072996646202848363754708045568585052512780543197164075948 + 14427827293697826012050549547046674337305691151270335221448483883755195743929542043825846906384766070768314838868040539901555873628061689667420916859257407366907320074947244588437402598383515830777938900506374100195384135210725911768449422024174630910120180570210160173013245132111525346404920416937139913864 - 77177693063946603673880263415132906652885798216232683543311520490300731571557733139892701295664540826585909068429453191460672916689387691517862867844755584528094513884361159482218755019227858772600561400526507226327365503969755527662257381184629336615300853677816388013636369111005915140988297524365296341780 + 47284313076338140186963738739866910389991227485287730520951752416201695765652481569471520915535814869666314109187363009626738751849369505980118433674304792579783274698164789941409311978830852557490847101589911690359628587664521412888948784370206299746069621084711945134550768047648117194274127238388669275172 - 99295427730456708734163768769771690868224166528266706326941530602218933772655580918787134523016180409232678832709257174566511018701989939777543981832221668756655840428760494073175647993462787112873813765131574872530787383286510657727300263421202277805390259358611855206068339496928165552759115464967769414021 + 33578643693463388201451875951380717322471596840367759756432827309185363277142360271574483679693053879046077745129784657105846393551892973524070289715943637225166713617767796796900776107202656395951416507728845729499206422659015411183611989491833273660702702407951815038361214928553799974003224570879945506102 - 9678143123861691549662416463922806855579771851256232900357228149823030984807579400550208284697225644990514358615276277961234738474980189592281229330428787152238173904335847007066469924534676498987166984719347985038757958596346209657623077937484392981799970952169441710149025713449257485631687749858595677813 + 43717504550171150070898941705287590813990496540275562859866136777311944458436401066747643908162852402922714000594691776047610632379306122590902640610169116768969755982978095677090687000905821027990875999630770773455183527579706922920480221772515155509967129528442462593713287066151203653509801038028516092620 - 28606903007678514162567011983865703751286603132937127120432636732751151104308473704603070902019044279938198932244962348745201519904612726121846633720416264907527082160767753005402556734518631108865064949292402198452912329230893593388307171190869342258969283814292445824059825678175351289001527891814451151288 + 11329645033823635036191417135906926100880494089768743288385497414542239490137803055809656642167922033556925262825276582546909891588206623734190643966026075978236454766642130392666946699045740071510165711635048026036004591207190131325093675514691443735831365532604233890375003961355250800873579577609126940934 - 54463770215497175087193857578367135111540600178195395485016272781877751393496220862318090700530180695787141590985046471614607701710753159393784550405116485111927870657862776550539517161524670966957430463010294770518007033971878193506773969525397959323674320737149620174086601931575276227955497842217657701033 + 84094659536270120714514162783062649765204184632202063200986282540281886669943526141889916924676192071925589040752615235004357121004327862706774701631249741275003573545300533953994443123773854534816171890573826613925870738263465868626134278087732190014901250927700762574936215855786709940594244588988032958096 - 1290331718954766830198153198199603766940109020707296538929645015560587649741519116608284229132299473518055484896715798661839706544614984336354844279614691061285873199024488210061052060726575214982961360485520306054089919589810288432053391303961708470596008358494488871425772025838919187218046634374993547714 + 85008710662408376288151083179476187586189794193938053837561519964447418973315115878550674183453656237691288799688194105338259157696744515547902873256968777627222705353935221851918380276896604073136718698255514996208907399614026223133141867394510725026630731286355697205194533915395231622389549111025538167955 - 99790690519724901674192732074590727941876405261031791848610386025777695058231153009363566904817169915374704468354281397381785451939046314944932840403121736792738702153067529812011796587649766516701536729366380729949448827444908464188612782980166872844508970625820501305893288997859476174470703886195502928245 + 39650208899468487799495998579454348045302945494116317802957821664711564865824036865177768231735470629885587926647881784161396245569156455407042514738760380304249198068551574660335102516817617380108567483681153544703554704999391367318785985173557633280009162940955721472492057025118539934390819221183168418727 - 69906925386306109115379756242946670081928798615234432714507045725961703984141879780099211625503282761756388542130048257252090764570450818129743399043963931009110145928758451651219191414327379555161515524071819202930927020787310505445974864239470842223982618743465155143288532896677451095859440150183029728824 + 12334498867857905855731993244124403708876903321632541368522463169082031168867080197575538734855601147300612474851324290367516004011131847742360910933323657271202343521560577077538939453295489300275413666432978349071158237807686537477938750592447432516825523318759497956272623957727729518325907550285932346116 - 54212628120160343503367105351625198304482154574904407718380314809875030074688741480189684392859867791978277024170067326516013963841138305078182544182470622297822224771777642927915241780989655261194973845305434554863712683126391805467604207640039243055527278634680914713185537004532942027233180758299533053318 + 61731128090795469506101548532366853170428655215806815220551458895296307914023730165237996563085309427424298387728722556496334445269723642976394984832481454742037925203684834462330581031442259269755218456754173840656592337406054617829471939749477661888128275055768080017163595320273508011053371318115234972242 - 93778450968875315070162369671113279000928371238684297638821256975215206442987027817004950532128072928271364409683761262146329342885233680603060519851647609028886818639749388723005043636380373039512240289929621583884989949228903946614959529415905202997919967395529515744071495438719257519435763557621426482310 + 7678619016424395522876570495716980278436252703914149692473874560680442665956587923119158913041391547990983072702248629226514006634960028836484338329967859744756981836826650418932373116277108781076204332467544917810515716480766943277150511187447808340003563360749587013399672304513761588502089942341100905245 - 86087085771888404678227263507038438356069141688580953348151668079255764441203019365759008642870637556095418453172724012086164799826653854674952315965714153474299093616284998338297064920924713876309315349559016597972124008665022422262183744966326368443238973109248532871862955388388483600514433861526947684297 + 50637614207312021864911076337909851790415495125717438505135218716141998855382978515183023349390698599989447399953239800961477841832052005934492609647472573475907635363570446700097657064230090567157660929901188153758576604345575436862473253998999098981168936113508796782211252093535942013900291139259399645173 - 43929423582500487517925519926173935611403322773666582146012830976853165532103037618391281504826707906620865533329784912269366759620548044740040285660989731334343994889207706592880101441715392700857285875442877234522175986236529621596320947261279312354834834591777378540209669369217764974344742205826147386310 + 84937771374118247761599687964743046453531297470212526078839850353927561184038347814153378941414408422637901382398486131334716222154437724858982003682338636242190147039256053518985603961094969712745568313911669566450894903343997214383715262907949117933412391616900609768111969956888109782616950058302831516148 - 4270483391294032818059272663702852727761096398351188633473075499718486605126695534997775735988333401522075207679716550073365453095075889733212700077780413059385953812332517022521143182234222504654768035228233614039315072244080287009435169308375283326719874877952126727981561259777309830536602026770436505400 + 3362196400382998285652979046232367387492279589183488966742228613709749149809680107601565289173763354345280776723900861290364727191871427601173587943769089379713975454112405293281003310516264522994461871498581450174161396412035154500997448293893080071621056618690588627780897205331396819920529304621605953705 - 64816145215336068407263251387592851144621672043346186545617347136694724262384809835422518644581819767922803016050179929562265772625644883798902534977880475590786878103768779963074853297970033900175412199167166469238014065689057702224577105342231068691892173700201492124915604229460546406713628061618274212508 + 48231800076940609456779932049037903973849775843117433091407976101742628548649155756237634508875599731627528296547023046025943728983389525410222878820881927501091117303899426326132585698639273495744698963786601773276811610056789071799741100942113365261472229777606687806345545605346447207874569827159923021104 - 39409734201038370119524713882604922819983870207956581319345685795529738902129406934155912886446433507005152513275554375315785525438852895446855602563909138646528634717123968063598826998407958918928861008916258262455327337716367980993382278639358324446988694489066407639013089407816364285783135707774836962111 + 608855531928775025384234836428654641555821660622656327575081509190808460367541116351030139389439192856162615187189791882964023385172973691429071573312107735331301333019523488716730902160520603699393884672917459574849031951621729005827412201137315804211147526555603614023081424420212913775174514450129285109 - 100842194701436811774858921966080386650536710546960342490959823258261032441516939687125397362160808947183644394671743746953831007203053497437449792877049391334628020794972987994827061539283705195277797869473481643885561293999010010089812944092564019575665277110333869410741000242341144797286619397077568433755 + 36614077167684274377987231988859719412290470866937444772762205166095935148946964749027729946772701561040710934639688281872242463394101172593476387760957770633041556984538316994512947399460952579218742333250175001420193537792841408508797765423558464231014841017690148565574075652355437587633586232912834416063 - 44085752042610301682941285554679165544485864175452874621902798494168870151282569730667746168420708167172026695914062315341169560698687251764781787847441362195256548702647786104771863050942379182975408876176899395210455201157210237297762833332574030939934298737712222759636051827615117524074792910421109328821 + 54529289478720383661945852393319267334121324635613040777875505437499544339364451294710441235066119782558568505191299191060378087220624079977695579109507947589691667775114441168083605195058532896670226702268986641396075694636720885418162542734523254242750035216210179978712140892260310940102188765682077643786 - 18726332401884933012131892622191569432344442425766902126449032010888809539826689454576350507286822380326815989002832969250390370023946349918899566484782405361603787490780046135153346022136373576146917499717962592288272026283105294199341074044689501997246807337149263324647757416112381970823675253102145560057 + 20422102433630209381922393640174261052951848216043702059761396098558207232637204165980002381068519348538959460572529718179072091746413380268805706227381645028364122878585981174166197751168855667560045835662449408958567037001164984221084338429839972708196961055131504516448521415878884520645795899994817465125 - 41400891676981998918161369063712787776545807712808861530469149059524825701519643610098043734565152732202671920358701287739746404993569157135741645697892750578905325387680004885046067061707435192784943373929053602934682588721918780302973020165307080132881024394310182058531382294588985864753065796595211260242 + 25867226027745491942518000969114126473297783028469164231253430612060609933735982501706044805484497921170591325375394162409114891735276143406529779049525105359745625023747475540070644642973325531762201186351390164212828111705958933687897101173574840014538271661538642786179952611967080606031954000209683510085 - 64289724344422434084416602936227374732478473839761279622488883670904192424796640058040323453177193120169310403125143182911049143907034571495410153944598870006113185596310954722337420193983006072075113525155555524958923330504134632911350610540976140361892186431024156621456587498122900597048428009137113432965 + 93711531879359238996754137291652516297866121614102615981877057317358543783401507711550142243676790922114496297335807723383675768425848361661790370602492009133409517703112633393144202892312666027813616871223777310661889432293211979725228227786803749598647510580195826529000474939792591892514638464352372754415 - 44496103030122116105010425979453230032940956550856744157279351858410322890177250056989701519049455567659948827683738483454811814935322229198370437236413650116091606828348252196016981767726058562135673310777687617917214301923566490184425812155352738378535531091371148647130760123114060356891418927895329433193 + 25928674885095554021334946009090187855066067266646716761684328104257282534553280965787420652493465174504091571111884222378394760561607188504219539331190027472370121556974740214104748924363072661954374110136382573469241647767933585303394649755785369107436367925951744947808896720813765352552047908712219220845 - 51307882535627807460491889102488790998998965810329304877843863158521317747720146031473105170126269344352005903204537874992547805596064711848618349345321209572264774063964974689456829571512862056155647207551712184241370659654988604433673285625152440885315150831901950857798339196718523768547559839910610823746 + 7351219291781695275377254730717438543073608124385197408974728719593805380509973265149701125769616331695793470809091486827057280739858423859591484459129609970287846262886708229758377964786890095373571788198097083652837813094691067220691916252693944357355799066845929872605545151707925230577594378812058048971 - 5602798490134859505612408105817435368477242435766296582836568698839124407905449970285380457355735070850909888602608144469342135021510438885572816217484216325422741180477306820768426432315323581889529346057031585898511728438296048176314235936754238081840394470958526585012743237228919752745610764634149166989 + 28091555217973120543083405874354123755224787199265411239030278554729474843741012421230458858711667261022755967836048178109790350764957576696046398305759635153692186249455291106618639248800186721883435395633435072809935355349170834017569152744171127798734395361051465509944357502866888956457052995610239976841 - 38478302265615129770575889834442998500507504688605051592149295275513404311391304505467552138580130257028480603941641861437538995098936020293634336004495618396489652228781971372249273355199238735261995570466484024761401990525514162312128028674911237578143969988063551104187794375513433712935997114403212634615 + 54880481273297261299112162048425286495488456784534047822559567158554467962556375951242512777523300243960322592851735091548550865408721755218950381139173039406081409324427801204262564580854141263177516910715529260144997439240891850082527301038021475464839077365410355916515876734635990416159254307270117056118 - 19011030712181970802759924346641679660722426004710935368154644170849689576952543669520571179104405127800517628879621348138252207966055375217966674653137697228564244201319243694680977138039861490209800093996919637485956348926667679778305860893225964014057319027656118407313896148437523343826615171396563591948 + 12623747774272297988048862859947192831864904421232045965653526762059055013416567465636235989569703638316294500870993282059835168532409834341549339478072177926981455904733261376011836665447028541794772377896115199018335137428918819526362644244358654358101925177734010364889262618153466382175880456873475527766 - 4055975376899424705444372364097742858302310128408234527940954422908760123408134061259027288333273196260272578665705471093225778960884612733461543174238950276251720431721134031906601566399785040978564486298753914305897063561296190796427708816221275205833805443204102668165542948586072986335710637559918252604 + 58285372173089385828731565531136557388231243956972528446382570297300799107908450369491221336807535549503216028245718341060229623945751734964629570615233138548291722957431487544530144842430502935462574362878387157382678690603796164210842232517625305405199139287871585882148105539142003394476270415537601570015 - 56467675946385686570471305842703616313252103896140461671491401211416073236263483708470173448877303461375860892043723941857273024551518357052548169743411293005345790744373205201497712740004668656487488834934685346111739446916680202052304736516516759406315921943255435416880292298138003449401577180717682831118 + 2793474086579512147338868399056250510508600162483713322849667013202241337292592787492280026217429976496274295861421655288889936708734739851382887686517099527540965234223297294637108014233283676850057068310269695566054297861238819244833996522521160323470052931703762692386197461153382001099672697364258905714 - 63862661998464264682619507799306828104812134599880638134766148449471677263616558037333375950885799228171458689242483072508325785119753006262038625720439598224378348987296603715877787955557641751567771866264754169925887772331822269204860094032557968017378495646673823249033369666209614486201409325648235279905 + 25043442414631708709072498580244899895990691029085559207724617422467460232479131926243073159462616039625839034625781992485611071930008950911658107752249964223890562469152074290855127038088739125143369972229658892046476951235265251607577165358890317477491589503611562448397009513235426275145557684046291854440 - 3072624699033375750004799525177652313425489548680728731516383885492453618549929408669873878579145804438735702861989749347043833300360160063399957395455735936283909221603034252684541305594340061978779768645406936859865428148091784791053169595162866037267118948769411717368415045387730786290552774613855790343 + 19584217713060981331406395571426810687748304261431561100113118082296164472498354549544570866887874313270649461433500270165175976323698165563356060202286472311199068697041407427822861052033870954026459948158577757247702195979616262217351615733772692898319256287118272329458076255572949384860623462279991138701 - 23558310225981765112820789108425483549432509563410227492413559250826752425460890431894362621288937801307949053404195256904025782306485538625003743688628004932825544731696369536753302699296307389571105286340736063500260170306472978079130963495700778278475658805948362680091098329765089723771740723649995336358 + 39974259118894135765762117115727559908247998649709159595444906012373279562746759098013744276102690756994887109914534496154096533190788485652326763216034598262652245931564836978937408954365828322619020379054995293748058674602749366268227529365572439942632291538357154165663759177647329466588252237935614736126 - 62484049568224312132386439039312667084584415150714799495985507804674544523107168640578947263525952828734083426764607510930258472057329999362468363711324618495245371626948261958096566340670184829681896388787352842595835454664958408090678458861828436140013324045732515400599271715225400387432017511986443055289 + 71150532035213123432933145572973883781684837603873233112967023467506994288333691896795043280855063079009740463732024342521884073922359390747395156216871361621332453063657440824940482149731735545385830993816029056769888049408012780779830568270068350260829817169393607799607177403866345501597884239935532949403 - 14182128829125235239012935409248187731459738103286032781913733632796899220186518308176864815331862149986713857020991181009693296721495655668566914381773525240629184907429889604347346621168902594193740331408419436810218801114228958821265056321546612267524877436143397294311955839827300203919814750087020231345 + 58205806102637099648211360758768845130943199160410180462161558827901973475472243245355447186827285399910397672036619079616412478152016583547414238000975120513835510314270024907063511505676510137198019255851098831804996626463189276628206991329465262170949980597396788237503563374458749507010716511362408269123 - 4554518319294033732288465323600431674386111272736763035761250205543928033517822484973945215689090264668435357525995907678922658082719590808701168705860470440236073910265538606060904570012805103769515907246004762647625949869768708810300349110501099124542865631254192798475132969208517151052523573845018902565 + 83293436211278972468413448884911057668391317122755922984929904642122162605126986293073947386351130316103211651380555306828767141315625136245168207849988233303751564013934977162694231367336045080080220192646975449393809043478138665143235462820267479851309586827034278693772737765269652152985132925137744381798 - 103033515738781230775191246000765944324145941310658204429809488899166069923007981158518591581779602881497931722274479388684475966215852456805636586186246491179779574279375868679359293472070579715017749918362611896882244019380278198690134951380531002174954051432274497701579027411072256964992611260681648317005 + 73385658521192428420806881391958093350199301087951524332639127683214850942776389416801157479228483811476642261118685611907859409560885028803113683753195009277348171963483119291066903326400469300567773579061151603192777139033545195158690969317703556077056296103139126237953362626357362364124993005304599049052 - 105277519476238715512095286074029369557526712493338341805656414830609758146952543948456983665315392356712652862450381134786692828489898223256279221573397869634072601207704831938150298543281264698597718057459657092505467293870757397242034642458661630913612665931118787853360996610246243835846170868585948775170 + 16293654811276874943196317017121560054439582028122475424649541923694172623114639491646150619074012066070060058875798752685794812109630558439077488997950348701603844149173184216296119695987484987170864908385915608216255270703634261091479578430918887587684731728411799027729843024634928584983064549612180138564 - 97299558776072859788999653207546747964394385352231093222540341744714600703534978707963626086377260356995379549212036283099580095377418265129529239253309418177189450746989437769532807183372185956258260091682388221414406772247025581980517836852815635377011116325912225868402086754106854917110339141629071604249 + 13712351587272165549650304324183635422330453959109790871348512734893027032533089334269170810624964251284711262290899338183812135946745656763106176423218179323317125188919774774505702881403808016316072022407253803243513802845590733146408799585456006435316244956261920992218396259343692563631002114193547242885 - 78314655100519564453227358996666775822936719064304529839871513371827252571400184163512121081218176892569583312863552772757994725269935820719405691849017526652141806763784432272201739654305881174208267834405231837005220445556870779371617049911279290904749137239707442127055575964223079005942754765858514178672 + 87710457103913285211859077553862588521478602623563002580115248863301202258987113464356448309852561940406258649278813207280672934473445166625045126240587026382345469494077961874077130135415604411747988195064062705654623316792491365098797559869738394709111176691672733910289166640443388404587291203751526614743 - 7845202945520346949867937866568193100361266749277373649522131182969014423082129294466144204198555132815991260696442511582719132304837723604228607339951323155279355175512805319897292620362683370665737520659379819294528058250323320437401016919123369360270548497582580345863858410302241903037476030614614566679 + 57026957397314458755222668752419689505096219213213088736138678415179577445549110685499901210679821484025034388506101714170054722719148288510999909481553827772167799956598588396133597826757182665985678260091631304311928962793564164329416305400253500794787371017167465225628752350743939688678229959228630998695 - 81260742611427044440640262652282562944872845372310619675270474275071891958107667393179861770967003878473725979961650637834953994806168911056903865475113492902776230826750404958556052047871837842455761847239600972110649187939622519818970016939111538286157101934447651463026530432080756715816662992719996270284 + 73762524595569446523335219850147045455517750243996633441280551006500759977560780772555578616640173261952416416818508769604844170596235756459344284561152149610007256555079255729695410997260220039316572049047892151298268925129954620556100527771938309403054205188253907263210361377432549912954687396199645617216 - 66408480388374417016372144234306058250133599099979366562769298538963696046398982985814296119005638773528217764174345111333731661946704299305394168423726140095053116607840438599684470854231972707944620785720945891683194159803530715397129118357871725189599310773134036626107514765025467776185346618370777005491 + 64610192676075003973956039976533673369230387126918038033020143531277149828682479817708887864716759906708777639488638091587416601287165231950616905011822254712571422487957050878977743567473126055331069265011941535225005056067138502952773561459445031069452423281766625285217588670304647379871782866985838983132 - 96276268723418664034374811960301789941839284103162987810624585768947807321967941401901810256522396964611443649426880479378789166581524446132906549120614726500896769150456994818014883845115373198027318614460470217864365616987238550595509462990703511852270318661073456904930453568755053700043046511820278441958 + 55078620932227795696962027345881213567813699221678475884760641970149912432203740483792467961606582648601812524274278371252623013363609218946130596944444997815280941851358851700704714334351557925428431464879861093136485256997307728419255232200035449956298813073246943347315600296143421781333835754682454103508 - 995330400872890080391360152478936629501001657747556938697394154237263881612800061150327282979720743361409149942106018275338482767027000685336798025274140592486758878712386179365635364480489143319794200622368115025119178993895761880423138139439581160933207069246250211919258294029986101142060843573074875643 + 36921906937668500603235585985199172360855378438757270424434902281815500343410823830479224007687840101612963545644463958674147536123155623669758407070258717523374426904915725484432847405669458065079359814647044269269007932836364445788131539654429759785330075899059635150485001714587474214618895566773470830164 - 30497405117689315762525568145629651542585077632050190331954083018809898159702970331485864066471733886164501944864163811092779768966346069173133779824440516204691671886610144457545853827634547566887535226299836480786417768866604313013976061209345938213014062096074796334273040330135042160065132168176508448751 + 24877229943937846294872430727348474549730078176304755205898136108432666843906716836014192706811904225914800794559231174896400827726874225878000454819888785034192178271307046851729718310846657211828531836371342198409866560110866169173411171142073494973308211634745029568685127672275995920193579493230927715193 - 58766083547682341049763491305931993319995175524129357996474183722760841311914088768732131955841687933721689970248529015320135787119222946188412520304019681909178753817340191840820110601254905101623236412811108129099052055527553522757757118891875359723559098377380346739342271328358190124488183170466719272295 + 63979630919119240247770955251199770511808452035231803389370599935965324727540529587109238376931891127821354686300647831857640932625414159063745345519188937208849792662606164475002651496220296438782174091870411262759663881509920125536638846908995267705444255949109145739102458234982534797636376783934522376631 - 32192879109921954356500623263478240168287342155886247874675751193307701773281260996368023406719711076443611579447204031520804939653236885654837796234462851146125241162191506138521023043731305887571928662633539177762864121905828315182543854564168078247767238680378786135916139157019751468665663634744592275451 + 78822831504270398659680716657376287525115704309254809241421129527581812243248286600016643887097166101027154750899182712529034735104401850053710831517571898435225523567075804622680523214541927881889590837942994539892002787765619106709370583568165007530419212764660845624371927251934119730565399242794308771931 - 3346820608771698322894126145330021051937113064230427460836264479225983430379401329151883228849000550798352195468158808306780990344579169583833472860445257933026808650391885588602548847531909547535731196740455822371373133152097351627837631293961151221428988879192860319123051586040786135594911826934342463357 + 8327208084711808194401714545674140346481973658251888480980508994219884438990064504070630308556368601676637831442025482723980265184905774335456367479193033780662461762057848260780626701183136991195034158752424142272929366073627068785959132207309550801799549563076060371582859306788609270102739202312233769058 - 51448347870193121743259292374491171842915197925421091157017917983474641414129327590965481650083377339675715880330340786479166629257819582962145836615883069367347064354065909489466025275720856902076049242896391907667180914243784898737378265873928651404800953446106807925956343039073428444945260881421026438932 + 1512322558006616094630738237653691012346046560473278346639658151949567846575333269319454345378696180348329073628545509653029109715173462254970350587974769274815411871787656512530454705856073795574813977022297349425992660471387991587045383343943944356254022709142229882469825067555784034886816915272173073406 - 49207510846882776099216351861659381234439827966125887745885018620237887340478283696586719140598553891183521432749474511141554975105986019951383943626242357628074569508856992399583599440212521056014776967376555190575532315631842580988916575221224027572171832141762292827687910838994251189778593239516753544369 + 50390378233013981925554579560095670473194522867344987862207966187528576945760576843659014467972205174131239896735791669354761659296236206804543403667249338359692267440919711250229399471490414675223193181209225451761557818764165234631311282979976565493489137924495725612507359770090570891050427510180354138589 - 43854373886026431155405362285199825526622423699329160844758738513575334354210208747445044766253853876735180201125817823689994042316921748433654115106969498878238657050556072950535678899813934063456076189744186473157978311211047876779584937852705354627242678339159983166869239097075093004227452665946511085980 + 76177394035309426196928550251683329371891018793472493023902783425161452185868256823057697729706037359356273575547086380910316181103628401582220422523578073800275337740998493380683792349124045477788527231304551271313714744937255190688292724719629073187368287023067507201970196465236925993594840175793118392332 - 42399996716928207141150819120074787931709912602156112080491673045260758146133333002962870680584786793505420991519075926373544449147170788814953047504161854594214960730336645189255171857117582707362712638471979936011674283715376408150158803068896962128418639224733846150117702962954939629479329061551827716380 + 54747077369245311090156313792678588403012768849946102674391402334357217662369526220430046392634164985079833666935051604464298230835047421936836502608560964063884081837868780943380242944231037282922666068389313595296053565572254152166681373700413984238143810234711762540153723819288950170059934964165087585273 - 96456717859655524079231139050362493290818293574062758136313648041386849183775497973423257692898358932197282292223396583028601879437145096631451411893229994277657092230466690882171955513704534531438823595424314146834543637217856422278934095838208689600191630426899490692248213341194874285828356074423821353319 + 79945258775587781653933366194143248899083723499163738672124579546209706975400838016593094200219096799321178268351729592902635326993318307725392995522921136052590176192454329322379435755418145640941432820718352490426121052570805341615978830412370981530976292284001316589519870825105298399834623044417859344731 - 65252333695649636030678026659070575167858784563473349681473285599349768486519916016246429017013292539374853937275577689855681584587472430787125342511700007189831333708566099119981016465425369339023941104896761887314154065193062585774391717080912401350299140475659540756961190019788853284444536925370626917122 + 39929403834055318302630471825410619417951193966121806134964067257074422888938804205945449114783496668141609542668315419391039947123472991544791327003996382295207489248889801211647602199385016178031952319728239476111074789790806329129577640851520903374260412845710414124806117319690627755812919871228946246264 - 96739092250539617154372662849674399710096625857783331364465277438842557917308089060122884048217666164219103768591748670033884156287137772821441625567740638584291329238907367423564858892012727911031903115739824036549685561903551646281960446373712215386019806462076080156788096294444775191563758640987939565130 + 48258518829827837402604877865322082108008941243361478250159167621948474171359625393772109870155901486652479998453581945837831979706225975842299909786969490280935175956016031889009346386429411408083327969844058581155496756181721367461139525699825819805861947020456265696771744106242310669693774945754324349273 - 25390923842535333074217931591697030907664061147878382798597875855977543631859747893962215057739211871717243646866247554747246220101241137100641940273820261846313253188996651620045004210234785569547700636082540413734485040858292660917943027401250015668743093676055337245006718194604784879089399312255049207084 + 35593626715444011430448135321643811927315111126668403236639207881312676447240856250384989278405002369067166267298661777256906661136175201712491142412582727033441918565145391009591076071807099381999643495815144545771341054298728589498057978562198345573849858861681406774083951653429343539311978883253616563619 - 64233948173757913110495274059717397880657367883188401755667205286803327947567599021185720791751816749452617062332728949516274657683982432921204014814122616449589590220019249489836457251116508835511843497472809414154315228727392906225854424623293899800559377116941555891073785227694826111044221870929157785869 + 15887652775124497158081163053095269646252093294052417876198914827143474965688025078951531882487720030325037039592300126278990304575860426345439354245568838161658555432776989851784884527023260331503504323004776585965167474073278529413252238926515440035272971288786282986682761470315527642943035939562059532045 - 13336842566205359853448615744652646010392464944586089444966525082001972427131067526976169491188693745506186596475128088371260290914328756014404748626912463348570502187802214914331438467717693047428994529180309899067195246232710962964791848838187249082378583707309354634120196468646462325602437432299202277079 + 29871083690169393424116725908213132510972870352847685386477307892749800692645781585355476702899218270023212277783951642429782933380551611271087267473752398580806695014436463593959344947508816692990093006781110008434788480866800241482640869497752325117882320792693426462275654858502162643972665520249577863522 - 96079200119932245840952806502453786353238850445831537450667432177869283642110608744993118305567704096198942239409115047546385775104834399770084116596873141382073352116351269954780345929761943500743631826722559274710865012199086029059945260006743119214884072477274114208586045586243462082101713035566518371274 + 4062802923764775531325388778403679080955981480414752887495555563545369593803342029078013485438074923712654983516356468779556489523104695597642995973210418661906076827341776382939620559091747399563509309885686020858538269733368900945537462601139311097148555618027116869394437485982599429143275072096280168869 - 8112632783888684507014997808245306038578392327133304106923670023891026596087465156465700604084059966365644420649941399688323617119655714903766331323666935749918232606623340103845990984849851393184375821051365988062860842417009017977337469613611588858328778953906072861112453578615440456323963712259410064459 + 45119582759247221535881450985263971607970236163533941529723006305281921591519426001035363713173484374927812686204373484349722705405661167698683115018143969073632205306138412497294841596129503991682900521808874962148590586269472323981801849507957214808918189207351337344633212804268028977837490354078541174282 - 68776315987209837394258202690508076019195951718139605567093031566308327106112277284697934620993521878887653325316799876897310747763472817102812176415658738831201292291072093194470740140002381536394144542462527063592458544175314535175593154734906592533211925130700642281109276698260880851709181526958919349238 + 39056792983439344461320966444634230259414579193706857877048417867642272394339376339854118279605196631047644198979933092428202338466736678399406916396523676354980550235384426830536349564427358887003717756521741242918291711912919671877426947114646359518437500927805177546177974177018306223683486030144252288290 - 84354887764212426289370410533451284769749614950235940416613793912170028331646912113423987204592596277585680404740916478853290995704963452340272793803778799829863438153389972469840934260813595291498637500632143917752922286439483229684326753716482655044602404233910361109738951188023997973495354437087000068061 + 18337308594678289573904583297046152490882376471596199372563400572351629889572888168947785845122208852590997701633052496080665608854662579715735934380224777260338977259614061290188615107764842877490625792968147074823872714237656961384022083997905376810004929565006952984283789578533863107142736403026973528595 - 66569760389608502139059763879381669719482174733430350045879812432284262707630386774469409474839800982588149575781318987089154349701476756873580207250691277946224954938702599094121452474507487605086073073484748184192171524449493218531199348256476118650801231061254023180040037343792535384530374595828842256420 + 26108820330427729216438981619289051533748938939956393533904422218447040092359194341832668424414216632415520092552797480885431012978341913992827653114920791436826955808750616210240708230361656769987888477995760161201317597443834320753037483462896135362974763052676384905814280012167483954786748569742604054388 - 66850910588889442121206842765347774114805925558640771738608110670844561201255799757011139298786625084446397289575180467084684261135503948181055687932775554836546555722199308215779424431388422765447378763440561761414244806109100140636692456186013598353200322187959753398553629461734785478088732526852157885603 + 59132888662549167822846536060425845234230552550155994522455668512388896441654648006854205345141435991740321273496114692655628652911382854775774276866762174336864583376567572607495173316055985167380779865421103334460333660597605472801290209484181251054360949298443844799813242596817919853610324500400539394215 - 46998765319396652384378723206325111205305594654344182918570652716790700264428182498219757897156499532052659264034617235759412120897338356263410815382269839619307932314577338197303190192510354264091248371281192966749334179559244560844602500998904447232682302305579812025416667996947718366637097666114719707504 + 4971666850855203155974604294491411764887782468733015212551406014474500094383307250366731696747872260396541003362301837286020135258675348667296693790619847458215445258694157450179346204620799788344715739341205894789727953942639865979790062670159420274072009996666754615342458679912653786538584694796387654240 - 30472217405412199903113689410173575614824841185379342596184917709170534129679230858956995270778766758649377621660843710468727359567284753886827919596745333030296410328209463121866732503478169049361761719514659570384707988244992489017643096962928402028680309370681371118839881165214623356362869559344788772671 + 94324076177072481969652518369668159657982742172806331111432050300051955140017512806040360562988220534224119664075077083987779856648608856499490693654036425200448957440479121905990380598198495506579555125492213213716045632644769423928912081461387299258894683826334102111879626570240869946688923722619157180020 - 73343335730759820862424168276557188378455364194746932859119334452242397204351667075521468634584504878811519397708877900793481341374936805244543838147905729138233629520381392785546615487934984746332541509664077914284925017110178810760962547107936307755606507497148673161599046778625307341735479606680345330924 + 29411574348553478136045815278276621865979309541145330180197840647827582077103266316010463805817217979049450227499876096896894715083725805811697389024440589275070739579132744058752866832649684559982915517460925241466790441068526727552232892186864735544825714529616404486399363496580747572559130992475811358097 - 9942574918624001337994499207615494375988199733657902152750158562269858815758375860643322984461374306918232961089057025988500437278202088446653510123885116025717081410451366143602338539132329304594519855595062050612631672244432462965284107519235191158984876752051302784627772232038436828442668570476039424646 + 88897249590967184163635575721649457482251785663657788197144755747262831484461979619184583406011756518436014351233248739449342573648632258683044679088082539010804495675470654569653395778283208667464739801529206123441611474812075537253796984947711370792890529012933234332779163971544620976215480824370129598039 - 15234345174057487010702858951483261710482779040243437054376696067919241889763673445525782034419987599441927766913926312059915349974679998526387109451012097951909291104840178511881617287548517118334736180499193154935787998649290865548434137979229261802859414669673362162415057952552174841057282057836956777171 + 94279701573849193192027494165272149066727560732692513057240312265194348626903488477422569258668753799264342175659436897027993020803636869277000179861838411562799845339821028457093592461456449611626395387548986190632824397441147947380341864625144075414319210338864360045034203873839812628297666349794403479433 - 94001468934800145299413566828556911472056421316761007764519327725153699216093280314488498174637702629577599344893986315287131330623741101580257821454009546128974710378100142847157391291457721426567208475551529220049173608461624934456058574353579867818610332367638187183567915788922742807863671875519915661939 + 79336229268207361774030158611218418889800821818466879157651219138720606745840383350790655023785909803461851786283865062992168516485141272593213973514147847338129196274828182122840971764552102111728349053259289626389888208537799788324494316928074769715108791145444429691861125605446235854450549599089052131003 - 32876093556320373838261541389340639989852734497185787792514157884344151982640287005169200648054725183478456972816434418323048315799751088950208326571034552734506982096939389529018534338042118390839733649852171759404049064482936045734573962773559693937834252683080289278328420770244904791594630261553091369526 + 46494132397974661446818519423675095984403535991625947472469202355428605598340202457267446034567202717357645182492356388335313374516821501162326782438054865953154735005222749442830254864762417935912388823354427765053546991250736704019134528587823702146591401184211512522918655757132514360988825062649766177993 - 44387096971935727582649118203633227101870027330487507299011605804376378985811489577537081375655830245583256586151373445508014835268557852219140765851965116536690062033554151314840906972348864749415316691506685522932182778443302048330428191229779107004962568616281962313540614639622756481931862978638157453153 + 50996518427990172355246486225234603898439090870375938980556092842475849797143469714398891321778405512191230675723459319153380059467997409639812758260652381480259318437308985327897517939554518420198213890440664840385488374540766416004852276679114793632475455591898217524663013243956503809612285336717289531276 - 97162228555427239705817276956647678847339178811443007540677703633712781073817614870306713672311623455889051729928099411211084063677723563203305257251745656482908711076432918403446886471979300313111276664226541559573409204800379986154524719792598909072964458927700371327425857289816688463762302136753201721916 + 20820574846074334589920467350591159584026734439190756078969488251687796826742016667849355497873360903183319276348406821790104368204955775067550611156028864421863044671690432516273099191051618371825882501919113350702508084661381905205793855409656702136675829648535334135189281722157302569295966290246967644313 - 94748029353165275206781449849449216781275047128653027032637233265950226278150489922686881199288397229893431926159176844514990697657067086294599671283926796631098513764737990760401252897326714766133517380069547833710260469291880286184243680019386078518483991821585393680108336459623222980846346247897483300047 + 52989328005064142085492198397741959515809979118248481341846693703076236265697766463157785766030400176477300046603350907605287077211295878086686932127251801271564117217596077749609227530132907526090852578572669291814024941144306868222981172415061287327265147359002235606422015659054745600157069276866518297892 - 69573878592368611059597067921822498886411181169200277631506666205413593647330673845098450345192956254320712279080118247866508460566405843777720834890147986939064140687395309479384221772942302320954617622567771801624692604392156076506931244447444521995403576916066093830830588332329287813466783459071522961891 + 75692775287065700164691214477476224568278755674554518245620519182762474833326425554452045997269275581090161655029887415997629278204722227384682253421934119990527130127522572337006848196877209508021106299968339835603596184940520826257462791960444701410800121415109183445033851358539856823997012997858029867312 - 41118102811509719303651223908076447160643041990463579386640892235996890326497194092465703404141018031529353361435687855850940778144249481904807477007107795683264805471718120669596278908721022108804933854433725734090767500840590569053008331493486316337892867517006960012940607833816420098605838232492733327748 + 13082476712404788628027537871386359842923603202358314890418133809262995070865285504649115228332333313176405851018835360763896216861526707296881614876508634277203526806985240319927802137194971969737477349094751256442268615721791304478865329184327600011572870325449862553408796055583522910702036225555857290716 - 34472348513223432457209368571853288307376589947409485899240230135672876174843655363257404525998984090615695790090951607268813429532654501235576437519162494866064828623870162931967133867968316577909136517457089297921187543657514006831915158181962754956023284103963723449343366352199247072173310644994196828477 + 53314293972268672245235291771742420516745513221355945460453973108585666125477435407911885320764518756733549396192237054458828189554960691190677586267354991819850512768280434451719610458806748167512907737142318979886886878844134995143925877784047130057808502034382060884404271860354663478601838781443982721365 - 67143353146710930361570622055638285773636907706278794193313005289511113021249544873189168743419019756512518566840106842336483221118803905764198017582902345595472559590800440218221411736969900758105543386469296176433959722001815434888562465056366681781669505093377689647354989105574678944507250749944609635164 + 39504276641425429229533530240156722057992973888293832575665341254913598965755544023083937450877956847481285759153299943955233561392841203448359438011911665577443660969332004324541894578102892372415727828289686928902455581067137131876769872496818094568619049023014985398189922507682882996495388329367257829943 - 53092499658661361730441201670031617913469271323738527580053551616561819949959188193238935880573449707513554264972798769615701171316088425383203141687554381631121834759296188798111993545920909406317099807747940265775979738841693732025223621864470879376930297016997265923592443576520826960466287958424167102702 + 68062045051015418821022135867449906730298744165156545565792130277693884405436729114920271824669908384992100265856283967000403329945013632174121202074605404946687566966061067998535948748345802908419647212003090663614848472016424448466900711049287844151848982183696172202209585241106757936212223591741348554488 - 54149715596859192351123040069815300597743845664668207340874614430017789742779692446773304910684411183083993595411343203989810909768555169300718069072541959967360874408741063802544679796263624668553564868149943237100180901066876425105530719837762050299289887372782015937200483781635062153132713253682740224380 + 16718547052971251484596869406871013026761856266159119569773756015544624757850774111409100706451079122611699067270434838165882101961119178770036635856108384481041826950013821155075917408279006448878838299880549377459812526722926974858655978080300152467836427356193517087285949590613198516643462073052310858221 - 43512601108469950943844549476669357220152544768485755532966011412824171386861015257435513763305595305495511770898178063127973416058994122434646797246967302035298000343403366059689710363712799526158315678703346427872500195861162447700809231407016016215919468187618215756855678919102278505220045155546036988825 + 77764028990247414600484134585349013301436556383210763836573497861942369328992126173261540854045538271531461136267654092952806276469050450741045804946531430918123380024606497589117069024162005722165826396993569104246121381376356626941425391535717439883445091561539568943047305297478336767415280826491434643927 - 47678806101585306500603834176585955681384364585498055274605811298859093444198351609950177118038348098396730091722282646435473222810444265405285235208968106489284558488935489993021967829669521862414709900317285996179242479428976668639114709248904190470218090404283247219262554139058016839892632479788684885867 + 23263969253626685642971327707426230425289854978912742333045583784576622708966226295748175260203154460499049483732578117444570159291689972589252466831842081479369772383292963775252119283493260747757470372679461807769700043564382077882358028624197468191907091248172331496104914673385873794474909066671167044845 - 16171001275359344048760603103685529012753667226378501214514978746655919169948323884072329045084259297813139929342673251724253076110781368427893534111131715211952408522969958990545237287543734473135762750667976498621347642259361269383434120041914097535634349420754242585197467417746014175765767068631543770068 + 59852320347157531352812935064330231646991525454242780738552451580037491849904083925141381629918288442316681862030645581715868880200945878950104556941323792717181630919251507939858052689172487878185792047807294798255260593146891522840981913441297723653540293191140161968967278007407641161370773412317024585346 - 81885785343232606295663854736800821754944933926616820648307047939486927667444362032599909571050883804887006863114833078373195857947085270124864826804904202348560088212890909729985902300974959305210789811480378819862021399758060456002828227806190444791471918519037302736851689206843758335267285630286746288365 + 38552706244848953082429203559406081207351121078163719740871781194334025804244988370142259703454029577689350458420663326563145973243461950960565626318752482108113559581137050871782028095328366228242150530329184081021016360555200919284164629917449480318871772826386337982067520211635726841707492366525715060153 - 103712487391342827273066442450505504212921500963960036276786536068271444635301393916430773262922057960314115257921406806461127190147033283900537366038117018285160178216975789592676378400526172934177739493832348699336502975167162633867446010440241761979880909567441566028860517324634176190049893888037033748002 + 18724074890380774162403471459387848963113839771936182519314759486528069772328039249321030982811104450558473427900476275225688307639792826690413900226825585480497309557662247760115740398903990543054555845165853152663616061199432507473250029783735160144879514732583517447851924767894421317129968267919937789320 - 95917483105450696091550307136059280966604680670354777375984731418443318238139675200439550775312976426327028378101449970900709270049687810338425074427392972053399801606099454600691263969843028747800602740840779926490358523258625393083882795036543458277212767886951302859823738998564966408512173108534889773996 + 85048716219427684763363948985444376366598238518958469159790696036756475437148417735701881497081832781837317652052085078016835191254369222189812140829878576029261777716185676160444338088047576065264548393204539011470810625514769268137591344470866921257616380646914611337071565862726457147782849838500394723682 - 31498011456110737370511889202415722261757414418092591948331968046793919460169256920828484451682012067256848029366374120671487142387594460160960553386682750045108900259801997968442767725850017143502152586509248575726840993618414526975602423751376885968969724333294375097046566102327793363728248721315946470077 + 30943365360874058101867086052412157973584122290585468474829759765278438619064909533533583796663149526091706586414686383077184716582491068322587127502548211552927592003909142082398925016575525290653355455547112448603411296442367377081758781485714475561337189574317370435659926161374346439602823273204885099471 - 83386605158651028346242897911339925644611158779600527404547442539847394769165584765979394627163675140246654810247148812042608430968276825648432301991101010979150821911014583626446395210539843981777468590415913901175120420965995737518891747660160788923938184925205823545454632872477081618927286289643994431781 + 72824902198138457586902574440972420737951596813428263657700853327894022751907428212388002801488341081394923049807626791609408295105734873330856904291654985363634096933636184051288867343597298472040844084843256620051109871232359459031064535583564261686766728727043513574375927775754152908887852544750989246378 - 99996124958967750455434035159691034758506139060341044165231756545969102379739966363455712692583910062446794535843157093303310422481613506459486037864388018096576689745433557189457552372895911137225065535579351690505846114240199642734910546389334583874902453990562688024572095930331050842793398350839831042560 + 73815444194523933011714359787601408453194760795435125687454114452002563393220863244433671443441220498772943752722182475960032158312283214347292805011888377012142510183352227456686442799615124817802192114790208526734167556165613224146723504576993601203993422032477589431166274605748751463726967688061361684078 - 81138491614247667225278778832421096427778193105393099671633120182852141529631865226257668208954109143185747844090009426411808119308416795955447836751125355377311513231095059919295025951367195420456092711889237057373486085464016274049133135251516388524324266637357132309221081710560739474814196691535516657643 + 55705967628614834283401078864857397975856569638899014433334748547633634441947956064502006830230746157980777541828037172499217715372450576770644568397639837067864638118892029589641358600616949470267618048779776505505057596292458062696284376556933729778611677858432004682194406941206234497010217810565057719883 - 80035896220581005296550921456321760234439202438183269281038387606776625649913505188836276542986399228776824822109423939000954355504596081797159345457604404990890760685634240560847080763278747145995566729709072635428879768783377005763849905355300288586658948506519626726002259375029039300633961934461634164316 + 48708061153449753283430800640894386225454047371241308128781657696347802396940893411174750142072148380054459806074022457243215012097888848516645368939756554366426916489533847100990510313210171808886635606396984031547392662227756553954115752121323240850697887429259553006400765522765729665424982341290418099023 - 29348308435170931433694594187405492884618658238837861531117074655920178354006579426106778082459594162430778825473585699979556444513990653747710460563268333786752209039293491683647337616565503122076319523365995761324712195275088245920089037585062895700533646990422163193713368536225407867054381023763584932176 + 27327577117466059286392248344589722110405566873719843451838253954255095226956265374041007563457526790127716299146695363985817713306860052615627181639425596874127592236094626806750236551771540074271774423513855077460325286341213193996147787028746778921303821567024818930385574550188739921134696871955610494598 - 33370584332304234623924050912757798660690178220698106377592265294737290070152674962127818377676806554214321803449419070548642801995835355210029313955293756501434898545310545115714191914434996865795325827755391525283983266969692668722671930288400648529017286027640273348913590012402845343992486886206199304925 + 94813004788560198278321389909173866299446597154947856302037072657994814901759825643989482360434049723650365579588771450799453505392508682375457429378090033873817252666875273921249719913437301282343832092782041623978933125291337750726944229563695168117894814194788698359274538464243113761563039117901787278981 - 51744629806467700152307869528897249390246007031705254685732519133090713510823076719770063497191209209842837760843527460509761274886054546721605356552010891822537003973458638826870199721572542815988306239070326171730732753982086104646539528156088516251657431551817925979701330523094040849928567498407270854288 + 51052579185557726241552724206756684553513085404509234538105768096430425103347882863354858898675027538024557030402270668889189263793577628567935078120415985915322489378418940674168172861185810013065940580693742160913227491110154851268447472409480279500991894772762869623896786402060129961029847756451293471906 - 2297964101814369577780781984833785070513261929928111401521195332619773588431469761571626031142120139742899253807890831254130788212856780447392901395336174217548990102671350504799846274900428676061235067281440804038574988128421878758103801584177036222138977554787645480378910882997118382299921746582401177398 + 58590143333806886110292762628031985143345182284911876953132521279456386081296559078709264941116114075229225000314196654761906504183240282918442011786809119058117085351807085828635819247001236583570876508944176149967797932204109407341028937077409386229527725254893699415022113705386705366059270752309008599707 - 3503393086914415736158886935787612893195017912448100775040515280873628281507459066386716811749830398616806657175136761221433259176565548738747673867308867338689448999683983803583790576798463511746396474524444073958661078453801206923072102686149689735860257985686335735738322321715073042370372030594408403142 + 6657268045754798426434570661600031275177635957301852337572839788691266993797223558105165442257039129143914554296022238574861945198358084523849984541977735588049231155606428349428870382561518926963895063200241961796243564081242431869534503685834066494060991025076848228596671931353969682646389586557677374142 - 65151497244368931338794726875696447066202865952451816953848362860682702593530032336166541112061792185722176660494364990928257035772148716512886997039675756997757520038577925383804531417201000643554613604342737186919807011152200755126143756218585642144527704374226942643290752209434968788959846794775583990189 + 48614446757732630856028020988906251595379006934656404389451195386842587694723894800625238154862585173785522947800065187002838091720537906115257567655854662372588964849982473948352327948199549268538165254294468013626544113163270912909052990171716977514148147804051567344641924445656571194663106685147654481555 - 19977696252861329844321014120512631378918507639112528937148732916419325550826670707599917193723165812735804295358313747583608749537063828835362412904428711939471878424940486488222823055678553882496315205300525221072929655749376444810250919324127181443271382491844188846388589429409298481788695783071602192304 + 41506804670883339415133127483833745164227817244714084698639058685689936735880508869350342121991145705473532411860860400823073149047973336168300035886762528979644583789962919912057957374955381652823527539023781059327084330118867559640091734923902136475730247644257739864617219663561199160519602624448201077998 - 52154607976515958910138703637893298604395077421735491221982393587788414708981435391311956194506090546167097224837527186730052171358370060337057858361850516267671572923815712549003397699019745456974559916462122624689664876831196637446909769497686826764761606023401744707807186534817602839656698386405472677922 + 61574218545571856507774431872359475812916135188199392077708027165869192539877014151652814420381055092200556734506425976289848764348589063889443938685277862356073343407016116026886568667604524647158683618637185181493364566971463743928313825482431145021236849574577470570142058308581678484453403555284201311610 - 39035655358358674049874230882304123654769208378562181383632633665071172643917628079619088972278933880843321978575541724113473605151583326701933451715230119110630745382721181247389760198344851235027485509830820740978707539215324774260510145801594523342054367250358460668722795995940858307342201140903460940322 + 54616025344662164510819488098335124303951765254527805212565512345912366996682452190978024489852998992834569748445971997686713176996614924723595192544483278092465287191433958517519029110249180390511705916591089493150473276904474174896842526258003018608523486615238287771387141670756711497050979931573089495505 - 64819209436236108913417548069853393050914689416006625008175753186324240420159623118683606953051774117779238479221826038326520211368806449582678810837689045499646105848051740382586172536164085205642632015038779870104669080687601964037367164413626952404337175827237406426591904904660924682992682922969866286668 + 82836401585252458753313421329108949277349814369341940643333112533485683449210238177258829297918836226753201044125783086763433195146000124251211421127229752613364503391738338119564894985219245733225644415049193330186201254090503464153546277916859228256334804479539406409966080449632504204580887932925297194181 - 34383190435139190573219691595233920327677006138749126316324581695086363471256676475991595658069575679718650581949793331721685557537595103549325072770086540323979964623340520236126366059785956192879818228755711082871137074699525603914141577206436375138694634065129344796238255398601429033540155556605936121643 + 14015604438998426193053014945993185163263164468069450001200718631699423589459664052304540833325296116811643715203413283432747916043866432652279239808527152725388668996088840929898792606972363403044042870202414914506823170540697145503018348102212055242302858049428588139695793223067770711381180512347587788015 - 101735258676632147471776854910488589109944076651357289988079453018634410237036167605529338198267540029859704406736721851168443193141121544454362581373516720073963735436443531508970084956739223537458492251399428449116254281370344220788203598805364439029413314971283384215012916503688119135542638329568545328908 + 74768771209537867073589824093681810176105684312258358430929500358326900551884036965835449968836142598517552075296094678077235157542397000497263762674599684368201121234287475564053406190175941020335516808633522082643965682308181371290652897141113261653800162579812768296769693785366592588169497784312691830557 - 14269919341775679119926430247044471274505786183896227685405360478691910935179645538901892085830916813016169167572857488965907278833649322487619219505840996765201435212814736632516344295560857249922433068834554908830689966092452371536591365525386726357487652858934129109599072377689311642126447380381993112506 + 15250191266408668397343584174305396838489111735474347224663454159680912113647229010367489161299689966854871095675511763575360811158941485885765148339003618844949943328586239439335156008499023307493102148949570808995980982474610138358365254201305363768577764014287846424215334999672755680406710334422012618241 - 36410568062218440599454776507416934620822229857547792822071703385707688868453933716225280693813430555984053266182119094580590567354815556460803296448008427146648850321393911492642319150556652208172509150146291594052225962559545557043042763337232322492226895311000265803675457685374762622655599338095022747847 + 31032410327838542138823753233548405764337964414357021112860457298555383401943784388643993080162870676831471420270636683583921227627198300675326525046703571340898654396118136233840500022379137257442055850781646759426607853265072733506716269178683760176512091445153070302112831288859359673123831312333608084539 - 56727048359082065373651362341459411982821109833141389050918014016456834343847723185202694272797282430307334555022201788847676911728269791078715675971119707979108732584502387361773958295107365076348162671173517702772966939916291269732050773870600111731110851219516241405317845413075577874598942660298273819604 + 66360288374817779397752034705131600098924614766243485623990532759311621942040843508132686280539409853991246245950399651923541546154527999710192042230535153610411905894553400729263360524959559255213933341718214902523937506182039875509459129892350765638339410111132125753067889781139139767261395811355913517301 - 76982899793716136413986237703501709900049970155996307688774372236915761506256164929015016788879175844009718384337776229934536658641864740976573928531511884214988631701561691291758965657316395404621954932407164846970473409266862243083705873554371837377829396856813558448347248116572308969841772896834338574026 + 8480201599621919288989104503788981364154164814146094679337912828405524576466906431289572368110378985742786430644342553516926686398628079694421633844335218122754767036127432269046118676280952133304765723400975590336280081621213754582738725644842581851920227893536101407371963117608053979235800964478798003001 - 5927070498039598615407383229703362055587949968491601671124307888188405850240043040385882836999893127469282553465006947596601494529847209577599810313920677324190294058343964118825678603648104149389892164275453307367666301044826331436243879664947574245949217651793686523180960015420838721264030085359559977504 + 17801428889279081951264508755961198508710767676598126036209043501653673680878114949745579174130541968002224378168512569839190960490913525380148826143624606993575277536589667610496153018189852349925527073232930332785971723077588835227743125849870210508109585391462636841114444833007354098148197373795799511558 - 15887327507558190483984688431437572995159425670570344444802994564058602021014649839456351750159907243667111760376115466559058445246713207617989539579640913541780449571792545549845574882649552595462278824556925292195518179693590825834473452465545584829002997475705017626768188640523307779325255286167977730921 + 69889685924254789888925283183938538866620508684295926263101295724728895778584819179642839066749045132503102248006054851290557044871074670940224362906199868474489389300686791556455846008754083957806408502969786441187850817925984227888203223529694091192513425420343366199634464511682385068785919284783415747533 - 74849792313226649784144437028516180152245988029199718263939946356692782372339797699254008751924415000925802365482107190929127641965236296646215832230882603861810643986970461122253845256568873920768974823111178650249838153091054879575409840577656378445379332982563475992999590061719208237743388633565580084585 + 33109426429011686252292463771165742978022942092720140539113362719774816955967814491799089575256494257145456597851889669900021479948358003277464921895200312404517515359709922515090356637832399276302568419818885910604063635244690274044036093975307081120306673248327645052594354497276201384959347118233595706978 - 94461036032781380629908827220857201183391300840570985921833631743695465293320124334741528133523095734189393236551080124806988564541144245858834660333174854225921140180122988585789793815804530156032358226975655638985290829302588257997796517560487885892053945878386625333113620511667890416894521519463971040551 + 24516778971446129686647570831195112731993836721640893789094797387595081598546722515285711779912980391136483714971539213102070689676394076890474672046770345311056249780257815171337240096472571887738914518861718959116713200245142754505477530813415778238530249785425473883424301589248701152645346492552672972231 - 50453672476424911849501866845995999469247866270572334726897785951073540027118476154361199789577937698445818443127948666989326600374446821343083476440845843195537333531097729031588737001842589910054352552377521775895719928870042581492478561004881852681708032896191699489110998062064710470232833341888128551281 + 52461914683866182555332831668209835981711588586855677890601347597510790413329038170278862010134326693558906403905853085542728242033118845036709923293196273581778932647428947041467650198743211614374550564341476910584915227482228794600118944860219704352750906102849743392980482660055974684047605051761369198596 - 92630300877150772109222230191975597980718862342720839676026976561611768124025297481751086598401752819639417763429362972562966388109264191100982583630910006703757118748215584678706885609846060503658857580325017387641048243954352883989429403541784336340823745742788733900992279678393030429889290632594067589647 + 7282262682396175996791848345933026569105639881627120579453469560803228182558211961987174204624399529147192663305042550758956029319317595246328911611318078165611727207573404318832507875575685453666383705182682425824897013520095151019915997644098596784590897945394223383255095572724651076923730354897132413780 - 36736499441347909602248007227990345218381985570310862948330089025717086803644669930725121141417630501088032154587281654707034838525528407507646703948051003326530998423275181499844034476785900226044269562744539721400502312018285402143535998691729888585859779531928369627028361823339167001852726726675069653032 + 89611511954143145773949236716305986053409778355240848724683158714741550328219921286891505985335497921675684475978747548826876108749860070609720361245873417539968182400066779005541741621820369198406329913968406956189280841691964971549933631571115716843115810384178819179647285221489531016649364905245553668775 - 45764248922954821279472030012512831492133225774721649045669674123223639726854384956729811255100743301016786993648722746957846945814488278206321225792571475102208287034958191104591506471862941068204558346887242160560901900655022602401275202139081756363765529594700350984236966082967567473167872512286605505755 + 39484824176142274739087422186344967456917544548578884914806432614037102563287727855139046310895855952853633101368812206536491142947804559248131416675952006694310864097583572084707028506678459336240421828294326450175747168760485694558474321003020862999442632936677142844182567038794910233582389937330285635038 - 32718595912682412783031633985767260670938916504328897537306165217005582203708054757748309953135542788701841898841043696712427111391492636432699942726375855040932716068884621202465681643187660311482663733932530829339235431414381020505949999537151131635720831648817206385011939876766825394319886423584812663015 + 47518749994940408659207813751052516431534593055261395714084648703964703144875220267684723643630434674057709726416436448811531544656393013172383232451413243775390888254742507494392705695321484280061958381013463348244761994024884665413018255992268656867349202834303084069964549884312456489196387513187852814749 - 93762871093866736279520085235199115234330651710686545863007959416536696649632542250949754000176295268720616989812367831158114612467691325422642363286115228181982061059787114077363402958249831753005431031994310914982748515832589433050236620380914251108713530982610411425122117236101076833776354776052264529767 + 91257199170035398829524467576529819218226559614989997215825993020012514124560643562401843079388665714614628244782324887728662927073603708668405534881585002578430731797725175007813800083513248332419773919963478620999692098319261095601072243763226578913865066621800294852116045425679841203862985316746155135222 - 21951513413826451200114621450693035213841612092341116471653519045499918274042474590534874044335073594442255264217615118319062013063189096195475749815525770647693928055729154161886964038209430640875429462946851219466780370781840694395203383846596916850733223461780712873157457645861439513035150072297610309169 + 8105478899213911620330598938850867921001323776003223114227349039877640975303192987490366419097821232057739031070492698081423481446452077807923554478322382331652992005584468223290926540201783904683879436113525960694179837264016073282126934725298777084678633261295942710541186254325166161206426594082033023663 - 57052430836499617352975863341427965327435553556938476949650761487794252076403674064625118901170269538480515339782583831950650496180121358030231219012152021856168158627459412439047404038284701452092721976957357248962179828902442110381429947789105197828288374625761137600406378314212839661952012083258165305946 + 26437755026381242643282917543904524095110338436347503994085138057639847011479678758797713045909528807769976304663380647544330763217608917848402457720074535743102828249400993934453980978468068367300686896403227066241262810206060296121681817023314599053045515347220424360157803408129010312094334168643919634843 - 17975015005473043270594202573327537609952108630275326989599557781620753236788418394823835870711842094817630439521994952647501724699246732014212178797854420134772221753706543261014460272153432501886809345558402475806649253996737110914605699930479163721428033652668527123484525809518048727127275864179758532938 + 30403726960442865135504374470339035117347926290918540535182161829524178693526801733245424939473377083778691736801592901209899993862280954058490586822464008023225920461243024592004974800073821285342522376849961315221057498498761749678578114642682220224827825763803580410629039860673506005887089114373128730090 - 67754987769496207358298239435125860971878329459874902945852340806312666692580967795567372093708737425125862569615991902462337295630859380038935587328545724676484109115420440196071709399922027324815329359678925790249883679913354436017465579674108983715220647250849484773174719617940041598563371021581249944940 + 37858496640646452646702792212337597911640352952858446870202368978374127348964607057173579665484724705006888065166005691351510356151390633488542143049969092376709877007937924101907141820090651223779571771865831543409912014449726509680339314220002020020855434807385798130300324014140917917736462893396011189600 - 81577988854606417496692013924881806004515124583391407730875523196571445605429230886843019504881910315504430504654635864984919727650718020278247226423969714562826531167580919502606896519418987201516847081041475099429039737587786931286103944999524460038156025103825879003060922710934137925072891063804847231986 + 6466101512511340787067091183827055335101819735695852233753732053799536717262890189770583672409980846366090574169574092934238769122782911698181079459415102302644442608704655237839919351409456094767698451637302515497123949294854457952635010029183563921650582957594627815220427462099799590152004039986884333251 - 67701583986849474688101848356172272047745836524447317474102693120647916041301443146647938683895356320309994176221256647732721727338796835751865765473818848865265091647638111472479380224719391421129050186727321382946313751935442688591282543676641576575394268664218846558645417170981757957106398367313980600405 + 12761545820954128966451623411475012971439332996873766923556174273041226426315171476074086031709189420750528306757318045589418253620640499365106329083252176318304168612953223786888245979748111570697502070919289686645678581692729579383245035778691201348837479167317205079448275531341011735236794631256185999598 - 21301118146264140537209680643596835172154889558878545407081479082727132153986538070496378583572426632975221310411504725635621504003908302266322726096118616704309317769368321467358927653317925139321027878872313395847544962177050551813307573359459701751283416874411214918020541249196998925114479890520158087189 + 60173421488774433512807684123805747622799025281746654680164836590176900396974572863636406205485866591482315586404885654263092135744367275514703828409156766567804523141674099388564690402847355272242697270866244359849334369531218853511022363493436112044507560345152978955725468048215102222961729012069099437639 - 90033858065644978441293769444733757939301208267607554617492323496006609824459670170013745312730102522872460060393318627873684224756363588151545028004965423069828301351129413267959817819521710227879230086107649136211189510140735622459623093695827559150712460307636883370616964552152673499038960542778368414617 + 75544728084177189260235205396888452811878187959547823258685909912990568851563462650577948690609971749714367190670165491804769551898588953743301539410647446903713675400290700985131533895583610799189636752848182046697878500698558711907677776530684828342007442324738596996674192537059646577056121970736186861133 - 43705945496598533168163070845792693757079130014851430439260996782866108926368953860066212576634324385865825352070409271100798812267603796344152034832488212451338505921579260945302538272362465891991805924712682101979735771484742605845254446670946176047766993328800794629753527700896833387565416210854269931730 + 12669330228982983468084164995034862123532816704581481577009038191295578289985571275323866209886812865035033860139435504262688031965398699143126806857335174017076969915839442552729484352029013135095882662362193582834841404518215544113426995662547029107135280780160754223623106233102880485719589036189968098036 - 4121910567404376732856908161092203403335782119467289259872760071531355213600127847787197028576463921965196240827973198032630636514909576068439856500426710976519641102823549595083831026044302707341050146198777896043457015550459772105631402633268071849303626018903300743504692320383692155701290880667513667044 + 1561424608309616070590638324061780837592222222567883354030911922094969926445449860769178510869736975607405398903141054924699932723969813357613883436616830694251220617886784204726670186293512582495444404652999569846055536884302634821186920274671052714578861910560767885857285455380066422202200503017188577282 - 39309212843032465359888219121108879358331856283210245270447623820452550009673745810327009773536643181711188102146937546936693675691689733789142881659202763441936928250398040862443429466977226391159123918624726521979930838069181936101687847397343827021578392959632318700909107678155737466984969426379479122425 + 28058414052118193504560418792753667914449235854467721671916956051643669883490604346785650584331806436481867722721636958468518364323228797264447930309802729276191714646860626876361364636845868623760913316795130218997068327996487965222468267213761569579142095535377674023758309659637529150010545777187657390560 - 100359959009934828454715201486848101659764767516491778800534640525852375120154257800672071728962703945227986379857441206433049490995687754742791685513629899770932654502545325851884827481124917642660563873143113699654086872164660150130364420133894054508267175078222485235260513742474078349524625362127834820476 + 77798003345221357943742078968260625047633260034191237024976601657783600126713101429735888543580420138464159550170039734836185220685913062718062421736580398812029350562868540666710711559380929565169738752102595291164931185591854672396752552492962099544945279336806151006281886420712942856702812585267259932897 - 95903989276828865699108303379033770852022181736911179357104208503286357700248734338035775204297066349396714664914757516715662709746520689550016993069558042450809501367278192991750570467524613822533259292172936509658563062528302995424628931037404677980384636439389810924657587841938994158158318566503584472771 + 56080551342216645489242758201800596970649378781199503826352949261761161868197062397346196058283880330811833043483906006249178950136984281453426662002689675086003573509170360885550416178907978181202844813148483713343499912617794766317468179402531688470636339453742825122636484143207519777281037419785883601273 - 48290385648099333393219529983579917372503843897088381975408770012085028754603385193510037873767510651322948647855673473229417382388172383386672679674656965396442635159529953155538656941131251747834436466780553405203973295074452068979436000358471521891336770149469747272882792907696453913623432279838548433967 + 21962222782566485550197143323620457602190112880605358291702135913161798538345868351060308255234124169560288379143892595482406952599015838152604300257281943991791734419371498224333765562550330070993246457736784819996610745210031895672070017403834899920954471667250397549503024532447020565390948351505988855821 - 16531156207279601333244675841063750451185848623834367446328875788890924065459453383057401840651247273242934373309553376787496121732664362976480120230774804034868633708351478100598500210711728449652534602235305818062981958451073217194242517279954233529579121362980400354967032496940771980135303680263517632702 + 77335989085377632496529340493006636022287141059420032293824697527718542065108929197922910053715076490100401826462047375903686616660992517993531869069075175235473488484082907744433858897207325027936480656964912497235441709341354871028525474195148337027453922320851966215308694740452683487800505364822331216396 - 3428641644885306355443064366914016386604803117296976331779852940504388615117804490981787583585069601366400550114196140156707544342776903511526929626753465562152142715941009712827111856411416585134019554375669834951345527262888155810460876378256155481189293713801453004712989781618900908537287414193322677312 + 45981827117372623659978228870380054373952208088754761024337022236778138297133421784662585352653144069596427191699953329950543700215133890927663584379252552582867841997348634424226395432084209374231910174314840276343954602515636708251712124343548438829712929448377445086709965358388560161111451277784986261907 - 90120292718366362790734228249438898048783356263227587451149050118590350494649642787475221214736115091142508647785396447937254003874161033887391652831026829808383531600707756005690906437147955768307784720741106885125165624867047679301312274591196321449183327333749070749528270890316160490240903667764670816604 + 58543150757221458160834942116171469489893402083609248862228020238937129694659720593211697953493906451952930457114382708031356383084690618394911690438387480497866912319924789433208574937938474387034565324604098957277306635224411328474621646366108630939717436338453182135376041215130039851922716419528745272631 - 37080980647577045757135010836373792533939190449236529650758884602784233435720265913111566660990658394460198880176686939682459095388458016718307737459072812618544295074333581951505529466911519586471443651753320683961026804220049371130201587377286527122081831835598151617399292341450504742072658012121274365654 + 49151510149211984686673207544600621421387495616261365702338216562107511177065022428195768062909721959387341178414004647726522482267835850985325987700291122253665274322992419746884673700779430319422997273800498362545824335557187847021806550557851209192961369378714392951983659703278672115982882860215855044321 - 49229676005576171544348617275690422148793173139492481546619869153202847606836218436008078438515144793125658539880324061689576847948004133957591966659557285234231680850031078952067717293377817498773200688046323701949895185695441295069421876672713047257017954849107644538844460256426081629543171184596382862595 + 82515514322340470084432214625962315580709167410642409986832134561683747757690381340302044254088977863589990525964954416946566632669342635180226210964943568040093260325343404903228846140280694852584126064070589030734204137616960998096394413508835651424467359185060825959351903651405127192135455632530027157233 - 95184614883439780387313851614093488071168617530523193859020065258403195865360219302353256264788036989234175182296851047087268456021388658433907885581144537531977626817275388819935607701012546394021423909226964276140000043351365110841296228054092211260590711706335247777529139791909656407329432728411586951487 + 88553757713579165402720613075375579001344811764098864483188983640760402828041448827372335042259054723639261842032912197168650750674192016294886446102408846990404494577500326021534011901797071067870766341259318693731222503587005042029649012514098857870190855705112769852131641613407402833908650759056233262422 - 35803595934563201127663255515653681402210980180913262399847330840758186797176775541383370326140294088152714005016113684840690517395862473237601937694439513061953581012192286943766965255711545300403112391106489563664484289073320234495660057271047487127876216000700698062167079542109922755727937961559725253906 + 29265485820351554281142489137662994675827790835423102118928525471409362858972526468357454495794660895375345263115687640991419966101345755235459786211911893985563542412877357859925807813573207137522023887541706268825523265956447324464626068441669600368774233464707333133899616202259860668509588377490893333600 - 52701913245645995637082641007242562929715853981390570136411119042579869634055892947778491481366665636791086991035772145889685232876455809588756516124692000310375119928673316036566072458238226728705647043344571507160715159887989016337774181078894349407140694613085125967055139798089165776071230508225219068732 + 62172482660414401627733080358599036741405736115533832351386411983393973581528444722048379461354035448454404701913108678903566743718003375910449305102697624874459291894406913930879139169497154797286328437001027136987575796059993571979658271116795288857345594972573544027959042068810359239821449066411244647665 - 24617723906117675169627126265269836891816990684373854391886184321477057137968085715134700760821808231792555898870734345107066451089037640156230630811339677173330792900685370677760801040866352993386597640983033668315638737129340501926378965126112356896666959716665906811555755596788313110779669534259080050828 + 42045679208966549911094938823378943310019719429376529938172288133382655756651852933248867482313868304419214213174065826931813850604023632468177630915811630730901711392579087843008323864684434745559961950075001809171760142806447094713563305525542443095895671424769992254488364242788566194266507805437448524557 - 13608664433762822346322610520394409972109888274953037747928719897937856284202994778796536723746684665728965860234806235770868892895607642616485423525499624207855923988908520354174228361538442337484916924568191069460092890620371802011256241863435565421126032288007442795462148783304753217759115901143392074723 + 73812379497446748330320530468434994202280399841066451351694761297440760895835591259463279258697797989180386391558238238555255569932495143930336636689890039207712306331598652786816498269144815504574526526768644409050915633797073742630378635051695337052255534363631853685275601273326184840579225198172461607544 - 6130947284323834811437091328097587856653231529356118092944898381167068890028880354595197585263704310924876836971963922076965708820752063898442746433833392123744543258963959379501050795845275403139872420862553285364884769373716922599425499512420154928304505237558058855231151530694536125478106813651392729653 + 53363264213775357220749788054399202852366376915426992806500132531392195555256831470903228016818305668844014764794654083282564173775449481697538308462893320335486586981283961036197588566032645314440204118352717752872327058239992475927009848971136229661714792203352714010066124643030695342436236455045751021521 - 67723701779459398567467394082292667525993956098467978705115572013392783894934325022651629451069363136902125707133468862179823649040479501527191888022564885885000714410349997472780864587370996555545337538145902927109251590292071749103698119410166528435283821599670953301773804382621043665894795759223925308717 + 72688357917738633320245565777292906425652165232586799833515428715463818377882530095835727813292165312373822975370423814104770668416717031182294586942464997465002094206152444329988941907523974331696505055735587879573810046358783079737621262274429632907857914840730548851607606513045188919579449007297498345801 - 27983479328803626768969143142792910556985183592678872161137232533215315356744636770940044477795795983996604579836447385058445652882420868149470785036997977577455975819797921834548082412337590127464792532783085235440395076109847389999867843498928366809410531112933533086396732944742204752566563277370285874421 + 45653686348853761717917307561878467893790024030167090823122955431628355352647490674834562505676186614528793967591480304740851712388761540423175716675553722019225310740708582482319379982027256655715771474588633276120283816407832465437237470799496235532525507964993498937964762941271849386402345037692012502189 - 25361902851488838122623685138377674870781906957068824074495334566794953852331576179451671990655636155710634552132633622421188820275367795888431422960672134323475650963385510730242100751115323690448973924307202274670862523524942176878000002198254491750306235343703865059765556282856621930761407854834095905785 + 55490873774771900163714177811399981912698754159961784184318888147118735229836452661145547956338002538994592627864940194007990901076602593020392188273056378985394868208623254959973839822574053037111568515158388893102795848746635407776448331143300497001498806270189630629162471630925656741374367151888988281622 - 55265725181325299628661763386296595587880910234087918952568765113110173286421278362310902315884179870068268404789387157750929905071820353618704986576735361273603633183347182705542541991021478720335435612723221386083007291756307449049238989617629349576665833415821679919192988129955953786568183220391846614999 + 49084137170588445082168780186211114742520528494332107656071848352327010851124766186791831532006831848787931498519481870913418652924766241088029422670907655818978479494726768140537534211165175133366875218761957437455035420932483133811683068105017589133321292612216370544860184992970434854647682419399471495565 - 41378916820247710813913162834083403446264159832614340552403530541415697867973251113886196005199916627689796920397558590515390480439448837153873480144165191716360551099164594669785678135936296897764686806542374051928698424901461892026602339182875775009916712200886298258510411209735754516284000333949370318272 + 44866008166083434567395004908885889041749653622568978366585649866821260524764249559496034667133705491764465637680559633229162784059803419266138484746909722195363552710575678447585147054641066538194145510127110248459717236632347386783660748780963639509727904853022718333237587282758547156607751759095417283220 - 93921214747375188334325225327869360591331598719167000119711227181272288856480816548587033394479366272498794169011222078717523129442457415969984622649344437029479766232940812221855343739825340360627665698620716161951371285177943753501045630540503959464797847123940541583086071961393497523749945624701291773226 + 50906876915203465610616580570253118561902001384601594970794441767779986076626229890416444707379514885440391466098012761559291986625972583326827037509959564015363416657418467889927359986742302914476094337641835721638174999314210442405238313596501591640300780763463042156253770474405806575973798776217402786075 - 78803293663731885727150740775457425153639818242010007833978408156180631083838666880709008596293565433837774963353819514878775952627025683754796830326720154239387483451180695567993412756381433411510539790395176261819083140443855734348503212510346327698261683793648753469635277429062500569490868757688469940889 + 44811335802379866102977739936264984876902565473701672005498657198088878498317082297533704267063722360825365509294378063830983139802571563299019168964109884663807777589059977495733266095325547615710541114002039952571708768566660795016530683193848126956860590617709287885431029573485923968310481273312004362853 - 36268041066577197726289508654912692085423767976579801098474686405172470261076096281414073868254466904672998606864057995330291204364420877599710944138717931849828738017416056772805150974217186487901049530318990594456675009348796351072617406363571091676080717951049811940326406336568147161259632698265546587828 + 56079808715464332704649707592670665489744335615205950827179479999720870164252866855863147620206767468683460846068430954532032679328387026664874812542435183145595700100339530693426535544133593396077542045869837069068686367090874526381341417021589584769286195179837468300357062091058780603121217512024443760872 - 34277776357101869621005591850311945788562289769127967999773487527356830125006170193104228518979989285637467625951441264727924827146643325448812657486142451821935407632177450562137460685851569373228771185833562813200139363849162978945150702567558301524614281462202773140099341242999019978492908020141807903591 + 21825669790129837716017050459466126918827943330545977478927810212703880072892404469247984672100976325756896643100015742566942000681348452204024082828966743214141264310292105560939623111170056844582137700082141282865519256320724078122242860362972927071460052612606495359800215963069350157393602190686611233710 - 96881399218214190345821774100489139823801815746619838131698414298028839544863817901375163065610289539404309543492850847714192997880573858412784843176571780513740135764351975557611278936917310248751041991690930400729062309040996083990935874646848033274722527875533524989442449254307128377320774594984724724736 + 68290026151883638236413478385526779930756478856796892598432737944460661132604766048802217956705305543250627925256583716602824979884010336578716705964642166874626271120690351526972468578074218742486743186660191596273538958569734205089247537391518961868324186112722695551610201973935541363389879808069777814989 - 30010629170365427218934177322288222747570582893535244082526385857907771477758293962801345503711468375347170543942419004942574646178475387850623878122480951539710836560259192724920869197377296594601845303261493745416084481321578960367972814598711874692014897604072776792189870068057686662247721738006418074362 + 60032986526990454321794930798425589379383558618288065186511589229562760614366226437571746942899908944094688598384830925908409943876375027377308029951405331400237679489395864073298593731658894481121917048894280587313334779089343848286065816761911760340267401501786872313928935087652086368352843815372263160954 - 100049035266302279836283767261683665239880884276090625680366419137237668730306161664070480995146288399783534575741916971801011809704327988691933793327488938023698369375472869798249406974333819195626001585655775100760829874337088207268407624133822867661421295840415920155284846589003557598203273102809989303111 + 45147194695478235184690558390567924754570067582620073677649774237434698626696203729911144502439238407829579257695980526885578172858334607905659273937880469366996791133074579277929186964033462306039237409265940109211259049500787466856305584187734986829134249122215116720540048598771734783696839943645407866618 - 78827035035539926683189668695934631164415238406439019001610833572846948227891557559738698445721618226048644835344140554772916794714571807990229324506651652292324611034488031788245145932455094790577810978186937404688044511665873111225844106760843599564648617593715824598428158888766790550967604714766143003146 + 92668812296968557725432873935364745215463203056290246022942246723557561964546099470636126276921667537467957117022503973154845762102529704442741398582045182587535573803174501616465717466947902935241970427390163682824196865056318740283631679130384306899933349858017611601516382186127464256937559019989058596248 - 91369200883741230657644607729268099202750631059496043607403098121581324455243517093632080457415329102534423856682088088905665751191184073494701989539600392678151191502781063416994696698127329585397111662068612620851720885424440823904540433670421941009618212522495346473646535891271426951141105273879591963604 + 74796474745399002891384696236337876309239964478940256694774447610986600236352429351788539673146110878875610222050743377772969960808884525405795361999235759027937567695706027424791544745433635098754151895097391103326922494712442510219441007189808559566412007890367330058118410208635833768798322278773986424657 - 39876616254337397864821878920118894672164039183120075878603713472750691927692672070686651708455162392941956155202003358711272344581392459124757158030906939763515747939242344850075372425305269771906601527630832728218330527178641612918051586597101639470232400161400047738133651849124146943652035474186619301339 + 6903280983210770892201269008290115328828319113057513704994649556993049339433328608528602957037953676743280376814232442319912561133089172403312050485421340832072278738834393722864932417633040834449058423147714463830882289990859489501416209705418467929663734276280632905070979698766414003957630996456966750776 - 78543969676194269765817715588510787775026735389108442844048269568005070159754117235800234564883702309016698577462092736920889303898720648203474263518253333865437306861670727810554581752262654518144080312752328525645670391763833034739006292770435736787137271980802845149167536822645942635588800563401287776504 + 40948736394615247723027182626275600419172031445833177284820552986764205889933950535325257514770327904707151941578628792936629120173313148529246957360384164763861156899545907895696394034954582164333823186353118362623302351259160464573344923958941922279159365676320808719750869788938170048169467613387675284473 - 74966419275416431340244550410471719332323224349308095128991064289514021394541548626785230718868631395921418440048368650630204202036037339496017833490502765182813264859559734302979026481408893820798452840632734024080339121595598164002625304273196089346281621612082949309397758195962347506309330079048423529001 + 73222751387849756313229022208297463839720012920409294916885586175745681385421873722260329972290563876173766274987533067302343728425661178597644325470073110156871023246196880959633456884911724796511390870871407274050370248745657661688994644893934552338987752064730503687612955949430261882021072266035960428731 - 9835695543496359243994580911589654434978708037291139378384840954363093930295991669621328897799315762947349869850293661252517268165092089095041739048681960695331473707828779375457451824349025017750730065293908243353500790737657679564584859082538830512669188062809395926585379896707811229584128456277070014126 + 17515137162921391881269144942078257031078400509982162499700071256086747974701749459848414271945522038356339704654012036230904088780920146154137852264504684533321999099856328655877037045622020892108579330345224440035676591202122181094647847368671513595394088584061503462892428448386650150599566116842531827722 - 71628928221577951868570308870756911662616092417883494959012576648811494485864734051222103761947191449216155504881720791770016301092333309354321385104273609397139710881450497878730530205551411371464463170626708796116577366581912600143391464500045598037118463241687512656647341181176302311203951261521090214669 + 79210565454524318332036313519802170687992188370895608361797878733510299916805145404011722809718279157241737624797152353555477965607425625770871564621467801981698123115048982263389468806546570170498290516178564911848341392475984320336607088152349088395401647778192295511971366332287962779038606042765069267298 - 30876922797548369753996826676021343021112510575162740501943870402683802106425063575399897895253089194215055799558258465260206481555173086223377545763584007494759676964633154833468088001480508010574653362059313514248991536945702221605998353598369839426023868087475621604097124366602714112941194721213517856250 + 91920550282777340609338090568957840921577008617389960622298663411867946390037492184731954529197177864659106413252710235923801950438742623565819325056008573118466407080371735878338444328159816502958683589214293035463130643838279888844866151375651490174666341267349496709045540864159294806684799696165747967825 - 12361256422902124272425288602214805716676789207222434988616961788459230071095660943328349161047179127930804410960491003908798807600548830116275321818459341031143275181166656496899474866938317984034130343195753006369081798703407070963654452101223076270822539064674654220716445496350256802201441784334108342135 + 41908206335226814842948460248564717032937955522666527225936496244731708682769627738157855182364600646501908567988237390506098201017718748527530656427711641350532130890004561201588984528602499818119811380893689676029890216036553460717264758616046049587815152143004193200997156017127084768095340952603289972814 - 59698544844697703912622970377457943060290504230101969343570439075585397073736565584294526221910927516623279098612901808966540513952903473864564458530369031598523464209346723005680062658196769442922489537293943665812852171271540377675249342603398870818128806687367977268774440085163283991495915064110621412947 + 77428094938778414051663824102132408087910836585416026526869788669373992948434193943534693549159632174212094306555999627698505736384484184987432547452622961159612378507382373078220436122693815573693857246493394134658824344753600787670731733750163664581219949505724881821552457585463013339777152270598554625455 - 88153383756355359559752171909280511011255086746360949998571532183038362362184092190433126463576534303154809319083977906393630153186252811057238711604681539128793581872598994189068516608258073217699771012419065413494781472899791966350355837343780166690939867662615689549937899257588957634941816150898457302111 + 54112142043084521941341216738144468073293513225698413858094976394199711764690333590636823238159585203751582774358180852387413585081351129882417493021819189100694736057437874561101090239707691333446812220293548792298064813785405234379097065714657994597973185084015439865531574211361409768694334180256407517362 - 22200029100785763316818697615835798276960691073607295424018893719749326278937060987363024432110123603645520192623043299603002189894648492028478272066818035991172103400490408795267416841650793097779203391128429270995318205542426606933395662005339299604582758406588925668240404845290057348659550187442037506905 + 20971270588230954178564688577519621737106503751364811730583644012033779274789001306121972870709248307749914257238763599666558201003333070722981940983148671102706838566271637477848588919613713585404377947536821578411545910408781898451616673064732478885528306497948378474021520728479018044332450836925903113868 - 42969308863094800417959205659513408170270343343004940169244033456311703923296976784353682903599343484735049607940960976126737773871715942643566346105815843510029277236526492996852491576974396386087337132792682316152187329919077027426459669305218281665462067503511285338589777305696465184828838756661283153853 + 78890043112608863695600737230890725312948369656693506891468462959723826466807211514289978415635342348704378344671046122540177576618944887065728756376823963650170103686129400408984918728289133603739675938046491105193789415806169612976436909558755163327091782770926060484260777454681727845449173012281841353198 - 89542158221204854733421338382440871511954821216327980175352481253321698205811535356767494729926349385799093044251265892843650835958899427209228339957184961151661829198852420293088874241116376183414888940616356749758438036775800014288610168918811517461107701632508931601729409282034321935600163979317751819709 + 25497190765505769820419033692513739324814148493219118423006194806834509037680939600071562291922198892370805347201341577752087166348698891032552237872476321386913964797968756291759368631240510950302994486748929293579443978093305843726310917394462848096095393818269530144669880932747670786420866181706761178078 - 69953046181669284211234905011036683191915733824813374950794700650308650066378913732019352208202251920266542602021830465725933813120748031661393903132394911702802332505786847910514471886158875539910688560439238231239599241770547904726703454096358861294146354098730353966067523376621390432255498557908066607226 + 44348967398515596911919186769619015588865881124611112446761295232500933247187832062200245045420549150113932017991355673834827465928982301701136511215531689037571573243310257910260892007103558326126897297060826045079662206018757025122259045413464400391088870886279170979602254997739763098141205503611600044692 - 14560085569890288302008935215296322220794695329647506832082380933754731979675784601664101131802618845987651187160533474657607827135705503611196238197548155967297770843559630510190144263976509068093010610558701295511727691065265850693448929637555704253300982370609816950813167609852242679088210475917248848899 + 62849922895012387875712929647219983634708469918763706636040386270097053544093083976426342322929158000655975265509470292654671302642528273730075942075440065199043677743955276391507361752898607080811789277234422884163325041958199167390837104149697917340396999194830590834817632134295706699513476061002541995788 - 76961075828245425715313658999796419166049337977060153361757885350542082765423326290883737635963990085683993587595346172529242928028027587343454061241356544231948317412865105995430238021469441108816290552385921593376587600115629969253297578230927684629792491212948577777691374687089185062391895384216068025224 + 19804985100969929454921225413008796357544819448557923881551306286904343824017588300790260657315717140045965389722283035481826675234342984105595302035665335427201760235897562393995008583559611293938390716312170722350874045835134488408972181814896660494840627742477237182925788027723288776123672207732900167379 - 67411599477610763515040017130244111261131583926256584367458301648889414646470505624043465612840089191788376870559486239924516674651055032650254896477561577421961926086854074611791756704492521800978303528985692486135154525176003469461231658147398875763716038747706381907982600230144745664337437099808469604412 + 92835327567097877613811485482506641074941730231409319022339672283906765818265490527032407363993745819093920343320682278309797439351385749589582817567246355583383694784530316280925789804720766402339237533295804382122851532971741718056945590177304745787538007453701037123399752516537364560183724420668235646800 - 40175956880758316744669020137540291904439375267710471436723828424248130735271114144960387694003572505765173742258563361904972515868282763643179558323260286259463942735940645734025129632219393464867454502493091585482147221414458510161684842447258716458108901963306861151463725742249092107173067764028480331507 + 40035211669633080705899144775398677385122502798906178427255596529209732861150179464848300537395065874667816661214694506464390791093782466051928923540581597543416166794310052174882247371367844807825151647868867832422599953910356423791569695878830278135088936743726493240520571110863490857969290227371431923294 - 7212974687429093726381562367963507598881224614897267690301541309144577820695642706302548570933707805840186367629653330677281444068653656300602032867871443806585903871555261065446067699566881742984022372710244358249065252356100102356923247921656866893177618471174879126375865068456026511823631594975317593416 + 55454365209699196284888814516829079808721948079182809886217831124357624969323895550413024532173791531444389989873987085696067273412904818646965624967098966259229100018470640038285891552631917154431383387871011127313181232142817904173124907113694044946951806277849219995065139579629359047651394348123756468940 - 10141898278776911977358685170641506019921527082410384159210078416718340645175603461810672307731508909797592245996679953541722956615779326056204855256330196626905986141962459850086585510853453679836229869189126804267100575613116137932542016662819160446661272421802328235828452371612372371484183124924536466046 + 14359598653461221478071415120390217379639044269864721564628086821794398963584759144010038765064695838923358419145551736782576180819948662698207649063065970422228547323040905485446904762023386329305287579991505968631997393071201616164885942698883459330132293243664123323127624965761061970109240479060877062892 - 39753312626308233202877237097154520561569717665252126577694353329465919162068913060912721499336777686809415172170670706042159188300851795254497563461509454201560428777093164673971524086256592054751189744938599953553019190276123029629311971753236022788855090424938984207084280344403270921512201672497176045561 + 40439579116086756651181498224182446869480933796194827895241115414816113476976482113596655532784526297054592906897315500623861840849818316794773322375454253223305121321816534862436526494079810132649467636204457030510661410562843013421828136624580313970069414950672727713551007081675744745826240005665812435 - 35104011882473510935050068796242651350485503295485051757206094008378567575047684788433839007233120693369298745264833186880639670573829165034592431988670821216414131155348939770516945388156638538845010778069486569872317013216892612724740793478192134806507308318293401379873624161965466375937021578292799279673 + 93983267269025734244999939733562959526281385933032608830820018750195917396187188577580932630365223259599059443503026155367054137384691396719140061465920709648202504085402387104103297793756445497108292734977503604554992428407070156854529666028346170011198602299381739307665441074887266920967588153445056326886 - 100729921068222258309757390885390774083823984713623307259893736390887365383061460758751899028524522713515622085661566008937284070918208420515203051587530777942385373023304416176704922603144670820910604105901597786148455213147124316107006963030975211367658182276110391803431857323637687357375027691997576824236 + 81577226104760956386553863083105794968514449485571091852403450514304140328667654652907811090415187057848924789172007690733938850595091228591319580728351913056297757128071827417089020452417081851642676803963898944558621909751503258360120343038553909953668103837554726182488934750764161755437321752264228435191 - 47683978589196823545437037194369089858332390232848406819612591945666116005950101434348368637319324980408374480290827916694395403070350369207602692645761484760884247238951182399631118262112791411695419694918496930112854844935367935629666363941472296385489732012107169182764262178879735803102941274265899816955 + 9676260848429091063545118991706866361756369944495710126680045919849058109243943101892649746448666667854107314565395881227830388953229933636110431647583454914724270222476000124316798303035195640484957358602605432649466998236790028584687531309963823620808022135420157596102760261560851972021239782688742874710 - 38645685076774487890528979579482186681729848439683293403538594436675523199571624695058386756724231102330311319722632970174114768123039986402744492717708719585633004140993641793408100531599799907002877200240495338041290376386822062018206452305863386954755859815875800637726519344869753862837729323101502420360 + 22633130246367693176160091468711817522132690183768227734048371636030360875390976099195800254680894827836873228800269863454890122283168471710690300432014177512776973022773791195893364435750712979610908647344375031617950120589984951976305342188197237105404718634863087569094881956121640646793297286731818068283 - 79746032167852084518411229051673099020653614176319002573936665710055338863321285842171741918023343496239172169246403643470606834001783037085865068110968777242117459257169779647131738638736285574704104126076532007212497541174687066186513023772340553199707726789399376006135969647135927035086663833151506317497 + 91931992010637851637815084629202293018206232316561299628640573483507136290919407399256057023714416535369422579578315096894857009198484322540057847736129418484522705821178748637242900749475228797402639334770941300423648224162930921002740085299414442324547638118431732559499544841135810754973627770644248648576 - 14202873315228870217919072797043604530494575353718728805345425826147056219728169821178779178597059065069400688036768622503984531699846821548777015576658608237270900937407949859915220283813386083812728384076346199459977631018031007247222298187746602526039238870230102210339859746581075741990698412927677175767 + 66967278711217201365942478391782082339856214654248103013373845652343518022681612244875981410806915442883551783563492873475670512801855276271069278170226693542358303519680611498649734886036927763033563714875277460810612382030106933037449883939232162147669144052262276309785793803677197578777325938184335550197 - 92944179017897392290368048950510506763736699369675988519676435483255956990796670371702599324497364103681980850126878061291889941091914144545534234276402541370256935086379975817421399185396073908419148688812935921873022922639247746292364651589695786441414324742476775143007202487986598996212358614653779040503 + 62138513049686917444235385070209047829274042490087626391215378369469461256422117801983135251673723800114920981335811458307129493504978994443454908855319548106114863464617760984412423841330559877222025347873191198562521030977652757430676217175796701808889098415741522648788136778453196754263354764673301111246 - 14290447039016378159806855993885981672100881068460268326059681581127894235804323116923320552586950774323271140853880642991049694766367454143560879017152248415899067861739240119443414952659167947845730695501899471949028994923630754289529990676222585522673693193446643066644044001130902263727491631289188902265 + 84024578237594122975312916558654569705691817568321905739509514113943770826850239392415753634243714224124783703326043031035089238234818585767172282238166815823585545732145881926156881615569437817620186714794384525329381129093890510532779676639512167771211247704314103273920696896067039264724830550401714881361 - 43638184120052218318008414242336835321064925743475286046161515520265030602960075897696592975050665788319290265445112305372045779699562976741809349953608916747317037592337684688114229028959956965743375931229717521377058570074081948944840570370128379222855596655555575236377075225012308989987508653905842634225 + 12053504377054915054503378051700437323140565423541774963243720835879574336985059941935664545545026791575674655201926266014047886918803063175728504849772873991778921115910878146309722168686441787004153589338795287003927965011071466509470066388099303330322560477620744313152977588241749588301209291041508935168 - 54035045710095343350518863270333249510784420229792665480343160298973685142797795796275121610248701843782262965282459767698390620985103684191754769095565143713143111664476049529274452196340244798242672434478068424819568645298731046526711851097119113657228613755175125905666058292401782881347996948411017796646 + 90301193825401896096971182397529081986709435914514033795210074437253954253075756304258308405150833910697400889831586096671389866469604363329185479965402656370109913476065403677255886876808503916182519301889025424327869753541405130815744295710373697763165068143910844021864335329563864668285766064095784407513 - 35142120498250403284985548664563612361687012053923553640588936623220898361847552270637613716293932348575336424899812410587835713104460360789190804846864330506490488315302901879703881773465407557365433875926809190131581680478016558900410794235386584476512406516749555188156892703068378180210004888896016945721 + 34165239730407632167215445229447874740280792011250835686760537793783663382327224211067880673232894087976703846131397233101367579504430570196137989824640162107189613485053252608636398349262318951647116001884145793230177545899530372911617688836339290386797333274621320525708889887064842900413484750465575344756 - 51615823347979306381237268394489903005699631318578584735031525459726988643436109904542944269629574089948111274676215444282105060235247619292384797333929718913255230924731880147456799581222462245393141741182077660530495321686187802708664574580610223644087406124944198020922224038132544306651926543901872606090 + 71050415886101912505218594738786512547085473026256836166797814405351439161502171530488113499204389398571194652849526814749869411294250842468678948516854880394862184661067576922587287257576818970199151440907630655813500928491752152674035287248950719547667467036311247393750526321147461984763817058577704147304 - 79565433766938782181608911922489239994546236888585474231573598248244719268280454393343013674589432773775224369029205279795303426173539915507843641558166464002573596129050712194566108240875509410765392720465451382064904326130714441963014390599327428557656311471940515912221539188217311943525140122756204897775 + 36895101542795714741483779970439905600430579138092309820241291760950619681437562920766743077295873452349686513765055321951146194905792209011783049250242528930774911512338156824630984978932796731804313666997303972806085633087855830781341030617926149728243393519850220435865707402383192532351662074408668434382 - 38983008369884026338504109584837355111859164990716681640339561232241213691033617523057349532661827722177546674491904023291160320729454062786110601433753468014150715148515314716788203924911242563414376465361115038268210493315935275269318152685278085114648837052505611318411076260673078193361096056899539265288 + 31844104778664009173191654873322988272071303461045671375643631746401132564611719275629131490984644156243043176629129341035382011693987218984912714667164281118271250289503667106133106432930000960703296209735418221124912606129194715979216605319276842723455157563545751662161986530784225014132973192372839219829 - 61382774180095086401212256132682967528026941407797528235804126002598994052468787620273842276779777441466949409290304779333094394957998323781697115160565710439981469546049832159881539282771887041342700142401341285803876956618817231797626896846415485222234380471806562949356086727132269923958340622363325987795 + 77935453069745657434231143892691307693775498200066844999429151221376424705977029468837829861101892352866735202115162124064369758565200325834245219519627961444536661521725326187729076436414962886214015497724337507061529137220406839626216804630268341739115440067889651039700268519679907018646019857186650513790 - 1462854638685308077051501607184580748315686576469144070416171806561850773361889510514296340015895224657628442416545005075375947286640560949433638004462446610120731377106472908365386896366886184003950408109046785771331263650386811780465265391387186676565298546226893938977864305680298887093840365341990509981 + 8710795858568997442968077041672817087275204709223068915103965031447516234951170468958754519235319639378004999901146196420583218948404990387274762326970335422986482213671012041831151847810684375184026707353423240087435213362039750446498323482730328833784402332088531301627434416765744288761449598809141230917 - 11805428839746177691273741273172495465240776660969225280350031479208906020673128471659688983216914440063717841008226127633615266070391703455459241639770733868424528390426178856001831030123273261089216370213145440570482645144738278054178480938344223889156925471395534153388954275462349444569174005271996888299 + 40491082473990116639872868596505601997501995071857406162690490694369128340877419412828839964496437955064378062192302354584409104627854748905185997865573510227671608980533378678755501707380397546157047265967697048703022457346136461577610981707819655778826153766008946750498138367984399253321467372580153520177 - 82637100171493615998109620187669398559052398907184756205309821833034709366935036278530103901293879086930962819859238038380558888362606416561074494624028963863499482311129859718238394663603165209685246449164614942822426908926992771967637148210340577352587649453475448674132870372319340916161293555565224582034 + 21879183509626234250544740747307893151002885500318612358986043095462326529792102259527469188133541040293441283790163712818645291539941621231082794324667105054785355669684365602589616867326519696400666690908326067487766858058575664033753800195028329220355169932854577254629652942287439480124304512101475398977 - 60644048626443347771087559151059501572682284555199549407642988350798971697050023069210277544827288325000590588513675728094256370337701807788172687223836290305160100311689718503738640240166624088191509505019595539404474901985792665056911412127795252635567141644098409442497777826083538408369372916072133844585 + 73627684165859730120104877303864576536570441317747742673654227087361524667101417837252247061903499529485848359516648011968537254355003482551572023922401141333734169502284742881567178730598200776970734990514605873206298069567634759326649894907533080764359355889739677636250205124791772948786634695735903423179 - 40159368772711395867795684913579383420952257804274884626288090980551648047222037899465011386269908252980913989686497046065468073579012863743556276784214608795932855551181201797012560393926642061659016579839141563158358641576440930297439989948332052522937937276349248800528444233683388354879941900881752661802 + 22689899155899415285010390604855574985507370023932135167778943529204236424993146655330175604095186977449618683217833193617495233595973937242787883651799840824694552506382839054095141605336217637781804081563299530202635167315413627892621316930353348004652123765791594703737366785220025948695134588249738775594 - 35461589609196812235572121881642347736052589437777352297782357842119102891675156476990739746976068013581941537444057879994226473832401619060015516658629738993403980694357462434669938532811247991399440460417824962957628012281808222489719424654574514169344034783305596314517565673966284596901672577388719730560 + 47172931685978369723683993573957272261469135488374255613854436816826459877029443518756740895709508426570377973468828940772437737934219594572246202984725605845702729589868424419872990566356544644574400387330518815086693570746911119561941341913664539259252712340874046866913088270766247068723793044530970439931 - 64718348952429802295063128359331123798384298078766448425564399125739807249443000054002981039442992787516684963605382137258003885313406712529999691148960965436180761444599085959790787747393995522922177109227928530570378920991179822818486790935437689869045964006810532073861476158791238248093677025153336296449 + 88053920553355123899464146090567499798771140577373494891905858560558106117567882004719792253183894559858858710823589997299083417218338374944805802231772290022245922286572831243229245238011188416237345712997215186960592787043886153718820026851502824629641922306966117758582340105587473419801997712933393458066 - 65224657792299609554835325132337677636024343702526342266117564991258997119297321445470847458132354701861394324968904283522786730126133251921103084785760531722178228057266243961119915154882866405145616515317255588314553522947324735482549694739982377503633939761144614322289525156357739552309107863921008715782 + 69728537587418436801731351104202375075413148826604444705849183741316379278336477778008749780417853922945500802540579889665457548464173178232542875638800019149145613638245893462073455619348465182208086871348240499865807061551238556196662116693525438073714745758907547813975013385383469536209891975629062412258 1 @@ -3100,19 +3100,19 @@ 80 - 127731435125999251495897705288423823484929684183544887921635259437584843686957796976553582756352864757422540510240658243752440751758262768691783317341334493881433611306105016347938213087616244851469196680686381525285069283261461935145341401465878496248830204104557254868497512944228976669815829568560537191301 + 121510506979280294475555951515618042220902760560244114936256082999728584045727004956635112530507536748299124440626763662691229078997534701112144714061943187836221268869197848804330480194827683432918373397308601572042723905779878861471616318688723323278134584874507289378643006693831141299214475770968077890149 1024 0 - 14569923138992929163346937272896772376369656980496413357304060467041635765479888796263978891017191137868554388703618479777851971697031312328651717134365991717678604406718236094173035189026186645781039197351937056254525766450803673250255823744511395025216047153347105446713795405738768918503238782397021526977190842897037460286757802552686779768246736298217461210622444571526833199873172253488771767063963694351438520774137951958509108410882971362406722616791928663355274835837917819139510624716133006669095756951653743067891512906654960090554280435465986362782218513371981196479269830489187897678969010368514728896710 + 10786113024139632806027821329411813376394553532754720801987724968039111307010407533206104817963382736081619149325548696301956466730330964812736228032635136704276953684675186717353928168908207991646217890427364048686875063974030706985824355230281962421699045683299328552366905159269699165524103957009454444867933959900404864269490872706826410124496941475156763365992899709690565996005427314663002306586630867555511772982630755407674591390268574657383503554640562617598774916389727621109632047922917491355710039753095981109590128724621251169051774876508599352543250242610623735912915977694004470585292205683411987663056 - 4461884646921920985969422276797604404950687396102378504812673539085880427194531045851380565776643881181146090225496086141693404169229060263843753014969842175545096543852153423430310510067386537678688243439679391184859589280254489727844090195785180542092858463936597428031968518186860730346968699305858373290338871748095059292956106980601859485340490721895717332070732127288013436163329026237797976309814995173250764255907776027811351089233034830452472339179784727246434981923170032698827355426194391510576835204324190034337771283004891308845970066944694965535961450604952593241740550630175228601870115014871182941394 + 12265742590555795337112275423316364429787893555390044392086577126923261211406720602521697557602273193373875148608736275687596912617522142724778013615655753700165411186156887869713064103113785395469589326430632728836622451323259552720475436900442662106611254613813633373690889042655646171787318060314118464601403569110633561521126654593291480540948355917795074477301644072921931428487257292688398864933361063951268198001768696293963218255359788860315012067953961363316647303672442047557272846591014095765179085873691505586802372492873704885031344784674827568416673317138797046556950646706136363400446112253168142749694 - 9124933609642715839140904442430709204770824143955392605029301273448899111937345009821392323574709443653477013676388361765617126052217945992815831478328715104906567886731909364378363368156537735510644713600021381036108454086099924604648186188325573635343403029009952305580427090622425787152982434277915715864585726255332653612967576623444475271855511834897967496176673545994345972770703870820866921404581484866701064218693057201590705361367479535406428796020781412689028357261423605028961342879120058044194034758612606586139712220575105797068695372106867687275732277450935512920435600177142641528638345944390148400591 + 6657994001188806419886894807218694240426739032031826163752185189756478153651379259613647431501466293577185699621005510312940659940692971682470467207220148443107057331572412443275548313574269510610111723871507751123028613421947573896683102294237228819014282010358536035610141132903740592832988179804731916594110990881555271138012621630576975357221775494879066961089995888791466928329693333653959455139590750223922835299822378978257266467888718801464320015079025432275884702211559419713554062931905121103357336135080737661398073037818364333687705160217385235403999082883957900512482523116414980755358445725487016341584 0 @@ -6179,16 +6179,16 @@ - 127731435125999251495897705288423823484929684183544887921635259437584843686957796976553582756352864757422540510240658243752440751758262768691783317341334493881433611306105016347938213087616244851469196680686381525285069283261461935145341401465878496248830204104557254868497512944228976669815829568560537191302 + 121510506979280294475555951515618042220902760560244114936256082999728584045727004956635112530507536748299124440626763662691229078997534701112144714061943187836221268869197848804330480194827683432918373397308601572042723905779878861471616318688723323278134584874507289378643006693831141299214475770968077890150 - 6333945450935873446925243602028727791514288354592130988091966481352531878849246809868203563130491879211197392108776542014218214297150163546832170396752845436432888993787795887639269176157448226101919484997274136980710762982223884672486094567123545355579202837996438671007260402481587970333026415146413678236781219884812497373537044325615620602765574572593377785789863023562763242279566228035198331996515631476188714416102026762115451972663828907601727987035999121766218834692379435454366300769045213344542515780574915581059706379690015540086217757852262731228255344078679056474317309807630389174117616992196931999542 + 5796895974172437492544144793427626883248313188238611533776743346431752971712060062337672102675596289145984033691057997756737899504455407414862532161716330517853997822442007830944642817148859544393139376525529865566910132319394100321123786732989942311506999412008183302795698689803657529549855867766592208044289773972721861492613052051296563436656848017662202314004966736562267376820710374444085150889495204445812366361013684032242122125275783200084255553552950197870971751079706748184976821223163847338132962987467483986231029156030776519302013622470367907340792615470661258486400540066173071824937985804725727465307 - 15413786901843146777768954891747507775280769823389647329767237188765915472262327193889424141787834023892398727406333882310736348874604968137623664952658207031589228119464250236995195568241249145492836958766317392069427659798243750679373878839846210181593454085644954394125022287388713726160528087727161251393429754057769119910014883404535285170125567066117372061518694978529419446675297201693017298363354138190452042162457477470551873434848869930603937332260321008116748724189176013281632113924698642709391267305446584791027954550414102723646087547327310206019799033448603165402452822043109923214816659984439444842355 + 9334132150899210655595588812755101315334075756790948098975718459582686698914156481642817789029351041195469981109319181472786979100849229198795661561040445224585835473352568655076936514299207844405611645694763879315234916931699279541384735429588781493731214524894392779314165210355489928106112093012441560956288322150222719475465869765945562698229929374996439045182136076768649193259071329181655931705216974675171900159485698629682677204945191805613337103123557869007218401870803385992752766657957727512822751282569474838764256310064650322668877568639278136933641304297309245221973894369077877640396449482840043170085 - 1683986899604904765918910349731238551712403991834239162770962786098689098691191356310075294840299797499705882982944621802721085771584006264724545083864600331529150698500805738028790601356055105940982376899591670486285815609448344788577624885690896621643223494587457797583307354520386052500893563206931912890803922007123929919236728501116046042110638152281939653757006802896748541307035515932144926015455976513969213967071139763127106604705514004937507316754660968131955697904783941312633673816815595763216188371882007720327616822617657630806165331219964789626563097389716678364086962158316836118757070212155897878802 + 1377790254071645059947324094549676487254515645714809274535732945222449082053135944301202084111214567282126503500710609291655107325518738390019266148400683954579791768476823262603373638083688673441594535337185519655360457520671379515665179956830347209351632655993557731304406978695219687532703720569445559697961932318517252513749339855720326967831606853651067972748586213693047293440568237514004939420549277247963684148708551273307331878538932870140325722762588995988763827156755069409002417932549076986338492703029818120064758834223611982741823551550973278205666167127739874368907487253085306159377733594944490614712 0 diff --git a/src/secret.128.arbiter b/src/secret.128.arbiter deleted file mode 100644 index 737b365..0000000 --- a/src/secret.128.arbiter +++ /dev/null @@ -1,38 +0,0 @@ - - - - - - 166748968606094567353532016761008871303263529768915743421973379974803138207450950382944156266783220185334610434357554442422711917064479186379426481415909844465043636558662927551364589152564721093479627893185280962976472825347056569503985250065751583235178763252782650546835649526657981682819185483030339607379 - - - 114791450733848920072095721925370352536139534459711089755608170064861802092214002346127130430900393380609196450625209221040469571648579276752208515531626392009321408223041151018013735505704984802137952286018440876071992489691253705315142442679227681500756879007280899186563135361662046472490023728513516164579 - - - 3 - 0 - - 1594005138766695050159596776005921487009679994184315161436457162068295859563694147984928465190604032438789181557479422403464757339824963898796988836759083112942419971571702252660611257873390503535083802950965491469504220194715930918426744882293264062181368551983867288950794027865269818619666102259834223899883482218133039844487069141997832820088338008306658826200274422623704083392163489825711436539789135163692865830600215080254660880187303144377091231121293891856571276547893921500608255248383578542710398067867794605762845324495000381898116562436061167417094518616740193931394926897759441429798957973428043075093 - - - 1047188703544441665910098982473072437805245344499820811627937886613007027021100235386569944001398048787381639955708364414837842764702827147026958407696479838846481687040743206488703916806184868857454009344535843353531154852860555973757030355583888761320747706467096919235170621432895369645026436808627536344013572877684904676849389996278200702267841061402139241888748799494240052407188280355098863749420599325566996386617067208919259024635656988228454100782706698751297320261416011023467287543423601960965058407366336751318395541876183198181808530935554572394278960532711826768099253742631702998689941498540108715371 - - - 190538183095290346622436322069865431081553985348039507840421311385315527760483786372023943763435055539663875358393675360198739480164373929192152622475281473214830157855351143613791177037805871830887197218851919869299060069855394918646712751510026100926079736197701392842705514617246568064712367860706809428483523813973087807729391890615086827765221458428737240421057956946379154562645082958761832848897890943686845494004794067411970737151738145847970368055119950386497244462466865161535161600087685097284217122913924761432737617781247394841101189934487092358556586793499546781577760974128852696116687758297112306877 - - - - 3192120569628232547255780533079510662279499738568291521471648564827218275649338555095579637079629336508555961671038700782581356737849248081743101915869985834483373544804559369673521058930804873336291117834871145974248941398083923237814648902556888306060586481862611740744802745894934665754812234974141993554442590008509918212132444064430702432117784498305683007627668719868964228419281551165175326119942528925407032338827515934306797178288034788743566696998511198456485728974481278469196884528182760677488106382963346138914520729552078337100165273421322144643166714193417488083664573135029901700519321937628880296343 - - - 208368305031541473688686728019924234029404731644172144629082744309381151189405584699144404282227452101306836300887824727956218750961193256048756359344697390942448263229741412630448492239834908282435118353456063881955157381694090488630771564809347730595858501845629950306766114855512085886493517790354597220735586945154171421261024504756578937901730859385434903423520932287154122356398977801232460726635815939730858481182532874206798185606220387664687305658307416131651837522532712803103977399330889761293098022899994491184388256671258701168610948184909163687596042865942805518458567804740969383676174567397159565268 - -

- 154994527447760081261179902104064154871793745107436082312938677519926742351911815475813805961531821016434085844806186251681019952233027759448367190338346889146593718712437729405922748961721789011581777062633323669837087925107956501607223026718438151918620080144903685615533605229998098749443558095869090487927 -

- - 112097261958471760550752555700371350910933810498273146433365511589847958176470168827897302206034111689176887777093112106807583215307289823508176310769890469741394878640794078493226471972503625327528867471125397687291153222955799460104926819424958764255553933221335662269552092678093790926990710637694164937063 - -
-
- diff --git a/src/secret.80.arbiter b/src/secret.80.arbiter index de3106f..f00d9e8 100644 --- a/src/secret.80.arbiter +++ b/src/secret.80.arbiter @@ -3,35 +3,35 @@ - 12356362929340690040520127032415614939181470487253156511754053929839367711124091264534917725546447585120674049183680834633782904580200965250234411561639667 + 11950762107909537350060952269521020645878695760193930282760603525846057587806554815094523521104902266848862172073516396515293981266544222696303689575679263 - 10778176561492614177826909193821596339916593126629858961794679625241393490723126731303951762607721998622636798063849085618059997183412674986185620221148267 + 13175783950272342600841924601347314399988046001945487321821990428621231814214489767799354025148174545769231329723983315405166911333852088488706008391567087 3 0 - 1665508223032875002135051882379323525339291526109476960329320513502291453834264273571513848041600944812440583883964763188241951619016378615629406797351163033597244261923079142313659130827697515479804924170876189525827962318656425843071994061759741330697660552397876325434641813594128492576857277266192842082 + 2073294799707653017600145110113538326076491881541614117155069117475770807788056380147172015008226254918870505627195399079504586518341255785418322476075347261809964780571883426558126627787563134374296616179709841449508701761670364531532017633926960733359282203911554312041013822982717389240288447427481400 - 2231217343704526167493402271979822823508852814434268622275978128284080589966830373577762356427599060851487082632066806948134407327599153021914530654343612979983505351535080940549902520834665022611897375720474301584720822926016476326711005370701212677912668918960907167306561308285184663379093348328267404487 + 32869779204267556481097979646175248862123143248406604586013185278235816782547762141511971743455189972295801791425549499760521131535722874944681895765477180087891797293976655011148725964783373960852179322296375723285025689891087519327148311046438493274309598075601966212871272729260992155581127366427603089680 - 6265430792202421114492623119971298113705755149298143776728752427381973439673035306244920674743412061339601524570010403712136115073620452344308554910616081506652151370715983439229852927712210962966159010571534174936325070933071945426194329957331986283424004819685136907469079806245984606027014186701040188437 + 6574765771239051510693575395150673141350165411264972578631984466590196664108918513128311267551787187021890904835602988245841793056951022092841756401312668985234779270034693340894544747106335466599232384082818857856277326796544095150805438065952231398688169834121612874031122346106967928429944978467439038441 - 26117293004632823301819675683185116088722347263668671796551249132152434267830017941789299581120610696764057875739200811236107234511363496465528908864664013241835561814756627006519179949073233435486933119847274764359473894924085314956021803137248341100657037590374208508982765195221447021774830971532083573996 + 20830196608545726163291137862504872988569216212697564417058132657171140003981777343448876479560846488125961087153395589954336722703613499422338069568951371123100290649616555364861908642298014457843621538152417165857616518248777664019971191724471058705408808809133425429464534115323644093725545260127901083283 - 31039175928049453140550512907128258957434367186338620250999144272507608955374983830695013816558905742679243152370054430611461233635033764615935996324257210875981827593555626093533080577708973322643811368175650701792980578446874519200406016920096755476959797868750868415734852839209154673003395645962854231882 + 30959894024025487399815803016677268168168848463290107105427427304865211257075937673941582824655085305788321986576266868035134816336724750617485986751447491347606598495920659760406490691264397440272616134889579708053813822657677648437818238806499736869640350363505868205375048374360538571959860296488869277908

- 11761360510890256267720059426835222904942305034078825523525504901020581268270987104098088707561499325792947477398663223368620378227288623989564797649628739 + 12096005960577363388999260155101637833179507043784036849982630910527682037172629899443002486906950113408067270161084188224671326426990944810878072329020463

- 12157525316118398705974150990112805436568011412333415107031481693715026655150921037895345422916755141512342053469253266630917795705853025219280148934655703 + 8903774041731621234481378127279740442077762742782883931060847898894971336062306473430985998563797951762537249119050564412958767262408804295089316397565079
diff --git a/src/secret.regular.128.arbiter b/src/secret.regular.128.arbiter deleted file mode 100644 index d95b391..0000000 --- a/src/secret.regular.128.arbiter +++ /dev/null @@ -1,3101 +0,0 @@ - - - - - - 126674692710129482805643767315693743976304536004326133402790796716471843464871300024348676936406177792683306495755085780343536315055508046522373848562322521858815474626750626164799708633709828915872725367415251173244450168443197961415408406057520248418536160372761803529982860438917371344077691377143373055339 - - - 168164452789727563015306605740502510650773066065718280789239995786426846152798743374252948040052766296346316966739745641246453364358858980450875127660395684338657319412419543083113697337061595783043189923691984018087636074234363257661079944246626709016196024614801279374526439813689549933365235854525826766707 - - - 1024 - 0 - - 3899606821594002949793739258490406176455033119640350496933825754708210421762380753507252705676750154720945447097585276854128752700681742393994065465018826607710885029027641215606271878338802596660920170130238519791432497857332918208253577079594509254167442543559650028966864128760023953872225439954074125314433571276503303740906738759003792746174024278313806028045566317371550628822899221581284008142958714574670022489488792592326353724194095285132660225194230963867831176186918668003429143136573151767294683752110789156955822174393524298570074797495076848933412112466620904467097983652313560448954528291289512088439 - - - 3385380629745864724568829091897957793608342101131522777760821359256318566272707505002259302645244520027001586645458839376470957224337964695069874581006051585567733998278002986399619175088425363752833258264717258598336434475981291305928146298099870302841294602109105070770992415155730327943478206596305663386662352261560972343323235770615771582377295774205191128384285161892416159051837821760688630926199522074940901837904986436611237914996388010823785564538696875020668783137561817623900680966639758933580504227384068707919862022818605283840312068458047395424136780059446897656982274977114743873585608298277801573141 - - - 4504057129332195784904449790511072752676721074040595441138979337011275484852515304300640388843163751013572099647783591514138416554226396081888023046932676225047770248478066124168672044329062845395173965887139091506010200411860441518265356867874417941689558370135618076827143695360289813413095686075229608460638966970454766060109554095241432131087576205246498237196077895825471243525552539883802889941268613236112072985424532062369479701838531292842905276179026123125949265515464618683018028712393480907439548730738500065010008741652826122055811998075841058933323175464346939112598280193390569317434054235470399189731 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - - 3099027156082262383356086458929417310223693900569720611304872371751515128831919749390411646005090521717402619263517745799521699816093966100573440027310109279418715852981065520212402670399774634105598994068722338878205767305377425339313561821207718927901399206941029526508587014228106752935267624650228871888644717952420084552128469144244530240526270911233922439230145271762000698382708234041006194357442338162880199089169808969153530853622465033965976422305439534277593390338044255561056321282305469477304286021864137039934505751374904636672152428148516966131164329518687802762619094950009358103308486933393063596895 - - - 4316492962951774801380769228603977955221844638371832502502689335661557077924363140029819965346834922519525021906381212216043701281757010918916042273665149052826018363060788114949709205113848045555637126161055260260412078972433591292277135773945419570709360027126906095400467701179197262246919553426998002679623053059631540475132507636998870980307568318953542674141695093787875676848711839569134151739073157480688226715560141318393246044858749314201376327381326108926247910887519065856236612755373762267823486083959502556574348822123712562956200271332823363601724962191265289622031668831365299862778692742129624987459 - -

- 169865089717622715929348931362505937716487911285587789458899972533108118889543886261148394550264640448167421528038504701649711386497588271125048707198728464234849921996844996594964678938302873286776570288463231126728639652176129746942016116047612880639404516834687734686623479556953842199294915620083550729167 -

- - 176266739439571174474069884469039196301871067715472182905580467978601894159590967006157844680198594731916418882127979623801761694129346894993785397368093289813053949453551508110434429103515673399976654791919396446338109529812800641819674326847977767217550110940657732966458295067338609184047522103387879795739 - -
-
- diff --git a/src/secret.regular.80.arbiter b/src/secret.regular.80.arbiter index af835f5..21a3c79 100644 --- a/src/secret.regular.80.arbiter +++ b/src/secret.regular.80.arbiter @@ -3,22 +3,22 @@ - 9819313894165788479955371851833280688606498099748045025677848546668353736051779009287350516296843216051240946419765006938138414282628870957966533532269603 + 9389546402921297587627049645265788268434092503338963492977327595532238933961807871220944819362533546753322479715354900107739479950030310351001827811230163 - 13008183311248634634771861829478234913921044755619103700877806538360490794094904471850859676260379116634404433406226786428014780896314028358541053047949367 + 12941041213820048005326563903335903511963884344433311048946244530033474686637914605177227700802400909002395876610026225659032555703934092684401608696782823 1024 0 - 5864005279566564379419497814367723502685128749349304418481955435646281519787071299112517100375629884139810211188946947416422435129311766010360838826639835952958054606068371608950659824557266851904419904568711067668280578543122854971168104829123382622774429476195480704626000974215142712347156377555258026697 + 4985122580899764308016543291009045351432340410485834641143997046182230494318531341784629894246378583182145628505794089122734533671674900297851335419555271433807230937440194752355059938665077394806899897086995732966335201711096579137071318924795172512717759099203468052253098448099487298954360992374532441164 - 15720403796340423550357178083722241957229765190054386300611546062404494900814782425965926060668606292131798091009527432378699344605337478130549618533900765742170841747803914401153190281272895537960637927587668054968036359541325976414502520303303827278859494080121231141794095602734211653065840852107006054941 + 4593017798380916808117102598593963776676495536836863737939721441995182560333040268481761163428396193592984583557088838042866220264691214376342562039035903424691865479144522392162696642929672904881406359255590391671683294386142432680321616588793522349184510007956525389816786472260045233498954112459620012950 - 18723370253536087092107231852330253634176162451896837631273731318213950606780425528625334662802088831982355030632895022181496319127512784690708980165750051707434854481653781876873089423312342088766564267079655414361193803767315758732142286569234548445023003655369938046481481519460359282637510554400982885199 + 5046860187275098808537211055919895289087039000160969924671798597186438018075236177205005281038054178876424924796279496134353179059237500004237553257389695949122651201109016834114649242455069501137672740770292651833617610289733772318934405113710644257808286610368501748739635971319619547755083784933024776296 0 @@ -3085,16 +3085,16 @@ - 31184208343656945653946680134492383064172226269994511596468059970836944082584291758540809697017132142287567551068069988316371471595290812798392436633189390455904344631542464603200744082444499895343871174646349095053497058294386133080999691234430858516866388148240724114211361979544377393245326151593516843024 + 15512069615105703501201070972971727879258238790865429468676370995234894726657914414800181461389948298692364798915968284935626546775620991405989016943536420025144257337384301549777569446149741999478277206437943449574035556507280611593129973294580187525571679034921117411820757414247218492729859502690092277139 - 18889839011982767158894241512021141635474898277900639135654775361078812364353760017541730914344878749599343547714297856277162882126559983994976337968050166605059986728677125210045994678552564313138533849385528585681567874240485020462466836160792626368458820164245507797968722387418150650152207341531444245601 + 17466794227879290150547031702573153810897503540743553068714427290654890175227727833912782999227798411664453979012321112101506750397292188099015366941797129403773875124552968633288106907570806387134009147201504002452150412804309332897008848891676261354033810828680083855498408368306717652980773608654460548925

- 10173027954902069896416306088787426924004617017140407991780788410860608156102722383849005521062387445173892492565102033896022021966461199906346838723622543 + 12939252621117348557466829025072698227591178241330747225816236400402170913718989815188692742388322135806460603057239236281647863437299346482518901810324067

- 10384378299707326533624421436051666962071809403042211595534361819204590762808052551172389661522205388580367723540959756698848731337042285150852357581359899 + 7329355688528414697446371844848994425964194917646002458970895014983732951555833828797559176218795748311711522340828708808952354633389340539393828319802803
diff --git a/src/tool.128.bank b/src/tool.128.bank deleted file mode 100644 index 261de18..0000000 --- a/src/tool.128.bank +++ /dev/null @@ -1,1769 +0,0 @@ - - - - - 128 - 256 - 1 - - - 1 - - - - 1024 - - 132586371625540188272717355152503291082194944773874348160730089517080215758433188246670084161603515500793161734437218894423509289350667458921271350716482458292925230825020579791114673070527334926842852620298590627765794522844957752136110446956842602639569535315869135720632207165398851660087123916784626668767 - - 256 - - 5 - 0 - - 444711850241942269050111205816993253499463843473002504230110807671858222694554383347572694188908315571195087707305820529714310842879637068467519625933412377458243347380733774223351850987694051531205308113161321536862250254739554299924124841693266077654147765674885354260594228125335613642200900313119427348 - - - 41209700743355705032564005698395214498347760801263036391725228647895399675349309961563091880132407824781831813354255190803445597632918140497013072056912901544642784200428099098365026588833346657366789993561623223604080325091007601542298019609963768335818282029672642560574744501300661128117046024817359001171 - - - 6446456249053093712961774394830159504216368184920731966306588476349458057905082189424010275845221210118048230949644397292764394544137466107406978764846181873083683095375933965624031102370398802846797896837427933100851422401896782450351306623941971756959103392771121916978470960251274981347667713918996206728 - - - 128942009923248960202737989392555192330948309662109430333408015279051100756002214687447459166616926309107942733466318315371686086938737877455146081585461954655266849660331645493441582178573313181967415653285373999772877564781127798233564477855600314888538458827047031018920203481156313317224425513356998517395 - - - 105646044682501949175359480662828487821338614225024760040207388881353954698978011716470791029007776608699222164864942659473657227664662524379359672974579454113718951885356016174720789985679456503861201845756012281572121424844270023329653340683868555098515545228296050473146879950379143230651068209639817637098 - - - 1 - 1 - - - 99943103275601323334379680290023552572863829986595931543298554810786122880601 - - 128 - - 1326618518737829952594896457296731573831666075318061668513236789468585250868493936789556007769924143075274891558400451748309669686657868181944670361332155622022465687486173299989326763682367912910270126971637522343847475638855089166 - - - - - 11 - 1 - - - - 1024 - - 99683430209219299202938906775017606724469428760930594089358427410134860618365868965004793074091319467805535748972215503524038403535258504555855034146311628672944167557855048795425950230778419329914800959299004291330197945213922372702252933746294221376666676943038735011157528710864090248805630235321387417233 - - 1024 - - 6 - 0 - - 44374832064487549703432106936110733223763329868662976410465532166844075257057406776673624549161360987249861412044599719051898091867684286031639599197726655387219559815670638611226141829724813072055389849106845806446371521054197013515692281584194734156442408523349320037692677236600725489054906594525371744098 - - - 4630463067468923828162750583060014163210626720569193915638610638185648687072871454313570584495776843106357295879749151692425383863181535413318641399457012780863140523020442450319803861217678809327099130460454107396219723696639091046783275546878275618814275775664817225756657644407131100216751298115908131194 - - - 81502968578916182738903954868803437570755946677134177447602235141924201499139137044596035140222509670602871331791597044073071572412228544534819523226128580024545496766294194339793960293820231413658047109091660897365966097797938250791336718369379316371047772899151957904896765356935959814025957982674691345123 - - - 19530914161602779659551760133445821552317320310152365572270824124934166659722311454746309953223673997078297436243931292053801888013480083060066216140461485920045976827407762286163098778343580397538509809300097680026549826911680050446687580200949249156718366777430619222680797133560540120874109523363374682532 - - - 84981501181908958407165882058596493360698119711176806078279361144462965507837003283079265547534700328302141973542643476952659223890385025553457948180508055232705101336878525770094803887787098569156979516392327273966990531171437870101999949275825950472005389499746008518249966417744874164049226960084391812234 - - - 7893650965033577198334191201028694180475332921983002452552068231359850151359044622733422029300099432801430764455555811879002006862417563061903629164535541080083196159447478495410613617151717517389931741132158488141349634905171776801040321832649612992461489685161324965894513229375743124200392574150125896106 - - - 1 - 0 - -

- 12156351937563573658659580053253823410691110073159632064873022501836009465486592594749999599277950935800838070217509230652132563179395724644794952186872179 -

- - 8200110585906438032621304395054179270119353002269548331464070505333187116738310343642958392223816278303064396050910031983689028221128048940187204440059627 - - 128 -
-
- - - - 1024 - - 100372618494278207809325833745671140482141053299167545555496772471748336142814309396477676570872646968276341124341133734057291102742322081931492248898037896745834964263295089835223282406172162565851658852298315452525264953060051812464058668677471281862812603962337079805583614207759557014036925354032849631573 - - 1024 - - 6 - 0 - - 57246992409737900342577682555961117349863309601824510421222521894627026751282629144846490064039264510887449820515663063426823074414131547854380098425944664198668967874835264912524369399371752886788019144257660363843875576550200910324966658273895956429073677736320994573692181961701978193186571833694420723781 - - - 55359130326043304577443995739779715186268346376620963862107764611659939071774803889709800904940211859512035433140926280209277737074076862166823314552825380623600695178406779285250666101690748062116072596864033546150050905356796372295859111563103651519324597646670380478259352333788125722561335356419351548649 - - - 50281672128225695904327755312403473270464636265873620911439875862842840579216593986516290933013798705736976869536862767378398131732278547320623614540644278314658335040286056564380320042634960782424531211557936644416852933930918166129586584400530703576432511573646243132971344472696494676449191196511768751040 - - - 4954009689876130900433823183239394059971025313181438225168723025500650021819168443266313593092459139668294877241958627180344247118460686185955251050098451412974392505212283916588312535306656898458413369812971999245044625814448902655421908545388586239806219956370126085702941241215414372775529176415068272226 - - - 35515595255709896828997760466304152492220728871829869589895003772974924553700508769181219885351038370363994580037898364522369466452803833450527848565405566973922751414158220323539740873051032498388712296543446809826888174558618629333699594826671750960039792539335312071049065457401731470572849760698057282405 - - - 53982898161884174760525264593615577676431520915620030422211324465890277781242664656285886912152301003799278505578589234713539160914623954004226071684048051930405768140214951306139171510110595301853061292778036789451353938383524392523322187090038385843323099742467194272605232422277182140459271404712596189859 - - - 1 - 0 - -

- 11896551745918105362971728512744277845835439532818452881315269737992426112588024541732421368934755554982621680641446753621028215232581368061969077812779927 -

- - 8437118640594123178620918076897688577337677623112766785827012578840671912538015040671630458384450627586876621108564469770753964000093941226835845074624499 - - 128 -
-
- - - - 1024 - - 179056286208052838965292614776285578832391122479516523035040871652754296525571820223688635982962783601316990610178153476124475074036124841321454348975288658062663380306451105704874611989409092134086971615401167426036221993116519591467159928284378929315318332059386710030291858650404083425005871892071186857273 - - 1024 - - 6 - 0 - - 178377552641377500865286063648727556416404015075127401685534575975076459575504794560246301298721955859013913893640507231906329290835420911614600529224173881974520601196077215418521752161496328570548883044296041742448024685274297430678209781623977102471902189695810814984063443362479850712510121572973530768995 - - - 20769688870070165436992427339694203145292523059408806374887538935528912003699615548213392704619780037234390842067366936848278728385901533105547087225530691157902332145378484532788468916796432069325744865727857779279958043613873271149288783780319280513887160495047913315001985643689388969419602435921902916576 - - - 174791262245464645868767317839235021278766075455568196624276220286866571918403921718660783240456355740547605541359691882609396468612630630288115927266879724308965128595708829504857559201862612088203911860982726216825023258650320830660279603311065370610444214613451198710481166631253077931188456029167534479371 - - - 29430949861921363180532447370885938675197960719463985708429902998553499813907878796936758756888004352632985956057062412412857262290557262267490819588447955842941087683905824771268511538073109920236468184221145418158999188651980852958196002535495729417164668317975247134260832577524795061940668012070262660148 - - - 33823064666593497298664315122406795314149352648971525159868342766757305003383811070461423407856422008038095751430603738498258035799096142237609225846417708519893838218075447938462930393685967123434545052565320035862550253181734081559761406167043844418023672259049372762462061867104300604038115705269215470437 - - - 148058038465200793690340551348246193382881082948352221607273933659845806523220248031935813135858162670302995149394857476311437030948371832650496514019132121253661904600363352472468971446343853681200879325567745500014430783962951146409075530755861224679906402281793275989220685808705147046100986005410229853772 - - - 1 - 0 - -

- 13387369053706524441052298969953816865931215541493627201932050414288871500077266522988236783752625813315396589969797844560751620685738565702270168506745819 -

- - 13375016815456955841470279163167978032541957986847763585725171697601726229270480352604959863298180469690218668879817745445241491655372612081421695369484667 - - 128 -
-
- - - - 1024 - - 122472266630673589598992895062035703233848661693214725901405010631525288379574816031770542696065901636562582576773506864908929534663254247331128605764728063087768770017178540062512081945440960866895139848947409308478976883048112403100515017574348656902851568267215962238033022095687410295184090742019791113413 - - 1024 - - 6 - 0 - - 7728944715899189434388609909724774035809842938667678317425460301603605823013640478927439541969555413709778749118826660002926674529472346548351718382698588549714060210062274800686715297407856148427378139345265348221133978168696684278480173159890783005838020735251419417910753567965053175165025017789858820644 - - - 26448003475986841497968052832575367195088016660519408677049324275770039699268051736789155417037960727921739548551366436808295399762769326861031593200532414836942831340943797676033433793694248322768289140083303407565490613002830404023055002980920011289126814582058510573151951384518941752137790627729966328601 - - - 86229288105115393213027250384970878195046658018230121981926087622908360019070695476890286000825705817855128868466090874517044630051807932688080137330506741796383851543511055620171832099182323963400791787063009161982955132748352579514479641889009556728765160794019431155612835281884746046945181179175314072101 - - - 118443298197751601243024301938618535427519013797625162067557289257443424747667332390767128609364405814370507956534181923146947118096415153388797603904285387277089456614581467531519932588788044429896623956929401613125989811394848718430770395258860135232715671961233760465960973508438597288028258187771963652303 - - - 63079025970083405739511542310056249842741383381477548746042147188133572370748015807051874328665981591645313044641075205479762053757917936684941075988549900240466490390069845305685504221361215041236490072242029131680788253507798397137448619734983297278496456464706652724192001914955923548292849880375166790857 - - - 40509648238776346975545047490038074209435447170427898755134516674702980824141055142532620643304924945704236217094826204991308792562157103171370843664395790315537507859800004916243411935772744533205257928339062171373642112948854794088844210884398436494877111172199985119678162349590861249848666085931258412086 - - - 1 - 0 - -

- 9644368850153322034703315103697901051926884488301430556546617138464400206683907769487393990184694328778511476546020068068021945752432673918387223686904967 -

- - 12698836858435435937675913359997765775785276976783023925769404814538947216761763836785592069485979944242173136025323887368624786677577164791726164185869139 - - 128 -
-
- - - - 1024 - - 94552121250876779226056478441985417834697549046525732037515214317098721124385587683741795285943068838272470889450545110834171450997743673526780259637641164399765807542836445604258361269046692410035177576626482842170596945096381486480085953604978737328476456016612043198968867965622421691858552300474095035157 - - 1024 - - 6 - 0 - - 48083218856562860783737525775191328434529309725786982977533090588932781124076143659736041475811675446369495170676614042227311991610162480246804621885146024797948097897694587243264636437130851802277584364037533108489941116668460359722929037448947475873025984332615369387428734396236836178248179053324432289387 - - - 76634283139631251031930451482439094786633969169628830486414552234002484146483166767407506407205976751241526053457671304683137174566086803880644871041222985640288589016393229489142957844430267204654938648698223944585668424596705445851412046692088325329062368117357299350383261539550382410503213810360724768831 - - - 12396003202718048909550176869357200835167344522002799990717342448836637227464886796471669915677173549704514451874300300953954982243388321237604630205234035637633279054240127538882158729863053103189998107664715943383217977914655949391169809734095037466008231841791029642492622767619951904866524114245681424782 - - - 5539923707394084506717087117390496695592232635500747359889504943711791202029940555652040925097713452840277213496395608270510922111988739086756598726879548966887102615418006792507194054375683371861709247204702686528673393330441503439121615585771257714697719537117389431199585862074149372310085911201841216186 - - - 65968532979690524565399159109865869898284017329187061132541714089842101359911218133768358539795047680936832650790336463801883632609130291164095510938785421650736176533067266082084768408474334973607759685176339532668176044078942480494801077297292582190823343166661955740154699563110781755198790163430805716978 - - - 8929410934781893842920542351761290516339838143391027227969566157758346551212210108169096861146985810613153289756321515096365399229438452562850172935225676505051199564664874135916650774022233114020462038340430857303825774705427727079183433773581422911290563266734751511815134252968205031225916496632965260619 - - - 1 - 0 - -

- 12626409640272974655233521254634505986113859217530798906873548183103099611375959546554379604492110745715846535234744512031965162358286807757060219473790103 -

- - 7488440811336818363937159595177873184411792902918658739383421198307395028623162698428263224712461137857458567206419473562071318521697310662858469799194419 - - 128 -
-
- - - - 1024 - - 124604760543224075224703067029823671929197848568290368816278071531248699417186480889975307973142321087447654043163779310314373817531396202633137323160556385697895753637371197560517651126571956117326552395441960299276166360937411641365637714128170666757748021061815851985995399358099600530948464000050172732357 - - 1024 - - 6 - 0 - - 85374642385284771257823631576104372768147056924874164883253839053780686027174341621883343533017782072735743106871350181141398460483873793075998118728027487068606054873854312222135302707457420590697930884900408430012501778121848164769218884832197965000311562550813948768513322057496853957945086012933955768928 - - - 109951715000613517319568467860069810650403863415999616962622233849462032087516269516115308808422392422344711580072435010666722823022715603530377444205621343005261890621173920886237616524419996303640950274964938929401949794216034721670708285807410307537304208774095446878328504393857085245159895842518397081669 - - - 113897613942613897227385400755632242796147855678163991969863715867699990348445814363632179253538407757961828124650703384323771690430094496902916699863026869603726373354595025416632525977003500517288059703060134213925130696858407196313572396734576461499925537889675832368585194225936684535814825774675818271594 - - - 7126020928855387487678674994782820081171280721588220504548382853994207252414761574612270717533602534438287832704904426640097554047836373585430822304067094169963601314200955936766302620704531487418270186290467140502478905642048977091606481152460527776657066274437262112903743860557673135498824456202362431095 - - - 28704319304982437230631355216315820387776115028078205817309612642875919182450943971231372545448637321011435895481695278298527227533430029440070142783852154597895389875946571611035965006088562868353361887342978399010005933994152947285950976477013299302158959465667564151543055870642032282141512399669701684124 - - - 94385116545288685745006313511411261449412016951854864094148648114948170929374208755686282030124840944301610566544929548845042596674629788759596677932904948695542436232339591732388400574815727980732194472187560302852072006892434987271733784466225284120170184345573862472817276658753020379680128757909201180493 - - - 1 - 0 - -

- 9597358002501018309121870214896018217870800796878035069254107760851644762277443459596584060261292202253797548066433643464174883558533676208438650069878923 -

- - 12983235647847331021494993308557649154523925317581742012198005373331971836785398319725866868674038165717344426853381930807126225951081067813158445817413359 - - 128 -
-
- - - - 1024 - - 92667338402278150042501616331571845170553916728035435044100057040256065504286462484564859200605606351639537638200067692153833627624658309284127823039676010855431298672482526552316853836499357114282811689667233085741354835345171033926521816008894273405946326529381849176517255761872896679958965719410137872633 - - 1024 - - 6 - 0 - - 16811849638918050357707196041977965708281779948508812087747452461640318210048722407843231825782189557782450810427679617933238834899374426352555709149349530750985291583473604357471905484577529661955836023008264742969193839994095846756647807398434006424747681519563767314229263412212943470716671982233598649422 - - - 58885675164871396171146017162515484784619548791139875240864919327966417145277963785116921012215956550942923762313051096493940189775695160566267858580994075124508420959429871606332304029906432878856949417986879035877178605192180897139164552555409945582515862076757143979626309158967397214623905109570430339616 - - - 78313914382473412665786170356493362330039144085905477110883824576655127416478576581225802910372034259178502168118482520057731459855605400355454141177724737465710455795317797057050749690825582952562593287731630723650451698245064627076719872087412545623712737338570571765968440087169043872698907874927081077861 - - - 44353657461760237924006107965806380925063513414349843041392711469913556488536732791027490710958460726040728309894307767887311757312709852005519327917263961141869470181271532151197810341309095643674076995541951200855303977317735453912469969481851102207308778763085134371637143049916350432664038803587826589668 - - - 63191677686706411065075451325037944524770770352269227650110085952842205184411082582248537168068154849796072871117393766031688195935193176655508324522062747802100124202901719531065193631269306020605398068520343217692627311881974378600699699375644522702645562717393999591546273213569688686511625264588794858942 - - - 27652205832407072812316692638518470944442957295475291784728971848700300617325041310215882904190200515282258358913505115222303725583753141504691540734992043009934166703390905035504237286974303243546757023303143754911949085074241979579452470343610112357023018098721133940051104802215521754650102873786582518475 - - - 1 - 0 - -

- 10116582691417961700450409660073771821080163993540593392966288504372235050089155909865587090768071015740429923980831573662177196533033546908068144339312027 -

- - 9159944739134999273570507299028731020005326833476187868753450219363085518454977587499939070133919505623808873000694070158656903559252933145645844495267579 - - 128 -
-
- - - - 1024 - - 93157218669182241490675992530576993151056529971540714396387059359186171724141659509029018057496673375724745430589386646269550119148269920362701170548242476230586768200869636627791503553887247127935915598948056541833660695015447621632102308915805855759457595752248174672016238265085118720537215599842731173481 - - 1024 - - 6 - 0 - - 87446462010353589849746037738234397066041473308485353520558292228761982279440351484864438349240495330020592425437696919685785793208107143350457464619455468991461033208092266100997622440647061373010236248292121737230754562108067582715630848468665181694081670345632763908815931968482206657871229689506989460958 - - - 5371920121762799854663805307274467928931803539482488713998579982300346943296540013798537887678792263719765633413574049203047372443993219255970449761492609162518050585879685358159056493779021272257216677045502035242860798630295376382443183089111094958049041573618187286695690622912661979805576995484142294786 - - - 81378360108595166141754602315536604491755704238697043758045707442510949873531408936241895016195023908288422505205347691391502628187871402288416067822115977595084051625939256053609321368824929989321365961690214884892999027122683999087792024864593514390929829855011841082638494789836356873844223507607133041030 - - - 38267072007460605093022646226649253830904974117624582796149809817168470090793680581881206510714356664433778954062641981202489800121664733504370571757280047612362826025256016849008537963783691716960805848243559388372461046653234761099749619597004542806650489263676912191096870908180220417926161042166859270558 - - - 84915700860022964551345495171007866352879240088072004050514163222400719019015839857792496006221417914139406444513188151320138028620777765653670914650866905931580757496822620485139991117159813430362743832682381564303151718274674124557309714731995606931148894273370034729964486353552790602411267273089740887112 - - - 73465385450573914162870333292460394280010999377154874726178119439395665018458887558540867390535647454464513516463027161883108146373385017590161224608954678928418471159107754308115958338408278114189275959429408867213689090594608868255919833667342809714741419864644591378701510369412610456785454373134014974624 - - - 1 - 0 - -

- 11972876868460753275066668486585770036484418629508842316078562629031483418581358900234477964808845988274094119408005433429985716131502349487632772118136887 -

- - 7780687940972589315665978051594632936759069267966371943055920664881608463464192616257011149675403935035432853275767376331164649569829862304894745789920863 - - 128 -
-
- - - - 1024 - - 140182840369015629677444253779509392454802320870075099123427668377849033675466983060456985009733763204337800460423127911008212609447372562429098014335706464989758758740208247220281377732265746185919831902770207371875995669747914690479775278145713009649187153850562571367375647870857686415645933669998400329257 - - 1024 - - 6 - 0 - - 74455685967512838759991043750305999910403603361183393124429352295087548634063792550278083139223072256316954107311975400422338099594255999639972081273763818226105881287714634621018111690505668683540182433029581703552270786650780911280912244521550082056222427782968317532204880864580429169559407124961989279707 - - - 71098481933317389508569823052638450315420923677123524058701261064638659975025357178946016865061229212313198312082030748560444802197489378720773582152083681326388737157127068155678066123024313578023437832536817853345391300578991541431790615516076293902237223211118896078445149399495702412008571155478344357778 - - - 115110610485112803170120890450410861574735332789506157208438130110718586860547346474556536575500204293436391141549746837480167672278952099431935207514750592413620333211437374119350533399344562363227946687352699621710249905144747106242855517490419002537117779923863031017721389280577474729281675375467381798626 - - - 120330608270420765105059866265760358553479026206034965536914273126027422997441964175805966892926981299384783642394441490277394150460201516690147208336317181939038974254656090718976077645572006247799258611056018020338006491430013096063728859631805749332510316766006851947333925001066287366791726970862626291132 - - - 67539212953786831170362280216666497485098591299326042738929014343236632821022313674668368128665233026533515361422201716455042909840388453755300604586113248821093293298975026375527804693431927109520627809902308115727777408141187735844148052245177579943379084039246961911533284602081296628198055404193130343482 - - - 112319151352986482309182686404845526390525841147671287070408503736033729389413743209528546967376916627199467539007813942237692812742367671894844803642688285719773478359579239402994226436424644351759771456595365332573215315742895224090559937302371921472603333002763125960793889174407708080428577912651608328701 - - - 1 - 0 - -

- 13237924258845536022467370903429005560216761805502124415245746897491664222157520847731290544684340754169134287990322205959239073554837394903803257845482543 -

- - 10589488021533733426785614404860859276142077436554165783580698037906205094105402178674240662351883735104625400113876626148523838613328267286425534418402599 - - 128 -
-
- - - - 1024 - - 153151384061946112819130335133246133008687957295267397843621546909999994389152979903838543621040703741957204585362979532683591012452196507341382378765021930080594638301102581447095150079527571736299826032393569032760089515710110573763393320644209463370199325193630893641761118983295588307360421992928735239641 - - 1024 - - 6 - 0 - - 7892700375071886213801667690949643081301660897876362862716031719252735631702246488042663317065226596719123642472889160164166752467928542946405290110100603916619860642652639874051908104321563771186198974277403372762475742407947778978713423261366968057886211939863053226416845695474626247148481144599879632770 - - - 96969751534332024137525673827305338765824331369062793244711961878338464229795343511369854914166525378159544513335008692960110239281780105946345751882081699160695192471425870929619862347261616029408965621832016372001825462464042514637488252183465735075947917168352282007926612702365709391433705971374480650330 - - - 114875699681605178113297100883725137816850022442270985408429076441164419167544283646641922160696686060996835821391125325554032812396928565692163322239663071368311305838437496947782958069105843521971767109289961823988985531772396017645122897804718943025519949475202876055846445752244455583140057649113803614259 - - - 65142979135827041975796028186758506145854632340505778500302049061619882852408057984561028536581103479186917953904089923319512041375743806093313722634211811019559763185887128205817238184749522143717887021843379119212824449556508752556588828478467790333950728028611785497198162523007873618632206089861361401340 - - - 36365653562546380774498331892233340368119440850968377366594978378206403596397349649940162495672849747856663451682615481355115460892329551644027193052781744071836000722331822907728424967318270206822200346897424772482580574472348312641051213825757952065374047265006433093383031570608989752280846790724625652114 - - - 37367464132260763212677594935535066845758607432576735529782786049728028305368775183042501847621998510706592209814132747806613258637353374842271547029492874993834491837910337348454981742243913507887896589909317221528522453457178954812875123817140250207188061720075701080035731147924455124722653493077166508317 - - - 1 - 0 - -

- 11652347351815546411928608048767936237430835628552112025242875188652549195683446121582057824636748462894336452288925511118433186493764539072256929831649699 -

- - 13143393295607830664327305287951872251956799388668596560544307288415888343206753186700563936883765295346535048622643095185041142765817463017352516628312659 - - 128 -
-
- - - - 1024 - - 100867277587437185905738415973319241270762549783559365763080515113732381952674153438473522936350424248510177050073173341561288174108410763783076387484742275185420071112263308649492980833108007892837870942819215088251575737730473861793336237539084855310382517708806608778283659205231502432743977016620509670369 - - 1024 - - 6 - 0 - - 39255559716883834710996217195960790231690219648364596063642252732525253626322537184453873865040277621949489316023974802886660737439109091681259589237564079506421532205836519587245678559994523313948203934718792220230453120669778118668541975297967552943217325494302005027700187260063491922501505329489123345084 - - - 39251487206514441563334280658297769620912136371041423458186372978938177189264908183631867083771532146089831189040237231008162953455496756686803076545387981343077808092826097431496885696159376910241346660709064489706335519357501003266465818976562287434337562453673352957027238784722579421141604136610413865069 - - - 89788387309278240674496295908504187208537159799772080051192292579059805429479222048578000890516118596274242793098756842780898980765645869881610036023411374800834386223748464825899794852749054346765657959106143650692839796441237207630886842547087030398717915820598774482068967247661437905594328521425874979057 - - - 26357966711801363898328231309025314087616129417836161948306497415882603318843666161160822637115952535994405937855709900736450964992853399251490227990497967839030533819424971389267533958232849226183830101254778677749362868289847725471454616517783178514849063798868429799551121680536684866362141823781948326955 - - - 14384849599051764661772057823488151609489203006676366444227243390117693698668322782327983827142983439221014466954818465181340731717991045271712496710923417891229487421449062528271933023092771365428984997787726567732777005825539778159234635254765002400637042489824209849704387913027726439841852511942249366530 - - - 30051432193108012845512883901872689742838894686285390245961092912227053842938452415405389199460855252222500571948227564229716905666340774672571874746019951658247579047627333063178030591379609682038552274663193364087296307923630239584978473289012247558758375337308299796539977243614211858116751481256713921208 - - - 1 - 0 - -

- 11871194330006119075814063164847621988250895029346062235036869017307700154221207494837479274646830156979463437583772905378112331319232584531756665421941123 -

- - 8496809569739828636416865104250710430755229036839126522199307417003852295908536338099771857812069765678990190616829088005492474195283849698868360489389003 - - 128 -
-
-
- - 11 - 0 - - - - - 2 - - - - - - 4 - - - - - - 8 - - - - - - 1 - - - - - - 16 - - - - - - 32 - - - - - - 64 - - - - - - 128 - - - - - - 256 - - - - - - 512 - - - - - - 1024 - - - - 11 - 0 - - 1 - - - - - - 2 - - - - - - 4 - - - - - - 8 - - - - - - 16 - - - - - - 32 - - - - - - 64 - - - - - - 128 - - - - - - 256 - - - - - - 512 - - - - - - 1024 - - - - - - - 11 - 0 - 1 - 2 - 4 - 8 - 16 - 32 - 64 - 128 - 256 - 512 - 1024 - -
-
- - - 0 - - - - 1024 - - 132586371625540188272717355152503291082194944773874348160730089517080215758433188246670084161603515500793161734437218894423509289350667458921271350716482458292925230825020579791114673070527334926842852620298590627765794522844957752136110446956842602639569535315869135720632207165398851660087123916784626668767 - - 256 - - 5 - 0 - - 444711850241942269050111205816993253499463843473002504230110807671858222694554383347572694188908315571195087707305820529714310842879637068467519625933412377458243347380733774223351850987694051531205308113161321536862250254739554299924124841693266077654147765674885354260594228125335613642200900313119427348 - - - 41209700743355705032564005698395214498347760801263036391725228647895399675349309961563091880132407824781831813354255190803445597632918140497013072056912901544642784200428099098365026588833346657366789993561623223604080325091007601542298019609963768335818282029672642560574744501300661128117046024817359001171 - - - 6446456249053093712961774394830159504216368184920731966306588476349458057905082189424010275845221210118048230949644397292764394544137466107406978764846181873083683095375933965624031102370398802846797896837427933100851422401896782450351306623941971756959103392771121916978470960251274981347667713918996206728 - - - 128942009923248960202737989392555192330948309662109430333408015279051100756002214687447459166616926309107942733466318315371686086938737877455146081585461954655266849660331645493441582178573313181967415653285373999772877564781127798233564477855600314888538458827047031018920203481156313317224425513356998517395 - - - 105646044682501949175359480662828487821338614225024760040207388881353954698978011716470791029007776608699222164864942659473657227664662524379359672974579454113718951885356016174720789985679456503861201845756012281572121424844270023329653340683868555098515545228296050473146879950379143230651068209639817637098 - - - 1 - 1 - - - 99943103275601323334379680290023552572863829986595931543298554810786122880601 - - 128 - - 1326618518737829952594896457296731573831666075318061668513236789468585250868493936789556007769924143075274891558400451748309669686657868181944670361332155622022465687486173299989326763682367912910270126971637522343847475638855089166 - - - - - 11 - 1 - - - - 1024 - - 99683430209219299202938906775017606724469428760930594089358427410134860618365868965004793074091319467805535748972215503524038403535258504555855034146311628672944167557855048795425950230778419329914800959299004291330197945213922372702252933746294221376666676943038735011157528710864090248805630235321387417233 - - 1024 - - 6 - 0 - - 44374832064487549703432106936110733223763329868662976410465532166844075257057406776673624549161360987249861412044599719051898091867684286031639599197726655387219559815670638611226141829724813072055389849106845806446371521054197013515692281584194734156442408523349320037692677236600725489054906594525371744098 - - - 4630463067468923828162750583060014163210626720569193915638610638185648687072871454313570584495776843106357295879749151692425383863181535413318641399457012780863140523020442450319803861217678809327099130460454107396219723696639091046783275546878275618814275775664817225756657644407131100216751298115908131194 - - - 81502968578916182738903954868803437570755946677134177447602235141924201499139137044596035140222509670602871331791597044073071572412228544534819523226128580024545496766294194339793960293820231413658047109091660897365966097797938250791336718369379316371047772899151957904896765356935959814025957982674691345123 - - - 19530914161602779659551760133445821552317320310152365572270824124934166659722311454746309953223673997078297436243931292053801888013480083060066216140461485920045976827407762286163098778343580397538509809300097680026549826911680050446687580200949249156718366777430619222680797133560540120874109523363374682532 - - - 84981501181908958407165882058596493360698119711176806078279361144462965507837003283079265547534700328302141973542643476952659223890385025553457948180508055232705101336878525770094803887787098569156979516392327273966990531171437870101999949275825950472005389499746008518249966417744874164049226960084391812234 - - - 7893650965033577198334191201028694180475332921983002452552068231359850151359044622733422029300099432801430764455555811879002006862417563061903629164535541080083196159447478495410613617151717517389931741132158488141349634905171776801040321832649612992461489685161324965894513229375743124200392574150125896106 - - - 1 - 0 - -

- 0 -

- - 0 - - 128 -
-
- - - - 1024 - - 100372618494278207809325833745671140482141053299167545555496772471748336142814309396477676570872646968276341124341133734057291102742322081931492248898037896745834964263295089835223282406172162565851658852298315452525264953060051812464058668677471281862812603962337079805583614207759557014036925354032849631573 - - 1024 - - 6 - 0 - - 57246992409737900342577682555961117349863309601824510421222521894627026751282629144846490064039264510887449820515663063426823074414131547854380098425944664198668967874835264912524369399371752886788019144257660363843875576550200910324966658273895956429073677736320994573692181961701978193186571833694420723781 - - - 55359130326043304577443995739779715186268346376620963862107764611659939071774803889709800904940211859512035433140926280209277737074076862166823314552825380623600695178406779285250666101690748062116072596864033546150050905356796372295859111563103651519324597646670380478259352333788125722561335356419351548649 - - - 50281672128225695904327755312403473270464636265873620911439875862842840579216593986516290933013798705736976869536862767378398131732278547320623614540644278314658335040286056564380320042634960782424531211557936644416852933930918166129586584400530703576432511573646243132971344472696494676449191196511768751040 - - - 4954009689876130900433823183239394059971025313181438225168723025500650021819168443266313593092459139668294877241958627180344247118460686185955251050098451412974392505212283916588312535306656898458413369812971999245044625814448902655421908545388586239806219956370126085702941241215414372775529176415068272226 - - - 35515595255709896828997760466304152492220728871829869589895003772974924553700508769181219885351038370363994580037898364522369466452803833450527848565405566973922751414158220323539740873051032498388712296543446809826888174558618629333699594826671750960039792539335312071049065457401731470572849760698057282405 - - - 53982898161884174760525264593615577676431520915620030422211324465890277781242664656285886912152301003799278505578589234713539160914623954004226071684048051930405768140214951306139171510110595301853061292778036789451353938383524392523322187090038385843323099742467194272605232422277182140459271404712596189859 - - - 1 - 0 - -

- 0 -

- - 0 - - 128 -
-
- - - - 1024 - - 179056286208052838965292614776285578832391122479516523035040871652754296525571820223688635982962783601316990610178153476124475074036124841321454348975288658062663380306451105704874611989409092134086971615401167426036221993116519591467159928284378929315318332059386710030291858650404083425005871892071186857273 - - 1024 - - 6 - 0 - - 178377552641377500865286063648727556416404015075127401685534575975076459575504794560246301298721955859013913893640507231906329290835420911614600529224173881974520601196077215418521752161496328570548883044296041742448024685274297430678209781623977102471902189695810814984063443362479850712510121572973530768995 - - - 20769688870070165436992427339694203145292523059408806374887538935528912003699615548213392704619780037234390842067366936848278728385901533105547087225530691157902332145378484532788468916796432069325744865727857779279958043613873271149288783780319280513887160495047913315001985643689388969419602435921902916576 - - - 174791262245464645868767317839235021278766075455568196624276220286866571918403921718660783240456355740547605541359691882609396468612630630288115927266879724308965128595708829504857559201862612088203911860982726216825023258650320830660279603311065370610444214613451198710481166631253077931188456029167534479371 - - - 29430949861921363180532447370885938675197960719463985708429902998553499813907878796936758756888004352632985956057062412412857262290557262267490819588447955842941087683905824771268511538073109920236468184221145418158999188651980852958196002535495729417164668317975247134260832577524795061940668012070262660148 - - - 33823064666593497298664315122406795314149352648971525159868342766757305003383811070461423407856422008038095751430603738498258035799096142237609225846417708519893838218075447938462930393685967123434545052565320035862550253181734081559761406167043844418023672259049372762462061867104300604038115705269215470437 - - - 148058038465200793690340551348246193382881082948352221607273933659845806523220248031935813135858162670302995149394857476311437030948371832650496514019132121253661904600363352472468971446343853681200879325567745500014430783962951146409075530755861224679906402281793275989220685808705147046100986005410229853772 - - - 1 - 0 - -

- 0 -

- - 0 - - 128 -
-
- - - - 1024 - - 122472266630673589598992895062035703233848661693214725901405010631525288379574816031770542696065901636562582576773506864908929534663254247331128605764728063087768770017178540062512081945440960866895139848947409308478976883048112403100515017574348656902851568267215962238033022095687410295184090742019791113413 - - 1024 - - 6 - 0 - - 7728944715899189434388609909724774035809842938667678317425460301603605823013640478927439541969555413709778749118826660002926674529472346548351718382698588549714060210062274800686715297407856148427378139345265348221133978168696684278480173159890783005838020735251419417910753567965053175165025017789858820644 - - - 26448003475986841497968052832575367195088016660519408677049324275770039699268051736789155417037960727921739548551366436808295399762769326861031593200532414836942831340943797676033433793694248322768289140083303407565490613002830404023055002980920011289126814582058510573151951384518941752137790627729966328601 - - - 86229288105115393213027250384970878195046658018230121981926087622908360019070695476890286000825705817855128868466090874517044630051807932688080137330506741796383851543511055620171832099182323963400791787063009161982955132748352579514479641889009556728765160794019431155612835281884746046945181179175314072101 - - - 118443298197751601243024301938618535427519013797625162067557289257443424747667332390767128609364405814370507956534181923146947118096415153388797603904285387277089456614581467531519932588788044429896623956929401613125989811394848718430770395258860135232715671961233760465960973508438597288028258187771963652303 - - - 63079025970083405739511542310056249842741383381477548746042147188133572370748015807051874328665981591645313044641075205479762053757917936684941075988549900240466490390069845305685504221361215041236490072242029131680788253507798397137448619734983297278496456464706652724192001914955923548292849880375166790857 - - - 40509648238776346975545047490038074209435447170427898755134516674702980824141055142532620643304924945704236217094826204991308792562157103171370843664395790315537507859800004916243411935772744533205257928339062171373642112948854794088844210884398436494877111172199985119678162349590861249848666085931258412086 - - - 1 - 0 - -

- 0 -

- - 0 - - 128 -
-
- - - - 1024 - - 94552121250876779226056478441985417834697549046525732037515214317098721124385587683741795285943068838272470889450545110834171450997743673526780259637641164399765807542836445604258361269046692410035177576626482842170596945096381486480085953604978737328476456016612043198968867965622421691858552300474095035157 - - 1024 - - 6 - 0 - - 48083218856562860783737525775191328434529309725786982977533090588932781124076143659736041475811675446369495170676614042227311991610162480246804621885146024797948097897694587243264636437130851802277584364037533108489941116668460359722929037448947475873025984332615369387428734396236836178248179053324432289387 - - - 76634283139631251031930451482439094786633969169628830486414552234002484146483166767407506407205976751241526053457671304683137174566086803880644871041222985640288589016393229489142957844430267204654938648698223944585668424596705445851412046692088325329062368117357299350383261539550382410503213810360724768831 - - - 12396003202718048909550176869357200835167344522002799990717342448836637227464886796471669915677173549704514451874300300953954982243388321237604630205234035637633279054240127538882158729863053103189998107664715943383217977914655949391169809734095037466008231841791029642492622767619951904866524114245681424782 - - - 5539923707394084506717087117390496695592232635500747359889504943711791202029940555652040925097713452840277213496395608270510922111988739086756598726879548966887102615418006792507194054375683371861709247204702686528673393330441503439121615585771257714697719537117389431199585862074149372310085911201841216186 - - - 65968532979690524565399159109865869898284017329187061132541714089842101359911218133768358539795047680936832650790336463801883632609130291164095510938785421650736176533067266082084768408474334973607759685176339532668176044078942480494801077297292582190823343166661955740154699563110781755198790163430805716978 - - - 8929410934781893842920542351761290516339838143391027227969566157758346551212210108169096861146985810613153289756321515096365399229438452562850172935225676505051199564664874135916650774022233114020462038340430857303825774705427727079183433773581422911290563266734751511815134252968205031225916496632965260619 - - - 1 - 0 - -

- 0 -

- - 0 - - 128 -
-
- - - - 1024 - - 124604760543224075224703067029823671929197848568290368816278071531248699417186480889975307973142321087447654043163779310314373817531396202633137323160556385697895753637371197560517651126571956117326552395441960299276166360937411641365637714128170666757748021061815851985995399358099600530948464000050172732357 - - 1024 - - 6 - 0 - - 85374642385284771257823631576104372768147056924874164883253839053780686027174341621883343533017782072735743106871350181141398460483873793075998118728027487068606054873854312222135302707457420590697930884900408430012501778121848164769218884832197965000311562550813948768513322057496853957945086012933955768928 - - - 109951715000613517319568467860069810650403863415999616962622233849462032087516269516115308808422392422344711580072435010666722823022715603530377444205621343005261890621173920886237616524419996303640950274964938929401949794216034721670708285807410307537304208774095446878328504393857085245159895842518397081669 - - - 113897613942613897227385400755632242796147855678163991969863715867699990348445814363632179253538407757961828124650703384323771690430094496902916699863026869603726373354595025416632525977003500517288059703060134213925130696858407196313572396734576461499925537889675832368585194225936684535814825774675818271594 - - - 7126020928855387487678674994782820081171280721588220504548382853994207252414761574612270717533602534438287832704904426640097554047836373585430822304067094169963601314200955936766302620704531487418270186290467140502478905642048977091606481152460527776657066274437262112903743860557673135498824456202362431095 - - - 28704319304982437230631355216315820387776115028078205817309612642875919182450943971231372545448637321011435895481695278298527227533430029440070142783852154597895389875946571611035965006088562868353361887342978399010005933994152947285950976477013299302158959465667564151543055870642032282141512399669701684124 - - - 94385116545288685745006313511411261449412016951854864094148648114948170929374208755686282030124840944301610566544929548845042596674629788759596677932904948695542436232339591732388400574815727980732194472187560302852072006892434987271733784466225284120170184345573862472817276658753020379680128757909201180493 - - - 1 - 0 - -

- 0 -

- - 0 - - 128 -
-
- - - - 1024 - - 92667338402278150042501616331571845170553916728035435044100057040256065504286462484564859200605606351639537638200067692153833627624658309284127823039676010855431298672482526552316853836499357114282811689667233085741354835345171033926521816008894273405946326529381849176517255761872896679958965719410137872633 - - 1024 - - 6 - 0 - - 16811849638918050357707196041977965708281779948508812087747452461640318210048722407843231825782189557782450810427679617933238834899374426352555709149349530750985291583473604357471905484577529661955836023008264742969193839994095846756647807398434006424747681519563767314229263412212943470716671982233598649422 - - - 58885675164871396171146017162515484784619548791139875240864919327966417145277963785116921012215956550942923762313051096493940189775695160566267858580994075124508420959429871606332304029906432878856949417986879035877178605192180897139164552555409945582515862076757143979626309158967397214623905109570430339616 - - - 78313914382473412665786170356493362330039144085905477110883824576655127416478576581225802910372034259178502168118482520057731459855605400355454141177724737465710455795317797057050749690825582952562593287731630723650451698245064627076719872087412545623712737338570571765968440087169043872698907874927081077861 - - - 44353657461760237924006107965806380925063513414349843041392711469913556488536732791027490710958460726040728309894307767887311757312709852005519327917263961141869470181271532151197810341309095643674076995541951200855303977317735453912469969481851102207308778763085134371637143049916350432664038803587826589668 - - - 63191677686706411065075451325037944524770770352269227650110085952842205184411082582248537168068154849796072871117393766031688195935193176655508324522062747802100124202901719531065193631269306020605398068520343217692627311881974378600699699375644522702645562717393999591546273213569688686511625264588794858942 - - - 27652205832407072812316692638518470944442957295475291784728971848700300617325041310215882904190200515282258358913505115222303725583753141504691540734992043009934166703390905035504237286974303243546757023303143754911949085074241979579452470343610112357023018098721133940051104802215521754650102873786582518475 - - - 1 - 0 - -

- 0 -

- - 0 - - 128 -
-
- - - - 1024 - - 93157218669182241490675992530576993151056529971540714396387059359186171724141659509029018057496673375724745430589386646269550119148269920362701170548242476230586768200869636627791503553887247127935915598948056541833660695015447621632102308915805855759457595752248174672016238265085118720537215599842731173481 - - 1024 - - 6 - 0 - - 87446462010353589849746037738234397066041473308485353520558292228761982279440351484864438349240495330020592425437696919685785793208107143350457464619455468991461033208092266100997622440647061373010236248292121737230754562108067582715630848468665181694081670345632763908815931968482206657871229689506989460958 - - - 5371920121762799854663805307274467928931803539482488713998579982300346943296540013798537887678792263719765633413574049203047372443993219255970449761492609162518050585879685358159056493779021272257216677045502035242860798630295376382443183089111094958049041573618187286695690622912661979805576995484142294786 - - - 81378360108595166141754602315536604491755704238697043758045707442510949873531408936241895016195023908288422505205347691391502628187871402288416067822115977595084051625939256053609321368824929989321365961690214884892999027122683999087792024864593514390929829855011841082638494789836356873844223507607133041030 - - - 38267072007460605093022646226649253830904974117624582796149809817168470090793680581881206510714356664433778954062641981202489800121664733504370571757280047612362826025256016849008537963783691716960805848243559388372461046653234761099749619597004542806650489263676912191096870908180220417926161042166859270558 - - - 84915700860022964551345495171007866352879240088072004050514163222400719019015839857792496006221417914139406444513188151320138028620777765653670914650866905931580757496822620485139991117159813430362743832682381564303151718274674124557309714731995606931148894273370034729964486353552790602411267273089740887112 - - - 73465385450573914162870333292460394280010999377154874726178119439395665018458887558540867390535647454464513516463027161883108146373385017590161224608954678928418471159107754308115958338408278114189275959429408867213689090594608868255919833667342809714741419864644591378701510369412610456785454373134014974624 - - - 1 - 0 - -

- 0 -

- - 0 - - 128 -
-
- - - - 1024 - - 140182840369015629677444253779509392454802320870075099123427668377849033675466983060456985009733763204337800460423127911008212609447372562429098014335706464989758758740208247220281377732265746185919831902770207371875995669747914690479775278145713009649187153850562571367375647870857686415645933669998400329257 - - 1024 - - 6 - 0 - - 74455685967512838759991043750305999910403603361183393124429352295087548634063792550278083139223072256316954107311975400422338099594255999639972081273763818226105881287714634621018111690505668683540182433029581703552270786650780911280912244521550082056222427782968317532204880864580429169559407124961989279707 - - - 71098481933317389508569823052638450315420923677123524058701261064638659975025357178946016865061229212313198312082030748560444802197489378720773582152083681326388737157127068155678066123024313578023437832536817853345391300578991541431790615516076293902237223211118896078445149399495702412008571155478344357778 - - - 115110610485112803170120890450410861574735332789506157208438130110718586860547346474556536575500204293436391141549746837480167672278952099431935207514750592413620333211437374119350533399344562363227946687352699621710249905144747106242855517490419002537117779923863031017721389280577474729281675375467381798626 - - - 120330608270420765105059866265760358553479026206034965536914273126027422997441964175805966892926981299384783642394441490277394150460201516690147208336317181939038974254656090718976077645572006247799258611056018020338006491430013096063728859631805749332510316766006851947333925001066287366791726970862626291132 - - - 67539212953786831170362280216666497485098591299326042738929014343236632821022313674668368128665233026533515361422201716455042909840388453755300604586113248821093293298975026375527804693431927109520627809902308115727777408141187735844148052245177579943379084039246961911533284602081296628198055404193130343482 - - - 112319151352986482309182686404845526390525841147671287070408503736033729389413743209528546967376916627199467539007813942237692812742367671894844803642688285719773478359579239402994226436424644351759771456595365332573215315742895224090559937302371921472603333002763125960793889174407708080428577912651608328701 - - - 1 - 0 - -

- 0 -

- - 0 - - 128 -
-
- - - - 1024 - - 153151384061946112819130335133246133008687957295267397843621546909999994389152979903838543621040703741957204585362979532683591012452196507341382378765021930080594638301102581447095150079527571736299826032393569032760089515710110573763393320644209463370199325193630893641761118983295588307360421992928735239641 - - 1024 - - 6 - 0 - - 7892700375071886213801667690949643081301660897876362862716031719252735631702246488042663317065226596719123642472889160164166752467928542946405290110100603916619860642652639874051908104321563771186198974277403372762475742407947778978713423261366968057886211939863053226416845695474626247148481144599879632770 - - - 96969751534332024137525673827305338765824331369062793244711961878338464229795343511369854914166525378159544513335008692960110239281780105946345751882081699160695192471425870929619862347261616029408965621832016372001825462464042514637488252183465735075947917168352282007926612702365709391433705971374480650330 - - - 114875699681605178113297100883725137816850022442270985408429076441164419167544283646641922160696686060996835821391125325554032812396928565692163322239663071368311305838437496947782958069105843521971767109289961823988985531772396017645122897804718943025519949475202876055846445752244455583140057649113803614259 - - - 65142979135827041975796028186758506145854632340505778500302049061619882852408057984561028536581103479186917953904089923319512041375743806093313722634211811019559763185887128205817238184749522143717887021843379119212824449556508752556588828478467790333950728028611785497198162523007873618632206089861361401340 - - - 36365653562546380774498331892233340368119440850968377366594978378206403596397349649940162495672849747856663451682615481355115460892329551644027193052781744071836000722331822907728424967318270206822200346897424772482580574472348312641051213825757952065374047265006433093383031570608989752280846790724625652114 - - - 37367464132260763212677594935535066845758607432576735529782786049728028305368775183042501847621998510706592209814132747806613258637353374842271547029492874993834491837910337348454981742243913507887896589909317221528522453457178954812875123817140250207188061720075701080035731147924455124722653493077166508317 - - - 1 - 0 - -

- 0 -

- - 0 - - 128 -
-
- - - - 1024 - - 100867277587437185905738415973319241270762549783559365763080515113732381952674153438473522936350424248510177050073173341561288174108410763783076387484742275185420071112263308649492980833108007892837870942819215088251575737730473861793336237539084855310382517708806608778283659205231502432743977016620509670369 - - 1024 - - 6 - 0 - - 39255559716883834710996217195960790231690219648364596063642252732525253626322537184453873865040277621949489316023974802886660737439109091681259589237564079506421532205836519587245678559994523313948203934718792220230453120669778118668541975297967552943217325494302005027700187260063491922501505329489123345084 - - - 39251487206514441563334280658297769620912136371041423458186372978938177189264908183631867083771532146089831189040237231008162953455496756686803076545387981343077808092826097431496885696159376910241346660709064489706335519357501003266465818976562287434337562453673352957027238784722579421141604136610413865069 - - - 89788387309278240674496295908504187208537159799772080051192292579059805429479222048578000890516118596274242793098756842780898980765645869881610036023411374800834386223748464825899794852749054346765657959106143650692839796441237207630886842547087030398717915820598774482068967247661437905594328521425874979057 - - - 26357966711801363898328231309025314087616129417836161948306497415882603318843666161160822637115952535994405937855709900736450964992853399251490227990497967839030533819424971389267533958232849226183830101254778677749362868289847725471454616517783178514849063798868429799551121680536684866362141823781948326955 - - - 14384849599051764661772057823488151609489203006676366444227243390117693698668322782327983827142983439221014466954818465181340731717991045271712496710923417891229487421449062528271933023092771365428984997787726567732777005825539778159234635254765002400637042489824209849704387913027726439841852511942249366530 - - - 30051432193108012845512883901872689742838894686285390245961092912227053842938452415405389199460855252222500571948227564229716905666340774672571874746019951658247579047627333063178030591379609682038552274663193364087296307923630239584978473289012247558758375337308299796539977243614211858116751481256713921208 - - - 1 - 0 - -

- 0 -

- - 0 - - 128 -
-
-
- - 11 - 0 - - - - - 1024 - - 99683430209219299202938906775017606724469428760930594089358427410134860618365868965004793074091319467805535748972215503524038403535258504555855034146311628672944167557855048795425950230778419329914800959299004291330197945213922372702252933746294221376666676943038735011157528710864090248805630235321387417233 - - 1024 - - 6 - 0 - - 44374832064487549703432106936110733223763329868662976410465532166844075257057406776673624549161360987249861412044599719051898091867684286031639599197726655387219559815670638611226141829724813072055389849106845806446371521054197013515692281584194734156442408523349320037692677236600725489054906594525371744098 - - - 4630463067468923828162750583060014163210626720569193915638610638185648687072871454313570584495776843106357295879749151692425383863181535413318641399457012780863140523020442450319803861217678809327099130460454107396219723696639091046783275546878275618814275775664817225756657644407131100216751298115908131194 - - - 81502968578916182738903954868803437570755946677134177447602235141924201499139137044596035140222509670602871331791597044073071572412228544534819523226128580024545496766294194339793960293820231413658047109091660897365966097797938250791336718369379316371047772899151957904896765356935959814025957982674691345123 - - - 19530914161602779659551760133445821552317320310152365572270824124934166659722311454746309953223673997078297436243931292053801888013480083060066216140461485920045976827407762286163098778343580397538509809300097680026549826911680050446687580200949249156718366777430619222680797133560540120874109523363374682532 - - - 84981501181908958407165882058596493360698119711176806078279361144462965507837003283079265547534700328302141973542643476952659223890385025553457948180508055232705101336878525770094803887787098569156979516392327273966990531171437870101999949275825950472005389499746008518249966417744874164049226960084391812234 - - - 7893650965033577198334191201028694180475332921983002452552068231359850151359044622733422029300099432801430764455555811879002006862417563061903629164535541080083196159447478495410613617151717517389931741132158488141349634905171776801040321832649612992461489685161324965894513229375743124200392574150125896106 - - - 1 - 0 - -

- 12156351937563573658659580053253823410691110073159632064873022501836009465486592594749999599277950935800838070217509230652132563179395724644794952186872179 -

- - 8200110585906438032621304395054179270119353002269548331464070505333187116738310343642958392223816278303064396050910031983689028221128048940187204440059627 - - 128 -
-
- 1 -
- - - - - 1024 - - 100372618494278207809325833745671140482141053299167545555496772471748336142814309396477676570872646968276341124341133734057291102742322081931492248898037896745834964263295089835223282406172162565851658852298315452525264953060051812464058668677471281862812603962337079805583614207759557014036925354032849631573 - - 1024 - - 6 - 0 - - 57246992409737900342577682555961117349863309601824510421222521894627026751282629144846490064039264510887449820515663063426823074414131547854380098425944664198668967874835264912524369399371752886788019144257660363843875576550200910324966658273895956429073677736320994573692181961701978193186571833694420723781 - - - 55359130326043304577443995739779715186268346376620963862107764611659939071774803889709800904940211859512035433140926280209277737074076862166823314552825380623600695178406779285250666101690748062116072596864033546150050905356796372295859111563103651519324597646670380478259352333788125722561335356419351548649 - - - 50281672128225695904327755312403473270464636265873620911439875862842840579216593986516290933013798705736976869536862767378398131732278547320623614540644278314658335040286056564380320042634960782424531211557936644416852933930918166129586584400530703576432511573646243132971344472696494676449191196511768751040 - - - 4954009689876130900433823183239394059971025313181438225168723025500650021819168443266313593092459139668294877241958627180344247118460686185955251050098451412974392505212283916588312535306656898458413369812971999245044625814448902655421908545388586239806219956370126085702941241215414372775529176415068272226 - - - 35515595255709896828997760466304152492220728871829869589895003772974924553700508769181219885351038370363994580037898364522369466452803833450527848565405566973922751414158220323539740873051032498388712296543446809826888174558618629333699594826671750960039792539335312071049065457401731470572849760698057282405 - - - 53982898161884174760525264593615577676431520915620030422211324465890277781242664656285886912152301003799278505578589234713539160914623954004226071684048051930405768140214951306139171510110595301853061292778036789451353938383524392523322187090038385843323099742467194272605232422277182140459271404712596189859 - - - 1 - 0 - -

- 11896551745918105362971728512744277845835439532818452881315269737992426112588024541732421368934755554982621680641446753621028215232581368061969077812779927 -

- - 8437118640594123178620918076897688577337677623112766785827012578840671912538015040671630458384450627586876621108564469770753964000093941226835845074624499 - - 128 -
-
- 2 -
- - - - - 1024 - - 179056286208052838965292614776285578832391122479516523035040871652754296525571820223688635982962783601316990610178153476124475074036124841321454348975288658062663380306451105704874611989409092134086971615401167426036221993116519591467159928284378929315318332059386710030291858650404083425005871892071186857273 - - 1024 - - 6 - 0 - - 178377552641377500865286063648727556416404015075127401685534575975076459575504794560246301298721955859013913893640507231906329290835420911614600529224173881974520601196077215418521752161496328570548883044296041742448024685274297430678209781623977102471902189695810814984063443362479850712510121572973530768995 - - - 20769688870070165436992427339694203145292523059408806374887538935528912003699615548213392704619780037234390842067366936848278728385901533105547087225530691157902332145378484532788468916796432069325744865727857779279958043613873271149288783780319280513887160495047913315001985643689388969419602435921902916576 - - - 174791262245464645868767317839235021278766075455568196624276220286866571918403921718660783240456355740547605541359691882609396468612630630288115927266879724308965128595708829504857559201862612088203911860982726216825023258650320830660279603311065370610444214613451198710481166631253077931188456029167534479371 - - - 29430949861921363180532447370885938675197960719463985708429902998553499813907878796936758756888004352632985956057062412412857262290557262267490819588447955842941087683905824771268511538073109920236468184221145418158999188651980852958196002535495729417164668317975247134260832577524795061940668012070262660148 - - - 33823064666593497298664315122406795314149352648971525159868342766757305003383811070461423407856422008038095751430603738498258035799096142237609225846417708519893838218075447938462930393685967123434545052565320035862550253181734081559761406167043844418023672259049372762462061867104300604038115705269215470437 - - - 148058038465200793690340551348246193382881082948352221607273933659845806523220248031935813135858162670302995149394857476311437030948371832650496514019132121253661904600363352472468971446343853681200879325567745500014430783962951146409075530755861224679906402281793275989220685808705147046100986005410229853772 - - - 1 - 0 - -

- 13387369053706524441052298969953816865931215541493627201932050414288871500077266522988236783752625813315396589969797844560751620685738565702270168506745819 -

- - 13375016815456955841470279163167978032541957986847763585725171697601726229270480352604959863298180469690218668879817745445241491655372612081421695369484667 - - 128 -
-
- 4 -
- - - - - 1024 - - 122472266630673589598992895062035703233848661693214725901405010631525288379574816031770542696065901636562582576773506864908929534663254247331128605764728063087768770017178540062512081945440960866895139848947409308478976883048112403100515017574348656902851568267215962238033022095687410295184090742019791113413 - - 1024 - - 6 - 0 - - 7728944715899189434388609909724774035809842938667678317425460301603605823013640478927439541969555413709778749118826660002926674529472346548351718382698588549714060210062274800686715297407856148427378139345265348221133978168696684278480173159890783005838020735251419417910753567965053175165025017789858820644 - - - 26448003475986841497968052832575367195088016660519408677049324275770039699268051736789155417037960727921739548551366436808295399762769326861031593200532414836942831340943797676033433793694248322768289140083303407565490613002830404023055002980920011289126814582058510573151951384518941752137790627729966328601 - - - 86229288105115393213027250384970878195046658018230121981926087622908360019070695476890286000825705817855128868466090874517044630051807932688080137330506741796383851543511055620171832099182323963400791787063009161982955132748352579514479641889009556728765160794019431155612835281884746046945181179175314072101 - - - 118443298197751601243024301938618535427519013797625162067557289257443424747667332390767128609364405814370507956534181923146947118096415153388797603904285387277089456614581467531519932588788044429896623956929401613125989811394848718430770395258860135232715671961233760465960973508438597288028258187771963652303 - - - 63079025970083405739511542310056249842741383381477548746042147188133572370748015807051874328665981591645313044641075205479762053757917936684941075988549900240466490390069845305685504221361215041236490072242029131680788253507798397137448619734983297278496456464706652724192001914955923548292849880375166790857 - - - 40509648238776346975545047490038074209435447170427898755134516674702980824141055142532620643304924945704236217094826204991308792562157103171370843664395790315537507859800004916243411935772744533205257928339062171373642112948854794088844210884398436494877111172199985119678162349590861249848666085931258412086 - - - 1 - 0 - -

- 9644368850153322034703315103697901051926884488301430556546617138464400206683907769487393990184694328778511476546020068068021945752432673918387223686904967 -

- - 12698836858435435937675913359997765775785276976783023925769404814538947216761763836785592069485979944242173136025323887368624786677577164791726164185869139 - - 128 -
-
- 8 -
- - - - - 1024 - - 94552121250876779226056478441985417834697549046525732037515214317098721124385587683741795285943068838272470889450545110834171450997743673526780259637641164399765807542836445604258361269046692410035177576626482842170596945096381486480085953604978737328476456016612043198968867965622421691858552300474095035157 - - 1024 - - 6 - 0 - - 48083218856562860783737525775191328434529309725786982977533090588932781124076143659736041475811675446369495170676614042227311991610162480246804621885146024797948097897694587243264636437130851802277584364037533108489941116668460359722929037448947475873025984332615369387428734396236836178248179053324432289387 - - - 76634283139631251031930451482439094786633969169628830486414552234002484146483166767407506407205976751241526053457671304683137174566086803880644871041222985640288589016393229489142957844430267204654938648698223944585668424596705445851412046692088325329062368117357299350383261539550382410503213810360724768831 - - - 12396003202718048909550176869357200835167344522002799990717342448836637227464886796471669915677173549704514451874300300953954982243388321237604630205234035637633279054240127538882158729863053103189998107664715943383217977914655949391169809734095037466008231841791029642492622767619951904866524114245681424782 - - - 5539923707394084506717087117390496695592232635500747359889504943711791202029940555652040925097713452840277213496395608270510922111988739086756598726879548966887102615418006792507194054375683371861709247204702686528673393330441503439121615585771257714697719537117389431199585862074149372310085911201841216186 - - - 65968532979690524565399159109865869898284017329187061132541714089842101359911218133768358539795047680936832650790336463801883632609130291164095510938785421650736176533067266082084768408474334973607759685176339532668176044078942480494801077297292582190823343166661955740154699563110781755198790163430805716978 - - - 8929410934781893842920542351761290516339838143391027227969566157758346551212210108169096861146985810613153289756321515096365399229438452562850172935225676505051199564664874135916650774022233114020462038340430857303825774705427727079183433773581422911290563266734751511815134252968205031225916496632965260619 - - - 1 - 0 - -

- 12626409640272974655233521254634505986113859217530798906873548183103099611375959546554379604492110745715846535234744512031965162358286807757060219473790103 -

- - 7488440811336818363937159595177873184411792902918658739383421198307395028623162698428263224712461137857458567206419473562071318521697310662858469799194419 - - 128 -
-
- 16 -
- - - - - 1024 - - 124604760543224075224703067029823671929197848568290368816278071531248699417186480889975307973142321087447654043163779310314373817531396202633137323160556385697895753637371197560517651126571956117326552395441960299276166360937411641365637714128170666757748021061815851985995399358099600530948464000050172732357 - - 1024 - - 6 - 0 - - 85374642385284771257823631576104372768147056924874164883253839053780686027174341621883343533017782072735743106871350181141398460483873793075998118728027487068606054873854312222135302707457420590697930884900408430012501778121848164769218884832197965000311562550813948768513322057496853957945086012933955768928 - - - 109951715000613517319568467860069810650403863415999616962622233849462032087516269516115308808422392422344711580072435010666722823022715603530377444205621343005261890621173920886237616524419996303640950274964938929401949794216034721670708285807410307537304208774095446878328504393857085245159895842518397081669 - - - 113897613942613897227385400755632242796147855678163991969863715867699990348445814363632179253538407757961828124650703384323771690430094496902916699863026869603726373354595025416632525977003500517288059703060134213925130696858407196313572396734576461499925537889675832368585194225936684535814825774675818271594 - - - 7126020928855387487678674994782820081171280721588220504548382853994207252414761574612270717533602534438287832704904426640097554047836373585430822304067094169963601314200955936766302620704531487418270186290467140502478905642048977091606481152460527776657066274437262112903743860557673135498824456202362431095 - - - 28704319304982437230631355216315820387776115028078205817309612642875919182450943971231372545448637321011435895481695278298527227533430029440070142783852154597895389875946571611035965006088562868353361887342978399010005933994152947285950976477013299302158959465667564151543055870642032282141512399669701684124 - - - 94385116545288685745006313511411261449412016951854864094148648114948170929374208755686282030124840944301610566544929548845042596674629788759596677932904948695542436232339591732388400574815727980732194472187560302852072006892434987271733784466225284120170184345573862472817276658753020379680128757909201180493 - - - 1 - 0 - -

- 9597358002501018309121870214896018217870800796878035069254107760851644762277443459596584060261292202253797548066433643464174883558533676208438650069878923 -

- - 12983235647847331021494993308557649154523925317581742012198005373331971836785398319725866868674038165717344426853381930807126225951081067813158445817413359 - - 128 -
-
- 32 -
- - - - - 1024 - - 92667338402278150042501616331571845170553916728035435044100057040256065504286462484564859200605606351639537638200067692153833627624658309284127823039676010855431298672482526552316853836499357114282811689667233085741354835345171033926521816008894273405946326529381849176517255761872896679958965719410137872633 - - 1024 - - 6 - 0 - - 16811849638918050357707196041977965708281779948508812087747452461640318210048722407843231825782189557782450810427679617933238834899374426352555709149349530750985291583473604357471905484577529661955836023008264742969193839994095846756647807398434006424747681519563767314229263412212943470716671982233598649422 - - - 58885675164871396171146017162515484784619548791139875240864919327966417145277963785116921012215956550942923762313051096493940189775695160566267858580994075124508420959429871606332304029906432878856949417986879035877178605192180897139164552555409945582515862076757143979626309158967397214623905109570430339616 - - - 78313914382473412665786170356493362330039144085905477110883824576655127416478576581225802910372034259178502168118482520057731459855605400355454141177724737465710455795317797057050749690825582952562593287731630723650451698245064627076719872087412545623712737338570571765968440087169043872698907874927081077861 - - - 44353657461760237924006107965806380925063513414349843041392711469913556488536732791027490710958460726040728309894307767887311757312709852005519327917263961141869470181271532151197810341309095643674076995541951200855303977317735453912469969481851102207308778763085134371637143049916350432664038803587826589668 - - - 63191677686706411065075451325037944524770770352269227650110085952842205184411082582248537168068154849796072871117393766031688195935193176655508324522062747802100124202901719531065193631269306020605398068520343217692627311881974378600699699375644522702645562717393999591546273213569688686511625264588794858942 - - - 27652205832407072812316692638518470944442957295475291784728971848700300617325041310215882904190200515282258358913505115222303725583753141504691540734992043009934166703390905035504237286974303243546757023303143754911949085074241979579452470343610112357023018098721133940051104802215521754650102873786582518475 - - - 1 - 0 - -

- 10116582691417961700450409660073771821080163993540593392966288504372235050089155909865587090768071015740429923980831573662177196533033546908068144339312027 -

- - 9159944739134999273570507299028731020005326833476187868753450219363085518454977587499939070133919505623808873000694070158656903559252933145645844495267579 - - 128 -
-
- 64 -
- - - - - 1024 - - 93157218669182241490675992530576993151056529971540714396387059359186171724141659509029018057496673375724745430589386646269550119148269920362701170548242476230586768200869636627791503553887247127935915598948056541833660695015447621632102308915805855759457595752248174672016238265085118720537215599842731173481 - - 1024 - - 6 - 0 - - 87446462010353589849746037738234397066041473308485353520558292228761982279440351484864438349240495330020592425437696919685785793208107143350457464619455468991461033208092266100997622440647061373010236248292121737230754562108067582715630848468665181694081670345632763908815931968482206657871229689506989460958 - - - 5371920121762799854663805307274467928931803539482488713998579982300346943296540013798537887678792263719765633413574049203047372443993219255970449761492609162518050585879685358159056493779021272257216677045502035242860798630295376382443183089111094958049041573618187286695690622912661979805576995484142294786 - - - 81378360108595166141754602315536604491755704238697043758045707442510949873531408936241895016195023908288422505205347691391502628187871402288416067822115977595084051625939256053609321368824929989321365961690214884892999027122683999087792024864593514390929829855011841082638494789836356873844223507607133041030 - - - 38267072007460605093022646226649253830904974117624582796149809817168470090793680581881206510714356664433778954062641981202489800121664733504370571757280047612362826025256016849008537963783691716960805848243559388372461046653234761099749619597004542806650489263676912191096870908180220417926161042166859270558 - - - 84915700860022964551345495171007866352879240088072004050514163222400719019015839857792496006221417914139406444513188151320138028620777765653670914650866905931580757496822620485139991117159813430362743832682381564303151718274674124557309714731995606931148894273370034729964486353552790602411267273089740887112 - - - 73465385450573914162870333292460394280010999377154874726178119439395665018458887558540867390535647454464513516463027161883108146373385017590161224608954678928418471159107754308115958338408278114189275959429408867213689090594608868255919833667342809714741419864644591378701510369412610456785454373134014974624 - - - 1 - 0 - -

- 11972876868460753275066668486585770036484418629508842316078562629031483418581358900234477964808845988274094119408005433429985716131502349487632772118136887 -

- - 7780687940972589315665978051594632936759069267966371943055920664881608463464192616257011149675403935035432853275767376331164649569829862304894745789920863 - - 128 -
-
- 128 -
- - - - - 1024 - - 140182840369015629677444253779509392454802320870075099123427668377849033675466983060456985009733763204337800460423127911008212609447372562429098014335706464989758758740208247220281377732265746185919831902770207371875995669747914690479775278145713009649187153850562571367375647870857686415645933669998400329257 - - 1024 - - 6 - 0 - - 74455685967512838759991043750305999910403603361183393124429352295087548634063792550278083139223072256316954107311975400422338099594255999639972081273763818226105881287714634621018111690505668683540182433029581703552270786650780911280912244521550082056222427782968317532204880864580429169559407124961989279707 - - - 71098481933317389508569823052638450315420923677123524058701261064638659975025357178946016865061229212313198312082030748560444802197489378720773582152083681326388737157127068155678066123024313578023437832536817853345391300578991541431790615516076293902237223211118896078445149399495702412008571155478344357778 - - - 115110610485112803170120890450410861574735332789506157208438130110718586860547346474556536575500204293436391141549746837480167672278952099431935207514750592413620333211437374119350533399344562363227946687352699621710249905144747106242855517490419002537117779923863031017721389280577474729281675375467381798626 - - - 120330608270420765105059866265760358553479026206034965536914273126027422997441964175805966892926981299384783642394441490277394150460201516690147208336317181939038974254656090718976077645572006247799258611056018020338006491430013096063728859631805749332510316766006851947333925001066287366791726970862626291132 - - - 67539212953786831170362280216666497485098591299326042738929014343236632821022313674668368128665233026533515361422201716455042909840388453755300604586113248821093293298975026375527804693431927109520627809902308115727777408141187735844148052245177579943379084039246961911533284602081296628198055404193130343482 - - - 112319151352986482309182686404845526390525841147671287070408503736033729389413743209528546967376916627199467539007813942237692812742367671894844803642688285719773478359579239402994226436424644351759771456595365332573215315742895224090559937302371921472603333002763125960793889174407708080428577912651608328701 - - - 1 - 0 - -

- 13237924258845536022467370903429005560216761805502124415245746897491664222157520847731290544684340754169134287990322205959239073554837394903803257845482543 -

- - 10589488021533733426785614404860859276142077436554165783580698037906205094105402178674240662351883735104625400113876626148523838613328267286425534418402599 - - 128 -
-
- 256 -
- - - - - 1024 - - 153151384061946112819130335133246133008687957295267397843621546909999994389152979903838543621040703741957204585362979532683591012452196507341382378765021930080594638301102581447095150079527571736299826032393569032760089515710110573763393320644209463370199325193630893641761118983295588307360421992928735239641 - - 1024 - - 6 - 0 - - 7892700375071886213801667690949643081301660897876362862716031719252735631702246488042663317065226596719123642472889160164166752467928542946405290110100603916619860642652639874051908104321563771186198974277403372762475742407947778978713423261366968057886211939863053226416845695474626247148481144599879632770 - - - 96969751534332024137525673827305338765824331369062793244711961878338464229795343511369854914166525378159544513335008692960110239281780105946345751882081699160695192471425870929619862347261616029408965621832016372001825462464042514637488252183465735075947917168352282007926612702365709391433705971374480650330 - - - 114875699681605178113297100883725137816850022442270985408429076441164419167544283646641922160696686060996835821391125325554032812396928565692163322239663071368311305838437496947782958069105843521971767109289961823988985531772396017645122897804718943025519949475202876055846445752244455583140057649113803614259 - - - 65142979135827041975796028186758506145854632340505778500302049061619882852408057984561028536581103479186917953904089923319512041375743806093313722634211811019559763185887128205817238184749522143717887021843379119212824449556508752556588828478467790333950728028611785497198162523007873618632206089861361401340 - - - 36365653562546380774498331892233340368119440850968377366594978378206403596397349649940162495672849747856663451682615481355115460892329551644027193052781744071836000722331822907728424967318270206822200346897424772482580574472348312641051213825757952065374047265006433093383031570608989752280846790724625652114 - - - 37367464132260763212677594935535066845758607432576735529782786049728028305368775183042501847621998510706592209814132747806613258637353374842271547029492874993834491837910337348454981742243913507887896589909317221528522453457178954812875123817140250207188061720075701080035731147924455124722653493077166508317 - - - 1 - 0 - -

- 11652347351815546411928608048767936237430835628552112025242875188652549195683446121582057824636748462894336452288925511118433186493764539072256929831649699 -

- - 13143393295607830664327305287951872251956799388668596560544307288415888343206753186700563936883765295346535048622643095185041142765817463017352516628312659 - - 128 -
-
- 512 -
- - - - - 1024 - - 100867277587437185905738415973319241270762549783559365763080515113732381952674153438473522936350424248510177050073173341561288174108410763783076387484742275185420071112263308649492980833108007892837870942819215088251575737730473861793336237539084855310382517708806608778283659205231502432743977016620509670369 - - 1024 - - 6 - 0 - - 39255559716883834710996217195960790231690219648364596063642252732525253626322537184453873865040277621949489316023974802886660737439109091681259589237564079506421532205836519587245678559994523313948203934718792220230453120669778118668541975297967552943217325494302005027700187260063491922501505329489123345084 - - - 39251487206514441563334280658297769620912136371041423458186372978938177189264908183631867083771532146089831189040237231008162953455496756686803076545387981343077808092826097431496885696159376910241346660709064489706335519357501003266465818976562287434337562453673352957027238784722579421141604136610413865069 - - - 89788387309278240674496295908504187208537159799772080051192292579059805429479222048578000890516118596274242793098756842780898980765645869881610036023411374800834386223748464825899794852749054346765657959106143650692839796441237207630886842547087030398717915820598774482068967247661437905594328521425874979057 - - - 26357966711801363898328231309025314087616129417836161948306497415882603318843666161160822637115952535994405937855709900736450964992853399251490227990497967839030533819424971389267533958232849226183830101254778677749362868289847725471454616517783178514849063798868429799551121680536684866362141823781948326955 - - - 14384849599051764661772057823488151609489203006676366444227243390117693698668322782327983827142983439221014466954818465181340731717991045271712496710923417891229487421449062528271933023092771365428984997787726567732777005825539778159234635254765002400637042489824209849704387913027726439841852511942249366530 - - - 30051432193108012845512883901872689742838894686285390245961092912227053842938452415405389199460855252222500571948227564229716905666340774672571874746019951658247579047627333063178030591379609682038552274663193364087296307923630239584978473289012247558758375337308299796539977243614211858116751481256713921208 - - - 1 - 0 - -

- 11871194330006119075814063164847621988250895029346062235036869017307700154221207494837479274646830156979463437583772905378112331319232584531756665421941123 -

- - 8496809569739828636416865104250710430755229036839126522199307417003852295908536338099771857812069765678990190616829088005492474195283849698868360489389003 - - 128 -
-
- 1024 -
-
- - 11 - 0 - - 1 - - - - - - 2 - - - - - - 4 - - - - - - 8 - - - - - - 16 - - - - - - 32 - - - - - - 64 - - - - - - 128 - - - - - - 256 - - - - - - 512 - - - - - - 1024 - - - - - - - 11 - 0 - 1 - 2 - 4 - 8 - 16 - 32 - 64 - 128 - 256 - 512 - 1024 - -
-
-
-
- diff --git a/src/tool.128.user b/src/tool.128.user deleted file mode 100644 index 98fc93c..0000000 --- a/src/tool.128.user +++ /dev/null @@ -1,49 +0,0 @@ - - - - - 128 - 256 - - 23880421229524966198215867498763585662120750616381602000073011204295788811827 - - - 86711029068003725582718409975419072430942299982269261872798566781944485915581745200575252880385070740045218409928272014888160930863059693839016293674232517268127384864113882861382111826319576398659865182011901886541393408734849951223343445722796988138199474454027993910256539558469903359809077009457099792632 - - 1 - - - 1 - 0 - - pk_u = (g)^(sk_u) in G - - 31784797489036022797667987064843545971302973299565626191458061505411285333856183453542554877768623307723879581189140200780128147676608114281502153150720694296949828508368257822292272713488336034755936226147880241510736229282666298342738885028908716791003993055458629791875441915275556677609924846609908723928 - - - - - 1 - 0 - - sk_u - - 292988753187366533240485499856688585763823286300711509463979247524213706624158087827593912118316738472328978577052084332662138237987889209864550520695698 - - - - 1 - - 1 - 0 - - pk_u = (g)^(sk_u) in G - - 86711029068003725582718409975419072430942299982269261872798566781944485915581745200575252880385070740045218409928272014888160930863059693839016293674232517268127384864113882861382111826319576398659865182011901886541393408734849951223343445722796988138199474454027993910256539558469903359809077009457099792632 - - - - - - - diff --git a/src/tool.80.bank b/src/tool.80.bank index ed1cd04..03d8607 100644 --- a/src/tool.80.bank +++ b/src/tool.80.bank @@ -13,37 +13,37 @@ 1024 - 93230763739280571504135894981758464921549533244404977499280100317610642158696171760528104674637737229733175941568553403723105175097015515319699070952376427079443371106935342247851424088952059295885886935097518162672135947106049387484840074591589257360230315769557689696542382392519813078599471190744767574869 + 102680714876620505251519589456529850089969700556564489253162684638539597335736793998411151385396668678457395604056076455447346438315008567850445832409559094642617108516105196798178870587832997740211486024550117558968151215813802257578385470372409470175519459389641067956632237921585676408120047405305262039181 160 5 0 - 68483281100617598890690260390149768811612212228415625203522044461046667111481879531370567312465572767471594307638295801373186418716158142849817983459330707680663417874829025870869126176489427613080242732002651745488662881285588979959921965144385346078984637002460369031880302928947344993869585533184880578110 + 22923320959192453636423682385738922848216151492993760467429386172337582699603626592667966029063069617300543105850468927060751138940226489398256413607978816318065423599404211058602051331171774528282150565237472007558045410089374975467684411005456109694572501365211023547108753818220756570663968723659519304097 - 83265639626129173611789599010225302025152409809086527203484455901023769133886691838273456108748805496287706878962773757945456134873405263745164606965847314532700391809966780181133976693605443364901583082171984350459199737213226723745536820865782465101328993246611565093204456820916921489432935715107535378903 + 53945843214081887230506825685162514221944851452590973433147320105768347799035010333040104182762421540976644457898523154200390719416111152133906850059276116624692455403920555815325946146027238316284576081046322930997100925534589898400045746221732607763907326046366956881978962788748138738898197865947329746712 - 64494645596589253556216597795109317230393144753176410221096594531458948364177234628870736479592689543360905599602657314236263592101092566616235573847064708472909757312236854415546056402214693799474345167566671352673240454618588407803218073337529354507911802599713376224420664104074189347847705900767264872038 + 84070450444178810764801942593139363675201942216375234211388549548441399502573647392486982654665114331690463175765687779989817013063882187163233753732167024252613425512245014453169195391341163601305650730846456990348521068770085139213305228501503975315987245346014618040731218552889355850011776660968387243547 - 905161046851521409257577111452816735715252358623913604457484229604130369307839601749333327613605388607433350593708810515691575210160388761595869399020222667210908597450718769664858099351646068693841593092163471515550082960630078586622005691616793435150664360492128321931098927419019241842770901510122534086 + 44698200531549202972232618323671999010830294896874839743157702137836602383560583870323823976773804259743506237545914357368122833664632525931647018821826400373691255566854594204199447306752422310463080619172699838408810456076477752430884838822369737010719356000558487625372180909172327760255616921931423991248 - 41967547411890952815359321374560089169572366216165489882401854020396349040651479953032950680353976700315040441376320576704876897753122041503541594885225811640391952804794467791615197647585183498734975425091154552964180829385469542341052967827029779452736068735777647237824883904045150416844783850957326457638 + 51872694200042776418703861731161005597647063174327775542825481250710848362720927717796283168056945768526737370976647132055902410582742570384884317599347064382929720903764261035793509472519152983496873672379499058845114238849894388800999929829175350045958631291831128454260459997110600204624172747502759593173 1 1 - 768028739645457608782610724486466841945856438193 + 1381926471275670696491547928550620506717346803979 80 - 121389681045423325292614017485147832276096371324287958707137023784247707201994560568190745220945575100850617828806471788665848145386600911065071127506834995734161325061718372704826817340005630257932482772489716899084347057504860573458772886343641833581315715476 + 74302589183225406744708406598986697445626235129332961159539629660099003864681279676025057169598059221346100246653275027988998552977043535171844663879396255745429680604118860556814772359887881646573360468171271074105943974872534642719266485854337939537007792420 @@ -55,39 +55,39 @@ 1024 - 132805917336342357621340347406652851500160158358616478910647979991495279410794939929518375989150750446928132372271337608193443333865973093134231559072633996501463762859681361235278609969585631425793848655519125510571433841525692826089479555621938481220398806492169797461801342643036874762401113827812141565129 + 128057967809655946190316507735155452831314572900315216081434860144597217324346737671800302572587640910078110732912465466684478941477363845874613925338791275068167816621932721309235605381772586248486970010063355049965746801462578755831359666996420724229475198439645105729191854361248312605304734475323680662913 1024 6 0 - 123724192971345628283598524077771574642115516306203819302642840518434734884990023342093372590141717915386280139738278686607193677120717277193327685180610485720329861045086429532831247312816073761794696539180603164001212548485317103853221255907270707439711950418933701675350040464705736338361874491112644317294 + 60811636929475187479807521649087606074793642064167945690350627603203118950323257675713133373687111123714663109087066267073458476631246485001894677569393649603260477149691339449729864039552273625864812610179069562367245786370215607199308088083101677805342992837524421920973047652387594443568045299878715104011 - 14625429247927685090341663241649949148258959797292039323692281863043191792520221408569037942351234266447978782199478598250390786360135847682725454656794862494759779321288036136608651289809110043898514796554758669357170034489653566653604233508960098637358973041647160974378868936394566361597245297526090809584 + 71560986262474260038579847733152867125395323692136727882523150181177145526050032346646815633503819181049097447083396963116870388315714388861158191811280162852633670260478236187402519672391362381543748430716574725648848677812893437556332455280083345503039177361800148373565541695573258846852919928924249154877 - 64007057126176875784921548625312090381394744981912355585114232564443978202823028666354191570270582971317908560590960255621718151644865169079937946397430383552508870164313540570101112038765363492847255578958178618499930646151629515550809210720009750548884710211145008245153069694049417395148648829340938687662 + 5358493014159018151110306019414188401443366482533390828878588153924237270657211162207396455592545292115596564966717448066974022571552087820343845293928484045368156700279200787884399405557838594314421227423879077160333472477688129275324340290022874614042967407069455935447388415804019834527557283355835583238 - 103115992915880337411327588408688265150975095052055138397293144081059692734045417060416587664821844857318695820398000363692718875618295012846030208453079674394744433816396921378281051337563089579440046048625384540937518959711246975878537125941932878593410102488330542299641806404417418885309003319570534438453 + 9440403911953510704955609199118462522546969159294361115679964001969095067128208202978671380235142495494192920664243060842431049236464627103331285996753378993464968648353139689202039972946351834805543874912252883016750152554402795151625609573033493183190907610839726606922080056808873159110535921110839225918 - 119457315332497076188739071965563333761790600794685011698971978110574170937694642037185938145352267447861601656017195376534888030612146228692269726722534673032982839555108591230005930224550822365861369188758542352070280899039005900661300902275599304439000283009496810058515041286869086152747650395143418209695 + 34601241858178235153992489154363566911322825930412755051942961530163789553279237024169967243263931210587905323687670939702730687998131084839805896091785126613296047470576600055262500331821637746680489652121076447750079042944735474064557177506619768477733608759334395601504750316910835074596407622363931297695 - 97738799315708788763206134320050643392532463560258106306083499059560293956823651670664308620427613476046927360217377480809698815484522143039469284490440932497202203091566977872700143965467171603897734591262817015477036444327217869465633675102793500947186640843443170349950215500682011284039501098188488514980 + 103450953660312905541961327136746359534991486059040490771968614429013794227835017626759804639288113432551732347712210332460709755012800755979360542019454727242090797411218789006851073710562599252458946620552051918314153874747184637728072116094587384838416002546398982033848043597058533784377942968102172250659 1 0

- 13384863556442163322952458250977420071347303306250951371869480166206360749972742447864759873951415001010653138692615849046841726507827289409114950044040247 + 12932030508236240029500379006897241129956579101695632927019316457384709196393771888005191041903025893215144948249883093198348475278546477203390317270105679

- 9922097209009096465140505286723232344813197265640635285799288755528166758850118654231004127875732325223233807063304934221607752104237886183649175903422207 + 9902386769664478589840240464665057831133423813801796716114600855905375529754843999999225688343006241702587573209999717516477696656645009688715730598624047 80 @@ -97,39 +97,39 @@ 1024 - 137372634310161859676135284402338656224702625790752326093422619912065941056411155016565478217907728879945260871334556369999320378181012769399229672757185658932449669547994359702315835117004920960039833723832775157892486474472871781401535566138599328187388026485937842777690668704923449947159362940419397279397 + 91338861134529173742636614734321283317712406433818139285229062454925111527732609262828687047423080667973258817589805005737017416371360314088086808443898371429020158735259589920882443779130428607594850787634565846387075036083051955856286100630464641033224957452092909212599715224401427904042049536509604893693 1024 6 0 - 116441115010520204443701551044388141672708396572634839287898503254446689571343162226795875092851665648107955057536241015609708368366718318010287460951620183224189985722483322655563646525334936557072068472012436067191783998514083593670357905410483156163550019788757133637004401363151527763776723191808245083150 + 88481512963655310506095083872998303955363103665395614689748950761935149130592150567352051526842435768907883513122638406071951993833483039104880894260670448994086429616644971856997369229550170174238792300740232364024915015016653492885640971890845653859579668498528250516917066920672069528744730214455335881003 - 27044557351618142662356552877489107755687685627121911493229457826128074471372139670480946601583473364230995461783264153391465908763057631990861033738028356787438011645743530045595363690544107938500296332245528760556413617439234729949411192040200982595365086278803028719387624406149566721713663632397652758734 + 71420609539497237732868765033013438071208066944625734387424793864620282249588182875061993503837717471514509627177747945260865425509223920765478106067601828682271744524355493795121669193837190303641492443480194307599715826281960573836394123684702869297115710345424755375986644023739445330856168082010838417938 - 18668480646476250585503852417335962920930545198501147882117553235027914985366130789840737981562565180298275654871023023936581742688856218428559624653989709620342050760568013862082037009826528078528308498338926463622071936645167033131204995449391746215916468228090340406579421220320039702041285615945226682497 + 36213374277915021187960501154206429350509009943784937342853640962344665273661370341432812162660134104129081769292257555453657933322026058920570002011215114885632603237420344104120014493999772566832623489577942137696416594059207873047026684531831127098662368796483679106715230357303209903005563129291440998125 - 124831643773880234485522390232602697151624554744878469357280937852918545591277448221883189230205072357252134490470478766733175680960201808445712280554760481792295061585139951074758260903784531587541999977882176959445583638063216972509599746798664421534897232964080914317787532005374524315535445105635534739855 + 88784875219103004490867409187796580439336028275646934064032325734642172796350750877782655631487263690600595545185986973949637793376040039529334242727841787186152368722684829777472113434707623526142748869410906573019822447060135044716736888756586491608663760971724703067383426197232527066117239191970436021914 - 59970642815973695149052494697659654637535503354257025919678495841553238031034885486365545257363298700332014605474361404182598059404831610511163756704140132090268579779044407534827161198033244776683186964741076946492327722988775759361482746512239360253228317139110005567490550026268269509261260489164598329675 + 57669682815414213701829150785790139820922208365396385382451270040015047105011059602270677532141334599848749895445377163377797098101769663138915670832338561398070313576223809679656089041902001668549387570675942187547921753080749715443394968434937329744189522351133848627606864859717699163427995004551470140014 - 22923915272163963950857605925330142022074779916236347548886633162654056167070402255377093400484185256137566072514608718416367258335630496123774726992155837700585510673044223219699749513900672323661639291542257718222249838123282120567272749819257073710511915155801225598478720475650206575779832514355014487626 + 19430387956073665040008742545168228237366626380409449215616316415682054432029605888008345798193251163116713132110293851289775570086405711097037612492724618955613522669964620645767675728759532995017555557036656920568589220029848250912688353596366989096421783410644212433994547565209779383923475304673100010441 1 0

- 10516953854195957215920418989214698161452474081769918026684971214243445196839612444605885055607074928941932296923395924708679567920201588472554570885991423 + 7590313132316003273918078590302512319095378293744922263631882454117055270026174894373664622063534944373597887745176839805114252442895212090845009070876059

- 13062017406813494145316429683225609621025324451653771268782679331113932572358409228199347215573073163757686558693301128497363343749771624966776957706069339 + 12033609093892453905143611421316260116392442619100420560800021219786194165358425170485864622027203788410560571310992155037737755554341786034296519732793927 80 @@ -139,39 +139,39 @@ 1024 - 145833845432288909121084926233534057685357293274340350126668766405212197351890804174287842353814414753368096405191002821422184530789175512390729502084743232689937559449075513447581521298005309418519751610349842123168680301350588679553600672970038503825238594562290725630967833045040620813816180930525533629921 + 171795367802537336198216850040760302817719433285673072064016704297509263294972920968862879995019333546807716681922194952612358665832924006994420672781322683935998563828829629166676961578310364216820723333284118541610355614763234524893877254301205676826968663616237843247997193664755408992255295724018758287453 1024 6 0 - 5614206228798301098336705931671638644909555489877769303373552985024454467948272719941276640621802213319824489026627166503592953601271862091261438770581967429841000215861631061086884950337508297975792991010971325252918140265180480069954277705396167335598614372709439485252924902184204172397796469683948482249 + 138781939743420141798085654234587085378791442750844156618218315519623156030775014083940843628427157991650536995512183146050090364430217798889903276779395691314769341501283521555441395248293145295446229257598584303226472282606025256289516823083353133125249557574662930559464988881796972570415006594877835195261 - 77829222239122835610084423738321562150497279446208639514447460343866380070175601047808125427733325611930916432062196605539354365357794550584735606610432247740273684874796370960540670916977515416987155254054153328167529316792368006397532847978034025278821903835834149607180869130216088411657110222021618483674 + 168420371175596160385314346470541456127930556988792934601264980767954150761074401191883764002057676025574635595559453082438403114835695017344400960903147888338845250647685131378444914574667053754042483424927960459645361430078126904416924147233083786086593890435155965855696708192722757613306648217414021209339 - 126526668999549527105050115708853820539308975410043121964399106650368217475035537783616879716348093999454486886707365887651216832345937994185160915756008992749761345129872838686896268682011102041005029710003412657931850689656325888000091306838802288920011025039877500299503261395656474277902595055003645939377 + 164599507864917269230220181044130466242640054454386799153052272100119238662434506377210871322725801768535465849520862187042461522458751851837119010844326508994699806461980159073458635731317238484887665362257435016594387971946664996341942792674855452076757886270233668811767159399329679444242304826944461878356 - 39519547515028449055017861664894155862617764060490711234501925837865547671173429701804910726363843756169165093168047068989948316277502727839336504944846821161828359833653929929545581648110770846580090891357587504044246698977653720185664161165761777760965438539711667531830065447338000177079619272633974997808 + 112022954554594868430694861746706902810007259966892035372848716164773714721760248918761857377457366770462246217862095078291990529093104794681337350992919876990886726535142991553290065736768419334005963502455897767959870639353796998608846837617297713305741565185682566104560690180553705181428610482999491959762 - 64911171886091908379987659695928798436999618688156351616885354569475319404854703300389871388692848749447706845284633183118607140873964829806267750277059617538075740035634698703898760746137798807795759428578283927848978809795704455781269250994050734576159373116072199698554416776935114764908963304498490630504 + 20795710379390313360149837901235593902809611922782438280826554162582584185176550436631972790505407403299851110962435492486911884529635673218790787915570636384717044595376003628898518022547995524968409598599237503027024128328270655662334146591298270627006489949537312823974893037600566816074625503584300399503 - 46337737440906880658350695547525646305900567458168613888364269449075743635956571509878774476192279074625591314542016353903902280576521867929458581523010335829319495590409102271909715542993648132948180305225658201466190786746685383311897244330788754428392449915461044438929637233785244332939802020516997653890 + 4461068203835146920397273122878996496925951644023334909782795888195924230363311467297500231054245083629066539839024032350563196843805187870921285704555947110972472049763739700924273806542377974583744547273338787688284998293736197541473212310650426901783545952048410414287416361433915264087521382790658628498 1 0

- 11433764776710887644313307473143211739470953398100578362765074750279421702519343502035319397892519081434634510608848725022778926493880686061311307529867103 + 12984815465718139976464939024875001723229509524339667690378713583638428557083258852077827822717623083472588218407867051847898495798522333139201280857415519

- 12754665526208283348644128814962849642731331257467717548123984357615435694821301803974670523354845944657439610208446773346423677076013726301181649046473407 + 13230482039279100231549510012632674263858285311407266814423211632024536906105987751850169694421467822291911960770965201757888760198835329800602452213646787 80 @@ -181,39 +181,39 @@ 1024 - 146080828996844893786930415030267236937465501130613168303735364618844293026036288220097635327009673585003284120262747096635449871857553308329749899517971369512993356899511456706337957628017589622952308458223073708168002051201346250296138111717760726492689696085001720244510576087189788400173594849773775987061 + 107678493864345648666726963381598843005045134906745773568855127179729298765945796229988935480734186762723475076589458553114861073591179889992284613957887798550444135071834300620151269193028269405467525155137973905598460168964059816679287733081423902287277428322195154969572934367847409309681954541961841211929 1024 6 0 - 12143846516438032065549326588564641993076335572135680144319973070565227510388555878816485541168565333330331360373203107549711159307955856012988849600497784921648620670877827610870429166714421302856006331726388604858639217479516237211099294053777590279150366532220218255101295698436049419849141612097902640451 + 34780567649645587652662047318280460216197594322629290659397343806640717111602043777551795972363990570490561518129361133754971748815062877457811980871870613895746761204692874944262181605786891503668206019069701677551111685254064897625906904673396799614054762342291638726110702862138766341205373553864835127477 - 130110283334213982281592724744587355779238888385612173261041558390337170888862195730988952587123072858116524751419665014046802853625023209193025314170209762095895716630052691721289740627897735112480237539255012944565383695831051013027460838684588426430717433008544285106825419868548234785369723450095304865124 + 76770578985664099191449798911850613016440202975139749844785468106943538467941487623782662375335620379715667015148235397661770125559100524256505138827952950374296533996410404476470347577736554558794350087928716157046782489969073300743386412321573188949782078100848155826141059164451205262811577282438487833155 - 28936184033269797712301045816156985323899945333237798274523352177150263697445409224159438231819208355168670625188283196276111898818482147589072075244562000752484990678046008139123016667919771421087077668072425052038197223173671078453038383761535748778879934180519804845917837931720125662698639707169019951825 + 19375132007991059652876546182462672768720429677050803522934111565324016495763732172744623907045335493048740541182304274405106110493850369225158004210873483104238595711350247509966292622988932139561490663242014148110393502548086758118819001913181597386000596861820476450726333113377798106479230138706277155435 - 139743313044528582631657668286088123161464964626310113284683779085342948598023633133544825825929928312362129974614186131729049145084732952532041531975841926166858606672969874133254866846900373891351537597368983313837098495423640205742172752175958379844629957134932742930140902857501238693610132562014310099849 + 60332745111136671951489671083751897003291069716229419557442175701860610038139875996851654495020782497922916125497030526867835842055895873784260108184155213565134969114645958871640895775675472360543614497922018081777590790520072701770098022598964534954182431602697737796983390272144688966305745888541862833949 - 53044581730188892877631548732096143188468162339421906645278191018430149084642776390613644404189469954372875388873708624934832371281884377986981016031495526801835709924473080917358419053075051086050983722965169085001326293901098332606081215826837456256432766108294919171060244900518692093178547790827213354457 + 33206030625501357397902828493305862279894195856045523813806319914644617357371406587381751252409214237464923457683937662308696252667537129026830911327626477920950026367523422037741403916073653057335758700270326029776865721695045422550695292453931419295319756838382198216938790815705554550670037002167896435708 - 13720982697614420642042383264268813339206827429441510070099063031077866574985037908849971402680608542067662118645382188812605442192530585575940209920553520942641967018589809365098731467452204409869649415457166095843163238375083308117631225271409506085279102769367813064999165660319126220444280297921602368577 + 33699591887245320183352886957374795158953603724548326397696125237452265579267587282433792785552885615789973016310923276732538075279246287329477093697179355796742915804057038950601496710139911151519055346593812515824483642829165138763105492040862107512334441962031341198253373030460133402288720613467576919651 1 0

- 12493492711183332270979559538554053599683729030245785867773420794402300221675894642818434063789983730803397982796207617918477674051272987189478076120912867 + 8086445429826466766976840778602128556427763126861092718555085428344325918560612728005964357058814370039705887555080490065308264985839108620298163559066147

- 11692553265435788466377775542312669391426810033951519327193947944831637324422698077279540119648681098704682249147810817531550857711325868161365161046877383 + 13315924134871259995943889972263783197676570583006459035153156240747027875844241230942104155569988885879710233246386342305956396267067502039128111156418707 80 @@ -223,39 +223,39 @@ 1024 - 115562432164102251406622967052071750807258172151285544566894218498931362209567346945848561669965827548724769820749118527361500484654503353982654831132691503147282822681740720558479928440623829908178283919727041827646963738754679445285325013831451162488739515312866275942511475472857933145326220132237853644557 + 123460587970465722399480599701446111042791049424678164510782348298178989524706869827218072757318065802572872977206189692439610889543998303448261820274781115343738147716328254096174904353808537339736300386924394267507766388682907861666597761952802807474810395363126049870826035575374238638068965983199376357813 1024 6 0 - 1918843058365060902224156698824791077915048816126174273828173328827925146094242787808159127789911738230990921536461350767134197215631858847922569466378620788070681199103616323592972003068116871618652298189097954624870678096346675641822861238845361050835764226882558875078705801193309174207649691981387676761 + 117318302352368229229163809607702479318456428030157262995598611780776136494163450278418011369672196225024705223924157260734348678181103931116903595932563324645629923260513068155684589997607606713365161836567403767936006638718885167253192939940642824452024816730744123545240701916149057716603434108694989710429 - 5633663323728715862831888845777946094661002864544824727134600431003469539113905131778031633116781888360230284434775486594799461335499354181125564310162945192736493983408607583043279052489225101857443790367000861445428439571903674899529423583149897600345297997769124326200352679791494774441424376422975993023 + 79166656374368484214654356495255053395213742590584206280310930719755653489957925930346542517512620192097650425359579247070837443830862748231859562053718573394014868991678211219437490529223024342458612272327848652593110612340785752785585712120010687405752536405399684337596148008796260805479427829450136814686 - 92224572490734132466871405475772602483548793692969421833571278855151455741757597222662182273880403467624396109857103285036810071642000551787217955918908430643545014752792961549564256530725754107414785146542687179641756227242772610219435049498467256907877773547533212521894936045955979927225093316843447273624 + 40871868938993875410426205996751811587721008167871813439166564189762055623031521920195950886062485740929198925966775524584648439881883879228755988003547754790287586711275993853306093079373185290320968524077798129432974504079981251722944994855192019937284992580655570885903256271403090577186422692725459831875 - 66183053406824854997955985382355384715497240013453258897437176350763562425331521822435595550265618083659590969116645425396908998848723993833538106201823652953927058335013828106360478760501723552180389313206057782227500096729295807156679165429081748514586663929593834603229571872339167803106406082026242486247 + 89892620900640290140283566392805476442834511036692916092709883776370123872836264775868321860590685970283545083118729182759253902758383167687729739268452078465233562037688700620432639773342196188561501129246210605848453748122752153274263445164184465697547705606339433632142128437959746969173608800415728397931 - 69743124750042509642467145074976059009243861971684272053034970423993683530657827278165993761800907370985552130382901391446596933005528253256387440804145356085841981356225970618247323173456846551942037337211218981373022884854505546817351938007556625763760451941625550568126244464144092301218250589930964771252 + 121709777035471737364513670422914240357059445755508125094002474776054087244214559702633254647901247822895427221568520569724729995389163298559564480170015494003587855303221851200035414262844476231232261394773812801023837394666069091883472673028207084029985001140015089782123008327089253959339518752984564005371 - 72915756120647370787512976134911056390045357692685473282250206465655171985686451881325200537334167943578623112088025120468788437772822762261349053705299070854344523813062549426226658609713960083898353784228091780561562317369856737756233116861220821234249458074025030344466225233689070112675547477388012361378 + 118368291349285147157585550327202423335817645258822478079337019930721123815468331635525068128544253736950377216631099734999157547924851998471340790034858629390897530180532960195293567558086925678406847565038276833217752653830262850771875793504960255927890257698780412927440166594709334246027496966288743344300 1 0

- 12113189822927171917747077461227561629579433288786188878566494896649974610926449598944988710018811572259934174588237955489017835938680313581298226839062219 + 9555708939079495611355915185979699054940167384681225047725748670929850843599516084564504017739835259712298489561139897471949689101632199222485821907536339

- 9540214745530703052602614329672114296360144346165078233240673810509000843141104476510595240420457567833307788137793450661014218709382306011850801095444103 + 12920086699748173672215351475621638389273860195435770401619903340348767410733675655724985891607786607181490238978036873680082748103544680734516847406362967 80 @@ -265,39 +265,39 @@ 1024 - 111927356566104023053025699787625550838058397847053053322552127284788489517366540434191289811946944159151898144044517991896201183248020899355294666452275356580458700724360087814407783680353738034566389540489206594576108611637326536178335876673250303367935270215570934307497912954941670160094818547669559266293 + 115193322549187017758632085674974727024742715278872315780926012027804032179761766503288065034565716892785818153660349164554433828067796365626741896969380114418490544104123599167386238983295022270967054328089602503480562145153230657099035975059011144762714926206594556617956114445259820923651026107726741377073 1024 6 0 - 26083963272420992631361325874882186826320192111270492885447297527829930121512725063041771515422873794638132630732246178945827524916353536920338032942329648884862506341847807165763917740516440910242943041732772815639040483973079510498995058535404124602763024963637048513509262352040839650701377899779182492450 + 24958892788118393840566891402925212894261112686881756396217607457946596306978104211815943994414797105011718075194617345672726305027536665064724927900756862036945765691966423524893153682261745384165128816990435797199717205467355245097126693946214610135412865735012562961328364927779026079460708512689938357459 - 96349476044790960219277900737494348910404104317713878532186820315042836896394111182750693236907309305366101392065377818174119922772262450705915928502291955836072143986901878966783486955686515491687652827133207058317134666488154155770640867360263153123215807876346934189507244403619175620173481171524025037609 + 24288255554756812624762197103340158750190223778765519768405807403357684268583138358422886605098116268755079717463816662298139317595939687753107981126116196500860143071528623840509966635777831057754249172610936632021767758934196939105040316041127363794901161035243044698624148907282589708017305528332080549401 - 54690578151752424968627597530623695060322314333503222637738707156935596285996271874663061813880600223163657890492147882784449085042519744202705258571783341725890402018930973779086740363427426280862005142662828899727835119949559802395804426318658922453509773311165866730072879701477097084818422964205782730898 + 98573529002331715221466911082616318301300017750678680593832916072820765087229700809543111818625003499979817183312145679122909425246500434114287363675204505267732119319754784623466080567913652584576116756111506044251229410873182774035682045895464671545948436513530383740487677985431898275771829011975467387636 - 48548246442536242336650178813376090147825187269338203565219773463426768909891921223610424888168123366278860170690454785019898354608412222321318035320240409277155997290872403728887253361243526450374951908929982176434127615635172022089921656613960936488084542875629883983721976542934773414487851263961537403813 + 15353985435509734717647205939924424374297140311254436480413662376519872061599819892959995176175891437756042491481998969903341756892089428475760114248462830393435227191729623914880110584220456903870872511626091038462298582250901312945423814102221099309496784542055234964849111850334835617876760601457927418206 - 8413113823923925485688787367614707477657758975525795517827722017213206555788250307268244325721882479636008606295000856384190034186952886166588759610523745356045626108013064205521440618996713728008939728528935599492193135365285724053499413941300417129252635867240091199959544379912710341678940281432723529492 + 17455735070449738054682884370746228687686045089020396998083887583650988955042976829464912841928464950070337180970573621151968757420751546020224392735386909098113189353739054276774294071884697288831510878855213838041505870499205405393921909645992766577060606810395305981595413168173038810933707942671713337798 - 68772694314410414206205467046690216598864909706182681421449044403117172244107392479030110544064478992356950657658675437260300111069834928175128122254740575410509949599612145656885798061073750122226817037094964836568463944945479934451259985250499721987903002593433201657517849139533217227834891411340995860823 + 99078282433460334122518009685435268135390495565166370788375980674406524442600154170383521782130678737146346515697587435130336220692226983416874121180076768315197607852814628471856417469605509753709709939138595158453850817740160745949448738764045233343710173080910805476352529406131342795794391893459845853249 1 0

- 9285545230814175208263411435100595524047654027631834821681899834374877184982061448521038956716454217041218352384599587282695285925315242520173770910063167 + 12673289315868749623674662876792526399689105251553138253832866963657700201414882030685426404271074917375018034885700283434611314390001132581350346803957507

- 12053934775383136892747067774553082069477539062529530957973630104838578048572374622235664986486263135849198509434839037199331156566567604229630900604978379 + 9089457336458712030766629429550151802473559635837189343206196901440327945060996267506637537707282012347200095016039598579224618836771879940545740195754939 80 @@ -307,39 +307,39 @@ 1024 - 129247253695959703790072509914691217099002852368322468045795757340611236783965062669505460428210762504741229507573883904113055589574393037898320307119534601325006470049122917644647993271072364497135274094746214874360172173123358949071606257692363319647094023309480718209008941035284596506382336215735779493909 + 153256019031673973848391853908671616024035351852333113222956212092935054851555144537037154882131071118335109565772920677334385665987953763710322752551766091084637014937633351768184250877579165516584609222393690507834529036303945036774013832353124798268158248184389671641362425541416312746250270416649359548041 1024 6 0 - 117762663225409742292003907909356310395762445497211461079165975468263649230373970302717051754658639529032746668081675057812533532269905582012773970520260676258789891000845981509443336988580006031339603500190556266787092149644268028195165941794896901354362131862834598206683215509345587690168857698887589234574 + 15220542722079887934163021578416557040815588753014948049895358680874401987354756483638187693890778200226187944576153001580318905767308325025251868319513838639170229388887094978609944368236261084829465326382756814026047924860100572370509240911903760108844191920274365232194821110327754051188671927504786123847 - 41307676734324917289596188448768037242041561478666611229918508332376293249216584670403871893840311327117612839717795187029126418654206536820216938628666056443197376483010899927824631712516956909063917313355829047154852269087395692986828780702480137828937293992857398565122465372059669336909756576677250313503 + 143004036495287445500008244565089775614807488065311228319771443644042556939728810959906482515000410036341359319395672341423672298834030730662358936098971678898328809479500096931876973317120818472883465991015596717523641856810286626439287667681040066261020458108584755098587931772918575340120380122391279580630 - 63089817419614027949713869705443303414261012258660802756430718945673750293937911985030722540073735567220860290764744309902169310419281458073896754765094348815090678089662279005948235003153968829581576084867530630559125676708622432223591998446524862273768360980298243277853419634774064906702269062659305426330 + 25677830626343122473800267766987258667661454338633409925057452295050792502934635228012969731952432090824067546127184820674269109763072029928071755085679552707171555102523382002859000834013865264250888579699016146722510456747010192496630995123022435395781861793364259724814673958020662700602026307416209911222 - 71199445873142743890705311828426192993441595666700751966078671905336982229004736114861991503242913305495774688716514992606079439892068289110033526877163042238652945854618818253560032930426612158830717352398512190160864531194414597250521382878357192086557641764475531942766422233904908929408968343948911160272 + 62246636121089263731371807945897520167051837454698735241698439734694730001470335211863614247823007078485077900778766898167190790567301408855375740484748340320700390073275392868823940948653806683445411202776990790067823595294042946536030310357110325099679964532575421698733314704640641895828452919877756100011 - 64619094101169861260658686391437493165297845452472272358760304057989905431808036959407913033998903580567058744493381896304542424570477466803135163609233034624791665491361616919472989117059076521170734411692284721188464794534574401950171105972902450942503245521469623536413107373984706704691477763216841890189 + 109179195904717079139512297958344482754488860947001124419866306632211947700557001412569449694611680557227002345132253379015047209028361122554436255825724641792181226048045416132300441370043533054296640636019094847912470011225895961907747561407131402046285049780521232862899425601689434905370686341564422790289 - 6677644520806874248729709604946168760244903183951381719735625530119707560190818287421767756180188265855439551326384671573103541157197475833159721985859875315233932931981009410659195950024397916060600415042070216195290723111879774732526912066923480930549563204082983120980936536428103764153567950378551358385 + 72256199900300051197332501127222934244256559778006179914521739477500706464599171904600643790797361089413358501039731833363101680832368594873645195342133343135647784788351460716476460798313313942000048638227363109185805859595520325671335898545619147866290785844770980165710956429961244551737499380764677597447 1 0

- 13081877070293567144772392907238627006925879869965145211592024037074476968339728750851771748210736710346605928219186736869646018548035900973688960242107443 + 12342925706968186973716394535438921214235596704954293960842039701459560221839812692276085541622342123471691734600034990812679842472477393419982807837038439

- 9879870679220447556464714657502384107730265997772677436404457680252845162599412275546553090201887725923207763225634095749647052759030060561134760329575063 + 12416506642760835382914337605608007021637845840379701356494020719607002466778798575874134408246939316921404868882276829304115457690088629985078174708274319 80 @@ -349,39 +349,39 @@ 1024 - 95993586374937066529455162653639008917944416331769895672692447131258623823530601748524840575528704991358520416600542951520877430553404290694537271374818615310922199629418777773940917285970907448620026552905846347625729841466963377261529302788316386653331236574151237767948556621396949628879930029930854431773 + 135358305767271858027595880716111530935123928737890043873187024055476620530906467130993033452699358704424795550755169128359841746123492797756886097936671355386621176058979935393331413499392989299082084359031846630046001377108741347076252627789379769344457517235001038532356319713316214499718115421425871569433 1024 6 0 - 83824229456454055467034777958381886084070099575662029359808652417840721999302831923458207007454244578968532619690321777920454748871657405334691831931976377684607781703339528597558380460921586675470307191208505362126230822462336917172922636421883257035328073770261565664854509432609003556170229901400608515196 + 54594747011594798877885888974944176740233826058214590608446121481719016646101845365461669609593284564003581366359995275781810124519910313811380876256508679688339828939491429288889804388749815124253867496416627880709040603044538402764027705232404679640769755327219879688706197760711345784098387646185164981152 - 31449802613073682797257425139131419417588192884433609539928376773383346328101742134248510325629565365298437902156586786944230581371313578612449753268670024177152333713470507828982714894227374723227899934752245499118873909871643883739539742747200765153224975710081093451787655817266736145458329023747843360297 + 132783808999394318707408962088834983207010415125168788915872658758155889296838532193150695880199623917302322850691457856799843846471181568246727469377964494204689790089312937443605415487457400789095132034217110410411016988079403293808537223974569707930874192773033393470383855778863425429691879481694667628909 - 24046901626095895679816597945607311212403525239995850573241184656254370764719651915880942229067459392372913232451799155395293798882992625761937473873153502423890736622586766763795872931503799528290427421747236393467366420155132576017108972252571854737191517057107119000077313989206985638792731956505981706798 + 9473430635930700050486617160141204494342095550189134899476751191276019107931129114087093973056080555668662930307913633328246702572209665502366737090850431132340577394193612418080423291630390780237790223606432359088325373896719506291987815760514899446327539193574576164858114835145863147018536204496364575294 - 45175832503961230046015360947078569944511308174669274010627205837152263355923031460360917867200068609487136017032019574229194707255438267238936157298227093781866090322680638607700980856948120525143517256771339934483638452609457869091603314126054310638555434194657134665694213555411010667515926827636647302610 + 90024838355001075777783195974135066596911088933953254044502969121509346778938214241043930641227033089129624800092043075809246544470625613932569785625492513957934084324845138958744207292453298491639912468882105563813341034734148686353752495183156303339463108993280522860556963638419864094636988429994370751743 - 27226310139875595061545788405464522559218586869146317221006148013240284964686677834822701333166143350393682277077841511590250822499110747742693496232681426234740573959099299323631804367485077842063495311347905886490364241276494837378393667776950517833124284734693981208106073674942158940515201927225260896177 + 45914980508142788475969536593414423447529386876252836641757988714678457126161180788769040893130014877283087923780361131128613703067760746100124401445607902733176021029401905908890233576832489405771907746137014120822037941005000384307118527309121044551993381248785336586579186345829608419256901639247803554604 - 28061030032752164801968067580170072035179782094538078442993446829482618382199841587780304480987658363417992707765141978367745403741272853169468282987262916058066756117715451557465508245153549381212217078275504206215654107054783849807504784914064329691028379646444146221420807715386913209285477170712492499628 + 32911404065014905616571735182748738235851543040766582724263411775153690607184929086994340376410140178669625764641435927432683863591301353627927154715686151567872995056710033783341401210111884942070839872351093132272880604910175334910646752963148483903851675232134333338877843861382949858872798355076941765109 1 0

- 11584124495512725645750254070004151397235431960197950698997506155994900934855991765691043061376387584749228555244927245784250963404172386615517446654797547 + 13318107756312790859351398116542175724849222734068960781305693360971589188723148557676433655469259538839570794714793364814074380377642061943802625475030007

- 8286650097046310145628376011970887020008693692489576545648941788788304647918380756171984084142680168440231134333303978377479157454970188552258529292449559 + 10163478794734330182377840913723115665713256953124119469242480062221283140639606280259659552725660927524440315179857892001570482716740571281058839906999919 80 @@ -391,39 +391,39 @@ 1024 - 94684004306111857506841112997261544480170843980474819684454351726404536462307477506168949707131540890820127688938124464318983598656261985060474394464444104662851771105569910458875690156971112007686589137184650027225996873453992879004305779154307234416186725944747553098765878314910767432398939363070193432489 + 154218268867696507002031865996832738977246724680896068886617497685938467688459935868916544652628785991317792030286811386804084216509428288684761196875989322260388889257097276677216400072227578520525641529006704269719639306215286673007408730828431211470630255070235631883821820735534893283207489831811866541573 1024 6 0 - 41813145478284531524339888170688849836993489808773877061381898735431270330468430771009301788662385120899147678167321573709618504876159814346635143345363712394968468974763358047056541628004679516114879569313531494252386434132347497962429320391260372741017674071011042604271806756255040001608579498316923849593 + 27428799928169371477008314260818876148937722875877046040065001415256050285544612261240610068898749426541489168818274025311879557094462504325465143718226701031270459513481171715674711056192203762896591318737473272520615104809732143483277690473125331986133481516425478801944037361281857855867037438256343773679 - 66985412989141614286302186698499483703029319437106991649103297187111727830751850293036846281738132181703909496240817794912400219147438773406404404501967357891659448492407736665354464273194466557245973728459910312238904312073312671232102333552915861810338965397370533857859494752184791937326095095137600260354 + 105450822515849266246824784593332752863996144824625198279966526580096181889146860866466836912483527896334247490301097916546476481609859267630501968068493335890437763132841945935390933265030348476193713724966585347250648751479602155322327667705579310128424156557476020295924929348119910434857695122123769715348 - 47312445634335688130580705786493131286510846896090168556933453943379704950126824709335441743633692656299109794749138042476418368529339230542721236120630910870410825198394675989175724057291495828269337126435824903651873397607780035162801925793363290999747965512990162389907925450219773635717120444444967961403 + 17917586169419969792153843627847724624582303970451816452874219660498616008632452910042480347537075057133325092544315346979734775101435525533629606020738633039620963234297245636824119587829479049303232294479234284130684993231299911772911374146097317218619653947965414360245657311825149559284315208240541584049 - 26680941685059982265916590861304381368349841644910847763290590165644980437512586663772588348564786395142074985622665652147665283975844718675959745082420493895716957522519133528284438195566054958860953512709923937286271601444639896244630126540024459226060622212289739313704639649931735161505997395694497185980 + 83614794643827277304010494713733702635853026857962232621115526420680432673836574945397242148810823271595098760695291447287587902753143969200514260996554707598388279117974226336910323931721647138761776637137666044994683003226962992826724806567215542394880283109239037221417111570642218445097975627548527092539 - 74083443550392038622058019232286521002128537943817376082249256877190604066000435323031376336866028072662736957904562553741115362551808059312277922794883095838735071899792161563043461419534693122988468859364640131280222420706345691410443643331380352418667933129375191851645103967896117642593878204014509865042 + 98025334882817542595051261918088236466491396073054003041122381828466061599594157519317917789905097080123705591326984935802933433391754654298972150414662017901502818342450898330664054579806253102093229112778500389727696035428993861323041972409204375141288230032727654233984733937127115582284964721572192907628 - 30557934325334532582271071478001957018070185356327913496618682277547859447967138146722346701435719877241149540478472366310643131902542023167448548815882595053911370946603870567964058986679361070823587016887587552099878742317560934642428976996087168254547665849214779296369547563107675774229435656829473513432 + 103461867044654386108007921528414895482662948754475387341985070060736686576950492180848716520576397704988373242928703953709705994705234961029080392502757613196202086877221834313994327801773914413507546181585432001324248533541087174089562102726527826866350806480335498036140946354815641124317115290718066663234 1 0

- 8160211128333345566540434284968702413044967260865517592707045146213011922768838116572601821572574063631758048568559271866605369501181303820592196835113387 + 12536655577251435153297128528495279017070952231480978492276109251795186322333973692359731778853961591868183555794714823581445343414531738768400801564320547

- 11603131685815862998758132106767773214584562494355793433835542445435042202940039220130186654341099402233149141447271216788328587869315947097248008800765947 + 12301388350138248799753824840982869068812246029803271748337924627397472168580398090458209842652194733464336605766181794711010942109258987663347521456971959 80 @@ -433,39 +433,39 @@ 1024 - 127727743954354624281854745476887090335808566069742443817890352306117585796239126022362261263079819519314090394014361647646460805892494614420724452999880429561236881692111401169717707414124936138355932922564368207508256915042248864594779846067983034559994170386441595183852296112119579847539416226299289211653 + 120098847776259535343644334068493409247155794818213113642226621008837548248809756144435391881962615325304472487122528549774300242072619974184058684501061116769021957277559333567971936578385761656133295119311274656165996325688816719676095627842254071860445539705183362636859341285726107647847880667038640384469 1024 6 0 - 38164224196132104532329483574437124604055028410291615521779477243849960655602119853635308460253142535900192481558061899029051510773421915505181034038040205053976600340395226223552584118692639276068809035773829056879281287542819362565227716773397503446437660962198956566256514393193806524849148173695204924223 + 78341596191867165364462798149613513767187976045933270925524314074332359105916239984156112944388741605555584315673330918240662669972383036695380216369645786077675668119525313091263106903931060310783249892173696572488213764160500898695655888234795022024571259931035380458667979043363731060752523060256425326493 - 110678530127192027271644996149003445969262072382022151859817469310732453833899229470363319557449911586003069509988091720697116396999513012913686700138918399808920334993823529829378539506175486461505670850531128082734443433833237420355314390270799453960429479062564346339269484877851018621073091246726296041918 + 92197697267850835637041615816893083978440979223485010849369520091954329556817022954840969220750091574955501530801737742911131398158522167774789346516688492204741057116830688290864687904235809951324327245011263476463848478977798273152839939981363192465690825435376744018481972214855855772912890637337396617871 - 122548490956895798346580701645021683468493703155724198028852392301507630566051709653966677479391148249019113594983455772425222329689492967526169663910403291783540669836098877872130493149328608829969126991475661060234359382873009916476841684477657337780779843037860445806000967591640647467157452180419336440064 + 4748293030592378955093724566571489011651125070696427417853949295886768378111152102495476227775576523833542397763054262265966439448479602453489588304595952626064095178127493676309959239982750742094802606536171334162655130645407695836907472484934442915849957480725551564249920896993846998541219569493436633204 - 115049765164512475615816754723709421915820944110057140572079223148858284078493729853694322750937204306066347373205296833140390979619473240003424221005440943252946247163179631339839082762769031171800431973311643442309923874949666515334367655281859772013653858842591796008806616434102016382825819024401335460344 + 104584900904542556799078527703080866806316560026256596079705108220072609345471701770134318641946110143937813605502326970885364040335672893811516334052832715982398959853556119074396097391674101956889279124105778371957287930683941038772719876857983940733827806167120908159325650830304989434548687189098427086091 - 24473572867891230766459628437908127183343542625048075648139993688246520961765676225141015722308250646609649372811767064660575479732024522516576703257333821736317565819935529241994964671174856884596066767646349413206450874945566058276469876978552642627552830542673524471166381537681830302599987521202991056916 + 91477000374004348014105246188180409651649243135776551322813142142044628230484208001614477763449794744746082101984365227478095962810916246503069968738835364911647338508489896420278550004430041982623071421860079472688566117689119362544066175205618057687399701666608286724650867268340276001512993623664623275609 - 121681456438779282590844849528459680640771312311817451946372654804617948881697814947418283630307162863219078621980522042948479034075970549463192538890581557434181542676057282587529357950472618576160067047151888130114895592153330967041148579160247158143832010635353491887390135911088640467337273087059507194017 + 27335022029071511973872915368479831202151720242800820669365572158467591925687227633305136848793235934543162969534704442560517668695149887836214069200974132339079102773406068766037767764420212459478276529948373667413279044542607587605142289772231063326758841771162863193523221664294299814482921047353670436699 1 0

- 9797347328962033146488368412716816572855884675950751084714870398060105480643989536965963618504712119836099411058406939329852572231708464480258091257726299 + 12065972956960263054303683531293153220877545209080865782763360344896177242905958506299126614232867538807178063979363544150515696532612909118238113675335407

- 13036972117623859846367583648505887475031070725674408545288450375638101888384702261874720182461609709100300353224517609830394811715149997824925879951644447 + 9953515411036989749571851292635891899300129938693414036200774667401727577909694530750019470986492657545284851625143349646524000492135746632402749851724667 80 @@ -475,39 +475,39 @@ 1024 - 107749505110219293735979142621600906412060268221095964958047755054026889014562032384740357183948942425034845634341718222816289382158342428614326831095853091684651319425403499920271331624120186696435758082078835771213653665909961668175363666309216938446744591705304849284719196276795882657769948946973809132161 + 167849747908102684615783031952151303487318618058226134276355868669627336908402995742916429082816062902544246840315676375600682020395918653886440543549039685487527686497944229453172069154889512786032054308546997135806844060341575216655718028005098196791080486235476250761566643135320439910817103719665970114189 1024 6 0 - 35641763542538072741522529757414549050982531654163758594796572814515332674264107217382876227414938150895794246663213699203676045040345468365595904518557216932736965338172782300662556342977609863343254371250428708891065753017339503387158828908221127194666840726277519886534325430466409332054289264640169277844 + 124697971864257013069199803276420735672381775609467161633368671004811398338592994292357677388507254846498502768389738866111523924342131234320910182832156897093603904400854292861082845611922732284956492433793209240106822872232125951145778177387397679039918621121927819973078906987741480262525622005602565399227 - 51516953028966449446491964497485751517990094628891894167852992419474152195473677450115630109656769378494026370993046135905409016172357252608391232821836911141770346398361516943084535741619501601620828360646455885527609024954604847125816880742230840305389082240666983369173612747169877033987337057571277486908 + 108887781890361525299548949264309573612532412215054221866945026350960909252554790687820537292488822159239096136095460817189450475839784419203908369203805504902414189148576907397548005367318289848718165066768409808513010231990171238509327686404013042691377114557387525251911427307934702480124889546002434153883 - 27524154739611696404554678600200022524307387187913330804982598161151693948859012016036623758443668517076661729602221235091099505199024928670720378443021686975221010739315229994281385292748497564017937013704629634698304615102321124160754148064847705580729356980912869939320882633389771287388187641972691550724 + 99965937256071531833352267584518740705187568678398481975025487900445929854870225696845831801035897840798993192645749908958835960887390699965754669201895122689762609842067032782947025374191336414827383420980245403487860703320619493841364508653990560873053561052051848165272882782658715485304580849894447481984 - 103377113942637790287003533084222224091635314875107183584866015855151366109148344152031526934949226690062760107225264806479505653533683391861954516724319175283894690835928918195415330630293690379979533803005112548786693580568575416145999408621762182595356921903495847865510985584950381585268423739186644819794 + 135464487014068006350241183417277199933512080629319393539084556152088647569462879342427336794694607292779308330281931121306851709112290516904611886868248721653328973827011082831762202172003407136709090048796766379233700381954200275601566017619852103033202510881086909114257203408422383001855075728038739087666 - 14673500808702279959267062967735040754333506548920926780094883070331750919458000285586391469687032554437676209528650776647628681974602751606955902150200789053315798988526116770065473921424842764231711641888281788435107438350932690834592578132496704763814673717109277628114653974891957529423081709795618347068 + 116087460929649477650719239236850579624411409915463138669472799334909075618371332653913172377800254417621211492605964716808216033497729198457377469580439281611985552152638264761588841398460105860435413320874653840732276755863584448068058447432518834882323032920701627821579231087160538498920135097072056339130 - 38859009087118888846561310819205669852627803673345854898080307923291445412916752468089587603202768160020948351869132135244840063989628351242421729167402060220673267655462881686556526660062794364572873029867581614425348332512100620476340441607712247927956176958026610185773841792228062538690034354280429985168 + 87022481899114200452477329439521478334907267121400160768484310083510672665816499561166856734334611173826744984646636728146751086237799447687536072677043559995690196109619136304467129246411278102278767648846219215263506982413472377610126752110280476180152080765605425555155921191279654185124388043571147181327 1 0

- 9728152380631131681740808838984346417922505362633733962369711808826276345645215837727287141565994269326014156795037119740007855698527133598892615473492227 + 12636642715417859827101007353201088998153392966769625361518956454328272594691632711789366661263629504337888950179922382595129311605158283150634452408979463

- 11076050301673918422116439895802538274231870898680460235999737357428177346058924262307656177900696772027564584760665000075886788813530389221467934275923243 + 13282780220042989825847520435951613240963422612857516952397101500145285194109725467697923880234771831873607951414903374146816937585493435872195952405446603 80 @@ -678,37 +678,37 @@ 1024 - 93230763739280571504135894981758464921549533244404977499280100317610642158696171760528104674637737229733175941568553403723105175097015515319699070952376427079443371106935342247851424088952059295885886935097518162672135947106049387484840074591589257360230315769557689696542382392519813078599471190744767574869 + 102680714876620505251519589456529850089969700556564489253162684638539597335736793998411151385396668678457395604056076455447346438315008567850445832409559094642617108516105196798178870587832997740211486024550117558968151215813802257578385470372409470175519459389641067956632237921585676408120047405305262039181 160 5 0 - 68483281100617598890690260390149768811612212228415625203522044461046667111481879531370567312465572767471594307638295801373186418716158142849817983459330707680663417874829025870869126176489427613080242732002651745488662881285588979959921965144385346078984637002460369031880302928947344993869585533184880578110 + 22923320959192453636423682385738922848216151492993760467429386172337582699603626592667966029063069617300543105850468927060751138940226489398256413607978816318065423599404211058602051331171774528282150565237472007558045410089374975467684411005456109694572501365211023547108753818220756570663968723659519304097 - 83265639626129173611789599010225302025152409809086527203484455901023769133886691838273456108748805496287706878962773757945456134873405263745164606965847314532700391809966780181133976693605443364901583082171984350459199737213226723745536820865782465101328993246611565093204456820916921489432935715107535378903 + 53945843214081887230506825685162514221944851452590973433147320105768347799035010333040104182762421540976644457898523154200390719416111152133906850059276116624692455403920555815325946146027238316284576081046322930997100925534589898400045746221732607763907326046366956881978962788748138738898197865947329746712 - 64494645596589253556216597795109317230393144753176410221096594531458948364177234628870736479592689543360905599602657314236263592101092566616235573847064708472909757312236854415546056402214693799474345167566671352673240454618588407803218073337529354507911802599713376224420664104074189347847705900767264872038 + 84070450444178810764801942593139363675201942216375234211388549548441399502573647392486982654665114331690463175765687779989817013063882187163233753732167024252613425512245014453169195391341163601305650730846456990348521068770085139213305228501503975315987245346014618040731218552889355850011776660968387243547 - 905161046851521409257577111452816735715252358623913604457484229604130369307839601749333327613605388607433350593708810515691575210160388761595869399020222667210908597450718769664858099351646068693841593092163471515550082960630078586622005691616793435150664360492128321931098927419019241842770901510122534086 + 44698200531549202972232618323671999010830294896874839743157702137836602383560583870323823976773804259743506237545914357368122833664632525931647018821826400373691255566854594204199447306752422310463080619172699838408810456076477752430884838822369737010719356000558487625372180909172327760255616921931423991248 - 41967547411890952815359321374560089169572366216165489882401854020396349040651479953032950680353976700315040441376320576704876897753122041503541594885225811640391952804794467791615197647585183498734975425091154552964180829385469542341052967827029779452736068735777647237824883904045150416844783850957326457638 + 51872694200042776418703861731161005597647063174327775542825481250710848362720927717796283168056945768526737370976647132055902410582742570384884317599347064382929720903764261035793509472519152983496873672379499058845114238849894388800999929829175350045958631291831128454260459997110600204624172747502759593173 1 1 - 768028739645457608782610724486466841945856438193 + 1381926471275670696491547928550620506717346803979 80 - 121389681045423325292614017485147832276096371324287958707137023784247707201994560568190745220945575100850617828806471788665848145386600911065071127506834995734161325061718372704826817340005630257932482772489716899084347057504860573458772886343641833581315715476 + 74302589183225406744708406598986697445626235129332961159539629660099003864681279676025057169598059221346100246653275027988998552977043535171844663879396255745429680604118860556814772359887881646573360468171271074105943974872534642719266485854337939537007792420 @@ -720,29 +720,29 @@ 1024 - 132805917336342357621340347406652851500160158358616478910647979991495279410794939929518375989150750446928132372271337608193443333865973093134231559072633996501463762859681361235278609969585631425793848655519125510571433841525692826089479555621938481220398806492169797461801342643036874762401113827812141565129 + 128057967809655946190316507735155452831314572900315216081434860144597217324346737671800302572587640910078110732912465466684478941477363845874613925338791275068167816621932721309235605381772586248486970010063355049965746801462578755831359666996420724229475198439645105729191854361248312605304734475323680662913 1024 6 0 - 123724192971345628283598524077771574642115516306203819302642840518434734884990023342093372590141717915386280139738278686607193677120717277193327685180610485720329861045086429532831247312816073761794696539180603164001212548485317103853221255907270707439711950418933701675350040464705736338361874491112644317294 + 60811636929475187479807521649087606074793642064167945690350627603203118950323257675713133373687111123714663109087066267073458476631246485001894677569393649603260477149691339449729864039552273625864812610179069562367245786370215607199308088083101677805342992837524421920973047652387594443568045299878715104011 - 14625429247927685090341663241649949148258959797292039323692281863043191792520221408569037942351234266447978782199478598250390786360135847682725454656794862494759779321288036136608651289809110043898514796554758669357170034489653566653604233508960098637358973041647160974378868936394566361597245297526090809584 + 71560986262474260038579847733152867125395323692136727882523150181177145526050032346646815633503819181049097447083396963116870388315714388861158191811280162852633670260478236187402519672391362381543748430716574725648848677812893437556332455280083345503039177361800148373565541695573258846852919928924249154877 - 64007057126176875784921548625312090381394744981912355585114232564443978202823028666354191570270582971317908560590960255621718151644865169079937946397430383552508870164313540570101112038765363492847255578958178618499930646151629515550809210720009750548884710211145008245153069694049417395148648829340938687662 + 5358493014159018151110306019414188401443366482533390828878588153924237270657211162207396455592545292115596564966717448066974022571552087820343845293928484045368156700279200787884399405557838594314421227423879077160333472477688129275324340290022874614042967407069455935447388415804019834527557283355835583238 - 103115992915880337411327588408688265150975095052055138397293144081059692734045417060416587664821844857318695820398000363692718875618295012846030208453079674394744433816396921378281051337563089579440046048625384540937518959711246975878537125941932878593410102488330542299641806404417418885309003319570534438453 + 9440403911953510704955609199118462522546969159294361115679964001969095067128208202978671380235142495494192920664243060842431049236464627103331285996753378993464968648353139689202039972946351834805543874912252883016750152554402795151625609573033493183190907610839726606922080056808873159110535921110839225918 - 119457315332497076188739071965563333761790600794685011698971978110574170937694642037185938145352267447861601656017195376534888030612146228692269726722534673032982839555108591230005930224550822365861369188758542352070280899039005900661300902275599304439000283009496810058515041286869086152747650395143418209695 + 34601241858178235153992489154363566911322825930412755051942961530163789553279237024169967243263931210587905323687670939702730687998131084839805896091785126613296047470576600055262500331821637746680489652121076447750079042944735474064557177506619768477733608759334395601504750316910835074596407622363931297695 - 97738799315708788763206134320050643392532463560258106306083499059560293956823651670664308620427613476046927360217377480809698815484522143039469284490440932497202203091566977872700143965467171603897734591262817015477036444327217869465633675102793500947186640843443170349950215500682011284039501098188488514980 + 103450953660312905541961327136746359534991486059040490771968614429013794227835017626759804639288113432551732347712210332460709755012800755979360542019454727242090797411218789006851073710562599252458946620552051918314153874747184637728072116094587384838416002546398982033848043597058533784377942968102172250659 1 @@ -762,29 +762,29 @@ 1024 - 137372634310161859676135284402338656224702625790752326093422619912065941056411155016565478217907728879945260871334556369999320378181012769399229672757185658932449669547994359702315835117004920960039833723832775157892486474472871781401535566138599328187388026485937842777690668704923449947159362940419397279397 + 91338861134529173742636614734321283317712406433818139285229062454925111527732609262828687047423080667973258817589805005737017416371360314088086808443898371429020158735259589920882443779130428607594850787634565846387075036083051955856286100630464641033224957452092909212599715224401427904042049536509604893693 1024 6 0 - 116441115010520204443701551044388141672708396572634839287898503254446689571343162226795875092851665648107955057536241015609708368366718318010287460951620183224189985722483322655563646525334936557072068472012436067191783998514083593670357905410483156163550019788757133637004401363151527763776723191808245083150 + 88481512963655310506095083872998303955363103665395614689748950761935149130592150567352051526842435768907883513122638406071951993833483039104880894260670448994086429616644971856997369229550170174238792300740232364024915015016653492885640971890845653859579668498528250516917066920672069528744730214455335881003 - 27044557351618142662356552877489107755687685627121911493229457826128074471372139670480946601583473364230995461783264153391465908763057631990861033738028356787438011645743530045595363690544107938500296332245528760556413617439234729949411192040200982595365086278803028719387624406149566721713663632397652758734 + 71420609539497237732868765033013438071208066944625734387424793864620282249588182875061993503837717471514509627177747945260865425509223920765478106067601828682271744524355493795121669193837190303641492443480194307599715826281960573836394123684702869297115710345424755375986644023739445330856168082010838417938 - 18668480646476250585503852417335962920930545198501147882117553235027914985366130789840737981562565180298275654871023023936581742688856218428559624653989709620342050760568013862082037009826528078528308498338926463622071936645167033131204995449391746215916468228090340406579421220320039702041285615945226682497 + 36213374277915021187960501154206429350509009943784937342853640962344665273661370341432812162660134104129081769292257555453657933322026058920570002011215114885632603237420344104120014493999772566832623489577942137696416594059207873047026684531831127098662368796483679106715230357303209903005563129291440998125 - 124831643773880234485522390232602697151624554744878469357280937852918545591277448221883189230205072357252134490470478766733175680960201808445712280554760481792295061585139951074758260903784531587541999977882176959445583638063216972509599746798664421534897232964080914317787532005374524315535445105635534739855 + 88784875219103004490867409187796580439336028275646934064032325734642172796350750877782655631487263690600595545185986973949637793376040039529334242727841787186152368722684829777472113434707623526142748869410906573019822447060135044716736888756586491608663760971724703067383426197232527066117239191970436021914 - 59970642815973695149052494697659654637535503354257025919678495841553238031034885486365545257363298700332014605474361404182598059404831610511163756704140132090268579779044407534827161198033244776683186964741076946492327722988775759361482746512239360253228317139110005567490550026268269509261260489164598329675 + 57669682815414213701829150785790139820922208365396385382451270040015047105011059602270677532141334599848749895445377163377797098101769663138915670832338561398070313576223809679656089041902001668549387570675942187547921753080749715443394968434937329744189522351133848627606864859717699163427995004551470140014 - 22923915272163963950857605925330142022074779916236347548886633162654056167070402255377093400484185256137566072514608718416367258335630496123774726992155837700585510673044223219699749513900672323661639291542257718222249838123282120567272749819257073710511915155801225598478720475650206575779832514355014487626 + 19430387956073665040008742545168228237366626380409449215616316415682054432029605888008345798193251163116713132110293851289775570086405711097037612492724618955613522669964620645767675728759532995017555557036656920568589220029848250912688353596366989096421783410644212433994547565209779383923475304673100010441 1 @@ -804,29 +804,29 @@ 1024 - 145833845432288909121084926233534057685357293274340350126668766405212197351890804174287842353814414753368096405191002821422184530789175512390729502084743232689937559449075513447581521298005309418519751610349842123168680301350588679553600672970038503825238594562290725630967833045040620813816180930525533629921 + 171795367802537336198216850040760302817719433285673072064016704297509263294972920968862879995019333546807716681922194952612358665832924006994420672781322683935998563828829629166676961578310364216820723333284118541610355614763234524893877254301205676826968663616237843247997193664755408992255295724018758287453 1024 6 0 - 5614206228798301098336705931671638644909555489877769303373552985024454467948272719941276640621802213319824489026627166503592953601271862091261438770581967429841000215861631061086884950337508297975792991010971325252918140265180480069954277705396167335598614372709439485252924902184204172397796469683948482249 + 138781939743420141798085654234587085378791442750844156618218315519623156030775014083940843628427157991650536995512183146050090364430217798889903276779395691314769341501283521555441395248293145295446229257598584303226472282606025256289516823083353133125249557574662930559464988881796972570415006594877835195261 - 77829222239122835610084423738321562150497279446208639514447460343866380070175601047808125427733325611930916432062196605539354365357794550584735606610432247740273684874796370960540670916977515416987155254054153328167529316792368006397532847978034025278821903835834149607180869130216088411657110222021618483674 + 168420371175596160385314346470541456127930556988792934601264980767954150761074401191883764002057676025574635595559453082438403114835695017344400960903147888338845250647685131378444914574667053754042483424927960459645361430078126904416924147233083786086593890435155965855696708192722757613306648217414021209339 - 126526668999549527105050115708853820539308975410043121964399106650368217475035537783616879716348093999454486886707365887651216832345937994185160915756008992749761345129872838686896268682011102041005029710003412657931850689656325888000091306838802288920011025039877500299503261395656474277902595055003645939377 + 164599507864917269230220181044130466242640054454386799153052272100119238662434506377210871322725801768535465849520862187042461522458751851837119010844326508994699806461980159073458635731317238484887665362257435016594387971946664996341942792674855452076757886270233668811767159399329679444242304826944461878356 - 39519547515028449055017861664894155862617764060490711234501925837865547671173429701804910726363843756169165093168047068989948316277502727839336504944846821161828359833653929929545581648110770846580090891357587504044246698977653720185664161165761777760965438539711667531830065447338000177079619272633974997808 + 112022954554594868430694861746706902810007259966892035372848716164773714721760248918761857377457366770462246217862095078291990529093104794681337350992919876990886726535142991553290065736768419334005963502455897767959870639353796998608846837617297713305741565185682566104560690180553705181428610482999491959762 - 64911171886091908379987659695928798436999618688156351616885354569475319404854703300389871388692848749447706845284633183118607140873964829806267750277059617538075740035634698703898760746137798807795759428578283927848978809795704455781269250994050734576159373116072199698554416776935114764908963304498490630504 + 20795710379390313360149837901235593902809611922782438280826554162582584185176550436631972790505407403299851110962435492486911884529635673218790787915570636384717044595376003628898518022547995524968409598599237503027024128328270655662334146591298270627006489949537312823974893037600566816074625503584300399503 - 46337737440906880658350695547525646305900567458168613888364269449075743635956571509878774476192279074625591314542016353903902280576521867929458581523010335829319495590409102271909715542993648132948180305225658201466190786746685383311897244330788754428392449915461044438929637233785244332939802020516997653890 + 4461068203835146920397273122878996496925951644023334909782795888195924230363311467297500231054245083629066539839024032350563196843805187870921285704555947110972472049763739700924273806542377974583744547273338787688284998293736197541473212310650426901783545952048410414287416361433915264087521382790658628498 1 @@ -846,29 +846,29 @@ 1024 - 146080828996844893786930415030267236937465501130613168303735364618844293026036288220097635327009673585003284120262747096635449871857553308329749899517971369512993356899511456706337957628017589622952308458223073708168002051201346250296138111717760726492689696085001720244510576087189788400173594849773775987061 + 107678493864345648666726963381598843005045134906745773568855127179729298765945796229988935480734186762723475076589458553114861073591179889992284613957887798550444135071834300620151269193028269405467525155137973905598460168964059816679287733081423902287277428322195154969572934367847409309681954541961841211929 1024 6 0 - 12143846516438032065549326588564641993076335572135680144319973070565227510388555878816485541168565333330331360373203107549711159307955856012988849600497784921648620670877827610870429166714421302856006331726388604858639217479516237211099294053777590279150366532220218255101295698436049419849141612097902640451 + 34780567649645587652662047318280460216197594322629290659397343806640717111602043777551795972363990570490561518129361133754971748815062877457811980871870613895746761204692874944262181605786891503668206019069701677551111685254064897625906904673396799614054762342291638726110702862138766341205373553864835127477 - 130110283334213982281592724744587355779238888385612173261041558390337170888862195730988952587123072858116524751419665014046802853625023209193025314170209762095895716630052691721289740627897735112480237539255012944565383695831051013027460838684588426430717433008544285106825419868548234785369723450095304865124 + 76770578985664099191449798911850613016440202975139749844785468106943538467941487623782662375335620379715667015148235397661770125559100524256505138827952950374296533996410404476470347577736554558794350087928716157046782489969073300743386412321573188949782078100848155826141059164451205262811577282438487833155 - 28936184033269797712301045816156985323899945333237798274523352177150263697445409224159438231819208355168670625188283196276111898818482147589072075244562000752484990678046008139123016667919771421087077668072425052038197223173671078453038383761535748778879934180519804845917837931720125662698639707169019951825 + 19375132007991059652876546182462672768720429677050803522934111565324016495763732172744623907045335493048740541182304274405106110493850369225158004210873483104238595711350247509966292622988932139561490663242014148110393502548086758118819001913181597386000596861820476450726333113377798106479230138706277155435 - 139743313044528582631657668286088123161464964626310113284683779085342948598023633133544825825929928312362129974614186131729049145084732952532041531975841926166858606672969874133254866846900373891351537597368983313837098495423640205742172752175958379844629957134932742930140902857501238693610132562014310099849 + 60332745111136671951489671083751897003291069716229419557442175701860610038139875996851654495020782497922916125497030526867835842055895873784260108184155213565134969114645958871640895775675472360543614497922018081777590790520072701770098022598964534954182431602697737796983390272144688966305745888541862833949 - 53044581730188892877631548732096143188468162339421906645278191018430149084642776390613644404189469954372875388873708624934832371281884377986981016031495526801835709924473080917358419053075051086050983722965169085001326293901098332606081215826837456256432766108294919171060244900518692093178547790827213354457 + 33206030625501357397902828493305862279894195856045523813806319914644617357371406587381751252409214237464923457683937662308696252667537129026830911327626477920950026367523422037741403916073653057335758700270326029776865721695045422550695292453931419295319756838382198216938790815705554550670037002167896435708 - 13720982697614420642042383264268813339206827429441510070099063031077866574985037908849971402680608542067662118645382188812605442192530585575940209920553520942641967018589809365098731467452204409869649415457166095843163238375083308117631225271409506085279102769367813064999165660319126220444280297921602368577 + 33699591887245320183352886957374795158953603724548326397696125237452265579267587282433792785552885615789973016310923276732538075279246287329477093697179355796742915804057038950601496710139911151519055346593812515824483642829165138763105492040862107512334441962031341198253373030460133402288720613467576919651 1 @@ -888,29 +888,29 @@ 1024 - 115562432164102251406622967052071750807258172151285544566894218498931362209567346945848561669965827548724769820749118527361500484654503353982654831132691503147282822681740720558479928440623829908178283919727041827646963738754679445285325013831451162488739515312866275942511475472857933145326220132237853644557 + 123460587970465722399480599701446111042791049424678164510782348298178989524706869827218072757318065802572872977206189692439610889543998303448261820274781115343738147716328254096174904353808537339736300386924394267507766388682907861666597761952802807474810395363126049870826035575374238638068965983199376357813 1024 6 0 - 1918843058365060902224156698824791077915048816126174273828173328827925146094242787808159127789911738230990921536461350767134197215631858847922569466378620788070681199103616323592972003068116871618652298189097954624870678096346675641822861238845361050835764226882558875078705801193309174207649691981387676761 + 117318302352368229229163809607702479318456428030157262995598611780776136494163450278418011369672196225024705223924157260734348678181103931116903595932563324645629923260513068155684589997607606713365161836567403767936006638718885167253192939940642824452024816730744123545240701916149057716603434108694989710429 - 5633663323728715862831888845777946094661002864544824727134600431003469539113905131778031633116781888360230284434775486594799461335499354181125564310162945192736493983408607583043279052489225101857443790367000861445428439571903674899529423583149897600345297997769124326200352679791494774441424376422975993023 + 79166656374368484214654356495255053395213742590584206280310930719755653489957925930346542517512620192097650425359579247070837443830862748231859562053718573394014868991678211219437490529223024342458612272327848652593110612340785752785585712120010687405752536405399684337596148008796260805479427829450136814686 - 92224572490734132466871405475772602483548793692969421833571278855151455741757597222662182273880403467624396109857103285036810071642000551787217955918908430643545014752792961549564256530725754107414785146542687179641756227242772610219435049498467256907877773547533212521894936045955979927225093316843447273624 + 40871868938993875410426205996751811587721008167871813439166564189762055623031521920195950886062485740929198925966775524584648439881883879228755988003547754790287586711275993853306093079373185290320968524077798129432974504079981251722944994855192019937284992580655570885903256271403090577186422692725459831875 - 66183053406824854997955985382355384715497240013453258897437176350763562425331521822435595550265618083659590969116645425396908998848723993833538106201823652953927058335013828106360478760501723552180389313206057782227500096729295807156679165429081748514586663929593834603229571872339167803106406082026242486247 + 89892620900640290140283566392805476442834511036692916092709883776370123872836264775868321860590685970283545083118729182759253902758383167687729739268452078465233562037688700620432639773342196188561501129246210605848453748122752153274263445164184465697547705606339433632142128437959746969173608800415728397931 - 69743124750042509642467145074976059009243861971684272053034970423993683530657827278165993761800907370985552130382901391446596933005528253256387440804145356085841981356225970618247323173456846551942037337211218981373022884854505546817351938007556625763760451941625550568126244464144092301218250589930964771252 + 121709777035471737364513670422914240357059445755508125094002474776054087244214559702633254647901247822895427221568520569724729995389163298559564480170015494003587855303221851200035414262844476231232261394773812801023837394666069091883472673028207084029985001140015089782123008327089253959339518752984564005371 - 72915756120647370787512976134911056390045357692685473282250206465655171985686451881325200537334167943578623112088025120468788437772822762261349053705299070854344523813062549426226658609713960083898353784228091780561562317369856737756233116861220821234249458074025030344466225233689070112675547477388012361378 + 118368291349285147157585550327202423335817645258822478079337019930721123815468331635525068128544253736950377216631099734999157547924851998471340790034858629390897530180532960195293567558086925678406847565038276833217752653830262850771875793504960255927890257698780412927440166594709334246027496966288743344300 1 @@ -930,29 +930,29 @@ 1024 - 111927356566104023053025699787625550838058397847053053322552127284788489517366540434191289811946944159151898144044517991896201183248020899355294666452275356580458700724360087814407783680353738034566389540489206594576108611637326536178335876673250303367935270215570934307497912954941670160094818547669559266293 + 115193322549187017758632085674974727024742715278872315780926012027804032179761766503288065034565716892785818153660349164554433828067796365626741896969380114418490544104123599167386238983295022270967054328089602503480562145153230657099035975059011144762714926206594556617956114445259820923651026107726741377073 1024 6 0 - 26083963272420992631361325874882186826320192111270492885447297527829930121512725063041771515422873794638132630732246178945827524916353536920338032942329648884862506341847807165763917740516440910242943041732772815639040483973079510498995058535404124602763024963637048513509262352040839650701377899779182492450 + 24958892788118393840566891402925212894261112686881756396217607457946596306978104211815943994414797105011718075194617345672726305027536665064724927900756862036945765691966423524893153682261745384165128816990435797199717205467355245097126693946214610135412865735012562961328364927779026079460708512689938357459 - 96349476044790960219277900737494348910404104317713878532186820315042836896394111182750693236907309305366101392065377818174119922772262450705915928502291955836072143986901878966783486955686515491687652827133207058317134666488154155770640867360263153123215807876346934189507244403619175620173481171524025037609 + 24288255554756812624762197103340158750190223778765519768405807403357684268583138358422886605098116268755079717463816662298139317595939687753107981126116196500860143071528623840509966635777831057754249172610936632021767758934196939105040316041127363794901161035243044698624148907282589708017305528332080549401 - 54690578151752424968627597530623695060322314333503222637738707156935596285996271874663061813880600223163657890492147882784449085042519744202705258571783341725890402018930973779086740363427426280862005142662828899727835119949559802395804426318658922453509773311165866730072879701477097084818422964205782730898 + 98573529002331715221466911082616318301300017750678680593832916072820765087229700809543111818625003499979817183312145679122909425246500434114287363675204505267732119319754784623466080567913652584576116756111506044251229410873182774035682045895464671545948436513530383740487677985431898275771829011975467387636 - 48548246442536242336650178813376090147825187269338203565219773463426768909891921223610424888168123366278860170690454785019898354608412222321318035320240409277155997290872403728887253361243526450374951908929982176434127615635172022089921656613960936488084542875629883983721976542934773414487851263961537403813 + 15353985435509734717647205939924424374297140311254436480413662376519872061599819892959995176175891437756042491481998969903341756892089428475760114248462830393435227191729623914880110584220456903870872511626091038462298582250901312945423814102221099309496784542055234964849111850334835617876760601457927418206 - 8413113823923925485688787367614707477657758975525795517827722017213206555788250307268244325721882479636008606295000856384190034186952886166588759610523745356045626108013064205521440618996713728008939728528935599492193135365285724053499413941300417129252635867240091199959544379912710341678940281432723529492 + 17455735070449738054682884370746228687686045089020396998083887583650988955042976829464912841928464950070337180970573621151968757420751546020224392735386909098113189353739054276774294071884697288831510878855213838041505870499205405393921909645992766577060606810395305981595413168173038810933707942671713337798 - 68772694314410414206205467046690216598864909706182681421449044403117172244107392479030110544064478992356950657658675437260300111069834928175128122254740575410509949599612145656885798061073750122226817037094964836568463944945479934451259985250499721987903002593433201657517849139533217227834891411340995860823 + 99078282433460334122518009685435268135390495565166370788375980674406524442600154170383521782130678737146346515697587435130336220692226983416874121180076768315197607852814628471856417469605509753709709939138595158453850817740160745949448738764045233343710173080910805476352529406131342795794391893459845853249 1 @@ -972,29 +972,29 @@ 1024 - 129247253695959703790072509914691217099002852368322468045795757340611236783965062669505460428210762504741229507573883904113055589574393037898320307119534601325006470049122917644647993271072364497135274094746214874360172173123358949071606257692363319647094023309480718209008941035284596506382336215735779493909 + 153256019031673973848391853908671616024035351852333113222956212092935054851555144537037154882131071118335109565772920677334385665987953763710322752551766091084637014937633351768184250877579165516584609222393690507834529036303945036774013832353124798268158248184389671641362425541416312746250270416649359548041 1024 6 0 - 117762663225409742292003907909356310395762445497211461079165975468263649230373970302717051754658639529032746668081675057812533532269905582012773970520260676258789891000845981509443336988580006031339603500190556266787092149644268028195165941794896901354362131862834598206683215509345587690168857698887589234574 + 15220542722079887934163021578416557040815588753014948049895358680874401987354756483638187693890778200226187944576153001580318905767308325025251868319513838639170229388887094978609944368236261084829465326382756814026047924860100572370509240911903760108844191920274365232194821110327754051188671927504786123847 - 41307676734324917289596188448768037242041561478666611229918508332376293249216584670403871893840311327117612839717795187029126418654206536820216938628666056443197376483010899927824631712516956909063917313355829047154852269087395692986828780702480137828937293992857398565122465372059669336909756576677250313503 + 143004036495287445500008244565089775614807488065311228319771443644042556939728810959906482515000410036341359319395672341423672298834030730662358936098971678898328809479500096931876973317120818472883465991015596717523641856810286626439287667681040066261020458108584755098587931772918575340120380122391279580630 - 63089817419614027949713869705443303414261012258660802756430718945673750293937911985030722540073735567220860290764744309902169310419281458073896754765094348815090678089662279005948235003153968829581576084867530630559125676708622432223591998446524862273768360980298243277853419634774064906702269062659305426330 + 25677830626343122473800267766987258667661454338633409925057452295050792502934635228012969731952432090824067546127184820674269109763072029928071755085679552707171555102523382002859000834013865264250888579699016146722510456747010192496630995123022435395781861793364259724814673958020662700602026307416209911222 - 71199445873142743890705311828426192993441595666700751966078671905336982229004736114861991503242913305495774688716514992606079439892068289110033526877163042238652945854618818253560032930426612158830717352398512190160864531194414597250521382878357192086557641764475531942766422233904908929408968343948911160272 + 62246636121089263731371807945897520167051837454698735241698439734694730001470335211863614247823007078485077900778766898167190790567301408855375740484748340320700390073275392868823940948653806683445411202776990790067823595294042946536030310357110325099679964532575421698733314704640641895828452919877756100011 - 64619094101169861260658686391437493165297845452472272358760304057989905431808036959407913033998903580567058744493381896304542424570477466803135163609233034624791665491361616919472989117059076521170734411692284721188464794534574401950171105972902450942503245521469623536413107373984706704691477763216841890189 + 109179195904717079139512297958344482754488860947001124419866306632211947700557001412569449694611680557227002345132253379015047209028361122554436255825724641792181226048045416132300441370043533054296640636019094847912470011225895961907747561407131402046285049780521232862899425601689434905370686341564422790289 - 6677644520806874248729709604946168760244903183951381719735625530119707560190818287421767756180188265855439551326384671573103541157197475833159721985859875315233932931981009410659195950024397916060600415042070216195290723111879774732526912066923480930549563204082983120980936536428103764153567950378551358385 + 72256199900300051197332501127222934244256559778006179914521739477500706464599171904600643790797361089413358501039731833363101680832368594873645195342133343135647784788351460716476460798313313942000048638227363109185805859595520325671335898545619147866290785844770980165710956429961244551737499380764677597447 1 @@ -1014,29 +1014,29 @@ 1024 - 95993586374937066529455162653639008917944416331769895672692447131258623823530601748524840575528704991358520416600542951520877430553404290694537271374818615310922199629418777773940917285970907448620026552905846347625729841466963377261529302788316386653331236574151237767948556621396949628879930029930854431773 + 135358305767271858027595880716111530935123928737890043873187024055476620530906467130993033452699358704424795550755169128359841746123492797756886097936671355386621176058979935393331413499392989299082084359031846630046001377108741347076252627789379769344457517235001038532356319713316214499718115421425871569433 1024 6 0 - 83824229456454055467034777958381886084070099575662029359808652417840721999302831923458207007454244578968532619690321777920454748871657405334691831931976377684607781703339528597558380460921586675470307191208505362126230822462336917172922636421883257035328073770261565664854509432609003556170229901400608515196 + 54594747011594798877885888974944176740233826058214590608446121481719016646101845365461669609593284564003581366359995275781810124519910313811380876256508679688339828939491429288889804388749815124253867496416627880709040603044538402764027705232404679640769755327219879688706197760711345784098387646185164981152 - 31449802613073682797257425139131419417588192884433609539928376773383346328101742134248510325629565365298437902156586786944230581371313578612449753268670024177152333713470507828982714894227374723227899934752245499118873909871643883739539742747200765153224975710081093451787655817266736145458329023747843360297 + 132783808999394318707408962088834983207010415125168788915872658758155889296838532193150695880199623917302322850691457856799843846471181568246727469377964494204689790089312937443605415487457400789095132034217110410411016988079403293808537223974569707930874192773033393470383855778863425429691879481694667628909 - 24046901626095895679816597945607311212403525239995850573241184656254370764719651915880942229067459392372913232451799155395293798882992625761937473873153502423890736622586766763795872931503799528290427421747236393467366420155132576017108972252571854737191517057107119000077313989206985638792731956505981706798 + 9473430635930700050486617160141204494342095550189134899476751191276019107931129114087093973056080555668662930307913633328246702572209665502366737090850431132340577394193612418080423291630390780237790223606432359088325373896719506291987815760514899446327539193574576164858114835145863147018536204496364575294 - 45175832503961230046015360947078569944511308174669274010627205837152263355923031460360917867200068609487136017032019574229194707255438267238936157298227093781866090322680638607700980856948120525143517256771339934483638452609457869091603314126054310638555434194657134665694213555411010667515926827636647302610 + 90024838355001075777783195974135066596911088933953254044502969121509346778938214241043930641227033089129624800092043075809246544470625613932569785625492513957934084324845138958744207292453298491639912468882105563813341034734148686353752495183156303339463108993280522860556963638419864094636988429994370751743 - 27226310139875595061545788405464522559218586869146317221006148013240284964686677834822701333166143350393682277077841511590250822499110747742693496232681426234740573959099299323631804367485077842063495311347905886490364241276494837378393667776950517833124284734693981208106073674942158940515201927225260896177 + 45914980508142788475969536593414423447529386876252836641757988714678457126161180788769040893130014877283087923780361131128613703067760746100124401445607902733176021029401905908890233576832489405771907746137014120822037941005000384307118527309121044551993381248785336586579186345829608419256901639247803554604 - 28061030032752164801968067580170072035179782094538078442993446829482618382199841587780304480987658363417992707765141978367745403741272853169468282987262916058066756117715451557465508245153549381212217078275504206215654107054783849807504784914064329691028379646444146221420807715386913209285477170712492499628 + 32911404065014905616571735182748738235851543040766582724263411775153690607184929086994340376410140178669625764641435927432683863591301353627927154715686151567872995056710033783341401210111884942070839872351093132272880604910175334910646752963148483903851675232134333338877843861382949858872798355076941765109 1 @@ -1056,29 +1056,29 @@ 1024 - 94684004306111857506841112997261544480170843980474819684454351726404536462307477506168949707131540890820127688938124464318983598656261985060474394464444104662851771105569910458875690156971112007686589137184650027225996873453992879004305779154307234416186725944747553098765878314910767432398939363070193432489 + 154218268867696507002031865996832738977246724680896068886617497685938467688459935868916544652628785991317792030286811386804084216509428288684761196875989322260388889257097276677216400072227578520525641529006704269719639306215286673007408730828431211470630255070235631883821820735534893283207489831811866541573 1024 6 0 - 41813145478284531524339888170688849836993489808773877061381898735431270330468430771009301788662385120899147678167321573709618504876159814346635143345363712394968468974763358047056541628004679516114879569313531494252386434132347497962429320391260372741017674071011042604271806756255040001608579498316923849593 + 27428799928169371477008314260818876148937722875877046040065001415256050285544612261240610068898749426541489168818274025311879557094462504325465143718226701031270459513481171715674711056192203762896591318737473272520615104809732143483277690473125331986133481516425478801944037361281857855867037438256343773679 - 66985412989141614286302186698499483703029319437106991649103297187111727830751850293036846281738132181703909496240817794912400219147438773406404404501967357891659448492407736665354464273194466557245973728459910312238904312073312671232102333552915861810338965397370533857859494752184791937326095095137600260354 + 105450822515849266246824784593332752863996144824625198279966526580096181889146860866466836912483527896334247490301097916546476481609859267630501968068493335890437763132841945935390933265030348476193713724966585347250648751479602155322327667705579310128424156557476020295924929348119910434857695122123769715348 - 47312445634335688130580705786493131286510846896090168556933453943379704950126824709335441743633692656299109794749138042476418368529339230542721236120630910870410825198394675989175724057291495828269337126435824903651873397607780035162801925793363290999747965512990162389907925450219773635717120444444967961403 + 17917586169419969792153843627847724624582303970451816452874219660498616008632452910042480347537075057133325092544315346979734775101435525533629606020738633039620963234297245636824119587829479049303232294479234284130684993231299911772911374146097317218619653947965414360245657311825149559284315208240541584049 - 26680941685059982265916590861304381368349841644910847763290590165644980437512586663772588348564786395142074985622665652147665283975844718675959745082420493895716957522519133528284438195566054958860953512709923937286271601444639896244630126540024459226060622212289739313704639649931735161505997395694497185980 + 83614794643827277304010494713733702635853026857962232621115526420680432673836574945397242148810823271595098760695291447287587902753143969200514260996554707598388279117974226336910323931721647138761776637137666044994683003226962992826724806567215542394880283109239037221417111570642218445097975627548527092539 - 74083443550392038622058019232286521002128537943817376082249256877190604066000435323031376336866028072662736957904562553741115362551808059312277922794883095838735071899792161563043461419534693122988468859364640131280222420706345691410443643331380352418667933129375191851645103967896117642593878204014509865042 + 98025334882817542595051261918088236466491396073054003041122381828466061599594157519317917789905097080123705591326984935802933433391754654298972150414662017901502818342450898330664054579806253102093229112778500389727696035428993861323041972409204375141288230032727654233984733937127115582284964721572192907628 - 30557934325334532582271071478001957018070185356327913496618682277547859447967138146722346701435719877241149540478472366310643131902542023167448548815882595053911370946603870567964058986679361070823587016887587552099878742317560934642428976996087168254547665849214779296369547563107675774229435656829473513432 + 103461867044654386108007921528414895482662948754475387341985070060736686576950492180848716520576397704988373242928703953709705994705234961029080392502757613196202086877221834313994327801773914413507546181585432001324248533541087174089562102726527826866350806480335498036140946354815641124317115290718066663234 1 @@ -1098,29 +1098,29 @@ 1024 - 127727743954354624281854745476887090335808566069742443817890352306117585796239126022362261263079819519314090394014361647646460805892494614420724452999880429561236881692111401169717707414124936138355932922564368207508256915042248864594779846067983034559994170386441595183852296112119579847539416226299289211653 + 120098847776259535343644334068493409247155794818213113642226621008837548248809756144435391881962615325304472487122528549774300242072619974184058684501061116769021957277559333567971936578385761656133295119311274656165996325688816719676095627842254071860445539705183362636859341285726107647847880667038640384469 1024 6 0 - 38164224196132104532329483574437124604055028410291615521779477243849960655602119853635308460253142535900192481558061899029051510773421915505181034038040205053976600340395226223552584118692639276068809035773829056879281287542819362565227716773397503446437660962198956566256514393193806524849148173695204924223 + 78341596191867165364462798149613513767187976045933270925524314074332359105916239984156112944388741605555584315673330918240662669972383036695380216369645786077675668119525313091263106903931060310783249892173696572488213764160500898695655888234795022024571259931035380458667979043363731060752523060256425326493 - 110678530127192027271644996149003445969262072382022151859817469310732453833899229470363319557449911586003069509988091720697116396999513012913686700138918399808920334993823529829378539506175486461505670850531128082734443433833237420355314390270799453960429479062564346339269484877851018621073091246726296041918 + 92197697267850835637041615816893083978440979223485010849369520091954329556817022954840969220750091574955501530801737742911131398158522167774789346516688492204741057116830688290864687904235809951324327245011263476463848478977798273152839939981363192465690825435376744018481972214855855772912890637337396617871 - 122548490956895798346580701645021683468493703155724198028852392301507630566051709653966677479391148249019113594983455772425222329689492967526169663910403291783540669836098877872130493149328608829969126991475661060234359382873009916476841684477657337780779843037860445806000967591640647467157452180419336440064 + 4748293030592378955093724566571489011651125070696427417853949295886768378111152102495476227775576523833542397763054262265966439448479602453489588304595952626064095178127493676309959239982750742094802606536171334162655130645407695836907472484934442915849957480725551564249920896993846998541219569493436633204 - 115049765164512475615816754723709421915820944110057140572079223148858284078493729853694322750937204306066347373205296833140390979619473240003424221005440943252946247163179631339839082762769031171800431973311643442309923874949666515334367655281859772013653858842591796008806616434102016382825819024401335460344 + 104584900904542556799078527703080866806316560026256596079705108220072609345471701770134318641946110143937813605502326970885364040335672893811516334052832715982398959853556119074396097391674101956889279124105778371957287930683941038772719876857983940733827806167120908159325650830304989434548687189098427086091 - 24473572867891230766459628437908127183343542625048075648139993688246520961765676225141015722308250646609649372811767064660575479732024522516576703257333821736317565819935529241994964671174856884596066767646349413206450874945566058276469876978552642627552830542673524471166381537681830302599987521202991056916 + 91477000374004348014105246188180409651649243135776551322813142142044628230484208001614477763449794744746082101984365227478095962810916246503069968738835364911647338508489896420278550004430041982623071421860079472688566117689119362544066175205618057687399701666608286724650867268340276001512993623664623275609 - 121681456438779282590844849528459680640771312311817451946372654804617948881697814947418283630307162863219078621980522042948479034075970549463192538890581557434181542676057282587529357950472618576160067047151888130114895592153330967041148579160247158143832010635353491887390135911088640467337273087059507194017 + 27335022029071511973872915368479831202151720242800820669365572158467591925687227633305136848793235934543162969534704442560517668695149887836214069200974132339079102773406068766037767764420212459478276529948373667413279044542607587605142289772231063326758841771162863193523221664294299814482921047353670436699 1 @@ -1140,29 +1140,29 @@ 1024 - 107749505110219293735979142621600906412060268221095964958047755054026889014562032384740357183948942425034845634341718222816289382158342428614326831095853091684651319425403499920271331624120186696435758082078835771213653665909961668175363666309216938446744591705304849284719196276795882657769948946973809132161 + 167849747908102684615783031952151303487318618058226134276355868669627336908402995742916429082816062902544246840315676375600682020395918653886440543549039685487527686497944229453172069154889512786032054308546997135806844060341575216655718028005098196791080486235476250761566643135320439910817103719665970114189 1024 6 0 - 35641763542538072741522529757414549050982531654163758594796572814515332674264107217382876227414938150895794246663213699203676045040345468365595904518557216932736965338172782300662556342977609863343254371250428708891065753017339503387158828908221127194666840726277519886534325430466409332054289264640169277844 + 124697971864257013069199803276420735672381775609467161633368671004811398338592994292357677388507254846498502768389738866111523924342131234320910182832156897093603904400854292861082845611922732284956492433793209240106822872232125951145778177387397679039918621121927819973078906987741480262525622005602565399227 - 51516953028966449446491964497485751517990094628891894167852992419474152195473677450115630109656769378494026370993046135905409016172357252608391232821836911141770346398361516943084535741619501601620828360646455885527609024954604847125816880742230840305389082240666983369173612747169877033987337057571277486908 + 108887781890361525299548949264309573612532412215054221866945026350960909252554790687820537292488822159239096136095460817189450475839784419203908369203805504902414189148576907397548005367318289848718165066768409808513010231990171238509327686404013042691377114557387525251911427307934702480124889546002434153883 - 27524154739611696404554678600200022524307387187913330804982598161151693948859012016036623758443668517076661729602221235091099505199024928670720378443021686975221010739315229994281385292748497564017937013704629634698304615102321124160754148064847705580729356980912869939320882633389771287388187641972691550724 + 99965937256071531833352267584518740705187568678398481975025487900445929854870225696845831801035897840798993192645749908958835960887390699965754669201895122689762609842067032782947025374191336414827383420980245403487860703320619493841364508653990560873053561052051848165272882782658715485304580849894447481984 - 103377113942637790287003533084222224091635314875107183584866015855151366109148344152031526934949226690062760107225264806479505653533683391861954516724319175283894690835928918195415330630293690379979533803005112548786693580568575416145999408621762182595356921903495847865510985584950381585268423739186644819794 + 135464487014068006350241183417277199933512080629319393539084556152088647569462879342427336794694607292779308330281931121306851709112290516904611886868248721653328973827011082831762202172003407136709090048796766379233700381954200275601566017619852103033202510881086909114257203408422383001855075728038739087666 - 14673500808702279959267062967735040754333506548920926780094883070331750919458000285586391469687032554437676209528650776647628681974602751606955902150200789053315798988526116770065473921424842764231711641888281788435107438350932690834592578132496704763814673717109277628114653974891957529423081709795618347068 + 116087460929649477650719239236850579624411409915463138669472799334909075618371332653913172377800254417621211492605964716808216033497729198457377469580439281611985552152638264761588841398460105860435413320874653840732276755863584448068058447432518834882323032920701627821579231087160538498920135097072056339130 - 38859009087118888846561310819205669852627803673345854898080307923291445412916752468089587603202768160020948351869132135244840063989628351242421729167402060220673267655462881686556526660062794364572873029867581614425348332512100620476340441607712247927956176958026610185773841792228062538690034354280429985168 + 87022481899114200452477329439521478334907267121400160768484310083510672665816499561166856734334611173826744984646636728146751086237799447687536072677043559995690196109619136304467129246411278102278767648846219215263506982413472377610126752110280476180152080765605425555155921191279654185124388043571147181327 1 @@ -1187,39 +1187,39 @@ 1024 - 132805917336342357621340347406652851500160158358616478910647979991495279410794939929518375989150750446928132372271337608193443333865973093134231559072633996501463762859681361235278609969585631425793848655519125510571433841525692826089479555621938481220398806492169797461801342643036874762401113827812141565129 + 128057967809655946190316507735155452831314572900315216081434860144597217324346737671800302572587640910078110732912465466684478941477363845874613925338791275068167816621932721309235605381772586248486970010063355049965746801462578755831359666996420724229475198439645105729191854361248312605304734475323680662913 1024 6 0 - 123724192971345628283598524077771574642115516306203819302642840518434734884990023342093372590141717915386280139738278686607193677120717277193327685180610485720329861045086429532831247312816073761794696539180603164001212548485317103853221255907270707439711950418933701675350040464705736338361874491112644317294 + 60811636929475187479807521649087606074793642064167945690350627603203118950323257675713133373687111123714663109087066267073458476631246485001894677569393649603260477149691339449729864039552273625864812610179069562367245786370215607199308088083101677805342992837524421920973047652387594443568045299878715104011 - 14625429247927685090341663241649949148258959797292039323692281863043191792520221408569037942351234266447978782199478598250390786360135847682725454656794862494759779321288036136608651289809110043898514796554758669357170034489653566653604233508960098637358973041647160974378868936394566361597245297526090809584 + 71560986262474260038579847733152867125395323692136727882523150181177145526050032346646815633503819181049097447083396963116870388315714388861158191811280162852633670260478236187402519672391362381543748430716574725648848677812893437556332455280083345503039177361800148373565541695573258846852919928924249154877 - 64007057126176875784921548625312090381394744981912355585114232564443978202823028666354191570270582971317908560590960255621718151644865169079937946397430383552508870164313540570101112038765363492847255578958178618499930646151629515550809210720009750548884710211145008245153069694049417395148648829340938687662 + 5358493014159018151110306019414188401443366482533390828878588153924237270657211162207396455592545292115596564966717448066974022571552087820343845293928484045368156700279200787884399405557838594314421227423879077160333472477688129275324340290022874614042967407069455935447388415804019834527557283355835583238 - 103115992915880337411327588408688265150975095052055138397293144081059692734045417060416587664821844857318695820398000363692718875618295012846030208453079674394744433816396921378281051337563089579440046048625384540937518959711246975878537125941932878593410102488330542299641806404417418885309003319570534438453 + 9440403911953510704955609199118462522546969159294361115679964001969095067128208202978671380235142495494192920664243060842431049236464627103331285996753378993464968648353139689202039972946351834805543874912252883016750152554402795151625609573033493183190907610839726606922080056808873159110535921110839225918 - 119457315332497076188739071965563333761790600794685011698971978110574170937694642037185938145352267447861601656017195376534888030612146228692269726722534673032982839555108591230005930224550822365861369188758542352070280899039005900661300902275599304439000283009496810058515041286869086152747650395143418209695 + 34601241858178235153992489154363566911322825930412755051942961530163789553279237024169967243263931210587905323687670939702730687998131084839805896091785126613296047470576600055262500331821637746680489652121076447750079042944735474064557177506619768477733608759334395601504750316910835074596407622363931297695 - 97738799315708788763206134320050643392532463560258106306083499059560293956823651670664308620427613476046927360217377480809698815484522143039469284490440932497202203091566977872700143965467171603897734591262817015477036444327217869465633675102793500947186640843443170349950215500682011284039501098188488514980 + 103450953660312905541961327136746359534991486059040490771968614429013794227835017626759804639288113432551732347712210332460709755012800755979360542019454727242090797411218789006851073710562599252458946620552051918314153874747184637728072116094587384838416002546398982033848043597058533784377942968102172250659 1 0

- 13384863556442163322952458250977420071347303306250951371869480166206360749972742447864759873951415001010653138692615849046841726507827289409114950044040247 + 12932030508236240029500379006897241129956579101695632927019316457384709196393771888005191041903025893215144948249883093198348475278546477203390317270105679

- 9922097209009096465140505286723232344813197265640635285799288755528166758850118654231004127875732325223233807063304934221607752104237886183649175903422207 + 9902386769664478589840240464665057831133423813801796716114600855905375529754843999999225688343006241702587573209999717516477696656645009688715730598624047 80 @@ -1232,39 +1232,39 @@ 1024 - 137372634310161859676135284402338656224702625790752326093422619912065941056411155016565478217907728879945260871334556369999320378181012769399229672757185658932449669547994359702315835117004920960039833723832775157892486474472871781401535566138599328187388026485937842777690668704923449947159362940419397279397 + 91338861134529173742636614734321283317712406433818139285229062454925111527732609262828687047423080667973258817589805005737017416371360314088086808443898371429020158735259589920882443779130428607594850787634565846387075036083051955856286100630464641033224957452092909212599715224401427904042049536509604893693 1024 6 0 - 116441115010520204443701551044388141672708396572634839287898503254446689571343162226795875092851665648107955057536241015609708368366718318010287460951620183224189985722483322655563646525334936557072068472012436067191783998514083593670357905410483156163550019788757133637004401363151527763776723191808245083150 + 88481512963655310506095083872998303955363103665395614689748950761935149130592150567352051526842435768907883513122638406071951993833483039104880894260670448994086429616644971856997369229550170174238792300740232364024915015016653492885640971890845653859579668498528250516917066920672069528744730214455335881003 - 27044557351618142662356552877489107755687685627121911493229457826128074471372139670480946601583473364230995461783264153391465908763057631990861033738028356787438011645743530045595363690544107938500296332245528760556413617439234729949411192040200982595365086278803028719387624406149566721713663632397652758734 + 71420609539497237732868765033013438071208066944625734387424793864620282249588182875061993503837717471514509627177747945260865425509223920765478106067601828682271744524355493795121669193837190303641492443480194307599715826281960573836394123684702869297115710345424755375986644023739445330856168082010838417938 - 18668480646476250585503852417335962920930545198501147882117553235027914985366130789840737981562565180298275654871023023936581742688856218428559624653989709620342050760568013862082037009826528078528308498338926463622071936645167033131204995449391746215916468228090340406579421220320039702041285615945226682497 + 36213374277915021187960501154206429350509009943784937342853640962344665273661370341432812162660134104129081769292257555453657933322026058920570002011215114885632603237420344104120014493999772566832623489577942137696416594059207873047026684531831127098662368796483679106715230357303209903005563129291440998125 - 124831643773880234485522390232602697151624554744878469357280937852918545591277448221883189230205072357252134490470478766733175680960201808445712280554760481792295061585139951074758260903784531587541999977882176959445583638063216972509599746798664421534897232964080914317787532005374524315535445105635534739855 + 88784875219103004490867409187796580439336028275646934064032325734642172796350750877782655631487263690600595545185986973949637793376040039529334242727841787186152368722684829777472113434707623526142748869410906573019822447060135044716736888756586491608663760971724703067383426197232527066117239191970436021914 - 59970642815973695149052494697659654637535503354257025919678495841553238031034885486365545257363298700332014605474361404182598059404831610511163756704140132090268579779044407534827161198033244776683186964741076946492327722988775759361482746512239360253228317139110005567490550026268269509261260489164598329675 + 57669682815414213701829150785790139820922208365396385382451270040015047105011059602270677532141334599848749895445377163377797098101769663138915670832338561398070313576223809679656089041902001668549387570675942187547921753080749715443394968434937329744189522351133848627606864859717699163427995004551470140014 - 22923915272163963950857605925330142022074779916236347548886633162654056167070402255377093400484185256137566072514608718416367258335630496123774726992155837700585510673044223219699749513900672323661639291542257718222249838123282120567272749819257073710511915155801225598478720475650206575779832514355014487626 + 19430387956073665040008742545168228237366626380409449215616316415682054432029605888008345798193251163116713132110293851289775570086405711097037612492724618955613522669964620645767675728759532995017555557036656920568589220029848250912688353596366989096421783410644212433994547565209779383923475304673100010441 1 0

- 10516953854195957215920418989214698161452474081769918026684971214243445196839612444605885055607074928941932296923395924708679567920201588472554570885991423 + 7590313132316003273918078590302512319095378293744922263631882454117055270026174894373664622063534944373597887745176839805114252442895212090845009070876059

- 13062017406813494145316429683225609621025324451653771268782679331113932572358409228199347215573073163757686558693301128497363343749771624966776957706069339 + 12033609093892453905143611421316260116392442619100420560800021219786194165358425170485864622027203788410560571310992155037737755554341786034296519732793927 80 @@ -1277,39 +1277,39 @@ 1024 - 145833845432288909121084926233534057685357293274340350126668766405212197351890804174287842353814414753368096405191002821422184530789175512390729502084743232689937559449075513447581521298005309418519751610349842123168680301350588679553600672970038503825238594562290725630967833045040620813816180930525533629921 + 171795367802537336198216850040760302817719433285673072064016704297509263294972920968862879995019333546807716681922194952612358665832924006994420672781322683935998563828829629166676961578310364216820723333284118541610355614763234524893877254301205676826968663616237843247997193664755408992255295724018758287453 1024 6 0 - 5614206228798301098336705931671638644909555489877769303373552985024454467948272719941276640621802213319824489026627166503592953601271862091261438770581967429841000215861631061086884950337508297975792991010971325252918140265180480069954277705396167335598614372709439485252924902184204172397796469683948482249 + 138781939743420141798085654234587085378791442750844156618218315519623156030775014083940843628427157991650536995512183146050090364430217798889903276779395691314769341501283521555441395248293145295446229257598584303226472282606025256289516823083353133125249557574662930559464988881796972570415006594877835195261 - 77829222239122835610084423738321562150497279446208639514447460343866380070175601047808125427733325611930916432062196605539354365357794550584735606610432247740273684874796370960540670916977515416987155254054153328167529316792368006397532847978034025278821903835834149607180869130216088411657110222021618483674 + 168420371175596160385314346470541456127930556988792934601264980767954150761074401191883764002057676025574635595559453082438403114835695017344400960903147888338845250647685131378444914574667053754042483424927960459645361430078126904416924147233083786086593890435155965855696708192722757613306648217414021209339 - 126526668999549527105050115708853820539308975410043121964399106650368217475035537783616879716348093999454486886707365887651216832345937994185160915756008992749761345129872838686896268682011102041005029710003412657931850689656325888000091306838802288920011025039877500299503261395656474277902595055003645939377 + 164599507864917269230220181044130466242640054454386799153052272100119238662434506377210871322725801768535465849520862187042461522458751851837119010844326508994699806461980159073458635731317238484887665362257435016594387971946664996341942792674855452076757886270233668811767159399329679444242304826944461878356 - 39519547515028449055017861664894155862617764060490711234501925837865547671173429701804910726363843756169165093168047068989948316277502727839336504944846821161828359833653929929545581648110770846580090891357587504044246698977653720185664161165761777760965438539711667531830065447338000177079619272633974997808 + 112022954554594868430694861746706902810007259966892035372848716164773714721760248918761857377457366770462246217862095078291990529093104794681337350992919876990886726535142991553290065736768419334005963502455897767959870639353796998608846837617297713305741565185682566104560690180553705181428610482999491959762 - 64911171886091908379987659695928798436999618688156351616885354569475319404854703300389871388692848749447706845284633183118607140873964829806267750277059617538075740035634698703898760746137798807795759428578283927848978809795704455781269250994050734576159373116072199698554416776935114764908963304498490630504 + 20795710379390313360149837901235593902809611922782438280826554162582584185176550436631972790505407403299851110962435492486911884529635673218790787915570636384717044595376003628898518022547995524968409598599237503027024128328270655662334146591298270627006489949537312823974893037600566816074625503584300399503 - 46337737440906880658350695547525646305900567458168613888364269449075743635956571509878774476192279074625591314542016353903902280576521867929458581523010335829319495590409102271909715542993648132948180305225658201466190786746685383311897244330788754428392449915461044438929637233785244332939802020516997653890 + 4461068203835146920397273122878996496925951644023334909782795888195924230363311467297500231054245083629066539839024032350563196843805187870921285704555947110972472049763739700924273806542377974583744547273338787688284998293736197541473212310650426901783545952048410414287416361433915264087521382790658628498 1 0

- 11433764776710887644313307473143211739470953398100578362765074750279421702519343502035319397892519081434634510608848725022778926493880686061311307529867103 + 12984815465718139976464939024875001723229509524339667690378713583638428557083258852077827822717623083472588218407867051847898495798522333139201280857415519

- 12754665526208283348644128814962849642731331257467717548123984357615435694821301803974670523354845944657439610208446773346423677076013726301181649046473407 + 13230482039279100231549510012632674263858285311407266814423211632024536906105987751850169694421467822291911960770965201757888760198835329800602452213646787 80 @@ -1322,39 +1322,39 @@ 1024 - 146080828996844893786930415030267236937465501130613168303735364618844293026036288220097635327009673585003284120262747096635449871857553308329749899517971369512993356899511456706337957628017589622952308458223073708168002051201346250296138111717760726492689696085001720244510576087189788400173594849773775987061 + 107678493864345648666726963381598843005045134906745773568855127179729298765945796229988935480734186762723475076589458553114861073591179889992284613957887798550444135071834300620151269193028269405467525155137973905598460168964059816679287733081423902287277428322195154969572934367847409309681954541961841211929 1024 6 0 - 12143846516438032065549326588564641993076335572135680144319973070565227510388555878816485541168565333330331360373203107549711159307955856012988849600497784921648620670877827610870429166714421302856006331726388604858639217479516237211099294053777590279150366532220218255101295698436049419849141612097902640451 + 34780567649645587652662047318280460216197594322629290659397343806640717111602043777551795972363990570490561518129361133754971748815062877457811980871870613895746761204692874944262181605786891503668206019069701677551111685254064897625906904673396799614054762342291638726110702862138766341205373553864835127477 - 130110283334213982281592724744587355779238888385612173261041558390337170888862195730988952587123072858116524751419665014046802853625023209193025314170209762095895716630052691721289740627897735112480237539255012944565383695831051013027460838684588426430717433008544285106825419868548234785369723450095304865124 + 76770578985664099191449798911850613016440202975139749844785468106943538467941487623782662375335620379715667015148235397661770125559100524256505138827952950374296533996410404476470347577736554558794350087928716157046782489969073300743386412321573188949782078100848155826141059164451205262811577282438487833155 - 28936184033269797712301045816156985323899945333237798274523352177150263697445409224159438231819208355168670625188283196276111898818482147589072075244562000752484990678046008139123016667919771421087077668072425052038197223173671078453038383761535748778879934180519804845917837931720125662698639707169019951825 + 19375132007991059652876546182462672768720429677050803522934111565324016495763732172744623907045335493048740541182304274405106110493850369225158004210873483104238595711350247509966292622988932139561490663242014148110393502548086758118819001913181597386000596861820476450726333113377798106479230138706277155435 - 139743313044528582631657668286088123161464964626310113284683779085342948598023633133544825825929928312362129974614186131729049145084732952532041531975841926166858606672969874133254866846900373891351537597368983313837098495423640205742172752175958379844629957134932742930140902857501238693610132562014310099849 + 60332745111136671951489671083751897003291069716229419557442175701860610038139875996851654495020782497922916125497030526867835842055895873784260108184155213565134969114645958871640895775675472360543614497922018081777590790520072701770098022598964534954182431602697737796983390272144688966305745888541862833949 - 53044581730188892877631548732096143188468162339421906645278191018430149084642776390613644404189469954372875388873708624934832371281884377986981016031495526801835709924473080917358419053075051086050983722965169085001326293901098332606081215826837456256432766108294919171060244900518692093178547790827213354457 + 33206030625501357397902828493305862279894195856045523813806319914644617357371406587381751252409214237464923457683937662308696252667537129026830911327626477920950026367523422037741403916073653057335758700270326029776865721695045422550695292453931419295319756838382198216938790815705554550670037002167896435708 - 13720982697614420642042383264268813339206827429441510070099063031077866574985037908849971402680608542067662118645382188812605442192530585575940209920553520942641967018589809365098731467452204409869649415457166095843163238375083308117631225271409506085279102769367813064999165660319126220444280297921602368577 + 33699591887245320183352886957374795158953603724548326397696125237452265579267587282433792785552885615789973016310923276732538075279246287329477093697179355796742915804057038950601496710139911151519055346593812515824483642829165138763105492040862107512334441962031341198253373030460133402288720613467576919651 1 0

- 12493492711183332270979559538554053599683729030245785867773420794402300221675894642818434063789983730803397982796207617918477674051272987189478076120912867 + 8086445429826466766976840778602128556427763126861092718555085428344325918560612728005964357058814370039705887555080490065308264985839108620298163559066147

- 11692553265435788466377775542312669391426810033951519327193947944831637324422698077279540119648681098704682249147810817531550857711325868161365161046877383 + 13315924134871259995943889972263783197676570583006459035153156240747027875844241230942104155569988885879710233246386342305956396267067502039128111156418707 80 @@ -1367,39 +1367,39 @@ 1024 - 115562432164102251406622967052071750807258172151285544566894218498931362209567346945848561669965827548724769820749118527361500484654503353982654831132691503147282822681740720558479928440623829908178283919727041827646963738754679445285325013831451162488739515312866275942511475472857933145326220132237853644557 + 123460587970465722399480599701446111042791049424678164510782348298178989524706869827218072757318065802572872977206189692439610889543998303448261820274781115343738147716328254096174904353808537339736300386924394267507766388682907861666597761952802807474810395363126049870826035575374238638068965983199376357813 1024 6 0 - 1918843058365060902224156698824791077915048816126174273828173328827925146094242787808159127789911738230990921536461350767134197215631858847922569466378620788070681199103616323592972003068116871618652298189097954624870678096346675641822861238845361050835764226882558875078705801193309174207649691981387676761 + 117318302352368229229163809607702479318456428030157262995598611780776136494163450278418011369672196225024705223924157260734348678181103931116903595932563324645629923260513068155684589997607606713365161836567403767936006638718885167253192939940642824452024816730744123545240701916149057716603434108694989710429 - 5633663323728715862831888845777946094661002864544824727134600431003469539113905131778031633116781888360230284434775486594799461335499354181125564310162945192736493983408607583043279052489225101857443790367000861445428439571903674899529423583149897600345297997769124326200352679791494774441424376422975993023 + 79166656374368484214654356495255053395213742590584206280310930719755653489957925930346542517512620192097650425359579247070837443830862748231859562053718573394014868991678211219437490529223024342458612272327848652593110612340785752785585712120010687405752536405399684337596148008796260805479427829450136814686 - 92224572490734132466871405475772602483548793692969421833571278855151455741757597222662182273880403467624396109857103285036810071642000551787217955918908430643545014752792961549564256530725754107414785146542687179641756227242772610219435049498467256907877773547533212521894936045955979927225093316843447273624 + 40871868938993875410426205996751811587721008167871813439166564189762055623031521920195950886062485740929198925966775524584648439881883879228755988003547754790287586711275993853306093079373185290320968524077798129432974504079981251722944994855192019937284992580655570885903256271403090577186422692725459831875 - 66183053406824854997955985382355384715497240013453258897437176350763562425331521822435595550265618083659590969116645425396908998848723993833538106201823652953927058335013828106360478760501723552180389313206057782227500096729295807156679165429081748514586663929593834603229571872339167803106406082026242486247 + 89892620900640290140283566392805476442834511036692916092709883776370123872836264775868321860590685970283545083118729182759253902758383167687729739268452078465233562037688700620432639773342196188561501129246210605848453748122752153274263445164184465697547705606339433632142128437959746969173608800415728397931 - 69743124750042509642467145074976059009243861971684272053034970423993683530657827278165993761800907370985552130382901391446596933005528253256387440804145356085841981356225970618247323173456846551942037337211218981373022884854505546817351938007556625763760451941625550568126244464144092301218250589930964771252 + 121709777035471737364513670422914240357059445755508125094002474776054087244214559702633254647901247822895427221568520569724729995389163298559564480170015494003587855303221851200035414262844476231232261394773812801023837394666069091883472673028207084029985001140015089782123008327089253959339518752984564005371 - 72915756120647370787512976134911056390045357692685473282250206465655171985686451881325200537334167943578623112088025120468788437772822762261349053705299070854344523813062549426226658609713960083898353784228091780561562317369856737756233116861220821234249458074025030344466225233689070112675547477388012361378 + 118368291349285147157585550327202423335817645258822478079337019930721123815468331635525068128544253736950377216631099734999157547924851998471340790034858629390897530180532960195293567558086925678406847565038276833217752653830262850771875793504960255927890257698780412927440166594709334246027496966288743344300 1 0

- 12113189822927171917747077461227561629579433288786188878566494896649974610926449598944988710018811572259934174588237955489017835938680313581298226839062219 + 9555708939079495611355915185979699054940167384681225047725748670929850843599516084564504017739835259712298489561139897471949689101632199222485821907536339

- 9540214745530703052602614329672114296360144346165078233240673810509000843141104476510595240420457567833307788137793450661014218709382306011850801095444103 + 12920086699748173672215351475621638389273860195435770401619903340348767410733675655724985891607786607181490238978036873680082748103544680734516847406362967 80 @@ -1412,39 +1412,39 @@ 1024 - 111927356566104023053025699787625550838058397847053053322552127284788489517366540434191289811946944159151898144044517991896201183248020899355294666452275356580458700724360087814407783680353738034566389540489206594576108611637326536178335876673250303367935270215570934307497912954941670160094818547669559266293 + 115193322549187017758632085674974727024742715278872315780926012027804032179761766503288065034565716892785818153660349164554433828067796365626741896969380114418490544104123599167386238983295022270967054328089602503480562145153230657099035975059011144762714926206594556617956114445259820923651026107726741377073 1024 6 0 - 26083963272420992631361325874882186826320192111270492885447297527829930121512725063041771515422873794638132630732246178945827524916353536920338032942329648884862506341847807165763917740516440910242943041732772815639040483973079510498995058535404124602763024963637048513509262352040839650701377899779182492450 + 24958892788118393840566891402925212894261112686881756396217607457946596306978104211815943994414797105011718075194617345672726305027536665064724927900756862036945765691966423524893153682261745384165128816990435797199717205467355245097126693946214610135412865735012562961328364927779026079460708512689938357459 - 96349476044790960219277900737494348910404104317713878532186820315042836896394111182750693236907309305366101392065377818174119922772262450705915928502291955836072143986901878966783486955686515491687652827133207058317134666488154155770640867360263153123215807876346934189507244403619175620173481171524025037609 + 24288255554756812624762197103340158750190223778765519768405807403357684268583138358422886605098116268755079717463816662298139317595939687753107981126116196500860143071528623840509966635777831057754249172610936632021767758934196939105040316041127363794901161035243044698624148907282589708017305528332080549401 - 54690578151752424968627597530623695060322314333503222637738707156935596285996271874663061813880600223163657890492147882784449085042519744202705258571783341725890402018930973779086740363427426280862005142662828899727835119949559802395804426318658922453509773311165866730072879701477097084818422964205782730898 + 98573529002331715221466911082616318301300017750678680593832916072820765087229700809543111818625003499979817183312145679122909425246500434114287363675204505267732119319754784623466080567913652584576116756111506044251229410873182774035682045895464671545948436513530383740487677985431898275771829011975467387636 - 48548246442536242336650178813376090147825187269338203565219773463426768909891921223610424888168123366278860170690454785019898354608412222321318035320240409277155997290872403728887253361243526450374951908929982176434127615635172022089921656613960936488084542875629883983721976542934773414487851263961537403813 + 15353985435509734717647205939924424374297140311254436480413662376519872061599819892959995176175891437756042491481998969903341756892089428475760114248462830393435227191729623914880110584220456903870872511626091038462298582250901312945423814102221099309496784542055234964849111850334835617876760601457927418206 - 8413113823923925485688787367614707477657758975525795517827722017213206555788250307268244325721882479636008606295000856384190034186952886166588759610523745356045626108013064205521440618996713728008939728528935599492193135365285724053499413941300417129252635867240091199959544379912710341678940281432723529492 + 17455735070449738054682884370746228687686045089020396998083887583650988955042976829464912841928464950070337180970573621151968757420751546020224392735386909098113189353739054276774294071884697288831510878855213838041505870499205405393921909645992766577060606810395305981595413168173038810933707942671713337798 - 68772694314410414206205467046690216598864909706182681421449044403117172244107392479030110544064478992356950657658675437260300111069834928175128122254740575410509949599612145656885798061073750122226817037094964836568463944945479934451259985250499721987903002593433201657517849139533217227834891411340995860823 + 99078282433460334122518009685435268135390495565166370788375980674406524442600154170383521782130678737146346515697587435130336220692226983416874121180076768315197607852814628471856417469605509753709709939138595158453850817740160745949448738764045233343710173080910805476352529406131342795794391893459845853249 1 0

- 9285545230814175208263411435100595524047654027631834821681899834374877184982061448521038956716454217041218352384599587282695285925315242520173770910063167 + 12673289315868749623674662876792526399689105251553138253832866963657700201414882030685426404271074917375018034885700283434611314390001132581350346803957507

- 12053934775383136892747067774553082069477539062529530957973630104838578048572374622235664986486263135849198509434839037199331156566567604229630900604978379 + 9089457336458712030766629429550151802473559635837189343206196901440327945060996267506637537707282012347200095016039598579224618836771879940545740195754939 80 @@ -1457,39 +1457,39 @@ 1024 - 129247253695959703790072509914691217099002852368322468045795757340611236783965062669505460428210762504741229507573883904113055589574393037898320307119534601325006470049122917644647993271072364497135274094746214874360172173123358949071606257692363319647094023309480718209008941035284596506382336215735779493909 + 153256019031673973848391853908671616024035351852333113222956212092935054851555144537037154882131071118335109565772920677334385665987953763710322752551766091084637014937633351768184250877579165516584609222393690507834529036303945036774013832353124798268158248184389671641362425541416312746250270416649359548041 1024 6 0 - 117762663225409742292003907909356310395762445497211461079165975468263649230373970302717051754658639529032746668081675057812533532269905582012773970520260676258789891000845981509443336988580006031339603500190556266787092149644268028195165941794896901354362131862834598206683215509345587690168857698887589234574 + 15220542722079887934163021578416557040815588753014948049895358680874401987354756483638187693890778200226187944576153001580318905767308325025251868319513838639170229388887094978609944368236261084829465326382756814026047924860100572370509240911903760108844191920274365232194821110327754051188671927504786123847 - 41307676734324917289596188448768037242041561478666611229918508332376293249216584670403871893840311327117612839717795187029126418654206536820216938628666056443197376483010899927824631712516956909063917313355829047154852269087395692986828780702480137828937293992857398565122465372059669336909756576677250313503 + 143004036495287445500008244565089775614807488065311228319771443644042556939728810959906482515000410036341359319395672341423672298834030730662358936098971678898328809479500096931876973317120818472883465991015596717523641856810286626439287667681040066261020458108584755098587931772918575340120380122391279580630 - 63089817419614027949713869705443303414261012258660802756430718945673750293937911985030722540073735567220860290764744309902169310419281458073896754765094348815090678089662279005948235003153968829581576084867530630559125676708622432223591998446524862273768360980298243277853419634774064906702269062659305426330 + 25677830626343122473800267766987258667661454338633409925057452295050792502934635228012969731952432090824067546127184820674269109763072029928071755085679552707171555102523382002859000834013865264250888579699016146722510456747010192496630995123022435395781861793364259724814673958020662700602026307416209911222 - 71199445873142743890705311828426192993441595666700751966078671905336982229004736114861991503242913305495774688716514992606079439892068289110033526877163042238652945854618818253560032930426612158830717352398512190160864531194414597250521382878357192086557641764475531942766422233904908929408968343948911160272 + 62246636121089263731371807945897520167051837454698735241698439734694730001470335211863614247823007078485077900778766898167190790567301408855375740484748340320700390073275392868823940948653806683445411202776990790067823595294042946536030310357110325099679964532575421698733314704640641895828452919877756100011 - 64619094101169861260658686391437493165297845452472272358760304057989905431808036959407913033998903580567058744493381896304542424570477466803135163609233034624791665491361616919472989117059076521170734411692284721188464794534574401950171105972902450942503245521469623536413107373984706704691477763216841890189 + 109179195904717079139512297958344482754488860947001124419866306632211947700557001412569449694611680557227002345132253379015047209028361122554436255825724641792181226048045416132300441370043533054296640636019094847912470011225895961907747561407131402046285049780521232862899425601689434905370686341564422790289 - 6677644520806874248729709604946168760244903183951381719735625530119707560190818287421767756180188265855439551326384671573103541157197475833159721985859875315233932931981009410659195950024397916060600415042070216195290723111879774732526912066923480930549563204082983120980936536428103764153567950378551358385 + 72256199900300051197332501127222934244256559778006179914521739477500706464599171904600643790797361089413358501039731833363101680832368594873645195342133343135647784788351460716476460798313313942000048638227363109185805859595520325671335898545619147866290785844770980165710956429961244551737499380764677597447 1 0

- 13081877070293567144772392907238627006925879869965145211592024037074476968339728750851771748210736710346605928219186736869646018548035900973688960242107443 + 12342925706968186973716394535438921214235596704954293960842039701459560221839812692276085541622342123471691734600034990812679842472477393419982807837038439

- 9879870679220447556464714657502384107730265997772677436404457680252845162599412275546553090201887725923207763225634095749647052759030060561134760329575063 + 12416506642760835382914337605608007021637845840379701356494020719607002466778798575874134408246939316921404868882276829304115457690088629985078174708274319 80 @@ -1502,39 +1502,39 @@ 1024 - 95993586374937066529455162653639008917944416331769895672692447131258623823530601748524840575528704991358520416600542951520877430553404290694537271374818615310922199629418777773940917285970907448620026552905846347625729841466963377261529302788316386653331236574151237767948556621396949628879930029930854431773 + 135358305767271858027595880716111530935123928737890043873187024055476620530906467130993033452699358704424795550755169128359841746123492797756886097936671355386621176058979935393331413499392989299082084359031846630046001377108741347076252627789379769344457517235001038532356319713316214499718115421425871569433 1024 6 0 - 83824229456454055467034777958381886084070099575662029359808652417840721999302831923458207007454244578968532619690321777920454748871657405334691831931976377684607781703339528597558380460921586675470307191208505362126230822462336917172922636421883257035328073770261565664854509432609003556170229901400608515196 + 54594747011594798877885888974944176740233826058214590608446121481719016646101845365461669609593284564003581366359995275781810124519910313811380876256508679688339828939491429288889804388749815124253867496416627880709040603044538402764027705232404679640769755327219879688706197760711345784098387646185164981152 - 31449802613073682797257425139131419417588192884433609539928376773383346328101742134248510325629565365298437902156586786944230581371313578612449753268670024177152333713470507828982714894227374723227899934752245499118873909871643883739539742747200765153224975710081093451787655817266736145458329023747843360297 + 132783808999394318707408962088834983207010415125168788915872658758155889296838532193150695880199623917302322850691457856799843846471181568246727469377964494204689790089312937443605415487457400789095132034217110410411016988079403293808537223974569707930874192773033393470383855778863425429691879481694667628909 - 24046901626095895679816597945607311212403525239995850573241184656254370764719651915880942229067459392372913232451799155395293798882992625761937473873153502423890736622586766763795872931503799528290427421747236393467366420155132576017108972252571854737191517057107119000077313989206985638792731956505981706798 + 9473430635930700050486617160141204494342095550189134899476751191276019107931129114087093973056080555668662930307913633328246702572209665502366737090850431132340577394193612418080423291630390780237790223606432359088325373896719506291987815760514899446327539193574576164858114835145863147018536204496364575294 - 45175832503961230046015360947078569944511308174669274010627205837152263355923031460360917867200068609487136017032019574229194707255438267238936157298227093781866090322680638607700980856948120525143517256771339934483638452609457869091603314126054310638555434194657134665694213555411010667515926827636647302610 + 90024838355001075777783195974135066596911088933953254044502969121509346778938214241043930641227033089129624800092043075809246544470625613932569785625492513957934084324845138958744207292453298491639912468882105563813341034734148686353752495183156303339463108993280522860556963638419864094636988429994370751743 - 27226310139875595061545788405464522559218586869146317221006148013240284964686677834822701333166143350393682277077841511590250822499110747742693496232681426234740573959099299323631804367485077842063495311347905886490364241276494837378393667776950517833124284734693981208106073674942158940515201927225260896177 + 45914980508142788475969536593414423447529386876252836641757988714678457126161180788769040893130014877283087923780361131128613703067760746100124401445607902733176021029401905908890233576832489405771907746137014120822037941005000384307118527309121044551993381248785336586579186345829608419256901639247803554604 - 28061030032752164801968067580170072035179782094538078442993446829482618382199841587780304480987658363417992707765141978367745403741272853169468282987262916058066756117715451557465508245153549381212217078275504206215654107054783849807504784914064329691028379646444146221420807715386913209285477170712492499628 + 32911404065014905616571735182748738235851543040766582724263411775153690607184929086994340376410140178669625764641435927432683863591301353627927154715686151567872995056710033783341401210111884942070839872351093132272880604910175334910646752963148483903851675232134333338877843861382949858872798355076941765109 1 0

- 11584124495512725645750254070004151397235431960197950698997506155994900934855991765691043061376387584749228555244927245784250963404172386615517446654797547 + 13318107756312790859351398116542175724849222734068960781305693360971589188723148557676433655469259538839570794714793364814074380377642061943802625475030007

- 8286650097046310145628376011970887020008693692489576545648941788788304647918380756171984084142680168440231134333303978377479157454970188552258529292449559 + 10163478794734330182377840913723115665713256953124119469242480062221283140639606280259659552725660927524440315179857892001570482716740571281058839906999919 80 @@ -1547,39 +1547,39 @@ 1024 - 94684004306111857506841112997261544480170843980474819684454351726404536462307477506168949707131540890820127688938124464318983598656261985060474394464444104662851771105569910458875690156971112007686589137184650027225996873453992879004305779154307234416186725944747553098765878314910767432398939363070193432489 + 154218268867696507002031865996832738977246724680896068886617497685938467688459935868916544652628785991317792030286811386804084216509428288684761196875989322260388889257097276677216400072227578520525641529006704269719639306215286673007408730828431211470630255070235631883821820735534893283207489831811866541573 1024 6 0 - 41813145478284531524339888170688849836993489808773877061381898735431270330468430771009301788662385120899147678167321573709618504876159814346635143345363712394968468974763358047056541628004679516114879569313531494252386434132347497962429320391260372741017674071011042604271806756255040001608579498316923849593 + 27428799928169371477008314260818876148937722875877046040065001415256050285544612261240610068898749426541489168818274025311879557094462504325465143718226701031270459513481171715674711056192203762896591318737473272520615104809732143483277690473125331986133481516425478801944037361281857855867037438256343773679 - 66985412989141614286302186698499483703029319437106991649103297187111727830751850293036846281738132181703909496240817794912400219147438773406404404501967357891659448492407736665354464273194466557245973728459910312238904312073312671232102333552915861810338965397370533857859494752184791937326095095137600260354 + 105450822515849266246824784593332752863996144824625198279966526580096181889146860866466836912483527896334247490301097916546476481609859267630501968068493335890437763132841945935390933265030348476193713724966585347250648751479602155322327667705579310128424156557476020295924929348119910434857695122123769715348 - 47312445634335688130580705786493131286510846896090168556933453943379704950126824709335441743633692656299109794749138042476418368529339230542721236120630910870410825198394675989175724057291495828269337126435824903651873397607780035162801925793363290999747965512990162389907925450219773635717120444444967961403 + 17917586169419969792153843627847724624582303970451816452874219660498616008632452910042480347537075057133325092544315346979734775101435525533629606020738633039620963234297245636824119587829479049303232294479234284130684993231299911772911374146097317218619653947965414360245657311825149559284315208240541584049 - 26680941685059982265916590861304381368349841644910847763290590165644980437512586663772588348564786395142074985622665652147665283975844718675959745082420493895716957522519133528284438195566054958860953512709923937286271601444639896244630126540024459226060622212289739313704639649931735161505997395694497185980 + 83614794643827277304010494713733702635853026857962232621115526420680432673836574945397242148810823271595098760695291447287587902753143969200514260996554707598388279117974226336910323931721647138761776637137666044994683003226962992826724806567215542394880283109239037221417111570642218445097975627548527092539 - 74083443550392038622058019232286521002128537943817376082249256877190604066000435323031376336866028072662736957904562553741115362551808059312277922794883095838735071899792161563043461419534693122988468859364640131280222420706345691410443643331380352418667933129375191851645103967896117642593878204014509865042 + 98025334882817542595051261918088236466491396073054003041122381828466061599594157519317917789905097080123705591326984935802933433391754654298972150414662017901502818342450898330664054579806253102093229112778500389727696035428993861323041972409204375141288230032727654233984733937127115582284964721572192907628 - 30557934325334532582271071478001957018070185356327913496618682277547859447967138146722346701435719877241149540478472366310643131902542023167448548815882595053911370946603870567964058986679361070823587016887587552099878742317560934642428976996087168254547665849214779296369547563107675774229435656829473513432 + 103461867044654386108007921528414895482662948754475387341985070060736686576950492180848716520576397704988373242928703953709705994705234961029080392502757613196202086877221834313994327801773914413507546181585432001324248533541087174089562102726527826866350806480335498036140946354815641124317115290718066663234 1 0

- 8160211128333345566540434284968702413044967260865517592707045146213011922768838116572601821572574063631758048568559271866605369501181303820592196835113387 + 12536655577251435153297128528495279017070952231480978492276109251795186322333973692359731778853961591868183555794714823581445343414531738768400801564320547

- 11603131685815862998758132106767773214584562494355793433835542445435042202940039220130186654341099402233149141447271216788328587869315947097248008800765947 + 12301388350138248799753824840982869068812246029803271748337924627397472168580398090458209842652194733464336605766181794711010942109258987663347521456971959 80 @@ -1592,39 +1592,39 @@ 1024 - 127727743954354624281854745476887090335808566069742443817890352306117585796239126022362261263079819519314090394014361647646460805892494614420724452999880429561236881692111401169717707414124936138355932922564368207508256915042248864594779846067983034559994170386441595183852296112119579847539416226299289211653 + 120098847776259535343644334068493409247155794818213113642226621008837548248809756144435391881962615325304472487122528549774300242072619974184058684501061116769021957277559333567971936578385761656133295119311274656165996325688816719676095627842254071860445539705183362636859341285726107647847880667038640384469 1024 6 0 - 38164224196132104532329483574437124604055028410291615521779477243849960655602119853635308460253142535900192481558061899029051510773421915505181034038040205053976600340395226223552584118692639276068809035773829056879281287542819362565227716773397503446437660962198956566256514393193806524849148173695204924223 + 78341596191867165364462798149613513767187976045933270925524314074332359105916239984156112944388741605555584315673330918240662669972383036695380216369645786077675668119525313091263106903931060310783249892173696572488213764160500898695655888234795022024571259931035380458667979043363731060752523060256425326493 - 110678530127192027271644996149003445969262072382022151859817469310732453833899229470363319557449911586003069509988091720697116396999513012913686700138918399808920334993823529829378539506175486461505670850531128082734443433833237420355314390270799453960429479062564346339269484877851018621073091246726296041918 + 92197697267850835637041615816893083978440979223485010849369520091954329556817022954840969220750091574955501530801737742911131398158522167774789346516688492204741057116830688290864687904235809951324327245011263476463848478977798273152839939981363192465690825435376744018481972214855855772912890637337396617871 - 122548490956895798346580701645021683468493703155724198028852392301507630566051709653966677479391148249019113594983455772425222329689492967526169663910403291783540669836098877872130493149328608829969126991475661060234359382873009916476841684477657337780779843037860445806000967591640647467157452180419336440064 + 4748293030592378955093724566571489011651125070696427417853949295886768378111152102495476227775576523833542397763054262265966439448479602453489588304595952626064095178127493676309959239982750742094802606536171334162655130645407695836907472484934442915849957480725551564249920896993846998541219569493436633204 - 115049765164512475615816754723709421915820944110057140572079223148858284078493729853694322750937204306066347373205296833140390979619473240003424221005440943252946247163179631339839082762769031171800431973311643442309923874949666515334367655281859772013653858842591796008806616434102016382825819024401335460344 + 104584900904542556799078527703080866806316560026256596079705108220072609345471701770134318641946110143937813605502326970885364040335672893811516334052832715982398959853556119074396097391674101956889279124105778371957287930683941038772719876857983940733827806167120908159325650830304989434548687189098427086091 - 24473572867891230766459628437908127183343542625048075648139993688246520961765676225141015722308250646609649372811767064660575479732024522516576703257333821736317565819935529241994964671174856884596066767646349413206450874945566058276469876978552642627552830542673524471166381537681830302599987521202991056916 + 91477000374004348014105246188180409651649243135776551322813142142044628230484208001614477763449794744746082101984365227478095962810916246503069968738835364911647338508489896420278550004430041982623071421860079472688566117689119362544066175205618057687399701666608286724650867268340276001512993623664623275609 - 121681456438779282590844849528459680640771312311817451946372654804617948881697814947418283630307162863219078621980522042948479034075970549463192538890581557434181542676057282587529357950472618576160067047151888130114895592153330967041148579160247158143832010635353491887390135911088640467337273087059507194017 + 27335022029071511973872915368479831202151720242800820669365572158467591925687227633305136848793235934543162969534704442560517668695149887836214069200974132339079102773406068766037767764420212459478276529948373667413279044542607587605142289772231063326758841771162863193523221664294299814482921047353670436699 1 0

- 9797347328962033146488368412716816572855884675950751084714870398060105480643989536965963618504712119836099411058406939329852572231708464480258091257726299 + 12065972956960263054303683531293153220877545209080865782763360344896177242905958506299126614232867538807178063979363544150515696532612909118238113675335407

- 13036972117623859846367583648505887475031070725674408545288450375638101888384702261874720182461609709100300353224517609830394811715149997824925879951644447 + 9953515411036989749571851292635891899300129938693414036200774667401727577909694530750019470986492657545284851625143349646524000492135746632402749851724667 80 @@ -1637,39 +1637,39 @@ 1024 - 107749505110219293735979142621600906412060268221095964958047755054026889014562032384740357183948942425034845634341718222816289382158342428614326831095853091684651319425403499920271331624120186696435758082078835771213653665909961668175363666309216938446744591705304849284719196276795882657769948946973809132161 + 167849747908102684615783031952151303487318618058226134276355868669627336908402995742916429082816062902544246840315676375600682020395918653886440543549039685487527686497944229453172069154889512786032054308546997135806844060341575216655718028005098196791080486235476250761566643135320439910817103719665970114189 1024 6 0 - 35641763542538072741522529757414549050982531654163758594796572814515332674264107217382876227414938150895794246663213699203676045040345468365595904518557216932736965338172782300662556342977609863343254371250428708891065753017339503387158828908221127194666840726277519886534325430466409332054289264640169277844 + 124697971864257013069199803276420735672381775609467161633368671004811398338592994292357677388507254846498502768389738866111523924342131234320910182832156897093603904400854292861082845611922732284956492433793209240106822872232125951145778177387397679039918621121927819973078906987741480262525622005602565399227 - 51516953028966449446491964497485751517990094628891894167852992419474152195473677450115630109656769378494026370993046135905409016172357252608391232821836911141770346398361516943084535741619501601620828360646455885527609024954604847125816880742230840305389082240666983369173612747169877033987337057571277486908 + 108887781890361525299548949264309573612532412215054221866945026350960909252554790687820537292488822159239096136095460817189450475839784419203908369203805504902414189148576907397548005367318289848718165066768409808513010231990171238509327686404013042691377114557387525251911427307934702480124889546002434153883 - 27524154739611696404554678600200022524307387187913330804982598161151693948859012016036623758443668517076661729602221235091099505199024928670720378443021686975221010739315229994281385292748497564017937013704629634698304615102321124160754148064847705580729356980912869939320882633389771287388187641972691550724 + 99965937256071531833352267584518740705187568678398481975025487900445929854870225696845831801035897840798993192645749908958835960887390699965754669201895122689762609842067032782947025374191336414827383420980245403487860703320619493841364508653990560873053561052051848165272882782658715485304580849894447481984 - 103377113942637790287003533084222224091635314875107183584866015855151366109148344152031526934949226690062760107225264806479505653533683391861954516724319175283894690835928918195415330630293690379979533803005112548786693580568575416145999408621762182595356921903495847865510985584950381585268423739186644819794 + 135464487014068006350241183417277199933512080629319393539084556152088647569462879342427336794694607292779308330281931121306851709112290516904611886868248721653328973827011082831762202172003407136709090048796766379233700381954200275601566017619852103033202510881086909114257203408422383001855075728038739087666 - 14673500808702279959267062967735040754333506548920926780094883070331750919458000285586391469687032554437676209528650776647628681974602751606955902150200789053315798988526116770065473921424842764231711641888281788435107438350932690834592578132496704763814673717109277628114653974891957529423081709795618347068 + 116087460929649477650719239236850579624411409915463138669472799334909075618371332653913172377800254417621211492605964716808216033497729198457377469580439281611985552152638264761588841398460105860435413320874653840732276755863584448068058447432518834882323032920701627821579231087160538498920135097072056339130 - 38859009087118888846561310819205669852627803673345854898080307923291445412916752468089587603202768160020948351869132135244840063989628351242421729167402060220673267655462881686556526660062794364572873029867581614425348332512100620476340441607712247927956176958026610185773841792228062538690034354280429985168 + 87022481899114200452477329439521478334907267121400160768484310083510672665816499561166856734334611173826744984646636728146751086237799447687536072677043559995690196109619136304467129246411278102278767648846219215263506982413472377610126752110280476180152080765605425555155921191279654185124388043571147181327 1 0

- 9728152380631131681740808838984346417922505362633733962369711808826276345645215837727287141565994269326014156795037119740007855698527133598892615473492227 + 12636642715417859827101007353201088998153392966769625361518956454328272594691632711789366661263629504337888950179922382595129311605158283150634452408979463

- 11076050301673918422116439895802538274231870898680460235999737357428177346058924262307656177900696772027564584760665000075886788813530389221467934275923243 + 13282780220042989825847520435951613240963422612857516952397101500145285194109725467697923880234771831873607951414903374146816937585493435872195952405446603 80 diff --git a/src/tool.80.user b/src/tool.80.user index ecee1e9..3c48e6c 100644 --- a/src/tool.80.user +++ b/src/tool.80.user @@ -5,10 +5,10 @@ 80 160 - 36829103951102995376474362285918720230219068438 + 1221497820309034144252477697639221506041274072737 - 5975349738774372370692689487620547566695726443684187663338009558313298910595310972756940290490490814235077168608067513662523751284753187557605093094278568638414659189819794636301379586774821313792523485317510997117366940753494060856246440993389669106141067370183854905688663207029320442537153023934974612389 + 46595090496836219329758375093148588632444610893519141484167148248006992830821253282042390919028254358115157648668133863270649812817455449562766026403117693967002997445182573517098844620990728767294115963258577004010875215536547892464360125852879806390124390444522420382015966075500780657059956400651100497552 0 @@ -18,7 +18,7 @@ pk_u = (g)^(sk_u) in G - 73886720212845349423789690054265278230330882159240063365258059171691405211635444653576408519130303930236607370889730093942256028020721449769700384008668654804025056452706408159603994333902616538003510330625907230932439880368347399797693688294648788278946358178021756566866001994381581501155238320146533193969 + 29624695559255996981573654014457685746380963860972658536548118357563146036540291511543368813303433781280391202748072499145041357851200552297409091457980366612614954865906701583854493796742533764096458955429450568660399553817694286663970325864002737229485177070483451432877326131301283666627457911024561259597 @@ -28,7 +28,7 @@ sk_u - 30522857441783677612381314321702379676237683533584112545763275108874547029925879927137543661774 + 1227361645207151049290540178790069739366052447475710776877430459919613060108917457848894914968548 @@ -39,7 +39,7 @@ pk_u = (g)^(sk_u) in G - 5975349738774372370692689487620547566695726443684187663338009558313298910595310972756940290490490814235077168608067513662523751284753187557605093094278568638414659189819794636301379586774821313792523485317510997117366940753494060856246440993389669106141067370183854905688663207029320442537153023934974612389 + 46595090496836219329758375093148588632444610893519141484167148248006992830821253282042390919028254358115157648668133863270649812817455449562766026403117693967002997445182573517098844620990728767294115963258577004010875215536547892464360125852879806390124390444522420382015966075500780657059956400651100497552 diff --git a/src/wallet.80 b/src/wallet.80 index 07ee9a9..5cbde42 100644 --- a/src/wallet.80 +++ b/src/wallet.80 @@ -3,13 +3,13 @@ - 20404503251483643123755909286091369771495044777 + 1221497820309034144252477697639221506041274072737 - 909897389033252615083035474019566085679252263421 + 1253932919667407502567582782575083966882554940671 - 255042305026323205994731651484462852001897198975 + 640673782412955503747947116702446413720379155657 100 512 @@ -21,118 +21,118 @@ 3 0 - 146633922757458417356516769173181954357487422001306376993906397795224572140483858480025630671822058121174404350535618035423082354639182615117991763276192727230933679310045873133967866872162225456864732453119211500286719559658891552547665876074601496221967407314833685338161284135567441424562368334563393203091 + 93382980843653883025762890886083409827607527193228789447271856528752096544087553429050463606190265498596154000815557432733908395732443745252956186362456673161553823344975032912682070157166069852069336154009036924783332731004173119463490793794707861374357535971351736236154736002902486868695733220033838804649 - 5103647530616958538726241484005117353604458076767 + 4608750384956787750586686299568109016423255065583 - 67665051744608567707062164649153560377682912042427668695053682960107936819833149110847401893515733957544358293638810963363569019844957508896349440009725202855038110108795555152915357965412264554363497989641298127925911289253456227458427851950953930750385515928449857979470290821450188974969959133326182598866433112232776720370982527655092469932485309656436619098561111527121506799 + 300499248208397369986794189434567819278810363998418257225892040135078181463591359705233791759248242503724785750168829666458234554520003855006156457096482396496601742633165704234336134578845247386631417524024589960104791843311261137171973588036911160310836018925761778895678813593759531219022906493835276571347823275301202705007136515965706812095662355573308279870074966198819040965 100 0 - 20 - 32 - 16 - 23 - 84 - 59 - 4 - 26 - 18 - 46 - 80 - 25 - 50 - 93 + 12 39 - 44 - 42 - 97 - 22 - 40 + 55 74 - 57 - 17 - 31 - 99 - 53 - 68 - 30 - 13 - 69 + 43 + 2 + 46 + 24 + 79 + 0 + 37 + 22 + 34 + 35 + 87 + 6 + 41 + 73 + 76 + 10 + 25 + 4 + 78 28 - 60 - 61 - 82 - 96 - 89 - 88 51 - 6 - 49 - 15 - 92 - 70 - 79 - 67 - 14 - 56 + 21 + 81 + 68 64 - 47 - 54 - 72 - 76 + 69 3 - 66 - 9 - 34 + 45 + 94 + 63 + 83 + 31 + 54 + 15 38 - 2 - 62 - 48 - 81 - 95 + 20 + 30 + 9 + 33 + 36 + 29 + 56 + 84 + 98 1 - 83 - 90 - 27 + 58 + 59 8 71 - 41 - 35 + 82 + 72 + 16 + 62 + 50 + 80 + 92 + 61 75 - 52 - 7 - 85 - 98 - 33 - 36 + 32 + 95 + 97 5 - 43 - 37 - 55 - 94 - 12 - 24 - 86 - 91 77 + 52 + 66 + 53 + 96 + 26 + 67 + 19 65 - 0 - 73 - 58 - 78 - 63 - 21 - 87 + 40 + 14 + 99 + 85 11 - 45 - 29 - 10 - 19 + 57 + 44 + 23 + 13 + 49 + 47 + 91 + 18 + 42 + 86 + 60 + 48 + 90 + 93 + 89 + 70 + 27 + 17 + 7 + 88 From 9be30344052f72a44d935195a484c3b29838cab3 Mon Sep 17 00:00:00 2001 From: chris erway Date: Fri, 4 Feb 2011 07:29:18 +0000 Subject: [PATCH 17/31] fixed tests 13 and 14 Conflicts: src/bank.80.params src/tool.80.bank src/wallet.80 --- src/ProgramMaker.cpp | 7 +++--- src/ZKP/Interpreter.cpp | 47 ++++++++++++++++++++++++++++++-------- src/ZKP/Interpreter.h | 4 ++++ src/ZKP/InterpreterCache.h | 29 +++++++++++++++-------- 4 files changed, 64 insertions(+), 23 deletions(-) diff --git a/src/ProgramMaker.cpp b/src/ProgramMaker.cpp index 6fc2577..2821f3b 100644 --- a/src/ProgramMaker.cpp +++ b/src/ProgramMaker.cpp @@ -1,9 +1,8 @@ #include "ProgramMaker.h" #include -#include #include "ZKP/ASTNode.h" -#include "CommonFunctions.h" +#include string ProgramMaker::makeCLObtain(const gen_group_map &grps, const vector &coms) { @@ -32,7 +31,7 @@ string ProgramMaker::makeCLObtain(const string &grpPart, const string &comPart, program += comRelPart; // now write this to file and return the file name ofstream writer; - string fname = CommonFunctions::getZKPDir()+"/cl-obtain-temp.txt"; + string fname = "ZKP/examples/cl-obtain-temp.txt"; writer.open(fname.c_str(), ios::out); if (!writer) throw CashException(CashException::CE_PARSE_ERROR, @@ -76,7 +75,7 @@ string ProgramMaker::makeCLProve(const string &grpPart, const string &comPart, program += " " + comRelPart; // again, write to file and return filename ofstream writer; - string fname = CommonFunctions::getZKPDir()+"/cl-prove-temp.txt"; + string fname = "ZKP/examples/cl-prove-temp.txt"; writer.open(fname.c_str(), ios::out); if (!writer) throw CashException(CashException::CE_PARSE_ERROR, diff --git a/src/ZKP/Interpreter.cpp b/src/ZKP/Interpreter.cpp index 1622ccd..173e74d 100644 --- a/src/ZKP/Interpreter.cpp +++ b/src/ZKP/Interpreter.cpp @@ -24,14 +24,13 @@ void Interpreter::check(const string &programName, input_map inputs, group_map groups) { - // first check if program has already been compiled - // also need inputs to be the same - // XXX: is there some way to still use the information even with different - // inputs? - if (InterpreterCache::contains(programName) && - InterpreterCache::get(programName).inputs == inputs) { - CacheValue& val = InterpreterCache::get(programName); - // if they are, just store the values and we're done + // first check if program has already been compiled, with the same groups + // and inputs used + cache_key_pair key = hashForCache(programName,inputs,groups); + if (InterpreterCache::contains(key)) { + //CacheValue& val = InterpreterCache::get(programName); + CacheValue& val = InterpreterCache::get(key); + // if it has, just store the values and we're done env = val.env; tree = val.tree; env.clearPrivates(); @@ -119,7 +118,7 @@ void Interpreter::check(const string &programName, input_map inputs, } // now want to store output in cache so we can load it up // again later if necessary - InterpreterCache::store(programName, inputs, tree, env); + InterpreterCache::store(key, tree, env); } } } @@ -162,3 +161,33 @@ void Interpreter::cachePowers() { } } } + +cache_key_pair Interpreter::hashForCache(const string &fname, input_map i, + group_map g) { + + vector gNames; + for (group_map::const_iterator it = g.begin(); it != g.end(); ++it) { + gNames.push_back(it->first); + } + vector iNames; + for (input_map::const_iterator it = i.begin(); it != i.end(); ++it) { + iNames.push_back(it->first); + } + sort(gNames.begin(),gNames.end()); + sort(iNames.begin(),iNames.end()); + vector hashInput; + for (unsigned j = 0; j < gNames.size(); j++) { + cout << gNames[j] << endl; + if (gNames[j] == Environment::NO_GROUP) { + hashInput.push_back(to_ZZ(0)); + } else { + hashInput.push_back(g[gNames[j]]->getModulus()); + } + } + for (unsigned j = 0; j < iNames.size(); j++) { + hashInput.push_back(to_ZZ(i[iNames[j]])); + } + + ZZ h = Hash::hash(hashInput,Hash::SHA1); + return make_pair(fname,h); +} diff --git a/src/ZKP/Interpreter.h b/src/ZKP/Interpreter.h index bd8a6a2..c18b447 100644 --- a/src/ZKP/Interpreter.h +++ b/src/ZKP/Interpreter.h @@ -10,6 +10,8 @@ * \brief This class will interpret instructions given by a program */ +typedef pair cache_key_pair; + class Interpreter { public: @@ -38,6 +40,8 @@ class Interpreter { protected: void cachePowers(); + cache_key_pair hashForCache(const string &fname, input_map i, group_map g); + /*! used by the prover/verifier to compute any runtime values * that are needed for the proof but haven't been handed in * by the user (so this will only be run AFTER the user has given diff --git a/src/ZKP/InterpreterCache.h b/src/ZKP/InterpreterCache.h index e32a7de..111bb53 100644 --- a/src/ZKP/InterpreterCache.h +++ b/src/ZKP/InterpreterCache.h @@ -4,6 +4,7 @@ #include "ASTNode.h" #include "Environment.h" +#include "Interpreter.h" /*! * \brief A storage container that keeps previously "compiled" code @@ -14,12 +15,14 @@ struct CacheValue { CacheValue() {} - CacheValue(ASTNodePtr n, const Environment& e, const input_map& i) - : tree(n), env(e), inputs(i) {} + //CacheValue(ASTNodePtr n, const Environment& e, const input_map& i) + // : tree(n), env(e), inputs(i) {} + CacheValue(ASTNodePtr n, const Environment& e) + : tree(n), env(e) {} ASTNodePtr tree; Environment env; - input_map inputs; + //input_map inputs; }; class InterpreterCache { @@ -31,20 +34,26 @@ class InterpreterCache { return _icache; } - typedef boost::unordered_map cache_t; + //typedef boost::unordered_map cache_t; + typedef boost::unordered_map cache_t; // store values in the cache - static void store(const string &fname, input_map i, ASTNodePtr n, + static void store(cache_key_pair key, ASTNodePtr n, Environment &env) { - instance().cache[fname] = CacheValue(n, env, i); + //instance().cache[key] = CacheValue(n, env, i); + instance().cache[key] = CacheValue(n, env); } - static bool contains(const string& fname) { - return instance().cache.count(fname) != 0; + //static bool contains(const string& fname) { + // return instance().cache.count(fname) != 0; + static bool contains(cache_key_pair key) { + return instance().cache.count(key) != 0; } - static CacheValue& get(const string &fname) { - return instance().cache.at(fname); + //static CacheValue& get(const string &fname) { + // return instance().cache.at(fname); + static CacheValue& get(cache_key_pair key) { + return instance().cache.at(key); } private: From 485703243dbdea28ab35f99c910fee92e93e9ab8 Mon Sep 17 00:00:00 2001 From: Sarah Meiklejohn Date: Sun, 30 Jan 2011 21:43:42 -0800 Subject: [PATCH 18/31] getting rid of some residual debugging stuff --- src/ZKP/Interpreter.cpp | 2 -- src/ZKP/InterpreterCache.h | 9 --------- 2 files changed, 11 deletions(-) diff --git a/src/ZKP/Interpreter.cpp b/src/ZKP/Interpreter.cpp index 173e74d..56af77f 100644 --- a/src/ZKP/Interpreter.cpp +++ b/src/ZKP/Interpreter.cpp @@ -28,7 +28,6 @@ void Interpreter::check(const string &programName, input_map inputs, // and inputs used cache_key_pair key = hashForCache(programName,inputs,groups); if (InterpreterCache::contains(key)) { - //CacheValue& val = InterpreterCache::get(programName); CacheValue& val = InterpreterCache::get(key); // if it has, just store the values and we're done env = val.env; @@ -177,7 +176,6 @@ cache_key_pair Interpreter::hashForCache(const string &fname, input_map i, sort(iNames.begin(),iNames.end()); vector hashInput; for (unsigned j = 0; j < gNames.size(); j++) { - cout << gNames[j] << endl; if (gNames[j] == Environment::NO_GROUP) { hashInput.push_back(to_ZZ(0)); } else { diff --git a/src/ZKP/InterpreterCache.h b/src/ZKP/InterpreterCache.h index 111bb53..5c27a89 100644 --- a/src/ZKP/InterpreterCache.h +++ b/src/ZKP/InterpreterCache.h @@ -15,14 +15,11 @@ struct CacheValue { CacheValue() {} - //CacheValue(ASTNodePtr n, const Environment& e, const input_map& i) - // : tree(n), env(e), inputs(i) {} CacheValue(ASTNodePtr n, const Environment& e) : tree(n), env(e) {} ASTNodePtr tree; Environment env; - //input_map inputs; }; class InterpreterCache { @@ -34,24 +31,18 @@ class InterpreterCache { return _icache; } - //typedef boost::unordered_map cache_t; typedef boost::unordered_map cache_t; // store values in the cache static void store(cache_key_pair key, ASTNodePtr n, Environment &env) { - //instance().cache[key] = CacheValue(n, env, i); instance().cache[key] = CacheValue(n, env); } - //static bool contains(const string& fname) { - // return instance().cache.count(fname) != 0; static bool contains(cache_key_pair key) { return instance().cache.count(key) != 0; } - //static CacheValue& get(const string &fname) { - // return instance().cache.at(fname); static CacheValue& get(cache_key_pair key) { return instance().cache.at(key); } From eeff6a448b6f2166ca8f1cc7d2edbd284ebe1cab Mon Sep 17 00:00:00 2001 From: chris erway Date: Mon, 7 Feb 2011 14:07:59 -0500 Subject: [PATCH 19/31] remove seller destructor --- src/Seller.cpp | 5 ----- src/Seller.h | 3 --- 2 files changed, 8 deletions(-) diff --git a/src/Seller.cpp b/src/Seller.cpp index b6c50bf..25879aa 100644 --- a/src/Seller.cpp +++ b/src/Seller.cpp @@ -33,11 +33,6 @@ Seller::Seller(vector > ctext, const int timeoutLength, } /*----------------------------------------------------------------------------*/ -// Destructor -Seller::~Seller() { -// reset(); - cout << "Seller::~Seller() going away" << endl; -} void Seller::reset() { inProgress = false; diff --git a/src/Seller.h b/src/Seller.h index 283c714..f167daf 100644 --- a/src/Seller.h +++ b/src/Seller.h @@ -24,9 +24,6 @@ class Seller { const int timeoutTolerance, Ptr pk, const int stat); - /*! destructor */ - ~Seller(); - /*! outputs the ciphertext of the file */ Ptr encrypt(Ptr ptext, const cipher_t& encAlg, const string& key = ""); From 1efbc9c67a04adc3e0e0bde68a151bbdb2ca8b33 Mon Sep 17 00:00:00 2001 From: chris erway Date: Fri, 4 Feb 2011 00:23:41 -0500 Subject: [PATCH 20/31] new unordered_map serialization --- src/Serialize_map.h | 161 ++++++++++++++++++++++++-------------------- 1 file changed, 89 insertions(+), 72 deletions(-) diff --git a/src/Serialize_map.h b/src/Serialize_map.h index 704826c..48938ec 100644 --- a/src/Serialize_map.h +++ b/src/Serialize_map.h @@ -1,103 +1,120 @@ -/* serialization of unordered_map and unordered_multimap, based on - * http://lists.boost.org/Archives/boost/2007/12/131283.php by René Bürgel */ +// from http://code.google.com/p/ntest/source/browse/unordered_map_serialization.h +// via http://stackoverflow.com/questions/4287299/boostserialization-of-boostunordered-map +#ifndef BOOST_SERIALIZATION_UNORDEREDMAP_HPP +#define BOOST_SERIALIZATION_UNORDEREDMAP_HPP + +// MS compatible compilers support #pragma once +#if defined(_MSC_VER) && (_MSC_VER >= 1020) +# pragma once +#endif + +/////////1/////////2/////////3/////////4/////////5/////////6/////////7/////////8 +// serialization/map.hpp: +// serialization for stl map templates + +// (C) Copyright 2002 Robert Ramey - http://www.rrsd.com . +// Use, modification and distribution is subject to the Boost Software +// License, Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at +// http://www.boost.org/LICENSE_1_0.txt) + +// See http://www.boost.org for updates, documentation, and revision history. + #include + #include + #include #include #include #include + namespace boost { namespace serialization { -template + +template inline void save( - Archive & ar, - const boost::unordered_map &t, - const unsigned int /* file_version */ + Archive & ar, + const boost::unordered_map &t, + const unsigned int /* file_version */ ){ - boost::serialization::stl::save_collection< - Archive, - boost::unordered_map ->(ar, t); -} -template + boost::serialization::stl::save_collection< + Archive, + boost::unordered_map + >(ar, t); +} + +template inline void load( - Archive & ar, - boost::unordered_map &t, - const unsigned int /* file_version */ + Archive & ar, + boost::unordered_map &t, + const unsigned int /* file_version */ ){ - boost::serialization::stl::load_collection< - Archive, - boost::unordered_map, - boost::serialization::stl::archive_input_map< - Archive, boost::unordered_map >, - -boost::serialization::stl::no_reserve_imp -> ->(ar, t); + boost::serialization::stl::load_collection< + Archive, + boost::unordered_map, + boost::serialization::stl::archive_input_map< + Archive, boost::unordered_map >, + boost::serialization::stl::no_reserve_imp + > + >(ar, t); } + // split non-intrusive serialization function member into separate // non intrusive save/load member functions -template +template inline void serialize( - Archive & ar, - boost::unordered_map &t, - const unsigned int file_version + Archive & ar, + boost::unordered_map &t, + const unsigned int file_version ){ - boost::serialization::split_free(ar, t, file_version); + boost::serialization::split_free(ar, t, file_version); } -// unordered_multimap -template + +// multimap +template inline void save( - Archive & ar, - const boost::unordered_multimap &t, - const unsigned int /* file_version */ + Archive & ar, + const boost::unordered_multimap &t, + const unsigned int /* file_version */ ){ - boost::serialization::stl::save_collection< - Archive, - boost::unordered_multimap ->(ar, t); + boost::serialization::stl::save_collection< + Archive, + boost::unordered_multimap + >(ar, t); } -template + +template inline void load( - Archive & ar, - boost::unordered_multimap &t, - const unsigned int /* file_version */ + Archive & ar, + boost::unordered_multimap &t, + const unsigned int /* file_version */ ){ - boost::serialization::stl::load_collection< - Archive, - boost::unordered_multimap, - // "archive_input_multimap" was removed in Dec 2009: - // http://lists.boost.org/boost-commit/2009/12/21089.php - // seems safe to use archive_input_map here, for all boost versions (??) - boost::serialization::stl::archive_input_map< - Archive, boost::unordered_multimap ->, - boost::serialization::stl::no_reserve_imp< - boost::unordered_multimap -> ->(ar, t); + boost::serialization::stl::load_collection< + Archive, + boost::unordered_multimap, + boost::serialization::stl::archive_input_map< + Archive, boost::unordered_multimap + >, + boost::serialization::stl::no_reserve_imp< + boost::unordered_multimap + > + >(ar, t); } + // split non-intrusive serialization function member into separate // non intrusive save/load member functions -template +template inline void serialize( - Archive & ar, - boost::unordered_multimap &t, - const unsigned int file_version + Archive & ar, + boost::unordered_multimap &t, + const unsigned int file_version ){ - boost::serialization::split_free(ar, t, file_version); + boost::serialization::split_free(ar, t, file_version); } + } // serialization } // namespace boost + +#endif // BOOST_SERIALIZATION_UNORDEREDMAP_HPP From f7caf46c60da4d4e66703293b0647f531134deb0 Mon Sep 17 00:00:00 2001 From: chris erway Date: Wed, 9 Feb 2011 05:35:09 +0000 Subject: [PATCH 21/31] check for CACHE_POWERS environment variable --- src/ZKP/Interpreter.cpp | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/ZKP/Interpreter.cpp b/src/ZKP/Interpreter.cpp index 56af77f..13cdd7c 100644 --- a/src/ZKP/Interpreter.cpp +++ b/src/ZKP/Interpreter.cpp @@ -113,7 +113,8 @@ void Interpreter::check(const string &programName, input_map inputs, env.groups[Environment::NO_GROUP] = Ptr(); BindGroupValues binder(env); binder.apply(n); - //cachePowers(); + if (getenv("CACHE_POWERS")) + cachePowers(); } // now want to store output in cache so we can load it up // again later if necessary From c9a212b493c42a714381a2c7346bb426c6ea5e30 Mon Sep 17 00:00:00 2001 From: chris erway Date: Sun, 20 Feb 2011 06:26:59 +0000 Subject: [PATCH 22/31] fix serialize ZZ=0 problem (did mpz_sizeinbase change?) --- src/NTL/ZZ.h | 3 +++ src/Test.cpp | 13 +++++++++++++ 2 files changed, 16 insertions(+) diff --git a/src/NTL/ZZ.h b/src/NTL/ZZ.h index ad57bc1..28be4f6 100644 --- a/src/NTL/ZZ.h +++ b/src/NTL/ZZ.h @@ -228,6 +228,7 @@ namespace boost { namespace serialization { bool neg = (NTL::sign(t) == -1); ar & auto_nvp(neg); // save sign (true if negative) size_t len = (mpz_sizeinbase(MPZ(t), 2) + 7) / 8; + if (t == 0) len = 0; assert(len >= 0); ar & auto_nvp(len); if (len) { @@ -257,6 +258,8 @@ namespace boost { namespace serialization { ar & make_nvp("mpz", make_binary_object(buf, len)); mpz_import(MPZ(t), len, -1, 1, -1, 0, buf); if (neg) mpz_neg(MPZ(t), MPZ(t)); + } else { + t = 0; } } diff --git a/src/Test.cpp b/src/Test.cpp index ebf4e9c..6a0bcfd 100644 --- a/src/Test.cpp +++ b/src/Test.cpp @@ -82,6 +82,7 @@ double* testBuyWithSetup(); double* testBuyResolution(); double* testBarterResolution(); double* testSerializeAbstract(); +double* testSerializeZero(); double* testMultiExp(); double* multiTest(); @@ -113,6 +114,7 @@ test_desc_t test_funcs[] = { { testBuyResolution, "Buy resolution" }, { testBarterResolution, "Barter resolution" }, { testSerializeAbstract, "Test serialization of derived pointers"}, + { testSerializeZero, "Test serialization of zero"}, { testMultiExp, "Test multi-exp"}, // add new tests here { multiTest, "Multi-tester" }, @@ -2037,6 +2039,17 @@ double* testBarterResolution() { return timers; } +double* testSerializeZero() { + double* timers = new double[MAX_TIMERS]; + + ZZ z = 0, zz = 33; + string s = saveString(z); + loadString(zz, s); + cout << "loaded 0 zz " << zz << endl; + + return timers; +} + BOOST_CLASS_EXPORT(ASTNode) BOOST_CLASS_EXPORT(ASTExpr) BOOST_CLASS_EXPORT(ASTExprIdentifier) From 3163f13f2723726ee8ce768b87e7b9a666fe54ee Mon Sep 17 00:00:00 2001 From: chris erway Date: Sun, 20 Feb 2011 00:19:38 -0500 Subject: [PATCH 23/31] print out difference in len/l --- src/NTL/ZZ.h | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/NTL/ZZ.h b/src/NTL/ZZ.h index 28be4f6..2aa706c 100644 --- a/src/NTL/ZZ.h +++ b/src/NTL/ZZ.h @@ -235,6 +235,8 @@ namespace boost { namespace serialization { unsigned char buf[len]; size_t l; mpz_export(buf, &l, -1, 1, -1, 0, MPZ(t)); + if (l != len) + std::cerr << "ZZ::save() yikes! len is " << len << " but l is " << l << std::endl; assert(l == len); ar & make_nvp("mpz", make_binary_object(buf, l)); } From 72b60ee5c537d9fd543faa1d9f8b6d41437557fc Mon Sep 17 00:00:00 2001 From: chris erway Date: Sun, 20 Feb 2011 17:38:34 -0500 Subject: [PATCH 24/31] deserialize messages from GZ-compressed strings by default --- src/BuyMessage.h | 2 +- src/Coin.h | 2 +- src/FEContract.h | 2 +- src/FEMessage.h | 2 +- src/FESetupMessage.h | 2 +- src/Test.cpp | 4 ++-- src/VECiphertext.h | 2 +- 7 files changed, 8 insertions(+), 8 deletions(-) diff --git a/src/BuyMessage.h b/src/BuyMessage.h index 540e4b0..2c6c3d7 100644 --- a/src/BuyMessage.h +++ b/src/BuyMessage.h @@ -28,7 +28,7 @@ class BuyMessage { BuyMessage(const string& s, Ptr params) { // need to set params for Coin contained in message - loadString(make_nvp("BuyMessage", *this), s); + loadGZString(make_nvp("BuyMessage", *this), s); coinPrime->setParameters(params); } diff --git a/src/Coin.h b/src/Coin.h index fcae4a8..6e0e2a7 100644 --- a/src/Coin.h +++ b/src/Coin.h @@ -24,7 +24,7 @@ class Coin { Coin(const string& s, Ptr params) : parameters(params) - { loadString(make_nvp("Coin", *this), s); } + { loadGZString(make_nvp("Coin", *this), s); } Coin(const Coin &o); diff --git a/src/FEContract.h b/src/FEContract.h index c85afb7..ab9d945 100644 --- a/src/FEContract.h +++ b/src/FEContract.h @@ -23,7 +23,7 @@ class FEContract { ptHashBlocksB(o.ptHashBlocksB), ctHashBlocksB(o.ctHashBlocksB) {} /*! serialization constructor */ - FEContract(const string& str) { loadString(*this, str); } + //FEContract(const string& str) { loadGZString(*this, str); } FEContract() {} diff --git a/src/FEMessage.h b/src/FEMessage.h index 5fca266..f454666 100644 --- a/src/FEMessage.h +++ b/src/FEMessage.h @@ -23,7 +23,7 @@ class FEMessage { FEMessage(const FEMessage &o) : escrow(o.escrow), signature(o.signature), contract(o.contract) {} - FEMessage(const string& s) { loadString(*this, s); }; + FEMessage(const string& s) { loadGZString(*this, s); }; // getters const vector& getEscrow() const { return escrow; } diff --git a/src/FESetupMessage.h b/src/FESetupMessage.h index 5728dc2..50ee78b 100644 --- a/src/FESetupMessage.h +++ b/src/FESetupMessage.h @@ -28,7 +28,7 @@ class FESetupMessage { FESetupMessage(const string& s, Ptr params) { // need to set params for Coin contained in message - loadString(make_nvp("FESetupMessage", *this), s); + loadGZString(make_nvp("FESetupMessage", *this), s); coinPrime.setParameters(params); } diff --git a/src/Test.cpp b/src/Test.cpp index 6a0bcfd..b168fbe 100644 --- a/src/Test.cpp +++ b/src/Test.cpp @@ -1420,7 +1420,7 @@ double* testCoin() { timers[timer++] = printTimer(timer, "Got coin from wallet"); cout << "Coin size: " << saveGZString(coin).size() << endl; - string coinstr = saveString(coin); + string coinstr = saveGZString(coin); startTimer(); Coin coinGZ(coinstr, params); timers[timer++] = printTimer(timer, "Deserialized coin from binary"); @@ -1535,7 +1535,7 @@ double* testBuy() { #if 1 // test saving and loading BuyMessage - string bmsg = saveString(*buyMessage); + string bmsg = saveGZString(*buyMessage); saveXML(make_nvp("BuyMessage", *buyMessage), "buym1.xml"); Ptr loadedBMsg = new_ptr(bmsg, params); saveXML(make_nvp("BuyMessage", *loadedBMsg), "buym2.xml"); diff --git a/src/VECiphertext.h b/src/VECiphertext.h index 7bc34c8..34b09e1 100644 --- a/src/VECiphertext.h +++ b/src/VECiphertext.h @@ -23,7 +23,7 @@ class VECiphertext { : ciphertext(o.ciphertext), commitment(o.commitment), publicVariables(o.publicVariables), proof(o.proof) {} - VECiphertext(const string& s) { loadString(*this, s); } + //VECiphertext(const string& s) { loadGZString(*this, s); } VECiphertext() : ciphertext(), commitment(0), publicVariables(), proof() {} From 02ceba5d4c486fcb644530429d118e4047af6be0 Mon Sep 17 00:00:00 2001 From: chris erway Date: Sun, 20 Feb 2011 22:44:34 +0000 Subject: [PATCH 25/31] Revert "print out difference in len/l" This reverts commit 3163f13f2723726ee8ce768b87e7b9a666fe54ee. --- src/NTL/ZZ.h | 2 -- 1 file changed, 2 deletions(-) diff --git a/src/NTL/ZZ.h b/src/NTL/ZZ.h index 2aa706c..28be4f6 100644 --- a/src/NTL/ZZ.h +++ b/src/NTL/ZZ.h @@ -235,8 +235,6 @@ namespace boost { namespace serialization { unsigned char buf[len]; size_t l; mpz_export(buf, &l, -1, 1, -1, 0, MPZ(t)); - if (l != len) - std::cerr << "ZZ::save() yikes! len is " << len << " but l is " << l << std::endl; assert(l == len); ar & make_nvp("mpz", make_binary_object(buf, l)); } From 66184848c01c2a8375beac14539a5153a30d5a7b Mon Sep 17 00:00:00 2001 From: chris erway Date: Sun, 20 Feb 2011 22:53:47 +0000 Subject: [PATCH 26/31] fixed test 10 Conflicts: src/bank.80.params src/public.80.arbiter src/public.regular.80.arbiter src/secret.80.arbiter src/secret.regular.80.arbiter src/tool.80.bank src/tool.80.user src/wallet.80 --- src/ProgramMaker.cpp | 4 ++-- src/Test.cpp | 22 +++++++++++----------- src/ZKP/examples/cl-obtain-temp.txt | 2 +- 3 files changed, 14 insertions(+), 14 deletions(-) diff --git a/src/ProgramMaker.cpp b/src/ProgramMaker.cpp index 2821f3b..e789d03 100644 --- a/src/ProgramMaker.cpp +++ b/src/ProgramMaker.cpp @@ -26,7 +26,7 @@ string ProgramMaker::makeCLObtain(const string &grpPart, const string &comPart, "integers: x[1:l], r[1:l] " "exponent in pkGroup: vprime " "such that: " - "for(i, 1:l, range: (-(2^l_x-1)) <= x_i < 2^l_x) " + "for(i, 1:l, range in pkGroup: (-(2^l_x-1)) <= x_i < 2^l_x) " "C = h^vprime * for(i, 1:l, *, g_i^x_i) "; program += comRelPart; // now write this to file and return the file name @@ -69,7 +69,7 @@ string ProgramMaker::makeCLProve(const string &grpPart, const string &comPart, "integers: x[1:l], r[1:l] " "exponents in pkGroup: e, vprime, r_C " "such that: " - "for(i, 1:l, range: (-(2^l_x-1)) <= x_i < 2^l_x) " + "for(i, 1:l, range in pkGroup: (-(2^l_x-1)) <= x_i < 2^l_x) " "C = h^r_C * for(i, 1:l, *, g_i^x_i) " "f = C^(-1) * D^(-1) * (Aprime^e) * h^(r_C-vprime)"; program += " " + comRelPart; diff --git a/src/Test.cpp b/src/Test.cpp index b168fbe..957f0e3 100644 --- a/src/Test.cpp +++ b/src/Test.cpp @@ -1412,7 +1412,7 @@ double* testCoin() { // now want to spend a coin from the wallet // dummy contract vector contractInfo; - contractInfo.push_back(123456789); + contractInfo.push_back(12345); ZZ rVal = Hash::hash(contractInfo, hashAlg); startTimer(); @@ -1426,16 +1426,16 @@ double* testCoin() { timers[timer++] = printTimer(timer, "Deserialized coin from binary"); vector endorsement = coin.getEndorsement(); - coin.unendorse(); + //coin.unendorse(); // trying to verify an unendorsed coin - startTimer(); - bool coinVerified = coin.verifyCoin(); - timers[timer++] = printTimer(timer, "Checked unendorsed coin"); - if (coinVerified) - cout << "Coin is valid (verified successfully)" << endl; - else - cout << "Coin verification failed" << endl; - coin.endorse(endorsement); + //startTimer(); + //bool coinVerified = coin.verifyCoin(); + //timers[timer++] = printTimer(timer, "Checked unendorsed coin"); + //if (coinVerified) + // cout << "Coin is valid (verified successfully)" << endl; + //else + // cout << "Coin verification failed" << endl; + //coin.endorse(endorsement); startTimer(); bool coinVerified2 = coin.verifyCoin(); timers[timer++] = printTimer(timer, "Checked endorsed coin"); @@ -1465,7 +1465,7 @@ double* testCoin() { // now let's double spend a coin vector contractInfo2; - contractInfo2.push_back(123459); + contractInfo2.push_back(12346); ZZ rVal2 = Hash::hash(contractInfo2, hashAlg); ZZ sameIndex = coin.getIndex(); wallet.replaceCoin(sameIndex); diff --git a/src/ZKP/examples/cl-obtain-temp.txt b/src/ZKP/examples/cl-obtain-temp.txt index fd40c3d..b8bc773 100644 --- a/src/ZKP/examples/cl-obtain-temp.txt +++ b/src/ZKP/examples/cl-obtain-temp.txt @@ -1 +1 @@ -computation: given: group: pkGroup = group: G1 = group: G2 = group: G3 = integers: x[1:l], stat, modSize compute: random integer in [0,2^(modSize+stat)): vprime C := h^vprime * for(i, 1:l, *, g_i^x_i) proof: given:group: pkGroup = group: G1 = group: G2 = group: G3 = element in pkGroup: C element in G1: c_1 commitment to x_1: c_1 = g1^x_1*h1^r_1 element in G2: c_2 commitment to x_2: c_2 = g2^x_2*h2^r_2 element in G3: c_3 commitment to x_3: c_3 = g3^x_3*h3^r_3 integer: l_x prove knowledge of: integers: x[1:l], r[1:l] exponent in pkGroup: vprime such that: for(i, 1:l, range: (-(2^l_x-1)) <= x_i < 2^l_x) C = h^vprime * for(i, 1:l, *, g_i^x_i) c_1 = g1^x_1*h1^r_1 c_2 = g2^x_2*h2^r_2 c_3 = g3^x_3*h3^r_3 \ No newline at end of file +computation: given: group: G1 = group: pkGroup = group: G2 = group: G3 = integers: x[1:l], stat, modSize compute: random integer in [0,2^(modSize+stat)): vprime C := h^vprime * for(i, 1:l, *, g_i^x_i) proof: given:group: G1 = group: pkGroup = group: G2 = group: G3 = element in pkGroup: C element in G1: c_1 commitment to x_1: c_1 = g1^x_1*h1^r_1 element in G2: c_2 commitment to x_2: c_2 = g2^x_2*h2^r_2 element in G3: c_3 commitment to x_3: c_3 = g3^x_3*h3^r_3 integer: l_x prove knowledge of: integers: x[1:l], r[1:l] exponent in pkGroup: vprime such that: for(i, 1:l, range in pkGroup: (-(2^l_x-1)) <= x_i < 2^l_x) C = h^vprime * for(i, 1:l, *, g_i^x_i) c_1 = g1^x_1*h1^r_1 c_2 = g2^x_2*h2^r_2 c_3 = g3^x_3*h3^r_3 \ No newline at end of file From 7ad4c0bc6254dd7d0bc75de2f69afefbb9fc2918 Mon Sep 17 00:00:00 2001 From: chris erway Date: Fri, 25 Feb 2011 01:04:56 -0500 Subject: [PATCH 27/31] make brownie timers thread-safe (use boost::thread_specific_ptr) --- src/Timer.cpp | 22 +++++++++++++++++----- 1 file changed, 17 insertions(+), 5 deletions(-) diff --git a/src/Timer.cpp b/src/Timer.cpp index 4c159fc..8837b55 100644 --- a/src/Timer.cpp +++ b/src/Timer.cpp @@ -10,12 +10,24 @@ #include "CashException.h" #include #include +#include + +struct BrownieTimer { + vector timers; +}; +// use thread-local storage +boost::thread_specific_ptr localTimer; + +vector& getTimer() { + if (localTimer.get() == 0) + localTimer.reset(new BrownieTimer); + return localTimer->timers; +} -vector brownieTimerValue; void startTimer() { timeval t; gettimeofday(&t, NULL); - brownieTimerValue.push_back(t); + getTimer().push_back(t); } /* Determine the difference, in milliseconds, between two struct timevals. */ @@ -40,12 +52,12 @@ double printTimer(const int index, const string &msg) { long long elapsedTime() { timeval now; gettimeofday(&now, NULL); - if (brownieTimerValue.size() == 0) + if (getTimer().size() == 0) throw CashException(CashException::CE_TIMER_ERROR, "[Timer::printTimer] No running timer found. " "Maybe you forgot to start one?"); - long long elapsed = TV_DIFF_US(brownieTimerValue.back(), now); - brownieTimerValue.pop_back(); + long long elapsed = TV_DIFF_US(getTimer().back(), now); + getTimer().pop_back(); return elapsed; } From 777e759609bcbb6c6a9389db5752f12d860a6b8b Mon Sep 17 00:00:00 2001 From: chris erway Date: Fri, 25 Feb 2011 19:03:28 -0500 Subject: [PATCH 28/31] allow option to Interpreter::check() to enable/disable multiexponentiation power caching --- src/ZKP/Interpreter.cpp | 4 ++-- src/ZKP/Interpreter.h | 16 +++++++++------- 2 files changed, 11 insertions(+), 9 deletions(-) diff --git a/src/ZKP/Interpreter.cpp b/src/ZKP/Interpreter.cpp index 13cdd7c..ae792eb 100644 --- a/src/ZKP/Interpreter.cpp +++ b/src/ZKP/Interpreter.cpp @@ -23,7 +23,7 @@ #define UNUSED 0 void Interpreter::check(const string &programName, input_map inputs, - group_map groups) { + group_map groups, bool enablePowerCache) { // first check if program has already been compiled, with the same groups // and inputs used cache_key_pair key = hashForCache(programName,inputs,groups); @@ -113,7 +113,7 @@ void Interpreter::check(const string &programName, input_map inputs, env.groups[Environment::NO_GROUP] = Ptr(); BindGroupValues binder(env); binder.apply(n); - if (getenv("CACHE_POWERS")) + if (enablePowerCache && getenv("CACHE_POWERS")) cachePowers(); } // now want to store output in cache so we can load it up diff --git a/src/ZKP/Interpreter.h b/src/ZKP/Interpreter.h index c18b447..5b7ece1 100644 --- a/src/ZKP/Interpreter.h +++ b/src/ZKP/Interpreter.h @@ -27,13 +27,15 @@ class Interpreter { /*! this will run all the visitors that are meant to be used * BEFORE user has given any numeric values (maybe groups though) */ - void check(const string &programName, input_map inputs, group_map grps); - void check(const string &programName) - { check(programName, input_map(), group_map()); } - void check(const string &programName, input_map &inputs) - { check(programName, inputs, group_map()); } - void check(const string &programName, group_map &groups) - { check(programName, input_map(), groups); } + void check(const string &programName, input_map inputs, group_map grps, + bool enablePowerCache=true); + + void check(const string &programName, bool enablePowerCache=true) + { check(programName, input_map(), group_map(), enablePowerCache); } + void check(const string &programName, input_map &inputs, bool enablePowerCache=true) + { check(programName, inputs, group_map(), enablePowerCache); } + void check(const string &programName, group_map &groups, bool enablePowerCache=true) + { check(programName, input_map(), groups, enablePowerCache); } Environment getEnvironment() { return env; } From 56bc7cfd06a455dbe19980b1c4420b840c2b2b7b Mon Sep 17 00:00:00 2001 From: chris erway Date: Fri, 25 Feb 2011 19:08:05 -0500 Subject: [PATCH 29/31] skip power-caching for user-to-bank proofs by default --- src/UserTool.cpp | 2 +- src/UserWithdrawTool.cpp | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/UserTool.cpp b/src/UserTool.cpp index a3d73dd..48aa7e2 100644 --- a/src/UserTool.cpp +++ b/src/UserTool.cpp @@ -25,7 +25,7 @@ UserTool::UserTool(int st, int l, v["sk_u"] = userSecretKey; // now compute proof and save it InterpreterProver p; - p.check(CommonFunctions::getZKPDir()+"/userid.txt", groups); + p.check(CommonFunctions::getZKPDir()+"/userid.txt", groups, false); p.compute(v); idProof = p.computeProof(hashAlg); } diff --git a/src/UserWithdrawTool.cpp b/src/UserWithdrawTool.cpp index a63bc0b..cde2148 100644 --- a/src/UserWithdrawTool.cpp +++ b/src/UserWithdrawTool.cpp @@ -95,7 +95,7 @@ Ptr UserWithdrawTool::preSignatureProof() { InterpreterProver prover; group_map g; g["cashGroup"] = bankParameters->getCashGroup(); - prover.check(CommonFunctions::getZKPDir()+"/presig.txt", g); + prover.check(CommonFunctions::getZKPDir()+"/presig.txt", g, false); variable_map v; v["A"] = partialCommitment[1]; v["r_u"] = partialCommitment[0]; From e469cede495455a6e73f8a99d318b35bd1296bfc Mon Sep 17 00:00:00 2001 From: chris erway Date: Fri, 25 Feb 2011 19:11:50 -0500 Subject: [PATCH 30/31] make InterpreterCache thread-safe (use TLS from boost::thread_specific_ptr) --- src/Makefile | 1 + src/ZKP/InterpreterCache.cpp | 11 +++++++++++ src/ZKP/InterpreterCache.h | 10 ++++------ 3 files changed, 16 insertions(+), 6 deletions(-) create mode 100644 src/ZKP/InterpreterCache.cpp diff --git a/src/Makefile b/src/Makefile index 863e428..c39ad4e 100644 --- a/src/Makefile +++ b/src/Makefile @@ -58,6 +58,7 @@ CASHSOURCE = Arbiter.cpp \ ZKP/ExponentSub.cpp \ ZKP/ForExpander.cpp \ ZKP/Interpreter.cpp \ + ZKP/InterpreterCache.cpp \ ZKP/InterpreterProver.cpp \ ZKP/InterpreterVerifier.cpp \ ZKP/Printer.cpp \ diff --git a/src/ZKP/InterpreterCache.cpp b/src/ZKP/InterpreterCache.cpp new file mode 100644 index 0000000..3a8aead --- /dev/null +++ b/src/ZKP/InterpreterCache.cpp @@ -0,0 +1,11 @@ +#include "InterpreterCache.h" +#include + +// thead-local storage for the interpreter cache +boost::thread_specific_ptr localInterpreterCache; + +InterpreterCache& InterpreterCache::instance() { + if (localInterpreterCache.get() == 0) // no ICache for this thread + localInterpreterCache.reset(new InterpreterCache()); // create one + return *localInterpreterCache; +} diff --git a/src/ZKP/InterpreterCache.h b/src/ZKP/InterpreterCache.h index 5c27a89..beb865e 100644 --- a/src/ZKP/InterpreterCache.h +++ b/src/ZKP/InterpreterCache.h @@ -25,11 +25,10 @@ struct CacheValue { class InterpreterCache { public: - static InterpreterCache& instance() { - // local static object initialization - static InterpreterCache _icache; - return _icache; - } + /*! return a thread-local instance of the InterpreterCache. + * this should prevent different threads from invoking the + * same interpreter. */ + static InterpreterCache& instance(); typedef boost::unordered_map cache_t; @@ -54,7 +53,6 @@ class InterpreterCache { InterpreterCache( InterpreterCache const & ); // copy ctor is hidden // assignment operator is hidden InterpreterCache& operator=( InterpreterCache const & ); - ~InterpreterCache() {} // destructor (dtor) is hidden }; #endif /*_INTERPRETERCACHE_H_*/ From 4440e91b159edcd957241d0e801dee013e4498e5 Mon Sep 17 00:00:00 2001 From: chris erway Date: Sat, 6 Apr 2013 22:38:46 -0400 Subject: [PATCH 31/31] fix build after merge (remove copy constructors again) --- src/Buyer.cpp | 6 ------ src/FEInitiator.cpp | 9 --------- src/FEResponder.cpp | 11 ----------- src/Seller.cpp | 10 ---------- 4 files changed, 36 deletions(-) diff --git a/src/Buyer.cpp b/src/Buyer.cpp index 00c8932..6593d37 100644 --- a/src/Buyer.cpp +++ b/src/Buyer.cpp @@ -13,12 +13,6 @@ Buyer::Buyer(int timeoutLength, Ptr pk, int stat) { } -Buyer::Buyer(const Buyer& o) - : timeoutLength(o.timeoutLength), stat(o.stat), pk(o.pk), - contract(o.contract? new FEContract(*o.contract) : NULL), - r(o.r), endorsement(o.endorsement), inProgress(o.inProgress) -{ -} /*----------------------------------------------------------------------------*/ // Destructor Buyer::~Buyer() { diff --git a/src/FEInitiator.cpp b/src/FEInitiator.cpp index 4d3e528..f881d38 100644 --- a/src/FEInitiator.cpp +++ b/src/FEInitiator.cpp @@ -13,15 +13,6 @@ FEInitiator::FEInitiator(const long timeoutLength, Ptr pk, exchangeType(TYPE_NONE) {} -FEInitiator::FEInitiator(const FEInitiator &o) - : timeoutLength(o.timeoutLength), stat(o.stat), - verifiablePK(o.verifiablePK), regularPK(o.regularPK), coin(o.coin), - contract(o.contract), signKey(new Signature::Key(*o.signKey)), - ptextA(o.ptextA), ctextA(o.ctextA), ctextB(o.ctextB), ptextB(o.ptextB), - r(o.r), endorsement(o.endorsement), exchangeType(o.exchangeType) -{ -} - /*----------------------------------------------------------------------------*/ // Destructor FEInitiator::~FEInitiator() { diff --git a/src/FEResponder.cpp b/src/FEResponder.cpp index 1a7916d..d9a4227 100644 --- a/src/FEResponder.cpp +++ b/src/FEResponder.cpp @@ -15,17 +15,6 @@ FEResponder::FEResponder(const int timeoutLength, const int timeoutTolerance, { } -FEResponder::FEResponder(const FEResponder& o) - : timeoutLength(o.timeoutLength), timeoutTolerance(o.timeoutTolerance), - stat(o.stat), verifiablePK(o.verifiablePK), regularPK(o.regularPK), - ptextB(o.ptextB), ctextB(o.ctextB), ctextA(o.ctextA), ptextA(o.ptextA), - contract(o.contract ? new FEContract(*o.contract) : NULL), - escrow(o.escrow ? new VECiphertext(*o.escrow) : NULL), - initiatorSignPK(o.initiatorSignPK ? new Signature::Key(*o.initiatorSignPK) : NULL), - message(o.message ? new FEMessage(*o.message) : NULL) -{ -} - /*----------------------------------------------------------------------------*/ // Destructor FEResponder::~FEResponder() { diff --git a/src/Seller.cpp b/src/Seller.cpp index 18de20d..25879aa 100644 --- a/src/Seller.cpp +++ b/src/Seller.cpp @@ -32,16 +32,6 @@ Seller::Seller(vector > ctext, const int timeoutLength, { } -Seller::Seller(const Seller& o) - : timeoutLength(o.timeoutLength), timeoutTolerance(o.timeoutTolerance), - stat(o.stat), pk(o.pk), ptext(o.ptext), ctext(o.ctext), - coinPrime(o.coinPrime), - contract(o.contract ? new FEContract(*o.contract) : NULL), - escrow(o.escrow ? new VECiphertext(*o.escrow) : NULL), - inProgress(o.inProgress) -{ -} - /*----------------------------------------------------------------------------*/ void Seller::reset() {